@farthershore/cli 0.27.0 → 0.29.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/dist/index.js +99 -97
  2. package/dist/mcp.js +47 -46
  3. package/package.json +17 -17
package/dist/index.js CHANGED
@@ -1,123 +1,129 @@
1
1
  #!/usr/bin/env node
2
2
  import { createRequire as __createRequire } from "node:module";const require=__createRequire(import.meta.url);
3
- var by=Object.create;var ts=Object.defineProperty;var vy=Object.getOwnPropertyDescriptor;var _y=Object.getOwnPropertyNames;var yy=Object.getPrototypeOf,ky=Object.prototype.hasOwnProperty;var gn=(t=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(t,{get:(e,r)=>(typeof require<"u"?require:e)[r]}):t)(function(t){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+t+'" is not supported')});var Xe=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Te=(t,e)=>{for(var r in e)ts(t,r,{get:e[r],enumerable:!0})},xy=(t,e,r,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of _y(e))!ky.call(t,n)&&n!==r&&ts(t,n,{get:()=>e[n],enumerable:!(i=vy(e,n))||i.enumerable});return t};var Iy=(t,e,r)=>(r=t!=null?by(yy(t)):{},xy(e||!t||!t.__esModule?ts(r,"default",{value:t,enumerable:!0}):r,t));var hn=Xe(rs=>{var Or=class extends Error{constructor(e,r,i){super(i),Error.captureStackTrace(this,this.constructor),this.name=this.constructor.name,this.code=r,this.exitCode=e,this.nestedError=void 0}},ns=class extends Or{constructor(e){super(1,"commander.invalidArgument",e),Error.captureStackTrace(this,this.constructor),this.name=this.constructor.name}};rs.CommanderError=Or;rs.InvalidArgumentError=ns});var Tr=Xe(os=>{var{InvalidArgumentError:Sy}=hn(),is=class{constructor(e,r){switch(this.description=r||"",this.variadic=!1,this.parseArg=void 0,this.defaultValue=void 0,this.defaultValueDescription=void 0,this.argChoices=void 0,e[0]){case"<":this.required=!0,this._name=e.slice(1,-1);break;case"[":this.required=!1,this._name=e.slice(1,-1);break;default:this.required=!0,this._name=e;break}this._name.length>3&&this._name.slice(-3)==="..."&&(this.variadic=!0,this._name=this._name.slice(0,-3))}name(){return this._name}_concatValue(e,r){return r===this.defaultValue||!Array.isArray(r)?[e]:r.concat(e)}default(e,r){return this.defaultValue=e,this.defaultValueDescription=r,this}argParser(e){return this.parseArg=e,this}choices(e){return this.argChoices=e.slice(),this.parseArg=(r,i)=>{if(!this.argChoices.includes(r))throw new Sy(`Allowed choices are ${this.argChoices.join(", ")}.`);return this.variadic?this._concatValue(r,i):r},this}argRequired(){return this.required=!0,this}argOptional(){return this.required=!1,this}};function Ey(t){let e=t.name()+(t.variadic===!0?"...":"");return t.required?"<"+e+">":"["+e+"]"}os.Argument=is;os.humanReadableArgName=Ey});var cs=Xe(as=>{var{humanReadableArgName:wy}=Tr(),ss=class{constructor(){this.helpWidth=void 0,this.minWidthToWrap=40,this.sortSubcommands=!1,this.sortOptions=!1,this.showGlobalOptions=!1}prepareContext(e){this.helpWidth=this.helpWidth??e.helpWidth??80}visibleCommands(e){let r=e.commands.filter(n=>!n._hidden),i=e._getHelpCommand();return i&&!i._hidden&&r.push(i),this.sortSubcommands&&r.sort((n,o)=>n.name().localeCompare(o.name())),r}compareOptions(e,r){let i=n=>n.short?n.short.replace(/^-/,""):n.long.replace(/^--/,"");return i(e).localeCompare(i(r))}visibleOptions(e){let r=e.options.filter(n=>!n.hidden),i=e._getHelpOption();if(i&&!i.hidden){let n=i.short&&e._findOption(i.short),o=i.long&&e._findOption(i.long);!n&&!o?r.push(i):i.long&&!o?r.push(e.createOption(i.long,i.description)):i.short&&!n&&r.push(e.createOption(i.short,i.description))}return this.sortOptions&&r.sort(this.compareOptions),r}visibleGlobalOptions(e){if(!this.showGlobalOptions)return[];let r=[];for(let i=e.parent;i;i=i.parent){let n=i.options.filter(o=>!o.hidden);r.push(...n)}return this.sortOptions&&r.sort(this.compareOptions),r}visibleArguments(e){return e._argsDescription&&e.registeredArguments.forEach(r=>{r.description=r.description||e._argsDescription[r.name()]||""}),e.registeredArguments.find(r=>r.description)?e.registeredArguments:[]}subcommandTerm(e){let r=e.registeredArguments.map(i=>wy(i)).join(" ");return e._name+(e._aliases[0]?"|"+e._aliases[0]:"")+(e.options.length?" [options]":"")+(r?" "+r:"")}optionTerm(e){return e.flags}argumentTerm(e){return e.name()}longestSubcommandTermLength(e,r){return r.visibleCommands(e).reduce((i,n)=>Math.max(i,this.displayWidth(r.styleSubcommandTerm(r.subcommandTerm(n)))),0)}longestOptionTermLength(e,r){return r.visibleOptions(e).reduce((i,n)=>Math.max(i,this.displayWidth(r.styleOptionTerm(r.optionTerm(n)))),0)}longestGlobalOptionTermLength(e,r){return r.visibleGlobalOptions(e).reduce((i,n)=>Math.max(i,this.displayWidth(r.styleOptionTerm(r.optionTerm(n)))),0)}longestArgumentTermLength(e,r){return r.visibleArguments(e).reduce((i,n)=>Math.max(i,this.displayWidth(r.styleArgumentTerm(r.argumentTerm(n)))),0)}commandUsage(e){let r=e._name;e._aliases[0]&&(r=r+"|"+e._aliases[0]);let i="";for(let n=e.parent;n;n=n.parent)i=n.name()+" "+i;return i+r+" "+e.usage()}commandDescription(e){return e.description()}subcommandDescription(e){return e.summary()||e.description()}optionDescription(e){let r=[];return e.argChoices&&r.push(`choices: ${e.argChoices.map(i=>JSON.stringify(i)).join(", ")}`),e.defaultValue!==void 0&&(e.required||e.optional||e.isBoolean()&&typeof e.defaultValue=="boolean")&&r.push(`default: ${e.defaultValueDescription||JSON.stringify(e.defaultValue)}`),e.presetArg!==void 0&&e.optional&&r.push(`preset: ${JSON.stringify(e.presetArg)}`),e.envVar!==void 0&&r.push(`env: ${e.envVar}`),r.length>0?`${e.description} (${r.join(", ")})`:e.description}argumentDescription(e){let r=[];if(e.argChoices&&r.push(`choices: ${e.argChoices.map(i=>JSON.stringify(i)).join(", ")}`),e.defaultValue!==void 0&&r.push(`default: ${e.defaultValueDescription||JSON.stringify(e.defaultValue)}`),r.length>0){let i=`(${r.join(", ")})`;return e.description?`${e.description} ${i}`:i}return e.description}formatHelp(e,r){let i=r.padWidth(e,r),n=r.helpWidth??80;function o(p,m){return r.formatItem(p,i,m,r)}let a=[`${r.styleTitle("Usage:")} ${r.styleUsage(r.commandUsage(e))}`,""],c=r.commandDescription(e);c.length>0&&(a=a.concat([r.boxWrap(r.styleCommandDescription(c),n),""]));let l=r.visibleArguments(e).map(p=>o(r.styleArgumentTerm(r.argumentTerm(p)),r.styleArgumentDescription(r.argumentDescription(p))));l.length>0&&(a=a.concat([r.styleTitle("Arguments:"),...l,""]));let d=r.visibleOptions(e).map(p=>o(r.styleOptionTerm(r.optionTerm(p)),r.styleOptionDescription(r.optionDescription(p))));if(d.length>0&&(a=a.concat([r.styleTitle("Options:"),...d,""])),r.showGlobalOptions){let p=r.visibleGlobalOptions(e).map(m=>o(r.styleOptionTerm(r.optionTerm(m)),r.styleOptionDescription(r.optionDescription(m))));p.length>0&&(a=a.concat([r.styleTitle("Global Options:"),...p,""]))}let u=r.visibleCommands(e).map(p=>o(r.styleSubcommandTerm(r.subcommandTerm(p)),r.styleSubcommandDescription(r.subcommandDescription(p))));return u.length>0&&(a=a.concat([r.styleTitle("Commands:"),...u,""])),a.join(`
4
- `)}displayWidth(e){return om(e).length}styleTitle(e){return e}styleUsage(e){return e.split(" ").map(r=>r==="[options]"?this.styleOptionText(r):r==="[command]"?this.styleSubcommandText(r):r[0]==="["||r[0]==="<"?this.styleArgumentText(r):this.styleCommandText(r)).join(" ")}styleCommandDescription(e){return this.styleDescriptionText(e)}styleOptionDescription(e){return this.styleDescriptionText(e)}styleSubcommandDescription(e){return this.styleDescriptionText(e)}styleArgumentDescription(e){return this.styleDescriptionText(e)}styleDescriptionText(e){return e}styleOptionTerm(e){return this.styleOptionText(e)}styleSubcommandTerm(e){return e.split(" ").map(r=>r==="[options]"?this.styleOptionText(r):r[0]==="["||r[0]==="<"?this.styleArgumentText(r):this.styleSubcommandText(r)).join(" ")}styleArgumentTerm(e){return this.styleArgumentText(e)}styleOptionText(e){return e}styleArgumentText(e){return e}styleSubcommandText(e){return e}styleCommandText(e){return e}padWidth(e,r){return Math.max(r.longestOptionTermLength(e,r),r.longestGlobalOptionTermLength(e,r),r.longestSubcommandTermLength(e,r),r.longestArgumentTermLength(e,r))}preformatted(e){return/\n[^\S\r\n]/.test(e)}formatItem(e,r,i,n){let a=" ".repeat(2);if(!i)return a+e;let c=e.padEnd(r+e.length-n.displayWidth(e)),l=2,u=(this.helpWidth??80)-r-l-2,p;return u<this.minWidthToWrap||n.preformatted(i)?p=i:p=n.boxWrap(i,u).replace(/\n/g,`
3
+ var Ok=Object.create;var Ts=Object.defineProperty;var Tk=Object.getOwnPropertyDescriptor;var Ak=Object.getOwnPropertyNames;var Rk=Object.getPrototypeOf,Ck=Object.prototype.hasOwnProperty;var Tn=(t=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(t,{get:(e,r)=>(typeof require<"u"?require:e)[r]}):t)(function(t){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+t+'" is not supported')});var at=(t,e)=>()=>{try{return e||t((e={exports:{}}).exports,e),e.exports}catch(r){throw e=0,r}},De=(t,e)=>{for(var r in e)Ts(t,r,{get:e[r],enumerable:!0})},Pk=(t,e,r,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of Ak(e))!Ck.call(t,n)&&n!==r&&Ts(t,n,{get:()=>e[n],enumerable:!(i=Tk(e,n))||i.enumerable});return t};var Nk=(t,e,r)=>(r=t!=null?Ok(Rk(t)):{},Pk(e||!t||!t.__esModule?Ts(r,"default",{value:t,enumerable:!0}):r,t));var An=at(Rs=>{var Gr=class extends Error{constructor(e,r,i){super(i),Error.captureStackTrace(this,this.constructor),this.name=this.constructor.name,this.code=r,this.exitCode=e,this.nestedError=void 0}},As=class extends Gr{constructor(e){super(1,"commander.invalidArgument",e),Error.captureStackTrace(this,this.constructor),this.name=this.constructor.name}};Rs.CommanderError=Gr;Rs.InvalidArgumentError=As});var Zr=at(Ps=>{var{InvalidArgumentError:Dk}=An(),Cs=class{constructor(e,r){switch(this.description=r||"",this.variadic=!1,this.parseArg=void 0,this.defaultValue=void 0,this.defaultValueDescription=void 0,this.argChoices=void 0,e[0]){case"<":this.required=!0,this._name=e.slice(1,-1);break;case"[":this.required=!1,this._name=e.slice(1,-1);break;default:this.required=!0,this._name=e;break}this._name.length>3&&this._name.slice(-3)==="..."&&(this.variadic=!0,this._name=this._name.slice(0,-3))}name(){return this._name}_concatValue(e,r){return r===this.defaultValue||!Array.isArray(r)?[e]:r.concat(e)}default(e,r){return this.defaultValue=e,this.defaultValueDescription=r,this}argParser(e){return this.parseArg=e,this}choices(e){return this.argChoices=e.slice(),this.parseArg=(r,i)=>{if(!this.argChoices.includes(r))throw new Dk(`Allowed choices are ${this.argChoices.join(", ")}.`);return this.variadic?this._concatValue(r,i):r},this}argRequired(){return this.required=!0,this}argOptional(){return this.required=!1,this}};function Uk(t){let e=t.name()+(t.variadic===!0?"...":"");return t.required?"<"+e+">":"["+e+"]"}Ps.Argument=Cs;Ps.humanReadableArgName=Uk});var Us=at(Ds=>{var{humanReadableArgName:zk}=Zr(),Ns=class{constructor(){this.helpWidth=void 0,this.minWidthToWrap=40,this.sortSubcommands=!1,this.sortOptions=!1,this.showGlobalOptions=!1}prepareContext(e){this.helpWidth=this.helpWidth??e.helpWidth??80}visibleCommands(e){let r=e.commands.filter(n=>!n._hidden),i=e._getHelpCommand();return i&&!i._hidden&&r.push(i),this.sortSubcommands&&r.sort((n,o)=>n.name().localeCompare(o.name())),r}compareOptions(e,r){let i=n=>n.short?n.short.replace(/^-/,""):n.long.replace(/^--/,"");return i(e).localeCompare(i(r))}visibleOptions(e){let r=e.options.filter(n=>!n.hidden),i=e._getHelpOption();if(i&&!i.hidden){let n=i.short&&e._findOption(i.short),o=i.long&&e._findOption(i.long);!n&&!o?r.push(i):i.long&&!o?r.push(e.createOption(i.long,i.description)):i.short&&!n&&r.push(e.createOption(i.short,i.description))}return this.sortOptions&&r.sort(this.compareOptions),r}visibleGlobalOptions(e){if(!this.showGlobalOptions)return[];let r=[];for(let i=e.parent;i;i=i.parent){let n=i.options.filter(o=>!o.hidden);r.push(...n)}return this.sortOptions&&r.sort(this.compareOptions),r}visibleArguments(e){return e._argsDescription&&e.registeredArguments.forEach(r=>{r.description=r.description||e._argsDescription[r.name()]||""}),e.registeredArguments.find(r=>r.description)?e.registeredArguments:[]}subcommandTerm(e){let r=e.registeredArguments.map(i=>zk(i)).join(" ");return e._name+(e._aliases[0]?"|"+e._aliases[0]:"")+(e.options.length?" [options]":"")+(r?" "+r:"")}optionTerm(e){return e.flags}argumentTerm(e){return e.name()}longestSubcommandTermLength(e,r){return r.visibleCommands(e).reduce((i,n)=>Math.max(i,this.displayWidth(r.styleSubcommandTerm(r.subcommandTerm(n)))),0)}longestOptionTermLength(e,r){return r.visibleOptions(e).reduce((i,n)=>Math.max(i,this.displayWidth(r.styleOptionTerm(r.optionTerm(n)))),0)}longestGlobalOptionTermLength(e,r){return r.visibleGlobalOptions(e).reduce((i,n)=>Math.max(i,this.displayWidth(r.styleOptionTerm(r.optionTerm(n)))),0)}longestArgumentTermLength(e,r){return r.visibleArguments(e).reduce((i,n)=>Math.max(i,this.displayWidth(r.styleArgumentTerm(r.argumentTerm(n)))),0)}commandUsage(e){let r=e._name;e._aliases[0]&&(r=r+"|"+e._aliases[0]);let i="";for(let n=e.parent;n;n=n.parent)i=n.name()+" "+i;return i+r+" "+e.usage()}commandDescription(e){return e.description()}subcommandDescription(e){return e.summary()||e.description()}optionDescription(e){let r=[];return e.argChoices&&r.push(`choices: ${e.argChoices.map(i=>JSON.stringify(i)).join(", ")}`),e.defaultValue!==void 0&&(e.required||e.optional||e.isBoolean()&&typeof e.defaultValue=="boolean")&&r.push(`default: ${e.defaultValueDescription||JSON.stringify(e.defaultValue)}`),e.presetArg!==void 0&&e.optional&&r.push(`preset: ${JSON.stringify(e.presetArg)}`),e.envVar!==void 0&&r.push(`env: ${e.envVar}`),r.length>0?`${e.description} (${r.join(", ")})`:e.description}argumentDescription(e){let r=[];if(e.argChoices&&r.push(`choices: ${e.argChoices.map(i=>JSON.stringify(i)).join(", ")}`),e.defaultValue!==void 0&&r.push(`default: ${e.defaultValueDescription||JSON.stringify(e.defaultValue)}`),r.length>0){let i=`(${r.join(", ")})`;return e.description?`${e.description} ${i}`:i}return e.description}formatHelp(e,r){let i=r.padWidth(e,r),n=r.helpWidth??80;function o(p,m){return r.formatItem(p,i,m,r)}let a=[`${r.styleTitle("Usage:")} ${r.styleUsage(r.commandUsage(e))}`,""],c=r.commandDescription(e);c.length>0&&(a=a.concat([r.boxWrap(r.styleCommandDescription(c),n),""]));let l=r.visibleArguments(e).map(p=>o(r.styleArgumentTerm(r.argumentTerm(p)),r.styleArgumentDescription(r.argumentDescription(p))));l.length>0&&(a=a.concat([r.styleTitle("Arguments:"),...l,""]));let d=r.visibleOptions(e).map(p=>o(r.styleOptionTerm(r.optionTerm(p)),r.styleOptionDescription(r.optionDescription(p))));if(d.length>0&&(a=a.concat([r.styleTitle("Options:"),...d,""])),r.showGlobalOptions){let p=r.visibleGlobalOptions(e).map(m=>o(r.styleOptionTerm(r.optionTerm(m)),r.styleOptionDescription(r.optionDescription(m))));p.length>0&&(a=a.concat([r.styleTitle("Global Options:"),...p,""]))}let u=r.visibleCommands(e).map(p=>o(r.styleSubcommandTerm(r.subcommandTerm(p)),r.styleSubcommandDescription(r.subcommandDescription(p))));return u.length>0&&(a=a.concat([r.styleTitle("Commands:"),...u,""])),a.join(`
4
+ `)}displayWidth(e){return Fm(e).length}styleTitle(e){return e}styleUsage(e){return e.split(" ").map(r=>r==="[options]"?this.styleOptionText(r):r==="[command]"?this.styleSubcommandText(r):r[0]==="["||r[0]==="<"?this.styleArgumentText(r):this.styleCommandText(r)).join(" ")}styleCommandDescription(e){return this.styleDescriptionText(e)}styleOptionDescription(e){return this.styleDescriptionText(e)}styleSubcommandDescription(e){return this.styleDescriptionText(e)}styleArgumentDescription(e){return this.styleDescriptionText(e)}styleDescriptionText(e){return e}styleOptionTerm(e){return this.styleOptionText(e)}styleSubcommandTerm(e){return e.split(" ").map(r=>r==="[options]"?this.styleOptionText(r):r[0]==="["||r[0]==="<"?this.styleArgumentText(r):this.styleSubcommandText(r)).join(" ")}styleArgumentTerm(e){return this.styleArgumentText(e)}styleOptionText(e){return e}styleArgumentText(e){return e}styleSubcommandText(e){return e}styleCommandText(e){return e}padWidth(e,r){return Math.max(r.longestOptionTermLength(e,r),r.longestGlobalOptionTermLength(e,r),r.longestSubcommandTermLength(e,r),r.longestArgumentTermLength(e,r))}preformatted(e){return/\n[^\S\r\n]/.test(e)}formatItem(e,r,i,n){let a=" ".repeat(2);if(!i)return a+e;let c=e.padEnd(r+e.length-n.displayWidth(e)),l=2,u=(this.helpWidth??80)-r-l-2,p;return u<this.minWidthToWrap||n.preformatted(i)?p=i:p=n.boxWrap(i,u).replace(/\n/g,`
5
5
  `+" ".repeat(r+l)),a+c+" ".repeat(l)+p.replace(/\n/g,`
6
6
  ${a}`)}boxWrap(e,r){if(r<this.minWidthToWrap)return e;let i=e.split(/\r\n|\n/),n=/[\s]*[^\s]+/g,o=[];return i.forEach(a=>{let c=a.match(n);if(c===null){o.push("");return}let l=[c.shift()],d=this.displayWidth(l[0]);c.forEach(u=>{let p=this.displayWidth(u);if(d+p<=r){l.push(u),d+=p;return}o.push(l.join(""));let m=u.trimStart();l=[m],d=this.displayWidth(m)}),o.push(l.join(""))}),o.join(`
7
- `)}};function om(t){let e=/\x1b\[\d*(;\d*)*m/g;return t.replace(e,"")}as.Help=ss;as.stripColor=om});var ps=Xe(ds=>{var{InvalidArgumentError:$y}=hn(),ls=class{constructor(e,r){this.flags=e,this.description=r||"",this.required=e.includes("<"),this.optional=e.includes("["),this.variadic=/\w\.\.\.[>\]]$/.test(e),this.mandatory=!1;let i=Oy(e);this.short=i.shortFlag,this.long=i.longFlag,this.negate=!1,this.long&&(this.negate=this.long.startsWith("--no-")),this.defaultValue=void 0,this.defaultValueDescription=void 0,this.presetArg=void 0,this.envVar=void 0,this.parseArg=void 0,this.hidden=!1,this.argChoices=void 0,this.conflictsWith=[],this.implied=void 0}default(e,r){return this.defaultValue=e,this.defaultValueDescription=r,this}preset(e){return this.presetArg=e,this}conflicts(e){return this.conflictsWith=this.conflictsWith.concat(e),this}implies(e){let r=e;return typeof e=="string"&&(r={[e]:!0}),this.implied=Object.assign(this.implied||{},r),this}env(e){return this.envVar=e,this}argParser(e){return this.parseArg=e,this}makeOptionMandatory(e=!0){return this.mandatory=!!e,this}hideHelp(e=!0){return this.hidden=!!e,this}_concatValue(e,r){return r===this.defaultValue||!Array.isArray(r)?[e]:r.concat(e)}choices(e){return this.argChoices=e.slice(),this.parseArg=(r,i)=>{if(!this.argChoices.includes(r))throw new $y(`Allowed choices are ${this.argChoices.join(", ")}.`);return this.variadic?this._concatValue(r,i):r},this}name(){return this.long?this.long.replace(/^--/,""):this.short.replace(/^-/,"")}attributeName(){return this.negate?sm(this.name().replace(/^no-/,"")):sm(this.name())}is(e){return this.short===e||this.long===e}isBoolean(){return!this.required&&!this.optional&&!this.negate}},us=class{constructor(e){this.positiveOptions=new Map,this.negativeOptions=new Map,this.dualOptions=new Set,e.forEach(r=>{r.negate?this.negativeOptions.set(r.attributeName(),r):this.positiveOptions.set(r.attributeName(),r)}),this.negativeOptions.forEach((r,i)=>{this.positiveOptions.has(i)&&this.dualOptions.add(i)})}valueFromOption(e,r){let i=r.attributeName();if(!this.dualOptions.has(i))return!0;let n=this.negativeOptions.get(i).presetArg,o=n!==void 0?n:!1;return r.negate===(o===e)}};function sm(t){return t.split("-").reduce((e,r)=>e+r[0].toUpperCase()+r.slice(1))}function Oy(t){let e,r,i=/^-[^-]$/,n=/^--[^-]/,o=t.split(/[ |,]+/).concat("guard");if(i.test(o[0])&&(e=o.shift()),n.test(o[0])&&(r=o.shift()),!e&&i.test(o[0])&&(e=o.shift()),!e&&n.test(o[0])&&(e=r,r=o.shift()),o[0].startsWith("-")){let a=o[0],c=`option creation failed due to '${a}' in option flags '${t}'`;throw/^-[^-][^-]/.test(a)?new Error(`${c}
7
+ `)}};function Fm(t){let e=/\x1b\[\d*(;\d*)*m/g;return t.replace(e,"")}Ds.Help=Ns;Ds.stripColor=Fm});var Ms=at(Ls=>{var{InvalidArgumentError:jk}=An(),zs=class{constructor(e,r){this.flags=e,this.description=r||"",this.required=e.includes("<"),this.optional=e.includes("["),this.variadic=/\w\.\.\.[>\]]$/.test(e),this.mandatory=!1;let i=Lk(e);this.short=i.shortFlag,this.long=i.longFlag,this.negate=!1,this.long&&(this.negate=this.long.startsWith("--no-")),this.defaultValue=void 0,this.defaultValueDescription=void 0,this.presetArg=void 0,this.envVar=void 0,this.parseArg=void 0,this.hidden=!1,this.argChoices=void 0,this.conflictsWith=[],this.implied=void 0}default(e,r){return this.defaultValue=e,this.defaultValueDescription=r,this}preset(e){return this.presetArg=e,this}conflicts(e){return this.conflictsWith=this.conflictsWith.concat(e),this}implies(e){let r=e;return typeof e=="string"&&(r={[e]:!0}),this.implied=Object.assign(this.implied||{},r),this}env(e){return this.envVar=e,this}argParser(e){return this.parseArg=e,this}makeOptionMandatory(e=!0){return this.mandatory=!!e,this}hideHelp(e=!0){return this.hidden=!!e,this}_concatValue(e,r){return r===this.defaultValue||!Array.isArray(r)?[e]:r.concat(e)}choices(e){return this.argChoices=e.slice(),this.parseArg=(r,i)=>{if(!this.argChoices.includes(r))throw new jk(`Allowed choices are ${this.argChoices.join(", ")}.`);return this.variadic?this._concatValue(r,i):r},this}name(){return this.long?this.long.replace(/^--/,""):this.short.replace(/^-/,"")}attributeName(){return this.negate?Hm(this.name().replace(/^no-/,"")):Hm(this.name())}is(e){return this.short===e||this.long===e}isBoolean(){return!this.required&&!this.optional&&!this.negate}},js=class{constructor(e){this.positiveOptions=new Map,this.negativeOptions=new Map,this.dualOptions=new Set,e.forEach(r=>{r.negate?this.negativeOptions.set(r.attributeName(),r):this.positiveOptions.set(r.attributeName(),r)}),this.negativeOptions.forEach((r,i)=>{this.positiveOptions.has(i)&&this.dualOptions.add(i)})}valueFromOption(e,r){let i=r.attributeName();if(!this.dualOptions.has(i))return!0;let n=this.negativeOptions.get(i).presetArg,o=n!==void 0?n:!1;return r.negate===(o===e)}};function Hm(t){return t.split("-").reduce((e,r)=>e+r[0].toUpperCase()+r.slice(1))}function Lk(t){let e,r,i=/^-[^-]$/,n=/^--[^-]/,o=t.split(/[ |,]+/).concat("guard");if(i.test(o[0])&&(e=o.shift()),n.test(o[0])&&(r=o.shift()),!e&&i.test(o[0])&&(e=o.shift()),!e&&n.test(o[0])&&(e=r,r=o.shift()),o[0].startsWith("-")){let a=o[0],c=`option creation failed due to '${a}' in option flags '${t}'`;throw/^-[^-][^-]/.test(a)?new Error(`${c}
8
8
  - a short flag is a single dash and a single character
9
9
  - either use a single dash and a single character (for a short flag)
10
10
  - or use a double dash for a long option (and can have two, like '--ws, --workspace')`):i.test(a)?new Error(`${c}
11
11
  - too many short flags`):n.test(a)?new Error(`${c}
12
12
  - too many long flags`):new Error(`${c}
13
- - unrecognised flag format`)}if(e===void 0&&r===void 0)throw new Error(`option creation failed due to no flags found in '${t}'.`);return{shortFlag:e,longFlag:r}}ds.Option=ls;ds.DualOptions=us});var cm=Xe(am=>{function Ty(t,e){if(Math.abs(t.length-e.length)>3)return Math.max(t.length,e.length);let r=[];for(let i=0;i<=t.length;i++)r[i]=[i];for(let i=0;i<=e.length;i++)r[0][i]=i;for(let i=1;i<=e.length;i++)for(let n=1;n<=t.length;n++){let o=1;t[n-1]===e[i-1]?o=0:o=1,r[n][i]=Math.min(r[n-1][i]+1,r[n][i-1]+1,r[n-1][i-1]+o),n>1&&i>1&&t[n-1]===e[i-2]&&t[n-2]===e[i-1]&&(r[n][i]=Math.min(r[n][i],r[n-2][i-2]+1))}return r[t.length][e.length]}function Ry(t,e){if(!e||e.length===0)return"";e=Array.from(new Set(e));let r=t.startsWith("--");r&&(t=t.slice(2),e=e.map(a=>a.slice(2)));let i=[],n=3,o=.4;return e.forEach(a=>{if(a.length<=1)return;let c=Ty(t,a),l=Math.max(t.length,a.length);(l-c)/l>o&&(c<n?(n=c,i=[a]):c===n&&i.push(a))}),i.sort((a,c)=>a.localeCompare(c)),r&&(i=i.map(a=>`--${a}`)),i.length>1?`
13
+ - unrecognised flag format`)}if(e===void 0&&r===void 0)throw new Error(`option creation failed due to no flags found in '${t}'.`);return{shortFlag:e,longFlag:r}}Ls.Option=zs;Ls.DualOptions=js});var Km=at(Vm=>{function Mk(t,e){if(Math.abs(t.length-e.length)>3)return Math.max(t.length,e.length);let r=[];for(let i=0;i<=t.length;i++)r[i]=[i];for(let i=0;i<=e.length;i++)r[0][i]=i;for(let i=1;i<=e.length;i++)for(let n=1;n<=t.length;n++){let o=1;t[n-1]===e[i-1]?o=0:o=1,r[n][i]=Math.min(r[n-1][i]+1,r[n][i-1]+1,r[n-1][i-1]+o),n>1&&i>1&&t[n-1]===e[i-2]&&t[n-2]===e[i-1]&&(r[n][i]=Math.min(r[n][i],r[n-2][i-2]+1))}return r[t.length][e.length]}function Bk(t,e){if(!e||e.length===0)return"";e=Array.from(new Set(e));let r=t.startsWith("--");r&&(t=t.slice(2),e=e.map(a=>a.slice(2)));let i=[],n=3,o=.4;return e.forEach(a=>{if(a.length<=1)return;let c=Mk(t,a),l=Math.max(t.length,a.length);(l-c)/l>o&&(c<n?(n=c,i=[a]):c===n&&i.push(a))}),i.sort((a,c)=>a.localeCompare(c)),r&&(i=i.map(a=>`--${a}`)),i.length>1?`
14
14
  (Did you mean one of ${i.join(", ")}?)`:i.length===1?`
15
- (Did you mean ${i[0]}?)`:""}am.suggestSimilar=Ry});var pm=Xe(bs=>{var Ay=gn("node:events").EventEmitter,ms=gn("node:child_process"),Re=gn("node:path"),Rr=gn("node:fs"),D=gn("node:process"),{Argument:Cy,humanReadableArgName:Py}=Tr(),{CommanderError:fs}=hn(),{Help:Ny,stripColor:Dy}=cs(),{Option:lm,DualOptions:Uy}=ps(),{suggestSimilar:um}=cm(),gs=class t extends Ay{constructor(e){super(),this.commands=[],this.options=[],this.parent=null,this._allowUnknownOption=!1,this._allowExcessArguments=!1,this.registeredArguments=[],this._args=this.registeredArguments,this.args=[],this.rawArgs=[],this.processedArgs=[],this._scriptPath=null,this._name=e||"",this._optionValues={},this._optionValueSources={},this._storeOptionsAsProperties=!1,this._actionHandler=null,this._executableHandler=!1,this._executableFile=null,this._executableDir=null,this._defaultCommandName=null,this._exitCallback=null,this._aliases=[],this._combineFlagAndOptionalValue=!0,this._description="",this._summary="",this._argsDescription=void 0,this._enablePositionalOptions=!1,this._passThroughOptions=!1,this._lifeCycleHooks={},this._showHelpAfterError=!1,this._showSuggestionAfterError=!0,this._savedState=null,this._outputConfiguration={writeOut:r=>D.stdout.write(r),writeErr:r=>D.stderr.write(r),outputError:(r,i)=>i(r),getOutHelpWidth:()=>D.stdout.isTTY?D.stdout.columns:void 0,getErrHelpWidth:()=>D.stderr.isTTY?D.stderr.columns:void 0,getOutHasColors:()=>hs()??(D.stdout.isTTY&&D.stdout.hasColors?.()),getErrHasColors:()=>hs()??(D.stderr.isTTY&&D.stderr.hasColors?.()),stripColor:r=>Dy(r)},this._hidden=!1,this._helpOption=void 0,this._addImplicitHelpCommand=void 0,this._helpCommand=void 0,this._helpConfiguration={}}copyInheritedSettings(e){return this._outputConfiguration=e._outputConfiguration,this._helpOption=e._helpOption,this._helpCommand=e._helpCommand,this._helpConfiguration=e._helpConfiguration,this._exitCallback=e._exitCallback,this._storeOptionsAsProperties=e._storeOptionsAsProperties,this._combineFlagAndOptionalValue=e._combineFlagAndOptionalValue,this._allowExcessArguments=e._allowExcessArguments,this._enablePositionalOptions=e._enablePositionalOptions,this._showHelpAfterError=e._showHelpAfterError,this._showSuggestionAfterError=e._showSuggestionAfterError,this}_getCommandAndAncestors(){let e=[];for(let r=this;r;r=r.parent)e.push(r);return e}command(e,r,i){let n=r,o=i;typeof n=="object"&&n!==null&&(o=n,n=null),o=o||{};let[,a,c]=e.match(/([^ ]+) *(.*)/),l=this.createCommand(a);return n&&(l.description(n),l._executableHandler=!0),o.isDefault&&(this._defaultCommandName=l._name),l._hidden=!!(o.noHelp||o.hidden),l._executableFile=o.executableFile||null,c&&l.arguments(c),this._registerCommand(l),l.parent=this,l.copyInheritedSettings(this),n?this:l}createCommand(e){return new t(e)}createHelp(){return Object.assign(new Ny,this.configureHelp())}configureHelp(e){return e===void 0?this._helpConfiguration:(this._helpConfiguration=e,this)}configureOutput(e){return e===void 0?this._outputConfiguration:(Object.assign(this._outputConfiguration,e),this)}showHelpAfterError(e=!0){return typeof e!="string"&&(e=!!e),this._showHelpAfterError=e,this}showSuggestionAfterError(e=!0){return this._showSuggestionAfterError=!!e,this}addCommand(e,r){if(!e._name)throw new Error(`Command passed to .addCommand() must have a name
16
- - specify the name in Command constructor or using .name()`);return r=r||{},r.isDefault&&(this._defaultCommandName=e._name),(r.noHelp||r.hidden)&&(e._hidden=!0),this._registerCommand(e),e.parent=this,e._checkForBrokenPassThrough(),this}createArgument(e,r){return new Cy(e,r)}argument(e,r,i,n){let o=this.createArgument(e,r);return typeof i=="function"?o.default(n).argParser(i):o.default(i),this.addArgument(o),this}arguments(e){return e.trim().split(/ +/).forEach(r=>{this.argument(r)}),this}addArgument(e){let r=this.registeredArguments.slice(-1)[0];if(r&&r.variadic)throw new Error(`only the last argument can be variadic '${r.name()}'`);if(e.required&&e.defaultValue!==void 0&&e.parseArg===void 0)throw new Error(`a default value for a required argument is never used: '${e.name()}'`);return this.registeredArguments.push(e),this}helpCommand(e,r){if(typeof e=="boolean")return this._addImplicitHelpCommand=e,this;e=e??"help [command]";let[,i,n]=e.match(/([^ ]+) *(.*)/),o=r??"display help for command",a=this.createCommand(i);return a.helpOption(!1),n&&a.arguments(n),o&&a.description(o),this._addImplicitHelpCommand=!0,this._helpCommand=a,this}addHelpCommand(e,r){return typeof e!="object"?(this.helpCommand(e,r),this):(this._addImplicitHelpCommand=!0,this._helpCommand=e,this)}_getHelpCommand(){return this._addImplicitHelpCommand??(this.commands.length&&!this._actionHandler&&!this._findCommand("help"))?(this._helpCommand===void 0&&this.helpCommand(void 0,void 0),this._helpCommand):null}hook(e,r){let i=["preSubcommand","preAction","postAction"];if(!i.includes(e))throw new Error(`Unexpected value for event passed to hook : '${e}'.
17
- Expecting one of '${i.join("', '")}'`);return this._lifeCycleHooks[e]?this._lifeCycleHooks[e].push(r):this._lifeCycleHooks[e]=[r],this}exitOverride(e){return e?this._exitCallback=e:this._exitCallback=r=>{if(r.code!=="commander.executeSubCommandAsync")throw r},this}_exit(e,r,i){this._exitCallback&&this._exitCallback(new fs(e,r,i)),D.exit(e)}action(e){let r=i=>{let n=this.registeredArguments.length,o=i.slice(0,n);return this._storeOptionsAsProperties?o[n]=this:o[n]=this.opts(),o.push(this),e.apply(this,o)};return this._actionHandler=r,this}createOption(e,r){return new lm(e,r)}_callParseArg(e,r,i,n){try{return e.parseArg(r,i)}catch(o){if(o.code==="commander.invalidArgument"){let a=`${n} ${o.message}`;this.error(a,{exitCode:o.exitCode,code:o.code})}throw o}}_registerOption(e){let r=e.short&&this._findOption(e.short)||e.long&&this._findOption(e.long);if(r){let i=e.long&&this._findOption(e.long)?e.long:e.short;throw new Error(`Cannot add option '${e.flags}'${this._name&&` to command '${this._name}'`} due to conflicting flag '${i}'
18
- - already used by option '${r.flags}'`)}this.options.push(e)}_registerCommand(e){let r=n=>[n.name()].concat(n.aliases()),i=r(e).find(n=>this._findCommand(n));if(i){let n=r(this._findCommand(i)).join("|"),o=r(e).join("|");throw new Error(`cannot add command '${o}' as already have command '${n}'`)}this.commands.push(e)}addOption(e){this._registerOption(e);let r=e.name(),i=e.attributeName();if(e.negate){let o=e.long.replace(/^--no-/,"--");this._findOption(o)||this.setOptionValueWithSource(i,e.defaultValue===void 0?!0:e.defaultValue,"default")}else e.defaultValue!==void 0&&this.setOptionValueWithSource(i,e.defaultValue,"default");let n=(o,a,c)=>{o==null&&e.presetArg!==void 0&&(o=e.presetArg);let l=this.getOptionValue(i);o!==null&&e.parseArg?o=this._callParseArg(e,o,l,a):o!==null&&e.variadic&&(o=e._concatValue(o,l)),o==null&&(e.negate?o=!1:e.isBoolean()||e.optional?o=!0:o=""),this.setOptionValueWithSource(i,o,c)};return this.on("option:"+r,o=>{let a=`error: option '${e.flags}' argument '${o}' is invalid.`;n(o,a,"cli")}),e.envVar&&this.on("optionEnv:"+r,o=>{let a=`error: option '${e.flags}' value '${o}' from env '${e.envVar}' is invalid.`;n(o,a,"env")}),this}_optionEx(e,r,i,n,o){if(typeof r=="object"&&r instanceof lm)throw new Error("To add an Option object use addOption() instead of option() or requiredOption()");let a=this.createOption(r,i);if(a.makeOptionMandatory(!!e.mandatory),typeof n=="function")a.default(o).argParser(n);else if(n instanceof RegExp){let c=n;n=(l,d)=>{let u=c.exec(l);return u?u[0]:d},a.default(o).argParser(n)}else a.default(n);return this.addOption(a)}option(e,r,i,n){return this._optionEx({},e,r,i,n)}requiredOption(e,r,i,n){return this._optionEx({mandatory:!0},e,r,i,n)}combineFlagAndOptionalValue(e=!0){return this._combineFlagAndOptionalValue=!!e,this}allowUnknownOption(e=!0){return this._allowUnknownOption=!!e,this}allowExcessArguments(e=!0){return this._allowExcessArguments=!!e,this}enablePositionalOptions(e=!0){return this._enablePositionalOptions=!!e,this}passThroughOptions(e=!0){return this._passThroughOptions=!!e,this._checkForBrokenPassThrough(),this}_checkForBrokenPassThrough(){if(this.parent&&this._passThroughOptions&&!this.parent._enablePositionalOptions)throw new Error(`passThroughOptions cannot be used for '${this._name}' without turning on enablePositionalOptions for parent command(s)`)}storeOptionsAsProperties(e=!0){if(this.options.length)throw new Error("call .storeOptionsAsProperties() before adding options");if(Object.keys(this._optionValues).length)throw new Error("call .storeOptionsAsProperties() before setting option values");return this._storeOptionsAsProperties=!!e,this}getOptionValue(e){return this._storeOptionsAsProperties?this[e]:this._optionValues[e]}setOptionValue(e,r){return this.setOptionValueWithSource(e,r,void 0)}setOptionValueWithSource(e,r,i){return this._storeOptionsAsProperties?this[e]=r:this._optionValues[e]=r,this._optionValueSources[e]=i,this}getOptionValueSource(e){return this._optionValueSources[e]}getOptionValueSourceWithGlobals(e){let r;return this._getCommandAndAncestors().forEach(i=>{i.getOptionValueSource(e)!==void 0&&(r=i.getOptionValueSource(e))}),r}_prepareUserArgs(e,r){if(e!==void 0&&!Array.isArray(e))throw new Error("first parameter to parse must be array or undefined");if(r=r||{},e===void 0&&r.from===void 0){D.versions?.electron&&(r.from="electron");let n=D.execArgv??[];(n.includes("-e")||n.includes("--eval")||n.includes("-p")||n.includes("--print"))&&(r.from="eval")}e===void 0&&(e=D.argv),this.rawArgs=e.slice();let i;switch(r.from){case void 0:case"node":this._scriptPath=e[1],i=e.slice(2);break;case"electron":D.defaultApp?(this._scriptPath=e[1],i=e.slice(2)):i=e.slice(1);break;case"user":i=e.slice(0);break;case"eval":i=e.slice(1);break;default:throw new Error(`unexpected parse option { from: '${r.from}' }`)}return!this._name&&this._scriptPath&&this.nameFromFilename(this._scriptPath),this._name=this._name||"program",i}parse(e,r){this._prepareForParse();let i=this._prepareUserArgs(e,r);return this._parseCommand([],i),this}async parseAsync(e,r){this._prepareForParse();let i=this._prepareUserArgs(e,r);return await this._parseCommand([],i),this}_prepareForParse(){this._savedState===null?this.saveStateBeforeParse():this.restoreStateBeforeParse()}saveStateBeforeParse(){this._savedState={_name:this._name,_optionValues:{...this._optionValues},_optionValueSources:{...this._optionValueSources}}}restoreStateBeforeParse(){if(this._storeOptionsAsProperties)throw new Error(`Can not call parse again when storeOptionsAsProperties is true.
19
- - either make a new Command for each call to parse, or stop storing options as properties`);this._name=this._savedState._name,this._scriptPath=null,this.rawArgs=[],this._optionValues={...this._savedState._optionValues},this._optionValueSources={...this._savedState._optionValueSources},this.args=[],this.processedArgs=[]}_checkForMissingExecutable(e,r,i){if(Rr.existsSync(e))return;let n=r?`searched for local subcommand relative to directory '${r}'`:"no directory for search for local subcommand, use .executableDir() to supply a custom directory",o=`'${e}' does not exist
15
+ (Did you mean ${i[0]}?)`:""}Vm.suggestSimilar=Bk});var qm=at(Ks=>{var Fk=Tn("node:events").EventEmitter,Bs=Tn("node:child_process"),Ue=Tn("node:path"),Wr=Tn("node:fs"),z=Tn("node:process"),{Argument:Hk,humanReadableArgName:Vk}=Zr(),{CommanderError:Fs}=An(),{Help:Kk,stripColor:Gk}=Us(),{Option:Gm,DualOptions:Zk}=Ms(),{suggestSimilar:Zm}=Km(),Hs=class t extends Fk{constructor(e){super(),this.commands=[],this.options=[],this.parent=null,this._allowUnknownOption=!1,this._allowExcessArguments=!1,this.registeredArguments=[],this._args=this.registeredArguments,this.args=[],this.rawArgs=[],this.processedArgs=[],this._scriptPath=null,this._name=e||"",this._optionValues={},this._optionValueSources={},this._storeOptionsAsProperties=!1,this._actionHandler=null,this._executableHandler=!1,this._executableFile=null,this._executableDir=null,this._defaultCommandName=null,this._exitCallback=null,this._aliases=[],this._combineFlagAndOptionalValue=!0,this._description="",this._summary="",this._argsDescription=void 0,this._enablePositionalOptions=!1,this._passThroughOptions=!1,this._lifeCycleHooks={},this._showHelpAfterError=!1,this._showSuggestionAfterError=!0,this._savedState=null,this._outputConfiguration={writeOut:r=>z.stdout.write(r),writeErr:r=>z.stderr.write(r),outputError:(r,i)=>i(r),getOutHelpWidth:()=>z.stdout.isTTY?z.stdout.columns:void 0,getErrHelpWidth:()=>z.stderr.isTTY?z.stderr.columns:void 0,getOutHasColors:()=>Vs()??(z.stdout.isTTY&&z.stdout.hasColors?.()),getErrHasColors:()=>Vs()??(z.stderr.isTTY&&z.stderr.hasColors?.()),stripColor:r=>Gk(r)},this._hidden=!1,this._helpOption=void 0,this._addImplicitHelpCommand=void 0,this._helpCommand=void 0,this._helpConfiguration={}}copyInheritedSettings(e){return this._outputConfiguration=e._outputConfiguration,this._helpOption=e._helpOption,this._helpCommand=e._helpCommand,this._helpConfiguration=e._helpConfiguration,this._exitCallback=e._exitCallback,this._storeOptionsAsProperties=e._storeOptionsAsProperties,this._combineFlagAndOptionalValue=e._combineFlagAndOptionalValue,this._allowExcessArguments=e._allowExcessArguments,this._enablePositionalOptions=e._enablePositionalOptions,this._showHelpAfterError=e._showHelpAfterError,this._showSuggestionAfterError=e._showSuggestionAfterError,this}_getCommandAndAncestors(){let e=[];for(let r=this;r;r=r.parent)e.push(r);return e}command(e,r,i){let n=r,o=i;typeof n=="object"&&n!==null&&(o=n,n=null),o=o||{};let[,a,c]=e.match(/([^ ]+) *(.*)/),l=this.createCommand(a);return n&&(l.description(n),l._executableHandler=!0),o.isDefault&&(this._defaultCommandName=l._name),l._hidden=!!(o.noHelp||o.hidden),l._executableFile=o.executableFile||null,c&&l.arguments(c),this._registerCommand(l),l.parent=this,l.copyInheritedSettings(this),n?this:l}createCommand(e){return new t(e)}createHelp(){return Object.assign(new Kk,this.configureHelp())}configureHelp(e){return e===void 0?this._helpConfiguration:(this._helpConfiguration=e,this)}configureOutput(e){return e===void 0?this._outputConfiguration:(Object.assign(this._outputConfiguration,e),this)}showHelpAfterError(e=!0){return typeof e!="string"&&(e=!!e),this._showHelpAfterError=e,this}showSuggestionAfterError(e=!0){return this._showSuggestionAfterError=!!e,this}addCommand(e,r){if(!e._name)throw new Error(`Command passed to .addCommand() must have a name
16
+ - specify the name in Command constructor or using .name()`);return r=r||{},r.isDefault&&(this._defaultCommandName=e._name),(r.noHelp||r.hidden)&&(e._hidden=!0),this._registerCommand(e),e.parent=this,e._checkForBrokenPassThrough(),this}createArgument(e,r){return new Hk(e,r)}argument(e,r,i,n){let o=this.createArgument(e,r);return typeof i=="function"?o.default(n).argParser(i):o.default(i),this.addArgument(o),this}arguments(e){return e.trim().split(/ +/).forEach(r=>{this.argument(r)}),this}addArgument(e){let r=this.registeredArguments.slice(-1)[0];if(r&&r.variadic)throw new Error(`only the last argument can be variadic '${r.name()}'`);if(e.required&&e.defaultValue!==void 0&&e.parseArg===void 0)throw new Error(`a default value for a required argument is never used: '${e.name()}'`);return this.registeredArguments.push(e),this}helpCommand(e,r){if(typeof e=="boolean")return this._addImplicitHelpCommand=e,this;e=e??"help [command]";let[,i,n]=e.match(/([^ ]+) *(.*)/),o=r??"display help for command",a=this.createCommand(i);return a.helpOption(!1),n&&a.arguments(n),o&&a.description(o),this._addImplicitHelpCommand=!0,this._helpCommand=a,this}addHelpCommand(e,r){return typeof e!="object"?(this.helpCommand(e,r),this):(this._addImplicitHelpCommand=!0,this._helpCommand=e,this)}_getHelpCommand(){return this._addImplicitHelpCommand??(this.commands.length&&!this._actionHandler&&!this._findCommand("help"))?(this._helpCommand===void 0&&this.helpCommand(void 0,void 0),this._helpCommand):null}hook(e,r){let i=["preSubcommand","preAction","postAction"];if(!i.includes(e))throw new Error(`Unexpected value for event passed to hook : '${e}'.
17
+ Expecting one of '${i.join("', '")}'`);return this._lifeCycleHooks[e]?this._lifeCycleHooks[e].push(r):this._lifeCycleHooks[e]=[r],this}exitOverride(e){return e?this._exitCallback=e:this._exitCallback=r=>{if(r.code!=="commander.executeSubCommandAsync")throw r},this}_exit(e,r,i){this._exitCallback&&this._exitCallback(new Fs(e,r,i)),z.exit(e)}action(e){let r=i=>{let n=this.registeredArguments.length,o=i.slice(0,n);return this._storeOptionsAsProperties?o[n]=this:o[n]=this.opts(),o.push(this),e.apply(this,o)};return this._actionHandler=r,this}createOption(e,r){return new Gm(e,r)}_callParseArg(e,r,i,n){try{return e.parseArg(r,i)}catch(o){if(o.code==="commander.invalidArgument"){let a=`${n} ${o.message}`;this.error(a,{exitCode:o.exitCode,code:o.code})}throw o}}_registerOption(e){let r=e.short&&this._findOption(e.short)||e.long&&this._findOption(e.long);if(r){let i=e.long&&this._findOption(e.long)?e.long:e.short;throw new Error(`Cannot add option '${e.flags}'${this._name&&` to command '${this._name}'`} due to conflicting flag '${i}'
18
+ - already used by option '${r.flags}'`)}this.options.push(e)}_registerCommand(e){let r=n=>[n.name()].concat(n.aliases()),i=r(e).find(n=>this._findCommand(n));if(i){let n=r(this._findCommand(i)).join("|"),o=r(e).join("|");throw new Error(`cannot add command '${o}' as already have command '${n}'`)}this.commands.push(e)}addOption(e){this._registerOption(e);let r=e.name(),i=e.attributeName();if(e.negate){let o=e.long.replace(/^--no-/,"--");this._findOption(o)||this.setOptionValueWithSource(i,e.defaultValue===void 0?!0:e.defaultValue,"default")}else e.defaultValue!==void 0&&this.setOptionValueWithSource(i,e.defaultValue,"default");let n=(o,a,c)=>{o==null&&e.presetArg!==void 0&&(o=e.presetArg);let l=this.getOptionValue(i);o!==null&&e.parseArg?o=this._callParseArg(e,o,l,a):o!==null&&e.variadic&&(o=e._concatValue(o,l)),o==null&&(e.negate?o=!1:e.isBoolean()||e.optional?o=!0:o=""),this.setOptionValueWithSource(i,o,c)};return this.on("option:"+r,o=>{let a=`error: option '${e.flags}' argument '${o}' is invalid.`;n(o,a,"cli")}),e.envVar&&this.on("optionEnv:"+r,o=>{let a=`error: option '${e.flags}' value '${o}' from env '${e.envVar}' is invalid.`;n(o,a,"env")}),this}_optionEx(e,r,i,n,o){if(typeof r=="object"&&r instanceof Gm)throw new Error("To add an Option object use addOption() instead of option() or requiredOption()");let a=this.createOption(r,i);if(a.makeOptionMandatory(!!e.mandatory),typeof n=="function")a.default(o).argParser(n);else if(n instanceof RegExp){let c=n;n=(l,d)=>{let u=c.exec(l);return u?u[0]:d},a.default(o).argParser(n)}else a.default(n);return this.addOption(a)}option(e,r,i,n){return this._optionEx({},e,r,i,n)}requiredOption(e,r,i,n){return this._optionEx({mandatory:!0},e,r,i,n)}combineFlagAndOptionalValue(e=!0){return this._combineFlagAndOptionalValue=!!e,this}allowUnknownOption(e=!0){return this._allowUnknownOption=!!e,this}allowExcessArguments(e=!0){return this._allowExcessArguments=!!e,this}enablePositionalOptions(e=!0){return this._enablePositionalOptions=!!e,this}passThroughOptions(e=!0){return this._passThroughOptions=!!e,this._checkForBrokenPassThrough(),this}_checkForBrokenPassThrough(){if(this.parent&&this._passThroughOptions&&!this.parent._enablePositionalOptions)throw new Error(`passThroughOptions cannot be used for '${this._name}' without turning on enablePositionalOptions for parent command(s)`)}storeOptionsAsProperties(e=!0){if(this.options.length)throw new Error("call .storeOptionsAsProperties() before adding options");if(Object.keys(this._optionValues).length)throw new Error("call .storeOptionsAsProperties() before setting option values");return this._storeOptionsAsProperties=!!e,this}getOptionValue(e){return this._storeOptionsAsProperties?this[e]:this._optionValues[e]}setOptionValue(e,r){return this.setOptionValueWithSource(e,r,void 0)}setOptionValueWithSource(e,r,i){return this._storeOptionsAsProperties?this[e]=r:this._optionValues[e]=r,this._optionValueSources[e]=i,this}getOptionValueSource(e){return this._optionValueSources[e]}getOptionValueSourceWithGlobals(e){let r;return this._getCommandAndAncestors().forEach(i=>{i.getOptionValueSource(e)!==void 0&&(r=i.getOptionValueSource(e))}),r}_prepareUserArgs(e,r){if(e!==void 0&&!Array.isArray(e))throw new Error("first parameter to parse must be array or undefined");if(r=r||{},e===void 0&&r.from===void 0){z.versions?.electron&&(r.from="electron");let n=z.execArgv??[];(n.includes("-e")||n.includes("--eval")||n.includes("-p")||n.includes("--print"))&&(r.from="eval")}e===void 0&&(e=z.argv),this.rawArgs=e.slice();let i;switch(r.from){case void 0:case"node":this._scriptPath=e[1],i=e.slice(2);break;case"electron":z.defaultApp?(this._scriptPath=e[1],i=e.slice(2)):i=e.slice(1);break;case"user":i=e.slice(0);break;case"eval":i=e.slice(1);break;default:throw new Error(`unexpected parse option { from: '${r.from}' }`)}return!this._name&&this._scriptPath&&this.nameFromFilename(this._scriptPath),this._name=this._name||"program",i}parse(e,r){this._prepareForParse();let i=this._prepareUserArgs(e,r);return this._parseCommand([],i),this}async parseAsync(e,r){this._prepareForParse();let i=this._prepareUserArgs(e,r);return await this._parseCommand([],i),this}_prepareForParse(){this._savedState===null?this.saveStateBeforeParse():this.restoreStateBeforeParse()}saveStateBeforeParse(){this._savedState={_name:this._name,_optionValues:{...this._optionValues},_optionValueSources:{...this._optionValueSources}}}restoreStateBeforeParse(){if(this._storeOptionsAsProperties)throw new Error(`Can not call parse again when storeOptionsAsProperties is true.
19
+ - either make a new Command for each call to parse, or stop storing options as properties`);this._name=this._savedState._name,this._scriptPath=null,this.rawArgs=[],this._optionValues={...this._savedState._optionValues},this._optionValueSources={...this._savedState._optionValueSources},this.args=[],this.processedArgs=[]}_checkForMissingExecutable(e,r,i){if(Wr.existsSync(e))return;let n=r?`searched for local subcommand relative to directory '${r}'`:"no directory for search for local subcommand, use .executableDir() to supply a custom directory",o=`'${e}' does not exist
20
20
  - if '${i}' is not meant to be an executable command, remove description parameter from '.command()' and use '.description()' instead
21
21
  - if the default executable name is not suitable, use the executableFile option to supply a custom name or path
22
- - ${n}`;throw new Error(o)}_executeSubCommand(e,r){r=r.slice();let i=!1,n=[".js",".ts",".tsx",".mjs",".cjs"];function o(u,p){let m=Re.resolve(u,p);if(Rr.existsSync(m))return m;if(n.includes(Re.extname(p)))return;let g=n.find(k=>Rr.existsSync(`${m}${k}`));if(g)return`${m}${g}`}this._checkForMissingMandatoryOptions(),this._checkForConflictingOptions();let a=e._executableFile||`${this._name}-${e._name}`,c=this._executableDir||"";if(this._scriptPath){let u;try{u=Rr.realpathSync(this._scriptPath)}catch{u=this._scriptPath}c=Re.resolve(Re.dirname(u),c)}if(c){let u=o(c,a);if(!u&&!e._executableFile&&this._scriptPath){let p=Re.basename(this._scriptPath,Re.extname(this._scriptPath));p!==this._name&&(u=o(c,`${p}-${e._name}`))}a=u||a}i=n.includes(Re.extname(a));let l;D.platform!=="win32"?i?(r.unshift(a),r=dm(D.execArgv).concat(r),l=ms.spawn(D.argv[0],r,{stdio:"inherit"})):l=ms.spawn(a,r,{stdio:"inherit"}):(this._checkForMissingExecutable(a,c,e._name),r.unshift(a),r=dm(D.execArgv).concat(r),l=ms.spawn(D.execPath,r,{stdio:"inherit"})),l.killed||["SIGUSR1","SIGUSR2","SIGTERM","SIGINT","SIGHUP"].forEach(p=>{D.on(p,()=>{l.killed===!1&&l.exitCode===null&&l.kill(p)})});let d=this._exitCallback;l.on("close",u=>{u=u??1,d?d(new fs(u,"commander.executeSubCommandAsync","(close)")):D.exit(u)}),l.on("error",u=>{if(u.code==="ENOENT")this._checkForMissingExecutable(a,c,e._name);else if(u.code==="EACCES")throw new Error(`'${a}' not executable`);if(!d)D.exit(1);else{let p=new fs(1,"commander.executeSubCommandAsync","(error)");p.nestedError=u,d(p)}}),this.runningCommand=l}_dispatchSubcommand(e,r,i){let n=this._findCommand(e);n||this.help({error:!0}),n._prepareForParse();let o;return o=this._chainOrCallSubCommandHook(o,n,"preSubcommand"),o=this._chainOrCall(o,()=>{if(n._executableHandler)this._executeSubCommand(n,r.concat(i));else return n._parseCommand(r,i)}),o}_dispatchHelpCommand(e){e||this.help();let r=this._findCommand(e);return r&&!r._executableHandler&&r.help(),this._dispatchSubcommand(e,[],[this._getHelpOption()?.long??this._getHelpOption()?.short??"--help"])}_checkNumberOfArguments(){this.registeredArguments.forEach((e,r)=>{e.required&&this.args[r]==null&&this.missingArgument(e.name())}),!(this.registeredArguments.length>0&&this.registeredArguments[this.registeredArguments.length-1].variadic)&&this.args.length>this.registeredArguments.length&&this._excessArguments(this.args)}_processArguments(){let e=(i,n,o)=>{let a=n;if(n!==null&&i.parseArg){let c=`error: command-argument value '${n}' is invalid for argument '${i.name()}'.`;a=this._callParseArg(i,n,o,c)}return a};this._checkNumberOfArguments();let r=[];this.registeredArguments.forEach((i,n)=>{let o=i.defaultValue;i.variadic?n<this.args.length?(o=this.args.slice(n),i.parseArg&&(o=o.reduce((a,c)=>e(i,c,a),i.defaultValue))):o===void 0&&(o=[]):n<this.args.length&&(o=this.args[n],i.parseArg&&(o=e(i,o,i.defaultValue))),r[n]=o}),this.processedArgs=r}_chainOrCall(e,r){return e&&e.then&&typeof e.then=="function"?e.then(()=>r()):r()}_chainOrCallHooks(e,r){let i=e,n=[];return this._getCommandAndAncestors().reverse().filter(o=>o._lifeCycleHooks[r]!==void 0).forEach(o=>{o._lifeCycleHooks[r].forEach(a=>{n.push({hookedCommand:o,callback:a})})}),r==="postAction"&&n.reverse(),n.forEach(o=>{i=this._chainOrCall(i,()=>o.callback(o.hookedCommand,this))}),i}_chainOrCallSubCommandHook(e,r,i){let n=e;return this._lifeCycleHooks[i]!==void 0&&this._lifeCycleHooks[i].forEach(o=>{n=this._chainOrCall(n,()=>o(this,r))}),n}_parseCommand(e,r){let i=this.parseOptions(r);if(this._parseOptionsEnv(),this._parseOptionsImplied(),e=e.concat(i.operands),r=i.unknown,this.args=e.concat(r),e&&this._findCommand(e[0]))return this._dispatchSubcommand(e[0],e.slice(1),r);if(this._getHelpCommand()&&e[0]===this._getHelpCommand().name())return this._dispatchHelpCommand(e[1]);if(this._defaultCommandName)return this._outputHelpIfRequested(r),this._dispatchSubcommand(this._defaultCommandName,e,r);this.commands.length&&this.args.length===0&&!this._actionHandler&&!this._defaultCommandName&&this.help({error:!0}),this._outputHelpIfRequested(i.unknown),this._checkForMissingMandatoryOptions(),this._checkForConflictingOptions();let n=()=>{i.unknown.length>0&&this.unknownOption(i.unknown[0])},o=`command:${this.name()}`;if(this._actionHandler){n(),this._processArguments();let a;return a=this._chainOrCallHooks(a,"preAction"),a=this._chainOrCall(a,()=>this._actionHandler(this.processedArgs)),this.parent&&(a=this._chainOrCall(a,()=>{this.parent.emit(o,e,r)})),a=this._chainOrCallHooks(a,"postAction"),a}if(this.parent&&this.parent.listenerCount(o))n(),this._processArguments(),this.parent.emit(o,e,r);else if(e.length){if(this._findCommand("*"))return this._dispatchSubcommand("*",e,r);this.listenerCount("command:*")?this.emit("command:*",e,r):this.commands.length?this.unknownCommand():(n(),this._processArguments())}else this.commands.length?(n(),this.help({error:!0})):(n(),this._processArguments())}_findCommand(e){if(e)return this.commands.find(r=>r._name===e||r._aliases.includes(e))}_findOption(e){return this.options.find(r=>r.is(e))}_checkForMissingMandatoryOptions(){this._getCommandAndAncestors().forEach(e=>{e.options.forEach(r=>{r.mandatory&&e.getOptionValue(r.attributeName())===void 0&&e.missingMandatoryOptionValue(r)})})}_checkForConflictingLocalOptions(){let e=this.options.filter(i=>{let n=i.attributeName();return this.getOptionValue(n)===void 0?!1:this.getOptionValueSource(n)!=="default"});e.filter(i=>i.conflictsWith.length>0).forEach(i=>{let n=e.find(o=>i.conflictsWith.includes(o.attributeName()));n&&this._conflictingOption(i,n)})}_checkForConflictingOptions(){this._getCommandAndAncestors().forEach(e=>{e._checkForConflictingLocalOptions()})}parseOptions(e){let r=[],i=[],n=r,o=e.slice();function a(l){return l.length>1&&l[0]==="-"}let c=null;for(;o.length;){let l=o.shift();if(l==="--"){n===i&&n.push(l),n.push(...o);break}if(c&&!a(l)){this.emit(`option:${c.name()}`,l);continue}if(c=null,a(l)){let d=this._findOption(l);if(d){if(d.required){let u=o.shift();u===void 0&&this.optionMissingArgument(d),this.emit(`option:${d.name()}`,u)}else if(d.optional){let u=null;o.length>0&&!a(o[0])&&(u=o.shift()),this.emit(`option:${d.name()}`,u)}else this.emit(`option:${d.name()}`);c=d.variadic?d:null;continue}}if(l.length>2&&l[0]==="-"&&l[1]!=="-"){let d=this._findOption(`-${l[1]}`);if(d){d.required||d.optional&&this._combineFlagAndOptionalValue?this.emit(`option:${d.name()}`,l.slice(2)):(this.emit(`option:${d.name()}`),o.unshift(`-${l.slice(2)}`));continue}}if(/^--[^=]+=/.test(l)){let d=l.indexOf("="),u=this._findOption(l.slice(0,d));if(u&&(u.required||u.optional)){this.emit(`option:${u.name()}`,l.slice(d+1));continue}}if(a(l)&&(n=i),(this._enablePositionalOptions||this._passThroughOptions)&&r.length===0&&i.length===0){if(this._findCommand(l)){r.push(l),o.length>0&&i.push(...o);break}else if(this._getHelpCommand()&&l===this._getHelpCommand().name()){r.push(l),o.length>0&&r.push(...o);break}else if(this._defaultCommandName){i.push(l),o.length>0&&i.push(...o);break}}if(this._passThroughOptions){n.push(l),o.length>0&&n.push(...o);break}n.push(l)}return{operands:r,unknown:i}}opts(){if(this._storeOptionsAsProperties){let e={},r=this.options.length;for(let i=0;i<r;i++){let n=this.options[i].attributeName();e[n]=n===this._versionOptionName?this._version:this[n]}return e}return this._optionValues}optsWithGlobals(){return this._getCommandAndAncestors().reduce((e,r)=>Object.assign(e,r.opts()),{})}error(e,r){this._outputConfiguration.outputError(`${e}
22
+ - ${n}`;throw new Error(o)}_executeSubCommand(e,r){r=r.slice();let i=!1,n=[".js",".ts",".tsx",".mjs",".cjs"];function o(u,p){let m=Ue.resolve(u,p);if(Wr.existsSync(m))return m;if(n.includes(Ue.extname(p)))return;let f=n.find(v=>Wr.existsSync(`${m}${v}`));if(f)return`${m}${f}`}this._checkForMissingMandatoryOptions(),this._checkForConflictingOptions();let a=e._executableFile||`${this._name}-${e._name}`,c=this._executableDir||"";if(this._scriptPath){let u;try{u=Wr.realpathSync(this._scriptPath)}catch{u=this._scriptPath}c=Ue.resolve(Ue.dirname(u),c)}if(c){let u=o(c,a);if(!u&&!e._executableFile&&this._scriptPath){let p=Ue.basename(this._scriptPath,Ue.extname(this._scriptPath));p!==this._name&&(u=o(c,`${p}-${e._name}`))}a=u||a}i=n.includes(Ue.extname(a));let l;z.platform!=="win32"?i?(r.unshift(a),r=Wm(z.execArgv).concat(r),l=Bs.spawn(z.argv[0],r,{stdio:"inherit"})):l=Bs.spawn(a,r,{stdio:"inherit"}):(this._checkForMissingExecutable(a,c,e._name),r.unshift(a),r=Wm(z.execArgv).concat(r),l=Bs.spawn(z.execPath,r,{stdio:"inherit"})),l.killed||["SIGUSR1","SIGUSR2","SIGTERM","SIGINT","SIGHUP"].forEach(p=>{z.on(p,()=>{l.killed===!1&&l.exitCode===null&&l.kill(p)})});let d=this._exitCallback;l.on("close",u=>{u=u??1,d?d(new Fs(u,"commander.executeSubCommandAsync","(close)")):z.exit(u)}),l.on("error",u=>{if(u.code==="ENOENT")this._checkForMissingExecutable(a,c,e._name);else if(u.code==="EACCES")throw new Error(`'${a}' not executable`);if(!d)z.exit(1);else{let p=new Fs(1,"commander.executeSubCommandAsync","(error)");p.nestedError=u,d(p)}}),this.runningCommand=l}_dispatchSubcommand(e,r,i){let n=this._findCommand(e);n||this.help({error:!0}),n._prepareForParse();let o;return o=this._chainOrCallSubCommandHook(o,n,"preSubcommand"),o=this._chainOrCall(o,()=>{if(n._executableHandler)this._executeSubCommand(n,r.concat(i));else return n._parseCommand(r,i)}),o}_dispatchHelpCommand(e){e||this.help();let r=this._findCommand(e);return r&&!r._executableHandler&&r.help(),this._dispatchSubcommand(e,[],[this._getHelpOption()?.long??this._getHelpOption()?.short??"--help"])}_checkNumberOfArguments(){this.registeredArguments.forEach((e,r)=>{e.required&&this.args[r]==null&&this.missingArgument(e.name())}),!(this.registeredArguments.length>0&&this.registeredArguments[this.registeredArguments.length-1].variadic)&&this.args.length>this.registeredArguments.length&&this._excessArguments(this.args)}_processArguments(){let e=(i,n,o)=>{let a=n;if(n!==null&&i.parseArg){let c=`error: command-argument value '${n}' is invalid for argument '${i.name()}'.`;a=this._callParseArg(i,n,o,c)}return a};this._checkNumberOfArguments();let r=[];this.registeredArguments.forEach((i,n)=>{let o=i.defaultValue;i.variadic?n<this.args.length?(o=this.args.slice(n),i.parseArg&&(o=o.reduce((a,c)=>e(i,c,a),i.defaultValue))):o===void 0&&(o=[]):n<this.args.length&&(o=this.args[n],i.parseArg&&(o=e(i,o,i.defaultValue))),r[n]=o}),this.processedArgs=r}_chainOrCall(e,r){return e&&e.then&&typeof e.then=="function"?e.then(()=>r()):r()}_chainOrCallHooks(e,r){let i=e,n=[];return this._getCommandAndAncestors().reverse().filter(o=>o._lifeCycleHooks[r]!==void 0).forEach(o=>{o._lifeCycleHooks[r].forEach(a=>{n.push({hookedCommand:o,callback:a})})}),r==="postAction"&&n.reverse(),n.forEach(o=>{i=this._chainOrCall(i,()=>o.callback(o.hookedCommand,this))}),i}_chainOrCallSubCommandHook(e,r,i){let n=e;return this._lifeCycleHooks[i]!==void 0&&this._lifeCycleHooks[i].forEach(o=>{n=this._chainOrCall(n,()=>o(this,r))}),n}_parseCommand(e,r){let i=this.parseOptions(r);if(this._parseOptionsEnv(),this._parseOptionsImplied(),e=e.concat(i.operands),r=i.unknown,this.args=e.concat(r),e&&this._findCommand(e[0]))return this._dispatchSubcommand(e[0],e.slice(1),r);if(this._getHelpCommand()&&e[0]===this._getHelpCommand().name())return this._dispatchHelpCommand(e[1]);if(this._defaultCommandName)return this._outputHelpIfRequested(r),this._dispatchSubcommand(this._defaultCommandName,e,r);this.commands.length&&this.args.length===0&&!this._actionHandler&&!this._defaultCommandName&&this.help({error:!0}),this._outputHelpIfRequested(i.unknown),this._checkForMissingMandatoryOptions(),this._checkForConflictingOptions();let n=()=>{i.unknown.length>0&&this.unknownOption(i.unknown[0])},o=`command:${this.name()}`;if(this._actionHandler){n(),this._processArguments();let a;return a=this._chainOrCallHooks(a,"preAction"),a=this._chainOrCall(a,()=>this._actionHandler(this.processedArgs)),this.parent&&(a=this._chainOrCall(a,()=>{this.parent.emit(o,e,r)})),a=this._chainOrCallHooks(a,"postAction"),a}if(this.parent&&this.parent.listenerCount(o))n(),this._processArguments(),this.parent.emit(o,e,r);else if(e.length){if(this._findCommand("*"))return this._dispatchSubcommand("*",e,r);this.listenerCount("command:*")?this.emit("command:*",e,r):this.commands.length?this.unknownCommand():(n(),this._processArguments())}else this.commands.length?(n(),this.help({error:!0})):(n(),this._processArguments())}_findCommand(e){if(e)return this.commands.find(r=>r._name===e||r._aliases.includes(e))}_findOption(e){return this.options.find(r=>r.is(e))}_checkForMissingMandatoryOptions(){this._getCommandAndAncestors().forEach(e=>{e.options.forEach(r=>{r.mandatory&&e.getOptionValue(r.attributeName())===void 0&&e.missingMandatoryOptionValue(r)})})}_checkForConflictingLocalOptions(){let e=this.options.filter(i=>{let n=i.attributeName();return this.getOptionValue(n)===void 0?!1:this.getOptionValueSource(n)!=="default"});e.filter(i=>i.conflictsWith.length>0).forEach(i=>{let n=e.find(o=>i.conflictsWith.includes(o.attributeName()));n&&this._conflictingOption(i,n)})}_checkForConflictingOptions(){this._getCommandAndAncestors().forEach(e=>{e._checkForConflictingLocalOptions()})}parseOptions(e){let r=[],i=[],n=r,o=e.slice();function a(l){return l.length>1&&l[0]==="-"}let c=null;for(;o.length;){let l=o.shift();if(l==="--"){n===i&&n.push(l),n.push(...o);break}if(c&&!a(l)){this.emit(`option:${c.name()}`,l);continue}if(c=null,a(l)){let d=this._findOption(l);if(d){if(d.required){let u=o.shift();u===void 0&&this.optionMissingArgument(d),this.emit(`option:${d.name()}`,u)}else if(d.optional){let u=null;o.length>0&&!a(o[0])&&(u=o.shift()),this.emit(`option:${d.name()}`,u)}else this.emit(`option:${d.name()}`);c=d.variadic?d:null;continue}}if(l.length>2&&l[0]==="-"&&l[1]!=="-"){let d=this._findOption(`-${l[1]}`);if(d){d.required||d.optional&&this._combineFlagAndOptionalValue?this.emit(`option:${d.name()}`,l.slice(2)):(this.emit(`option:${d.name()}`),o.unshift(`-${l.slice(2)}`));continue}}if(/^--[^=]+=/.test(l)){let d=l.indexOf("="),u=this._findOption(l.slice(0,d));if(u&&(u.required||u.optional)){this.emit(`option:${u.name()}`,l.slice(d+1));continue}}if(a(l)&&(n=i),(this._enablePositionalOptions||this._passThroughOptions)&&r.length===0&&i.length===0){if(this._findCommand(l)){r.push(l),o.length>0&&i.push(...o);break}else if(this._getHelpCommand()&&l===this._getHelpCommand().name()){r.push(l),o.length>0&&r.push(...o);break}else if(this._defaultCommandName){i.push(l),o.length>0&&i.push(...o);break}}if(this._passThroughOptions){n.push(l),o.length>0&&n.push(...o);break}n.push(l)}return{operands:r,unknown:i}}opts(){if(this._storeOptionsAsProperties){let e={},r=this.options.length;for(let i=0;i<r;i++){let n=this.options[i].attributeName();e[n]=n===this._versionOptionName?this._version:this[n]}return e}return this._optionValues}optsWithGlobals(){return this._getCommandAndAncestors().reduce((e,r)=>Object.assign(e,r.opts()),{})}error(e,r){this._outputConfiguration.outputError(`${e}
23
23
  `,this._outputConfiguration.writeErr),typeof this._showHelpAfterError=="string"?this._outputConfiguration.writeErr(`${this._showHelpAfterError}
24
24
  `):this._showHelpAfterError&&(this._outputConfiguration.writeErr(`
25
- `),this.outputHelp({error:!0}));let i=r||{},n=i.exitCode||1,o=i.code||"commander.error";this._exit(n,o,e)}_parseOptionsEnv(){this.options.forEach(e=>{if(e.envVar&&e.envVar in D.env){let r=e.attributeName();(this.getOptionValue(r)===void 0||["default","config","env"].includes(this.getOptionValueSource(r)))&&(e.required||e.optional?this.emit(`optionEnv:${e.name()}`,D.env[e.envVar]):this.emit(`optionEnv:${e.name()}`))}})}_parseOptionsImplied(){let e=new Uy(this.options),r=i=>this.getOptionValue(i)!==void 0&&!["default","implied"].includes(this.getOptionValueSource(i));this.options.filter(i=>i.implied!==void 0&&r(i.attributeName())&&e.valueFromOption(this.getOptionValue(i.attributeName()),i)).forEach(i=>{Object.keys(i.implied).filter(n=>!r(n)).forEach(n=>{this.setOptionValueWithSource(n,i.implied[n],"implied")})})}missingArgument(e){let r=`error: missing required argument '${e}'`;this.error(r,{code:"commander.missingArgument"})}optionMissingArgument(e){let r=`error: option '${e.flags}' argument missing`;this.error(r,{code:"commander.optionMissingArgument"})}missingMandatoryOptionValue(e){let r=`error: required option '${e.flags}' not specified`;this.error(r,{code:"commander.missingMandatoryOptionValue"})}_conflictingOption(e,r){let i=a=>{let c=a.attributeName(),l=this.getOptionValue(c),d=this.options.find(p=>p.negate&&c===p.attributeName()),u=this.options.find(p=>!p.negate&&c===p.attributeName());return d&&(d.presetArg===void 0&&l===!1||d.presetArg!==void 0&&l===d.presetArg)?d:u||a},n=a=>{let c=i(a),l=c.attributeName();return this.getOptionValueSource(l)==="env"?`environment variable '${c.envVar}'`:`option '${c.flags}'`},o=`error: ${n(e)} cannot be used with ${n(r)}`;this.error(o,{code:"commander.conflictingOption"})}unknownOption(e){if(this._allowUnknownOption)return;let r="";if(e.startsWith("--")&&this._showSuggestionAfterError){let n=[],o=this;do{let a=o.createHelp().visibleOptions(o).filter(c=>c.long).map(c=>c.long);n=n.concat(a),o=o.parent}while(o&&!o._enablePositionalOptions);r=um(e,n)}let i=`error: unknown option '${e}'${r}`;this.error(i,{code:"commander.unknownOption"})}_excessArguments(e){if(this._allowExcessArguments)return;let r=this.registeredArguments.length,i=r===1?"":"s",o=`error: too many arguments${this.parent?` for '${this.name()}'`:""}. Expected ${r} argument${i} but got ${e.length}.`;this.error(o,{code:"commander.excessArguments"})}unknownCommand(){let e=this.args[0],r="";if(this._showSuggestionAfterError){let n=[];this.createHelp().visibleCommands(this).forEach(o=>{n.push(o.name()),o.alias()&&n.push(o.alias())}),r=um(e,n)}let i=`error: unknown command '${e}'${r}`;this.error(i,{code:"commander.unknownCommand"})}version(e,r,i){if(e===void 0)return this._version;this._version=e,r=r||"-V, --version",i=i||"output the version number";let n=this.createOption(r,i);return this._versionOptionName=n.attributeName(),this._registerOption(n),this.on("option:"+n.name(),()=>{this._outputConfiguration.writeOut(`${e}
26
- `),this._exit(0,"commander.version",e)}),this}description(e,r){return e===void 0&&r===void 0?this._description:(this._description=e,r&&(this._argsDescription=r),this)}summary(e){return e===void 0?this._summary:(this._summary=e,this)}alias(e){if(e===void 0)return this._aliases[0];let r=this;if(this.commands.length!==0&&this.commands[this.commands.length-1]._executableHandler&&(r=this.commands[this.commands.length-1]),e===r._name)throw new Error("Command alias can't be the same as its name");let i=this.parent?._findCommand(e);if(i){let n=[i.name()].concat(i.aliases()).join("|");throw new Error(`cannot add alias '${e}' to command '${this.name()}' as already have command '${n}'`)}return r._aliases.push(e),this}aliases(e){return e===void 0?this._aliases:(e.forEach(r=>this.alias(r)),this)}usage(e){if(e===void 0){if(this._usage)return this._usage;let r=this.registeredArguments.map(i=>Py(i));return[].concat(this.options.length||this._helpOption!==null?"[options]":[],this.commands.length?"[command]":[],this.registeredArguments.length?r:[]).join(" ")}return this._usage=e,this}name(e){return e===void 0?this._name:(this._name=e,this)}nameFromFilename(e){return this._name=Re.basename(e,Re.extname(e)),this}executableDir(e){return e===void 0?this._executableDir:(this._executableDir=e,this)}helpInformation(e){let r=this.createHelp(),i=this._getOutputContext(e);r.prepareContext({error:i.error,helpWidth:i.helpWidth,outputHasColors:i.hasColors});let n=r.formatHelp(this,r);return i.hasColors?n:this._outputConfiguration.stripColor(n)}_getOutputContext(e){e=e||{};let r=!!e.error,i,n,o;return r?(i=c=>this._outputConfiguration.writeErr(c),n=this._outputConfiguration.getErrHasColors(),o=this._outputConfiguration.getErrHelpWidth()):(i=c=>this._outputConfiguration.writeOut(c),n=this._outputConfiguration.getOutHasColors(),o=this._outputConfiguration.getOutHelpWidth()),{error:r,write:c=>(n||(c=this._outputConfiguration.stripColor(c)),i(c)),hasColors:n,helpWidth:o}}outputHelp(e){let r;typeof e=="function"&&(r=e,e=void 0);let i=this._getOutputContext(e),n={error:i.error,write:i.write,command:this};this._getCommandAndAncestors().reverse().forEach(a=>a.emit("beforeAllHelp",n)),this.emit("beforeHelp",n);let o=this.helpInformation({error:i.error});if(r&&(o=r(o),typeof o!="string"&&!Buffer.isBuffer(o)))throw new Error("outputHelp callback must return a string or a Buffer");i.write(o),this._getHelpOption()?.long&&this.emit(this._getHelpOption().long),this.emit("afterHelp",n),this._getCommandAndAncestors().forEach(a=>a.emit("afterAllHelp",n))}helpOption(e,r){return typeof e=="boolean"?(e?this._helpOption=this._helpOption??void 0:this._helpOption=null,this):(e=e??"-h, --help",r=r??"display help for command",this._helpOption=this.createOption(e,r),this)}_getHelpOption(){return this._helpOption===void 0&&this.helpOption(void 0,void 0),this._helpOption}addHelpOption(e){return this._helpOption=e,this}help(e){this.outputHelp(e);let r=Number(D.exitCode??0);r===0&&e&&typeof e!="function"&&e.error&&(r=1),this._exit(r,"commander.help","(outputHelp)")}addHelpText(e,r){let i=["beforeAll","before","after","afterAll"];if(!i.includes(e))throw new Error(`Unexpected value for position to addHelpText.
25
+ `),this.outputHelp({error:!0}));let i=r||{},n=i.exitCode||1,o=i.code||"commander.error";this._exit(n,o,e)}_parseOptionsEnv(){this.options.forEach(e=>{if(e.envVar&&e.envVar in z.env){let r=e.attributeName();(this.getOptionValue(r)===void 0||["default","config","env"].includes(this.getOptionValueSource(r)))&&(e.required||e.optional?this.emit(`optionEnv:${e.name()}`,z.env[e.envVar]):this.emit(`optionEnv:${e.name()}`))}})}_parseOptionsImplied(){let e=new Zk(this.options),r=i=>this.getOptionValue(i)!==void 0&&!["default","implied"].includes(this.getOptionValueSource(i));this.options.filter(i=>i.implied!==void 0&&r(i.attributeName())&&e.valueFromOption(this.getOptionValue(i.attributeName()),i)).forEach(i=>{Object.keys(i.implied).filter(n=>!r(n)).forEach(n=>{this.setOptionValueWithSource(n,i.implied[n],"implied")})})}missingArgument(e){let r=`error: missing required argument '${e}'`;this.error(r,{code:"commander.missingArgument"})}optionMissingArgument(e){let r=`error: option '${e.flags}' argument missing`;this.error(r,{code:"commander.optionMissingArgument"})}missingMandatoryOptionValue(e){let r=`error: required option '${e.flags}' not specified`;this.error(r,{code:"commander.missingMandatoryOptionValue"})}_conflictingOption(e,r){let i=a=>{let c=a.attributeName(),l=this.getOptionValue(c),d=this.options.find(p=>p.negate&&c===p.attributeName()),u=this.options.find(p=>!p.negate&&c===p.attributeName());return d&&(d.presetArg===void 0&&l===!1||d.presetArg!==void 0&&l===d.presetArg)?d:u||a},n=a=>{let c=i(a),l=c.attributeName();return this.getOptionValueSource(l)==="env"?`environment variable '${c.envVar}'`:`option '${c.flags}'`},o=`error: ${n(e)} cannot be used with ${n(r)}`;this.error(o,{code:"commander.conflictingOption"})}unknownOption(e){if(this._allowUnknownOption)return;let r="";if(e.startsWith("--")&&this._showSuggestionAfterError){let n=[],o=this;do{let a=o.createHelp().visibleOptions(o).filter(c=>c.long).map(c=>c.long);n=n.concat(a),o=o.parent}while(o&&!o._enablePositionalOptions);r=Zm(e,n)}let i=`error: unknown option '${e}'${r}`;this.error(i,{code:"commander.unknownOption"})}_excessArguments(e){if(this._allowExcessArguments)return;let r=this.registeredArguments.length,i=r===1?"":"s",o=`error: too many arguments${this.parent?` for '${this.name()}'`:""}. Expected ${r} argument${i} but got ${e.length}.`;this.error(o,{code:"commander.excessArguments"})}unknownCommand(){let e=this.args[0],r="";if(this._showSuggestionAfterError){let n=[];this.createHelp().visibleCommands(this).forEach(o=>{n.push(o.name()),o.alias()&&n.push(o.alias())}),r=Zm(e,n)}let i=`error: unknown command '${e}'${r}`;this.error(i,{code:"commander.unknownCommand"})}version(e,r,i){if(e===void 0)return this._version;this._version=e,r=r||"-V, --version",i=i||"output the version number";let n=this.createOption(r,i);return this._versionOptionName=n.attributeName(),this._registerOption(n),this.on("option:"+n.name(),()=>{this._outputConfiguration.writeOut(`${e}
26
+ `),this._exit(0,"commander.version",e)}),this}description(e,r){return e===void 0&&r===void 0?this._description:(this._description=e,r&&(this._argsDescription=r),this)}summary(e){return e===void 0?this._summary:(this._summary=e,this)}alias(e){if(e===void 0)return this._aliases[0];let r=this;if(this.commands.length!==0&&this.commands[this.commands.length-1]._executableHandler&&(r=this.commands[this.commands.length-1]),e===r._name)throw new Error("Command alias can't be the same as its name");let i=this.parent?._findCommand(e);if(i){let n=[i.name()].concat(i.aliases()).join("|");throw new Error(`cannot add alias '${e}' to command '${this.name()}' as already have command '${n}'`)}return r._aliases.push(e),this}aliases(e){return e===void 0?this._aliases:(e.forEach(r=>this.alias(r)),this)}usage(e){if(e===void 0){if(this._usage)return this._usage;let r=this.registeredArguments.map(i=>Vk(i));return[].concat(this.options.length||this._helpOption!==null?"[options]":[],this.commands.length?"[command]":[],this.registeredArguments.length?r:[]).join(" ")}return this._usage=e,this}name(e){return e===void 0?this._name:(this._name=e,this)}nameFromFilename(e){return this._name=Ue.basename(e,Ue.extname(e)),this}executableDir(e){return e===void 0?this._executableDir:(this._executableDir=e,this)}helpInformation(e){let r=this.createHelp(),i=this._getOutputContext(e);r.prepareContext({error:i.error,helpWidth:i.helpWidth,outputHasColors:i.hasColors});let n=r.formatHelp(this,r);return i.hasColors?n:this._outputConfiguration.stripColor(n)}_getOutputContext(e){e=e||{};let r=!!e.error,i,n,o;return r?(i=c=>this._outputConfiguration.writeErr(c),n=this._outputConfiguration.getErrHasColors(),o=this._outputConfiguration.getErrHelpWidth()):(i=c=>this._outputConfiguration.writeOut(c),n=this._outputConfiguration.getOutHasColors(),o=this._outputConfiguration.getOutHelpWidth()),{error:r,write:c=>(n||(c=this._outputConfiguration.stripColor(c)),i(c)),hasColors:n,helpWidth:o}}outputHelp(e){let r;typeof e=="function"&&(r=e,e=void 0);let i=this._getOutputContext(e),n={error:i.error,write:i.write,command:this};this._getCommandAndAncestors().reverse().forEach(a=>a.emit("beforeAllHelp",n)),this.emit("beforeHelp",n);let o=this.helpInformation({error:i.error});if(r&&(o=r(o),typeof o!="string"&&!Buffer.isBuffer(o)))throw new Error("outputHelp callback must return a string or a Buffer");i.write(o),this._getHelpOption()?.long&&this.emit(this._getHelpOption().long),this.emit("afterHelp",n),this._getCommandAndAncestors().forEach(a=>a.emit("afterAllHelp",n))}helpOption(e,r){return typeof e=="boolean"?(e?this._helpOption=this._helpOption??void 0:this._helpOption=null,this):(e=e??"-h, --help",r=r??"display help for command",this._helpOption=this.createOption(e,r),this)}_getHelpOption(){return this._helpOption===void 0&&this.helpOption(void 0,void 0),this._helpOption}addHelpOption(e){return this._helpOption=e,this}help(e){this.outputHelp(e);let r=Number(z.exitCode??0);r===0&&e&&typeof e!="function"&&e.error&&(r=1),this._exit(r,"commander.help","(outputHelp)")}addHelpText(e,r){let i=["beforeAll","before","after","afterAll"];if(!i.includes(e))throw new Error(`Unexpected value for position to addHelpText.
27
27
  Expecting one of '${i.join("', '")}'`);let n=`${e}Help`;return this.on(n,o=>{let a;typeof r=="function"?a=r({error:o.error,command:o.command}):a=r,a&&o.write(`${a}
28
- `)}),this}_outputHelpIfRequested(e){let r=this._getHelpOption();r&&e.find(n=>r.is(n))&&(this.outputHelp(),this._exit(0,"commander.helpDisplayed","(outputHelp)"))}};function dm(t){return t.map(e=>{if(!e.startsWith("--inspect"))return e;let r,i="127.0.0.1",n="9229",o;return(o=e.match(/^(--inspect(-brk)?)$/))!==null?r=o[1]:(o=e.match(/^(--inspect(-brk|-port)?)=([^:]+)$/))!==null?(r=o[1],/^\d+$/.test(o[3])?n=o[3]:i=o[3]):(o=e.match(/^(--inspect(-brk|-port)?)=([^:]+):(\d+)$/))!==null&&(r=o[1],i=o[3],n=o[4]),r&&n!=="0"?`${r}=${i}:${parseInt(n)+1}`:e})}function hs(){if(D.env.NO_COLOR||D.env.FORCE_COLOR==="0"||D.env.FORCE_COLOR==="false")return!1;if(D.env.FORCE_COLOR||D.env.CLICOLOR_FORCE!==void 0)return!0}bs.Command=gs;bs.useColor=hs});var hm=Xe(me=>{var{Argument:mm}=Tr(),{Command:vs}=pm(),{CommanderError:zy,InvalidArgumentError:fm}=hn(),{Help:jy}=cs(),{Option:gm}=ps();me.program=new vs;me.createCommand=t=>new vs(t);me.createOption=(t,e)=>new gm(t,e);me.createArgument=(t,e)=>new mm(t,e);me.Command=vs;me.Option=gm;me.Argument=mm;me.Help=jy;me.CommanderError=zy;me.InvalidArgumentError=fm;me.InvalidOptionArgumentError=fm});var bm=Iy(hm(),1),{program:TR,createCommand:RR,createArgument:AR,createOption:CR,CommanderError:PR,InvalidArgumentError:NR,InvalidOptionArgumentError:DR,Command:vm,Argument:UR,Option:zR,Help:jR}=bm.default;import{readFile as pR}from"node:fs/promises";import{fileURLToPath as mR}from"node:url";import{dirname as fR,join as gR}from"node:path";var b=class extends Error{constructor(r,i,n){super(r);this.status=i;this.name="CliError",this.code=n?.code,this.details=n?.details,this.param=n?.param}status;code;details;param};var pt="x-fs-surface",mt="cli",Ly="management";function ue(t,e){let r=new URLSearchParams;for(let[n,o]of Object.entries(e))o&&r.set(n,o);let i=r.toString();return i?`${t}?${i}`:t}function _m(t){let e=t.includes("?")?"&":"?";return`${t}${e}dry_run=true`}var My=new Set([429,500,502,503,504]),Fy=3,By=3e4,ym=200,Hy=4e3,Vy=t=>new Promise(e=>setTimeout(e,t));function km(t,e){if(e){let i=Number(e);if(Number.isFinite(i)&&i>=0)return Math.min(i*1e3,1e4)}return Math.min(ym*2**(t-1),Hy)+Math.floor(Math.random()*ym)}function xm(t,e){let r=t.toUpperCase();return r==="GET"||r==="HEAD"?!0:"Idempotency-Key"in e}function Im(t){let e=t.retry?.attempts??Fy,r=t.retry?.sleep??Vy;async function i(u,p,m){let g=m?e:1,k;for(let E=1;E<=g;E++){let S=new AbortController,R=setTimeout(()=>S.abort(),By);try{let H=await fetch(u,{...p,signal:S.signal});if(m&&E<g&&My.has(H.status)){let W=H.headers?.get?.("retry-after")??null;await r(km(E,W));continue}return H}catch(H){if(k=H,m&&E<g){await r(km(E,null));continue}throw H}finally{clearTimeout(R)}}throw k}let n=null;async function o(){let u=await fetch(`${t.apiUrl}/auth/cli/exchange`,{method:"POST",headers:{Authorization:`Bearer ${t.token}`,"Content-Type":"application/json",[pt]:mt}});if(!u.ok){let m=(await u.json().catch(()=>null))?.error,g=typeof m=="string"?{message:m}:m;throw new b(g?.message??u.statusText,u.status,{code:g?.code,details:g?.details})}return n=await u.json(),n}function a(u){return u.split("/",3)[1]===Ly}async function c(u){if(!t.token.startsWith("mk_")||a(u))return t.token;let p=n?Date.parse(n.expiresAt):0;return(!n||p-Date.now()<6e4)&&await o(),n.accessToken}async function l(u,p,m,g){let k=await c(p),E=g?.dryRun?_m(p):p,S={Authorization:`Bearer ${k}`,"Content-Type":"application/json",[pt]:mt};g?.idempotencyKey&&(S["Idempotency-Key"]=g.idempotencyKey);let R=await i(`${t.apiUrl}${E}`,{method:u,headers:S,body:m?JSON.stringify(m):void 0},g?.retryOnTransient===!1?!1:xm(u,S));if(!R.ok){let W=(await R.json().catch(()=>null))?.error,U=typeof W=="string"?{message:W}:W;throw new b(U?.message??R.statusText,R.status,{code:U?.code,details:U?.details})}if(R.status!==204)return R.json()}async function d(u,p,m,g,k){let E=await c(p),S=k?.dryRun?_m(p):p,R={Authorization:`Bearer ${E}`,"Content-Type":g,[pt]:mt};k?.idempotencyKey&&(R["Idempotency-Key"]=k.idempotencyKey);let H=await i(`${t.apiUrl}${S}`,{method:u,headers:R,body:m},k?.retryOnTransient===!1?!1:xm(u,R));if(!H.ok){let U=(await H.json().catch(()=>null))?.error,J=typeof U=="string"?{message:U}:U;throw new b(J?.message??H.statusText,H.status,{code:J?.code,details:J?.details})}if(H.status!==204)return H.json()}return{exchangeCliToken:o,authWhoami:async()=>{if(t.token.startsWith("mk_")){let p=await l("GET","/management/whoami");return{kind:"maker",tokenId:p.tokenId,organizationId:p.organizationId,businessId:p.businessId,scopes:p.scopes}}return{kind:"builder",...await l("POST","/builder/context/bootstrap")}},bootstrap:()=>l("POST","/builder/context/bootstrap"),listBusinesses:()=>l("GET","/businesses"),initBusiness:(u,p)=>l("POST","/businesses/init",u,p),updateBusiness:(u,p,m,g)=>l("PATCH",ue(`/businesses/${u}`,{env:m?.env}),p,g),uploadBrandAsset:(u,p,m,g,k)=>d("PUT",`/businesses/${u}/${p}`,m,g,k),deleteBrandAsset:(u,p,m)=>l("DELETE",`/businesses/${u}/${p}`,void 0,m),publishBusiness:(u,p,m)=>l("POST",`/businesses/${u}/publish`,p&&Object.keys(p).length>0?p:void 0,m),migratePlan:(u,p,m,g)=>l("POST",`/businesses/${u}/plans/${encodeURIComponent(p)}/migration-batches`,m,g),getBusiness:(u,p)=>l("GET",ue(`/businesses/${u}`,{env:p?.env})),getDeployments:u=>l("GET",`/businesses/${u}/deployments`),listApplyTimeline:(u,p)=>l("GET",ue(`/businesses/${u}/apply-timeline`,{env:p?.env})),proposeConsumerChangeSet:(u,p,m,g,k)=>l("POST",ue(`/businesses/${u}/consumers/${encodeURIComponent(p)}/change-sets`,{env:g?.env}),m,k),listConsumerChangeSets:(u,p,m)=>l("GET",ue(`/businesses/${u}/consumers/${encodeURIComponent(p)}/change-sets`,{env:m?.env,status:m?.status,cursor:m?.cursor,limit:m?.limit!==void 0?String(m.limit):void 0})),getConsumerChangeSet:(u,p,m,g)=>l("GET",ue(`/businesses/${u}/consumers/${encodeURIComponent(p)}/change-sets/${encodeURIComponent(m)}`,{env:g?.env})),previewConsumerChangeSet:(u,p,m,g)=>l("POST",ue(`/businesses/${u}/consumers/${encodeURIComponent(p)}/change-sets/${encodeURIComponent(m)}/preview`,{env:g?.env})),compileManifest:(u,p,m)=>l("POST",`/businesses/${u}/manifest/compile`,{ir:p,...m?.env?{env:m.env}:{}}),previewPlanRelease:(u,p,m)=>l("POST",`/businesses/${u}/plans/release-preview`,{ir:p,...m?.env?{env:m.env}:{}}),listEnvironments:u=>l("GET",`/businesses/${u}/environments`),createEnvironment:(u,p,m)=>l("POST",`/businesses/${u}/environments`,p,m),deleteEnvironment:(u,p)=>l("DELETE",`/businesses/${u}/environments/${encodeURIComponent(p)}`),deleteBusiness:(u,p)=>l("DELETE",`/businesses/${u}`,p?.deleteGitHubRepo?{deleteGitHubRepo:!0}:void 0),builderListConsumers:(u,p)=>l("GET",ue(`/businesses/${u}/consumers`,{env:p?.env})),builderBlockConsumer:(u,p)=>l("POST",`/businesses/${u}/consumers/${encodeURIComponent(p)}/block`),builderRemoveConsumer:(u,p)=>l("POST",`/businesses/${u}/consumers/${encodeURIComponent(p)}/remove`),builderAssignConsumerMemberRoles:(u,p,m,g)=>l("POST",`/businesses/${u}/consumers/${encodeURIComponent(p)}/members/${encodeURIComponent(m)}/roles`,{roles:g}),listPromoCodes:u=>l("GET",`/businesses/${u}/promo-codes`),createPromoCode:(u,p)=>l("POST",`/businesses/${u}/promo-codes`,p),updatePromoCode:(u,p,m)=>l("PATCH",`/businesses/${u}/promo-codes/${p}`,m),managementListPlans:u=>l("GET",`/management/businesses/${u}/plans`),managementGetUsage:u=>l("GET",`/management/businesses/${u}/usage`),managementListMakerTokens:()=>l("GET","/maker-tokens"),managementCreateMakerToken:(u,p)=>l("POST","/maker-tokens",u,p),managementRevokeMakerToken:u=>l("DELETE",`/maker-tokens/${u}`),managementRotateMakerToken:(u,p,m)=>l("POST",`/maker-tokens/${u}/rotate`,p,m),managementHardDeleteMakerToken:u=>l("DELETE",`/maker-tokens/${u}/hard`),managementListWebhooks:(u,p)=>l("GET",ue(`/management/businesses/${u}/webhooks`,{limit:p?.limit})),managementCreateWebhook:(u,p,m)=>l("POST",`/management/businesses/${u}/webhooks`,p,m),managementUpdateWebhook:(u,p,m,g)=>l("PATCH",`/management/businesses/${u}/webhooks/${p}`,m,g),managementDeleteWebhook:(u,p)=>l("DELETE",`/management/businesses/${u}/webhooks/${p}`),managementTestWebhook:(u,p)=>l("POST",`/management/businesses/${u}/webhooks/${p}/test`),managementListWebhookDeliveries:(u,p,m)=>l("GET",ue(`/management/businesses/${u}/webhooks/${p}/deliveries`,{limit:m?.limit})),builderListBackends:u=>l("GET",`/businesses/${u}/backends`),builderCreateBackend:(u,p,m)=>l("POST",`/businesses/${u}/backends`,p,m),builderBindBackend:(u,p,m,g)=>l("PATCH",`/businesses/${u}/backends/${encodeURIComponent(p)}`,m,g),builderDeleteBackend:(u,p)=>l("DELETE",`/businesses/${u}/backends/${p}`),builderListRuntimeTokens:u=>l("GET",`/businesses/${u}/runtime-tokens`),builderCreateRuntimeToken:(u,p,m)=>l("POST",`/businesses/${u}/runtime-tokens`,p,m),builderRotateRuntimeToken:(u,p,m)=>l("POST",`/businesses/${u}/runtime-tokens/${p}/rotate`,void 0,m),builderRevokeRuntimeToken:(u,p)=>l("DELETE",`/businesses/${u}/runtime-tokens/${p}`),builderFrontendDeploy:(u,p,m)=>l("POST",`/businesses/${u}/frontend/deploy`,p,m),builderFrontendStatus:(u,p)=>l("GET",`/businesses/${u}/frontend/status${p?`?environmentId=${encodeURIComponent(p)}`:""}`),builderFrontendReleases:(u,p)=>l("GET",`/businesses/${u}/frontend/releases${p?`?environmentId=${encodeURIComponent(p)}`:""}`),builderFrontendRollback:(u,p,m)=>l("POST",`/businesses/${u}/frontend/rollback`,p,m),builderListBulletin:(u,p)=>l("GET",ue(`/businesses/${u}/bulletin`,{kind:p?.kind,status:p?.status,cursor:p?.cursor,limit:p?.limit})),builderGetBulletinPost:(u,p)=>l("GET",`/businesses/${u}/bulletin/${encodeURIComponent(p)}`),builderSetBulletinStatus:(u,p,m)=>l("PATCH",`/businesses/${u}/bulletin/${encodeURIComponent(p)}`,{status:m}),builderListAgents:u=>l("GET",`/businesses/${u}/agents`),builderAgentStatus:(u,p)=>l("GET",`/businesses/${u}/agents/${encodeURIComponent(p)}`),builderAgentRunDetail:(u,p,m)=>l("GET",`/businesses/${u}/agents/${encodeURIComponent(p)}/runs/${encodeURIComponent(m)}`),builderConfigureAgent:(u,p,m,g)=>l("PUT",`/businesses/${u}/agents/${encodeURIComponent(p)}`,m,g),builderBusinessVariables:async(u,p)=>(await l("GET",ue(`/businesses/${u}/variables`,{environmentId:p}))).variables,builderSetBusinessVariable:async(u,p,m,g)=>(await l("PUT",`/businesses/${u}/variables/${encodeURIComponent(p)}`,m,g)).operation,builderRevokeBusinessVariable:async(u,p,m,g)=>(await l("POST",`/businesses/${u}/variables/${encodeURIComponent(p)}/revoke`,{environmentId:m,confirmation:"REVOKE"},g)).operation,builderDeleteBusinessVariable:async(u,p,m,g)=>(await l("DELETE",`/businesses/${u}/variables/${encodeURIComponent(p)}`,{environmentId:m,confirmation:"DELETE"},g)).operation,builderGetBusinessVariableOperation:async(u,p)=>(await l("GET",`/businesses/${u}/variables/operations/${encodeURIComponent(p)}`)).operation,builderGitHubStatus:()=>l("GET","/builder/git/github/status"),businessStripeStatus:u=>l("GET",`/businesses/${u}/stripe/status`),issuePersonaBootstrapKey:async(u,p,m)=>{let g=await fetch(`${t.apiUrl}/portal/businesses/${u}/environments/${p}/test/bootstrap-key`,{method:"POST",headers:{Authorization:`Bearer ${t.token}`,"Content-Type":"application/json",[pt]:mt},body:JSON.stringify(m??{})});if(!g.ok){let E=(await g.json().catch(()=>null))?.error,S=typeof E=="string"?{message:E}:E;throw new b(S?.message??g.statusText,g.status,{code:S?.code,details:S?.details})}return g.json()},listPersonas:async(u,p)=>{let m=await fetch(`${t.apiUrl}/portal/businesses/${u}/environments/${p}/test/personas`,{method:"GET",headers:{Authorization:`Bearer ${t.token}`,[pt]:mt}});if(!m.ok){let k=(await m.json().catch(()=>null))?.error,E=typeof k=="string"?{message:k}:k;throw new b(E?.message??m.statusText,m.status,{code:E?.code,details:E?.details})}return m.json()},revokePersona:async(u,p,m)=>{let g=await fetch(`${t.apiUrl}/portal/businesses/${u}/environments/${p}/test/personas/${m}`,{method:"DELETE",headers:{Authorization:`Bearer ${t.token}`,[pt]:mt}});if(!g.ok){let E=(await g.json().catch(()=>null))?.error,S=typeof E=="string"?{message:E}:E;throw new b(S?.message??g.statusText,g.status,{code:S?.code,details:S?.details})}return g.json()},getBusinessConfig:(u,p)=>l("GET",ue(`/businesses/${u}/config`,{format:"json",env:p?.env,state:p?.state})),updateBusinessConfigDraft:(u,p,m)=>l("PATCH",`/businesses/${u}/config/draft`,{spec:p,env:m?.env,branch:m?.branch,source:m?.source,baseDraftHash:m?.baseDraftHash})}}import{existsSync as Ar,mkdirSync as Zy,readFileSync as wm,writeFileSync as $m}from"node:fs";import{homedir as Ky}from"node:os";import{join as ys}from"node:path";var Sm="https://core.farthershore.com";var Cr=ys(Ky(),".farthershore"),Em=ys(Cr,"config.json"),bn=ys(Cr,"credentials.json");function Om(t){Ar(t)||Zy(t,{recursive:!0,mode:448})}var _s={apiUrl:Sm};function Tm(){if(Om(Cr),!Ar(Em))return _s;try{let t=JSON.parse(wm(Em,"utf-8"));return{..._s,...t}}catch{return _s}}function Pr(){if(!Ar(bn))return null;try{return JSON.parse(wm(bn,"utf-8"))}catch{return null}}function Rm(t){Om(Cr),$m(bn,JSON.stringify(t,null,2)+`
29
- `,{mode:384})}function Am(){Ar(bn)&&$m(bn,"{}")}function Cm(t){if(t)return t;let e=process.env.FARTHERSHORE_TOKEN;if(e)return e;let r=Pr();if(r?.token)return r.token;throw new b("Not authenticated. Run `farthershore auth login` or set FARTHERSHORE_TOKEN environment variable.")}import{createInterface as Tw}from"node:readline";var Pm=(t=0)=>e=>`\x1B[${e+t}m`,Nm=(t=0)=>e=>`\x1B[${38+t};5;${e}m`,Dm=(t=0)=>(e,r,i)=>`\x1B[${38+t};2;${e};${r};${i}m`,Z={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],gray:[90,39],grey:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}},XR=Object.keys(Z.modifier),Gy=Object.keys(Z.color),Wy=Object.keys(Z.bgColor),QR=[...Gy,...Wy];function qy(){let t=new Map;for(let[e,r]of Object.entries(Z)){for(let[i,n]of Object.entries(r))Z[i]={open:`\x1B[${n[0]}m`,close:`\x1B[${n[1]}m`},r[i]=Z[i],t.set(n[0],n[1]);Object.defineProperty(Z,e,{value:r,enumerable:!1})}return Object.defineProperty(Z,"codes",{value:t,enumerable:!1}),Z.color.close="\x1B[39m",Z.bgColor.close="\x1B[49m",Z.color.ansi=Pm(),Z.color.ansi256=Nm(),Z.color.ansi16m=Dm(),Z.bgColor.ansi=Pm(10),Z.bgColor.ansi256=Nm(10),Z.bgColor.ansi16m=Dm(10),Object.defineProperties(Z,{rgbToAnsi256:{value(e,r,i){return e===r&&r===i?e<8?16:e>248?231:Math.round((e-8)/247*24)+232:16+36*Math.round(e/255*5)+6*Math.round(r/255*5)+Math.round(i/255*5)},enumerable:!1},hexToRgb:{value(e){let r=/[a-f\d]{6}|[a-f\d]{3}/i.exec(e.toString(16));if(!r)return[0,0,0];let[i]=r;i.length===3&&(i=[...i].map(o=>o+o).join(""));let n=Number.parseInt(i,16);return[n>>16&255,n>>8&255,n&255]},enumerable:!1},hexToAnsi256:{value:e=>Z.rgbToAnsi256(...Z.hexToRgb(e)),enumerable:!1},ansi256ToAnsi:{value(e){if(e<8)return 30+e;if(e<16)return 90+(e-8);let r,i,n;if(e>=232)r=((e-232)*10+8)/255,i=r,n=r;else{e-=16;let c=e%36;r=Math.floor(e/36)/5,i=Math.floor(c/6)/5,n=c%6/5}let o=Math.max(r,i,n)*2;if(o===0)return 30;let a=30+(Math.round(n)<<2|Math.round(i)<<1|Math.round(r));return o===2&&(a+=60),a},enumerable:!1},rgbToAnsi:{value:(e,r,i)=>Z.ansi256ToAnsi(Z.rgbToAnsi256(e,r,i)),enumerable:!1},hexToAnsi:{value:e=>Z.ansi256ToAnsi(Z.hexToAnsi256(e)),enumerable:!1}}),Z}var Jy=qy(),be=Jy;import ks from"node:process";import Yy from"node:os";import Um from"node:tty";function fe(t,e=globalThis.Deno?globalThis.Deno.args:ks.argv){let r=t.startsWith("-")?"":t.length===1?"-":"--",i=e.indexOf(r+t),n=e.indexOf("--");return i!==-1&&(n===-1||i<n)}var{env:K}=ks,Nr;fe("no-color")||fe("no-colors")||fe("color=false")||fe("color=never")?Nr=0:(fe("color")||fe("colors")||fe("color=true")||fe("color=always"))&&(Nr=1);function Xy(){if("FORCE_COLOR"in K)return K.FORCE_COLOR==="true"?1:K.FORCE_COLOR==="false"?0:K.FORCE_COLOR.length===0?1:Math.min(Number.parseInt(K.FORCE_COLOR,10),3)}function Qy(t){return t===0?!1:{level:t,hasBasic:!0,has256:t>=2,has16m:t>=3}}function ek(t,{streamIsTTY:e,sniffFlags:r=!0}={}){let i=Xy();i!==void 0&&(Nr=i);let n=r?Nr:i;if(n===0)return 0;if(r){if(fe("color=16m")||fe("color=full")||fe("color=truecolor"))return 3;if(fe("color=256"))return 2}if("TF_BUILD"in K&&"AGENT_NAME"in K)return 1;if(t&&!e&&n===void 0)return 0;let o=n||0;if(K.TERM==="dumb")return o;if(ks.platform==="win32"){let a=Yy.release().split(".");return Number(a[0])>=10&&Number(a[2])>=10586?Number(a[2])>=14931?3:2:1}if("CI"in K)return["GITHUB_ACTIONS","GITEA_ACTIONS","CIRCLECI"].some(a=>a in K)?3:["TRAVIS","APPVEYOR","GITLAB_CI","BUILDKITE","DRONE"].some(a=>a in K)||K.CI_NAME==="codeship"?1:o;if("TEAMCITY_VERSION"in K)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(K.TEAMCITY_VERSION)?1:0;if(K.COLORTERM==="truecolor"||K.TERM==="xterm-kitty"||K.TERM==="xterm-ghostty"||K.TERM==="wezterm")return 3;if("TERM_PROGRAM"in K){let a=Number.parseInt((K.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(K.TERM_PROGRAM){case"iTerm.app":return a>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(K.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(K.TERM)||"COLORTERM"in K?1:o}function zm(t,e={}){let r=ek(t,{streamIsTTY:t&&t.isTTY,...e});return Qy(r)}var tk={stdout:zm({isTTY:Um.isatty(1)}),stderr:zm({isTTY:Um.isatty(2)})},jm=tk;function Lm(t,e,r){let i=t.indexOf(e);if(i===-1)return t;let n=e.length,o=0,a="";do a+=t.slice(o,i)+e+r,o=i+n,i=t.indexOf(e,o);while(i!==-1);return a+=t.slice(o),a}function Mm(t,e,r,i){let n=0,o="";do{let a=t[i-1]==="\r";o+=t.slice(n,a?i-1:i)+e+(a?`\r
28
+ `)}),this}_outputHelpIfRequested(e){let r=this._getHelpOption();r&&e.find(n=>r.is(n))&&(this.outputHelp(),this._exit(0,"commander.helpDisplayed","(outputHelp)"))}};function Wm(t){return t.map(e=>{if(!e.startsWith("--inspect"))return e;let r,i="127.0.0.1",n="9229",o;return(o=e.match(/^(--inspect(-brk)?)$/))!==null?r=o[1]:(o=e.match(/^(--inspect(-brk|-port)?)=([^:]+)$/))!==null?(r=o[1],/^\d+$/.test(o[3])?n=o[3]:i=o[3]):(o=e.match(/^(--inspect(-brk|-port)?)=([^:]+):(\d+)$/))!==null&&(r=o[1],i=o[3],n=o[4]),r&&n!=="0"?`${r}=${i}:${parseInt(n)+1}`:e})}function Vs(){if(z.env.NO_COLOR||z.env.FORCE_COLOR==="0"||z.env.FORCE_COLOR==="false")return!1;if(z.env.FORCE_COLOR||z.env.CLICOLOR_FORCE!==void 0)return!0}Ks.Command=Hs;Ks.useColor=Vs});var Qm=at(he=>{var{Argument:Jm}=Zr(),{Command:Gs}=qm(),{CommanderError:Wk,InvalidArgumentError:Ym}=An(),{Help:qk}=Us(),{Option:Xm}=Ms();he.program=new Gs;he.createCommand=t=>new Gs(t);he.createOption=(t,e)=>new Xm(t,e);he.createArgument=(t,e)=>new Jm(t,e);he.Command=Gs;he.Option=Xm;he.Argument=Jm;he.Help=qk;he.CommanderError=Wk;he.InvalidArgumentError=Ym;he.InvalidOptionArgumentError=Ym});var ef=Nk(Qm(),1),{program:$C,createCommand:OC,createArgument:TC,createOption:AC,CommanderError:RC,InvalidArgumentError:CC,InvalidOptionArgumentError:PC,Command:tf,Argument:NC,Option:DC,Help:UC}=ef.default;import{readFile as uC}from"node:fs/promises";import{fileURLToPath as dC}from"node:url";import{dirname as pC,join as mC}from"node:path";var b=class extends Error{constructor(r,i,n){super(r);this.status=i;this.name="CliError",this.code=n?.code,this.details=n?.details,this.param=n?.param}status;code;details;param};var xt="x-fs-surface",It="cli",Jk="management";function _(t){return encodeURIComponent(t)}function le(t,e){let r=new URLSearchParams;for(let[n,o]of Object.entries(e))o&&r.set(n,o);let i=r.toString();return i?`${t}?${i}`:t}function nf(t){let e=t.includes("?")?"&":"?";return`${t}${e}dry_run=true`}var Yk=new Set([429,500,502,503,504]),Xk=3,Qk=3e4,rf=200,ex=4e3,tx=t=>new Promise(e=>setTimeout(e,t));function of(t,e){if(e){let i=Number(e);if(Number.isFinite(i)&&i>=0)return Math.min(i*1e3,1e4)}return Math.min(rf*2**(t-1),ex)+Math.floor(Math.random()*rf)}function sf(t,e){let r=t.toUpperCase();return r==="GET"||r==="HEAD"?!0:"Idempotency-Key"in e}function af(t){let e=t.retry?.attempts??Xk,r=t.retry?.sleep??tx;async function i(u,p,m){let f=m?e:1,v;for(let w=1;w<=f;w++){let E=new AbortController,U=setTimeout(()=>E.abort(),Qk);try{let H=await fetch(u,{...p,signal:E.signal});if(m&&w<f&&Yk.has(H.status)){let V=H.headers?.get?.("retry-after")??null;await r(of(w,V));continue}return H}catch(H){if(v=H,m&&w<f){await r(of(w,null));continue}throw H}finally{clearTimeout(U)}}throw v}let n=null;async function o(){let u=await fetch(`${t.apiUrl}/auth/cli/exchange`,{method:"POST",headers:{Authorization:`Bearer ${t.token}`,"Content-Type":"application/json",[xt]:It}});if(!u.ok){let p=await u.json().catch(()=>null),m=p?.error,f=typeof m=="string"?{message:m}:m;throw new b(f?.message??u.statusText,u.status,{code:f?.code,details:f?.details??nx(p)})}return n=await u.json(),n}function a(u){return u.split("/",3)[1]===Jk}async function c(u){if(!t.token.startsWith("mk_")||a(u))return t.token;let p=n?Date.parse(n.expiresAt):0;return(!n||p-Date.now()<6e4)&&await o(),n.accessToken}async function l(u,p,m,f){let v=await c(p),w=f?.dryRun?nf(p):p,E={Authorization:`Bearer ${v}`,"Content-Type":"application/json",[xt]:It};f?.idempotencyKey&&(E["Idempotency-Key"]=f.idempotencyKey);let U=await i(`${t.apiUrl}${w}`,{method:u,headers:E,body:m?JSON.stringify(m):void 0},f?.retryOnTransient===!1?!1:sf(u,E));if(!U.ok){let V=(await U.json().catch(()=>null))?.error,D=typeof V=="string"?{message:V}:V;throw new b(D?.message??U.statusText,U.status,{code:D?.code,details:D?.details})}if(U.status!==204)return U.json()}async function d(u,p,m,f,v){let w=await c(p),E=v?.dryRun?nf(p):p,U={Authorization:`Bearer ${w}`,"Content-Type":f,[xt]:It};v?.idempotencyKey&&(U["Idempotency-Key"]=v.idempotencyKey);let H=await i(`${t.apiUrl}${E}`,{method:u,headers:U,body:m},v?.retryOnTransient===!1?!1:sf(u,U));if(!H.ok){let D=(await H.json().catch(()=>null))?.error,q=typeof D=="string"?{message:D}:D;throw new b(q?.message??H.statusText,H.status,{code:q?.code,details:q?.details})}if(H.status!==204)return H.json()}return{exchangeCliToken:o,authWhoami:async()=>{if(t.token.startsWith("mk_")){let p=await l("GET","/management/whoami");return{kind:"maker",tokenId:p.tokenId,organizationId:p.organizationId,businessId:p.businessId,scopes:p.scopes}}return{kind:"builder",...await l("POST","/builder/context/bootstrap")}},bootstrap:()=>l("POST","/builder/context/bootstrap"),listBusinesses:u=>l("GET",le("/businesses",{limit:u?.limit!==void 0?String(u.limit):void 0,offset:u?.offset!==void 0?String(u.offset):void 0})),initBusiness:(u,p)=>l("POST","/businesses/init",u,p),updateBusiness:(u,p,m,f)=>l("PATCH",le(`/businesses/${_(u)}`,{env:m?.env}),p,f),uploadBrandAsset:(u,p,m,f,v)=>d("PUT",`/businesses/${_(u)}/${_(p)}`,m,f,v),deleteBrandAsset:(u,p,m)=>l("DELETE",`/businesses/${_(u)}/${_(p)}`,void 0,m),publishBusiness:(u,p,m)=>l("POST",`/businesses/${_(u)}/publish`,p&&Object.keys(p).length>0?p:void 0,m),migratePlan:(u,p,m,f)=>l("POST",`/businesses/${_(u)}/plans/${_(p)}/migration-batches`,m,f),getBusiness:(u,p)=>l("GET",le(`/businesses/${_(u)}`,{env:p?.env})),getDeployments:u=>l("GET",`/businesses/${_(u)}/deployments`),listApplyTimeline:(u,p)=>l("GET",le(`/businesses/${_(u)}/apply-timeline`,{env:p?.env})),proposeConsumerChangeSet:(u,p,m,f,v)=>l("POST",le(`/businesses/${_(u)}/consumers/${_(p)}/change-sets`,{env:f?.env}),m,v),listConsumerChangeSets:(u,p,m)=>l("GET",le(`/businesses/${_(u)}/consumers/${_(p)}/change-sets`,{env:m?.env,status:m?.status,cursor:m?.cursor,limit:m?.limit!==void 0?String(m.limit):void 0})),getConsumerChangeSet:(u,p,m,f)=>l("GET",le(`/businesses/${_(u)}/consumers/${_(p)}/change-sets/${_(m)}`,{env:f?.env})),previewConsumerChangeSet:(u,p,m,f)=>l("POST",le(`/businesses/${_(u)}/consumers/${_(p)}/change-sets/${_(m)}/preview`,{env:f?.env})),compileManifest:(u,p,m)=>l("POST",`/businesses/${_(u)}/manifest/compile`,{ir:p,...m?.env?{env:m.env}:{}}),previewPlanRelease:(u,p,m)=>l("POST",`/businesses/${_(u)}/plans/release-preview`,{ir:p,...m?.env?{env:m.env}:{}}),listEnvironments:u=>l("GET",`/businesses/${_(u)}/environments`),createEnvironment:(u,p,m)=>l("POST",`/businesses/${_(u)}/environments`,p,m),deleteEnvironment:(u,p)=>l("DELETE",`/businesses/${_(u)}/environments/${_(p)}`),deleteBusiness:(u,p)=>l("DELETE",`/businesses/${_(u)}`,p?.deleteGitHubRepo?{deleteGitHubRepo:!0}:void 0),builderListConsumers:(u,p)=>l("GET",le(`/businesses/${_(u)}/consumers`,{env:p?.env})),builderBlockConsumer:(u,p)=>l("POST",`/businesses/${_(u)}/consumers/${_(p)}/block`),builderRemoveConsumer:(u,p)=>l("POST",`/businesses/${_(u)}/consumers/${_(p)}/remove`),builderAssignConsumerMemberRoles:(u,p,m,f)=>l("POST",`/businesses/${_(u)}/consumers/${_(p)}/members/${_(m)}/roles`,{roles:f}),listPromoCodes:u=>l("GET",`/businesses/${_(u)}/promo-codes`),createPromoCode:(u,p)=>l("POST",`/businesses/${_(u)}/promo-codes`,p),updatePromoCode:(u,p,m)=>l("PATCH",`/businesses/${_(u)}/promo-codes/${_(p)}`,m),managementListPlans:u=>l("GET",`/management/businesses/${_(u)}/plans`),managementGetUsage:u=>l("GET",`/management/businesses/${_(u)}/usage`),analyticsQuery:(u,p)=>l("POST",`/businesses/${_(u)}/analytics/query`,p),managementListMakerTokens:()=>l("GET","/maker-tokens"),managementCreateMakerToken:(u,p)=>l("POST","/maker-tokens",u,p),managementRevokeMakerToken:u=>l("DELETE",`/maker-tokens/${_(u)}`),managementRotateMakerToken:(u,p,m)=>l("POST",`/maker-tokens/${_(u)}/rotate`,p,m),managementHardDeleteMakerToken:u=>l("DELETE",`/maker-tokens/${_(u)}/hard`),managementListWebhooks:(u,p)=>l("GET",le(`/management/businesses/${_(u)}/webhooks`,{limit:p?.limit})),managementCreateWebhook:(u,p,m)=>l("POST",`/management/businesses/${_(u)}/webhooks`,p,m),managementUpdateWebhook:(u,p,m,f)=>l("PATCH",`/management/businesses/${_(u)}/webhooks/${_(p)}`,m,f),managementDeleteWebhook:(u,p)=>l("DELETE",`/management/businesses/${_(u)}/webhooks/${_(p)}`),managementTestWebhook:(u,p)=>l("POST",`/management/businesses/${_(u)}/webhooks/${_(p)}/test`),managementListWebhookDeliveries:(u,p,m)=>l("GET",le(`/management/businesses/${_(u)}/webhooks/${_(p)}/deliveries`,{limit:m?.limit})),builderListBackends:u=>l("GET",`/businesses/${_(u)}/backends`),builderCreateBackend:(u,p,m)=>l("POST",`/businesses/${_(u)}/backends`,p,m),builderBindBackend:(u,p,m,f)=>l("PATCH",`/businesses/${_(u)}/backends/${_(p)}`,m,f),builderDeleteBackend:(u,p)=>l("DELETE",`/businesses/${_(u)}/backends/${_(p)}`),builderListRuntimeTokens:u=>l("GET",`/businesses/${_(u)}/runtime-tokens`),builderCreateRuntimeToken:(u,p,m)=>l("POST",`/businesses/${_(u)}/runtime-tokens`,p,m),builderRotateRuntimeToken:(u,p,m)=>l("POST",`/businesses/${_(u)}/runtime-tokens/${_(p)}/rotate`,void 0,m),builderRevokeRuntimeToken:(u,p)=>l("DELETE",`/businesses/${_(u)}/runtime-tokens/${_(p)}`),builderFrontendStatus:(u,p)=>l("GET",`/businesses/${_(u)}/frontend/status${p?`?environmentId=${encodeURIComponent(p)}`:""}`),builderFrontendReleases:(u,p)=>l("GET",`/businesses/${_(u)}/frontend/releases${p?`?environmentId=${encodeURIComponent(p)}`:""}`),builderFrontendRollback:(u,p,m)=>l("POST",`/businesses/${_(u)}/frontend/rollback`,p,m),builderListBulletin:(u,p)=>l("GET",le(`/businesses/${_(u)}/bulletin`,{kind:p?.kind,status:p?.status,cursor:p?.cursor,limit:p?.limit})),builderGetBulletinPost:(u,p)=>l("GET",`/businesses/${_(u)}/bulletin/${_(p)}`),builderSetBulletinStatus:(u,p,m)=>l("PATCH",`/businesses/${_(u)}/bulletin/${_(p)}`,{status:m}),builderListAgents:u=>l("GET",`/businesses/${_(u)}/agents`),builderAgentStatus:(u,p)=>l("GET",`/businesses/${_(u)}/agents/${_(p)}`),builderAgentRunDetail:(u,p,m)=>l("GET",`/businesses/${_(u)}/agents/${_(p)}/runs/${_(m)}`),builderConfigureAgent:(u,p,m,f)=>l("PUT",`/businesses/${_(u)}/agents/${_(p)}`,m,f),builderBusinessVariables:async(u,p)=>(await l("GET",le(`/businesses/${_(u)}/variables`,{environmentId:p}))).variables,builderSetBusinessVariable:async(u,p,m,f)=>(await l("PUT",`/businesses/${_(u)}/variables/${_(p)}`,m,f)).operation,builderRevokeBusinessVariable:async(u,p,m,f)=>(await l("POST",`/businesses/${_(u)}/variables/${_(p)}/revoke`,{environmentId:m,confirmation:"REVOKE"},f)).operation,builderDeleteBusinessVariable:async(u,p,m,f)=>(await l("DELETE",`/businesses/${_(u)}/variables/${_(p)}`,{environmentId:m,confirmation:"DELETE"},f)).operation,builderGetBusinessVariableOperation:async(u,p)=>(await l("GET",`/businesses/${_(u)}/variables/operations/${_(p)}`)).operation,builderGitHubStatus:()=>l("GET","/builder/git/github/status"),businessStripeStatus:u=>l("GET",`/businesses/${_(u)}/stripe/status`),issuePersonaBootstrapKey:async(u,p,m)=>{let f=await fetch(`${t.apiUrl}/portal/businesses/${_(u)}/environments/${_(p)}/test/bootstrap-key`,{method:"POST",headers:{Authorization:`Bearer ${t.token}`,"Content-Type":"application/json",[xt]:It},body:JSON.stringify(m??{})});if(!f.ok){let w=(await f.json().catch(()=>null))?.error,E=typeof w=="string"?{message:w}:w;throw new b(E?.message??f.statusText,f.status,{code:E?.code,details:E?.details})}return f.json()},listPersonas:async(u,p)=>{let m=await fetch(`${t.apiUrl}/portal/businesses/${_(u)}/environments/${_(p)}/test/personas`,{method:"GET",headers:{Authorization:`Bearer ${t.token}`,[xt]:It}});if(!m.ok){let v=(await m.json().catch(()=>null))?.error,w=typeof v=="string"?{message:v}:v;throw new b(w?.message??m.statusText,m.status,{code:w?.code,details:w?.details})}return m.json()},revokePersona:async(u,p,m)=>{let f=await fetch(`${t.apiUrl}/portal/businesses/${_(u)}/environments/${_(p)}/test/personas/${_(m)}`,{method:"DELETE",headers:{Authorization:`Bearer ${t.token}`,[xt]:It}});if(!f.ok){let w=(await f.json().catch(()=>null))?.error,E=typeof w=="string"?{message:w}:w;throw new b(E?.message??f.statusText,f.status,{code:E?.code,details:E?.details})}return f.json()},getBusinessConfig:(u,p)=>l("GET",le(`/businesses/${_(u)}/config`,{format:"json",env:p?.env,state:p?.state})),updateBusinessConfigDraft:(u,p,m)=>l("PATCH",`/businesses/${_(u)}/config/draft`,{spec:p,env:m?.env,branch:m?.branch,source:m?.source,baseDraftHash:m?.baseDraftHash})}}function nx(t){if(!t||typeof t!="object")return;let e=t,r=Array.isArray(e.errors)?e.errors:void 0,i=Array.isArray(e.warnings)?e.warnings:void 0;if(!(!r?.length&&!i?.length))return{...r?.length?{errors:r}:{},...i?.length?{warnings:i}:{}}}import{existsSync as qr,mkdirSync as rx,readFileSync as lf,writeFileSync as qs}from"node:fs";import{homedir as ix}from"node:os";import{join as Jr}from"node:path";var cf="https://core.farthershore.com";var Cn=Jr(ix(),".farthershore"),Ws=Jr(Cn,"config.json"),Rn=Jr(Cn,"credentials.json");function Js(t){qr(t)||rx(t,{recursive:!0,mode:448})}var Zs={apiUrl:cf};function Yr(){if(Js(Cn),!qr(Ws))return Zs;try{let t=JSON.parse(lf(Ws,"utf-8"));return{...Zs,...t}}catch{return Zs}}function Xr(){if(!qr(Rn))return null;try{return JSON.parse(lf(Rn,"utf-8"))}catch{return null}}function uf(t){Js(Cn),qs(Rn,JSON.stringify(t,null,2)+`
29
+ `,{mode:384})}function df(){qr(Rn)&&qs(Rn,"{}")}function Ys(){return Yr().links??{}}function pf(t){Js(Cn);let e=Yr();qs(Ws,JSON.stringify({...e,links:t},null,2)+`
30
+ `,{mode:384})}function St(t){let e=Ys(),r=t;for(;;){let i=e[r];if(i)return i;let n=Jr(r,"..");if(n===r)return null;r=n}}function mf(t,e){pf({...Ys(),[t]:e})}function ff(t){let e=Ys();return t in e?(delete e[t],pf(e),!0):!1}function gf(t){if(t)return t;let e=process.env.FARTHERSHORE_TOKEN;if(e)return e;let r=Xr();if(r?.token)return r.token;throw new b("Not authenticated. Run `farthershore auth login` or set FARTHERSHORE_TOKEN environment variable.")}import{createInterface as q$}from"node:readline";var hf=(t=0)=>e=>`\x1B[${e+t}m`,bf=(t=0)=>e=>`\x1B[${38+t};5;${e}m`,vf=(t=0)=>(e,r,i)=>`\x1B[${38+t};2;${e};${r};${i}m`,Z={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],gray:[90,39],grey:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}},JC=Object.keys(Z.modifier),ox=Object.keys(Z.color),sx=Object.keys(Z.bgColor),YC=[...ox,...sx];function ax(){let t=new Map;for(let[e,r]of Object.entries(Z)){for(let[i,n]of Object.entries(r))Z[i]={open:`\x1B[${n[0]}m`,close:`\x1B[${n[1]}m`},r[i]=Z[i],t.set(n[0],n[1]);Object.defineProperty(Z,e,{value:r,enumerable:!1})}return Object.defineProperty(Z,"codes",{value:t,enumerable:!1}),Z.color.close="\x1B[39m",Z.bgColor.close="\x1B[49m",Z.color.ansi=hf(),Z.color.ansi256=bf(),Z.color.ansi16m=vf(),Z.bgColor.ansi=hf(10),Z.bgColor.ansi256=bf(10),Z.bgColor.ansi16m=vf(10),Object.defineProperties(Z,{rgbToAnsi256:{value(e,r,i){return e===r&&r===i?e<8?16:e>248?231:Math.round((e-8)/247*24)+232:16+36*Math.round(e/255*5)+6*Math.round(r/255*5)+Math.round(i/255*5)},enumerable:!1},hexToRgb:{value(e){let r=/[a-f\d]{6}|[a-f\d]{3}/i.exec(e.toString(16));if(!r)return[0,0,0];let[i]=r;i.length===3&&(i=[...i].map(o=>o+o).join(""));let n=Number.parseInt(i,16);return[n>>16&255,n>>8&255,n&255]},enumerable:!1},hexToAnsi256:{value:e=>Z.rgbToAnsi256(...Z.hexToRgb(e)),enumerable:!1},ansi256ToAnsi:{value(e){if(e<8)return 30+e;if(e<16)return 90+(e-8);let r,i,n;if(e>=232)r=((e-232)*10+8)/255,i=r,n=r;else{e-=16;let c=e%36;r=Math.floor(e/36)/5,i=Math.floor(c/6)/5,n=c%6/5}let o=Math.max(r,i,n)*2;if(o===0)return 30;let a=30+(Math.round(n)<<2|Math.round(i)<<1|Math.round(r));return o===2&&(a+=60),a},enumerable:!1},rgbToAnsi:{value:(e,r,i)=>Z.ansi256ToAnsi(Z.rgbToAnsi256(e,r,i)),enumerable:!1},hexToAnsi:{value:e=>Z.ansi256ToAnsi(Z.hexToAnsi256(e)),enumerable:!1}}),Z}var cx=ax(),ke=cx;import Xs from"node:process";import lx from"node:os";import _f from"node:tty";function be(t,e=globalThis.Deno?globalThis.Deno.args:Xs.argv){let r=t.startsWith("-")?"":t.length===1?"-":"--",i=e.indexOf(r+t),n=e.indexOf("--");return i!==-1&&(n===-1||i<n)}var{env:W}=Xs,Qr;be("no-color")||be("no-colors")||be("color=false")||be("color=never")?Qr=0:(be("color")||be("colors")||be("color=true")||be("color=always"))&&(Qr=1);function ux(){if("FORCE_COLOR"in W)return W.FORCE_COLOR==="true"?1:W.FORCE_COLOR==="false"?0:W.FORCE_COLOR.length===0?1:Math.min(Number.parseInt(W.FORCE_COLOR,10),3)}function dx(t){return t===0?!1:{level:t,hasBasic:!0,has256:t>=2,has16m:t>=3}}function px(t,{streamIsTTY:e,sniffFlags:r=!0}={}){let i=ux();i!==void 0&&(Qr=i);let n=r?Qr:i;if(n===0)return 0;if(r){if(be("color=16m")||be("color=full")||be("color=truecolor"))return 3;if(be("color=256"))return 2}if("TF_BUILD"in W&&"AGENT_NAME"in W)return 1;if(t&&!e&&n===void 0)return 0;let o=n||0;if(W.TERM==="dumb")return o;if(Xs.platform==="win32"){let a=lx.release().split(".");return Number(a[0])>=10&&Number(a[2])>=10586?Number(a[2])>=14931?3:2:1}if("CI"in W)return["GITHUB_ACTIONS","GITEA_ACTIONS","CIRCLECI"].some(a=>a in W)?3:["TRAVIS","APPVEYOR","GITLAB_CI","BUILDKITE","DRONE"].some(a=>a in W)||W.CI_NAME==="codeship"?1:o;if("TEAMCITY_VERSION"in W)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(W.TEAMCITY_VERSION)?1:0;if(W.COLORTERM==="truecolor"||W.TERM==="xterm-kitty"||W.TERM==="xterm-ghostty"||W.TERM==="wezterm")return 3;if("TERM_PROGRAM"in W){let a=Number.parseInt((W.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(W.TERM_PROGRAM){case"iTerm.app":return a>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(W.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(W.TERM)||"COLORTERM"in W?1:o}function yf(t,e={}){let r=px(t,{streamIsTTY:t&&t.isTTY,...e});return dx(r)}var mx={stdout:yf({isTTY:_f.isatty(1)}),stderr:yf({isTTY:_f.isatty(2)})},kf=mx;function xf(t,e,r){let i=t.indexOf(e);if(i===-1)return t;let n=e.length,o=0,a="";do a+=t.slice(o,i)+e+r,o=i+n,i=t.indexOf(e,o);while(i!==-1);return a+=t.slice(o),a}function If(t,e,r,i){let n=0,o="";do{let a=t[i-1]==="\r";o+=t.slice(n,a?i-1:i)+e+(a?`\r
30
31
  `:`
31
32
  `)+r,n=i+1,i=t.indexOf(`
32
- `,n)}while(i!==-1);return o+=t.slice(n),o}var{stdout:Fm,stderr:Bm}=jm,xs=Symbol("GENERATOR"),ft=Symbol("STYLER"),vn=Symbol("IS_EMPTY"),Hm=["ansi","ansi","ansi256","ansi16m"],gt=Object.create(null),nk=(t,e={})=>{if(e.level&&!(Number.isInteger(e.level)&&e.level>=0&&e.level<=3))throw new Error("The `level` option should be an integer from 0 to 3");let r=Fm?Fm.level:0;t.level=e.level===void 0?r:e.level};var rk=t=>{let e=(...r)=>r.join(" ");return nk(e,t),Object.setPrototypeOf(e,_n.prototype),e};function _n(t){return rk(t)}Object.setPrototypeOf(_n.prototype,Function.prototype);for(let[t,e]of Object.entries(be))gt[t]={get(){let r=Dr(this,Ss(e.open,e.close,this[ft]),this[vn]);return Object.defineProperty(this,t,{value:r}),r}};gt.visible={get(){let t=Dr(this,this[ft],!0);return Object.defineProperty(this,"visible",{value:t}),t}};var Is=(t,e,r,...i)=>t==="rgb"?e==="ansi16m"?be[r].ansi16m(...i):e==="ansi256"?be[r].ansi256(be.rgbToAnsi256(...i)):be[r].ansi(be.rgbToAnsi(...i)):t==="hex"?Is("rgb",e,r,...be.hexToRgb(...i)):be[r][t](...i),ik=["rgb","hex","ansi256"];for(let t of ik){gt[t]={get(){let{level:r}=this;return function(...i){let n=Ss(Is(t,Hm[r],"color",...i),be.color.close,this[ft]);return Dr(this,n,this[vn])}}};let e="bg"+t[0].toUpperCase()+t.slice(1);gt[e]={get(){let{level:r}=this;return function(...i){let n=Ss(Is(t,Hm[r],"bgColor",...i),be.bgColor.close,this[ft]);return Dr(this,n,this[vn])}}}}var ok=Object.defineProperties(()=>{},{...gt,level:{enumerable:!0,get(){return this[xs].level},set(t){this[xs].level=t}}}),Ss=(t,e,r)=>{let i,n;return r===void 0?(i=t,n=e):(i=r.openAll+t,n=e+r.closeAll),{open:t,close:e,openAll:i,closeAll:n,parent:r}},Dr=(t,e,r)=>{let i=(...n)=>sk(i,n.length===1?""+n[0]:n.join(" "));return Object.setPrototypeOf(i,ok),i[xs]=t,i[ft]=e,i[vn]=r,i},sk=(t,e)=>{if(t.level<=0||!e)return t[vn]?"":e;let r=t[ft];if(r===void 0)return e;let{openAll:i,closeAll:n}=r;if(e.includes("\x1B"))for(;r!==void 0;)e=Lm(e,r.close,r.open),r=r.parent;let o=e.indexOf(`
33
- `);return o!==-1&&(e=Mm(e,n,i,o)),i+e+n};Object.defineProperties(_n.prototype,gt);var ak=_n(),lA=_n({level:Bm?Bm.level:0});var L=ak;var Vm;function Zm(t){Vm=Ur(t)}function te(){return Vm??Ur(void 0)}function yn(){return te()==="json"}function Km(t){yn()||console.log(L.green(`\u2713 ${t}`))}function Es(t){yn()||console.error(L.red(`\u2717 ${t}`))}function De(t){yn()||console.warn(L.yellow(`\u26A0 ${t}`))}function G(t){yn()||console.log(L.dim(t))}function Gm(t){yn()||console.log(L.bold(t))}function kn(){return process.stdout.isTTY===!0}function Ur(t){if(t==="json"||t==="table")return t;if(t!==void 0)throw new b(`Unsupported --format "${t}". Use "json" or "table".`,400,{code:"INVALID_OUTPUT_FORMAT",param:"format"});return kn()?"table":"json"}var s={};Te(s,{$brand:()=>$s,$input:()=>Wc,$output:()=>Gc,NEVER:()=>ws,TimePrecision:()=>Xc,ZodAny:()=>Fu,ZodArray:()=>Zu,ZodBase64:()=>lo,ZodBase64URL:()=>uo,ZodBigInt:()=>Kt,ZodBigIntFormat:()=>fo,ZodBoolean:()=>Zt,ZodCIDRv4:()=>ao,ZodCIDRv6:()=>co,ZodCUID:()=>eo,ZodCUID2:()=>to,ZodCatch:()=>md,ZodCodec:()=>Qn,ZodCustom:()=>er,ZodCustomStringFormat:()=>Ht,ZodDate:()=>Wn,ZodDefault:()=>ad,ZodDiscriminatedUnion:()=>Gu,ZodE164:()=>po,ZodEmail:()=>Yi,ZodEmoji:()=>Xi,ZodEnum:()=>Ft,ZodError:()=>jI,ZodExactOptional:()=>id,ZodFile:()=>nd,ZodFirstPartyTypeKind:()=>wd,ZodFunction:()=>Id,ZodGUID:()=>Hn,ZodIPv4:()=>oo,ZodIPv6:()=>so,ZodISODate:()=>Zi,ZodISODateTime:()=>Vi,ZodISODuration:()=>Gi,ZodISOTime:()=>Ki,ZodIntersection:()=>Wu,ZodIssueCode:()=>MI,ZodJWT:()=>mo,ZodKSUID:()=>io,ZodLazy:()=>yd,ZodLiteral:()=>td,ZodMAC:()=>Nu,ZodMap:()=>Qu,ZodNaN:()=>gd,ZodNanoID:()=>Qi,ZodNever:()=>Hu,ZodNonOptional:()=>yo,ZodNull:()=>Lu,ZodNullable:()=>sd,ZodNumber:()=>Vt,ZodNumberFormat:()=>at,ZodObject:()=>Jn,ZodOptional:()=>_o,ZodPipe:()=>Xn,ZodPrefault:()=>ld,ZodPreprocess:()=>hd,ZodPromise:()=>xd,ZodReadonly:()=>bd,ZodRealError:()=>le,ZodRecord:()=>Mt,ZodSet:()=>ed,ZodString:()=>Bt,ZodStringFormat:()=>F,ZodSuccess:()=>pd,ZodSymbol:()=>zu,ZodTemplateLiteral:()=>_d,ZodTransform:()=>rd,ZodTuple:()=>Ju,ZodType:()=>$,ZodULID:()=>no,ZodURL:()=>Gn,ZodUUID:()=>$e,ZodUndefined:()=>ju,ZodUnion:()=>Yn,ZodUnknown:()=>Bu,ZodVoid:()=>Vu,ZodXID:()=>ro,ZodXor:()=>Ku,_ZodString:()=>Ji,_default:()=>cd,_function:()=>Uh,any:()=>mh,array:()=>qn,base64:()=>Jg,base64url:()=>Yg,bigint:()=>ch,boolean:()=>Uu,catch:()=>fd,check:()=>zh,cidrv4:()=>Wg,cidrv6:()=>qg,clone:()=>re,codec:()=>Ch,coerce:()=>$d,config:()=>q,core:()=>Pe,cuid:()=>Mg,cuid2:()=>Fg,custom:()=>jh,date:()=>gh,decode:()=>$u,decodeAsync:()=>Tu,describe:()=>Lh,discriminatedUnion:()=>kh,e164:()=>Xg,email:()=>Rg,emoji:()=>jg,encode:()=>wu,encodeAsync:()=>Ou,endsWith:()=>Rt,enum:()=>bo,exactOptional:()=>od,file:()=>Oh,flattenError:()=>Tn,float32:()=>ih,float64:()=>oh,formatError:()=>Rn,fromJSONSchema:()=>Kh,function:()=>Uh,getErrorMap:()=>BI,globalRegistry:()=>ee,gt:()=>Ee,gte:()=>oe,guid:()=>Ag,hash:()=>rh,hex:()=>nh,hostname:()=>th,httpUrl:()=>zg,includes:()=>Ot,instanceof:()=>Fh,int:()=>Wi,int32:()=>sh,int64:()=>lh,intersection:()=>qu,invertCodec:()=>Ph,ipv4:()=>Zg,ipv6:()=>Gg,iso:()=>Lt,json:()=>Hh,jwt:()=>Qg,keyof:()=>hh,ksuid:()=>Vg,lazy:()=>kd,length:()=>ot,literal:()=>$h,locales:()=>jn,looseObject:()=>_h,looseRecord:()=>Ih,lowercase:()=>wt,lt:()=>Se,lte:()=>pe,mac:()=>Kg,map:()=>Sh,maxLength:()=>it,maxSize:()=>Be,meta:()=>Mh,mime:()=>At,minLength:()=>Ce,minSize:()=>we,multipleOf:()=>Fe,nan:()=>Ah,nanoid:()=>Lg,nativeEnum:()=>wh,negative:()=>Ni,never:()=>go,nonnegative:()=>Ui,nonoptional:()=>dd,nonpositive:()=>Di,normalize:()=>Ct,null:()=>Mu,nullable:()=>Zn,nullish:()=>Th,number:()=>Du,object:()=>bh,optional:()=>Vn,overwrite:()=>ye,parse:()=>xu,parseAsync:()=>Iu,partialRecord:()=>xh,pipe:()=>qi,positive:()=>Pi,prefault:()=>ud,preprocess:()=>Vh,prettifyError:()=>Ms,promise:()=>Dh,property:()=>zi,readonly:()=>vd,record:()=>Xu,refine:()=>Sd,regex:()=>Et,regexes:()=>de,registry:()=>pi,safeDecode:()=>Au,safeDecodeAsync:()=>Pu,safeEncode:()=>Ru,safeEncodeAsync:()=>Cu,safeParse:()=>Su,safeParseAsync:()=>Eu,set:()=>Eh,setErrorMap:()=>FI,size:()=>rt,slugify:()=>Ut,startsWith:()=>Tt,strictObject:()=>vh,string:()=>Bn,stringFormat:()=>eh,stringbool:()=>Bh,success:()=>Rh,superRefine:()=>Ed,symbol:()=>dh,templateLiteral:()=>Nh,toJSONSchema:()=>Fi,toLowerCase:()=>Nt,toUpperCase:()=>Dt,transform:()=>vo,treeifyError:()=>Ls,trim:()=>Pt,tuple:()=>Yu,uint32:()=>ah,uint64:()=>uh,ulid:()=>Bg,undefined:()=>ph,union:()=>ho,unknown:()=>st,uppercase:()=>$t,url:()=>Ug,util:()=>y,uuid:()=>Cg,uuidv4:()=>Pg,uuidv6:()=>Ng,uuidv7:()=>Dg,void:()=>fh,xid:()=>Hg,xor:()=>yh});var Pe={};Te(Pe,{$ZodAny:()=>gc,$ZodArray:()=>yc,$ZodAsyncError:()=>_e,$ZodBase64:()=>oc,$ZodBase64URL:()=>sc,$ZodBigInt:()=>ii,$ZodBigIntFormat:()=>dc,$ZodBoolean:()=>Nn,$ZodCIDRv4:()=>nc,$ZodCIDRv6:()=>rc,$ZodCUID:()=>Va,$ZodCUID2:()=>Za,$ZodCatch:()=>jc,$ZodCheck:()=>B,$ZodCheckBigIntFormat:()=>ya,$ZodCheckEndsWith:()=>Ca,$ZodCheckGreaterThan:()=>Xr,$ZodCheckIncludes:()=>Ra,$ZodCheckLengthEquals:()=>wa,$ZodCheckLessThan:()=>Yr,$ZodCheckLowerCase:()=>Oa,$ZodCheckMaxLength:()=>Sa,$ZodCheckMaxSize:()=>ka,$ZodCheckMimeType:()=>Na,$ZodCheckMinLength:()=>Ea,$ZodCheckMinSize:()=>xa,$ZodCheckMultipleOf:()=>va,$ZodCheckNumberFormat:()=>_a,$ZodCheckOverwrite:()=>Da,$ZodCheckProperty:()=>Pa,$ZodCheckRegex:()=>$a,$ZodCheckSizeEquals:()=>Ia,$ZodCheckStartsWith:()=>Aa,$ZodCheckStringFormat:()=>It,$ZodCheckUpperCase:()=>Ta,$ZodCodec:()=>Un,$ZodCustom:()=>Kc,$ZodCustomStringFormat:()=>lc,$ZodDate:()=>_c,$ZodDefault:()=>Nc,$ZodDiscriminatedUnion:()=>Ic,$ZodE164:()=>ac,$ZodEmail:()=>Ma,$ZodEmoji:()=>Ba,$ZodEncodeError:()=>Ue,$ZodEnum:()=>Oc,$ZodError:()=>On,$ZodExactOptional:()=>Cc,$ZodFile:()=>Rc,$ZodFunction:()=>Hc,$ZodGUID:()=>ja,$ZodIPv4:()=>Qa,$ZodIPv6:()=>ec,$ZodISODate:()=>Ja,$ZodISODateTime:()=>qa,$ZodISODuration:()=>Xa,$ZodISOTime:()=>Ya,$ZodIntersection:()=>Sc,$ZodJWT:()=>cc,$ZodKSUID:()=>Wa,$ZodLazy:()=>Zc,$ZodLiteral:()=>Tc,$ZodMAC:()=>tc,$ZodMap:()=>wc,$ZodNaN:()=>Lc,$ZodNanoID:()=>Ha,$ZodNever:()=>bc,$ZodNonOptional:()=>Uc,$ZodNull:()=>fc,$ZodNullable:()=>Pc,$ZodNumber:()=>ri,$ZodNumberFormat:()=>uc,$ZodObject:()=>Ef,$ZodObjectJIT:()=>kc,$ZodOptional:()=>si,$ZodPipe:()=>ai,$ZodPrefault:()=>Dc,$ZodPreprocess:()=>Mc,$ZodPromise:()=>Vc,$ZodReadonly:()=>Fc,$ZodRealError:()=>ce,$ZodRecord:()=>Ec,$ZodRegistry:()=>di,$ZodSet:()=>$c,$ZodString:()=>nt,$ZodStringFormat:()=>M,$ZodSuccess:()=>zc,$ZodSymbol:()=>pc,$ZodTemplateLiteral:()=>Bc,$ZodTransform:()=>Ac,$ZodTuple:()=>oi,$ZodType:()=>w,$ZodULID:()=>Ka,$ZodURL:()=>Fa,$ZodUUID:()=>La,$ZodUndefined:()=>mc,$ZodUnion:()=>Dn,$ZodUnknown:()=>hc,$ZodVoid:()=>vc,$ZodXID:()=>Ga,$ZodXor:()=>xc,$brand:()=>$s,$constructor:()=>f,$input:()=>Wc,$output:()=>Gc,Doc:()=>Pn,JSONSchema:()=>$g,JSONSchemaGenerator:()=>Bi,NEVER:()=>ws,TimePrecision:()=>Xc,_any:()=>_l,_array:()=>wl,_base64:()=>Ti,_base64url:()=>Ri,_bigint:()=>pl,_boolean:()=>ul,_catch:()=>RI,_check:()=>wg,_cidrv4:()=>$i,_cidrv6:()=>Oi,_coercedBigint:()=>ml,_coercedBoolean:()=>dl,_coercedDate:()=>Sl,_coercedNumber:()=>il,_coercedString:()=>Jc,_cuid:()=>yi,_cuid2:()=>ki,_custom:()=>Ol,_date:()=>Il,_decode:()=>Br,_decodeAsync:()=>Vr,_default:()=>$I,_discriminatedUnion:()=>gI,_e164:()=>Ai,_email:()=>mi,_emoji:()=>vi,_encode:()=>Fr,_encodeAsync:()=>Hr,_endsWith:()=>Rt,_enum:()=>kI,_file:()=>$l,_float32:()=>sl,_float64:()=>al,_gt:()=>Ee,_gte:()=>oe,_guid:()=>Ln,_includes:()=>Ot,_int:()=>ol,_int32:()=>cl,_int64:()=>fl,_intersection:()=>hI,_ipv4:()=>Ei,_ipv6:()=>wi,_isoDate:()=>el,_isoDateTime:()=>Qc,_isoDuration:()=>nl,_isoTime:()=>tl,_jwt:()=>Ci,_ksuid:()=>Si,_lazy:()=>NI,_length:()=>ot,_literal:()=>II,_lowercase:()=>wt,_lt:()=>Se,_lte:()=>pe,_mac:()=>Yc,_map:()=>_I,_max:()=>pe,_maxLength:()=>it,_maxSize:()=>Be,_mime:()=>At,_min:()=>oe,_minLength:()=>Ce,_minSize:()=>we,_multipleOf:()=>Fe,_nan:()=>El,_nanoid:()=>_i,_nativeEnum:()=>xI,_negative:()=>Ni,_never:()=>kl,_nonnegative:()=>Ui,_nonoptional:()=>OI,_nonpositive:()=>Di,_normalize:()=>Ct,_null:()=>vl,_nullable:()=>wI,_number:()=>rl,_optional:()=>EI,_overwrite:()=>ye,_parse:()=>_t,_parseAsync:()=>yt,_pipe:()=>AI,_positive:()=>Pi,_promise:()=>DI,_property:()=>zi,_readonly:()=>CI,_record:()=>vI,_refine:()=>Tl,_regex:()=>Et,_safeDecode:()=>Kr,_safeDecodeAsync:()=>Wr,_safeEncode:()=>Zr,_safeEncodeAsync:()=>Gr,_safeParse:()=>kt,_safeParseAsync:()=>xt,_set:()=>yI,_size:()=>rt,_slugify:()=>Ut,_startsWith:()=>Tt,_string:()=>qc,_stringFormat:()=>zt,_stringbool:()=>Pl,_success:()=>TI,_superRefine:()=>Rl,_symbol:()=>hl,_templateLiteral:()=>PI,_toLowerCase:()=>Nt,_toUpperCase:()=>Dt,_transform:()=>SI,_trim:()=>Pt,_tuple:()=>bI,_uint32:()=>ll,_uint64:()=>gl,_ulid:()=>xi,_undefined:()=>bl,_union:()=>mI,_unknown:()=>yl,_uppercase:()=>$t,_url:()=>Mn,_uuid:()=>fi,_uuidv4:()=>gi,_uuidv6:()=>hi,_uuidv7:()=>bi,_void:()=>xl,_xid:()=>Ii,_xor:()=>fI,clone:()=>re,config:()=>q,createStandardJSONSchemaMethod:()=>jt,createToJSONSchemaMethod:()=>Nl,decode:()=>Dk,decodeAsync:()=>zk,describe:()=>Al,encode:()=>Nk,encodeAsync:()=>Uk,extractDefs:()=>Ve,finalize:()=>Ze,flattenError:()=>Tn,formatError:()=>Rn,globalConfig:()=>Qe,globalRegistry:()=>ee,initializeContext:()=>He,isValidBase64:()=>ic,isValidBase64URL:()=>kf,isValidJWT:()=>xf,locales:()=>jn,meta:()=>Cl,parse:()=>Lr,parseAsync:()=>Mr,prettifyError:()=>Ms,process:()=>z,regexes:()=>de,registry:()=>pi,safeDecode:()=>Lk,safeDecodeAsync:()=>Fk,safeEncode:()=>jk,safeEncodeAsync:()=>Mk,safeParse:()=>Fs,safeParseAsync:()=>Bs,toDotPath:()=>Qm,toJSONSchema:()=>Fi,treeifyError:()=>Ls,util:()=>y,version:()=>Ua});var Wm,ws=Object.freeze({status:"aborted"});function f(t,e,r){function i(c,l){if(c._zod||Object.defineProperty(c,"_zod",{value:{def:l,constr:a,traits:new Set},enumerable:!1}),c._zod.traits.has(t))return;c._zod.traits.add(t),e(c,l);let d=a.prototype,u=Object.keys(d);for(let p=0;p<u.length;p++){let m=u[p];m in c||(c[m]=d[m].bind(c))}}let n=r?.Parent??Object;class o extends n{}Object.defineProperty(o,"name",{value:t});function a(c){var l;let d=r?.Parent?new o:this;i(d,c),(l=d._zod).deferred??(l.deferred=[]);for(let u of d._zod.deferred)u();return d}return Object.defineProperty(a,"init",{value:i}),Object.defineProperty(a,Symbol.hasInstance,{value:c=>r?.Parent&&c instanceof r.Parent?!0:c?._zod?.traits?.has(t)}),Object.defineProperty(a,"name",{value:t}),a}var $s=Symbol("zod_brand"),_e=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},Ue=class extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name="ZodEncodeError"}};(Wm=globalThis).__zod_globalConfig??(Wm.__zod_globalConfig={});var Qe=globalThis.__zod_globalConfig;function q(t){return t&&Object.assign(Qe,t),Qe}var y={};Te(y,{BIGINT_FORMAT_RANGES:()=>zs,Class:()=>Ts,NUMBER_FORMAT_RANGES:()=>Us,aborted:()=>Me,allowsEval:()=>Cs,assert:()=>pk,assertEqual:()=>ck,assertIs:()=>uk,assertNever:()=>dk,assertNotEqual:()=>lk,assignProp:()=>je,base64ToUint8Array:()=>Jm,base64urlToUint8Array:()=>Tk,cached:()=>bt,captureStackTrace:()=>jr,cleanEnum:()=>Ok,cleanRegex:()=>Sn,clone:()=>re,cloneDef:()=>fk,createTransparentProxy:()=>yk,defineLazy:()=>O,esc:()=>zr,escapeRegex:()=>ge,explicitlyAborted:()=>js,extend:()=>Ik,finalizeIssue:()=>ie,floatSafeRemainder:()=>Rs,getElementAtPath:()=>gk,getEnumValues:()=>In,getLengthableOrigin:()=>$n,getParsedType:()=>_k,getSizableOrigin:()=>wn,hexToUint8Array:()=>Ak,isObject:()=>et,isPlainObject:()=>Le,issue:()=>vt,joinValues:()=>h,jsonStringifyReplacer:()=>ht,merge:()=>Ek,mergeDefs:()=>Ae,normalizeParams:()=>x,nullish:()=>ze,numKeys:()=>vk,objectClone:()=>mk,omit:()=>xk,optionalKeys:()=>Ds,parsedType:()=>_,partial:()=>wk,pick:()=>kk,prefixIssues:()=>ae,primitiveTypes:()=>Ns,promiseAllObject:()=>hk,propertyKeyTypes:()=>En,randomString:()=>bk,required:()=>$k,safeExtend:()=>Sk,shallowClone:()=>Ps,slugify:()=>As,stringifyPrimitive:()=>v,uint8ArrayToBase64:()=>Ym,uint8ArrayToBase64url:()=>Rk,uint8ArrayToHex:()=>Ck,unwrapMessage:()=>xn});function ck(t){return t}function lk(t){return t}function uk(t){}function dk(t){throw new Error("Unexpected value in exhaustive check")}function pk(t){}function In(t){let e=Object.values(t).filter(i=>typeof i=="number");return Object.entries(t).filter(([i,n])=>e.indexOf(+i)===-1).map(([i,n])=>n)}function h(t,e="|"){return t.map(r=>v(r)).join(e)}function ht(t,e){return typeof e=="bigint"?e.toString():e}function bt(t){return{get value(){{let r=t();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function ze(t){return t==null}function Sn(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function Rs(t,e){let r=t/e,i=Math.round(r),n=Number.EPSILON*Math.max(Math.abs(r),1);return Math.abs(r-i)<n?0:r-i}var qm=Symbol("evaluating");function O(t,e,r){let i;Object.defineProperty(t,e,{get(){if(i!==qm)return i===void 0&&(i=qm,i=r()),i},set(n){Object.defineProperty(t,e,{value:n})},configurable:!0})}function mk(t){return Object.create(Object.getPrototypeOf(t),Object.getOwnPropertyDescriptors(t))}function je(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}function Ae(...t){let e={};for(let r of t){let i=Object.getOwnPropertyDescriptors(r);Object.assign(e,i)}return Object.defineProperties({},e)}function fk(t){return Ae(t._zod.def)}function gk(t,e){return e?e.reduce((r,i)=>r?.[i],t):t}function hk(t){let e=Object.keys(t),r=e.map(i=>t[i]);return Promise.all(r).then(i=>{let n={};for(let o=0;o<e.length;o++)n[e[o]]=i[o];return n})}function bk(t=10){let e="abcdefghijklmnopqrstuvwxyz",r="";for(let i=0;i<t;i++)r+=e[Math.floor(Math.random()*e.length)];return r}function zr(t){return JSON.stringify(t)}function As(t){return t.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}var jr="captureStackTrace"in Error?Error.captureStackTrace:(...t)=>{};function et(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}var Cs=bt(()=>{if(Qe.jitless||typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let t=Function;return new t(""),!0}catch{return!1}});function Le(t){if(et(t)===!1)return!1;let e=t.constructor;if(e===void 0||typeof e!="function")return!0;let r=e.prototype;return!(et(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function Ps(t){return Le(t)?{...t}:Array.isArray(t)?[...t]:t instanceof Map?new Map(t):t instanceof Set?new Set(t):t}function vk(t){let e=0;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&e++;return e}var _k=t=>{let e=typeof t;switch(e){case"undefined":return"undefined";case"string":return"string";case"number":return Number.isNaN(t)?"nan":"number";case"boolean":return"boolean";case"function":return"function";case"bigint":return"bigint";case"symbol":return"symbol";case"object":return Array.isArray(t)?"array":t===null?"null":t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?"promise":typeof Map<"u"&&t instanceof Map?"map":typeof Set<"u"&&t instanceof Set?"set":typeof Date<"u"&&t instanceof Date?"date":typeof File<"u"&&t instanceof File?"file":"object";default:throw new Error(`Unknown data type: ${e}`)}},En=new Set(["string","number","symbol"]),Ns=new Set(["string","number","bigint","boolean","symbol","undefined"]);function ge(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function re(t,e,r){let i=new t._zod.constr(e??t._zod.def);return(!e||r?.parent)&&(i._zod.parent=t),i}function x(t){let e=t;if(!e)return{};if(typeof e=="string")return{error:()=>e};if(e?.message!==void 0){if(e?.error!==void 0)throw new Error("Cannot specify both `message` and `error` params");e.error=e.message}return delete e.message,typeof e.error=="string"?{...e,error:()=>e.error}:e}function yk(t){let e;return new Proxy({},{get(r,i,n){return e??(e=t()),Reflect.get(e,i,n)},set(r,i,n,o){return e??(e=t()),Reflect.set(e,i,n,o)},has(r,i){return e??(e=t()),Reflect.has(e,i)},deleteProperty(r,i){return e??(e=t()),Reflect.deleteProperty(e,i)},ownKeys(r){return e??(e=t()),Reflect.ownKeys(e)},getOwnPropertyDescriptor(r,i){return e??(e=t()),Reflect.getOwnPropertyDescriptor(e,i)},defineProperty(r,i,n){return e??(e=t()),Reflect.defineProperty(e,i,n)}})}function v(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function Ds(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}var Us={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]},zs={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function kk(t,e){let r=t._zod.def,i=r.checks;if(i&&i.length>0)throw new Error(".pick() cannot be used on object schemas containing refinements");let o=Ae(t._zod.def,{get shape(){let a={};for(let c in e){if(!(c in r.shape))throw new Error(`Unrecognized key: "${c}"`);e[c]&&(a[c]=r.shape[c])}return je(this,"shape",a),a},checks:[]});return re(t,o)}function xk(t,e){let r=t._zod.def,i=r.checks;if(i&&i.length>0)throw new Error(".omit() cannot be used on object schemas containing refinements");let o=Ae(t._zod.def,{get shape(){let a={...t._zod.def.shape};for(let c in e){if(!(c in r.shape))throw new Error(`Unrecognized key: "${c}"`);e[c]&&delete a[c]}return je(this,"shape",a),a},checks:[]});return re(t,o)}function Ik(t,e){if(!Le(e))throw new Error("Invalid input to extend: expected a plain object");let r=t._zod.def.checks;if(r&&r.length>0){let o=t._zod.def.shape;for(let a in e)if(Object.getOwnPropertyDescriptor(o,a)!==void 0)throw new Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}let n=Ae(t._zod.def,{get shape(){let o={...t._zod.def.shape,...e};return je(this,"shape",o),o}});return re(t,n)}function Sk(t,e){if(!Le(e))throw new Error("Invalid input to safeExtend: expected a plain object");let r=Ae(t._zod.def,{get shape(){let i={...t._zod.def.shape,...e};return je(this,"shape",i),i}});return re(t,r)}function Ek(t,e){if(t._zod.def.checks?.length)throw new Error(".merge() cannot be used on object schemas containing refinements. Use .safeExtend() instead.");let r=Ae(t._zod.def,{get shape(){let i={...t._zod.def.shape,...e._zod.def.shape};return je(this,"shape",i),i},get catchall(){return e._zod.def.catchall},checks:e._zod.def.checks??[]});return re(t,r)}function wk(t,e,r){let n=e._zod.def.checks;if(n&&n.length>0)throw new Error(".partial() cannot be used on object schemas containing refinements");let a=Ae(e._zod.def,{get shape(){let c=e._zod.def.shape,l={...c};if(r)for(let d in r){if(!(d in c))throw new Error(`Unrecognized key: "${d}"`);r[d]&&(l[d]=t?new t({type:"optional",innerType:c[d]}):c[d])}else for(let d in c)l[d]=t?new t({type:"optional",innerType:c[d]}):c[d];return je(this,"shape",l),l},checks:[]});return re(e,a)}function $k(t,e,r){let i=Ae(e._zod.def,{get shape(){let n=e._zod.def.shape,o={...n};if(r)for(let a in r){if(!(a in o))throw new Error(`Unrecognized key: "${a}"`);r[a]&&(o[a]=new t({type:"nonoptional",innerType:n[a]}))}else for(let a in n)o[a]=new t({type:"nonoptional",innerType:n[a]});return je(this,"shape",o),o}});return re(e,i)}function Me(t,e=0){if(t.aborted===!0)return!0;for(let r=e;r<t.issues.length;r++)if(t.issues[r]?.continue!==!0)return!0;return!1}function js(t,e=0){if(t.aborted===!0)return!0;for(let r=e;r<t.issues.length;r++)if(t.issues[r]?.continue===!1)return!0;return!1}function ae(t,e){return e.map(r=>{var i;return(i=r).path??(i.path=[]),r.path.unshift(t),r})}function xn(t){return typeof t=="string"?t:t?.message}function ie(t,e,r){let i=t.message?t.message:xn(t.inst?._zod.def?.error?.(t))??xn(e?.error?.(t))??xn(r.customError?.(t))??xn(r.localeError?.(t))??"Invalid input",{inst:n,continue:o,input:a,...c}=t;return c.path??(c.path=[]),c.message=i,e?.reportInput&&(c.input=a),c}function wn(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function $n(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function _(t){let e=typeof t;switch(e){case"number":return Number.isNaN(t)?"nan":"number";case"object":{if(t===null)return"null";if(Array.isArray(t))return"array";let r=t;if(r&&Object.getPrototypeOf(r)!==Object.prototype&&"constructor"in r&&r.constructor)return r.constructor.name}}return e}function vt(...t){let[e,r,i]=t;return typeof e=="string"?{message:e,code:"custom",input:r,inst:i}:{...e}}function Ok(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}function Jm(t){let e=atob(t),r=new Uint8Array(e.length);for(let i=0;i<e.length;i++)r[i]=e.charCodeAt(i);return r}function Ym(t){let e="";for(let r=0;r<t.length;r++)e+=String.fromCharCode(t[r]);return btoa(e)}function Tk(t){let e=t.replace(/-/g,"+").replace(/_/g,"/"),r="=".repeat((4-e.length%4)%4);return Jm(e+r)}function Rk(t){return Ym(t).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}function Ak(t){let e=t.replace(/^0x/,"");if(e.length%2!==0)throw new Error("Invalid hex string length");let r=new Uint8Array(e.length/2);for(let i=0;i<e.length;i+=2)r[i/2]=Number.parseInt(e.slice(i,i+2),16);return r}function Ck(t){return Array.from(t).map(e=>e.toString(16).padStart(2,"0")).join("")}var Ts=class{constructor(...e){}};var Xm=(t,e)=>{t.name="$ZodError",Object.defineProperty(t,"_zod",{value:t._zod,enumerable:!1}),Object.defineProperty(t,"issues",{value:e,enumerable:!1}),t.message=JSON.stringify(e,ht,2),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},On=f("$ZodError",Xm),ce=f("$ZodError",Xm,{Parent:Error});function Tn(t,e=r=>r.message){let r={},i=[];for(let n of t.issues)n.path.length>0?(r[n.path[0]]=r[n.path[0]]||[],r[n.path[0]].push(e(n))):i.push(e(n));return{formErrors:i,fieldErrors:r}}function Rn(t,e=r=>r.message){let r={_errors:[]},i=(n,o=[])=>{for(let a of n.issues)if(a.code==="invalid_union"&&a.errors.length)a.errors.map(c=>i({issues:c},[...o,...a.path]));else if(a.code==="invalid_key")i({issues:a.issues},[...o,...a.path]);else if(a.code==="invalid_element")i({issues:a.issues},[...o,...a.path]);else{let c=[...o,...a.path];if(c.length===0)r._errors.push(e(a));else{let l=r,d=0;for(;d<c.length;){let u=c[d];d===c.length-1?(l[u]=l[u]||{_errors:[]},l[u]._errors.push(e(a))):l[u]=l[u]||{_errors:[]},l=l[u],d++}}}};return i(t),r}function Ls(t,e=r=>r.message){let r={errors:[]},i=(n,o=[])=>{var a,c;for(let l of n.issues)if(l.code==="invalid_union"&&l.errors.length)l.errors.map(d=>i({issues:d},[...o,...l.path]));else if(l.code==="invalid_key")i({issues:l.issues},[...o,...l.path]);else if(l.code==="invalid_element")i({issues:l.issues},[...o,...l.path]);else{let d=[...o,...l.path];if(d.length===0){r.errors.push(e(l));continue}let u=r,p=0;for(;p<d.length;){let m=d[p],g=p===d.length-1;typeof m=="string"?(u.properties??(u.properties={}),(a=u.properties)[m]??(a[m]={errors:[]}),u=u.properties[m]):(u.items??(u.items=[]),(c=u.items)[m]??(c[m]={errors:[]}),u=u.items[m]),g&&u.errors.push(e(l)),p++}}};return i(t),r}function Qm(t){let e=[],r=t.map(i=>typeof i=="object"?i.key:i);for(let i of r)typeof i=="number"?e.push(`[${i}]`):typeof i=="symbol"?e.push(`[${JSON.stringify(String(i))}]`):/[^\w$]/.test(i)?e.push(`[${JSON.stringify(i)}]`):(e.length&&e.push("."),e.push(i));return e.join("")}function Ms(t){let e=[],r=[...t.issues].sort((i,n)=>(i.path??[]).length-(n.path??[]).length);for(let i of r)e.push(`\u2716 ${i.message}`),i.path?.length&&e.push(` \u2192 at ${Qm(i.path)}`);return e.join(`
34
- `)}var _t=t=>(e,r,i,n)=>{let o=i?{...i,async:!1}:{async:!1},a=e._zod.run({value:r,issues:[]},o);if(a instanceof Promise)throw new _e;if(a.issues.length){let c=new(n?.Err??t)(a.issues.map(l=>ie(l,o,q())));throw jr(c,n?.callee),c}return a.value},Lr=_t(ce),yt=t=>async(e,r,i,n)=>{let o=i?{...i,async:!0}:{async:!0},a=e._zod.run({value:r,issues:[]},o);if(a instanceof Promise&&(a=await a),a.issues.length){let c=new(n?.Err??t)(a.issues.map(l=>ie(l,o,q())));throw jr(c,n?.callee),c}return a.value},Mr=yt(ce),kt=t=>(e,r,i)=>{let n=i?{...i,async:!1}:{async:!1},o=e._zod.run({value:r,issues:[]},n);if(o instanceof Promise)throw new _e;return o.issues.length?{success:!1,error:new(t??On)(o.issues.map(a=>ie(a,n,q())))}:{success:!0,data:o.value}},Fs=kt(ce),xt=t=>async(e,r,i)=>{let n=i?{...i,async:!0}:{async:!0},o=e._zod.run({value:r,issues:[]},n);return o instanceof Promise&&(o=await o),o.issues.length?{success:!1,error:new t(o.issues.map(a=>ie(a,n,q())))}:{success:!0,data:o.value}},Bs=xt(ce),Fr=t=>(e,r,i)=>{let n=i?{...i,direction:"backward"}:{direction:"backward"};return _t(t)(e,r,n)},Nk=Fr(ce),Br=t=>(e,r,i)=>_t(t)(e,r,i),Dk=Br(ce),Hr=t=>async(e,r,i)=>{let n=i?{...i,direction:"backward"}:{direction:"backward"};return yt(t)(e,r,n)},Uk=Hr(ce),Vr=t=>async(e,r,i)=>yt(t)(e,r,i),zk=Vr(ce),Zr=t=>(e,r,i)=>{let n=i?{...i,direction:"backward"}:{direction:"backward"};return kt(t)(e,r,n)},jk=Zr(ce),Kr=t=>(e,r,i)=>kt(t)(e,r,i),Lk=Kr(ce),Gr=t=>async(e,r,i)=>{let n=i?{...i,direction:"backward"}:{direction:"backward"};return xt(t)(e,r,n)},Mk=Gr(ce),Wr=t=>async(e,r,i)=>xt(t)(e,r,i),Fk=Wr(ce);var de={};Te(de,{base64:()=>ia,base64url:()=>qr,bigint:()=>da,boolean:()=>ma,browserEmail:()=>qk,cidrv4:()=>na,cidrv6:()=>ra,cuid:()=>Hs,cuid2:()=>Vs,date:()=>aa,datetime:()=>la,domain:()=>Xk,duration:()=>qs,e164:()=>sa,email:()=>Ys,emoji:()=>Xs,extendedDuration:()=>Bk,guid:()=>Js,hex:()=>Qk,hostname:()=>Yk,html5Email:()=>Kk,httpProtocol:()=>oa,idnEmail:()=>Wk,integer:()=>pa,ipv4:()=>Qs,ipv6:()=>ea,ksuid:()=>Gs,lowercase:()=>ha,mac:()=>ta,md5_base64:()=>tx,md5_base64url:()=>nx,md5_hex:()=>ex,nanoid:()=>Ws,null:()=>fa,number:()=>Jr,rfc5322Email:()=>Gk,sha1_base64:()=>ix,sha1_base64url:()=>ox,sha1_hex:()=>rx,sha256_base64:()=>ax,sha256_base64url:()=>cx,sha256_hex:()=>sx,sha384_base64:()=>ux,sha384_base64url:()=>dx,sha384_hex:()=>lx,sha512_base64:()=>mx,sha512_base64url:()=>fx,sha512_hex:()=>px,string:()=>ua,time:()=>ca,ulid:()=>Zs,undefined:()=>ga,unicodeEmail:()=>ef,uppercase:()=>ba,uuid:()=>tt,uuid4:()=>Hk,uuid6:()=>Vk,uuid7:()=>Zk,xid:()=>Ks});var Hs=/^[cC][0-9a-z]{6,}$/,Vs=/^[0-9a-z]+$/,Zs=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Ks=/^[0-9a-vA-V]{20}$/,Gs=/^[A-Za-z0-9]{27}$/,Ws=/^[a-zA-Z0-9_-]{21}$/,qs=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,Bk=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,Js=/^([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})$/,tt=t=>t?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${t}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([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)$/,Hk=tt(4),Vk=tt(6),Zk=tt(7),Ys=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,Kk=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,Gk=/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/,ef=/^[^\s@"]{1,64}@[^\s@]{1,255}$/u,Wk=ef,qk=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,Jk="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function Xs(){return new RegExp(Jk,"u")}var Qs=/^(?:(?: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])$/,ea=/^(([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}|:))$/,ta=t=>{let e=ge(t??":");return new RegExp(`^(?:[0-9A-F]{2}${e}){5}[0-9A-F]{2}$|^(?:[0-9a-f]{2}${e}){5}[0-9a-f]{2}$`)},na=/^((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])$/,ra=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,ia=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,qr=/^[A-Za-z0-9_-]*$/,Yk=/^(?=.{1,253}\.?$)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[-0-9a-zA-Z]{0,61}[0-9a-zA-Z])?)*\.?$/,Xk=/^([a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,}$/,oa=/^https?$/,sa=/^\+[1-9]\d{6,14}$/,tf="(?:(?:\\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])))",aa=new RegExp(`^${tf}$`);function nf(t){let e="(?:[01]\\d|2[0-3]):[0-5]\\d";return typeof t.precision=="number"?t.precision===-1?`${e}`:t.precision===0?`${e}:[0-5]\\d`:`${e}:[0-5]\\d\\.\\d{${t.precision}}`:`${e}(?::[0-5]\\d(?:\\.\\d+)?)?`}function ca(t){return new RegExp(`^${nf(t)}$`)}function la(t){let e=nf({precision:t.precision}),r=["Z"];t.local&&r.push(""),t.offset&&r.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");let i=`${e}(?:${r.join("|")})`;return new RegExp(`^${tf}T(?:${i})$`)}var ua=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)},da=/^-?\d+n?$/,pa=/^-?\d+$/,Jr=/^-?\d+(?:\.\d+)?$/,ma=/^(?:true|false)$/i,fa=/^null$/i;var ga=/^undefined$/i;var ha=/^[^A-Z]*$/,ba=/^[^a-z]*$/,Qk=/^[0-9a-fA-F]*$/;function An(t,e){return new RegExp(`^[A-Za-z0-9+/]{${t}}${e}$`)}function Cn(t){return new RegExp(`^[A-Za-z0-9_-]{${t}}$`)}var ex=/^[0-9a-fA-F]{32}$/,tx=An(22,"=="),nx=Cn(22),rx=/^[0-9a-fA-F]{40}$/,ix=An(27,"="),ox=Cn(27),sx=/^[0-9a-fA-F]{64}$/,ax=An(43,"="),cx=Cn(43),lx=/^[0-9a-fA-F]{96}$/,ux=An(64,""),dx=Cn(64),px=/^[0-9a-fA-F]{128}$/,mx=An(86,"=="),fx=Cn(86);var B=f("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),of={number:"number",bigint:"bigint",object:"date"},Yr=f("$ZodCheckLessThan",(t,e)=>{B.init(t,e);let r=of[typeof e.value];t._zod.onattach.push(i=>{let n=i._zod.bag,o=(e.inclusive?n.maximum:n.exclusiveMaximum)??Number.POSITIVE_INFINITY;e.value<o&&(e.inclusive?n.maximum=e.value:n.exclusiveMaximum=e.value)}),t._zod.check=i=>{(e.inclusive?i.value<=e.value:i.value<e.value)||i.issues.push({origin:r,code:"too_big",maximum:typeof e.value=="object"?e.value.getTime():e.value,input:i.value,inclusive:e.inclusive,inst:t,continue:!e.abort})}}),Xr=f("$ZodCheckGreaterThan",(t,e)=>{B.init(t,e);let r=of[typeof e.value];t._zod.onattach.push(i=>{let n=i._zod.bag,o=(e.inclusive?n.minimum:n.exclusiveMinimum)??Number.NEGATIVE_INFINITY;e.value>o&&(e.inclusive?n.minimum=e.value:n.exclusiveMinimum=e.value)}),t._zod.check=i=>{(e.inclusive?i.value>=e.value:i.value>e.value)||i.issues.push({origin:r,code:"too_small",minimum:typeof e.value=="object"?e.value.getTime():e.value,input:i.value,inclusive:e.inclusive,inst:t,continue:!e.abort})}}),va=f("$ZodCheckMultipleOf",(t,e)=>{B.init(t,e),t._zod.onattach.push(r=>{var i;(i=r._zod.bag).multipleOf??(i.multipleOf=e.value)}),t._zod.check=r=>{if(typeof r.value!=typeof e.value)throw new Error("Cannot mix number and bigint in multiple_of check.");(typeof r.value=="bigint"?r.value%e.value===BigInt(0):Rs(r.value,e.value)===0)||r.issues.push({origin:typeof r.value,code:"not_multiple_of",divisor:e.value,input:r.value,inst:t,continue:!e.abort})}}),_a=f("$ZodCheckNumberFormat",(t,e)=>{B.init(t,e),e.format=e.format||"float64";let r=e.format?.includes("int"),i=r?"int":"number",[n,o]=Us[e.format];t._zod.onattach.push(a=>{let c=a._zod.bag;c.format=e.format,c.minimum=n,c.maximum=o,r&&(c.pattern=pa)}),t._zod.check=a=>{let c=a.value;if(r){if(!Number.isInteger(c)){a.issues.push({expected:i,format:e.format,code:"invalid_type",continue:!1,input:c,inst:t});return}if(!Number.isSafeInteger(c)){c>0?a.issues.push({input:c,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:i,inclusive:!0,continue:!e.abort}):a.issues.push({input:c,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:i,inclusive:!0,continue:!e.abort});return}}c<n&&a.issues.push({origin:"number",input:c,code:"too_small",minimum:n,inclusive:!0,inst:t,continue:!e.abort}),c>o&&a.issues.push({origin:"number",input:c,code:"too_big",maximum:o,inclusive:!0,inst:t,continue:!e.abort})}}),ya=f("$ZodCheckBigIntFormat",(t,e)=>{B.init(t,e);let[r,i]=zs[e.format];t._zod.onattach.push(n=>{let o=n._zod.bag;o.format=e.format,o.minimum=r,o.maximum=i}),t._zod.check=n=>{let o=n.value;o<r&&n.issues.push({origin:"bigint",input:o,code:"too_small",minimum:r,inclusive:!0,inst:t,continue:!e.abort}),o>i&&n.issues.push({origin:"bigint",input:o,code:"too_big",maximum:i,inclusive:!0,inst:t,continue:!e.abort})}}),ka=f("$ZodCheckMaxSize",(t,e)=>{var r;B.init(t,e),(r=t._zod.def).when??(r.when=i=>{let n=i.value;return!ze(n)&&n.size!==void 0}),t._zod.onattach.push(i=>{let n=i._zod.bag.maximum??Number.POSITIVE_INFINITY;e.maximum<n&&(i._zod.bag.maximum=e.maximum)}),t._zod.check=i=>{let n=i.value;n.size<=e.maximum||i.issues.push({origin:wn(n),code:"too_big",maximum:e.maximum,inclusive:!0,input:n,inst:t,continue:!e.abort})}}),xa=f("$ZodCheckMinSize",(t,e)=>{var r;B.init(t,e),(r=t._zod.def).when??(r.when=i=>{let n=i.value;return!ze(n)&&n.size!==void 0}),t._zod.onattach.push(i=>{let n=i._zod.bag.minimum??Number.NEGATIVE_INFINITY;e.minimum>n&&(i._zod.bag.minimum=e.minimum)}),t._zod.check=i=>{let n=i.value;n.size>=e.minimum||i.issues.push({origin:wn(n),code:"too_small",minimum:e.minimum,inclusive:!0,input:n,inst:t,continue:!e.abort})}}),Ia=f("$ZodCheckSizeEquals",(t,e)=>{var r;B.init(t,e),(r=t._zod.def).when??(r.when=i=>{let n=i.value;return!ze(n)&&n.size!==void 0}),t._zod.onattach.push(i=>{let n=i._zod.bag;n.minimum=e.size,n.maximum=e.size,n.size=e.size}),t._zod.check=i=>{let n=i.value,o=n.size;if(o===e.size)return;let a=o>e.size;i.issues.push({origin:wn(n),...a?{code:"too_big",maximum:e.size}:{code:"too_small",minimum:e.size},inclusive:!0,exact:!0,input:i.value,inst:t,continue:!e.abort})}}),Sa=f("$ZodCheckMaxLength",(t,e)=>{var r;B.init(t,e),(r=t._zod.def).when??(r.when=i=>{let n=i.value;return!ze(n)&&n.length!==void 0}),t._zod.onattach.push(i=>{let n=i._zod.bag.maximum??Number.POSITIVE_INFINITY;e.maximum<n&&(i._zod.bag.maximum=e.maximum)}),t._zod.check=i=>{let n=i.value;if(n.length<=e.maximum)return;let a=$n(n);i.issues.push({origin:a,code:"too_big",maximum:e.maximum,inclusive:!0,input:n,inst:t,continue:!e.abort})}}),Ea=f("$ZodCheckMinLength",(t,e)=>{var r;B.init(t,e),(r=t._zod.def).when??(r.when=i=>{let n=i.value;return!ze(n)&&n.length!==void 0}),t._zod.onattach.push(i=>{let n=i._zod.bag.minimum??Number.NEGATIVE_INFINITY;e.minimum>n&&(i._zod.bag.minimum=e.minimum)}),t._zod.check=i=>{let n=i.value;if(n.length>=e.minimum)return;let a=$n(n);i.issues.push({origin:a,code:"too_small",minimum:e.minimum,inclusive:!0,input:n,inst:t,continue:!e.abort})}}),wa=f("$ZodCheckLengthEquals",(t,e)=>{var r;B.init(t,e),(r=t._zod.def).when??(r.when=i=>{let n=i.value;return!ze(n)&&n.length!==void 0}),t._zod.onattach.push(i=>{let n=i._zod.bag;n.minimum=e.length,n.maximum=e.length,n.length=e.length}),t._zod.check=i=>{let n=i.value,o=n.length;if(o===e.length)return;let a=$n(n),c=o>e.length;i.issues.push({origin:a,...c?{code:"too_big",maximum:e.length}:{code:"too_small",minimum:e.length},inclusive:!0,exact:!0,input:i.value,inst:t,continue:!e.abort})}}),It=f("$ZodCheckStringFormat",(t,e)=>{var r,i;B.init(t,e),t._zod.onattach.push(n=>{let o=n._zod.bag;o.format=e.format,e.pattern&&(o.patterns??(o.patterns=new Set),o.patterns.add(e.pattern))}),e.pattern?(r=t._zod).check??(r.check=n=>{e.pattern.lastIndex=0,!e.pattern.test(n.value)&&n.issues.push({origin:"string",code:"invalid_format",format:e.format,input:n.value,...e.pattern?{pattern:e.pattern.toString()}:{},inst:t,continue:!e.abort})}):(i=t._zod).check??(i.check=()=>{})}),$a=f("$ZodCheckRegex",(t,e)=>{It.init(t,e),t._zod.check=r=>{e.pattern.lastIndex=0,!e.pattern.test(r.value)&&r.issues.push({origin:"string",code:"invalid_format",format:"regex",input:r.value,pattern:e.pattern.toString(),inst:t,continue:!e.abort})}}),Oa=f("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=ha),It.init(t,e)}),Ta=f("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=ba),It.init(t,e)}),Ra=f("$ZodCheckIncludes",(t,e)=>{B.init(t,e);let r=ge(e.includes),i=new RegExp(typeof e.position=="number"?`^.{${e.position}}${r}`:r);e.pattern=i,t._zod.onattach.push(n=>{let o=n._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(i)}),t._zod.check=n=>{n.value.includes(e.includes,e.position)||n.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:e.includes,input:n.value,inst:t,continue:!e.abort})}}),Aa=f("$ZodCheckStartsWith",(t,e)=>{B.init(t,e);let r=new RegExp(`^${ge(e.prefix)}.*`);e.pattern??(e.pattern=r),t._zod.onattach.push(i=>{let n=i._zod.bag;n.patterns??(n.patterns=new Set),n.patterns.add(r)}),t._zod.check=i=>{i.value.startsWith(e.prefix)||i.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:e.prefix,input:i.value,inst:t,continue:!e.abort})}}),Ca=f("$ZodCheckEndsWith",(t,e)=>{B.init(t,e);let r=new RegExp(`.*${ge(e.suffix)}$`);e.pattern??(e.pattern=r),t._zod.onattach.push(i=>{let n=i._zod.bag;n.patterns??(n.patterns=new Set),n.patterns.add(r)}),t._zod.check=i=>{i.value.endsWith(e.suffix)||i.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:e.suffix,input:i.value,inst:t,continue:!e.abort})}});function rf(t,e,r){t.issues.length&&e.issues.push(...ae(r,t.issues))}var Pa=f("$ZodCheckProperty",(t,e)=>{B.init(t,e),t._zod.check=r=>{let i=e.schema._zod.run({value:r.value[e.property],issues:[]},{});if(i instanceof Promise)return i.then(n=>rf(n,r,e.property));rf(i,r,e.property)}}),Na=f("$ZodCheckMimeType",(t,e)=>{B.init(t,e);let r=new Set(e.mime);t._zod.onattach.push(i=>{i._zod.bag.mime=e.mime}),t._zod.check=i=>{r.has(i.value.type)||i.issues.push({code:"invalid_value",values:e.mime,input:i.value.type,inst:t,continue:!e.abort})}}),Da=f("$ZodCheckOverwrite",(t,e)=>{B.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}});var Pn=class{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),this.indent-=1}write(e){if(typeof e=="function"){e(this,{execution:"sync"}),e(this,{execution:"async"});return}let i=e.split(`
33
+ `,n)}while(i!==-1);return o+=t.slice(n),o}var{stdout:Sf,stderr:Ef}=kf,Qs=Symbol("GENERATOR"),Et=Symbol("STYLER"),Pn=Symbol("IS_EMPTY"),wf=["ansi","ansi","ansi256","ansi16m"],wt=Object.create(null),fx=(t,e={})=>{if(e.level&&!(Number.isInteger(e.level)&&e.level>=0&&e.level<=3))throw new Error("The `level` option should be an integer from 0 to 3");let r=Sf?Sf.level:0;t.level=e.level===void 0?r:e.level};var gx=t=>{let e=(...r)=>r.join(" ");return fx(e,t),Object.setPrototypeOf(e,Nn.prototype),e};function Nn(t){return gx(t)}Object.setPrototypeOf(Nn.prototype,Function.prototype);for(let[t,e]of Object.entries(ke))wt[t]={get(){let r=ei(this,ta(e.open,e.close,this[Et]),this[Pn]);return Object.defineProperty(this,t,{value:r}),r}};wt.visible={get(){let t=ei(this,this[Et],!0);return Object.defineProperty(this,"visible",{value:t}),t}};var ea=(t,e,r,...i)=>t==="rgb"?e==="ansi16m"?ke[r].ansi16m(...i):e==="ansi256"?ke[r].ansi256(ke.rgbToAnsi256(...i)):ke[r].ansi(ke.rgbToAnsi(...i)):t==="hex"?ea("rgb",e,r,...ke.hexToRgb(...i)):ke[r][t](...i),hx=["rgb","hex","ansi256"];for(let t of hx){wt[t]={get(){let{level:r}=this;return function(...i){let n=ta(ea(t,wf[r],"color",...i),ke.color.close,this[Et]);return ei(this,n,this[Pn])}}};let e="bg"+t[0].toUpperCase()+t.slice(1);wt[e]={get(){let{level:r}=this;return function(...i){let n=ta(ea(t,wf[r],"bgColor",...i),ke.bgColor.close,this[Et]);return ei(this,n,this[Pn])}}}}var bx=Object.defineProperties(()=>{},{...wt,level:{enumerable:!0,get(){return this[Qs].level},set(t){this[Qs].level=t}}}),ta=(t,e,r)=>{let i,n;return r===void 0?(i=t,n=e):(i=r.openAll+t,n=e+r.closeAll),{open:t,close:e,openAll:i,closeAll:n,parent:r}},ei=(t,e,r)=>{let i=(...n)=>vx(i,n.length===1?""+n[0]:n.join(" "));return Object.setPrototypeOf(i,bx),i[Qs]=t,i[Et]=e,i[Pn]=r,i},vx=(t,e)=>{if(t.level<=0||!e)return t[Pn]?"":e;let r=t[Et];if(r===void 0)return e;let{openAll:i,closeAll:n}=r;if(e.includes("\x1B"))for(;r!==void 0;)e=xf(e,r.close,r.open),r=r.parent;let o=e.indexOf(`
34
+ `);return o!==-1&&(e=If(e,n,i,o)),i+e+n};Object.defineProperties(Nn.prototype,wt);var _x=Nn(),aP=Nn({level:Ef?Ef.level:0});var M=_x;function $f(t){return JSON.stringify(t,null,2)}var Of;function Tf(t){Of=ni(t)}function te(){return Of??ni(void 0)}function Dn(){return te()==="json"}function ti(t){Dn()||console.log(M.green(`\u2713 ${t}`))}function na(t){Dn()||console.error(M.red(`\u2717 ${t}`))}function Be(t){Dn()||console.warn(M.yellow(`\u26A0 ${t}`))}function J(t){Dn()||console.log(M.dim(t))}function Af(t){Dn()||console.log(M.bold(t))}function Un(){return process.stdout.isTTY===!0}function ni(t){if(t==="json"||t==="table")return t;if(t!==void 0)throw new b(`Unsupported --format "${t}". Use "json" or "table".`,400,{code:"INVALID_OUTPUT_FORMAT",param:"format"});return Un()?"table":"json"}var s={};De(s,{$brand:()=>ia,$input:()=>El,$output:()=>Sl,NEVER:()=>ra,TimePrecision:()=>Tl,ZodAny:()=>vd,ZodArray:()=>xd,ZodBase64:()=>Ao,ZodBase64URL:()=>Ro,ZodBigInt:()=>rn,ZodBigIntFormat:()=>No,ZodBoolean:()=>nn,ZodCIDRv4:()=>Oo,ZodCIDRv6:()=>To,ZodCUID:()=>ko,ZodCUID2:()=>xo,ZodCatch:()=>Vd,ZodCodec:()=>fr,ZodCustom:()=>gr,ZodCustomStringFormat:()=>en,ZodDate:()=>lr,ZodDefault:()=>jd,ZodDiscriminatedUnion:()=>Sd,ZodE164:()=>Co,ZodEmail:()=>vo,ZodEmoji:()=>_o,ZodEnum:()=>Xt,ZodError:()=>JS,ZodExactOptional:()=>Dd,ZodFile:()=>Pd,ZodFirstPartyTypeKind:()=>rp,ZodFunction:()=>ep,ZodGUID:()=>ir,ZodIPv4:()=>wo,ZodIPv6:()=>$o,ZodISODate:()=>po,ZodISODateTime:()=>uo,ZodISODuration:()=>fo,ZodISOTime:()=>mo,ZodIntersection:()=>Ed,ZodIssueCode:()=>XS,ZodJWT:()=>Po,ZodKSUID:()=>Eo,ZodLazy:()=>Yd,ZodLiteral:()=>Cd,ZodMAC:()=>dd,ZodMap:()=>Ad,ZodNaN:()=>Gd,ZodNanoID:()=>yo,ZodNever:()=>yd,ZodNonOptional:()=>Mo,ZodNull:()=>hd,ZodNullable:()=>zd,ZodNumber:()=>tn,ZodNumberFormat:()=>ht,ZodObject:()=>dr,ZodOptional:()=>Lo,ZodPipe:()=>mr,ZodPrefault:()=>Md,ZodPreprocess:()=>Zd,ZodPromise:()=>Qd,ZodReadonly:()=>Wd,ZodRealError:()=>pe,ZodRecord:()=>Yt,ZodSet:()=>Rd,ZodString:()=>Qt,ZodStringFormat:()=>F,ZodSuccess:()=>Hd,ZodSymbol:()=>fd,ZodTemplateLiteral:()=>Jd,ZodTransform:()=>Nd,ZodTuple:()=>$d,ZodType:()=>O,ZodULID:()=>Io,ZodURL:()=>cr,ZodUUID:()=>Ae,ZodUndefined:()=>gd,ZodUnion:()=>pr,ZodUnknown:()=>_d,ZodVoid:()=>kd,ZodXID:()=>So,ZodXor:()=>Id,_ZodString:()=>bo,_default:()=>Ld,_function:()=>vb,any:()=>qh,array:()=>ur,base64:()=>Ch,base64url:()=>Ph,bigint:()=>Vh,boolean:()=>md,catch:()=>Kd,check:()=>_b,cidrv4:()=>Ah,cidrv6:()=>Rh,clone:()=>oe,codec:()=>fb,coerce:()=>ip,config:()=>Y,core:()=>Le,cuid:()=>xh,cuid2:()=>Ih,custom:()=>yb,date:()=>Yh,decode:()=>id,decodeAsync:()=>sd,describe:()=>kb,discriminatedUnion:()=>rb,e164:()=>Nh,email:()=>ph,emoji:()=>yh,encode:()=>rd,encodeAsync:()=>od,endsWith:()=>Bt,enum:()=>zo,exactOptional:()=>Ud,file:()=>ub,flattenError:()=>Vn,float32:()=>Mh,float64:()=>Bh,formatError:()=>Kn,fromJSONSchema:()=>Ob,function:()=>vb,getErrorMap:()=>eE,globalRegistry:()=>re,gt:()=>Oe,gte:()=>ae,guid:()=>mh,hash:()=>Lh,hex:()=>jh,hostname:()=>zh,httpUrl:()=>_h,includes:()=>Lt,instanceof:()=>Ib,int:()=>go,int32:()=>Fh,int64:()=>Kh,intersection:()=>wd,invertCodec:()=>gb,ipv4:()=>$h,ipv6:()=>Th,iso:()=>Jt,json:()=>Eb,jwt:()=>Dh,keyof:()=>Xh,ksuid:()=>wh,lazy:()=>Xd,length:()=>ft,literal:()=>lb,locales:()=>Qn,looseObject:()=>tb,looseRecord:()=>ob,lowercase:()=>zt,lt:()=>$e,lte:()=>ge,mac:()=>Oh,map:()=>sb,maxLength:()=>mt,maxSize:()=>We,meta:()=>xb,mime:()=>Ft,minLength:()=>je,minSize:()=>Te,multipleOf:()=>Ze,nan:()=>mb,nanoid:()=>kh,nativeEnum:()=>cb,negative:()=>eo,never:()=>Do,nonnegative:()=>no,nonoptional:()=>Fd,nonpositive:()=>to,normalize:()=>Ht,null:()=>bd,nullable:()=>sr,nullish:()=>db,number:()=>pd,object:()=>Qh,optional:()=>or,overwrite:()=>Ie,parse:()=>Qu,parseAsync:()=>ed,partialRecord:()=>ib,pipe:()=>ho,positive:()=>Qi,prefault:()=>Bd,preprocess:()=>wb,prettifyError:()=>ba,promise:()=>bb,property:()=>ro,readonly:()=>qd,record:()=>Td,refine:()=>tp,regex:()=>Ut,regexes:()=>fe,registry:()=>Ci,safeDecode:()=>cd,safeDecodeAsync:()=>ud,safeEncode:()=>ad,safeEncodeAsync:()=>ld,safeParse:()=>td,safeParseAsync:()=>nd,set:()=>ab,setErrorMap:()=>QS,size:()=>pt,slugify:()=>Zt,startsWith:()=>Mt,strictObject:()=>eb,string:()=>rr,stringFormat:()=>Uh,stringbool:()=>Sb,success:()=>pb,superRefine:()=>np,symbol:()=>Zh,templateLiteral:()=>hb,toJSONSchema:()=>ao,toLowerCase:()=>Kt,toUpperCase:()=>Gt,transform:()=>jo,treeifyError:()=>ha,trim:()=>Vt,tuple:()=>Od,uint32:()=>Hh,uint64:()=>Gh,ulid:()=>Sh,undefined:()=>Wh,union:()=>Uo,unknown:()=>gt,uppercase:()=>jt,url:()=>vh,util:()=>x,uuid:()=>fh,uuidv4:()=>gh,uuidv6:()=>hh,uuidv7:()=>bh,void:()=>Jh,xid:()=>Eh,xor:()=>nb});var Le={};De(Le,{$ZodAny:()=>Gc,$ZodArray:()=>Yc,$ZodAsyncError:()=>xe,$ZodBase64:()=>Uc,$ZodBase64URL:()=>zc,$ZodBigInt:()=>Si,$ZodBigIntFormat:()=>Fc,$ZodBoolean:()=>qn,$ZodCIDRv4:()=>Pc,$ZodCIDRv6:()=>Nc,$ZodCUID:()=>kc,$ZodCUID2:()=>xc,$ZodCatch:()=>gl,$ZodCheck:()=>K,$ZodCheckBigIntFormat:()=>Ya,$ZodCheckEndsWith:()=>lc,$ZodCheckGreaterThan:()=>vi,$ZodCheckIncludes:()=>ac,$ZodCheckLengthEquals:()=>rc,$ZodCheckLessThan:()=>bi,$ZodCheckLowerCase:()=>oc,$ZodCheckMaxLength:()=>tc,$ZodCheckMaxSize:()=>Xa,$ZodCheckMimeType:()=>dc,$ZodCheckMinLength:()=>nc,$ZodCheckMinSize:()=>Qa,$ZodCheckMultipleOf:()=>qa,$ZodCheckNumberFormat:()=>Ja,$ZodCheckOverwrite:()=>pc,$ZodCheckProperty:()=>uc,$ZodCheckRegex:()=>ic,$ZodCheckSizeEquals:()=>ec,$ZodCheckStartsWith:()=>cc,$ZodCheckStringFormat:()=>Nt,$ZodCheckUpperCase:()=>sc,$ZodCodec:()=>Yn,$ZodCustom:()=>Il,$ZodCustomStringFormat:()=>Mc,$ZodDate:()=>Jc,$ZodDefault:()=>dl,$ZodDiscriminatedUnion:()=>el,$ZodE164:()=>jc,$ZodEmail:()=>bc,$ZodEmoji:()=>_c,$ZodEncodeError:()=>Fe,$ZodEnum:()=>ol,$ZodError:()=>Hn,$ZodExactOptional:()=>ll,$ZodFile:()=>al,$ZodFunction:()=>yl,$ZodGUID:()=>gc,$ZodIPv4:()=>Ac,$ZodIPv6:()=>Rc,$ZodISODate:()=>$c,$ZodISODateTime:()=>wc,$ZodISODuration:()=>Tc,$ZodISOTime:()=>Oc,$ZodIntersection:()=>tl,$ZodJWT:()=>Lc,$ZodKSUID:()=>Ec,$ZodLazy:()=>xl,$ZodLiteral:()=>sl,$ZodMAC:()=>Cc,$ZodMap:()=>rl,$ZodNaN:()=>hl,$ZodNanoID:()=>yc,$ZodNever:()=>Wc,$ZodNonOptional:()=>ml,$ZodNull:()=>Kc,$ZodNullable:()=>ul,$ZodNumber:()=>Ii,$ZodNumberFormat:()=>Bc,$ZodObject:()=>ag,$ZodObjectJIT:()=>Xc,$ZodOptional:()=>wi,$ZodPipe:()=>$i,$ZodPrefault:()=>pl,$ZodPreprocess:()=>bl,$ZodPromise:()=>kl,$ZodReadonly:()=>vl,$ZodRealError:()=>de,$ZodRecord:()=>nl,$ZodRegistry:()=>Ri,$ZodSet:()=>il,$ZodString:()=>dt,$ZodStringFormat:()=>B,$ZodSuccess:()=>fl,$ZodSymbol:()=>Hc,$ZodTemplateLiteral:()=>_l,$ZodTransform:()=>cl,$ZodTuple:()=>Ei,$ZodType:()=>$,$ZodULID:()=>Ic,$ZodURL:()=>vc,$ZodUUID:()=>hc,$ZodUndefined:()=>Vc,$ZodUnion:()=>Jn,$ZodUnknown:()=>Zc,$ZodVoid:()=>qc,$ZodXID:()=>Sc,$ZodXor:()=>Qc,$brand:()=>ia,$constructor:()=>g,$input:()=>El,$output:()=>Sl,Doc:()=>Wn,JSONSchema:()=>lh,JSONSchemaGenerator:()=>co,NEVER:()=>ra,TimePrecision:()=>Tl,_any:()=>Jl,_array:()=>ru,_base64:()=>qi,_base64url:()=>Ji,_bigint:()=>Hl,_boolean:()=>Bl,_catch:()=>FS,_check:()=>ch,_cidrv4:()=>Zi,_cidrv6:()=>Wi,_coercedBigint:()=>Vl,_coercedBoolean:()=>Fl,_coercedDate:()=>tu,_coercedNumber:()=>Dl,_coercedString:()=>$l,_cuid:()=>Mi,_cuid2:()=>Bi,_custom:()=>ou,_date:()=>eu,_decode:()=>ci,_decodeAsync:()=>ui,_default:()=>LS,_discriminatedUnion:()=>$S,_e164:()=>Yi,_email:()=>Pi,_emoji:()=>ji,_encode:()=>ai,_encodeAsync:()=>li,_endsWith:()=>Bt,_enum:()=>PS,_file:()=>iu,_float32:()=>zl,_float64:()=>jl,_gt:()=>Oe,_gte:()=>ae,_guid:()=>er,_includes:()=>Lt,_int:()=>Ul,_int32:()=>Ll,_int64:()=>Kl,_intersection:()=>OS,_ipv4:()=>Ki,_ipv6:()=>Gi,_isoDate:()=>Rl,_isoDateTime:()=>Al,_isoDuration:()=>Pl,_isoTime:()=>Cl,_jwt:()=>Xi,_ksuid:()=>Vi,_lazy:()=>GS,_length:()=>ft,_literal:()=>DS,_lowercase:()=>zt,_lt:()=>$e,_lte:()=>ge,_mac:()=>Ol,_map:()=>RS,_max:()=>ge,_maxLength:()=>mt,_maxSize:()=>We,_mime:()=>Ft,_min:()=>ae,_minLength:()=>je,_minSize:()=>Te,_multipleOf:()=>Ze,_nan:()=>nu,_nanoid:()=>Li,_nativeEnum:()=>NS,_negative:()=>eo,_never:()=>Xl,_nonnegative:()=>no,_nonoptional:()=>MS,_nonpositive:()=>to,_normalize:()=>Ht,_null:()=>ql,_nullable:()=>jS,_number:()=>Nl,_optional:()=>zS,_overwrite:()=>Ie,_parse:()=>At,_parseAsync:()=>Rt,_pipe:()=>HS,_positive:()=>Qi,_promise:()=>ZS,_property:()=>ro,_readonly:()=>VS,_record:()=>AS,_refine:()=>su,_regex:()=>Ut,_safeDecode:()=>pi,_safeDecodeAsync:()=>fi,_safeEncode:()=>di,_safeEncodeAsync:()=>mi,_safeParse:()=>Ct,_safeParseAsync:()=>Pt,_set:()=>CS,_size:()=>pt,_slugify:()=>Zt,_startsWith:()=>Mt,_string:()=>wl,_stringFormat:()=>Wt,_stringbool:()=>uu,_success:()=>BS,_superRefine:()=>au,_symbol:()=>Zl,_templateLiteral:()=>KS,_toLowerCase:()=>Kt,_toUpperCase:()=>Gt,_transform:()=>US,_trim:()=>Vt,_tuple:()=>TS,_uint32:()=>Ml,_uint64:()=>Gl,_ulid:()=>Fi,_undefined:()=>Wl,_union:()=>ES,_unknown:()=>Yl,_uppercase:()=>jt,_url:()=>tr,_uuid:()=>Ni,_uuidv4:()=>Di,_uuidv6:()=>Ui,_uuidv7:()=>zi,_void:()=>Ql,_xid:()=>Hi,_xor:()=>wS,clone:()=>oe,config:()=>Y,createStandardJSONSchemaMethod:()=>qt,createToJSONSchemaMethod:()=>du,decode:()=>Zx,decodeAsync:()=>qx,describe:()=>cu,encode:()=>Gx,encodeAsync:()=>Wx,extractDefs:()=>Je,finalize:()=>Ye,flattenError:()=>Vn,formatError:()=>Kn,globalConfig:()=>ct,globalRegistry:()=>re,initializeContext:()=>qe,isValidBase64:()=>Dc,isValidBase64URL:()=>rg,isValidJWT:()=>ig,locales:()=>Qn,meta:()=>lu,parse:()=>oi,parseAsync:()=>si,prettifyError:()=>ba,process:()=>j,regexes:()=>fe,registry:()=>Ci,safeDecode:()=>Yx,safeDecodeAsync:()=>Qx,safeEncode:()=>Jx,safeEncodeAsync:()=>Xx,safeParse:()=>va,safeParseAsync:()=>_a,toDotPath:()=>Uf,toJSONSchema:()=>ao,treeifyError:()=>ha,util:()=>x,version:()=>mc});var Rf,ra=Object.freeze({status:"aborted"});function g(t,e,r){function i(c,l){if(c._zod||Object.defineProperty(c,"_zod",{value:{def:l,constr:a,traits:new Set},enumerable:!1}),c._zod.traits.has(t))return;c._zod.traits.add(t),e(c,l);let d=a.prototype,u=Object.keys(d);for(let p=0;p<u.length;p++){let m=u[p];m in c||(c[m]=d[m].bind(c))}}let n=r?.Parent??Object;class o extends n{}Object.defineProperty(o,"name",{value:t});function a(c){var l;let d=r?.Parent?new o:this;i(d,c),(l=d._zod).deferred??(l.deferred=[]);for(let u of d._zod.deferred)u();return d}return Object.defineProperty(a,"init",{value:i}),Object.defineProperty(a,Symbol.hasInstance,{value:c=>r?.Parent&&c instanceof r.Parent?!0:c?._zod?.traits?.has(t)}),Object.defineProperty(a,"name",{value:t}),a}var ia=Symbol("zod_brand"),xe=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},Fe=class extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name="ZodEncodeError"}};(Rf=globalThis).__zod_globalConfig??(Rf.__zod_globalConfig={});var ct=globalThis.__zod_globalConfig;function Y(t){return t&&Object.assign(ct,t),ct}var x={};De(x,{BIGINT_FORMAT_RANGES:()=>fa,Class:()=>sa,NUMBER_FORMAT_RANGES:()=>ma,aborted:()=>Ge,allowsEval:()=>la,assert:()=>Sx,assertEqual:()=>yx,assertIs:()=>xx,assertNever:()=>Ix,assertNotEqual:()=>kx,assignProp:()=>Ve,base64ToUint8Array:()=>Pf,base64urlToUint8Array:()=>Bx,cached:()=>Ot,captureStackTrace:()=>ii,cleanEnum:()=>Mx,cleanRegex:()=>Ln,clone:()=>oe,cloneDef:()=>wx,createTransparentProxy:()=>Cx,defineLazy:()=>T,esc:()=>ri,escapeRegex:()=>_e,explicitlyAborted:()=>ga,extend:()=>Dx,finalizeIssue:()=>se,floatSafeRemainder:()=>aa,getElementAtPath:()=>$x,getEnumValues:()=>jn,getLengthableOrigin:()=>Fn,getParsedType:()=>Rx,getSizableOrigin:()=>Bn,hexToUint8Array:()=>Hx,isObject:()=>lt,isPlainObject:()=>Ke,issue:()=>Tt,joinValues:()=>h,jsonStringifyReplacer:()=>$t,merge:()=>zx,mergeDefs:()=>ze,normalizeParams:()=>I,nullish:()=>He,numKeys:()=>Ax,objectClone:()=>Ex,omit:()=>Nx,optionalKeys:()=>pa,parsedType:()=>k,partial:()=>jx,pick:()=>Px,prefixIssues:()=>ue,primitiveTypes:()=>da,promiseAllObject:()=>Ox,propertyKeyTypes:()=>Mn,randomString:()=>Tx,required:()=>Lx,safeExtend:()=>Ux,shallowClone:()=>ua,slugify:()=>ca,stringifyPrimitive:()=>y,uint8ArrayToBase64:()=>Nf,uint8ArrayToBase64url:()=>Fx,uint8ArrayToHex:()=>Vx,unwrapMessage:()=>zn});function yx(t){return t}function kx(t){return t}function xx(t){}function Ix(t){throw new Error("Unexpected value in exhaustive check")}function Sx(t){}function jn(t){let e=Object.values(t).filter(i=>typeof i=="number");return Object.entries(t).filter(([i,n])=>e.indexOf(+i)===-1).map(([i,n])=>n)}function h(t,e="|"){return t.map(r=>y(r)).join(e)}function $t(t,e){return typeof e=="bigint"?e.toString():e}function Ot(t){return{get value(){{let r=t();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function He(t){return t==null}function Ln(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function aa(t,e){let r=t/e,i=Math.round(r),n=Number.EPSILON*Math.max(Math.abs(r),1);return Math.abs(r-i)<n?0:r-i}var Cf=Symbol("evaluating");function T(t,e,r){let i;Object.defineProperty(t,e,{get(){if(i!==Cf)return i===void 0&&(i=Cf,i=r()),i},set(n){Object.defineProperty(t,e,{value:n})},configurable:!0})}function Ex(t){return Object.create(Object.getPrototypeOf(t),Object.getOwnPropertyDescriptors(t))}function Ve(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}function ze(...t){let e={};for(let r of t){let i=Object.getOwnPropertyDescriptors(r);Object.assign(e,i)}return Object.defineProperties({},e)}function wx(t){return ze(t._zod.def)}function $x(t,e){return e?e.reduce((r,i)=>r?.[i],t):t}function Ox(t){let e=Object.keys(t),r=e.map(i=>t[i]);return Promise.all(r).then(i=>{let n={};for(let o=0;o<e.length;o++)n[e[o]]=i[o];return n})}function Tx(t=10){let e="abcdefghijklmnopqrstuvwxyz",r="";for(let i=0;i<t;i++)r+=e[Math.floor(Math.random()*e.length)];return r}function ri(t){return JSON.stringify(t)}function ca(t){return t.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}var ii="captureStackTrace"in Error?Error.captureStackTrace:(...t)=>{};function lt(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}var la=Ot(()=>{if(ct.jitless||typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let t=Function;return new t(""),!0}catch{return!1}});function Ke(t){if(lt(t)===!1)return!1;let e=t.constructor;if(e===void 0||typeof e!="function")return!0;let r=e.prototype;return!(lt(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function ua(t){return Ke(t)?{...t}:Array.isArray(t)?[...t]:t instanceof Map?new Map(t):t instanceof Set?new Set(t):t}function Ax(t){let e=0;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&e++;return e}var Rx=t=>{let e=typeof t;switch(e){case"undefined":return"undefined";case"string":return"string";case"number":return Number.isNaN(t)?"nan":"number";case"boolean":return"boolean";case"function":return"function";case"bigint":return"bigint";case"symbol":return"symbol";case"object":return Array.isArray(t)?"array":t===null?"null":t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?"promise":typeof Map<"u"&&t instanceof Map?"map":typeof Set<"u"&&t instanceof Set?"set":typeof Date<"u"&&t instanceof Date?"date":typeof File<"u"&&t instanceof File?"file":"object";default:throw new Error(`Unknown data type: ${e}`)}},Mn=new Set(["string","number","symbol"]),da=new Set(["string","number","bigint","boolean","symbol","undefined"]);function _e(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function oe(t,e,r){let i=new t._zod.constr(e??t._zod.def);return(!e||r?.parent)&&(i._zod.parent=t),i}function I(t){let e=t;if(!e)return{};if(typeof e=="string")return{error:()=>e};if(e?.message!==void 0){if(e?.error!==void 0)throw new Error("Cannot specify both `message` and `error` params");e.error=e.message}return delete e.message,typeof e.error=="string"?{...e,error:()=>e.error}:e}function Cx(t){let e;return new Proxy({},{get(r,i,n){return e??(e=t()),Reflect.get(e,i,n)},set(r,i,n,o){return e??(e=t()),Reflect.set(e,i,n,o)},has(r,i){return e??(e=t()),Reflect.has(e,i)},deleteProperty(r,i){return e??(e=t()),Reflect.deleteProperty(e,i)},ownKeys(r){return e??(e=t()),Reflect.ownKeys(e)},getOwnPropertyDescriptor(r,i){return e??(e=t()),Reflect.getOwnPropertyDescriptor(e,i)},defineProperty(r,i,n){return e??(e=t()),Reflect.defineProperty(e,i,n)}})}function y(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function pa(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}var ma={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]},fa={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function Px(t,e){let r=t._zod.def,i=r.checks;if(i&&i.length>0)throw new Error(".pick() cannot be used on object schemas containing refinements");let o=ze(t._zod.def,{get shape(){let a={};for(let c in e){if(!(c in r.shape))throw new Error(`Unrecognized key: "${c}"`);e[c]&&(a[c]=r.shape[c])}return Ve(this,"shape",a),a},checks:[]});return oe(t,o)}function Nx(t,e){let r=t._zod.def,i=r.checks;if(i&&i.length>0)throw new Error(".omit() cannot be used on object schemas containing refinements");let o=ze(t._zod.def,{get shape(){let a={...t._zod.def.shape};for(let c in e){if(!(c in r.shape))throw new Error(`Unrecognized key: "${c}"`);e[c]&&delete a[c]}return Ve(this,"shape",a),a},checks:[]});return oe(t,o)}function Dx(t,e){if(!Ke(e))throw new Error("Invalid input to extend: expected a plain object");let r=t._zod.def.checks;if(r&&r.length>0){let o=t._zod.def.shape;for(let a in e)if(Object.getOwnPropertyDescriptor(o,a)!==void 0)throw new Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}let n=ze(t._zod.def,{get shape(){let o={...t._zod.def.shape,...e};return Ve(this,"shape",o),o}});return oe(t,n)}function Ux(t,e){if(!Ke(e))throw new Error("Invalid input to safeExtend: expected a plain object");let r=ze(t._zod.def,{get shape(){let i={...t._zod.def.shape,...e};return Ve(this,"shape",i),i}});return oe(t,r)}function zx(t,e){if(t._zod.def.checks?.length)throw new Error(".merge() cannot be used on object schemas containing refinements. Use .safeExtend() instead.");let r=ze(t._zod.def,{get shape(){let i={...t._zod.def.shape,...e._zod.def.shape};return Ve(this,"shape",i),i},get catchall(){return e._zod.def.catchall},checks:e._zod.def.checks??[]});return oe(t,r)}function jx(t,e,r){let n=e._zod.def.checks;if(n&&n.length>0)throw new Error(".partial() cannot be used on object schemas containing refinements");let a=ze(e._zod.def,{get shape(){let c=e._zod.def.shape,l={...c};if(r)for(let d in r){if(!(d in c))throw new Error(`Unrecognized key: "${d}"`);r[d]&&(l[d]=t?new t({type:"optional",innerType:c[d]}):c[d])}else for(let d in c)l[d]=t?new t({type:"optional",innerType:c[d]}):c[d];return Ve(this,"shape",l),l},checks:[]});return oe(e,a)}function Lx(t,e,r){let i=ze(e._zod.def,{get shape(){let n=e._zod.def.shape,o={...n};if(r)for(let a in r){if(!(a in o))throw new Error(`Unrecognized key: "${a}"`);r[a]&&(o[a]=new t({type:"nonoptional",innerType:n[a]}))}else for(let a in n)o[a]=new t({type:"nonoptional",innerType:n[a]});return Ve(this,"shape",o),o}});return oe(e,i)}function Ge(t,e=0){if(t.aborted===!0)return!0;for(let r=e;r<t.issues.length;r++)if(t.issues[r]?.continue!==!0)return!0;return!1}function ga(t,e=0){if(t.aborted===!0)return!0;for(let r=e;r<t.issues.length;r++)if(t.issues[r]?.continue===!1)return!0;return!1}function ue(t,e){return e.map(r=>{var i;return(i=r).path??(i.path=[]),r.path.unshift(t),r})}function zn(t){return typeof t=="string"?t:t?.message}function se(t,e,r){let i=t.message?t.message:zn(t.inst?._zod.def?.error?.(t))??zn(e?.error?.(t))??zn(r.customError?.(t))??zn(r.localeError?.(t))??"Invalid input",{inst:n,continue:o,input:a,...c}=t;return c.path??(c.path=[]),c.message=i,e?.reportInput&&(c.input=a),c}function Bn(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function Fn(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function k(t){let e=typeof t;switch(e){case"number":return Number.isNaN(t)?"nan":"number";case"object":{if(t===null)return"null";if(Array.isArray(t))return"array";let r=t;if(r&&Object.getPrototypeOf(r)!==Object.prototype&&"constructor"in r&&r.constructor)return r.constructor.name}}return e}function Tt(...t){let[e,r,i]=t;return typeof e=="string"?{message:e,code:"custom",input:r,inst:i}:{...e}}function Mx(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}function Pf(t){let e=atob(t),r=new Uint8Array(e.length);for(let i=0;i<e.length;i++)r[i]=e.charCodeAt(i);return r}function Nf(t){let e="";for(let r=0;r<t.length;r++)e+=String.fromCharCode(t[r]);return btoa(e)}function Bx(t){let e=t.replace(/-/g,"+").replace(/_/g,"/"),r="=".repeat((4-e.length%4)%4);return Pf(e+r)}function Fx(t){return Nf(t).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}function Hx(t){let e=t.replace(/^0x/,"");if(e.length%2!==0)throw new Error("Invalid hex string length");let r=new Uint8Array(e.length/2);for(let i=0;i<e.length;i+=2)r[i/2]=Number.parseInt(e.slice(i,i+2),16);return r}function Vx(t){return Array.from(t).map(e=>e.toString(16).padStart(2,"0")).join("")}var sa=class{constructor(...e){}};var Df=(t,e)=>{t.name="$ZodError",Object.defineProperty(t,"_zod",{value:t._zod,enumerable:!1}),Object.defineProperty(t,"issues",{value:e,enumerable:!1}),t.message=JSON.stringify(e,$t,2),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},Hn=g("$ZodError",Df),de=g("$ZodError",Df,{Parent:Error});function Vn(t,e=r=>r.message){let r={},i=[];for(let n of t.issues)n.path.length>0?(r[n.path[0]]=r[n.path[0]]||[],r[n.path[0]].push(e(n))):i.push(e(n));return{formErrors:i,fieldErrors:r}}function Kn(t,e=r=>r.message){let r={_errors:[]},i=(n,o=[])=>{for(let a of n.issues)if(a.code==="invalid_union"&&a.errors.length)a.errors.map(c=>i({issues:c},[...o,...a.path]));else if(a.code==="invalid_key")i({issues:a.issues},[...o,...a.path]);else if(a.code==="invalid_element")i({issues:a.issues},[...o,...a.path]);else{let c=[...o,...a.path];if(c.length===0)r._errors.push(e(a));else{let l=r,d=0;for(;d<c.length;){let u=c[d];d===c.length-1?(l[u]=l[u]||{_errors:[]},l[u]._errors.push(e(a))):l[u]=l[u]||{_errors:[]},l=l[u],d++}}}};return i(t),r}function ha(t,e=r=>r.message){let r={errors:[]},i=(n,o=[])=>{var a,c;for(let l of n.issues)if(l.code==="invalid_union"&&l.errors.length)l.errors.map(d=>i({issues:d},[...o,...l.path]));else if(l.code==="invalid_key")i({issues:l.issues},[...o,...l.path]);else if(l.code==="invalid_element")i({issues:l.issues},[...o,...l.path]);else{let d=[...o,...l.path];if(d.length===0){r.errors.push(e(l));continue}let u=r,p=0;for(;p<d.length;){let m=d[p],f=p===d.length-1;typeof m=="string"?(u.properties??(u.properties={}),(a=u.properties)[m]??(a[m]={errors:[]}),u=u.properties[m]):(u.items??(u.items=[]),(c=u.items)[m]??(c[m]={errors:[]}),u=u.items[m]),f&&u.errors.push(e(l)),p++}}};return i(t),r}function Uf(t){let e=[],r=t.map(i=>typeof i=="object"?i.key:i);for(let i of r)typeof i=="number"?e.push(`[${i}]`):typeof i=="symbol"?e.push(`[${JSON.stringify(String(i))}]`):/[^\w$]/.test(i)?e.push(`[${JSON.stringify(i)}]`):(e.length&&e.push("."),e.push(i));return e.join("")}function ba(t){let e=[],r=[...t.issues].sort((i,n)=>(i.path??[]).length-(n.path??[]).length);for(let i of r)e.push(`\u2716 ${i.message}`),i.path?.length&&e.push(` \u2192 at ${Uf(i.path)}`);return e.join(`
35
+ `)}var At=t=>(e,r,i,n)=>{let o=i?{...i,async:!1}:{async:!1},a=e._zod.run({value:r,issues:[]},o);if(a instanceof Promise)throw new xe;if(a.issues.length){let c=new(n?.Err??t)(a.issues.map(l=>se(l,o,Y())));throw ii(c,n?.callee),c}return a.value},oi=At(de),Rt=t=>async(e,r,i,n)=>{let o=i?{...i,async:!0}:{async:!0},a=e._zod.run({value:r,issues:[]},o);if(a instanceof Promise&&(a=await a),a.issues.length){let c=new(n?.Err??t)(a.issues.map(l=>se(l,o,Y())));throw ii(c,n?.callee),c}return a.value},si=Rt(de),Ct=t=>(e,r,i)=>{let n=i?{...i,async:!1}:{async:!1},o=e._zod.run({value:r,issues:[]},n);if(o instanceof Promise)throw new xe;return o.issues.length?{success:!1,error:new(t??Hn)(o.issues.map(a=>se(a,n,Y())))}:{success:!0,data:o.value}},va=Ct(de),Pt=t=>async(e,r,i)=>{let n=i?{...i,async:!0}:{async:!0},o=e._zod.run({value:r,issues:[]},n);return o instanceof Promise&&(o=await o),o.issues.length?{success:!1,error:new t(o.issues.map(a=>se(a,n,Y())))}:{success:!0,data:o.value}},_a=Pt(de),ai=t=>(e,r,i)=>{let n=i?{...i,direction:"backward"}:{direction:"backward"};return At(t)(e,r,n)},Gx=ai(de),ci=t=>(e,r,i)=>At(t)(e,r,i),Zx=ci(de),li=t=>async(e,r,i)=>{let n=i?{...i,direction:"backward"}:{direction:"backward"};return Rt(t)(e,r,n)},Wx=li(de),ui=t=>async(e,r,i)=>Rt(t)(e,r,i),qx=ui(de),di=t=>(e,r,i)=>{let n=i?{...i,direction:"backward"}:{direction:"backward"};return Ct(t)(e,r,n)},Jx=di(de),pi=t=>(e,r,i)=>Ct(t)(e,r,i),Yx=pi(de),mi=t=>async(e,r,i)=>{let n=i?{...i,direction:"backward"}:{direction:"backward"};return Pt(t)(e,r,n)},Xx=mi(de),fi=t=>async(e,r,i)=>Pt(t)(e,r,i),Qx=fi(de);var fe={};De(fe,{base64:()=>Da,base64url:()=>gi,bigint:()=>Fa,boolean:()=>Va,browserEmail:()=>aI,cidrv4:()=>Pa,cidrv6:()=>Na,cuid:()=>ya,cuid2:()=>ka,date:()=>ja,datetime:()=>Ma,domain:()=>uI,duration:()=>wa,e164:()=>za,email:()=>Oa,emoji:()=>Ta,extendedDuration:()=>eI,guid:()=>$a,hex:()=>dI,hostname:()=>lI,html5Email:()=>iI,httpProtocol:()=>Ua,idnEmail:()=>sI,integer:()=>Ha,ipv4:()=>Aa,ipv6:()=>Ra,ksuid:()=>Sa,lowercase:()=>Za,mac:()=>Ca,md5_base64:()=>mI,md5_base64url:()=>fI,md5_hex:()=>pI,nanoid:()=>Ea,null:()=>Ka,number:()=>hi,rfc5322Email:()=>oI,sha1_base64:()=>hI,sha1_base64url:()=>bI,sha1_hex:()=>gI,sha256_base64:()=>_I,sha256_base64url:()=>yI,sha256_hex:()=>vI,sha384_base64:()=>xI,sha384_base64url:()=>II,sha384_hex:()=>kI,sha512_base64:()=>EI,sha512_base64url:()=>wI,sha512_hex:()=>SI,string:()=>Ba,time:()=>La,ulid:()=>xa,undefined:()=>Ga,unicodeEmail:()=>zf,uppercase:()=>Wa,uuid:()=>ut,uuid4:()=>tI,uuid6:()=>nI,uuid7:()=>rI,xid:()=>Ia});var ya=/^[cC][0-9a-z]{6,}$/,ka=/^[0-9a-z]+$/,xa=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Ia=/^[0-9a-vA-V]{20}$/,Sa=/^[A-Za-z0-9]{27}$/,Ea=/^[a-zA-Z0-9_-]{21}$/,wa=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,eI=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,$a=/^([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})$/,ut=t=>t?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${t}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([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)$/,tI=ut(4),nI=ut(6),rI=ut(7),Oa=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,iI=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,oI=/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/,zf=/^[^\s@"]{1,64}@[^\s@]{1,255}$/u,sI=zf,aI=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,cI="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function Ta(){return new RegExp(cI,"u")}var Aa=/^(?:(?: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])$/,Ra=/^(([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}|:))$/,Ca=t=>{let e=_e(t??":");return new RegExp(`^(?:[0-9A-F]{2}${e}){5}[0-9A-F]{2}$|^(?:[0-9a-f]{2}${e}){5}[0-9a-f]{2}$`)},Pa=/^((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])$/,Na=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,Da=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,gi=/^[A-Za-z0-9_-]*$/,lI=/^(?=.{1,253}\.?$)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[-0-9a-zA-Z]{0,61}[0-9a-zA-Z])?)*\.?$/,uI=/^([a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,}$/,Ua=/^https?$/,za=/^\+[1-9]\d{6,14}$/,jf="(?:(?:\\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])))",ja=new RegExp(`^${jf}$`);function Lf(t){let e="(?:[01]\\d|2[0-3]):[0-5]\\d";return typeof t.precision=="number"?t.precision===-1?`${e}`:t.precision===0?`${e}:[0-5]\\d`:`${e}:[0-5]\\d\\.\\d{${t.precision}}`:`${e}(?::[0-5]\\d(?:\\.\\d+)?)?`}function La(t){return new RegExp(`^${Lf(t)}$`)}function Ma(t){let e=Lf({precision:t.precision}),r=["Z"];t.local&&r.push(""),t.offset&&r.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");let i=`${e}(?:${r.join("|")})`;return new RegExp(`^${jf}T(?:${i})$`)}var Ba=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)},Fa=/^-?\d+n?$/,Ha=/^-?\d+$/,hi=/^-?\d+(?:\.\d+)?$/,Va=/^(?:true|false)$/i,Ka=/^null$/i;var Ga=/^undefined$/i;var Za=/^[^A-Z]*$/,Wa=/^[^a-z]*$/,dI=/^[0-9a-fA-F]*$/;function Gn(t,e){return new RegExp(`^[A-Za-z0-9+/]{${t}}${e}$`)}function Zn(t){return new RegExp(`^[A-Za-z0-9_-]{${t}}$`)}var pI=/^[0-9a-fA-F]{32}$/,mI=Gn(22,"=="),fI=Zn(22),gI=/^[0-9a-fA-F]{40}$/,hI=Gn(27,"="),bI=Zn(27),vI=/^[0-9a-fA-F]{64}$/,_I=Gn(43,"="),yI=Zn(43),kI=/^[0-9a-fA-F]{96}$/,xI=Gn(64,""),II=Zn(64),SI=/^[0-9a-fA-F]{128}$/,EI=Gn(86,"=="),wI=Zn(86);var K=g("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),Bf={number:"number",bigint:"bigint",object:"date"},bi=g("$ZodCheckLessThan",(t,e)=>{K.init(t,e);let r=Bf[typeof e.value];t._zod.onattach.push(i=>{let n=i._zod.bag,o=(e.inclusive?n.maximum:n.exclusiveMaximum)??Number.POSITIVE_INFINITY;e.value<o&&(e.inclusive?n.maximum=e.value:n.exclusiveMaximum=e.value)}),t._zod.check=i=>{(e.inclusive?i.value<=e.value:i.value<e.value)||i.issues.push({origin:r,code:"too_big",maximum:typeof e.value=="object"?e.value.getTime():e.value,input:i.value,inclusive:e.inclusive,inst:t,continue:!e.abort})}}),vi=g("$ZodCheckGreaterThan",(t,e)=>{K.init(t,e);let r=Bf[typeof e.value];t._zod.onattach.push(i=>{let n=i._zod.bag,o=(e.inclusive?n.minimum:n.exclusiveMinimum)??Number.NEGATIVE_INFINITY;e.value>o&&(e.inclusive?n.minimum=e.value:n.exclusiveMinimum=e.value)}),t._zod.check=i=>{(e.inclusive?i.value>=e.value:i.value>e.value)||i.issues.push({origin:r,code:"too_small",minimum:typeof e.value=="object"?e.value.getTime():e.value,input:i.value,inclusive:e.inclusive,inst:t,continue:!e.abort})}}),qa=g("$ZodCheckMultipleOf",(t,e)=>{K.init(t,e),t._zod.onattach.push(r=>{var i;(i=r._zod.bag).multipleOf??(i.multipleOf=e.value)}),t._zod.check=r=>{if(typeof r.value!=typeof e.value)throw new Error("Cannot mix number and bigint in multiple_of check.");(typeof r.value=="bigint"?r.value%e.value===BigInt(0):aa(r.value,e.value)===0)||r.issues.push({origin:typeof r.value,code:"not_multiple_of",divisor:e.value,input:r.value,inst:t,continue:!e.abort})}}),Ja=g("$ZodCheckNumberFormat",(t,e)=>{K.init(t,e),e.format=e.format||"float64";let r=e.format?.includes("int"),i=r?"int":"number",[n,o]=ma[e.format];t._zod.onattach.push(a=>{let c=a._zod.bag;c.format=e.format,c.minimum=n,c.maximum=o,r&&(c.pattern=Ha)}),t._zod.check=a=>{let c=a.value;if(r){if(!Number.isInteger(c)){a.issues.push({expected:i,format:e.format,code:"invalid_type",continue:!1,input:c,inst:t});return}if(!Number.isSafeInteger(c)){c>0?a.issues.push({input:c,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:i,inclusive:!0,continue:!e.abort}):a.issues.push({input:c,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:i,inclusive:!0,continue:!e.abort});return}}c<n&&a.issues.push({origin:"number",input:c,code:"too_small",minimum:n,inclusive:!0,inst:t,continue:!e.abort}),c>o&&a.issues.push({origin:"number",input:c,code:"too_big",maximum:o,inclusive:!0,inst:t,continue:!e.abort})}}),Ya=g("$ZodCheckBigIntFormat",(t,e)=>{K.init(t,e);let[r,i]=fa[e.format];t._zod.onattach.push(n=>{let o=n._zod.bag;o.format=e.format,o.minimum=r,o.maximum=i}),t._zod.check=n=>{let o=n.value;o<r&&n.issues.push({origin:"bigint",input:o,code:"too_small",minimum:r,inclusive:!0,inst:t,continue:!e.abort}),o>i&&n.issues.push({origin:"bigint",input:o,code:"too_big",maximum:i,inclusive:!0,inst:t,continue:!e.abort})}}),Xa=g("$ZodCheckMaxSize",(t,e)=>{var r;K.init(t,e),(r=t._zod.def).when??(r.when=i=>{let n=i.value;return!He(n)&&n.size!==void 0}),t._zod.onattach.push(i=>{let n=i._zod.bag.maximum??Number.POSITIVE_INFINITY;e.maximum<n&&(i._zod.bag.maximum=e.maximum)}),t._zod.check=i=>{let n=i.value;n.size<=e.maximum||i.issues.push({origin:Bn(n),code:"too_big",maximum:e.maximum,inclusive:!0,input:n,inst:t,continue:!e.abort})}}),Qa=g("$ZodCheckMinSize",(t,e)=>{var r;K.init(t,e),(r=t._zod.def).when??(r.when=i=>{let n=i.value;return!He(n)&&n.size!==void 0}),t._zod.onattach.push(i=>{let n=i._zod.bag.minimum??Number.NEGATIVE_INFINITY;e.minimum>n&&(i._zod.bag.minimum=e.minimum)}),t._zod.check=i=>{let n=i.value;n.size>=e.minimum||i.issues.push({origin:Bn(n),code:"too_small",minimum:e.minimum,inclusive:!0,input:n,inst:t,continue:!e.abort})}}),ec=g("$ZodCheckSizeEquals",(t,e)=>{var r;K.init(t,e),(r=t._zod.def).when??(r.when=i=>{let n=i.value;return!He(n)&&n.size!==void 0}),t._zod.onattach.push(i=>{let n=i._zod.bag;n.minimum=e.size,n.maximum=e.size,n.size=e.size}),t._zod.check=i=>{let n=i.value,o=n.size;if(o===e.size)return;let a=o>e.size;i.issues.push({origin:Bn(n),...a?{code:"too_big",maximum:e.size}:{code:"too_small",minimum:e.size},inclusive:!0,exact:!0,input:i.value,inst:t,continue:!e.abort})}}),tc=g("$ZodCheckMaxLength",(t,e)=>{var r;K.init(t,e),(r=t._zod.def).when??(r.when=i=>{let n=i.value;return!He(n)&&n.length!==void 0}),t._zod.onattach.push(i=>{let n=i._zod.bag.maximum??Number.POSITIVE_INFINITY;e.maximum<n&&(i._zod.bag.maximum=e.maximum)}),t._zod.check=i=>{let n=i.value;if(n.length<=e.maximum)return;let a=Fn(n);i.issues.push({origin:a,code:"too_big",maximum:e.maximum,inclusive:!0,input:n,inst:t,continue:!e.abort})}}),nc=g("$ZodCheckMinLength",(t,e)=>{var r;K.init(t,e),(r=t._zod.def).when??(r.when=i=>{let n=i.value;return!He(n)&&n.length!==void 0}),t._zod.onattach.push(i=>{let n=i._zod.bag.minimum??Number.NEGATIVE_INFINITY;e.minimum>n&&(i._zod.bag.minimum=e.minimum)}),t._zod.check=i=>{let n=i.value;if(n.length>=e.minimum)return;let a=Fn(n);i.issues.push({origin:a,code:"too_small",minimum:e.minimum,inclusive:!0,input:n,inst:t,continue:!e.abort})}}),rc=g("$ZodCheckLengthEquals",(t,e)=>{var r;K.init(t,e),(r=t._zod.def).when??(r.when=i=>{let n=i.value;return!He(n)&&n.length!==void 0}),t._zod.onattach.push(i=>{let n=i._zod.bag;n.minimum=e.length,n.maximum=e.length,n.length=e.length}),t._zod.check=i=>{let n=i.value,o=n.length;if(o===e.length)return;let a=Fn(n),c=o>e.length;i.issues.push({origin:a,...c?{code:"too_big",maximum:e.length}:{code:"too_small",minimum:e.length},inclusive:!0,exact:!0,input:i.value,inst:t,continue:!e.abort})}}),Nt=g("$ZodCheckStringFormat",(t,e)=>{var r,i;K.init(t,e),t._zod.onattach.push(n=>{let o=n._zod.bag;o.format=e.format,e.pattern&&(o.patterns??(o.patterns=new Set),o.patterns.add(e.pattern))}),e.pattern?(r=t._zod).check??(r.check=n=>{e.pattern.lastIndex=0,!e.pattern.test(n.value)&&n.issues.push({origin:"string",code:"invalid_format",format:e.format,input:n.value,...e.pattern?{pattern:e.pattern.toString()}:{},inst:t,continue:!e.abort})}):(i=t._zod).check??(i.check=()=>{})}),ic=g("$ZodCheckRegex",(t,e)=>{Nt.init(t,e),t._zod.check=r=>{e.pattern.lastIndex=0,!e.pattern.test(r.value)&&r.issues.push({origin:"string",code:"invalid_format",format:"regex",input:r.value,pattern:e.pattern.toString(),inst:t,continue:!e.abort})}}),oc=g("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=Za),Nt.init(t,e)}),sc=g("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=Wa),Nt.init(t,e)}),ac=g("$ZodCheckIncludes",(t,e)=>{K.init(t,e);let r=_e(e.includes),i=new RegExp(typeof e.position=="number"?`^.{${e.position}}${r}`:r);e.pattern=i,t._zod.onattach.push(n=>{let o=n._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(i)}),t._zod.check=n=>{n.value.includes(e.includes,e.position)||n.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:e.includes,input:n.value,inst:t,continue:!e.abort})}}),cc=g("$ZodCheckStartsWith",(t,e)=>{K.init(t,e);let r=new RegExp(`^${_e(e.prefix)}.*`);e.pattern??(e.pattern=r),t._zod.onattach.push(i=>{let n=i._zod.bag;n.patterns??(n.patterns=new Set),n.patterns.add(r)}),t._zod.check=i=>{i.value.startsWith(e.prefix)||i.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:e.prefix,input:i.value,inst:t,continue:!e.abort})}}),lc=g("$ZodCheckEndsWith",(t,e)=>{K.init(t,e);let r=new RegExp(`.*${_e(e.suffix)}$`);e.pattern??(e.pattern=r),t._zod.onattach.push(i=>{let n=i._zod.bag;n.patterns??(n.patterns=new Set),n.patterns.add(r)}),t._zod.check=i=>{i.value.endsWith(e.suffix)||i.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:e.suffix,input:i.value,inst:t,continue:!e.abort})}});function Mf(t,e,r){t.issues.length&&e.issues.push(...ue(r,t.issues))}var uc=g("$ZodCheckProperty",(t,e)=>{K.init(t,e),t._zod.check=r=>{let i=e.schema._zod.run({value:r.value[e.property],issues:[]},{});if(i instanceof Promise)return i.then(n=>Mf(n,r,e.property));Mf(i,r,e.property)}}),dc=g("$ZodCheckMimeType",(t,e)=>{K.init(t,e);let r=new Set(e.mime);t._zod.onattach.push(i=>{i._zod.bag.mime=e.mime}),t._zod.check=i=>{r.has(i.value.type)||i.issues.push({code:"invalid_value",values:e.mime,input:i.value.type,inst:t,continue:!e.abort})}}),pc=g("$ZodCheckOverwrite",(t,e)=>{K.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}});var Wn=class{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),this.indent-=1}write(e){if(typeof e=="function"){e(this,{execution:"sync"}),e(this,{execution:"async"});return}let i=e.split(`
35
36
  `).filter(a=>a),n=Math.min(...i.map(a=>a.length-a.trimStart().length)),o=i.map(a=>a.slice(n)).map(a=>" ".repeat(this.indent*2)+a);for(let a of o)this.content.push(a)}compile(){let e=Function,r=this?.args,n=[...(this?.content??[""]).map(o=>` ${o}`)];return new e(...r,n.join(`
36
- `))}};var Ua={major:4,minor:4,patch:3};var w=f("$ZodType",(t,e)=>{var r;t??(t={}),t._zod.def=e,t._zod.bag=t._zod.bag||{},t._zod.version=Ua;let i=[...t._zod.def.checks??[]];t._zod.traits.has("$ZodCheck")&&i.unshift(t);for(let n of i)for(let o of n._zod.onattach)o(t);if(i.length===0)(r=t._zod).deferred??(r.deferred=[]),t._zod.deferred?.push(()=>{t._zod.run=t._zod.parse});else{let n=(a,c,l)=>{let d=Me(a),u;for(let p of c){if(p._zod.def.when){if(js(a)||!p._zod.def.when(a))continue}else if(d)continue;let m=a.issues.length,g=p._zod.check(a);if(g instanceof Promise&&l?.async===!1)throw new _e;if(u||g instanceof Promise)u=(u??Promise.resolve()).then(async()=>{await g,a.issues.length!==m&&(d||(d=Me(a,m)))});else{if(a.issues.length===m)continue;d||(d=Me(a,m))}}return u?u.then(()=>a):a},o=(a,c,l)=>{if(Me(a))return a.aborted=!0,a;let d=n(c,i,l);if(d instanceof Promise){if(l.async===!1)throw new _e;return d.then(u=>t._zod.parse(u,l))}return t._zod.parse(d,l)};t._zod.run=(a,c)=>{if(c.skipChecks)return t._zod.parse(a,c);if(c.direction==="backward"){let d=t._zod.parse({value:a.value,issues:[]},{...c,skipChecks:!0});return d instanceof Promise?d.then(u=>o(u,a,c)):o(d,a,c)}let l=t._zod.parse(a,c);if(l instanceof Promise){if(c.async===!1)throw new _e;return l.then(d=>n(d,i,c))}return n(l,i,c)}}O(t,"~standard",()=>({validate:n=>{try{let o=Fs(t,n);return o.success?{value:o.data}:{issues:o.error?.issues}}catch{return Bs(t,n).then(a=>a.success?{value:a.data}:{issues:a.error?.issues})}},vendor:"zod",version:1}))}),nt=f("$ZodString",(t,e)=>{w.init(t,e),t._zod.pattern=[...t?._zod.bag?.patterns??[]].pop()??ua(t._zod.bag),t._zod.parse=(r,i)=>{if(e.coerce)try{r.value=String(r.value)}catch{}return typeof r.value=="string"||r.issues.push({expected:"string",code:"invalid_type",input:r.value,inst:t}),r}}),M=f("$ZodStringFormat",(t,e)=>{It.init(t,e),nt.init(t,e)}),ja=f("$ZodGUID",(t,e)=>{e.pattern??(e.pattern=Js),M.init(t,e)}),La=f("$ZodUUID",(t,e)=>{if(e.version){let i={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[e.version];if(i===void 0)throw new Error(`Invalid UUID version: "${e.version}"`);e.pattern??(e.pattern=tt(i))}else e.pattern??(e.pattern=tt());M.init(t,e)}),Ma=f("$ZodEmail",(t,e)=>{e.pattern??(e.pattern=Ys),M.init(t,e)}),Fa=f("$ZodURL",(t,e)=>{M.init(t,e),t._zod.check=r=>{try{let i=r.value.trim();if(!e.normalize&&e.protocol?.source===oa.source&&!/^https?:\/\//i.test(i)){r.issues.push({code:"invalid_format",format:"url",note:"Invalid URL format",input:r.value,inst:t,continue:!e.abort});return}let n=new URL(i);e.hostname&&(e.hostname.lastIndex=0,e.hostname.test(n.hostname)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:e.hostname.source,input:r.value,inst:t,continue:!e.abort})),e.protocol&&(e.protocol.lastIndex=0,e.protocol.test(n.protocol.endsWith(":")?n.protocol.slice(0,-1):n.protocol)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:e.protocol.source,input:r.value,inst:t,continue:!e.abort})),e.normalize?r.value=n.href:r.value=i;return}catch{r.issues.push({code:"invalid_format",format:"url",input:r.value,inst:t,continue:!e.abort})}}}),Ba=f("$ZodEmoji",(t,e)=>{e.pattern??(e.pattern=Xs()),M.init(t,e)}),Ha=f("$ZodNanoID",(t,e)=>{e.pattern??(e.pattern=Ws),M.init(t,e)}),Va=f("$ZodCUID",(t,e)=>{e.pattern??(e.pattern=Hs),M.init(t,e)}),Za=f("$ZodCUID2",(t,e)=>{e.pattern??(e.pattern=Vs),M.init(t,e)}),Ka=f("$ZodULID",(t,e)=>{e.pattern??(e.pattern=Zs),M.init(t,e)}),Ga=f("$ZodXID",(t,e)=>{e.pattern??(e.pattern=Ks),M.init(t,e)}),Wa=f("$ZodKSUID",(t,e)=>{e.pattern??(e.pattern=Gs),M.init(t,e)}),qa=f("$ZodISODateTime",(t,e)=>{e.pattern??(e.pattern=la(e)),M.init(t,e)}),Ja=f("$ZodISODate",(t,e)=>{e.pattern??(e.pattern=aa),M.init(t,e)}),Ya=f("$ZodISOTime",(t,e)=>{e.pattern??(e.pattern=ca(e)),M.init(t,e)}),Xa=f("$ZodISODuration",(t,e)=>{e.pattern??(e.pattern=qs),M.init(t,e)}),Qa=f("$ZodIPv4",(t,e)=>{e.pattern??(e.pattern=Qs),M.init(t,e),t._zod.bag.format="ipv4"}),ec=f("$ZodIPv6",(t,e)=>{e.pattern??(e.pattern=ea),M.init(t,e),t._zod.bag.format="ipv6",t._zod.check=r=>{try{new URL(`http://[${r.value}]`)}catch{r.issues.push({code:"invalid_format",format:"ipv6",input:r.value,inst:t,continue:!e.abort})}}}),tc=f("$ZodMAC",(t,e)=>{e.pattern??(e.pattern=ta(e.delimiter)),M.init(t,e),t._zod.bag.format="mac"}),nc=f("$ZodCIDRv4",(t,e)=>{e.pattern??(e.pattern=na),M.init(t,e)}),rc=f("$ZodCIDRv6",(t,e)=>{e.pattern??(e.pattern=ra),M.init(t,e),t._zod.check=r=>{let i=r.value.split("/");try{if(i.length!==2)throw new Error;let[n,o]=i;if(!o)throw new Error;let a=Number(o);if(`${a}`!==o)throw new Error;if(a<0||a>128)throw new Error;new URL(`http://[${n}]`)}catch{r.issues.push({code:"invalid_format",format:"cidrv6",input:r.value,inst:t,continue:!e.abort})}}});function ic(t){if(t==="")return!0;if(/\s/.test(t)||t.length%4!==0)return!1;try{return atob(t),!0}catch{return!1}}var oc=f("$ZodBase64",(t,e)=>{e.pattern??(e.pattern=ia),M.init(t,e),t._zod.bag.contentEncoding="base64",t._zod.check=r=>{ic(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:t,continue:!e.abort})}});function kf(t){if(!qr.test(t))return!1;let e=t.replace(/[-_]/g,i=>i==="-"?"+":"/"),r=e.padEnd(Math.ceil(e.length/4)*4,"=");return ic(r)}var sc=f("$ZodBase64URL",(t,e)=>{e.pattern??(e.pattern=qr),M.init(t,e),t._zod.bag.contentEncoding="base64url",t._zod.check=r=>{kf(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:t,continue:!e.abort})}}),ac=f("$ZodE164",(t,e)=>{e.pattern??(e.pattern=sa),M.init(t,e)});function xf(t,e=null){try{let r=t.split(".");if(r.length!==3)return!1;let[i]=r;if(!i)return!1;let n=JSON.parse(atob(i));return!("typ"in n&&n?.typ!=="JWT"||!n.alg||e&&(!("alg"in n)||n.alg!==e))}catch{return!1}}var cc=f("$ZodJWT",(t,e)=>{M.init(t,e),t._zod.check=r=>{xf(r.value,e.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:t,continue:!e.abort})}}),lc=f("$ZodCustomStringFormat",(t,e)=>{M.init(t,e),t._zod.check=r=>{e.fn(r.value)||r.issues.push({code:"invalid_format",format:e.format,input:r.value,inst:t,continue:!e.abort})}}),ri=f("$ZodNumber",(t,e)=>{w.init(t,e),t._zod.pattern=t._zod.bag.pattern??Jr,t._zod.parse=(r,i)=>{if(e.coerce)try{r.value=Number(r.value)}catch{}let n=r.value;if(typeof n=="number"&&!Number.isNaN(n)&&Number.isFinite(n))return r;let o=typeof n=="number"?Number.isNaN(n)?"NaN":Number.isFinite(n)?void 0:"Infinity":void 0;return r.issues.push({expected:"number",code:"invalid_type",input:n,inst:t,...o?{received:o}:{}}),r}}),uc=f("$ZodNumberFormat",(t,e)=>{_a.init(t,e),ri.init(t,e)}),Nn=f("$ZodBoolean",(t,e)=>{w.init(t,e),t._zod.pattern=ma,t._zod.parse=(r,i)=>{if(e.coerce)try{r.value=!!r.value}catch{}let n=r.value;return typeof n=="boolean"||r.issues.push({expected:"boolean",code:"invalid_type",input:n,inst:t}),r}}),ii=f("$ZodBigInt",(t,e)=>{w.init(t,e),t._zod.pattern=da,t._zod.parse=(r,i)=>{if(e.coerce)try{r.value=BigInt(r.value)}catch{}return typeof r.value=="bigint"||r.issues.push({expected:"bigint",code:"invalid_type",input:r.value,inst:t}),r}}),dc=f("$ZodBigIntFormat",(t,e)=>{ya.init(t,e),ii.init(t,e)}),pc=f("$ZodSymbol",(t,e)=>{w.init(t,e),t._zod.parse=(r,i)=>{let n=r.value;return typeof n=="symbol"||r.issues.push({expected:"symbol",code:"invalid_type",input:n,inst:t}),r}}),mc=f("$ZodUndefined",(t,e)=>{w.init(t,e),t._zod.pattern=ga,t._zod.values=new Set([void 0]),t._zod.parse=(r,i)=>{let n=r.value;return typeof n>"u"||r.issues.push({expected:"undefined",code:"invalid_type",input:n,inst:t}),r}}),fc=f("$ZodNull",(t,e)=>{w.init(t,e),t._zod.pattern=fa,t._zod.values=new Set([null]),t._zod.parse=(r,i)=>{let n=r.value;return n===null||r.issues.push({expected:"null",code:"invalid_type",input:n,inst:t}),r}}),gc=f("$ZodAny",(t,e)=>{w.init(t,e),t._zod.parse=r=>r}),hc=f("$ZodUnknown",(t,e)=>{w.init(t,e),t._zod.parse=r=>r}),bc=f("$ZodNever",(t,e)=>{w.init(t,e),t._zod.parse=(r,i)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:t}),r)}),vc=f("$ZodVoid",(t,e)=>{w.init(t,e),t._zod.parse=(r,i)=>{let n=r.value;return typeof n>"u"||r.issues.push({expected:"void",code:"invalid_type",input:n,inst:t}),r}}),_c=f("$ZodDate",(t,e)=>{w.init(t,e),t._zod.parse=(r,i)=>{if(e.coerce)try{r.value=new Date(r.value)}catch{}let n=r.value,o=n instanceof Date;return o&&!Number.isNaN(n.getTime())||r.issues.push({expected:"date",code:"invalid_type",input:n,...o?{received:"Invalid Date"}:{},inst:t}),r}});function af(t,e,r){t.issues.length&&e.issues.push(...ae(r,t.issues)),e.value[r]=t.value}var yc=f("$ZodArray",(t,e)=>{w.init(t,e),t._zod.parse=(r,i)=>{let n=r.value;if(!Array.isArray(n))return r.issues.push({expected:"array",code:"invalid_type",input:n,inst:t}),r;r.value=Array(n.length);let o=[];for(let a=0;a<n.length;a++){let c=n[a],l=e.element._zod.run({value:c,issues:[]},i);l instanceof Promise?o.push(l.then(d=>af(d,r,a))):af(l,r,a)}return o.length?Promise.all(o).then(()=>r):r}});function ni(t,e,r,i,n,o){let a=r in i;if(t.issues.length){if(n&&o&&!a)return;e.issues.push(...ae(r,t.issues))}if(!a&&!n){t.issues.length||e.issues.push({code:"invalid_type",expected:"nonoptional",input:void 0,path:[r]});return}t.value===void 0?a&&(e.value[r]=void 0):e.value[r]=t.value}function If(t){let e=Object.keys(t.shape);for(let i of e)if(!t.shape?.[i]?._zod?.traits?.has("$ZodType"))throw new Error(`Invalid element at key "${i}": expected a Zod schema`);let r=Ds(t.shape);return{...t,keys:e,keySet:new Set(e),numKeys:e.length,optionalKeys:new Set(r)}}function Sf(t,e,r,i,n,o){let a=[],c=n.keySet,l=n.catchall._zod,d=l.def.type,u=l.optin==="optional",p=l.optout==="optional";for(let m in e){if(m==="__proto__"||c.has(m))continue;if(d==="never"){a.push(m);continue}let g=l.run({value:e[m],issues:[]},i);g instanceof Promise?t.push(g.then(k=>ni(k,r,m,e,u,p))):ni(g,r,m,e,u,p)}return a.length&&r.issues.push({code:"unrecognized_keys",keys:a,input:e,inst:o}),t.length?Promise.all(t).then(()=>r):r}var Ef=f("$ZodObject",(t,e)=>{if(w.init(t,e),!Object.getOwnPropertyDescriptor(e,"shape")?.get){let c=e.shape;Object.defineProperty(e,"shape",{get:()=>{let l={...c};return Object.defineProperty(e,"shape",{value:l}),l}})}let i=bt(()=>If(e));O(t._zod,"propValues",()=>{let c=e.shape,l={};for(let d in c){let u=c[d]._zod;if(u.values){l[d]??(l[d]=new Set);for(let p of u.values)l[d].add(p)}}return l});let n=et,o=e.catchall,a;t._zod.parse=(c,l)=>{a??(a=i.value);let d=c.value;if(!n(d))return c.issues.push({expected:"object",code:"invalid_type",input:d,inst:t}),c;c.value={};let u=[],p=a.shape;for(let m of a.keys){let g=p[m],k=g._zod.optin==="optional",E=g._zod.optout==="optional",S=g._zod.run({value:d[m],issues:[]},l);S instanceof Promise?u.push(S.then(R=>ni(R,c,m,d,k,E))):ni(S,c,m,d,k,E)}return o?Sf(u,d,c,l,i.value,t):u.length?Promise.all(u).then(()=>c):c}}),kc=f("$ZodObjectJIT",(t,e)=>{Ef.init(t,e);let r=t._zod.parse,i=bt(()=>If(e)),n=m=>{let g=new Pn(["shape","payload","ctx"]),k=i.value,E=W=>{let U=zr(W);return`shape[${U}]._zod.run({ value: input[${U}], issues: [] }, ctx)`};g.write("const input = payload.value;");let S=Object.create(null),R=0;for(let W of k.keys)S[W]=`key_${R++}`;g.write("const newResult = {};");for(let W of k.keys){let U=S[W],J=zr(W),rm=m[W],im=rm?._zod?.optin==="optional",hy=rm?._zod?.optout==="optional";g.write(`const ${U} = ${E(W)};`),im&&hy?g.write(`
37
- if (${U}.issues.length) {
38
- if (${J} in input) {
39
- payload.issues = payload.issues.concat(${U}.issues.map(iss => ({
37
+ `))}};var mc={major:4,minor:4,patch:3};var $=g("$ZodType",(t,e)=>{var r;t??(t={}),t._zod.def=e,t._zod.bag=t._zod.bag||{},t._zod.version=mc;let i=[...t._zod.def.checks??[]];t._zod.traits.has("$ZodCheck")&&i.unshift(t);for(let n of i)for(let o of n._zod.onattach)o(t);if(i.length===0)(r=t._zod).deferred??(r.deferred=[]),t._zod.deferred?.push(()=>{t._zod.run=t._zod.parse});else{let n=(a,c,l)=>{let d=Ge(a),u;for(let p of c){if(p._zod.def.when){if(ga(a)||!p._zod.def.when(a))continue}else if(d)continue;let m=a.issues.length,f=p._zod.check(a);if(f instanceof Promise&&l?.async===!1)throw new xe;if(u||f instanceof Promise)u=(u??Promise.resolve()).then(async()=>{await f,a.issues.length!==m&&(d||(d=Ge(a,m)))});else{if(a.issues.length===m)continue;d||(d=Ge(a,m))}}return u?u.then(()=>a):a},o=(a,c,l)=>{if(Ge(a))return a.aborted=!0,a;let d=n(c,i,l);if(d instanceof Promise){if(l.async===!1)throw new xe;return d.then(u=>t._zod.parse(u,l))}return t._zod.parse(d,l)};t._zod.run=(a,c)=>{if(c.skipChecks)return t._zod.parse(a,c);if(c.direction==="backward"){let d=t._zod.parse({value:a.value,issues:[]},{...c,skipChecks:!0});return d instanceof Promise?d.then(u=>o(u,a,c)):o(d,a,c)}let l=t._zod.parse(a,c);if(l instanceof Promise){if(c.async===!1)throw new xe;return l.then(d=>n(d,i,c))}return n(l,i,c)}}T(t,"~standard",()=>({validate:n=>{try{let o=va(t,n);return o.success?{value:o.data}:{issues:o.error?.issues}}catch{return _a(t,n).then(a=>a.success?{value:a.data}:{issues:a.error?.issues})}},vendor:"zod",version:1}))}),dt=g("$ZodString",(t,e)=>{$.init(t,e),t._zod.pattern=[...t?._zod.bag?.patterns??[]].pop()??Ba(t._zod.bag),t._zod.parse=(r,i)=>{if(e.coerce)try{r.value=String(r.value)}catch{}return typeof r.value=="string"||r.issues.push({expected:"string",code:"invalid_type",input:r.value,inst:t}),r}}),B=g("$ZodStringFormat",(t,e)=>{Nt.init(t,e),dt.init(t,e)}),gc=g("$ZodGUID",(t,e)=>{e.pattern??(e.pattern=$a),B.init(t,e)}),hc=g("$ZodUUID",(t,e)=>{if(e.version){let i={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[e.version];if(i===void 0)throw new Error(`Invalid UUID version: "${e.version}"`);e.pattern??(e.pattern=ut(i))}else e.pattern??(e.pattern=ut());B.init(t,e)}),bc=g("$ZodEmail",(t,e)=>{e.pattern??(e.pattern=Oa),B.init(t,e)}),vc=g("$ZodURL",(t,e)=>{B.init(t,e),t._zod.check=r=>{try{let i=r.value.trim();if(!e.normalize&&e.protocol?.source===Ua.source&&!/^https?:\/\//i.test(i)){r.issues.push({code:"invalid_format",format:"url",note:"Invalid URL format",input:r.value,inst:t,continue:!e.abort});return}let n=new URL(i);e.hostname&&(e.hostname.lastIndex=0,e.hostname.test(n.hostname)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:e.hostname.source,input:r.value,inst:t,continue:!e.abort})),e.protocol&&(e.protocol.lastIndex=0,e.protocol.test(n.protocol.endsWith(":")?n.protocol.slice(0,-1):n.protocol)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:e.protocol.source,input:r.value,inst:t,continue:!e.abort})),e.normalize?r.value=n.href:r.value=i;return}catch{r.issues.push({code:"invalid_format",format:"url",input:r.value,inst:t,continue:!e.abort})}}}),_c=g("$ZodEmoji",(t,e)=>{e.pattern??(e.pattern=Ta()),B.init(t,e)}),yc=g("$ZodNanoID",(t,e)=>{e.pattern??(e.pattern=Ea),B.init(t,e)}),kc=g("$ZodCUID",(t,e)=>{e.pattern??(e.pattern=ya),B.init(t,e)}),xc=g("$ZodCUID2",(t,e)=>{e.pattern??(e.pattern=ka),B.init(t,e)}),Ic=g("$ZodULID",(t,e)=>{e.pattern??(e.pattern=xa),B.init(t,e)}),Sc=g("$ZodXID",(t,e)=>{e.pattern??(e.pattern=Ia),B.init(t,e)}),Ec=g("$ZodKSUID",(t,e)=>{e.pattern??(e.pattern=Sa),B.init(t,e)}),wc=g("$ZodISODateTime",(t,e)=>{e.pattern??(e.pattern=Ma(e)),B.init(t,e)}),$c=g("$ZodISODate",(t,e)=>{e.pattern??(e.pattern=ja),B.init(t,e)}),Oc=g("$ZodISOTime",(t,e)=>{e.pattern??(e.pattern=La(e)),B.init(t,e)}),Tc=g("$ZodISODuration",(t,e)=>{e.pattern??(e.pattern=wa),B.init(t,e)}),Ac=g("$ZodIPv4",(t,e)=>{e.pattern??(e.pattern=Aa),B.init(t,e),t._zod.bag.format="ipv4"}),Rc=g("$ZodIPv6",(t,e)=>{e.pattern??(e.pattern=Ra),B.init(t,e),t._zod.bag.format="ipv6",t._zod.check=r=>{try{new URL(`http://[${r.value}]`)}catch{r.issues.push({code:"invalid_format",format:"ipv6",input:r.value,inst:t,continue:!e.abort})}}}),Cc=g("$ZodMAC",(t,e)=>{e.pattern??(e.pattern=Ca(e.delimiter)),B.init(t,e),t._zod.bag.format="mac"}),Pc=g("$ZodCIDRv4",(t,e)=>{e.pattern??(e.pattern=Pa),B.init(t,e)}),Nc=g("$ZodCIDRv6",(t,e)=>{e.pattern??(e.pattern=Na),B.init(t,e),t._zod.check=r=>{let i=r.value.split("/");try{if(i.length!==2)throw new Error;let[n,o]=i;if(!o)throw new Error;let a=Number(o);if(`${a}`!==o)throw new Error;if(a<0||a>128)throw new Error;new URL(`http://[${n}]`)}catch{r.issues.push({code:"invalid_format",format:"cidrv6",input:r.value,inst:t,continue:!e.abort})}}});function Dc(t){if(t==="")return!0;if(/\s/.test(t)||t.length%4!==0)return!1;try{return atob(t),!0}catch{return!1}}var Uc=g("$ZodBase64",(t,e)=>{e.pattern??(e.pattern=Da),B.init(t,e),t._zod.bag.contentEncoding="base64",t._zod.check=r=>{Dc(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:t,continue:!e.abort})}});function rg(t){if(!gi.test(t))return!1;let e=t.replace(/[-_]/g,i=>i==="-"?"+":"/"),r=e.padEnd(Math.ceil(e.length/4)*4,"=");return Dc(r)}var zc=g("$ZodBase64URL",(t,e)=>{e.pattern??(e.pattern=gi),B.init(t,e),t._zod.bag.contentEncoding="base64url",t._zod.check=r=>{rg(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:t,continue:!e.abort})}}),jc=g("$ZodE164",(t,e)=>{e.pattern??(e.pattern=za),B.init(t,e)});function ig(t,e=null){try{let r=t.split(".");if(r.length!==3)return!1;let[i]=r;if(!i)return!1;let n=JSON.parse(atob(i));return!("typ"in n&&n?.typ!=="JWT"||!n.alg||e&&(!("alg"in n)||n.alg!==e))}catch{return!1}}var Lc=g("$ZodJWT",(t,e)=>{B.init(t,e),t._zod.check=r=>{ig(r.value,e.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:t,continue:!e.abort})}}),Mc=g("$ZodCustomStringFormat",(t,e)=>{B.init(t,e),t._zod.check=r=>{e.fn(r.value)||r.issues.push({code:"invalid_format",format:e.format,input:r.value,inst:t,continue:!e.abort})}}),Ii=g("$ZodNumber",(t,e)=>{$.init(t,e),t._zod.pattern=t._zod.bag.pattern??hi,t._zod.parse=(r,i)=>{if(e.coerce)try{r.value=Number(r.value)}catch{}let n=r.value;if(typeof n=="number"&&!Number.isNaN(n)&&Number.isFinite(n))return r;let o=typeof n=="number"?Number.isNaN(n)?"NaN":Number.isFinite(n)?void 0:"Infinity":void 0;return r.issues.push({expected:"number",code:"invalid_type",input:n,inst:t,...o?{received:o}:{}}),r}}),Bc=g("$ZodNumberFormat",(t,e)=>{Ja.init(t,e),Ii.init(t,e)}),qn=g("$ZodBoolean",(t,e)=>{$.init(t,e),t._zod.pattern=Va,t._zod.parse=(r,i)=>{if(e.coerce)try{r.value=!!r.value}catch{}let n=r.value;return typeof n=="boolean"||r.issues.push({expected:"boolean",code:"invalid_type",input:n,inst:t}),r}}),Si=g("$ZodBigInt",(t,e)=>{$.init(t,e),t._zod.pattern=Fa,t._zod.parse=(r,i)=>{if(e.coerce)try{r.value=BigInt(r.value)}catch{}return typeof r.value=="bigint"||r.issues.push({expected:"bigint",code:"invalid_type",input:r.value,inst:t}),r}}),Fc=g("$ZodBigIntFormat",(t,e)=>{Ya.init(t,e),Si.init(t,e)}),Hc=g("$ZodSymbol",(t,e)=>{$.init(t,e),t._zod.parse=(r,i)=>{let n=r.value;return typeof n=="symbol"||r.issues.push({expected:"symbol",code:"invalid_type",input:n,inst:t}),r}}),Vc=g("$ZodUndefined",(t,e)=>{$.init(t,e),t._zod.pattern=Ga,t._zod.values=new Set([void 0]),t._zod.parse=(r,i)=>{let n=r.value;return typeof n>"u"||r.issues.push({expected:"undefined",code:"invalid_type",input:n,inst:t}),r}}),Kc=g("$ZodNull",(t,e)=>{$.init(t,e),t._zod.pattern=Ka,t._zod.values=new Set([null]),t._zod.parse=(r,i)=>{let n=r.value;return n===null||r.issues.push({expected:"null",code:"invalid_type",input:n,inst:t}),r}}),Gc=g("$ZodAny",(t,e)=>{$.init(t,e),t._zod.parse=r=>r}),Zc=g("$ZodUnknown",(t,e)=>{$.init(t,e),t._zod.parse=r=>r}),Wc=g("$ZodNever",(t,e)=>{$.init(t,e),t._zod.parse=(r,i)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:t}),r)}),qc=g("$ZodVoid",(t,e)=>{$.init(t,e),t._zod.parse=(r,i)=>{let n=r.value;return typeof n>"u"||r.issues.push({expected:"void",code:"invalid_type",input:n,inst:t}),r}}),Jc=g("$ZodDate",(t,e)=>{$.init(t,e),t._zod.parse=(r,i)=>{if(e.coerce)try{r.value=new Date(r.value)}catch{}let n=r.value,o=n instanceof Date;return o&&!Number.isNaN(n.getTime())||r.issues.push({expected:"date",code:"invalid_type",input:n,...o?{received:"Invalid Date"}:{},inst:t}),r}});function Hf(t,e,r){t.issues.length&&e.issues.push(...ue(r,t.issues)),e.value[r]=t.value}var Yc=g("$ZodArray",(t,e)=>{$.init(t,e),t._zod.parse=(r,i)=>{let n=r.value;if(!Array.isArray(n))return r.issues.push({expected:"array",code:"invalid_type",input:n,inst:t}),r;r.value=Array(n.length);let o=[];for(let a=0;a<n.length;a++){let c=n[a],l=e.element._zod.run({value:c,issues:[]},i);l instanceof Promise?o.push(l.then(d=>Hf(d,r,a))):Hf(l,r,a)}return o.length?Promise.all(o).then(()=>r):r}});function xi(t,e,r,i,n,o){let a=r in i;if(t.issues.length){if(n&&o&&!a)return;e.issues.push(...ue(r,t.issues))}if(!a&&!n){t.issues.length||e.issues.push({code:"invalid_type",expected:"nonoptional",input:void 0,path:[r]});return}t.value===void 0?a&&(e.value[r]=void 0):e.value[r]=t.value}function og(t){let e=Object.keys(t.shape);for(let i of e)if(!t.shape?.[i]?._zod?.traits?.has("$ZodType"))throw new Error(`Invalid element at key "${i}": expected a Zod schema`);let r=pa(t.shape);return{...t,keys:e,keySet:new Set(e),numKeys:e.length,optionalKeys:new Set(r)}}function sg(t,e,r,i,n,o){let a=[],c=n.keySet,l=n.catchall._zod,d=l.def.type,u=l.optin==="optional",p=l.optout==="optional";for(let m in e){if(m==="__proto__"||c.has(m))continue;if(d==="never"){a.push(m);continue}let f=l.run({value:e[m],issues:[]},i);f instanceof Promise?t.push(f.then(v=>xi(v,r,m,e,u,p))):xi(f,r,m,e,u,p)}return a.length&&r.issues.push({code:"unrecognized_keys",keys:a,input:e,inst:o}),t.length?Promise.all(t).then(()=>r):r}var ag=g("$ZodObject",(t,e)=>{if($.init(t,e),!Object.getOwnPropertyDescriptor(e,"shape")?.get){let c=e.shape;Object.defineProperty(e,"shape",{get:()=>{let l={...c};return Object.defineProperty(e,"shape",{value:l}),l}})}let i=Ot(()=>og(e));T(t._zod,"propValues",()=>{let c=e.shape,l={};for(let d in c){let u=c[d]._zod;if(u.values){l[d]??(l[d]=new Set);for(let p of u.values)l[d].add(p)}}return l});let n=lt,o=e.catchall,a;t._zod.parse=(c,l)=>{a??(a=i.value);let d=c.value;if(!n(d))return c.issues.push({expected:"object",code:"invalid_type",input:d,inst:t}),c;c.value={};let u=[],p=a.shape;for(let m of a.keys){let f=p[m],v=f._zod.optin==="optional",w=f._zod.optout==="optional",E=f._zod.run({value:d[m],issues:[]},l);E instanceof Promise?u.push(E.then(U=>xi(U,c,m,d,v,w))):xi(E,c,m,d,v,w)}return o?sg(u,d,c,l,i.value,t):u.length?Promise.all(u).then(()=>c):c}}),Xc=g("$ZodObjectJIT",(t,e)=>{ag.init(t,e);let r=t._zod.parse,i=Ot(()=>og(e)),n=m=>{let f=new Wn(["shape","payload","ctx"]),v=i.value,w=V=>{let D=ri(V);return`shape[${D}]._zod.run({ value: input[${D}], issues: [] }, ctx)`};f.write("const input = payload.value;");let E=Object.create(null),U=0;for(let V of v.keys)E[V]=`key_${U++}`;f.write("const newResult = {};");for(let V of v.keys){let D=E[V],q=ri(V),Vr=m[V],Kr=Vr?._zod?.optin==="optional",ee=Vr?._zod?.optout==="optional";f.write(`const ${D} = ${w(V)};`),Kr&&ee?f.write(`
38
+ if (${D}.issues.length) {
39
+ if (${q} in input) {
40
+ payload.issues = payload.issues.concat(${D}.issues.map(iss => ({
40
41
  ...iss,
41
- path: iss.path ? [${J}, ...iss.path] : [${J}]
42
+ path: iss.path ? [${q}, ...iss.path] : [${q}]
42
43
  })));
43
44
  }
44
45
  }
45
46
 
46
- if (${U}.value === undefined) {
47
- if (${J} in input) {
48
- newResult[${J}] = undefined;
47
+ if (${D}.value === undefined) {
48
+ if (${q} in input) {
49
+ newResult[${q}] = undefined;
49
50
  }
50
51
  } else {
51
- newResult[${J}] = ${U}.value;
52
+ newResult[${q}] = ${D}.value;
52
53
  }
53
54
 
54
- `):im?g.write(`
55
- if (${U}.issues.length) {
56
- payload.issues = payload.issues.concat(${U}.issues.map(iss => ({
55
+ `):Kr?f.write(`
56
+ if (${D}.issues.length) {
57
+ payload.issues = payload.issues.concat(${D}.issues.map(iss => ({
57
58
  ...iss,
58
- path: iss.path ? [${J}, ...iss.path] : [${J}]
59
+ path: iss.path ? [${q}, ...iss.path] : [${q}]
59
60
  })));
60
61
  }
61
62
 
62
- if (${U}.value === undefined) {
63
- if (${J} in input) {
64
- newResult[${J}] = undefined;
63
+ if (${D}.value === undefined) {
64
+ if (${q} in input) {
65
+ newResult[${q}] = undefined;
65
66
  }
66
67
  } else {
67
- newResult[${J}] = ${U}.value;
68
+ newResult[${q}] = ${D}.value;
68
69
  }
69
70
 
70
- `):g.write(`
71
- const ${U}_present = ${J} in input;
72
- if (${U}.issues.length) {
73
- payload.issues = payload.issues.concat(${U}.issues.map(iss => ({
71
+ `):f.write(`
72
+ const ${D}_present = ${q} in input;
73
+ if (${D}.issues.length) {
74
+ payload.issues = payload.issues.concat(${D}.issues.map(iss => ({
74
75
  ...iss,
75
- path: iss.path ? [${J}, ...iss.path] : [${J}]
76
+ path: iss.path ? [${q}, ...iss.path] : [${q}]
76
77
  })));
77
78
  }
78
- if (!${U}_present && !${U}.issues.length) {
79
+ if (!${D}_present && !${D}.issues.length) {
79
80
  payload.issues.push({
80
81
  code: "invalid_type",
81
82
  expected: "nonoptional",
82
83
  input: undefined,
83
- path: [${J}]
84
+ path: [${q}]
84
85
  });
85
86
  }
86
87
 
87
- if (${U}_present) {
88
- if (${U}.value === undefined) {
89
- newResult[${J}] = undefined;
88
+ if (${D}_present) {
89
+ if (${D}.value === undefined) {
90
+ newResult[${q}] = undefined;
90
91
  } else {
91
- newResult[${J}] = ${U}.value;
92
+ newResult[${q}] = ${D}.value;
92
93
  }
93
94
  }
94
95
 
95
- `)}g.write("payload.value = newResult;"),g.write("return payload;");let H=g.compile();return(W,U)=>H(m,W,U)},o,a=et,c=!Qe.jitless,d=c&&Cs.value,u=e.catchall,p;t._zod.parse=(m,g)=>{p??(p=i.value);let k=m.value;return a(k)?c&&d&&g?.async===!1&&g.jitless!==!0?(o||(o=n(e.shape)),m=o(m,g),u?Sf([],k,m,g,p,t):m):r(m,g):(m.issues.push({expected:"object",code:"invalid_type",input:k,inst:t}),m)}});function cf(t,e,r,i){for(let o of t)if(o.issues.length===0)return e.value=o.value,e;let n=t.filter(o=>!Me(o));return n.length===1?(e.value=n[0].value,n[0]):(e.issues.push({code:"invalid_union",input:e.value,inst:r,errors:t.map(o=>o.issues.map(a=>ie(a,i,q())))}),e)}var Dn=f("$ZodUnion",(t,e)=>{w.init(t,e),O(t._zod,"optin",()=>e.options.some(i=>i._zod.optin==="optional")?"optional":void 0),O(t._zod,"optout",()=>e.options.some(i=>i._zod.optout==="optional")?"optional":void 0),O(t._zod,"values",()=>{if(e.options.every(i=>i._zod.values))return new Set(e.options.flatMap(i=>Array.from(i._zod.values)))}),O(t._zod,"pattern",()=>{if(e.options.every(i=>i._zod.pattern)){let i=e.options.map(n=>n._zod.pattern);return new RegExp(`^(${i.map(n=>Sn(n.source)).join("|")})$`)}});let r=e.options.length===1?e.options[0]._zod.run:null;t._zod.parse=(i,n)=>{if(r)return r(i,n);let o=!1,a=[];for(let c of e.options){let l=c._zod.run({value:i.value,issues:[]},n);if(l instanceof Promise)a.push(l),o=!0;else{if(l.issues.length===0)return l;a.push(l)}}return o?Promise.all(a).then(c=>cf(c,i,t,n)):cf(a,i,t,n)}});function lf(t,e,r,i){let n=t.filter(o=>o.issues.length===0);return n.length===1?(e.value=n[0].value,e):(n.length===0?e.issues.push({code:"invalid_union",input:e.value,inst:r,errors:t.map(o=>o.issues.map(a=>ie(a,i,q())))}):e.issues.push({code:"invalid_union",input:e.value,inst:r,errors:[],inclusive:!1}),e)}var xc=f("$ZodXor",(t,e)=>{Dn.init(t,e),e.inclusive=!1;let r=e.options.length===1?e.options[0]._zod.run:null;t._zod.parse=(i,n)=>{if(r)return r(i,n);let o=!1,a=[];for(let c of e.options){let l=c._zod.run({value:i.value,issues:[]},n);l instanceof Promise?(a.push(l),o=!0):a.push(l)}return o?Promise.all(a).then(c=>lf(c,i,t,n)):lf(a,i,t,n)}}),Ic=f("$ZodDiscriminatedUnion",(t,e)=>{e.inclusive=!1,Dn.init(t,e);let r=t._zod.parse;O(t._zod,"propValues",()=>{let n={};for(let o of e.options){let a=o._zod.propValues;if(!a||Object.keys(a).length===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(o)}"`);for(let[c,l]of Object.entries(a)){n[c]||(n[c]=new Set);for(let d of l)n[c].add(d)}}return n});let i=bt(()=>{let n=e.options,o=new Map;for(let a of n){let c=a._zod.propValues?.[e.discriminator];if(!c||c.size===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(a)}"`);for(let l of c){if(o.has(l))throw new Error(`Duplicate discriminator value "${String(l)}"`);o.set(l,a)}}return o});t._zod.parse=(n,o)=>{let a=n.value;if(!et(a))return n.issues.push({code:"invalid_type",expected:"object",input:a,inst:t}),n;let c=i.value.get(a?.[e.discriminator]);return c?c._zod.run(n,o):e.unionFallback||o.direction==="backward"?r(n,o):(n.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",discriminator:e.discriminator,options:Array.from(i.value.keys()),input:a,path:[e.discriminator],inst:t}),n)}}),Sc=f("$ZodIntersection",(t,e)=>{w.init(t,e),t._zod.parse=(r,i)=>{let n=r.value,o=e.left._zod.run({value:n,issues:[]},i),a=e.right._zod.run({value:n,issues:[]},i);return o instanceof Promise||a instanceof Promise?Promise.all([o,a]).then(([l,d])=>uf(r,l,d)):uf(r,o,a)}});function za(t,e){if(t===e)return{valid:!0,data:t};if(t instanceof Date&&e instanceof Date&&+t==+e)return{valid:!0,data:t};if(Le(t)&&Le(e)){let r=Object.keys(e),i=Object.keys(t).filter(o=>r.indexOf(o)!==-1),n={...t,...e};for(let o of i){let a=za(t[o],e[o]);if(!a.valid)return{valid:!1,mergeErrorPath:[o,...a.mergeErrorPath]};n[o]=a.data}return{valid:!0,data:n}}if(Array.isArray(t)&&Array.isArray(e)){if(t.length!==e.length)return{valid:!1,mergeErrorPath:[]};let r=[];for(let i=0;i<t.length;i++){let n=t[i],o=e[i],a=za(n,o);if(!a.valid)return{valid:!1,mergeErrorPath:[i,...a.mergeErrorPath]};r.push(a.data)}return{valid:!0,data:r}}return{valid:!1,mergeErrorPath:[]}}function uf(t,e,r){let i=new Map,n;for(let c of e.issues)if(c.code==="unrecognized_keys"){n??(n=c);for(let l of c.keys)i.has(l)||i.set(l,{}),i.get(l).l=!0}else t.issues.push(c);for(let c of r.issues)if(c.code==="unrecognized_keys")for(let l of c.keys)i.has(l)||i.set(l,{}),i.get(l).r=!0;else t.issues.push(c);let o=[...i].filter(([,c])=>c.l&&c.r).map(([c])=>c);if(o.length&&n&&t.issues.push({...n,keys:o}),Me(t))return t;let a=za(e.value,r.value);if(!a.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(a.mergeErrorPath)}`);return t.value=a.data,t}var oi=f("$ZodTuple",(t,e)=>{w.init(t,e);let r=e.items;t._zod.parse=(i,n)=>{let o=i.value;if(!Array.isArray(o))return i.issues.push({input:o,inst:t,expected:"tuple",code:"invalid_type"}),i;i.value=[];let a=[],c=df(r,"optin"),l=df(r,"optout");if(!e.rest){if(o.length<c)return i.issues.push({code:"too_small",minimum:c,inclusive:!0,input:o,inst:t,origin:"array"}),i;o.length>r.length&&i.issues.push({code:"too_big",maximum:r.length,inclusive:!0,input:o,inst:t,origin:"array"})}let d=new Array(r.length);for(let u=0;u<r.length;u++){let p=r[u]._zod.run({value:o[u],issues:[]},n);p instanceof Promise?a.push(p.then(m=>{d[u]=m})):d[u]=p}if(e.rest){let u=r.length-1,p=o.slice(r.length);for(let m of p){u++;let g=e.rest._zod.run({value:m,issues:[]},n);g instanceof Promise?a.push(g.then(k=>pf(k,i,u))):pf(g,i,u)}}return a.length?Promise.all(a).then(()=>mf(d,i,r,o,l)):mf(d,i,r,o,l)}});function df(t,e){for(let r=t.length-1;r>=0;r--)if(t[r]._zod[e]!=="optional")return r+1;return 0}function pf(t,e,r){t.issues.length&&e.issues.push(...ae(r,t.issues)),e.value[r]=t.value}function mf(t,e,r,i,n){for(let o=0;o<r.length;o++){let a=t[o],c=o<i.length;if(a.issues.length){if(!c&&o>=n){e.value.length=o;break}e.issues.push(...ae(o,a.issues))}e.value[o]=a.value}for(let o=e.value.length-1;o>=i.length&&(r[o]._zod.optout==="optional"&&e.value[o]===void 0);o--)e.value.length=o;return e}var Ec=f("$ZodRecord",(t,e)=>{w.init(t,e),t._zod.parse=(r,i)=>{let n=r.value;if(!Le(n))return r.issues.push({expected:"record",code:"invalid_type",input:n,inst:t}),r;let o=[],a=e.keyType._zod.values;if(a){r.value={};let c=new Set;for(let d of a)if(typeof d=="string"||typeof d=="number"||typeof d=="symbol"){c.add(typeof d=="number"?d.toString():d);let u=e.keyType._zod.run({value:d,issues:[]},i);if(u instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(u.issues.length){r.issues.push({code:"invalid_key",origin:"record",issues:u.issues.map(g=>ie(g,i,q())),input:d,path:[d],inst:t});continue}let p=u.value,m=e.valueType._zod.run({value:n[d],issues:[]},i);m instanceof Promise?o.push(m.then(g=>{g.issues.length&&r.issues.push(...ae(d,g.issues)),r.value[p]=g.value})):(m.issues.length&&r.issues.push(...ae(d,m.issues)),r.value[p]=m.value)}let l;for(let d in n)c.has(d)||(l=l??[],l.push(d));l&&l.length>0&&r.issues.push({code:"unrecognized_keys",input:n,inst:t,keys:l})}else{r.value={};for(let c of Reflect.ownKeys(n)){if(c==="__proto__"||!Object.prototype.propertyIsEnumerable.call(n,c))continue;let l=e.keyType._zod.run({value:c,issues:[]},i);if(l instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(typeof c=="string"&&Jr.test(c)&&l.issues.length){let p=e.keyType._zod.run({value:Number(c),issues:[]},i);if(p instanceof Promise)throw new Error("Async schemas not supported in object keys currently");p.issues.length===0&&(l=p)}if(l.issues.length){e.mode==="loose"?r.value[c]=n[c]:r.issues.push({code:"invalid_key",origin:"record",issues:l.issues.map(p=>ie(p,i,q())),input:c,path:[c],inst:t});continue}let u=e.valueType._zod.run({value:n[c],issues:[]},i);u instanceof Promise?o.push(u.then(p=>{p.issues.length&&r.issues.push(...ae(c,p.issues)),r.value[l.value]=p.value})):(u.issues.length&&r.issues.push(...ae(c,u.issues)),r.value[l.value]=u.value)}}return o.length?Promise.all(o).then(()=>r):r}}),wc=f("$ZodMap",(t,e)=>{w.init(t,e),t._zod.parse=(r,i)=>{let n=r.value;if(!(n instanceof Map))return r.issues.push({expected:"map",code:"invalid_type",input:n,inst:t}),r;let o=[];r.value=new Map;for(let[a,c]of n){let l=e.keyType._zod.run({value:a,issues:[]},i),d=e.valueType._zod.run({value:c,issues:[]},i);l instanceof Promise||d instanceof Promise?o.push(Promise.all([l,d]).then(([u,p])=>{ff(u,p,r,a,n,t,i)})):ff(l,d,r,a,n,t,i)}return o.length?Promise.all(o).then(()=>r):r}});function ff(t,e,r,i,n,o,a){t.issues.length&&(En.has(typeof i)?r.issues.push(...ae(i,t.issues)):r.issues.push({code:"invalid_key",origin:"map",input:n,inst:o,issues:t.issues.map(c=>ie(c,a,q()))})),e.issues.length&&(En.has(typeof i)?r.issues.push(...ae(i,e.issues)):r.issues.push({origin:"map",code:"invalid_element",input:n,inst:o,key:i,issues:e.issues.map(c=>ie(c,a,q()))})),r.value.set(t.value,e.value)}var $c=f("$ZodSet",(t,e)=>{w.init(t,e),t._zod.parse=(r,i)=>{let n=r.value;if(!(n instanceof Set))return r.issues.push({input:n,inst:t,expected:"set",code:"invalid_type"}),r;let o=[];r.value=new Set;for(let a of n){let c=e.valueType._zod.run({value:a,issues:[]},i);c instanceof Promise?o.push(c.then(l=>gf(l,r))):gf(c,r)}return o.length?Promise.all(o).then(()=>r):r}});function gf(t,e){t.issues.length&&e.issues.push(...t.issues),e.value.add(t.value)}var Oc=f("$ZodEnum",(t,e)=>{w.init(t,e);let r=In(e.entries),i=new Set(r);t._zod.values=i,t._zod.pattern=new RegExp(`^(${r.filter(n=>En.has(typeof n)).map(n=>typeof n=="string"?ge(n):n.toString()).join("|")})$`),t._zod.parse=(n,o)=>{let a=n.value;return i.has(a)||n.issues.push({code:"invalid_value",values:r,input:a,inst:t}),n}}),Tc=f("$ZodLiteral",(t,e)=>{if(w.init(t,e),e.values.length===0)throw new Error("Cannot create literal schema with no valid values");let r=new Set(e.values);t._zod.values=r,t._zod.pattern=new RegExp(`^(${e.values.map(i=>typeof i=="string"?ge(i):i?ge(i.toString()):String(i)).join("|")})$`),t._zod.parse=(i,n)=>{let o=i.value;return r.has(o)||i.issues.push({code:"invalid_value",values:e.values,input:o,inst:t}),i}}),Rc=f("$ZodFile",(t,e)=>{w.init(t,e),t._zod.parse=(r,i)=>{let n=r.value;return n instanceof File||r.issues.push({expected:"file",code:"invalid_type",input:n,inst:t}),r}}),Ac=f("$ZodTransform",(t,e)=>{w.init(t,e),t._zod.optin="optional",t._zod.parse=(r,i)=>{if(i.direction==="backward")throw new Ue(t.constructor.name);let n=e.transform(r.value,r);if(i.async)return(n instanceof Promise?n:Promise.resolve(n)).then(a=>(r.value=a,r.fallback=!0,r));if(n instanceof Promise)throw new _e;return r.value=n,r.fallback=!0,r}});function hf(t,e){return e===void 0&&(t.issues.length||t.fallback)?{issues:[],value:void 0}:t}var si=f("$ZodOptional",(t,e)=>{w.init(t,e),t._zod.optin="optional",t._zod.optout="optional",O(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,void 0]):void 0),O(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${Sn(r.source)})?$`):void 0}),t._zod.parse=(r,i)=>{if(e.innerType._zod.optin==="optional"){let n=r.value,o=e.innerType._zod.run(r,i);return o instanceof Promise?o.then(a=>hf(a,n)):hf(o,n)}return r.value===void 0?r:e.innerType._zod.run(r,i)}}),Cc=f("$ZodExactOptional",(t,e)=>{si.init(t,e),O(t._zod,"values",()=>e.innerType._zod.values),O(t._zod,"pattern",()=>e.innerType._zod.pattern),t._zod.parse=(r,i)=>e.innerType._zod.run(r,i)}),Pc=f("$ZodNullable",(t,e)=>{w.init(t,e),O(t._zod,"optin",()=>e.innerType._zod.optin),O(t._zod,"optout",()=>e.innerType._zod.optout),O(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${Sn(r.source)}|null)$`):void 0}),O(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,null]):void 0),t._zod.parse=(r,i)=>r.value===null?r:e.innerType._zod.run(r,i)}),Nc=f("$ZodDefault",(t,e)=>{w.init(t,e),t._zod.optin="optional",O(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,i)=>{if(i.direction==="backward")return e.innerType._zod.run(r,i);if(r.value===void 0)return r.value=e.defaultValue,r;let n=e.innerType._zod.run(r,i);return n instanceof Promise?n.then(o=>bf(o,e)):bf(n,e)}});function bf(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}var Dc=f("$ZodPrefault",(t,e)=>{w.init(t,e),t._zod.optin="optional",O(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,i)=>(i.direction==="backward"||r.value===void 0&&(r.value=e.defaultValue),e.innerType._zod.run(r,i))}),Uc=f("$ZodNonOptional",(t,e)=>{w.init(t,e),O(t._zod,"values",()=>{let r=e.innerType._zod.values;return r?new Set([...r].filter(i=>i!==void 0)):void 0}),t._zod.parse=(r,i)=>{let n=e.innerType._zod.run(r,i);return n instanceof Promise?n.then(o=>vf(o,t)):vf(n,t)}});function vf(t,e){return!t.issues.length&&t.value===void 0&&t.issues.push({code:"invalid_type",expected:"nonoptional",input:t.value,inst:e}),t}var zc=f("$ZodSuccess",(t,e)=>{w.init(t,e),t._zod.parse=(r,i)=>{if(i.direction==="backward")throw new Ue("ZodSuccess");let n=e.innerType._zod.run(r,i);return n instanceof Promise?n.then(o=>(r.value=o.issues.length===0,r)):(r.value=n.issues.length===0,r)}}),jc=f("$ZodCatch",(t,e)=>{w.init(t,e),t._zod.optin="optional",O(t._zod,"optout",()=>e.innerType._zod.optout),O(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,i)=>{if(i.direction==="backward")return e.innerType._zod.run(r,i);let n=e.innerType._zod.run(r,i);return n instanceof Promise?n.then(o=>(r.value=o.value,o.issues.length&&(r.value=e.catchValue({...r,error:{issues:o.issues.map(a=>ie(a,i,q()))},input:r.value}),r.issues=[],r.fallback=!0),r)):(r.value=n.value,n.issues.length&&(r.value=e.catchValue({...r,error:{issues:n.issues.map(o=>ie(o,i,q()))},input:r.value}),r.issues=[],r.fallback=!0),r)}}),Lc=f("$ZodNaN",(t,e)=>{w.init(t,e),t._zod.parse=(r,i)=>((typeof r.value!="number"||!Number.isNaN(r.value))&&r.issues.push({input:r.value,inst:t,expected:"nan",code:"invalid_type"}),r)}),ai=f("$ZodPipe",(t,e)=>{w.init(t,e),O(t._zod,"values",()=>e.in._zod.values),O(t._zod,"optin",()=>e.in._zod.optin),O(t._zod,"optout",()=>e.out._zod.optout),O(t._zod,"propValues",()=>e.in._zod.propValues),t._zod.parse=(r,i)=>{if(i.direction==="backward"){let o=e.out._zod.run(r,i);return o instanceof Promise?o.then(a=>Qr(a,e.in,i)):Qr(o,e.in,i)}let n=e.in._zod.run(r,i);return n instanceof Promise?n.then(o=>Qr(o,e.out,i)):Qr(n,e.out,i)}});function Qr(t,e,r){return t.issues.length?(t.aborted=!0,t):e._zod.run({value:t.value,issues:t.issues,fallback:t.fallback},r)}var Un=f("$ZodCodec",(t,e)=>{w.init(t,e),O(t._zod,"values",()=>e.in._zod.values),O(t._zod,"optin",()=>e.in._zod.optin),O(t._zod,"optout",()=>e.out._zod.optout),O(t._zod,"propValues",()=>e.in._zod.propValues),t._zod.parse=(r,i)=>{if((i.direction||"forward")==="forward"){let o=e.in._zod.run(r,i);return o instanceof Promise?o.then(a=>ei(a,e,i)):ei(o,e,i)}else{let o=e.out._zod.run(r,i);return o instanceof Promise?o.then(a=>ei(a,e,i)):ei(o,e,i)}}});function ei(t,e,r){if(t.issues.length)return t.aborted=!0,t;if((r.direction||"forward")==="forward"){let n=e.transform(t.value,t);return n instanceof Promise?n.then(o=>ti(t,o,e.out,r)):ti(t,n,e.out,r)}else{let n=e.reverseTransform(t.value,t);return n instanceof Promise?n.then(o=>ti(t,o,e.in,r)):ti(t,n,e.in,r)}}function ti(t,e,r,i){return t.issues.length?(t.aborted=!0,t):r._zod.run({value:e,issues:t.issues},i)}var Mc=f("$ZodPreprocess",(t,e)=>{ai.init(t,e)}),Fc=f("$ZodReadonly",(t,e)=>{w.init(t,e),O(t._zod,"propValues",()=>e.innerType._zod.propValues),O(t._zod,"values",()=>e.innerType._zod.values),O(t._zod,"optin",()=>e.innerType?._zod?.optin),O(t._zod,"optout",()=>e.innerType?._zod?.optout),t._zod.parse=(r,i)=>{if(i.direction==="backward")return e.innerType._zod.run(r,i);let n=e.innerType._zod.run(r,i);return n instanceof Promise?n.then(_f):_f(n)}});function _f(t){return t.value=Object.freeze(t.value),t}var Bc=f("$ZodTemplateLiteral",(t,e)=>{w.init(t,e);let r=[];for(let i of e.parts)if(typeof i=="object"&&i!==null){if(!i._zod.pattern)throw new Error(`Invalid template literal part, no pattern found: ${[...i._zod.traits].shift()}`);let n=i._zod.pattern instanceof RegExp?i._zod.pattern.source:i._zod.pattern;if(!n)throw new Error(`Invalid template literal part: ${i._zod.traits}`);let o=n.startsWith("^")?1:0,a=n.endsWith("$")?n.length-1:n.length;r.push(n.slice(o,a))}else if(i===null||Ns.has(typeof i))r.push(ge(`${i}`));else throw new Error(`Invalid template literal part: ${i}`);t._zod.pattern=new RegExp(`^${r.join("")}$`),t._zod.parse=(i,n)=>typeof i.value!="string"?(i.issues.push({input:i.value,inst:t,expected:"string",code:"invalid_type"}),i):(t._zod.pattern.lastIndex=0,t._zod.pattern.test(i.value)||i.issues.push({input:i.value,inst:t,code:"invalid_format",format:e.format??"template_literal",pattern:t._zod.pattern.source}),i)}),Hc=f("$ZodFunction",(t,e)=>(w.init(t,e),t._def=e,t._zod.def=e,t.implement=r=>{if(typeof r!="function")throw new Error("implement() must be called with a function");return function(...i){let n=t._def.input?Lr(t._def.input,i):i,o=Reflect.apply(r,this,n);return t._def.output?Lr(t._def.output,o):o}},t.implementAsync=r=>{if(typeof r!="function")throw new Error("implementAsync() must be called with a function");return async function(...i){let n=t._def.input?await Mr(t._def.input,i):i,o=await Reflect.apply(r,this,n);return t._def.output?await Mr(t._def.output,o):o}},t._zod.parse=(r,i)=>typeof r.value!="function"?(r.issues.push({code:"invalid_type",expected:"function",input:r.value,inst:t}),r):(t._def.output&&t._def.output._zod.def.type==="promise"?r.value=t.implementAsync(r.value):r.value=t.implement(r.value),r),t.input=(...r)=>{let i=t.constructor;return Array.isArray(r[0])?new i({type:"function",input:new oi({type:"tuple",items:r[0],rest:r[1]}),output:t._def.output}):new i({type:"function",input:r[0],output:t._def.output})},t.output=r=>{let i=t.constructor;return new i({type:"function",input:t._def.input,output:r})},t)),Vc=f("$ZodPromise",(t,e)=>{w.init(t,e),t._zod.parse=(r,i)=>Promise.resolve(r.value).then(n=>e.innerType._zod.run({value:n,issues:[]},i))}),Zc=f("$ZodLazy",(t,e)=>{w.init(t,e),O(t._zod,"innerType",()=>{let r=e;return r._cachedInner||(r._cachedInner=e.getter()),r._cachedInner}),O(t._zod,"pattern",()=>t._zod.innerType?._zod?.pattern),O(t._zod,"propValues",()=>t._zod.innerType?._zod?.propValues),O(t._zod,"optin",()=>t._zod.innerType?._zod?.optin??void 0),O(t._zod,"optout",()=>t._zod.innerType?._zod?.optout??void 0),t._zod.parse=(r,i)=>t._zod.innerType._zod.run(r,i)}),Kc=f("$ZodCustom",(t,e)=>{B.init(t,e),w.init(t,e),t._zod.parse=(r,i)=>r,t._zod.check=r=>{let i=r.value,n=e.fn(i);if(n instanceof Promise)return n.then(o=>yf(o,r,i,t));yf(n,r,i,t)}});function yf(t,e,r,i){if(!t){let n={code:"custom",input:r,inst:i,path:[...i._zod.def.path??[]],continue:!i._zod.def.abort};i._zod.def.params&&(n.params=i._zod.def.params),e.issues.push(vt(n))}}var jn={};Te(jn,{ar:()=>wf,az:()=>$f,be:()=>Tf,bg:()=>Rf,ca:()=>Af,cs:()=>Cf,da:()=>Pf,de:()=>Nf,el:()=>Df,en:()=>ci,eo:()=>Uf,es:()=>zf,fa:()=>jf,fi:()=>Lf,fr:()=>Mf,frCA:()=>Ff,he:()=>Bf,hr:()=>Hf,hu:()=>Vf,hy:()=>Kf,id:()=>Gf,is:()=>Wf,it:()=>qf,ja:()=>Jf,ka:()=>Yf,kh:()=>Xf,km:()=>li,ko:()=>Qf,lt:()=>tg,mk:()=>ng,ms:()=>rg,nl:()=>ig,no:()=>og,ota:()=>sg,pl:()=>cg,ps:()=>ag,pt:()=>lg,ro:()=>ug,ru:()=>pg,sl:()=>mg,sv:()=>fg,ta:()=>gg,th:()=>hg,tr:()=>bg,ua:()=>vg,uk:()=>ui,ur:()=>_g,uz:()=>yg,vi:()=>kg,yo:()=>Sg,zhCN:()=>xg,zhTW:()=>Ig});var hx=()=>{let t={string:{unit:"\u062D\u0631\u0641",verb:"\u0623\u0646 \u064A\u062D\u0648\u064A"},file:{unit:"\u0628\u0627\u064A\u062A",verb:"\u0623\u0646 \u064A\u062D\u0648\u064A"},array:{unit:"\u0639\u0646\u0635\u0631",verb:"\u0623\u0646 \u064A\u062D\u0648\u064A"},set:{unit:"\u0639\u0646\u0635\u0631",verb:"\u0623\u0646 \u064A\u062D\u0648\u064A"}};function e(n){return t[n]??null}let r={regex:"\u0645\u062F\u062E\u0644",email:"\u0628\u0631\u064A\u062F \u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A",url:"\u0631\u0627\u0628\u0637",emoji:"\u0625\u064A\u0645\u0648\u062C\u064A",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"\u062A\u0627\u0631\u064A\u062E \u0648\u0648\u0642\u062A \u0628\u0645\u0639\u064A\u0627\u0631 ISO",date:"\u062A\u0627\u0631\u064A\u062E \u0628\u0645\u0639\u064A\u0627\u0631 ISO",time:"\u0648\u0642\u062A \u0628\u0645\u0639\u064A\u0627\u0631 ISO",duration:"\u0645\u062F\u0629 \u0628\u0645\u0639\u064A\u0627\u0631 ISO",ipv4:"\u0639\u0646\u0648\u0627\u0646 IPv4",ipv6:"\u0639\u0646\u0648\u0627\u0646 IPv6",cidrv4:"\u0645\u062F\u0649 \u0639\u0646\u0627\u0648\u064A\u0646 \u0628\u0635\u064A\u063A\u0629 IPv4",cidrv6:"\u0645\u062F\u0649 \u0639\u0646\u0627\u0648\u064A\u0646 \u0628\u0635\u064A\u063A\u0629 IPv6",base64:"\u0646\u064E\u0635 \u0628\u062A\u0631\u0645\u064A\u0632 base64-encoded",base64url:"\u0646\u064E\u0635 \u0628\u062A\u0631\u0645\u064A\u0632 base64url-encoded",json_string:"\u0646\u064E\u0635 \u0639\u0644\u0649 \u0647\u064A\u0626\u0629 JSON",e164:"\u0631\u0642\u0645 \u0647\u0627\u062A\u0641 \u0628\u0645\u0639\u064A\u0627\u0631 E.164",jwt:"JWT",template_literal:"\u0645\u062F\u062E\u0644"},i={nan:"NaN"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=_(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`\u0645\u062F\u062E\u0644\u0627\u062A \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644\u0629: \u064A\u0641\u062A\u0631\u0636 \u0625\u062F\u062E\u0627\u0644 instanceof ${n.expected}\u060C \u0648\u0644\u0643\u0646 \u062A\u0645 \u0625\u062F\u062E\u0627\u0644 ${c}`:`\u0645\u062F\u062E\u0644\u0627\u062A \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644\u0629: \u064A\u0641\u062A\u0631\u0636 \u0625\u062F\u062E\u0627\u0644 ${o}\u060C \u0648\u0644\u0643\u0646 \u062A\u0645 \u0625\u062F\u062E\u0627\u0644 ${c}`}case"invalid_value":return n.values.length===1?`\u0645\u062F\u062E\u0644\u0627\u062A \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644\u0629: \u064A\u0641\u062A\u0631\u0636 \u0625\u062F\u062E\u0627\u0644 ${v(n.values[0])}`:`\u0627\u062E\u062A\u064A\u0627\u0631 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644: \u064A\u062A\u0648\u0642\u0639 \u0627\u0646\u062A\u0642\u0627\u0621 \u0623\u062D\u062F \u0647\u0630\u0647 \u0627\u0644\u062E\u064A\u0627\u0631\u0627\u062A: ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?` \u0623\u0643\u0628\u0631 \u0645\u0646 \u0627\u0644\u0644\u0627\u0632\u0645: \u064A\u0641\u062A\u0631\u0636 \u0623\u0646 \u062A\u0643\u0648\u0646 ${n.origin??"\u0627\u0644\u0642\u064A\u0645\u0629"} ${o} ${n.maximum.toString()} ${a.unit??"\u0639\u0646\u0635\u0631"}`:`\u0623\u0643\u0628\u0631 \u0645\u0646 \u0627\u0644\u0644\u0627\u0632\u0645: \u064A\u0641\u062A\u0631\u0636 \u0623\u0646 \u062A\u0643\u0648\u0646 ${n.origin??"\u0627\u0644\u0642\u064A\u0645\u0629"} ${o} ${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`\u0623\u0635\u063A\u0631 \u0645\u0646 \u0627\u0644\u0644\u0627\u0632\u0645: \u064A\u0641\u062A\u0631\u0636 \u0644\u0640 ${n.origin} \u0623\u0646 \u064A\u0643\u0648\u0646 ${o} ${n.minimum.toString()} ${a.unit}`:`\u0623\u0635\u063A\u0631 \u0645\u0646 \u0627\u0644\u0644\u0627\u0632\u0645: \u064A\u0641\u062A\u0631\u0636 \u0644\u0640 ${n.origin} \u0623\u0646 \u064A\u0643\u0648\u0646 ${o} ${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u0646\u064E\u0635 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644: \u064A\u062C\u0628 \u0623\u0646 \u064A\u0628\u062F\u0623 \u0628\u0640 "${n.prefix}"`:o.format==="ends_with"?`\u0646\u064E\u0635 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644: \u064A\u062C\u0628 \u0623\u0646 \u064A\u0646\u062A\u0647\u064A \u0628\u0640 "${o.suffix}"`:o.format==="includes"?`\u0646\u064E\u0635 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644: \u064A\u062C\u0628 \u0623\u0646 \u064A\u062A\u0636\u0645\u0651\u064E\u0646 "${o.includes}"`:o.format==="regex"?`\u0646\u064E\u0635 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644: \u064A\u062C\u0628 \u0623\u0646 \u064A\u0637\u0627\u0628\u0642 \u0627\u0644\u0646\u0645\u0637 ${o.pattern}`:`${r[o.format]??n.format} \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644`}case"not_multiple_of":return`\u0631\u0642\u0645 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644: \u064A\u062C\u0628 \u0623\u0646 \u064A\u0643\u0648\u0646 \u0645\u0646 \u0645\u0636\u0627\u0639\u0641\u0627\u062A ${n.divisor}`;case"unrecognized_keys":return`\u0645\u0639\u0631\u0641${n.keys.length>1?"\u0627\u062A":""} \u063A\u0631\u064A\u0628${n.keys.length>1?"\u0629":""}: ${h(n.keys,"\u060C ")}`;case"invalid_key":return`\u0645\u0639\u0631\u0641 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644 \u0641\u064A ${n.origin}`;case"invalid_union":return"\u0645\u062F\u062E\u0644 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644";case"invalid_element":return`\u0645\u062F\u062E\u0644 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644 \u0641\u064A ${n.origin}`;default:return"\u0645\u062F\u062E\u0644 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644"}}};function wf(){return{localeError:hx()}}var bx=()=>{let t={string:{unit:"simvol",verb:"olmal\u0131d\u0131r"},file:{unit:"bayt",verb:"olmal\u0131d\u0131r"},array:{unit:"element",verb:"olmal\u0131d\u0131r"},set:{unit:"element",verb:"olmal\u0131d\u0131r"}};function e(n){return t[n]??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",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",jwt:"JWT",template_literal:"input"},i={nan:"NaN"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=_(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`Yanl\u0131\u015F d\u0259y\u0259r: g\xF6zl\u0259nil\u0259n instanceof ${n.expected}, daxil olan ${c}`:`Yanl\u0131\u015F d\u0259y\u0259r: g\xF6zl\u0259nil\u0259n ${o}, daxil olan ${c}`}case"invalid_value":return n.values.length===1?`Yanl\u0131\u015F d\u0259y\u0259r: g\xF6zl\u0259nil\u0259n ${v(n.values[0])}`:`Yanl\u0131\u015F se\xE7im: a\u015Fa\u011F\u0131dak\u0131lardan biri olmal\u0131d\u0131r: ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`\xC7ox b\xF6y\xFCk: g\xF6zl\u0259nil\u0259n ${n.origin??"d\u0259y\u0259r"} ${o}${n.maximum.toString()} ${a.unit??"element"}`:`\xC7ox b\xF6y\xFCk: g\xF6zl\u0259nil\u0259n ${n.origin??"d\u0259y\u0259r"} ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`\xC7ox ki\xE7ik: g\xF6zl\u0259nil\u0259n ${n.origin} ${o}${n.minimum.toString()} ${a.unit}`:`\xC7ox ki\xE7ik: g\xF6zl\u0259nil\u0259n ${n.origin} ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Yanl\u0131\u015F m\u0259tn: "${o.prefix}" il\u0259 ba\u015Flamal\u0131d\u0131r`:o.format==="ends_with"?`Yanl\u0131\u015F m\u0259tn: "${o.suffix}" il\u0259 bitm\u0259lidir`:o.format==="includes"?`Yanl\u0131\u015F m\u0259tn: "${o.includes}" daxil olmal\u0131d\u0131r`:o.format==="regex"?`Yanl\u0131\u015F m\u0259tn: ${o.pattern} \u015Fablonuna uy\u011Fun olmal\u0131d\u0131r`:`Yanl\u0131\u015F ${r[o.format]??n.format}`}case"not_multiple_of":return`Yanl\u0131\u015F \u0259d\u0259d: ${n.divisor} il\u0259 b\xF6l\xFCn\u0259 bil\u0259n olmal\u0131d\u0131r`;case"unrecognized_keys":return`Tan\u0131nmayan a\xE7ar${n.keys.length>1?"lar":""}: ${h(n.keys,", ")}`;case"invalid_key":return`${n.origin} daxilind\u0259 yanl\u0131\u015F a\xE7ar`;case"invalid_union":return"Yanl\u0131\u015F d\u0259y\u0259r";case"invalid_element":return`${n.origin} daxilind\u0259 yanl\u0131\u015F d\u0259y\u0259r`;default:return"Yanl\u0131\u015F d\u0259y\u0259r"}}};function $f(){return{localeError:bx()}}function Of(t,e,r,i){let n=Math.abs(t),o=n%10,a=n%100;return a>=11&&a<=19?i:o===1?e:o>=2&&o<=4?r:i}var vx=()=>{let t={string:{unit:{one:"\u0441\u0456\u043C\u0432\u0430\u043B",few:"\u0441\u0456\u043C\u0432\u0430\u043B\u044B",many:"\u0441\u0456\u043C\u0432\u0430\u043B\u0430\u045E"},verb:"\u043C\u0435\u0446\u044C"},array:{unit:{one:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442",few:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u044B",many:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u0430\u045E"},verb:"\u043C\u0435\u0446\u044C"},set:{unit:{one:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442",few:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u044B",many:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u0430\u045E"},verb:"\u043C\u0435\u0446\u044C"},file:{unit:{one:"\u0431\u0430\u0439\u0442",few:"\u0431\u0430\u0439\u0442\u044B",many:"\u0431\u0430\u0439\u0442\u0430\u045E"},verb:"\u043C\u0435\u0446\u044C"}};function e(n){return t[n]??null}let r={regex:"\u0443\u0432\u043E\u0434",email:"email \u0430\u0434\u0440\u0430\u0441",url:"URL",emoji:"\u044D\u043C\u043E\u0434\u0437\u0456",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO \u0434\u0430\u0442\u0430 \u0456 \u0447\u0430\u0441",date:"ISO \u0434\u0430\u0442\u0430",time:"ISO \u0447\u0430\u0441",duration:"ISO \u043F\u0440\u0430\u0446\u044F\u0433\u043B\u0430\u0441\u0446\u044C",ipv4:"IPv4 \u0430\u0434\u0440\u0430\u0441",ipv6:"IPv6 \u0430\u0434\u0440\u0430\u0441",cidrv4:"IPv4 \u0434\u044B\u044F\u043F\u0430\u0437\u043E\u043D",cidrv6:"IPv6 \u0434\u044B\u044F\u043F\u0430\u0437\u043E\u043D",base64:"\u0440\u0430\u0434\u043E\u043A \u0443 \u0444\u0430\u0440\u043C\u0430\u0446\u0435 base64",base64url:"\u0440\u0430\u0434\u043E\u043A \u0443 \u0444\u0430\u0440\u043C\u0430\u0446\u0435 base64url",json_string:"JSON \u0440\u0430\u0434\u043E\u043A",e164:"\u043D\u0443\u043C\u0430\u0440 E.164",jwt:"JWT",template_literal:"\u0443\u0432\u043E\u0434"},i={nan:"NaN",number:"\u043B\u0456\u043A",array:"\u043C\u0430\u0441\u0456\u045E"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=_(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u045E\u0432\u043E\u0434: \u0447\u0430\u043A\u0430\u045E\u0441\u044F instanceof ${n.expected}, \u0430\u0442\u0440\u044B\u043C\u0430\u043D\u0430 ${c}`:`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u045E\u0432\u043E\u0434: \u0447\u0430\u043A\u0430\u045E\u0441\u044F ${o}, \u0430\u0442\u0440\u044B\u043C\u0430\u043D\u0430 ${c}`}case"invalid_value":return n.values.length===1?`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u045E\u0432\u043E\u0434: \u0447\u0430\u043A\u0430\u043B\u0430\u0441\u044F ${v(n.values[0])}`:`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u0432\u0430\u0440\u044B\u044F\u043D\u0442: \u0447\u0430\u043A\u0430\u045E\u0441\u044F \u0430\u0434\u0437\u0456\u043D \u0437 ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);if(a){let c=Number(n.maximum),l=Of(c,a.unit.one,a.unit.few,a.unit.many);return`\u0417\u0430\u043D\u0430\u0434\u0442\u0430 \u0432\u044F\u043B\u0456\u043A\u0456: \u0447\u0430\u043A\u0430\u043B\u0430\u0441\u044F, \u0448\u0442\u043E ${n.origin??"\u0437\u043D\u0430\u0447\u044D\u043D\u043D\u0435"} \u043F\u0430\u0432\u0456\u043D\u043D\u0430 ${a.verb} ${o}${n.maximum.toString()} ${l}`}return`\u0417\u0430\u043D\u0430\u0434\u0442\u0430 \u0432\u044F\u043B\u0456\u043A\u0456: \u0447\u0430\u043A\u0430\u043B\u0430\u0441\u044F, \u0448\u0442\u043E ${n.origin??"\u0437\u043D\u0430\u0447\u044D\u043D\u043D\u0435"} \u043F\u0430\u0432\u0456\u043D\u043D\u0430 \u0431\u044B\u0446\u044C ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);if(a){let c=Number(n.minimum),l=Of(c,a.unit.one,a.unit.few,a.unit.many);return`\u0417\u0430\u043D\u0430\u0434\u0442\u0430 \u043C\u0430\u043B\u044B: \u0447\u0430\u043A\u0430\u043B\u0430\u0441\u044F, \u0448\u0442\u043E ${n.origin} \u043F\u0430\u0432\u0456\u043D\u043D\u0430 ${a.verb} ${o}${n.minimum.toString()} ${l}`}return`\u0417\u0430\u043D\u0430\u0434\u0442\u0430 \u043C\u0430\u043B\u044B: \u0447\u0430\u043A\u0430\u043B\u0430\u0441\u044F, \u0448\u0442\u043E ${n.origin} \u043F\u0430\u0432\u0456\u043D\u043D\u0430 \u0431\u044B\u0446\u044C ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u0440\u0430\u0434\u043E\u043A: \u043F\u0430\u0432\u0456\u043D\u0435\u043D \u043F\u0430\u0447\u044B\u043D\u0430\u0446\u0446\u0430 \u0437 "${o.prefix}"`:o.format==="ends_with"?`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u0440\u0430\u0434\u043E\u043A: \u043F\u0430\u0432\u0456\u043D\u0435\u043D \u0437\u0430\u043A\u0430\u043D\u0447\u0432\u0430\u0446\u0446\u0430 \u043D\u0430 "${o.suffix}"`:o.format==="includes"?`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u0440\u0430\u0434\u043E\u043A: \u043F\u0430\u0432\u0456\u043D\u0435\u043D \u0437\u043C\u044F\u0448\u0447\u0430\u0446\u044C "${o.includes}"`:o.format==="regex"?`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u0440\u0430\u0434\u043E\u043A: \u043F\u0430\u0432\u0456\u043D\u0435\u043D \u0430\u0434\u043F\u0430\u0432\u044F\u0434\u0430\u0446\u044C \u0448\u0430\u0431\u043B\u043E\u043D\u0443 ${o.pattern}`:`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B ${r[o.format]??n.format}`}case"not_multiple_of":return`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u043B\u0456\u043A: \u043F\u0430\u0432\u0456\u043D\u0435\u043D \u0431\u044B\u0446\u044C \u043A\u0440\u0430\u0442\u043D\u044B\u043C ${n.divisor}`;case"unrecognized_keys":return`\u041D\u0435\u0440\u0430\u0441\u043F\u0430\u0437\u043D\u0430\u043D\u044B ${n.keys.length>1?"\u043A\u043B\u044E\u0447\u044B":"\u043A\u043B\u044E\u0447"}: ${h(n.keys,", ")}`;case"invalid_key":return`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u043A\u043B\u044E\u0447 \u0443 ${n.origin}`;case"invalid_union":return"\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u045E\u0432\u043E\u0434";case"invalid_element":return`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u0430\u0435 \u0437\u043D\u0430\u0447\u044D\u043D\u043D\u0435 \u045E ${n.origin}`;default:return"\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u045E\u0432\u043E\u0434"}}};function Tf(){return{localeError:vx()}}var _x=()=>{let t={string:{unit:"\u0441\u0438\u043C\u0432\u043E\u043B\u0430",verb:"\u0434\u0430 \u0441\u044A\u0434\u044A\u0440\u0436\u0430"},file:{unit:"\u0431\u0430\u0439\u0442\u0430",verb:"\u0434\u0430 \u0441\u044A\u0434\u044A\u0440\u0436\u0430"},array:{unit:"\u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0430",verb:"\u0434\u0430 \u0441\u044A\u0434\u044A\u0440\u0436\u0430"},set:{unit:"\u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0430",verb:"\u0434\u0430 \u0441\u044A\u0434\u044A\u0440\u0436\u0430"}};function e(n){return t[n]??null}let r={regex:"\u0432\u0445\u043E\u0434",email:"\u0438\u043C\u0435\u0439\u043B \u0430\u0434\u0440\u0435\u0441",url:"URL",emoji:"\u0435\u043C\u043E\u0434\u0436\u0438",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO \u0432\u0440\u0435\u043C\u0435",date:"ISO \u0434\u0430\u0442\u0430",time:"ISO \u0432\u0440\u0435\u043C\u0435",duration:"ISO \u043F\u0440\u043E\u0434\u044A\u043B\u0436\u0438\u0442\u0435\u043B\u043D\u043E\u0441\u0442",ipv4:"IPv4 \u0430\u0434\u0440\u0435\u0441",ipv6:"IPv6 \u0430\u0434\u0440\u0435\u0441",cidrv4:"IPv4 \u0434\u0438\u0430\u043F\u0430\u0437\u043E\u043D",cidrv6:"IPv6 \u0434\u0438\u0430\u043F\u0430\u0437\u043E\u043D",base64:"base64-\u043A\u043E\u0434\u0438\u0440\u0430\u043D \u043D\u0438\u0437",base64url:"base64url-\u043A\u043E\u0434\u0438\u0440\u0430\u043D \u043D\u0438\u0437",json_string:"JSON \u043D\u0438\u0437",e164:"E.164 \u043D\u043E\u043C\u0435\u0440",jwt:"JWT",template_literal:"\u0432\u0445\u043E\u0434"},i={nan:"NaN",number:"\u0447\u0438\u0441\u043B\u043E",array:"\u043C\u0430\u0441\u0438\u0432"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=_(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u0432\u0445\u043E\u0434: \u043E\u0447\u0430\u043A\u0432\u0430\u043D instanceof ${n.expected}, \u043F\u043E\u043B\u0443\u0447\u0435\u043D ${c}`:`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u0432\u0445\u043E\u0434: \u043E\u0447\u0430\u043A\u0432\u0430\u043D ${o}, \u043F\u043E\u043B\u0443\u0447\u0435\u043D ${c}`}case"invalid_value":return n.values.length===1?`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u0432\u0445\u043E\u0434: \u043E\u0447\u0430\u043A\u0432\u0430\u043D ${v(n.values[0])}`:`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u043D\u0430 \u043E\u043F\u0446\u0438\u044F: \u043E\u0447\u0430\u043A\u0432\u0430\u043D\u043E \u0435\u0434\u043D\u043E \u043E\u0442 ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`\u0422\u0432\u044A\u0440\u0434\u0435 \u0433\u043E\u043B\u044F\u043C\u043E: \u043E\u0447\u0430\u043A\u0432\u0430 \u0441\u0435 ${n.origin??"\u0441\u0442\u043E\u0439\u043D\u043E\u0441\u0442"} \u0434\u0430 \u0441\u044A\u0434\u044A\u0440\u0436\u0430 ${o}${n.maximum.toString()} ${a.unit??"\u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0430"}`:`\u0422\u0432\u044A\u0440\u0434\u0435 \u0433\u043E\u043B\u044F\u043C\u043E: \u043E\u0447\u0430\u043A\u0432\u0430 \u0441\u0435 ${n.origin??"\u0441\u0442\u043E\u0439\u043D\u043E\u0441\u0442"} \u0434\u0430 \u0431\u044A\u0434\u0435 ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`\u0422\u0432\u044A\u0440\u0434\u0435 \u043C\u0430\u043B\u043A\u043E: \u043E\u0447\u0430\u043A\u0432\u0430 \u0441\u0435 ${n.origin} \u0434\u0430 \u0441\u044A\u0434\u044A\u0440\u0436\u0430 ${o}${n.minimum.toString()} ${a.unit}`:`\u0422\u0432\u044A\u0440\u0434\u0435 \u043C\u0430\u043B\u043A\u043E: \u043E\u0447\u0430\u043A\u0432\u0430 \u0441\u0435 ${n.origin} \u0434\u0430 \u0431\u044A\u0434\u0435 ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;if(o.format==="starts_with")return`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u043D\u0438\u0437: \u0442\u0440\u044F\u0431\u0432\u0430 \u0434\u0430 \u0437\u0430\u043F\u043E\u0447\u0432\u0430 \u0441 "${o.prefix}"`;if(o.format==="ends_with")return`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u043D\u0438\u0437: \u0442\u0440\u044F\u0431\u0432\u0430 \u0434\u0430 \u0437\u0430\u0432\u044A\u0440\u0448\u0432\u0430 \u0441 "${o.suffix}"`;if(o.format==="includes")return`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u043D\u0438\u0437: \u0442\u0440\u044F\u0431\u0432\u0430 \u0434\u0430 \u0432\u043A\u043B\u044E\u0447\u0432\u0430 "${o.includes}"`;if(o.format==="regex")return`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u043D\u0438\u0437: \u0442\u0440\u044F\u0431\u0432\u0430 \u0434\u0430 \u0441\u044A\u0432\u043F\u0430\u0434\u0430 \u0441 ${o.pattern}`;let a="\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D";return o.format==="emoji"&&(a="\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u043D\u043E"),o.format==="datetime"&&(a="\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u043D\u043E"),o.format==="date"&&(a="\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u043D\u0430"),o.format==="time"&&(a="\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u043D\u043E"),o.format==="duration"&&(a="\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u043D\u0430"),`${a} ${r[o.format]??n.format}`}case"not_multiple_of":return`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u043D\u043E \u0447\u0438\u0441\u043B\u043E: \u0442\u0440\u044F\u0431\u0432\u0430 \u0434\u0430 \u0431\u044A\u0434\u0435 \u043A\u0440\u0430\u0442\u043D\u043E \u043D\u0430 ${n.divisor}`;case"unrecognized_keys":return`\u041D\u0435\u0440\u0430\u0437\u043F\u043E\u0437\u043D\u0430\u0442${n.keys.length>1?"\u0438":""} \u043A\u043B\u044E\u0447${n.keys.length>1?"\u043E\u0432\u0435":""}: ${h(n.keys,", ")}`;case"invalid_key":return`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u043A\u043B\u044E\u0447 \u0432 ${n.origin}`;case"invalid_union":return"\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u0432\u0445\u043E\u0434";case"invalid_element":return`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u043D\u0430 \u0441\u0442\u043E\u0439\u043D\u043E\u0441\u0442 \u0432 ${n.origin}`;default:return"\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u0432\u0445\u043E\u0434"}}};function Rf(){return{localeError:_x()}}var yx=()=>{let t={string:{unit:"car\xE0cters",verb:"contenir"},file:{unit:"bytes",verb:"contenir"},array:{unit:"elements",verb:"contenir"},set:{unit:"elements",verb:"contenir"}};function e(n){return t[n]??null}let r={regex:"entrada",email:"adre\xE7a electr\xF2nica",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:"data i hora ISO",date:"data ISO",time:"hora ISO",duration:"durada ISO",ipv4:"adre\xE7a IPv4",ipv6:"adre\xE7a IPv6",cidrv4:"rang IPv4",cidrv6:"rang IPv6",base64:"cadena codificada en base64",base64url:"cadena codificada en base64url",json_string:"cadena JSON",e164:"n\xFAmero E.164",jwt:"JWT",template_literal:"entrada"},i={nan:"NaN"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=_(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`Tipus inv\xE0lid: s'esperava instanceof ${n.expected}, s'ha rebut ${c}`:`Tipus inv\xE0lid: s'esperava ${o}, s'ha rebut ${c}`}case"invalid_value":return n.values.length===1?`Valor inv\xE0lid: s'esperava ${v(n.values[0])}`:`Opci\xF3 inv\xE0lida: s'esperava una de ${h(n.values," o ")}`;case"too_big":{let o=n.inclusive?"com a m\xE0xim":"menys de",a=e(n.origin);return a?`Massa gran: s'esperava que ${n.origin??"el valor"} contingu\xE9s ${o} ${n.maximum.toString()} ${a.unit??"elements"}`:`Massa gran: s'esperava que ${n.origin??"el valor"} fos ${o} ${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?"com a m\xEDnim":"m\xE9s de",a=e(n.origin);return a?`Massa petit: s'esperava que ${n.origin} contingu\xE9s ${o} ${n.minimum.toString()} ${a.unit}`:`Massa petit: s'esperava que ${n.origin} fos ${o} ${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Format inv\xE0lid: ha de comen\xE7ar amb "${o.prefix}"`:o.format==="ends_with"?`Format inv\xE0lid: ha d'acabar amb "${o.suffix}"`:o.format==="includes"?`Format inv\xE0lid: ha d'incloure "${o.includes}"`:o.format==="regex"?`Format inv\xE0lid: ha de coincidir amb el patr\xF3 ${o.pattern}`:`Format inv\xE0lid per a ${r[o.format]??n.format}`}case"not_multiple_of":return`N\xFAmero inv\xE0lid: ha de ser m\xFAltiple de ${n.divisor}`;case"unrecognized_keys":return`Clau${n.keys.length>1?"s":""} no reconeguda${n.keys.length>1?"s":""}: ${h(n.keys,", ")}`;case"invalid_key":return`Clau inv\xE0lida a ${n.origin}`;case"invalid_union":return"Entrada inv\xE0lida";case"invalid_element":return`Element inv\xE0lid a ${n.origin}`;default:return"Entrada inv\xE0lida"}}};function Af(){return{localeError:yx()}}var kx=()=>{let t={string:{unit:"znak\u016F",verb:"m\xEDt"},file:{unit:"bajt\u016F",verb:"m\xEDt"},array:{unit:"prvk\u016F",verb:"m\xEDt"},set:{unit:"prvk\u016F",verb:"m\xEDt"}};function e(n){return t[n]??null}let r={regex:"regul\xE1rn\xED v\xFDraz",email:"e-mailov\xE1 adresa",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:"datum a \u010Das ve form\xE1tu ISO",date:"datum ve form\xE1tu ISO",time:"\u010Das ve form\xE1tu ISO",duration:"doba trv\xE1n\xED ISO",ipv4:"IPv4 adresa",ipv6:"IPv6 adresa",cidrv4:"rozsah IPv4",cidrv6:"rozsah IPv6",base64:"\u0159et\u011Bzec zak\xF3dovan\xFD ve form\xE1tu base64",base64url:"\u0159et\u011Bzec zak\xF3dovan\xFD ve form\xE1tu base64url",json_string:"\u0159et\u011Bzec ve form\xE1tu JSON",e164:"\u010D\xEDslo E.164",jwt:"JWT",template_literal:"vstup"},i={nan:"NaN",number:"\u010D\xEDslo",string:"\u0159et\u011Bzec",function:"funkce",array:"pole"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=_(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`Neplatn\xFD vstup: o\u010Dek\xE1v\xE1no instanceof ${n.expected}, obdr\u017Eeno ${c}`:`Neplatn\xFD vstup: o\u010Dek\xE1v\xE1no ${o}, obdr\u017Eeno ${c}`}case"invalid_value":return n.values.length===1?`Neplatn\xFD vstup: o\u010Dek\xE1v\xE1no ${v(n.values[0])}`:`Neplatn\xE1 mo\u017Enost: o\u010Dek\xE1v\xE1na jedna z hodnot ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`Hodnota je p\u0159\xEDli\u0161 velk\xE1: ${n.origin??"hodnota"} mus\xED m\xEDt ${o}${n.maximum.toString()} ${a.unit??"prvk\u016F"}`:`Hodnota je p\u0159\xEDli\u0161 velk\xE1: ${n.origin??"hodnota"} mus\xED b\xFDt ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`Hodnota je p\u0159\xEDli\u0161 mal\xE1: ${n.origin??"hodnota"} mus\xED m\xEDt ${o}${n.minimum.toString()} ${a.unit??"prvk\u016F"}`:`Hodnota je p\u0159\xEDli\u0161 mal\xE1: ${n.origin??"hodnota"} mus\xED b\xFDt ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Neplatn\xFD \u0159et\u011Bzec: mus\xED za\u010D\xEDnat na "${o.prefix}"`:o.format==="ends_with"?`Neplatn\xFD \u0159et\u011Bzec: mus\xED kon\u010Dit na "${o.suffix}"`:o.format==="includes"?`Neplatn\xFD \u0159et\u011Bzec: mus\xED obsahovat "${o.includes}"`:o.format==="regex"?`Neplatn\xFD \u0159et\u011Bzec: mus\xED odpov\xEDdat vzoru ${o.pattern}`:`Neplatn\xFD form\xE1t ${r[o.format]??n.format}`}case"not_multiple_of":return`Neplatn\xE9 \u010D\xEDslo: mus\xED b\xFDt n\xE1sobkem ${n.divisor}`;case"unrecognized_keys":return`Nezn\xE1m\xE9 kl\xED\u010De: ${h(n.keys,", ")}`;case"invalid_key":return`Neplatn\xFD kl\xED\u010D v ${n.origin}`;case"invalid_union":return"Neplatn\xFD vstup";case"invalid_element":return`Neplatn\xE1 hodnota v ${n.origin}`;default:return"Neplatn\xFD vstup"}}};function Cf(){return{localeError:kx()}}var xx=()=>{let t={string:{unit:"tegn",verb:"havde"},file:{unit:"bytes",verb:"havde"},array:{unit:"elementer",verb:"indeholdt"},set:{unit:"elementer",verb:"indeholdt"}};function e(n){return t[n]??null}let r={regex:"input",email:"e-mailadresse",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 dato- og klokkesl\xE6t",date:"ISO-dato",time:"ISO-klokkesl\xE6t",duration:"ISO-varighed",ipv4:"IPv4-omr\xE5de",ipv6:"IPv6-omr\xE5de",cidrv4:"IPv4-spektrum",cidrv6:"IPv6-spektrum",base64:"base64-kodet streng",base64url:"base64url-kodet streng",json_string:"JSON-streng",e164:"E.164-nummer",jwt:"JWT",template_literal:"input"},i={nan:"NaN",string:"streng",number:"tal",boolean:"boolean",array:"liste",object:"objekt",set:"s\xE6t",file:"fil"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=_(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`Ugyldigt input: forventede instanceof ${n.expected}, fik ${c}`:`Ugyldigt input: forventede ${o}, fik ${c}`}case"invalid_value":return n.values.length===1?`Ugyldig v\xE6rdi: forventede ${v(n.values[0])}`:`Ugyldigt valg: forventede en af f\xF8lgende ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin),c=i[n.origin]??n.origin;return a?`For stor: forventede ${c??"value"} ${a.verb} ${o} ${n.maximum.toString()} ${a.unit??"elementer"}`:`For stor: forventede ${c??"value"} havde ${o} ${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin),c=i[n.origin]??n.origin;return a?`For lille: forventede ${c} ${a.verb} ${o} ${n.minimum.toString()} ${a.unit}`:`For lille: forventede ${c} havde ${o} ${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Ugyldig streng: skal starte med "${o.prefix}"`:o.format==="ends_with"?`Ugyldig streng: skal ende med "${o.suffix}"`:o.format==="includes"?`Ugyldig streng: skal indeholde "${o.includes}"`:o.format==="regex"?`Ugyldig streng: skal matche m\xF8nsteret ${o.pattern}`:`Ugyldig ${r[o.format]??n.format}`}case"not_multiple_of":return`Ugyldigt tal: skal v\xE6re deleligt med ${n.divisor}`;case"unrecognized_keys":return`${n.keys.length>1?"Ukendte n\xF8gler":"Ukendt n\xF8gle"}: ${h(n.keys,", ")}`;case"invalid_key":return`Ugyldig n\xF8gle i ${n.origin}`;case"invalid_union":return"Ugyldigt input: matcher ingen af de tilladte typer";case"invalid_element":return`Ugyldig v\xE6rdi i ${n.origin}`;default:return"Ugyldigt input"}}};function Pf(){return{localeError:xx()}}var Ix=()=>{let t={string:{unit:"Zeichen",verb:"zu haben"},file:{unit:"Bytes",verb:"zu haben"},array:{unit:"Elemente",verb:"zu haben"},set:{unit:"Elemente",verb:"zu haben"}};function e(n){return t[n]??null}let r={regex:"Eingabe",email:"E-Mail-Adresse",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-Datum und -Uhrzeit",date:"ISO-Datum",time:"ISO-Uhrzeit",duration:"ISO-Dauer",ipv4:"IPv4-Adresse",ipv6:"IPv6-Adresse",cidrv4:"IPv4-Bereich",cidrv6:"IPv6-Bereich",base64:"Base64-codierter String",base64url:"Base64-URL-codierter String",json_string:"JSON-String",e164:"E.164-Nummer",jwt:"JWT",template_literal:"Eingabe"},i={nan:"NaN",number:"Zahl",array:"Array"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=_(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`Ung\xFCltige Eingabe: erwartet instanceof ${n.expected}, erhalten ${c}`:`Ung\xFCltige Eingabe: erwartet ${o}, erhalten ${c}`}case"invalid_value":return n.values.length===1?`Ung\xFCltige Eingabe: erwartet ${v(n.values[0])}`:`Ung\xFCltige Option: erwartet eine von ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`Zu gro\xDF: erwartet, dass ${n.origin??"Wert"} ${o}${n.maximum.toString()} ${a.unit??"Elemente"} hat`:`Zu gro\xDF: erwartet, dass ${n.origin??"Wert"} ${o}${n.maximum.toString()} ist`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`Zu klein: erwartet, dass ${n.origin} ${o}${n.minimum.toString()} ${a.unit} hat`:`Zu klein: erwartet, dass ${n.origin} ${o}${n.minimum.toString()} ist`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Ung\xFCltiger String: muss mit "${o.prefix}" beginnen`:o.format==="ends_with"?`Ung\xFCltiger String: muss mit "${o.suffix}" enden`:o.format==="includes"?`Ung\xFCltiger String: muss "${o.includes}" enthalten`:o.format==="regex"?`Ung\xFCltiger String: muss dem Muster ${o.pattern} entsprechen`:`Ung\xFCltig: ${r[o.format]??n.format}`}case"not_multiple_of":return`Ung\xFCltige Zahl: muss ein Vielfaches von ${n.divisor} sein`;case"unrecognized_keys":return`${n.keys.length>1?"Unbekannte Schl\xFCssel":"Unbekannter Schl\xFCssel"}: ${h(n.keys,", ")}`;case"invalid_key":return`Ung\xFCltiger Schl\xFCssel in ${n.origin}`;case"invalid_union":return"Ung\xFCltige Eingabe";case"invalid_element":return`Ung\xFCltiger Wert in ${n.origin}`;default:return"Ung\xFCltige Eingabe"}}};function Nf(){return{localeError:Ix()}}var Sx=()=>{let t={string:{unit:"\u03C7\u03B1\u03C1\u03B1\u03BA\u03C4\u03AE\u03C1\u03B5\u03C2",verb:"\u03BD\u03B1 \u03AD\u03C7\u03B5\u03B9"},file:{unit:"bytes",verb:"\u03BD\u03B1 \u03AD\u03C7\u03B5\u03B9"},array:{unit:"\u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03B1",verb:"\u03BD\u03B1 \u03AD\u03C7\u03B5\u03B9"},set:{unit:"\u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03B1",verb:"\u03BD\u03B1 \u03AD\u03C7\u03B5\u03B9"},map:{unit:"\u03BA\u03B1\u03C4\u03B1\u03C7\u03C9\u03C1\u03AE\u03C3\u03B5\u03B9\u03C2",verb:"\u03BD\u03B1 \u03AD\u03C7\u03B5\u03B9"}};function e(n){return t[n]??null}let r={regex:"\u03B5\u03AF\u03C3\u03BF\u03B4\u03BF\u03C2",email:"\u03B4\u03B9\u03B5\u03CD\u03B8\u03C5\u03BD\u03C3\u03B7 email",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 \u03B7\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1 \u03BA\u03B1\u03B9 \u03CE\u03C1\u03B1",date:"ISO \u03B7\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1",time:"ISO \u03CE\u03C1\u03B1",duration:"ISO \u03B4\u03B9\u03AC\u03C1\u03BA\u03B5\u03B9\u03B1",ipv4:"\u03B4\u03B9\u03B5\u03CD\u03B8\u03C5\u03BD\u03C3\u03B7 IPv4",ipv6:"\u03B4\u03B9\u03B5\u03CD\u03B8\u03C5\u03BD\u03C3\u03B7 IPv6",mac:"\u03B4\u03B9\u03B5\u03CD\u03B8\u03C5\u03BD\u03C3\u03B7 MAC",cidrv4:"\u03B5\u03CD\u03C1\u03BF\u03C2 IPv4",cidrv6:"\u03B5\u03CD\u03C1\u03BF\u03C2 IPv6",base64:"\u03C3\u03C5\u03BC\u03B2\u03BF\u03BB\u03BF\u03C3\u03B5\u03B9\u03C1\u03AC \u03BA\u03C9\u03B4\u03B9\u03BA\u03BF\u03C0\u03BF\u03B9\u03B7\u03BC\u03AD\u03BD\u03B7 \u03C3\u03B5 base64",base64url:"\u03C3\u03C5\u03BC\u03B2\u03BF\u03BB\u03BF\u03C3\u03B5\u03B9\u03C1\u03AC \u03BA\u03C9\u03B4\u03B9\u03BA\u03BF\u03C0\u03BF\u03B9\u03B7\u03BC\u03AD\u03BD\u03B7 \u03C3\u03B5 base64url",json_string:"\u03C3\u03C5\u03BC\u03B2\u03BF\u03BB\u03BF\u03C3\u03B5\u03B9\u03C1\u03AC JSON",e164:"\u03B1\u03C1\u03B9\u03B8\u03BC\u03CC\u03C2 E.164",jwt:"JWT",template_literal:"\u03B5\u03AF\u03C3\u03BF\u03B4\u03BF\u03C2"},i={nan:"NaN"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=_(n.input),c=i[a]??a;return typeof n.expected=="string"&&/^[A-Z]/.test(n.expected)?`\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03B5\u03AF\u03C3\u03BF\u03B4\u03BF\u03C2: \u03B1\u03BD\u03B1\u03BC\u03B5\u03BD\u03CC\u03C4\u03B1\u03BD instanceof ${n.expected}, \u03BB\u03AE\u03C6\u03B8\u03B7\u03BA\u03B5 ${c}`:`\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03B5\u03AF\u03C3\u03BF\u03B4\u03BF\u03C2: \u03B1\u03BD\u03B1\u03BC\u03B5\u03BD\u03CC\u03C4\u03B1\u03BD ${o}, \u03BB\u03AE\u03C6\u03B8\u03B7\u03BA\u03B5 ${c}`}case"invalid_value":return n.values.length===1?`\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03B5\u03AF\u03C3\u03BF\u03B4\u03BF\u03C2: \u03B1\u03BD\u03B1\u03BC\u03B5\u03BD\u03CC\u03C4\u03B1\u03BD ${v(n.values[0])}`:`\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03B5\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE: \u03B1\u03BD\u03B1\u03BC\u03B5\u03BD\u03CC\u03C4\u03B1\u03BD \u03AD\u03BD\u03B1 \u03B1\u03C0\u03CC ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`\u03A0\u03BF\u03BB\u03CD \u03BC\u03B5\u03B3\u03AC\u03BB\u03BF: \u03B1\u03BD\u03B1\u03BC\u03B5\u03BD\u03CC\u03C4\u03B1\u03BD ${n.origin??"\u03C4\u03B9\u03BC\u03AE"} \u03BD\u03B1 \u03AD\u03C7\u03B5\u03B9 ${o}${n.maximum.toString()} ${a.unit??"\u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03B1"}`:`\u03A0\u03BF\u03BB\u03CD \u03BC\u03B5\u03B3\u03AC\u03BB\u03BF: \u03B1\u03BD\u03B1\u03BC\u03B5\u03BD\u03CC\u03C4\u03B1\u03BD ${n.origin??"\u03C4\u03B9\u03BC\u03AE"} \u03BD\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9 ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`\u03A0\u03BF\u03BB\u03CD \u03BC\u03B9\u03BA\u03C1\u03CC: \u03B1\u03BD\u03B1\u03BC\u03B5\u03BD\u03CC\u03C4\u03B1\u03BD ${n.origin} \u03BD\u03B1 \u03AD\u03C7\u03B5\u03B9 ${o}${n.minimum.toString()} ${a.unit}`:`\u03A0\u03BF\u03BB\u03CD \u03BC\u03B9\u03BA\u03C1\u03CC: \u03B1\u03BD\u03B1\u03BC\u03B5\u03BD\u03CC\u03C4\u03B1\u03BD ${n.origin} \u03BD\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9 ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03C3\u03C5\u03BC\u03B2\u03BF\u03BB\u03BF\u03C3\u03B5\u03B9\u03C1\u03AC: \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03BE\u03B5\u03BA\u03B9\u03BD\u03AC \u03BC\u03B5 "${o.prefix}"`:o.format==="ends_with"?`\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03C3\u03C5\u03BC\u03B2\u03BF\u03BB\u03BF\u03C3\u03B5\u03B9\u03C1\u03AC: \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03C4\u03B5\u03BB\u03B5\u03B9\u03CE\u03BD\u03B5\u03B9 \u03BC\u03B5 "${o.suffix}"`:o.format==="includes"?`\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03C3\u03C5\u03BC\u03B2\u03BF\u03BB\u03BF\u03C3\u03B5\u03B9\u03C1\u03AC: \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03C0\u03B5\u03C1\u03B9\u03AD\u03C7\u03B5\u03B9 "${o.includes}"`:o.format==="regex"?`\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03C3\u03C5\u03BC\u03B2\u03BF\u03BB\u03BF\u03C3\u03B5\u03B9\u03C1\u03AC: \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03C4\u03B1\u03B9\u03C1\u03B9\u03AC\u03B6\u03B5\u03B9 \u03BC\u03B5 \u03C4\u03BF \u03BC\u03BF\u03C4\u03AF\u03B2\u03BF ${o.pattern}`:`\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03BF: ${r[o.format]??n.format}`}case"not_multiple_of":return`\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03BF\u03C2 \u03B1\u03C1\u03B9\u03B8\u03BC\u03CC\u03C2: \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03C0\u03BF\u03BB\u03BB\u03B1\u03C0\u03BB\u03AC\u03C3\u03B9\u03BF \u03C4\u03BF\u03C5 ${n.divisor}`;case"unrecognized_keys":return`\u0386\u03B3\u03BD\u03C9\u03C3\u03C4${n.keys.length>1?"\u03B1":"\u03BF"} \u03BA\u03BB\u03B5\u03B9\u03B4${n.keys.length>1?"\u03B9\u03AC":"\u03AF"}: ${h(n.keys,", ")}`;case"invalid_key":return`\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03BF \u03BA\u03BB\u03B5\u03B9\u03B4\u03AF \u03C3\u03C4\u03BF ${n.origin}`;case"invalid_union":return"\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03B5\u03AF\u03C3\u03BF\u03B4\u03BF\u03C2";case"invalid_element":return`\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03C4\u03B9\u03BC\u03AE \u03C3\u03C4\u03BF ${n.origin}`;default:return"\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03B5\u03AF\u03C3\u03BF\u03B4\u03BF\u03C2"}}};function Df(){return{localeError:Sx()}}var Ex=()=>{let t={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 e(n){return t[n]??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",jwt:"JWT",template_literal:"input"},i={nan:"NaN"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=_(n.input),c=i[a]??a;return`Invalid input: expected ${o}, received ${c}`}case"invalid_value":return n.values.length===1?`Invalid input: expected ${v(n.values[0])}`:`Invalid option: expected one of ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`Too big: expected ${n.origin??"value"} to have ${o}${n.maximum.toString()} ${a.unit??"elements"}`:`Too big: expected ${n.origin??"value"} to be ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`Too small: expected ${n.origin} to have ${o}${n.minimum.toString()} ${a.unit}`:`Too small: expected ${n.origin} to be ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Invalid string: must start with "${o.prefix}"`:o.format==="ends_with"?`Invalid string: must end with "${o.suffix}"`:o.format==="includes"?`Invalid string: must include "${o.includes}"`:o.format==="regex"?`Invalid string: must match pattern ${o.pattern}`:`Invalid ${r[o.format]??n.format}`}case"not_multiple_of":return`Invalid number: must be a multiple of ${n.divisor}`;case"unrecognized_keys":return`Unrecognized key${n.keys.length>1?"s":""}: ${h(n.keys,", ")}`;case"invalid_key":return`Invalid key in ${n.origin}`;case"invalid_union":return n.options&&Array.isArray(n.options)&&n.options.length>0?`Invalid discriminator value. Expected ${n.options.map(a=>`'${a}'`).join(" | ")}`:"Invalid input";case"invalid_element":return`Invalid value in ${n.origin}`;default:return"Invalid input"}}};function ci(){return{localeError:Ex()}}var wx=()=>{let t={string:{unit:"karaktrojn",verb:"havi"},file:{unit:"bajtojn",verb:"havi"},array:{unit:"elementojn",verb:"havi"},set:{unit:"elementojn",verb:"havi"}};function e(n){return t[n]??null}let r={regex:"enigo",email:"retadreso",url:"URL",emoji:"emo\u011Dio",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO-datotempo",date:"ISO-dato",time:"ISO-tempo",duration:"ISO-da\u016Dro",ipv4:"IPv4-adreso",ipv6:"IPv6-adreso",cidrv4:"IPv4-rango",cidrv6:"IPv6-rango",base64:"64-ume kodita karaktraro",base64url:"URL-64-ume kodita karaktraro",json_string:"JSON-karaktraro",e164:"E.164-nombro",jwt:"JWT",template_literal:"enigo"},i={nan:"NaN",number:"nombro",array:"tabelo",null:"senvalora"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=_(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`Nevalida enigo: atendi\u011Dis instanceof ${n.expected}, ricevi\u011Dis ${c}`:`Nevalida enigo: atendi\u011Dis ${o}, ricevi\u011Dis ${c}`}case"invalid_value":return n.values.length===1?`Nevalida enigo: atendi\u011Dis ${v(n.values[0])}`:`Nevalida opcio: atendi\u011Dis unu el ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`Tro granda: atendi\u011Dis ke ${n.origin??"valoro"} havu ${o}${n.maximum.toString()} ${a.unit??"elementojn"}`:`Tro granda: atendi\u011Dis ke ${n.origin??"valoro"} havu ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`Tro malgranda: atendi\u011Dis ke ${n.origin} havu ${o}${n.minimum.toString()} ${a.unit}`:`Tro malgranda: atendi\u011Dis ke ${n.origin} estu ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Nevalida karaktraro: devas komenci\u011Di per "${o.prefix}"`:o.format==="ends_with"?`Nevalida karaktraro: devas fini\u011Di per "${o.suffix}"`:o.format==="includes"?`Nevalida karaktraro: devas inkluzivi "${o.includes}"`:o.format==="regex"?`Nevalida karaktraro: devas kongrui kun la modelo ${o.pattern}`:`Nevalida ${r[o.format]??n.format}`}case"not_multiple_of":return`Nevalida nombro: devas esti oblo de ${n.divisor}`;case"unrecognized_keys":return`Nekonata${n.keys.length>1?"j":""} \u015Dlosilo${n.keys.length>1?"j":""}: ${h(n.keys,", ")}`;case"invalid_key":return`Nevalida \u015Dlosilo en ${n.origin}`;case"invalid_union":return"Nevalida enigo";case"invalid_element":return`Nevalida valoro en ${n.origin}`;default:return"Nevalida enigo"}}};function Uf(){return{localeError:wx()}}var $x=()=>{let t={string:{unit:"caracteres",verb:"tener"},file:{unit:"bytes",verb:"tener"},array:{unit:"elementos",verb:"tener"},set:{unit:"elementos",verb:"tener"}};function e(n){return t[n]??null}let r={regex:"entrada",email:"direcci\xF3n de correo electr\xF3nico",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:"fecha y hora ISO",date:"fecha ISO",time:"hora ISO",duration:"duraci\xF3n ISO",ipv4:"direcci\xF3n IPv4",ipv6:"direcci\xF3n IPv6",cidrv4:"rango IPv4",cidrv6:"rango IPv6",base64:"cadena codificada en base64",base64url:"URL codificada en base64",json_string:"cadena JSON",e164:"n\xFAmero E.164",jwt:"JWT",template_literal:"entrada"},i={nan:"NaN",string:"texto",number:"n\xFAmero",boolean:"booleano",array:"arreglo",object:"objeto",set:"conjunto",file:"archivo",date:"fecha",bigint:"n\xFAmero grande",symbol:"s\xEDmbolo",undefined:"indefinido",null:"nulo",function:"funci\xF3n",map:"mapa",record:"registro",tuple:"tupla",enum:"enumeraci\xF3n",union:"uni\xF3n",literal:"literal",promise:"promesa",void:"vac\xEDo",never:"nunca",unknown:"desconocido",any:"cualquiera"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=_(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`Entrada inv\xE1lida: se esperaba instanceof ${n.expected}, recibido ${c}`:`Entrada inv\xE1lida: se esperaba ${o}, recibido ${c}`}case"invalid_value":return n.values.length===1?`Entrada inv\xE1lida: se esperaba ${v(n.values[0])}`:`Opci\xF3n inv\xE1lida: se esperaba una de ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin),c=i[n.origin]??n.origin;return a?`Demasiado grande: se esperaba que ${c??"valor"} tuviera ${o}${n.maximum.toString()} ${a.unit??"elementos"}`:`Demasiado grande: se esperaba que ${c??"valor"} fuera ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin),c=i[n.origin]??n.origin;return a?`Demasiado peque\xF1o: se esperaba que ${c} tuviera ${o}${n.minimum.toString()} ${a.unit}`:`Demasiado peque\xF1o: se esperaba que ${c} fuera ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Cadena inv\xE1lida: debe comenzar con "${o.prefix}"`:o.format==="ends_with"?`Cadena inv\xE1lida: debe terminar en "${o.suffix}"`:o.format==="includes"?`Cadena inv\xE1lida: debe incluir "${o.includes}"`:o.format==="regex"?`Cadena inv\xE1lida: debe coincidir con el patr\xF3n ${o.pattern}`:`Inv\xE1lido ${r[o.format]??n.format}`}case"not_multiple_of":return`N\xFAmero inv\xE1lido: debe ser m\xFAltiplo de ${n.divisor}`;case"unrecognized_keys":return`Llave${n.keys.length>1?"s":""} desconocida${n.keys.length>1?"s":""}: ${h(n.keys,", ")}`;case"invalid_key":return`Llave inv\xE1lida en ${i[n.origin]??n.origin}`;case"invalid_union":return"Entrada inv\xE1lida";case"invalid_element":return`Valor inv\xE1lido en ${i[n.origin]??n.origin}`;default:return"Entrada inv\xE1lida"}}};function zf(){return{localeError:$x()}}var Ox=()=>{let t={string:{unit:"\u06A9\u0627\u0631\u0627\u06A9\u062A\u0631",verb:"\u062F\u0627\u0634\u062A\u0647 \u0628\u0627\u0634\u062F"},file:{unit:"\u0628\u0627\u06CC\u062A",verb:"\u062F\u0627\u0634\u062A\u0647 \u0628\u0627\u0634\u062F"},array:{unit:"\u0622\u06CC\u062A\u0645",verb:"\u062F\u0627\u0634\u062A\u0647 \u0628\u0627\u0634\u062F"},set:{unit:"\u0622\u06CC\u062A\u0645",verb:"\u062F\u0627\u0634\u062A\u0647 \u0628\u0627\u0634\u062F"}};function e(n){return t[n]??null}let r={regex:"\u0648\u0631\u0648\u062F\u06CC",email:"\u0622\u062F\u0631\u0633 \u0627\u06CC\u0645\u06CC\u0644",url:"URL",emoji:"\u0627\u06CC\u0645\u0648\u062C\u06CC",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"\u062A\u0627\u0631\u06CC\u062E \u0648 \u0632\u0645\u0627\u0646 \u0627\u06CC\u0632\u0648",date:"\u062A\u0627\u0631\u06CC\u062E \u0627\u06CC\u0632\u0648",time:"\u0632\u0645\u0627\u0646 \u0627\u06CC\u0632\u0648",duration:"\u0645\u062F\u062A \u0632\u0645\u0627\u0646 \u0627\u06CC\u0632\u0648",ipv4:"IPv4 \u0622\u062F\u0631\u0633",ipv6:"IPv6 \u0622\u062F\u0631\u0633",cidrv4:"IPv4 \u062F\u0627\u0645\u0646\u0647",cidrv6:"IPv6 \u062F\u0627\u0645\u0646\u0647",base64:"base64-encoded \u0631\u0634\u062A\u0647",base64url:"base64url-encoded \u0631\u0634\u062A\u0647",json_string:"JSON \u0631\u0634\u062A\u0647",e164:"E.164 \u0639\u062F\u062F",jwt:"JWT",template_literal:"\u0648\u0631\u0648\u062F\u06CC"},i={nan:"NaN",number:"\u0639\u062F\u062F",array:"\u0622\u0631\u0627\u06CC\u0647"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=_(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`\u0648\u0631\u0648\u062F\u06CC \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0645\u06CC\u200C\u0628\u0627\u06CC\u0633\u062A instanceof ${n.expected} \u0645\u06CC\u200C\u0628\u0648\u062F\u060C ${c} \u062F\u0631\u06CC\u0627\u0641\u062A \u0634\u062F`:`\u0648\u0631\u0648\u062F\u06CC \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0645\u06CC\u200C\u0628\u0627\u06CC\u0633\u062A ${o} \u0645\u06CC\u200C\u0628\u0648\u062F\u060C ${c} \u062F\u0631\u06CC\u0627\u0641\u062A \u0634\u062F`}case"invalid_value":return n.values.length===1?`\u0648\u0631\u0648\u062F\u06CC \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0645\u06CC\u200C\u0628\u0627\u06CC\u0633\u062A ${v(n.values[0])} \u0645\u06CC\u200C\u0628\u0648\u062F`:`\u06AF\u0632\u06CC\u0646\u0647 \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0645\u06CC\u200C\u0628\u0627\u06CC\u0633\u062A \u06CC\u06A9\u06CC \u0627\u0632 ${h(n.values,"|")} \u0645\u06CC\u200C\u0628\u0648\u062F`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`\u062E\u06CC\u0644\u06CC \u0628\u0632\u0631\u06AF: ${n.origin??"\u0645\u0642\u062F\u0627\u0631"} \u0628\u0627\u06CC\u062F ${o}${n.maximum.toString()} ${a.unit??"\u0639\u0646\u0635\u0631"} \u0628\u0627\u0634\u062F`:`\u062E\u06CC\u0644\u06CC \u0628\u0632\u0631\u06AF: ${n.origin??"\u0645\u0642\u062F\u0627\u0631"} \u0628\u0627\u06CC\u062F ${o}${n.maximum.toString()} \u0628\u0627\u0634\u062F`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`\u062E\u06CC\u0644\u06CC \u06A9\u0648\u0686\u06A9: ${n.origin} \u0628\u0627\u06CC\u062F ${o}${n.minimum.toString()} ${a.unit} \u0628\u0627\u0634\u062F`:`\u062E\u06CC\u0644\u06CC \u06A9\u0648\u0686\u06A9: ${n.origin} \u0628\u0627\u06CC\u062F ${o}${n.minimum.toString()} \u0628\u0627\u0634\u062F`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u0631\u0634\u062A\u0647 \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0628\u0627\u06CC\u062F \u0628\u0627 "${o.prefix}" \u0634\u0631\u0648\u0639 \u0634\u0648\u062F`:o.format==="ends_with"?`\u0631\u0634\u062A\u0647 \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0628\u0627\u06CC\u062F \u0628\u0627 "${o.suffix}" \u062A\u0645\u0627\u0645 \u0634\u0648\u062F`:o.format==="includes"?`\u0631\u0634\u062A\u0647 \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0628\u0627\u06CC\u062F \u0634\u0627\u0645\u0644 "${o.includes}" \u0628\u0627\u0634\u062F`:o.format==="regex"?`\u0631\u0634\u062A\u0647 \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0628\u0627\u06CC\u062F \u0628\u0627 \u0627\u0644\u06AF\u0648\u06CC ${o.pattern} \u0645\u0637\u0627\u0628\u0642\u062A \u062F\u0627\u0634\u062A\u0647 \u0628\u0627\u0634\u062F`:`${r[o.format]??n.format} \u0646\u0627\u0645\u0639\u062A\u0628\u0631`}case"not_multiple_of":return`\u0639\u062F\u062F \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0628\u0627\u06CC\u062F \u0645\u0636\u0631\u0628 ${n.divisor} \u0628\u0627\u0634\u062F`;case"unrecognized_keys":return`\u06A9\u0644\u06CC\u062F${n.keys.length>1?"\u0647\u0627\u06CC":""} \u0646\u0627\u0634\u0646\u0627\u0633: ${h(n.keys,", ")}`;case"invalid_key":return`\u06A9\u0644\u06CC\u062F \u0646\u0627\u0634\u0646\u0627\u0633 \u062F\u0631 ${n.origin}`;case"invalid_union":return"\u0648\u0631\u0648\u062F\u06CC \u0646\u0627\u0645\u0639\u062A\u0628\u0631";case"invalid_element":return`\u0645\u0642\u062F\u0627\u0631 \u0646\u0627\u0645\u0639\u062A\u0628\u0631 \u062F\u0631 ${n.origin}`;default:return"\u0648\u0631\u0648\u062F\u06CC \u0646\u0627\u0645\u0639\u062A\u0628\u0631"}}};function jf(){return{localeError:Ox()}}var Tx=()=>{let t={string:{unit:"merkki\xE4",subject:"merkkijonon"},file:{unit:"tavua",subject:"tiedoston"},array:{unit:"alkiota",subject:"listan"},set:{unit:"alkiota",subject:"joukon"},number:{unit:"",subject:"luvun"},bigint:{unit:"",subject:"suuren kokonaisluvun"},int:{unit:"",subject:"kokonaisluvun"},date:{unit:"",subject:"p\xE4iv\xE4m\xE4\xE4r\xE4n"}};function e(n){return t[n]??null}let r={regex:"s\xE4\xE4nn\xF6llinen lauseke",email:"s\xE4hk\xF6postiosoite",url:"URL-osoite",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO-aikaleima",date:"ISO-p\xE4iv\xE4m\xE4\xE4r\xE4",time:"ISO-aika",duration:"ISO-kesto",ipv4:"IPv4-osoite",ipv6:"IPv6-osoite",cidrv4:"IPv4-alue",cidrv6:"IPv6-alue",base64:"base64-koodattu merkkijono",base64url:"base64url-koodattu merkkijono",json_string:"JSON-merkkijono",e164:"E.164-luku",jwt:"JWT",template_literal:"templaattimerkkijono"},i={nan:"NaN"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=_(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`Virheellinen tyyppi: odotettiin instanceof ${n.expected}, oli ${c}`:`Virheellinen tyyppi: odotettiin ${o}, oli ${c}`}case"invalid_value":return n.values.length===1?`Virheellinen sy\xF6te: t\xE4ytyy olla ${v(n.values[0])}`:`Virheellinen valinta: t\xE4ytyy olla yksi seuraavista: ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`Liian suuri: ${a.subject} t\xE4ytyy olla ${o}${n.maximum.toString()} ${a.unit}`.trim():`Liian suuri: arvon t\xE4ytyy olla ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`Liian pieni: ${a.subject} t\xE4ytyy olla ${o}${n.minimum.toString()} ${a.unit}`.trim():`Liian pieni: arvon t\xE4ytyy olla ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Virheellinen sy\xF6te: t\xE4ytyy alkaa "${o.prefix}"`:o.format==="ends_with"?`Virheellinen sy\xF6te: t\xE4ytyy loppua "${o.suffix}"`:o.format==="includes"?`Virheellinen sy\xF6te: t\xE4ytyy sis\xE4lt\xE4\xE4 "${o.includes}"`:o.format==="regex"?`Virheellinen sy\xF6te: t\xE4ytyy vastata s\xE4\xE4nn\xF6llist\xE4 lauseketta ${o.pattern}`:`Virheellinen ${r[o.format]??n.format}`}case"not_multiple_of":return`Virheellinen luku: t\xE4ytyy olla luvun ${n.divisor} monikerta`;case"unrecognized_keys":return`${n.keys.length>1?"Tuntemattomat avaimet":"Tuntematon avain"}: ${h(n.keys,", ")}`;case"invalid_key":return"Virheellinen avain tietueessa";case"invalid_union":return"Virheellinen unioni";case"invalid_element":return"Virheellinen arvo joukossa";default:return"Virheellinen sy\xF6te"}}};function Lf(){return{localeError:Tx()}}var Rx=()=>{let t={string:{unit:"caract\xE8res",verb:"avoir"},file:{unit:"octets",verb:"avoir"},array:{unit:"\xE9l\xE9ments",verb:"avoir"},set:{unit:"\xE9l\xE9ments",verb:"avoir"}};function e(n){return t[n]??null}let r={regex:"entr\xE9e",email:"adresse e-mail",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:"date et heure ISO",date:"date ISO",time:"heure ISO",duration:"dur\xE9e ISO",ipv4:"adresse IPv4",ipv6:"adresse IPv6",cidrv4:"plage IPv4",cidrv6:"plage IPv6",base64:"cha\xEEne encod\xE9e en base64",base64url:"cha\xEEne encod\xE9e en base64url",json_string:"cha\xEEne JSON",e164:"num\xE9ro E.164",jwt:"JWT",template_literal:"entr\xE9e"},i={string:"cha\xEEne",number:"nombre",int:"entier",boolean:"bool\xE9en",bigint:"grand entier",symbol:"symbole",undefined:"ind\xE9fini",null:"null",never:"jamais",void:"vide",date:"date",array:"tableau",object:"objet",tuple:"tuple",record:"enregistrement",map:"carte",set:"ensemble",file:"fichier",nonoptional:"non-optionnel",nan:"NaN",function:"fonction"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=_(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`Entr\xE9e invalide : instanceof ${n.expected} attendu, ${c} re\xE7u`:`Entr\xE9e invalide : ${o} attendu, ${c} re\xE7u`}case"invalid_value":return n.values.length===1?`Entr\xE9e invalide : ${v(n.values[0])} attendu`:`Option invalide : une valeur parmi ${h(n.values,"|")} attendue`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`Trop grand : ${i[n.origin]??"valeur"} doit ${a.verb} ${o}${n.maximum.toString()} ${a.unit??"\xE9l\xE9ment(s)"}`:`Trop grand : ${i[n.origin]??"valeur"} doit \xEAtre ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`Trop petit : ${i[n.origin]??"valeur"} doit ${a.verb} ${o}${n.minimum.toString()} ${a.unit}`:`Trop petit : ${i[n.origin]??"valeur"} doit \xEAtre ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Cha\xEEne invalide : doit commencer par "${o.prefix}"`:o.format==="ends_with"?`Cha\xEEne invalide : doit se terminer par "${o.suffix}"`:o.format==="includes"?`Cha\xEEne invalide : doit inclure "${o.includes}"`:o.format==="regex"?`Cha\xEEne invalide : doit correspondre au mod\xE8le ${o.pattern}`:`${r[o.format]??n.format} invalide`}case"not_multiple_of":return`Nombre invalide : doit \xEAtre un multiple de ${n.divisor}`;case"unrecognized_keys":return`Cl\xE9${n.keys.length>1?"s":""} non reconnue${n.keys.length>1?"s":""} : ${h(n.keys,", ")}`;case"invalid_key":return`Cl\xE9 invalide dans ${n.origin}`;case"invalid_union":return"Entr\xE9e invalide";case"invalid_element":return`Valeur invalide dans ${n.origin}`;default:return"Entr\xE9e invalide"}}};function Mf(){return{localeError:Rx()}}var Ax=()=>{let t={string:{unit:"caract\xE8res",verb:"avoir"},file:{unit:"octets",verb:"avoir"},array:{unit:"\xE9l\xE9ments",verb:"avoir"},set:{unit:"\xE9l\xE9ments",verb:"avoir"}};function e(n){return t[n]??null}let r={regex:"entr\xE9e",email:"adresse courriel",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:"date-heure ISO",date:"date ISO",time:"heure ISO",duration:"dur\xE9e ISO",ipv4:"adresse IPv4",ipv6:"adresse IPv6",cidrv4:"plage IPv4",cidrv6:"plage IPv6",base64:"cha\xEEne encod\xE9e en base64",base64url:"cha\xEEne encod\xE9e en base64url",json_string:"cha\xEEne JSON",e164:"num\xE9ro E.164",jwt:"JWT",template_literal:"entr\xE9e"},i={nan:"NaN"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=_(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`Entr\xE9e invalide : attendu instanceof ${n.expected}, re\xE7u ${c}`:`Entr\xE9e invalide : attendu ${o}, re\xE7u ${c}`}case"invalid_value":return n.values.length===1?`Entr\xE9e invalide : attendu ${v(n.values[0])}`:`Option invalide : attendu l'une des valeurs suivantes ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"\u2264":"<",a=e(n.origin);return a?`Trop grand : attendu que ${n.origin??"la valeur"} ait ${o}${n.maximum.toString()} ${a.unit}`:`Trop grand : attendu que ${n.origin??"la valeur"} soit ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?"\u2265":">",a=e(n.origin);return a?`Trop petit : attendu que ${n.origin} ait ${o}${n.minimum.toString()} ${a.unit}`:`Trop petit : attendu que ${n.origin} soit ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Cha\xEEne invalide : doit commencer par "${o.prefix}"`:o.format==="ends_with"?`Cha\xEEne invalide : doit se terminer par "${o.suffix}"`:o.format==="includes"?`Cha\xEEne invalide : doit inclure "${o.includes}"`:o.format==="regex"?`Cha\xEEne invalide : doit correspondre au motif ${o.pattern}`:`${r[o.format]??n.format} invalide`}case"not_multiple_of":return`Nombre invalide : doit \xEAtre un multiple de ${n.divisor}`;case"unrecognized_keys":return`Cl\xE9${n.keys.length>1?"s":""} non reconnue${n.keys.length>1?"s":""} : ${h(n.keys,", ")}`;case"invalid_key":return`Cl\xE9 invalide dans ${n.origin}`;case"invalid_union":return"Entr\xE9e invalide";case"invalid_element":return`Valeur invalide dans ${n.origin}`;default:return"Entr\xE9e invalide"}}};function Ff(){return{localeError:Ax()}}var Cx=()=>{let t={string:{label:"\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA",gender:"f"},number:{label:"\u05DE\u05E1\u05E4\u05E8",gender:"m"},boolean:{label:"\u05E2\u05E8\u05DA \u05D1\u05D5\u05DC\u05D9\u05D0\u05E0\u05D9",gender:"m"},bigint:{label:"BigInt",gender:"m"},date:{label:"\u05EA\u05D0\u05E8\u05D9\u05DA",gender:"m"},array:{label:"\u05DE\u05E2\u05E8\u05DA",gender:"m"},object:{label:"\u05D0\u05D5\u05D1\u05D9\u05D9\u05E7\u05D8",gender:"m"},null:{label:"\u05E2\u05E8\u05DA \u05E8\u05D9\u05E7 (null)",gender:"m"},undefined:{label:"\u05E2\u05E8\u05DA \u05DC\u05D0 \u05DE\u05D5\u05D2\u05D3\u05E8 (undefined)",gender:"m"},symbol:{label:"\u05E1\u05D9\u05DE\u05D1\u05D5\u05DC (Symbol)",gender:"m"},function:{label:"\u05E4\u05D5\u05E0\u05E7\u05E6\u05D9\u05D4",gender:"f"},map:{label:"\u05DE\u05E4\u05D4 (Map)",gender:"f"},set:{label:"\u05E7\u05D1\u05D5\u05E6\u05D4 (Set)",gender:"f"},file:{label:"\u05E7\u05D5\u05D1\u05E5",gender:"m"},promise:{label:"Promise",gender:"m"},NaN:{label:"NaN",gender:"m"},unknown:{label:"\u05E2\u05E8\u05DA \u05DC\u05D0 \u05D9\u05D3\u05D5\u05E2",gender:"m"},value:{label:"\u05E2\u05E8\u05DA",gender:"m"}},e={string:{unit:"\u05EA\u05D5\u05D5\u05D9\u05DD",shortLabel:"\u05E7\u05E6\u05E8",longLabel:"\u05D0\u05E8\u05D5\u05DA"},file:{unit:"\u05D1\u05D9\u05D9\u05D8\u05D9\u05DD",shortLabel:"\u05E7\u05D8\u05DF",longLabel:"\u05D2\u05D3\u05D5\u05DC"},array:{unit:"\u05E4\u05E8\u05D9\u05D8\u05D9\u05DD",shortLabel:"\u05E7\u05D8\u05DF",longLabel:"\u05D2\u05D3\u05D5\u05DC"},set:{unit:"\u05E4\u05E8\u05D9\u05D8\u05D9\u05DD",shortLabel:"\u05E7\u05D8\u05DF",longLabel:"\u05D2\u05D3\u05D5\u05DC"},number:{unit:"",shortLabel:"\u05E7\u05D8\u05DF",longLabel:"\u05D2\u05D3\u05D5\u05DC"}},r=d=>d?t[d]:void 0,i=d=>{let u=r(d);return u?u.label:d??t.unknown.label},n=d=>`\u05D4${i(d)}`,o=d=>(r(d)?.gender??"m")==="f"?"\u05E6\u05E8\u05D9\u05DB\u05D4 \u05DC\u05D4\u05D9\u05D5\u05EA":"\u05E6\u05E8\u05D9\u05DA \u05DC\u05D4\u05D9\u05D5\u05EA",a=d=>d?e[d]??null:null,c={regex:{label:"\u05E7\u05DC\u05D8",gender:"m"},email:{label:"\u05DB\u05EA\u05D5\u05D1\u05EA \u05D0\u05D9\u05DE\u05D9\u05D9\u05DC",gender:"f"},url:{label:"\u05DB\u05EA\u05D5\u05D1\u05EA \u05E8\u05E9\u05EA",gender:"f"},emoji:{label:"\u05D0\u05D9\u05DE\u05D5\u05D2'\u05D9",gender:"m"},uuid:{label:"UUID",gender:"m"},nanoid:{label:"nanoid",gender:"m"},guid:{label:"GUID",gender:"m"},cuid:{label:"cuid",gender:"m"},cuid2:{label:"cuid2",gender:"m"},ulid:{label:"ULID",gender:"m"},xid:{label:"XID",gender:"m"},ksuid:{label:"KSUID",gender:"m"},datetime:{label:"\u05EA\u05D0\u05E8\u05D9\u05DA \u05D5\u05D6\u05DE\u05DF ISO",gender:"m"},date:{label:"\u05EA\u05D0\u05E8\u05D9\u05DA ISO",gender:"m"},time:{label:"\u05D6\u05DE\u05DF ISO",gender:"m"},duration:{label:"\u05DE\u05E9\u05DA \u05D6\u05DE\u05DF ISO",gender:"m"},ipv4:{label:"\u05DB\u05EA\u05D5\u05D1\u05EA IPv4",gender:"f"},ipv6:{label:"\u05DB\u05EA\u05D5\u05D1\u05EA IPv6",gender:"f"},cidrv4:{label:"\u05D8\u05D5\u05D5\u05D7 IPv4",gender:"m"},cidrv6:{label:"\u05D8\u05D5\u05D5\u05D7 IPv6",gender:"m"},base64:{label:"\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA \u05D1\u05D1\u05E1\u05D9\u05E1 64",gender:"f"},base64url:{label:"\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA \u05D1\u05D1\u05E1\u05D9\u05E1 64 \u05DC\u05DB\u05EA\u05D5\u05D1\u05D5\u05EA \u05E8\u05E9\u05EA",gender:"f"},json_string:{label:"\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA JSON",gender:"f"},e164:{label:"\u05DE\u05E1\u05E4\u05E8 E.164",gender:"m"},jwt:{label:"JWT",gender:"m"},ends_with:{label:"\u05E7\u05DC\u05D8",gender:"m"},includes:{label:"\u05E7\u05DC\u05D8",gender:"m"},lowercase:{label:"\u05E7\u05DC\u05D8",gender:"m"},starts_with:{label:"\u05E7\u05DC\u05D8",gender:"m"},uppercase:{label:"\u05E7\u05DC\u05D8",gender:"m"}},l={nan:"NaN"};return d=>{switch(d.code){case"invalid_type":{let u=d.expected,p=l[u??""]??i(u),m=_(d.input),g=l[m]??t[m]?.label??m;return/^[A-Z]/.test(d.expected)?`\u05E7\u05DC\u05D8 \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF: \u05E6\u05E8\u05D9\u05DA \u05DC\u05D4\u05D9\u05D5\u05EA instanceof ${d.expected}, \u05D4\u05EA\u05E7\u05D1\u05DC ${g}`:`\u05E7\u05DC\u05D8 \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF: \u05E6\u05E8\u05D9\u05DA \u05DC\u05D4\u05D9\u05D5\u05EA ${p}, \u05D4\u05EA\u05E7\u05D1\u05DC ${g}`}case"invalid_value":{if(d.values.length===1)return`\u05E2\u05E8\u05DA \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF: \u05D4\u05E2\u05E8\u05DA \u05D7\u05D9\u05D9\u05D1 \u05DC\u05D4\u05D9\u05D5\u05EA ${v(d.values[0])}`;let u=d.values.map(g=>v(g));if(d.values.length===2)return`\u05E2\u05E8\u05DA \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF: \u05D4\u05D0\u05E4\u05E9\u05E8\u05D5\u05D9\u05D5\u05EA \u05D4\u05DE\u05EA\u05D0\u05D9\u05DE\u05D5\u05EA \u05D4\u05DF ${u[0]} \u05D0\u05D5 ${u[1]}`;let p=u[u.length-1];return`\u05E2\u05E8\u05DA \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF: \u05D4\u05D0\u05E4\u05E9\u05E8\u05D5\u05D9\u05D5\u05EA \u05D4\u05DE\u05EA\u05D0\u05D9\u05DE\u05D5\u05EA \u05D4\u05DF ${u.slice(0,-1).join(", ")} \u05D0\u05D5 ${p}`}case"too_big":{let u=a(d.origin),p=n(d.origin??"value");if(d.origin==="string")return`${u?.longLabel??"\u05D0\u05E8\u05D5\u05DA"} \u05DE\u05D3\u05D9: ${p} \u05E6\u05E8\u05D9\u05DB\u05D4 \u05DC\u05D4\u05DB\u05D9\u05DC ${d.maximum.toString()} ${u?.unit??""} ${d.inclusive?"\u05D0\u05D5 \u05E4\u05D7\u05D5\u05EA":"\u05DC\u05DB\u05DC \u05D4\u05D9\u05D5\u05EA\u05E8"}`.trim();if(d.origin==="number"){let k=d.inclusive?`\u05E7\u05D8\u05DF \u05D0\u05D5 \u05E9\u05D5\u05D5\u05D4 \u05DC-${d.maximum}`:`\u05E7\u05D8\u05DF \u05DE-${d.maximum}`;return`\u05D2\u05D3\u05D5\u05DC \u05DE\u05D3\u05D9: ${p} \u05E6\u05E8\u05D9\u05DA \u05DC\u05D4\u05D9\u05D5\u05EA ${k}`}if(d.origin==="array"||d.origin==="set"){let k=d.origin==="set"?"\u05E6\u05E8\u05D9\u05DB\u05D4":"\u05E6\u05E8\u05D9\u05DA",E=d.inclusive?`${d.maximum} ${u?.unit??""} \u05D0\u05D5 \u05E4\u05D7\u05D5\u05EA`:`\u05E4\u05D7\u05D5\u05EA \u05DE-${d.maximum} ${u?.unit??""}`;return`\u05D2\u05D3\u05D5\u05DC \u05DE\u05D3\u05D9: ${p} ${k} \u05DC\u05D4\u05DB\u05D9\u05DC ${E}`.trim()}let m=d.inclusive?"<=":"<",g=o(d.origin??"value");return u?.unit?`${u.longLabel} \u05DE\u05D3\u05D9: ${p} ${g} ${m}${d.maximum.toString()} ${u.unit}`:`${u?.longLabel??"\u05D2\u05D3\u05D5\u05DC"} \u05DE\u05D3\u05D9: ${p} ${g} ${m}${d.maximum.toString()}`}case"too_small":{let u=a(d.origin),p=n(d.origin??"value");if(d.origin==="string")return`${u?.shortLabel??"\u05E7\u05E6\u05E8"} \u05DE\u05D3\u05D9: ${p} \u05E6\u05E8\u05D9\u05DB\u05D4 \u05DC\u05D4\u05DB\u05D9\u05DC ${d.minimum.toString()} ${u?.unit??""} ${d.inclusive?"\u05D0\u05D5 \u05D9\u05D5\u05EA\u05E8":"\u05DC\u05E4\u05D7\u05D5\u05EA"}`.trim();if(d.origin==="number"){let k=d.inclusive?`\u05D2\u05D3\u05D5\u05DC \u05D0\u05D5 \u05E9\u05D5\u05D5\u05D4 \u05DC-${d.minimum}`:`\u05D2\u05D3\u05D5\u05DC \u05DE-${d.minimum}`;return`\u05E7\u05D8\u05DF \u05DE\u05D3\u05D9: ${p} \u05E6\u05E8\u05D9\u05DA \u05DC\u05D4\u05D9\u05D5\u05EA ${k}`}if(d.origin==="array"||d.origin==="set"){let k=d.origin==="set"?"\u05E6\u05E8\u05D9\u05DB\u05D4":"\u05E6\u05E8\u05D9\u05DA";if(d.minimum===1&&d.inclusive){let S=(d.origin==="set","\u05DC\u05E4\u05D7\u05D5\u05EA \u05E4\u05E8\u05D9\u05D8 \u05D0\u05D7\u05D3");return`\u05E7\u05D8\u05DF \u05DE\u05D3\u05D9: ${p} ${k} \u05DC\u05D4\u05DB\u05D9\u05DC ${S}`}let E=d.inclusive?`${d.minimum} ${u?.unit??""} \u05D0\u05D5 \u05D9\u05D5\u05EA\u05E8`:`\u05D9\u05D5\u05EA\u05E8 \u05DE-${d.minimum} ${u?.unit??""}`;return`\u05E7\u05D8\u05DF \u05DE\u05D3\u05D9: ${p} ${k} \u05DC\u05D4\u05DB\u05D9\u05DC ${E}`.trim()}let m=d.inclusive?">=":">",g=o(d.origin??"value");return u?.unit?`${u.shortLabel} \u05DE\u05D3\u05D9: ${p} ${g} ${m}${d.minimum.toString()} ${u.unit}`:`${u?.shortLabel??"\u05E7\u05D8\u05DF"} \u05DE\u05D3\u05D9: ${p} ${g} ${m}${d.minimum.toString()}`}case"invalid_format":{let u=d;if(u.format==="starts_with")return`\u05D4\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA \u05D7\u05D9\u05D9\u05D1\u05EA \u05DC\u05D4\u05EA\u05D7\u05D9\u05DC \u05D1 "${u.prefix}"`;if(u.format==="ends_with")return`\u05D4\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA \u05D7\u05D9\u05D9\u05D1\u05EA \u05DC\u05D4\u05E1\u05EA\u05D9\u05D9\u05DD \u05D1 "${u.suffix}"`;if(u.format==="includes")return`\u05D4\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA \u05D7\u05D9\u05D9\u05D1\u05EA \u05DC\u05DB\u05DC\u05D5\u05DC "${u.includes}"`;if(u.format==="regex")return`\u05D4\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA \u05D7\u05D9\u05D9\u05D1\u05EA \u05DC\u05D4\u05EA\u05D0\u05D9\u05DD \u05DC\u05EA\u05D1\u05E0\u05D9\u05EA ${u.pattern}`;let p=c[u.format],m=p?.label??u.format,k=(p?.gender??"m")==="f"?"\u05EA\u05E7\u05D9\u05E0\u05D4":"\u05EA\u05E7\u05D9\u05DF";return`${m} \u05DC\u05D0 ${k}`}case"not_multiple_of":return`\u05DE\u05E1\u05E4\u05E8 \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF: \u05D7\u05D9\u05D9\u05D1 \u05DC\u05D4\u05D9\u05D5\u05EA \u05DE\u05DB\u05E4\u05DC\u05D4 \u05E9\u05DC ${d.divisor}`;case"unrecognized_keys":return`\u05DE\u05E4\u05EA\u05D7${d.keys.length>1?"\u05D5\u05EA":""} \u05DC\u05D0 \u05DE\u05D6\u05D5\u05D4${d.keys.length>1?"\u05D9\u05DD":"\u05D4"}: ${h(d.keys,", ")}`;case"invalid_key":return"\u05E9\u05D3\u05D4 \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF \u05D1\u05D0\u05D5\u05D1\u05D9\u05D9\u05E7\u05D8";case"invalid_union":return"\u05E7\u05DC\u05D8 \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF";case"invalid_element":return`\u05E2\u05E8\u05DA \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF \u05D1${n(d.origin??"array")}`;default:return"\u05E7\u05DC\u05D8 \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF"}}};function Bf(){return{localeError:Cx()}}var Px=()=>{let t={string:{unit:"znakova",verb:"imati"},file:{unit:"bajtova",verb:"imati"},array:{unit:"stavki",verb:"imati"},set:{unit:"stavki",verb:"imati"}};function e(n){return t[n]??null}let r={regex:"unos",email:"email adresa",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 datum i vrijeme",date:"ISO datum",time:"ISO vrijeme",duration:"ISO trajanje",ipv4:"IPv4 adresa",ipv6:"IPv6 adresa",cidrv4:"IPv4 raspon",cidrv6:"IPv6 raspon",base64:"base64 kodirani tekst",base64url:"base64url kodirani tekst",json_string:"JSON tekst",e164:"E.164 broj",jwt:"JWT",template_literal:"unos"},i={nan:"NaN",string:"tekst",number:"broj",boolean:"boolean",array:"niz",object:"objekt",set:"skup",file:"datoteka",date:"datum",bigint:"bigint",symbol:"simbol",undefined:"undefined",null:"null",function:"funkcija",map:"mapa"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=_(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`Neispravan unos: o\u010Dekuje se instanceof ${n.expected}, a primljeno je ${c}`:`Neispravan unos: o\u010Dekuje se ${o}, a primljeno je ${c}`}case"invalid_value":return n.values.length===1?`Neispravna vrijednost: o\u010Dekivano ${v(n.values[0])}`:`Neispravna opcija: o\u010Dekivano jedno od ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin),c=i[n.origin]??n.origin;return a?`Preveliko: o\u010Dekivano da ${c??"vrijednost"} ima ${o}${n.maximum.toString()} ${a.unit??"elemenata"}`:`Preveliko: o\u010Dekivano da ${c??"vrijednost"} bude ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin),c=i[n.origin]??n.origin;return a?`Premalo: o\u010Dekivano da ${c} ima ${o}${n.minimum.toString()} ${a.unit}`:`Premalo: o\u010Dekivano da ${c} bude ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Neispravan tekst: mora zapo\u010Dinjati s "${o.prefix}"`:o.format==="ends_with"?`Neispravan tekst: mora zavr\u0161avati s "${o.suffix}"`:o.format==="includes"?`Neispravan tekst: mora sadr\u017Eavati "${o.includes}"`:o.format==="regex"?`Neispravan tekst: mora odgovarati uzorku ${o.pattern}`:`Neispravna ${r[o.format]??n.format}`}case"not_multiple_of":return`Neispravan broj: mora biti vi\u0161ekratnik od ${n.divisor}`;case"unrecognized_keys":return`Neprepoznat${n.keys.length>1?"i klju\u010Devi":" klju\u010D"}: ${h(n.keys,", ")}`;case"invalid_key":return`Neispravan klju\u010D u ${i[n.origin]??n.origin}`;case"invalid_union":return"Neispravan unos";case"invalid_element":return`Neispravna vrijednost u ${i[n.origin]??n.origin}`;default:return"Neispravan unos"}}};function Hf(){return{localeError:Px()}}var Nx=()=>{let t={string:{unit:"karakter",verb:"legyen"},file:{unit:"byte",verb:"legyen"},array:{unit:"elem",verb:"legyen"},set:{unit:"elem",verb:"legyen"}};function e(n){return t[n]??null}let r={regex:"bemenet",email:"email c\xEDm",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 id\u0151b\xE9lyeg",date:"ISO d\xE1tum",time:"ISO id\u0151",duration:"ISO id\u0151intervallum",ipv4:"IPv4 c\xEDm",ipv6:"IPv6 c\xEDm",cidrv4:"IPv4 tartom\xE1ny",cidrv6:"IPv6 tartom\xE1ny",base64:"base64-k\xF3dolt string",base64url:"base64url-k\xF3dolt string",json_string:"JSON string",e164:"E.164 sz\xE1m",jwt:"JWT",template_literal:"bemenet"},i={nan:"NaN",number:"sz\xE1m",array:"t\xF6mb"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=_(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`\xC9rv\xE9nytelen bemenet: a v\xE1rt \xE9rt\xE9k instanceof ${n.expected}, a kapott \xE9rt\xE9k ${c}`:`\xC9rv\xE9nytelen bemenet: a v\xE1rt \xE9rt\xE9k ${o}, a kapott \xE9rt\xE9k ${c}`}case"invalid_value":return n.values.length===1?`\xC9rv\xE9nytelen bemenet: a v\xE1rt \xE9rt\xE9k ${v(n.values[0])}`:`\xC9rv\xE9nytelen opci\xF3: valamelyik \xE9rt\xE9k v\xE1rt ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`T\xFAl nagy: ${n.origin??"\xE9rt\xE9k"} m\xE9rete t\xFAl nagy ${o}${n.maximum.toString()} ${a.unit??"elem"}`:`T\xFAl nagy: a bemeneti \xE9rt\xE9k ${n.origin??"\xE9rt\xE9k"} t\xFAl nagy: ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`T\xFAl kicsi: a bemeneti \xE9rt\xE9k ${n.origin} m\xE9rete t\xFAl kicsi ${o}${n.minimum.toString()} ${a.unit}`:`T\xFAl kicsi: a bemeneti \xE9rt\xE9k ${n.origin} t\xFAl kicsi ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\xC9rv\xE9nytelen string: "${o.prefix}" \xE9rt\xE9kkel kell kezd\u0151dnie`:o.format==="ends_with"?`\xC9rv\xE9nytelen string: "${o.suffix}" \xE9rt\xE9kkel kell v\xE9gz\u0151dnie`:o.format==="includes"?`\xC9rv\xE9nytelen string: "${o.includes}" \xE9rt\xE9ket kell tartalmaznia`:o.format==="regex"?`\xC9rv\xE9nytelen string: ${o.pattern} mint\xE1nak kell megfelelnie`:`\xC9rv\xE9nytelen ${r[o.format]??n.format}`}case"not_multiple_of":return`\xC9rv\xE9nytelen sz\xE1m: ${n.divisor} t\xF6bbsz\xF6r\xF6s\xE9nek kell lennie`;case"unrecognized_keys":return`Ismeretlen kulcs${n.keys.length>1?"s":""}: ${h(n.keys,", ")}`;case"invalid_key":return`\xC9rv\xE9nytelen kulcs ${n.origin}`;case"invalid_union":return"\xC9rv\xE9nytelen bemenet";case"invalid_element":return`\xC9rv\xE9nytelen \xE9rt\xE9k: ${n.origin}`;default:return"\xC9rv\xE9nytelen bemenet"}}};function Vf(){return{localeError:Nx()}}function Zf(t,e,r){return Math.abs(t)===1?e:r}function St(t){if(!t)return"";let e=["\u0561","\u0565","\u0568","\u056B","\u0578","\u0578\u0582","\u0585"],r=t[t.length-1];return t+(e.includes(r)?"\u0576":"\u0568")}var Dx=()=>{let t={string:{unit:{one:"\u0576\u0577\u0561\u0576",many:"\u0576\u0577\u0561\u0576\u0576\u0565\u0580"},verb:"\u0578\u0582\u0576\u0565\u0576\u0561\u056C"},file:{unit:{one:"\u0562\u0561\u0575\u0569",many:"\u0562\u0561\u0575\u0569\u0565\u0580"},verb:"\u0578\u0582\u0576\u0565\u0576\u0561\u056C"},array:{unit:{one:"\u057F\u0561\u0580\u0580",many:"\u057F\u0561\u0580\u0580\u0565\u0580"},verb:"\u0578\u0582\u0576\u0565\u0576\u0561\u056C"},set:{unit:{one:"\u057F\u0561\u0580\u0580",many:"\u057F\u0561\u0580\u0580\u0565\u0580"},verb:"\u0578\u0582\u0576\u0565\u0576\u0561\u056C"}};function e(n){return t[n]??null}let r={regex:"\u0574\u0578\u0582\u057F\u0584",email:"\u0567\u056C. \u0570\u0561\u057D\u0581\u0565",url:"URL",emoji:"\u0567\u0574\u0578\u057B\u056B",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO \u0561\u0574\u057D\u0561\u0569\u056B\u057E \u0587 \u056A\u0561\u0574",date:"ISO \u0561\u0574\u057D\u0561\u0569\u056B\u057E",time:"ISO \u056A\u0561\u0574",duration:"ISO \u057F\u0587\u0578\u0572\u0578\u0582\u0569\u0575\u0578\u0582\u0576",ipv4:"IPv4 \u0570\u0561\u057D\u0581\u0565",ipv6:"IPv6 \u0570\u0561\u057D\u0581\u0565",cidrv4:"IPv4 \u0574\u056B\u057B\u0561\u056F\u0561\u0575\u0584",cidrv6:"IPv6 \u0574\u056B\u057B\u0561\u056F\u0561\u0575\u0584",base64:"base64 \u0571\u0587\u0561\u0579\u0561\u0583\u0578\u057E \u057F\u0578\u0572",base64url:"base64url \u0571\u0587\u0561\u0579\u0561\u0583\u0578\u057E \u057F\u0578\u0572",json_string:"JSON \u057F\u0578\u0572",e164:"E.164 \u0570\u0561\u0574\u0561\u0580",jwt:"JWT",template_literal:"\u0574\u0578\u0582\u057F\u0584"},i={nan:"NaN",number:"\u0569\u056B\u057E",array:"\u0566\u0561\u0576\u0563\u057E\u0561\u056E"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=_(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`\u054D\u056D\u0561\u056C \u0574\u0578\u0582\u057F\u0584\u0561\u0563\u0580\u0578\u0582\u0574\u2024 \u057D\u057A\u0561\u057D\u057E\u0578\u0582\u0574 \u0567\u0580 instanceof ${n.expected}, \u057D\u057F\u0561\u0581\u057E\u0565\u056C \u0567 ${c}`:`\u054D\u056D\u0561\u056C \u0574\u0578\u0582\u057F\u0584\u0561\u0563\u0580\u0578\u0582\u0574\u2024 \u057D\u057A\u0561\u057D\u057E\u0578\u0582\u0574 \u0567\u0580 ${o}, \u057D\u057F\u0561\u0581\u057E\u0565\u056C \u0567 ${c}`}case"invalid_value":return n.values.length===1?`\u054D\u056D\u0561\u056C \u0574\u0578\u0582\u057F\u0584\u0561\u0563\u0580\u0578\u0582\u0574\u2024 \u057D\u057A\u0561\u057D\u057E\u0578\u0582\u0574 \u0567\u0580 ${v(n.values[1])}`:`\u054D\u056D\u0561\u056C \u057F\u0561\u0580\u0562\u0565\u0580\u0561\u056F\u2024 \u057D\u057A\u0561\u057D\u057E\u0578\u0582\u0574 \u0567\u0580 \u0570\u0565\u057F\u0587\u0575\u0561\u056C\u0576\u0565\u0580\u056B\u0581 \u0574\u0565\u056F\u0568\u055D ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);if(a){let c=Number(n.maximum),l=Zf(c,a.unit.one,a.unit.many);return`\u0549\u0561\u0583\u0561\u0566\u0561\u0576\u0581 \u0574\u0565\u056E \u0561\u0580\u056A\u0565\u0584\u2024 \u057D\u057A\u0561\u057D\u057E\u0578\u0582\u0574 \u0567, \u0578\u0580 ${St(n.origin??"\u0561\u0580\u056A\u0565\u0584")} \u056F\u0578\u0582\u0576\u0565\u0576\u0561 ${o}${n.maximum.toString()} ${l}`}return`\u0549\u0561\u0583\u0561\u0566\u0561\u0576\u0581 \u0574\u0565\u056E \u0561\u0580\u056A\u0565\u0584\u2024 \u057D\u057A\u0561\u057D\u057E\u0578\u0582\u0574 \u0567, \u0578\u0580 ${St(n.origin??"\u0561\u0580\u056A\u0565\u0584")} \u056C\u056B\u0576\u056B ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);if(a){let c=Number(n.minimum),l=Zf(c,a.unit.one,a.unit.many);return`\u0549\u0561\u0583\u0561\u0566\u0561\u0576\u0581 \u0583\u0578\u0584\u0580 \u0561\u0580\u056A\u0565\u0584\u2024 \u057D\u057A\u0561\u057D\u057E\u0578\u0582\u0574 \u0567, \u0578\u0580 ${St(n.origin)} \u056F\u0578\u0582\u0576\u0565\u0576\u0561 ${o}${n.minimum.toString()} ${l}`}return`\u0549\u0561\u0583\u0561\u0566\u0561\u0576\u0581 \u0583\u0578\u0584\u0580 \u0561\u0580\u056A\u0565\u0584\u2024 \u057D\u057A\u0561\u057D\u057E\u0578\u0582\u0574 \u0567, \u0578\u0580 ${St(n.origin)} \u056C\u056B\u0576\u056B ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u054D\u056D\u0561\u056C \u057F\u0578\u0572\u2024 \u057A\u0565\u057F\u0584 \u0567 \u057D\u056F\u057D\u057E\u056B "${o.prefix}"-\u0578\u057E`:o.format==="ends_with"?`\u054D\u056D\u0561\u056C \u057F\u0578\u0572\u2024 \u057A\u0565\u057F\u0584 \u0567 \u0561\u057E\u0561\u0580\u057F\u057E\u056B "${o.suffix}"-\u0578\u057E`:o.format==="includes"?`\u054D\u056D\u0561\u056C \u057F\u0578\u0572\u2024 \u057A\u0565\u057F\u0584 \u0567 \u057A\u0561\u0580\u0578\u0582\u0576\u0561\u056F\u056B "${o.includes}"`:o.format==="regex"?`\u054D\u056D\u0561\u056C \u057F\u0578\u0572\u2024 \u057A\u0565\u057F\u0584 \u0567 \u0570\u0561\u0574\u0561\u057A\u0561\u057F\u0561\u057D\u056D\u0561\u0576\u056B ${o.pattern} \u0571\u0587\u0561\u0579\u0561\u0583\u056B\u0576`:`\u054D\u056D\u0561\u056C ${r[o.format]??n.format}`}case"not_multiple_of":return`\u054D\u056D\u0561\u056C \u0569\u056B\u057E\u2024 \u057A\u0565\u057F\u0584 \u0567 \u0562\u0561\u0566\u0574\u0561\u057A\u0561\u057F\u056B\u056F \u056C\u056B\u0576\u056B ${n.divisor}-\u056B`;case"unrecognized_keys":return`\u0549\u0573\u0561\u0576\u0561\u0579\u057E\u0561\u056E \u0562\u0561\u0576\u0561\u056C\u056B${n.keys.length>1?"\u0576\u0565\u0580":""}. ${h(n.keys,", ")}`;case"invalid_key":return`\u054D\u056D\u0561\u056C \u0562\u0561\u0576\u0561\u056C\u056B ${St(n.origin)}-\u0578\u0582\u0574`;case"invalid_union":return"\u054D\u056D\u0561\u056C \u0574\u0578\u0582\u057F\u0584\u0561\u0563\u0580\u0578\u0582\u0574";case"invalid_element":return`\u054D\u056D\u0561\u056C \u0561\u0580\u056A\u0565\u0584 ${St(n.origin)}-\u0578\u0582\u0574`;default:return"\u054D\u056D\u0561\u056C \u0574\u0578\u0582\u057F\u0584\u0561\u0563\u0580\u0578\u0582\u0574"}}};function Kf(){return{localeError:Dx()}}var Ux=()=>{let t={string:{unit:"karakter",verb:"memiliki"},file:{unit:"byte",verb:"memiliki"},array:{unit:"item",verb:"memiliki"},set:{unit:"item",verb:"memiliki"}};function e(n){return t[n]??null}let r={regex:"input",email:"alamat email",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:"tanggal dan waktu format ISO",date:"tanggal format ISO",time:"jam format ISO",duration:"durasi format ISO",ipv4:"alamat IPv4",ipv6:"alamat IPv6",cidrv4:"rentang alamat IPv4",cidrv6:"rentang alamat IPv6",base64:"string dengan enkode base64",base64url:"string dengan enkode base64url",json_string:"string JSON",e164:"angka E.164",jwt:"JWT",template_literal:"input"},i={nan:"NaN"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=_(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`Input tidak valid: diharapkan instanceof ${n.expected}, diterima ${c}`:`Input tidak valid: diharapkan ${o}, diterima ${c}`}case"invalid_value":return n.values.length===1?`Input tidak valid: diharapkan ${v(n.values[0])}`:`Pilihan tidak valid: diharapkan salah satu dari ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`Terlalu besar: diharapkan ${n.origin??"value"} memiliki ${o}${n.maximum.toString()} ${a.unit??"elemen"}`:`Terlalu besar: diharapkan ${n.origin??"value"} menjadi ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`Terlalu kecil: diharapkan ${n.origin} memiliki ${o}${n.minimum.toString()} ${a.unit}`:`Terlalu kecil: diharapkan ${n.origin} menjadi ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`String tidak valid: harus dimulai dengan "${o.prefix}"`:o.format==="ends_with"?`String tidak valid: harus berakhir dengan "${o.suffix}"`:o.format==="includes"?`String tidak valid: harus menyertakan "${o.includes}"`:o.format==="regex"?`String tidak valid: harus sesuai pola ${o.pattern}`:`${r[o.format]??n.format} tidak valid`}case"not_multiple_of":return`Angka tidak valid: harus kelipatan dari ${n.divisor}`;case"unrecognized_keys":return`Kunci tidak dikenali ${n.keys.length>1?"s":""}: ${h(n.keys,", ")}`;case"invalid_key":return`Kunci tidak valid di ${n.origin}`;case"invalid_union":return"Input tidak valid";case"invalid_element":return`Nilai tidak valid di ${n.origin}`;default:return"Input tidak valid"}}};function Gf(){return{localeError:Ux()}}var zx=()=>{let t={string:{unit:"stafi",verb:"a\xF0 hafa"},file:{unit:"b\xE6ti",verb:"a\xF0 hafa"},array:{unit:"hluti",verb:"a\xF0 hafa"},set:{unit:"hluti",verb:"a\xF0 hafa"}};function e(n){return t[n]??null}let r={regex:"gildi",email:"netfang",url:"vefsl\xF3\xF0",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO dagsetning og t\xEDmi",date:"ISO dagsetning",time:"ISO t\xEDmi",duration:"ISO t\xEDmalengd",ipv4:"IPv4 address",ipv6:"IPv6 address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded strengur",base64url:"base64url-encoded strengur",json_string:"JSON strengur",e164:"E.164 t\xF6lugildi",jwt:"JWT",template_literal:"gildi"},i={nan:"NaN",number:"n\xFAmer",array:"fylki"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=_(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`Rangt gildi: \xDE\xFA sl\xF3st inn ${c} \xFEar sem \xE1 a\xF0 vera instanceof ${n.expected}`:`Rangt gildi: \xDE\xFA sl\xF3st inn ${c} \xFEar sem \xE1 a\xF0 vera ${o}`}case"invalid_value":return n.values.length===1?`Rangt gildi: gert r\xE1\xF0 fyrir ${v(n.values[0])}`:`\xD3gilt val: m\xE1 vera eitt af eftirfarandi ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`Of st\xF3rt: gert er r\xE1\xF0 fyrir a\xF0 ${n.origin??"gildi"} hafi ${o}${n.maximum.toString()} ${a.unit??"hluti"}`:`Of st\xF3rt: gert er r\xE1\xF0 fyrir a\xF0 ${n.origin??"gildi"} s\xE9 ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`Of l\xEDti\xF0: gert er r\xE1\xF0 fyrir a\xF0 ${n.origin} hafi ${o}${n.minimum.toString()} ${a.unit}`:`Of l\xEDti\xF0: gert er r\xE1\xF0 fyrir a\xF0 ${n.origin} s\xE9 ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\xD3gildur strengur: ver\xF0ur a\xF0 byrja \xE1 "${o.prefix}"`:o.format==="ends_with"?`\xD3gildur strengur: ver\xF0ur a\xF0 enda \xE1 "${o.suffix}"`:o.format==="includes"?`\xD3gildur strengur: ver\xF0ur a\xF0 innihalda "${o.includes}"`:o.format==="regex"?`\xD3gildur strengur: ver\xF0ur a\xF0 fylgja mynstri ${o.pattern}`:`Rangt ${r[o.format]??n.format}`}case"not_multiple_of":return`R\xF6ng tala: ver\xF0ur a\xF0 vera margfeldi af ${n.divisor}`;case"unrecognized_keys":return`\xD3\xFEekkt ${n.keys.length>1?"ir lyklar":"ur lykill"}: ${h(n.keys,", ")}`;case"invalid_key":return`Rangur lykill \xED ${n.origin}`;case"invalid_union":return"Rangt gildi";case"invalid_element":return`Rangt gildi \xED ${n.origin}`;default:return"Rangt gildi"}}};function Wf(){return{localeError:zx()}}var jx=()=>{let t={string:{unit:"caratteri",verb:"avere"},file:{unit:"byte",verb:"avere"},array:{unit:"elementi",verb:"avere"},set:{unit:"elementi",verb:"avere"}};function e(n){return t[n]??null}let r={regex:"input",email:"indirizzo email",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:"data e ora ISO",date:"data ISO",time:"ora ISO",duration:"durata ISO",ipv4:"indirizzo IPv4",ipv6:"indirizzo IPv6",cidrv4:"intervallo IPv4",cidrv6:"intervallo IPv6",base64:"stringa codificata in base64",base64url:"URL codificata in base64",json_string:"stringa JSON",e164:"numero E.164",jwt:"JWT",template_literal:"input"},i={nan:"NaN",number:"numero",array:"vettore"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=_(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`Input non valido: atteso instanceof ${n.expected}, ricevuto ${c}`:`Input non valido: atteso ${o}, ricevuto ${c}`}case"invalid_value":return n.values.length===1?`Input non valido: atteso ${v(n.values[0])}`:`Opzione non valida: atteso uno tra ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`Troppo grande: ${n.origin??"valore"} deve avere ${o}${n.maximum.toString()} ${a.unit??"elementi"}`:`Troppo grande: ${n.origin??"valore"} deve essere ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`Troppo piccolo: ${n.origin} deve avere ${o}${n.minimum.toString()} ${a.unit}`:`Troppo piccolo: ${n.origin} deve essere ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Stringa non valida: deve iniziare con "${o.prefix}"`:o.format==="ends_with"?`Stringa non valida: deve terminare con "${o.suffix}"`:o.format==="includes"?`Stringa non valida: deve includere "${o.includes}"`:o.format==="regex"?`Stringa non valida: deve corrispondere al pattern ${o.pattern}`:`Input non valido: ${r[o.format]??n.format}`}case"not_multiple_of":return`Numero non valido: deve essere un multiplo di ${n.divisor}`;case"unrecognized_keys":return`Chiav${n.keys.length>1?"i":"e"} non riconosciut${n.keys.length>1?"e":"a"}: ${h(n.keys,", ")}`;case"invalid_key":return`Chiave non valida in ${n.origin}`;case"invalid_union":return"Input non valido";case"invalid_element":return`Valore non valido in ${n.origin}`;default:return"Input non valido"}}};function qf(){return{localeError:jx()}}var Lx=()=>{let t={string:{unit:"\u6587\u5B57",verb:"\u3067\u3042\u308B"},file:{unit:"\u30D0\u30A4\u30C8",verb:"\u3067\u3042\u308B"},array:{unit:"\u8981\u7D20",verb:"\u3067\u3042\u308B"},set:{unit:"\u8981\u7D20",verb:"\u3067\u3042\u308B"}};function e(n){return t[n]??null}let r={regex:"\u5165\u529B\u5024",email:"\u30E1\u30FC\u30EB\u30A2\u30C9\u30EC\u30B9",url:"URL",emoji:"\u7D75\u6587\u5B57",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO\u65E5\u6642",date:"ISO\u65E5\u4ED8",time:"ISO\u6642\u523B",duration:"ISO\u671F\u9593",ipv4:"IPv4\u30A2\u30C9\u30EC\u30B9",ipv6:"IPv6\u30A2\u30C9\u30EC\u30B9",cidrv4:"IPv4\u7BC4\u56F2",cidrv6:"IPv6\u7BC4\u56F2",base64:"base64\u30A8\u30F3\u30B3\u30FC\u30C9\u6587\u5B57\u5217",base64url:"base64url\u30A8\u30F3\u30B3\u30FC\u30C9\u6587\u5B57\u5217",json_string:"JSON\u6587\u5B57\u5217",e164:"E.164\u756A\u53F7",jwt:"JWT",template_literal:"\u5165\u529B\u5024"},i={nan:"NaN",number:"\u6570\u5024",array:"\u914D\u5217"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=_(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`\u7121\u52B9\u306A\u5165\u529B: instanceof ${n.expected}\u304C\u671F\u5F85\u3055\u308C\u307E\u3057\u305F\u304C\u3001${c}\u304C\u5165\u529B\u3055\u308C\u307E\u3057\u305F`:`\u7121\u52B9\u306A\u5165\u529B: ${o}\u304C\u671F\u5F85\u3055\u308C\u307E\u3057\u305F\u304C\u3001${c}\u304C\u5165\u529B\u3055\u308C\u307E\u3057\u305F`}case"invalid_value":return n.values.length===1?`\u7121\u52B9\u306A\u5165\u529B: ${v(n.values[0])}\u304C\u671F\u5F85\u3055\u308C\u307E\u3057\u305F`:`\u7121\u52B9\u306A\u9078\u629E: ${h(n.values,"\u3001")}\u306E\u3044\u305A\u308C\u304B\u3067\u3042\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`;case"too_big":{let o=n.inclusive?"\u4EE5\u4E0B\u3067\u3042\u308B":"\u3088\u308A\u5C0F\u3055\u3044",a=e(n.origin);return a?`\u5927\u304D\u3059\u304E\u308B\u5024: ${n.origin??"\u5024"}\u306F${n.maximum.toString()}${a.unit??"\u8981\u7D20"}${o}\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`:`\u5927\u304D\u3059\u304E\u308B\u5024: ${n.origin??"\u5024"}\u306F${n.maximum.toString()}${o}\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`}case"too_small":{let o=n.inclusive?"\u4EE5\u4E0A\u3067\u3042\u308B":"\u3088\u308A\u5927\u304D\u3044",a=e(n.origin);return a?`\u5C0F\u3055\u3059\u304E\u308B\u5024: ${n.origin}\u306F${n.minimum.toString()}${a.unit}${o}\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`:`\u5C0F\u3055\u3059\u304E\u308B\u5024: ${n.origin}\u306F${n.minimum.toString()}${o}\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u7121\u52B9\u306A\u6587\u5B57\u5217: "${o.prefix}"\u3067\u59CB\u307E\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`:o.format==="ends_with"?`\u7121\u52B9\u306A\u6587\u5B57\u5217: "${o.suffix}"\u3067\u7D42\u308F\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`:o.format==="includes"?`\u7121\u52B9\u306A\u6587\u5B57\u5217: "${o.includes}"\u3092\u542B\u3080\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`:o.format==="regex"?`\u7121\u52B9\u306A\u6587\u5B57\u5217: \u30D1\u30BF\u30FC\u30F3${o.pattern}\u306B\u4E00\u81F4\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`:`\u7121\u52B9\u306A${r[o.format]??n.format}`}case"not_multiple_of":return`\u7121\u52B9\u306A\u6570\u5024: ${n.divisor}\u306E\u500D\u6570\u3067\u3042\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`;case"unrecognized_keys":return`\u8A8D\u8B58\u3055\u308C\u3066\u3044\u306A\u3044\u30AD\u30FC${n.keys.length>1?"\u7FA4":""}: ${h(n.keys,"\u3001")}`;case"invalid_key":return`${n.origin}\u5185\u306E\u7121\u52B9\u306A\u30AD\u30FC`;case"invalid_union":return"\u7121\u52B9\u306A\u5165\u529B";case"invalid_element":return`${n.origin}\u5185\u306E\u7121\u52B9\u306A\u5024`;default:return"\u7121\u52B9\u306A\u5165\u529B"}}};function Jf(){return{localeError:Lx()}}var Mx=()=>{let t={string:{unit:"\u10E1\u10D8\u10DB\u10D1\u10DD\u10DA\u10DD",verb:"\u10E3\u10DC\u10D3\u10D0 \u10E8\u10D4\u10D8\u10EA\u10D0\u10D5\u10D3\u10D4\u10E1"},file:{unit:"\u10D1\u10D0\u10D8\u10E2\u10D8",verb:"\u10E3\u10DC\u10D3\u10D0 \u10E8\u10D4\u10D8\u10EA\u10D0\u10D5\u10D3\u10D4\u10E1"},array:{unit:"\u10D4\u10DA\u10D4\u10DB\u10D4\u10DC\u10E2\u10D8",verb:"\u10E3\u10DC\u10D3\u10D0 \u10E8\u10D4\u10D8\u10EA\u10D0\u10D5\u10D3\u10D4\u10E1"},set:{unit:"\u10D4\u10DA\u10D4\u10DB\u10D4\u10DC\u10E2\u10D8",verb:"\u10E3\u10DC\u10D3\u10D0 \u10E8\u10D4\u10D8\u10EA\u10D0\u10D5\u10D3\u10D4\u10E1"}};function e(n){return t[n]??null}let r={regex:"\u10E8\u10D4\u10E7\u10D5\u10D0\u10DC\u10D0",email:"\u10D4\u10DA-\u10E4\u10DD\u10E1\u10E2\u10D8\u10E1 \u10DB\u10D8\u10E1\u10D0\u10DB\u10D0\u10E0\u10D7\u10D8",url:"URL",emoji:"\u10D4\u10DB\u10DD\u10EF\u10D8",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"\u10D7\u10D0\u10E0\u10D8\u10E6\u10D8-\u10D3\u10E0\u10DD",date:"\u10D7\u10D0\u10E0\u10D8\u10E6\u10D8",time:"\u10D3\u10E0\u10DD",duration:"\u10EE\u10D0\u10DC\u10D2\u10E0\u10EB\u10DA\u10D8\u10D5\u10DD\u10D1\u10D0",ipv4:"IPv4 \u10DB\u10D8\u10E1\u10D0\u10DB\u10D0\u10E0\u10D7\u10D8",ipv6:"IPv6 \u10DB\u10D8\u10E1\u10D0\u10DB\u10D0\u10E0\u10D7\u10D8",cidrv4:"IPv4 \u10D3\u10D8\u10D0\u10DE\u10D0\u10D6\u10DD\u10DC\u10D8",cidrv6:"IPv6 \u10D3\u10D8\u10D0\u10DE\u10D0\u10D6\u10DD\u10DC\u10D8",base64:"base64-\u10D9\u10DD\u10D3\u10D8\u10E0\u10D4\u10D1\u10E3\u10DA\u10D8 \u10D5\u10D4\u10DA\u10D8",base64url:"base64url-\u10D9\u10DD\u10D3\u10D8\u10E0\u10D4\u10D1\u10E3\u10DA\u10D8 \u10D5\u10D4\u10DA\u10D8",json_string:"JSON \u10D5\u10D4\u10DA\u10D8",e164:"E.164 \u10DC\u10DD\u10DB\u10D4\u10E0\u10D8",jwt:"JWT",template_literal:"\u10E8\u10D4\u10E7\u10D5\u10D0\u10DC\u10D0"},i={nan:"NaN",number:"\u10E0\u10D8\u10EA\u10EE\u10D5\u10D8",string:"\u10D5\u10D4\u10DA\u10D8",boolean:"\u10D1\u10E3\u10DA\u10D4\u10D0\u10DC\u10D8",function:"\u10E4\u10E3\u10DC\u10E5\u10EA\u10D8\u10D0",array:"\u10DB\u10D0\u10E1\u10D8\u10D5\u10D8"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=_(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10E8\u10D4\u10E7\u10D5\u10D0\u10DC\u10D0: \u10DB\u10DD\u10E1\u10D0\u10DA\u10DD\u10D3\u10DC\u10D4\u10DA\u10D8 instanceof ${n.expected}, \u10DB\u10D8\u10E6\u10D4\u10D1\u10E3\u10DA\u10D8 ${c}`:`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10E8\u10D4\u10E7\u10D5\u10D0\u10DC\u10D0: \u10DB\u10DD\u10E1\u10D0\u10DA\u10DD\u10D3\u10DC\u10D4\u10DA\u10D8 ${o}, \u10DB\u10D8\u10E6\u10D4\u10D1\u10E3\u10DA\u10D8 ${c}`}case"invalid_value":return n.values.length===1?`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10E8\u10D4\u10E7\u10D5\u10D0\u10DC\u10D0: \u10DB\u10DD\u10E1\u10D0\u10DA\u10DD\u10D3\u10DC\u10D4\u10DA\u10D8 ${v(n.values[0])}`:`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10D5\u10D0\u10E0\u10D8\u10D0\u10DC\u10E2\u10D8: \u10DB\u10DD\u10E1\u10D0\u10DA\u10DD\u10D3\u10DC\u10D4\u10DA\u10D8\u10D0 \u10D4\u10E0\u10D7-\u10D4\u10E0\u10D7\u10D8 ${h(n.values,"|")}-\u10D3\u10D0\u10DC`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`\u10D6\u10D4\u10D3\u10DB\u10D4\u10E2\u10D0\u10D3 \u10D3\u10D8\u10D3\u10D8: \u10DB\u10DD\u10E1\u10D0\u10DA\u10DD\u10D3\u10DC\u10D4\u10DA\u10D8 ${n.origin??"\u10DB\u10DC\u10D8\u10E8\u10D5\u10DC\u10D4\u10DA\u10DD\u10D1\u10D0"} ${a.verb} ${o}${n.maximum.toString()} ${a.unit}`:`\u10D6\u10D4\u10D3\u10DB\u10D4\u10E2\u10D0\u10D3 \u10D3\u10D8\u10D3\u10D8: \u10DB\u10DD\u10E1\u10D0\u10DA\u10DD\u10D3\u10DC\u10D4\u10DA\u10D8 ${n.origin??"\u10DB\u10DC\u10D8\u10E8\u10D5\u10DC\u10D4\u10DA\u10DD\u10D1\u10D0"} \u10D8\u10E7\u10DD\u10E1 ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`\u10D6\u10D4\u10D3\u10DB\u10D4\u10E2\u10D0\u10D3 \u10DE\u10D0\u10E2\u10D0\u10E0\u10D0: \u10DB\u10DD\u10E1\u10D0\u10DA\u10DD\u10D3\u10DC\u10D4\u10DA\u10D8 ${n.origin} ${a.verb} ${o}${n.minimum.toString()} ${a.unit}`:`\u10D6\u10D4\u10D3\u10DB\u10D4\u10E2\u10D0\u10D3 \u10DE\u10D0\u10E2\u10D0\u10E0\u10D0: \u10DB\u10DD\u10E1\u10D0\u10DA\u10DD\u10D3\u10DC\u10D4\u10DA\u10D8 ${n.origin} \u10D8\u10E7\u10DD\u10E1 ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10D5\u10D4\u10DA\u10D8: \u10E3\u10DC\u10D3\u10D0 \u10D8\u10EC\u10E7\u10D4\u10D1\u10DD\u10D3\u10D4\u10E1 "${o.prefix}"-\u10D8\u10D7`:o.format==="ends_with"?`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10D5\u10D4\u10DA\u10D8: \u10E3\u10DC\u10D3\u10D0 \u10DB\u10D7\u10D0\u10D5\u10E0\u10D3\u10D4\u10D1\u10DD\u10D3\u10D4\u10E1 "${o.suffix}"-\u10D8\u10D7`:o.format==="includes"?`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10D5\u10D4\u10DA\u10D8: \u10E3\u10DC\u10D3\u10D0 \u10E8\u10D4\u10D8\u10EA\u10D0\u10D5\u10D3\u10D4\u10E1 "${o.includes}"-\u10E1`:o.format==="regex"?`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10D5\u10D4\u10DA\u10D8: \u10E3\u10DC\u10D3\u10D0 \u10E8\u10D4\u10D4\u10E1\u10D0\u10D1\u10D0\u10DB\u10D4\u10D1\u10DD\u10D3\u10D4\u10E1 \u10E8\u10D0\u10D1\u10DA\u10DD\u10DC\u10E1 ${o.pattern}`:`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 ${r[o.format]??n.format}`}case"not_multiple_of":return`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10E0\u10D8\u10EA\u10EE\u10D5\u10D8: \u10E3\u10DC\u10D3\u10D0 \u10D8\u10E7\u10DD\u10E1 ${n.divisor}-\u10D8\u10E1 \u10EF\u10D4\u10E0\u10D0\u10D3\u10D8`;case"unrecognized_keys":return`\u10E3\u10EA\u10DC\u10DD\u10D1\u10D8 \u10D2\u10D0\u10E1\u10D0\u10E6\u10D4\u10D1${n.keys.length>1?"\u10D4\u10D1\u10D8":"\u10D8"}: ${h(n.keys,", ")}`;case"invalid_key":return`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10D2\u10D0\u10E1\u10D0\u10E6\u10D4\u10D1\u10D8 ${n.origin}-\u10E8\u10D8`;case"invalid_union":return"\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10E8\u10D4\u10E7\u10D5\u10D0\u10DC\u10D0";case"invalid_element":return`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10DB\u10DC\u10D8\u10E8\u10D5\u10DC\u10D4\u10DA\u10DD\u10D1\u10D0 ${n.origin}-\u10E8\u10D8`;default:return"\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10E8\u10D4\u10E7\u10D5\u10D0\u10DC\u10D0"}}};function Yf(){return{localeError:Mx()}}var Fx=()=>{let t={string:{unit:"\u178F\u17BD\u17A2\u1780\u17D2\u179F\u179A",verb:"\u1782\u17BD\u179A\u1798\u17B6\u1793"},file:{unit:"\u1794\u17C3",verb:"\u1782\u17BD\u179A\u1798\u17B6\u1793"},array:{unit:"\u1792\u17B6\u178F\u17BB",verb:"\u1782\u17BD\u179A\u1798\u17B6\u1793"},set:{unit:"\u1792\u17B6\u178F\u17BB",verb:"\u1782\u17BD\u179A\u1798\u17B6\u1793"}};function e(n){return t[n]??null}let r={regex:"\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1794\u1789\u17D2\u1785\u17BC\u179B",email:"\u17A2\u17B6\u179F\u1799\u178A\u17D2\u178B\u17B6\u1793\u17A2\u17CA\u17B8\u1798\u17C2\u179B",url:"URL",emoji:"\u179F\u1789\u17D2\u1789\u17B6\u17A2\u17B6\u179A\u1798\u17D2\u1798\u178E\u17CD",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"\u1780\u17B6\u179B\u1794\u179A\u17B7\u1785\u17D2\u1786\u17C1\u1791 \u1793\u17B7\u1784\u1798\u17C9\u17C4\u1784 ISO",date:"\u1780\u17B6\u179B\u1794\u179A\u17B7\u1785\u17D2\u1786\u17C1\u1791 ISO",time:"\u1798\u17C9\u17C4\u1784 ISO",duration:"\u179A\u1799\u17C8\u1796\u17C1\u179B ISO",ipv4:"\u17A2\u17B6\u179F\u1799\u178A\u17D2\u178B\u17B6\u1793 IPv4",ipv6:"\u17A2\u17B6\u179F\u1799\u178A\u17D2\u178B\u17B6\u1793 IPv6",cidrv4:"\u178A\u17C2\u1793\u17A2\u17B6\u179F\u1799\u178A\u17D2\u178B\u17B6\u1793 IPv4",cidrv6:"\u178A\u17C2\u1793\u17A2\u17B6\u179F\u1799\u178A\u17D2\u178B\u17B6\u1793 IPv6",base64:"\u1781\u17D2\u179F\u17C2\u17A2\u1780\u17D2\u179F\u179A\u17A2\u17CA\u17B7\u1780\u17BC\u178A base64",base64url:"\u1781\u17D2\u179F\u17C2\u17A2\u1780\u17D2\u179F\u179A\u17A2\u17CA\u17B7\u1780\u17BC\u178A base64url",json_string:"\u1781\u17D2\u179F\u17C2\u17A2\u1780\u17D2\u179F\u179A JSON",e164:"\u179B\u17C1\u1781 E.164",jwt:"JWT",template_literal:"\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1794\u1789\u17D2\u1785\u17BC\u179B"},i={nan:"NaN",number:"\u179B\u17C1\u1781",array:"\u17A2\u17B6\u179A\u17C1 (Array)",null:"\u1782\u17D2\u1798\u17B6\u1793\u178F\u1798\u17D2\u179B\u17C3 (null)"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=_(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1794\u1789\u17D2\u1785\u17BC\u179B\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1780\u17B6\u179A instanceof ${n.expected} \u1794\u17C9\u17BB\u1793\u17D2\u178F\u17C2\u1791\u1791\u17BD\u179B\u1794\u17B6\u1793 ${c}`:`\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1794\u1789\u17D2\u1785\u17BC\u179B\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1780\u17B6\u179A ${o} \u1794\u17C9\u17BB\u1793\u17D2\u178F\u17C2\u1791\u1791\u17BD\u179B\u1794\u17B6\u1793 ${c}`}case"invalid_value":return n.values.length===1?`\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1794\u1789\u17D2\u1785\u17BC\u179B\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1780\u17B6\u179A ${v(n.values[0])}`:`\u1787\u1798\u17D2\u179A\u17BE\u179F\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1787\u17B6\u1798\u17BD\u1799\u1780\u17D2\u1793\u17BB\u1784\u1785\u17C6\u178E\u17C4\u1798 ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`\u1792\u17C6\u1796\u17C1\u1780\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1780\u17B6\u179A ${n.origin??"\u178F\u1798\u17D2\u179B\u17C3"} ${o} ${n.maximum.toString()} ${a.unit??"\u1792\u17B6\u178F\u17BB"}`:`\u1792\u17C6\u1796\u17C1\u1780\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1780\u17B6\u179A ${n.origin??"\u178F\u1798\u17D2\u179B\u17C3"} ${o} ${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`\u178F\u17BC\u1785\u1796\u17C1\u1780\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1780\u17B6\u179A ${n.origin} ${o} ${n.minimum.toString()} ${a.unit}`:`\u178F\u17BC\u1785\u1796\u17C1\u1780\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1780\u17B6\u179A ${n.origin} ${o} ${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u1781\u17D2\u179F\u17C2\u17A2\u1780\u17D2\u179F\u179A\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1785\u17B6\u1794\u17CB\u1795\u17D2\u178F\u17BE\u1798\u178A\u17C4\u1799 "${o.prefix}"`:o.format==="ends_with"?`\u1781\u17D2\u179F\u17C2\u17A2\u1780\u17D2\u179F\u179A\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1794\u1789\u17D2\u1785\u1794\u17CB\u178A\u17C4\u1799 "${o.suffix}"`:o.format==="includes"?`\u1781\u17D2\u179F\u17C2\u17A2\u1780\u17D2\u179F\u179A\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1798\u17B6\u1793 "${o.includes}"`:o.format==="regex"?`\u1781\u17D2\u179F\u17C2\u17A2\u1780\u17D2\u179F\u179A\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u178F\u17C2\u1795\u17D2\u1782\u17BC\u1795\u17D2\u1782\u1784\u1793\u17B9\u1784\u1791\u1798\u17D2\u179A\u1784\u17CB\u178A\u17C2\u179B\u1794\u17B6\u1793\u1780\u17C6\u178E\u178F\u17CB ${o.pattern}`:`\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 ${r[o.format]??n.format}`}case"not_multiple_of":return`\u179B\u17C1\u1781\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u178F\u17C2\u1787\u17B6\u1796\u17A0\u17BB\u1782\u17BB\u178E\u1793\u17C3 ${n.divisor}`;case"unrecognized_keys":return`\u179A\u1780\u1783\u17BE\u1789\u179F\u17C4\u1798\u17B7\u1793\u179F\u17D2\u1782\u17B6\u179B\u17CB\u17D6 ${h(n.keys,", ")}`;case"invalid_key":return`\u179F\u17C4\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u1793\u17C5\u1780\u17D2\u1793\u17BB\u1784 ${n.origin}`;case"invalid_union":return"\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C";case"invalid_element":return`\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u1793\u17C5\u1780\u17D2\u1793\u17BB\u1784 ${n.origin}`;default:return"\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C"}}};function li(){return{localeError:Fx()}}function Xf(){return li()}var Bx=()=>{let t={string:{unit:"\uBB38\uC790",verb:"to have"},file:{unit:"\uBC14\uC774\uD2B8",verb:"to have"},array:{unit:"\uAC1C",verb:"to have"},set:{unit:"\uAC1C",verb:"to have"}};function e(n){return t[n]??null}let r={regex:"\uC785\uB825",email:"\uC774\uBA54\uC77C \uC8FC\uC18C",url:"URL",emoji:"\uC774\uBAA8\uC9C0",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO \uB0A0\uC9DC\uC2DC\uAC04",date:"ISO \uB0A0\uC9DC",time:"ISO \uC2DC\uAC04",duration:"ISO \uAE30\uAC04",ipv4:"IPv4 \uC8FC\uC18C",ipv6:"IPv6 \uC8FC\uC18C",cidrv4:"IPv4 \uBC94\uC704",cidrv6:"IPv6 \uBC94\uC704",base64:"base64 \uC778\uCF54\uB529 \uBB38\uC790\uC5F4",base64url:"base64url \uC778\uCF54\uB529 \uBB38\uC790\uC5F4",json_string:"JSON \uBB38\uC790\uC5F4",e164:"E.164 \uBC88\uD638",jwt:"JWT",template_literal:"\uC785\uB825"},i={nan:"NaN"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=_(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`\uC798\uBABB\uB41C \uC785\uB825: \uC608\uC0C1 \uD0C0\uC785\uC740 instanceof ${n.expected}, \uBC1B\uC740 \uD0C0\uC785\uC740 ${c}\uC785\uB2C8\uB2E4`:`\uC798\uBABB\uB41C \uC785\uB825: \uC608\uC0C1 \uD0C0\uC785\uC740 ${o}, \uBC1B\uC740 \uD0C0\uC785\uC740 ${c}\uC785\uB2C8\uB2E4`}case"invalid_value":return n.values.length===1?`\uC798\uBABB\uB41C \uC785\uB825: \uAC12\uC740 ${v(n.values[0])} \uC774\uC5B4\uC57C \uD569\uB2C8\uB2E4`:`\uC798\uBABB\uB41C \uC635\uC158: ${h(n.values,"\uB610\uB294 ")} \uC911 \uD558\uB098\uC5EC\uC57C \uD569\uB2C8\uB2E4`;case"too_big":{let o=n.inclusive?"\uC774\uD558":"\uBBF8\uB9CC",a=o==="\uBBF8\uB9CC"?"\uC774\uC5B4\uC57C \uD569\uB2C8\uB2E4":"\uC5EC\uC57C \uD569\uB2C8\uB2E4",c=e(n.origin),l=c?.unit??"\uC694\uC18C";return c?`${n.origin??"\uAC12"}\uC774 \uB108\uBB34 \uD07D\uB2C8\uB2E4: ${n.maximum.toString()}${l} ${o}${a}`:`${n.origin??"\uAC12"}\uC774 \uB108\uBB34 \uD07D\uB2C8\uB2E4: ${n.maximum.toString()} ${o}${a}`}case"too_small":{let o=n.inclusive?"\uC774\uC0C1":"\uCD08\uACFC",a=o==="\uC774\uC0C1"?"\uC774\uC5B4\uC57C \uD569\uB2C8\uB2E4":"\uC5EC\uC57C \uD569\uB2C8\uB2E4",c=e(n.origin),l=c?.unit??"\uC694\uC18C";return c?`${n.origin??"\uAC12"}\uC774 \uB108\uBB34 \uC791\uC2B5\uB2C8\uB2E4: ${n.minimum.toString()}${l} ${o}${a}`:`${n.origin??"\uAC12"}\uC774 \uB108\uBB34 \uC791\uC2B5\uB2C8\uB2E4: ${n.minimum.toString()} ${o}${a}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\uC798\uBABB\uB41C \uBB38\uC790\uC5F4: "${o.prefix}"(\uC73C)\uB85C \uC2DC\uC791\uD574\uC57C \uD569\uB2C8\uB2E4`:o.format==="ends_with"?`\uC798\uBABB\uB41C \uBB38\uC790\uC5F4: "${o.suffix}"(\uC73C)\uB85C \uB05D\uB098\uC57C \uD569\uB2C8\uB2E4`:o.format==="includes"?`\uC798\uBABB\uB41C \uBB38\uC790\uC5F4: "${o.includes}"\uC744(\uB97C) \uD3EC\uD568\uD574\uC57C \uD569\uB2C8\uB2E4`:o.format==="regex"?`\uC798\uBABB\uB41C \uBB38\uC790\uC5F4: \uC815\uADDC\uC2DD ${o.pattern} \uD328\uD134\uACFC \uC77C\uCE58\uD574\uC57C \uD569\uB2C8\uB2E4`:`\uC798\uBABB\uB41C ${r[o.format]??n.format}`}case"not_multiple_of":return`\uC798\uBABB\uB41C \uC22B\uC790: ${n.divisor}\uC758 \uBC30\uC218\uC5EC\uC57C \uD569\uB2C8\uB2E4`;case"unrecognized_keys":return`\uC778\uC2DD\uD560 \uC218 \uC5C6\uB294 \uD0A4: ${h(n.keys,", ")}`;case"invalid_key":return`\uC798\uBABB\uB41C \uD0A4: ${n.origin}`;case"invalid_union":return"\uC798\uBABB\uB41C \uC785\uB825";case"invalid_element":return`\uC798\uBABB\uB41C \uAC12: ${n.origin}`;default:return"\uC798\uBABB\uB41C \uC785\uB825"}}};function Qf(){return{localeError:Bx()}}var zn=t=>t.charAt(0).toUpperCase()+t.slice(1);function eg(t){let e=Math.abs(t),r=e%10,i=e%100;return i>=11&&i<=19||r===0?"many":r===1?"one":"few"}var Hx=()=>{let t={string:{unit:{one:"simbolis",few:"simboliai",many:"simboli\u0173"},verb:{smaller:{inclusive:"turi b\u016Bti ne ilgesn\u0117 kaip",notInclusive:"turi b\u016Bti trumpesn\u0117 kaip"},bigger:{inclusive:"turi b\u016Bti ne trumpesn\u0117 kaip",notInclusive:"turi b\u016Bti ilgesn\u0117 kaip"}}},file:{unit:{one:"baitas",few:"baitai",many:"bait\u0173"},verb:{smaller:{inclusive:"turi b\u016Bti ne didesnis kaip",notInclusive:"turi b\u016Bti ma\u017Eesnis kaip"},bigger:{inclusive:"turi b\u016Bti ne ma\u017Eesnis kaip",notInclusive:"turi b\u016Bti didesnis kaip"}}},array:{unit:{one:"element\u0105",few:"elementus",many:"element\u0173"},verb:{smaller:{inclusive:"turi tur\u0117ti ne daugiau kaip",notInclusive:"turi tur\u0117ti ma\u017Eiau kaip"},bigger:{inclusive:"turi tur\u0117ti ne ma\u017Eiau kaip",notInclusive:"turi tur\u0117ti daugiau kaip"}}},set:{unit:{one:"element\u0105",few:"elementus",many:"element\u0173"},verb:{smaller:{inclusive:"turi tur\u0117ti ne daugiau kaip",notInclusive:"turi tur\u0117ti ma\u017Eiau kaip"},bigger:{inclusive:"turi tur\u0117ti ne ma\u017Eiau kaip",notInclusive:"turi tur\u0117ti daugiau kaip"}}}};function e(n,o,a,c){let l=t[n]??null;return l===null?l:{unit:l.unit[o],verb:l.verb[c][a?"inclusive":"notInclusive"]}}let r={regex:"\u012Fvestis",email:"el. pa\u0161to adresas",url:"URL",emoji:"jaustukas",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO data ir laikas",date:"ISO data",time:"ISO laikas",duration:"ISO trukm\u0117",ipv4:"IPv4 adresas",ipv6:"IPv6 adresas",cidrv4:"IPv4 tinklo prefiksas (CIDR)",cidrv6:"IPv6 tinklo prefiksas (CIDR)",base64:"base64 u\u017Ekoduota eilut\u0117",base64url:"base64url u\u017Ekoduota eilut\u0117",json_string:"JSON eilut\u0117",e164:"E.164 numeris",jwt:"JWT",template_literal:"\u012Fvestis"},i={nan:"NaN",number:"skai\u010Dius",bigint:"sveikasis skai\u010Dius",string:"eilut\u0117",boolean:"login\u0117 reik\u0161m\u0117",undefined:"neapibr\u0117\u017Eta reik\u0161m\u0117",function:"funkcija",symbol:"simbolis",array:"masyvas",object:"objektas",null:"nulin\u0117 reik\u0161m\u0117"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=_(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`Gautas tipas ${c}, o tik\u0117tasi - instanceof ${n.expected}`:`Gautas tipas ${c}, o tik\u0117tasi - ${o}`}case"invalid_value":return n.values.length===1?`Privalo b\u016Bti ${v(n.values[0])}`:`Privalo b\u016Bti vienas i\u0161 ${h(n.values,"|")} pasirinkim\u0173`;case"too_big":{let o=i[n.origin]??n.origin,a=e(n.origin,eg(Number(n.maximum)),n.inclusive??!1,"smaller");if(a?.verb)return`${zn(o??n.origin??"reik\u0161m\u0117")} ${a.verb} ${n.maximum.toString()} ${a.unit??"element\u0173"}`;let c=n.inclusive?"ne didesnis kaip":"ma\u017Eesnis kaip";return`${zn(o??n.origin??"reik\u0161m\u0117")} turi b\u016Bti ${c} ${n.maximum.toString()} ${a?.unit}`}case"too_small":{let o=i[n.origin]??n.origin,a=e(n.origin,eg(Number(n.minimum)),n.inclusive??!1,"bigger");if(a?.verb)return`${zn(o??n.origin??"reik\u0161m\u0117")} ${a.verb} ${n.minimum.toString()} ${a.unit??"element\u0173"}`;let c=n.inclusive?"ne ma\u017Eesnis kaip":"didesnis kaip";return`${zn(o??n.origin??"reik\u0161m\u0117")} turi b\u016Bti ${c} ${n.minimum.toString()} ${a?.unit}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Eilut\u0117 privalo prasid\u0117ti "${o.prefix}"`:o.format==="ends_with"?`Eilut\u0117 privalo pasibaigti "${o.suffix}"`:o.format==="includes"?`Eilut\u0117 privalo \u012Ftraukti "${o.includes}"`:o.format==="regex"?`Eilut\u0117 privalo atitikti ${o.pattern}`:`Neteisingas ${r[o.format]??n.format}`}case"not_multiple_of":return`Skai\u010Dius privalo b\u016Bti ${n.divisor} kartotinis.`;case"unrecognized_keys":return`Neatpa\u017Eint${n.keys.length>1?"i":"as"} rakt${n.keys.length>1?"ai":"as"}: ${h(n.keys,", ")}`;case"invalid_key":return"Rastas klaidingas raktas";case"invalid_union":return"Klaidinga \u012Fvestis";case"invalid_element":{let o=i[n.origin]??n.origin;return`${zn(o??n.origin??"reik\u0161m\u0117")} turi klaiding\u0105 \u012Fvest\u012F`}default:return"Klaidinga \u012Fvestis"}}};function tg(){return{localeError:Hx()}}var Vx=()=>{let t={string:{unit:"\u0437\u043D\u0430\u0446\u0438",verb:"\u0434\u0430 \u0438\u043C\u0430\u0430\u0442"},file:{unit:"\u0431\u0430\u0458\u0442\u0438",verb:"\u0434\u0430 \u0438\u043C\u0430\u0430\u0442"},array:{unit:"\u0441\u0442\u0430\u0432\u043A\u0438",verb:"\u0434\u0430 \u0438\u043C\u0430\u0430\u0442"},set:{unit:"\u0441\u0442\u0430\u0432\u043A\u0438",verb:"\u0434\u0430 \u0438\u043C\u0430\u0430\u0442"}};function e(n){return t[n]??null}let r={regex:"\u0432\u043D\u0435\u0441",email:"\u0430\u0434\u0440\u0435\u0441\u0430 \u043D\u0430 \u0435-\u043F\u043E\u0448\u0442\u0430",url:"URL",emoji:"\u0435\u043C\u043E\u045F\u0438",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO \u0434\u0430\u0442\u0443\u043C \u0438 \u0432\u0440\u0435\u043C\u0435",date:"ISO \u0434\u0430\u0442\u0443\u043C",time:"ISO \u0432\u0440\u0435\u043C\u0435",duration:"ISO \u0432\u0440\u0435\u043C\u0435\u0442\u0440\u0430\u0435\u045A\u0435",ipv4:"IPv4 \u0430\u0434\u0440\u0435\u0441\u0430",ipv6:"IPv6 \u0430\u0434\u0440\u0435\u0441\u0430",cidrv4:"IPv4 \u043E\u043F\u0441\u0435\u0433",cidrv6:"IPv6 \u043E\u043F\u0441\u0435\u0433",base64:"base64-\u0435\u043D\u043A\u043E\u0434\u0438\u0440\u0430\u043D\u0430 \u043D\u0438\u0437\u0430",base64url:"base64url-\u0435\u043D\u043A\u043E\u0434\u0438\u0440\u0430\u043D\u0430 \u043D\u0438\u0437\u0430",json_string:"JSON \u043D\u0438\u0437\u0430",e164:"E.164 \u0431\u0440\u043E\u0458",jwt:"JWT",template_literal:"\u0432\u043D\u0435\u0441"},i={nan:"NaN",number:"\u0431\u0440\u043E\u0458",array:"\u043D\u0438\u0437\u0430"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=_(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`\u0413\u0440\u0435\u0448\u0435\u043D \u0432\u043D\u0435\u0441: \u0441\u0435 \u043E\u0447\u0435\u043A\u0443\u0432\u0430 instanceof ${n.expected}, \u043F\u0440\u0438\u043C\u0435\u043D\u043E ${c}`:`\u0413\u0440\u0435\u0448\u0435\u043D \u0432\u043D\u0435\u0441: \u0441\u0435 \u043E\u0447\u0435\u043A\u0443\u0432\u0430 ${o}, \u043F\u0440\u0438\u043C\u0435\u043D\u043E ${c}`}case"invalid_value":return n.values.length===1?`Invalid input: expected ${v(n.values[0])}`:`\u0413\u0440\u0435\u0448\u0430\u043D\u0430 \u043E\u043F\u0446\u0438\u0458\u0430: \u0441\u0435 \u043E\u0447\u0435\u043A\u0443\u0432\u0430 \u0435\u0434\u043D\u0430 ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`\u041F\u0440\u0435\u043C\u043D\u043E\u0433\u0443 \u0433\u043E\u043B\u0435\u043C: \u0441\u0435 \u043E\u0447\u0435\u043A\u0443\u0432\u0430 ${n.origin??"\u0432\u0440\u0435\u0434\u043D\u043E\u0441\u0442\u0430"} \u0434\u0430 \u0438\u043C\u0430 ${o}${n.maximum.toString()} ${a.unit??"\u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0438"}`:`\u041F\u0440\u0435\u043C\u043D\u043E\u0433\u0443 \u0433\u043E\u043B\u0435\u043C: \u0441\u0435 \u043E\u0447\u0435\u043A\u0443\u0432\u0430 ${n.origin??"\u0432\u0440\u0435\u0434\u043D\u043E\u0441\u0442\u0430"} \u0434\u0430 \u0431\u0438\u0434\u0435 ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`\u041F\u0440\u0435\u043C\u043D\u043E\u0433\u0443 \u043C\u0430\u043B: \u0441\u0435 \u043E\u0447\u0435\u043A\u0443\u0432\u0430 ${n.origin} \u0434\u0430 \u0438\u043C\u0430 ${o}${n.minimum.toString()} ${a.unit}`:`\u041F\u0440\u0435\u043C\u043D\u043E\u0433\u0443 \u043C\u0430\u043B: \u0441\u0435 \u043E\u0447\u0435\u043A\u0443\u0432\u0430 ${n.origin} \u0434\u0430 \u0431\u0438\u0434\u0435 ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u041D\u0435\u0432\u0430\u0436\u0435\u0447\u043A\u0430 \u043D\u0438\u0437\u0430: \u043C\u043E\u0440\u0430 \u0434\u0430 \u0437\u0430\u043F\u043E\u0447\u043D\u0443\u0432\u0430 \u0441\u043E "${o.prefix}"`:o.format==="ends_with"?`\u041D\u0435\u0432\u0430\u0436\u0435\u0447\u043A\u0430 \u043D\u0438\u0437\u0430: \u043C\u043E\u0440\u0430 \u0434\u0430 \u0437\u0430\u0432\u0440\u0448\u0443\u0432\u0430 \u0441\u043E "${o.suffix}"`:o.format==="includes"?`\u041D\u0435\u0432\u0430\u0436\u0435\u0447\u043A\u0430 \u043D\u0438\u0437\u0430: \u043C\u043E\u0440\u0430 \u0434\u0430 \u0432\u043A\u043B\u0443\u0447\u0443\u0432\u0430 "${o.includes}"`:o.format==="regex"?`\u041D\u0435\u0432\u0430\u0436\u0435\u0447\u043A\u0430 \u043D\u0438\u0437\u0430: \u043C\u043E\u0440\u0430 \u0434\u0430 \u043E\u0434\u0433\u043E\u0430\u0440\u0430 \u043D\u0430 \u043F\u0430\u0442\u0435\u0440\u043D\u043E\u0442 ${o.pattern}`:`Invalid ${r[o.format]??n.format}`}case"not_multiple_of":return`\u0413\u0440\u0435\u0448\u0435\u043D \u0431\u0440\u043E\u0458: \u043C\u043E\u0440\u0430 \u0434\u0430 \u0431\u0438\u0434\u0435 \u0434\u0435\u043B\u0438\u0432 \u0441\u043E ${n.divisor}`;case"unrecognized_keys":return`${n.keys.length>1?"\u041D\u0435\u043F\u0440\u0435\u043F\u043E\u0437\u043D\u0430\u0435\u043D\u0438 \u043A\u043B\u0443\u0447\u0435\u0432\u0438":"\u041D\u0435\u043F\u0440\u0435\u043F\u043E\u0437\u043D\u0430\u0435\u043D \u043A\u043B\u0443\u0447"}: ${h(n.keys,", ")}`;case"invalid_key":return`\u0413\u0440\u0435\u0448\u0435\u043D \u043A\u043B\u0443\u0447 \u0432\u043E ${n.origin}`;case"invalid_union":return"\u0413\u0440\u0435\u0448\u0435\u043D \u0432\u043D\u0435\u0441";case"invalid_element":return`\u0413\u0440\u0435\u0448\u043D\u0430 \u0432\u0440\u0435\u0434\u043D\u043E\u0441\u0442 \u0432\u043E ${n.origin}`;default:return"\u0413\u0440\u0435\u0448\u0435\u043D \u0432\u043D\u0435\u0441"}}};function ng(){return{localeError:Vx()}}var Zx=()=>{let t={string:{unit:"aksara",verb:"mempunyai"},file:{unit:"bait",verb:"mempunyai"},array:{unit:"elemen",verb:"mempunyai"},set:{unit:"elemen",verb:"mempunyai"}};function e(n){return t[n]??null}let r={regex:"input",email:"alamat e-mel",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:"tarikh masa ISO",date:"tarikh ISO",time:"masa ISO",duration:"tempoh ISO",ipv4:"alamat IPv4",ipv6:"alamat IPv6",cidrv4:"julat IPv4",cidrv6:"julat IPv6",base64:"string dikodkan base64",base64url:"string dikodkan base64url",json_string:"string JSON",e164:"nombor E.164",jwt:"JWT",template_literal:"input"},i={nan:"NaN",number:"nombor"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=_(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`Input tidak sah: dijangka instanceof ${n.expected}, diterima ${c}`:`Input tidak sah: dijangka ${o}, diterima ${c}`}case"invalid_value":return n.values.length===1?`Input tidak sah: dijangka ${v(n.values[0])}`:`Pilihan tidak sah: dijangka salah satu daripada ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`Terlalu besar: dijangka ${n.origin??"nilai"} ${a.verb} ${o}${n.maximum.toString()} ${a.unit??"elemen"}`:`Terlalu besar: dijangka ${n.origin??"nilai"} adalah ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`Terlalu kecil: dijangka ${n.origin} ${a.verb} ${o}${n.minimum.toString()} ${a.unit}`:`Terlalu kecil: dijangka ${n.origin} adalah ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`String tidak sah: mesti bermula dengan "${o.prefix}"`:o.format==="ends_with"?`String tidak sah: mesti berakhir dengan "${o.suffix}"`:o.format==="includes"?`String tidak sah: mesti mengandungi "${o.includes}"`:o.format==="regex"?`String tidak sah: mesti sepadan dengan corak ${o.pattern}`:`${r[o.format]??n.format} tidak sah`}case"not_multiple_of":return`Nombor tidak sah: perlu gandaan ${n.divisor}`;case"unrecognized_keys":return`Kunci tidak dikenali: ${h(n.keys,", ")}`;case"invalid_key":return`Kunci tidak sah dalam ${n.origin}`;case"invalid_union":return"Input tidak sah";case"invalid_element":return`Nilai tidak sah dalam ${n.origin}`;default:return"Input tidak sah"}}};function rg(){return{localeError:Zx()}}var Kx=()=>{let t={string:{unit:"tekens",verb:"heeft"},file:{unit:"bytes",verb:"heeft"},array:{unit:"elementen",verb:"heeft"},set:{unit:"elementen",verb:"heeft"}};function e(n){return t[n]??null}let r={regex:"invoer",email:"emailadres",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 datum en tijd",date:"ISO datum",time:"ISO tijd",duration:"ISO duur",ipv4:"IPv4-adres",ipv6:"IPv6-adres",cidrv4:"IPv4-bereik",cidrv6:"IPv6-bereik",base64:"base64-gecodeerde tekst",base64url:"base64 URL-gecodeerde tekst",json_string:"JSON string",e164:"E.164-nummer",jwt:"JWT",template_literal:"invoer"},i={nan:"NaN",number:"getal"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=_(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`Ongeldige invoer: verwacht instanceof ${n.expected}, ontving ${c}`:`Ongeldige invoer: verwacht ${o}, ontving ${c}`}case"invalid_value":return n.values.length===1?`Ongeldige invoer: verwacht ${v(n.values[0])}`:`Ongeldige optie: verwacht \xE9\xE9n van ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin),c=n.origin==="date"?"laat":n.origin==="string"?"lang":"groot";return a?`Te ${c}: verwacht dat ${n.origin??"waarde"} ${o}${n.maximum.toString()} ${a.unit??"elementen"} ${a.verb}`:`Te ${c}: verwacht dat ${n.origin??"waarde"} ${o}${n.maximum.toString()} is`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin),c=n.origin==="date"?"vroeg":n.origin==="string"?"kort":"klein";return a?`Te ${c}: verwacht dat ${n.origin} ${o}${n.minimum.toString()} ${a.unit} ${a.verb}`:`Te ${c}: verwacht dat ${n.origin} ${o}${n.minimum.toString()} is`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Ongeldige tekst: moet met "${o.prefix}" beginnen`:o.format==="ends_with"?`Ongeldige tekst: moet op "${o.suffix}" eindigen`:o.format==="includes"?`Ongeldige tekst: moet "${o.includes}" bevatten`:o.format==="regex"?`Ongeldige tekst: moet overeenkomen met patroon ${o.pattern}`:`Ongeldig: ${r[o.format]??n.format}`}case"not_multiple_of":return`Ongeldig getal: moet een veelvoud van ${n.divisor} zijn`;case"unrecognized_keys":return`Onbekende key${n.keys.length>1?"s":""}: ${h(n.keys,", ")}`;case"invalid_key":return`Ongeldige key in ${n.origin}`;case"invalid_union":return"Ongeldige invoer";case"invalid_element":return`Ongeldige waarde in ${n.origin}`;default:return"Ongeldige invoer"}}};function ig(){return{localeError:Kx()}}var Gx=()=>{let t={string:{unit:"tegn",verb:"\xE5 ha"},file:{unit:"bytes",verb:"\xE5 ha"},array:{unit:"elementer",verb:"\xE5 inneholde"},set:{unit:"elementer",verb:"\xE5 inneholde"}};function e(n){return t[n]??null}let r={regex:"input",email:"e-postadresse",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 dato- og klokkeslett",date:"ISO-dato",time:"ISO-klokkeslett",duration:"ISO-varighet",ipv4:"IPv4-omr\xE5de",ipv6:"IPv6-omr\xE5de",cidrv4:"IPv4-spekter",cidrv6:"IPv6-spekter",base64:"base64-enkodet streng",base64url:"base64url-enkodet streng",json_string:"JSON-streng",e164:"E.164-nummer",jwt:"JWT",template_literal:"input"},i={nan:"NaN",number:"tall",array:"liste"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=_(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`Ugyldig input: forventet instanceof ${n.expected}, fikk ${c}`:`Ugyldig input: forventet ${o}, fikk ${c}`}case"invalid_value":return n.values.length===1?`Ugyldig verdi: forventet ${v(n.values[0])}`:`Ugyldig valg: forventet en av ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`For stor(t): forventet ${n.origin??"value"} til \xE5 ha ${o}${n.maximum.toString()} ${a.unit??"elementer"}`:`For stor(t): forventet ${n.origin??"value"} til \xE5 ha ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`For lite(n): forventet ${n.origin} til \xE5 ha ${o}${n.minimum.toString()} ${a.unit}`:`For lite(n): forventet ${n.origin} til \xE5 ha ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Ugyldig streng: m\xE5 starte med "${o.prefix}"`:o.format==="ends_with"?`Ugyldig streng: m\xE5 ende med "${o.suffix}"`:o.format==="includes"?`Ugyldig streng: m\xE5 inneholde "${o.includes}"`:o.format==="regex"?`Ugyldig streng: m\xE5 matche m\xF8nsteret ${o.pattern}`:`Ugyldig ${r[o.format]??n.format}`}case"not_multiple_of":return`Ugyldig tall: m\xE5 v\xE6re et multiplum av ${n.divisor}`;case"unrecognized_keys":return`${n.keys.length>1?"Ukjente n\xF8kler":"Ukjent n\xF8kkel"}: ${h(n.keys,", ")}`;case"invalid_key":return`Ugyldig n\xF8kkel i ${n.origin}`;case"invalid_union":return"Ugyldig input";case"invalid_element":return`Ugyldig verdi i ${n.origin}`;default:return"Ugyldig input"}}};function og(){return{localeError:Gx()}}var Wx=()=>{let t={string:{unit:"harf",verb:"olmal\u0131d\u0131r"},file:{unit:"bayt",verb:"olmal\u0131d\u0131r"},array:{unit:"unsur",verb:"olmal\u0131d\u0131r"},set:{unit:"unsur",verb:"olmal\u0131d\u0131r"}};function e(n){return t[n]??null}let r={regex:"giren",email:"epostag\xE2h",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 heng\xE2m\u0131",date:"ISO tarihi",time:"ISO zaman\u0131",duration:"ISO m\xFCddeti",ipv4:"IPv4 ni\u015F\xE2n\u0131",ipv6:"IPv6 ni\u015F\xE2n\u0131",cidrv4:"IPv4 menzili",cidrv6:"IPv6 menzili",base64:"base64-\u015Fifreli metin",base64url:"base64url-\u015Fifreli metin",json_string:"JSON metin",e164:"E.164 say\u0131s\u0131",jwt:"JWT",template_literal:"giren"},i={nan:"NaN",number:"numara",array:"saf",null:"gayb"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=_(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`F\xE2sit giren: umulan instanceof ${n.expected}, al\u0131nan ${c}`:`F\xE2sit giren: umulan ${o}, al\u0131nan ${c}`}case"invalid_value":return n.values.length===1?`F\xE2sit giren: umulan ${v(n.values[0])}`:`F\xE2sit tercih: m\xFBteberler ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`Fazla b\xFCy\xFCk: ${n.origin??"value"}, ${o}${n.maximum.toString()} ${a.unit??"elements"} sahip olmal\u0131yd\u0131.`:`Fazla b\xFCy\xFCk: ${n.origin??"value"}, ${o}${n.maximum.toString()} olmal\u0131yd\u0131.`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`Fazla k\xFC\xE7\xFCk: ${n.origin}, ${o}${n.minimum.toString()} ${a.unit} sahip olmal\u0131yd\u0131.`:`Fazla k\xFC\xE7\xFCk: ${n.origin}, ${o}${n.minimum.toString()} olmal\u0131yd\u0131.`}case"invalid_format":{let o=n;return o.format==="starts_with"?`F\xE2sit metin: "${o.prefix}" ile ba\u015Flamal\u0131.`:o.format==="ends_with"?`F\xE2sit metin: "${o.suffix}" ile bitmeli.`:o.format==="includes"?`F\xE2sit metin: "${o.includes}" ihtiv\xE2 etmeli.`:o.format==="regex"?`F\xE2sit metin: ${o.pattern} nak\u015F\u0131na uymal\u0131.`:`F\xE2sit ${r[o.format]??n.format}`}case"not_multiple_of":return`F\xE2sit say\u0131: ${n.divisor} kat\u0131 olmal\u0131yd\u0131.`;case"unrecognized_keys":return`Tan\u0131nmayan anahtar ${n.keys.length>1?"s":""}: ${h(n.keys,", ")}`;case"invalid_key":return`${n.origin} i\xE7in tan\u0131nmayan anahtar var.`;case"invalid_union":return"Giren tan\u0131namad\u0131.";case"invalid_element":return`${n.origin} i\xE7in tan\u0131nmayan k\u0131ymet var.`;default:return"K\u0131ymet tan\u0131namad\u0131."}}};function sg(){return{localeError:Wx()}}var qx=()=>{let t={string:{unit:"\u062A\u0648\u06A9\u064A",verb:"\u0648\u0644\u0631\u064A"},file:{unit:"\u0628\u0627\u06CC\u067C\u0633",verb:"\u0648\u0644\u0631\u064A"},array:{unit:"\u062A\u0648\u06A9\u064A",verb:"\u0648\u0644\u0631\u064A"},set:{unit:"\u062A\u0648\u06A9\u064A",verb:"\u0648\u0644\u0631\u064A"}};function e(n){return t[n]??null}let r={regex:"\u0648\u0631\u0648\u062F\u064A",email:"\u0628\u0631\u06CC\u069A\u0646\u0627\u0644\u06CC\u06A9",url:"\u06CC\u0648 \u0622\u0631 \u0627\u0644",emoji:"\u0627\u06CC\u0645\u0648\u062C\u064A",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"\u0646\u06CC\u067C\u0647 \u0627\u0648 \u0648\u062E\u062A",date:"\u0646\u06D0\u067C\u0647",time:"\u0648\u062E\u062A",duration:"\u0645\u0648\u062F\u0647",ipv4:"\u062F IPv4 \u067E\u062A\u0647",ipv6:"\u062F IPv6 \u067E\u062A\u0647",cidrv4:"\u062F IPv4 \u0633\u0627\u062D\u0647",cidrv6:"\u062F IPv6 \u0633\u0627\u062D\u0647",base64:"base64-encoded \u0645\u062A\u0646",base64url:"base64url-encoded \u0645\u062A\u0646",json_string:"JSON \u0645\u062A\u0646",e164:"\u062F E.164 \u0634\u0645\u06D0\u0631\u0647",jwt:"JWT",template_literal:"\u0648\u0631\u0648\u062F\u064A"},i={nan:"NaN",number:"\u0639\u062F\u062F",array:"\u0627\u0631\u06D0"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=_(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`\u0646\u0627\u0633\u0645 \u0648\u0631\u0648\u062F\u064A: \u0628\u0627\u06CC\u062F instanceof ${n.expected} \u0648\u0627\u06CC, \u0645\u06AB\u0631 ${c} \u062A\u0631\u0644\u0627\u0633\u0647 \u0634\u0648`:`\u0646\u0627\u0633\u0645 \u0648\u0631\u0648\u062F\u064A: \u0628\u0627\u06CC\u062F ${o} \u0648\u0627\u06CC, \u0645\u06AB\u0631 ${c} \u062A\u0631\u0644\u0627\u0633\u0647 \u0634\u0648`}case"invalid_value":return n.values.length===1?`\u0646\u0627\u0633\u0645 \u0648\u0631\u0648\u062F\u064A: \u0628\u0627\u06CC\u062F ${v(n.values[0])} \u0648\u0627\u06CC`:`\u0646\u0627\u0633\u0645 \u0627\u0646\u062A\u062E\u0627\u0628: \u0628\u0627\u06CC\u062F \u06CC\u0648 \u0644\u0647 ${h(n.values,"|")} \u0685\u062E\u0647 \u0648\u0627\u06CC`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`\u0689\u06CC\u0631 \u0644\u0648\u06CC: ${n.origin??"\u0627\u0631\u0632\u069A\u062A"} \u0628\u0627\u06CC\u062F ${o}${n.maximum.toString()} ${a.unit??"\u0639\u0646\u0635\u0631\u0648\u0646\u0647"} \u0648\u0644\u0631\u064A`:`\u0689\u06CC\u0631 \u0644\u0648\u06CC: ${n.origin??"\u0627\u0631\u0632\u069A\u062A"} \u0628\u0627\u06CC\u062F ${o}${n.maximum.toString()} \u0648\u064A`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`\u0689\u06CC\u0631 \u06A9\u0648\u0686\u0646\u06CC: ${n.origin} \u0628\u0627\u06CC\u062F ${o}${n.minimum.toString()} ${a.unit} \u0648\u0644\u0631\u064A`:`\u0689\u06CC\u0631 \u06A9\u0648\u0686\u0646\u06CC: ${n.origin} \u0628\u0627\u06CC\u062F ${o}${n.minimum.toString()} \u0648\u064A`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u0646\u0627\u0633\u0645 \u0645\u062A\u0646: \u0628\u0627\u06CC\u062F \u062F "${o.prefix}" \u0633\u0631\u0647 \u067E\u06CC\u0644 \u0634\u064A`:o.format==="ends_with"?`\u0646\u0627\u0633\u0645 \u0645\u062A\u0646: \u0628\u0627\u06CC\u062F \u062F "${o.suffix}" \u0633\u0631\u0647 \u067E\u0627\u06CC \u062A\u0647 \u0648\u0631\u0633\u064A\u0696\u064A`:o.format==="includes"?`\u0646\u0627\u0633\u0645 \u0645\u062A\u0646: \u0628\u0627\u06CC\u062F "${o.includes}" \u0648\u0644\u0631\u064A`:o.format==="regex"?`\u0646\u0627\u0633\u0645 \u0645\u062A\u0646: \u0628\u0627\u06CC\u062F \u062F ${o.pattern} \u0633\u0631\u0647 \u0645\u0637\u0627\u0628\u0642\u062A \u0648\u0644\u0631\u064A`:`${r[o.format]??n.format} \u0646\u0627\u0633\u0645 \u062F\u06CC`}case"not_multiple_of":return`\u0646\u0627\u0633\u0645 \u0639\u062F\u062F: \u0628\u0627\u06CC\u062F \u062F ${n.divisor} \u0645\u0636\u0631\u0628 \u0648\u064A`;case"unrecognized_keys":return`\u0646\u0627\u0633\u0645 ${n.keys.length>1?"\u06A9\u0644\u06CC\u0689\u0648\u0646\u0647":"\u06A9\u0644\u06CC\u0689"}: ${h(n.keys,", ")}`;case"invalid_key":return`\u0646\u0627\u0633\u0645 \u06A9\u0644\u06CC\u0689 \u067E\u0647 ${n.origin} \u06A9\u06D0`;case"invalid_union":return"\u0646\u0627\u0633\u0645\u0647 \u0648\u0631\u0648\u062F\u064A";case"invalid_element":return`\u0646\u0627\u0633\u0645 \u0639\u0646\u0635\u0631 \u067E\u0647 ${n.origin} \u06A9\u06D0`;default:return"\u0646\u0627\u0633\u0645\u0647 \u0648\u0631\u0648\u062F\u064A"}}};function ag(){return{localeError:qx()}}var Jx=()=>{let t={string:{unit:"znak\xF3w",verb:"mie\u0107"},file:{unit:"bajt\xF3w",verb:"mie\u0107"},array:{unit:"element\xF3w",verb:"mie\u0107"},set:{unit:"element\xF3w",verb:"mie\u0107"}};function e(n){return t[n]??null}let r={regex:"wyra\u017Cenie",email:"adres email",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:"data i godzina w formacie ISO",date:"data w formacie ISO",time:"godzina w formacie ISO",duration:"czas trwania ISO",ipv4:"adres IPv4",ipv6:"adres IPv6",cidrv4:"zakres IPv4",cidrv6:"zakres IPv6",base64:"ci\u0105g znak\xF3w zakodowany w formacie base64",base64url:"ci\u0105g znak\xF3w zakodowany w formacie base64url",json_string:"ci\u0105g znak\xF3w w formacie JSON",e164:"liczba E.164",jwt:"JWT",template_literal:"wej\u015Bcie"},i={nan:"NaN",number:"liczba",array:"tablica"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=_(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`Nieprawid\u0142owe dane wej\u015Bciowe: oczekiwano instanceof ${n.expected}, otrzymano ${c}`:`Nieprawid\u0142owe dane wej\u015Bciowe: oczekiwano ${o}, otrzymano ${c}`}case"invalid_value":return n.values.length===1?`Nieprawid\u0142owe dane wej\u015Bciowe: oczekiwano ${v(n.values[0])}`:`Nieprawid\u0142owa opcja: oczekiwano jednej z warto\u015Bci ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`Za du\u017Ca warto\u015B\u0107: oczekiwano, \u017Ce ${n.origin??"warto\u015B\u0107"} b\u0119dzie mie\u0107 ${o}${n.maximum.toString()} ${a.unit??"element\xF3w"}`:`Zbyt du\u017C(y/a/e): oczekiwano, \u017Ce ${n.origin??"warto\u015B\u0107"} b\u0119dzie wynosi\u0107 ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`Za ma\u0142a warto\u015B\u0107: oczekiwano, \u017Ce ${n.origin??"warto\u015B\u0107"} b\u0119dzie mie\u0107 ${o}${n.minimum.toString()} ${a.unit??"element\xF3w"}`:`Zbyt ma\u0142(y/a/e): oczekiwano, \u017Ce ${n.origin??"warto\u015B\u0107"} b\u0119dzie wynosi\u0107 ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Nieprawid\u0142owy ci\u0105g znak\xF3w: musi zaczyna\u0107 si\u0119 od "${o.prefix}"`:o.format==="ends_with"?`Nieprawid\u0142owy ci\u0105g znak\xF3w: musi ko\u0144czy\u0107 si\u0119 na "${o.suffix}"`:o.format==="includes"?`Nieprawid\u0142owy ci\u0105g znak\xF3w: musi zawiera\u0107 "${o.includes}"`:o.format==="regex"?`Nieprawid\u0142owy ci\u0105g znak\xF3w: musi odpowiada\u0107 wzorcowi ${o.pattern}`:`Nieprawid\u0142ow(y/a/e) ${r[o.format]??n.format}`}case"not_multiple_of":return`Nieprawid\u0142owa liczba: musi by\u0107 wielokrotno\u015Bci\u0105 ${n.divisor}`;case"unrecognized_keys":return`Nierozpoznane klucze${n.keys.length>1?"s":""}: ${h(n.keys,", ")}`;case"invalid_key":return`Nieprawid\u0142owy klucz w ${n.origin}`;case"invalid_union":return"Nieprawid\u0142owe dane wej\u015Bciowe";case"invalid_element":return`Nieprawid\u0142owa warto\u015B\u0107 w ${n.origin}`;default:return"Nieprawid\u0142owe dane wej\u015Bciowe"}}};function cg(){return{localeError:Jx()}}var Yx=()=>{let t={string:{unit:"caracteres",verb:"ter"},file:{unit:"bytes",verb:"ter"},array:{unit:"itens",verb:"ter"},set:{unit:"itens",verb:"ter"}};function e(n){return t[n]??null}let r={regex:"padr\xE3o",email:"endere\xE7o de e-mail",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:"data e hora ISO",date:"data ISO",time:"hora ISO",duration:"dura\xE7\xE3o ISO",ipv4:"endere\xE7o IPv4",ipv6:"endere\xE7o IPv6",cidrv4:"faixa de IPv4",cidrv6:"faixa de IPv6",base64:"texto codificado em base64",base64url:"URL codificada em base64",json_string:"texto JSON",e164:"n\xFAmero E.164",jwt:"JWT",template_literal:"entrada"},i={nan:"NaN",number:"n\xFAmero",null:"nulo"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=_(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`Tipo inv\xE1lido: esperado instanceof ${n.expected}, recebido ${c}`:`Tipo inv\xE1lido: esperado ${o}, recebido ${c}`}case"invalid_value":return n.values.length===1?`Entrada inv\xE1lida: esperado ${v(n.values[0])}`:`Op\xE7\xE3o inv\xE1lida: esperada uma das ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`Muito grande: esperado que ${n.origin??"valor"} tivesse ${o}${n.maximum.toString()} ${a.unit??"elementos"}`:`Muito grande: esperado que ${n.origin??"valor"} fosse ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`Muito pequeno: esperado que ${n.origin} tivesse ${o}${n.minimum.toString()} ${a.unit}`:`Muito pequeno: esperado que ${n.origin} fosse ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Texto inv\xE1lido: deve come\xE7ar com "${o.prefix}"`:o.format==="ends_with"?`Texto inv\xE1lido: deve terminar com "${o.suffix}"`:o.format==="includes"?`Texto inv\xE1lido: deve incluir "${o.includes}"`:o.format==="regex"?`Texto inv\xE1lido: deve corresponder ao padr\xE3o ${o.pattern}`:`${r[o.format]??n.format} inv\xE1lido`}case"not_multiple_of":return`N\xFAmero inv\xE1lido: deve ser m\xFAltiplo de ${n.divisor}`;case"unrecognized_keys":return`Chave${n.keys.length>1?"s":""} desconhecida${n.keys.length>1?"s":""}: ${h(n.keys,", ")}`;case"invalid_key":return`Chave inv\xE1lida em ${n.origin}`;case"invalid_union":return"Entrada inv\xE1lida";case"invalid_element":return`Valor inv\xE1lido em ${n.origin}`;default:return"Campo inv\xE1lido"}}};function lg(){return{localeError:Yx()}}var Xx=()=>{let t={string:{unit:"caractere",verb:"s\u0103 aib\u0103"},file:{unit:"octe\u021Bi",verb:"s\u0103 aib\u0103"},array:{unit:"elemente",verb:"s\u0103 aib\u0103"},set:{unit:"elemente",verb:"s\u0103 aib\u0103"},map:{unit:"intr\u0103ri",verb:"s\u0103 aib\u0103"}};function e(n){return t[n]??null}let r={regex:"intrare",email:"adres\u0103 de email",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:"dat\u0103 \u0219i or\u0103 ISO",date:"dat\u0103 ISO",time:"or\u0103 ISO",duration:"durat\u0103 ISO",ipv4:"adres\u0103 IPv4",ipv6:"adres\u0103 IPv6",mac:"adres\u0103 MAC",cidrv4:"interval IPv4",cidrv6:"interval IPv6",base64:"\u0219ir codat base64",base64url:"\u0219ir codat base64url",json_string:"\u0219ir JSON",e164:"num\u0103r E.164",jwt:"JWT",template_literal:"intrare"},i={nan:"NaN",string:"\u0219ir",number:"num\u0103r",boolean:"boolean",function:"func\u021Bie",array:"matrice",object:"obiect",undefined:"nedefinit",symbol:"simbol",bigint:"num\u0103r mare",void:"void",never:"never",map:"hart\u0103",set:"set"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=_(n.input),c=i[a]??a;return`Intrare invalid\u0103: a\u0219teptat ${o}, primit ${c}`}case"invalid_value":return n.values.length===1?`Intrare invalid\u0103: a\u0219teptat ${v(n.values[0])}`:`Op\u021Biune invalid\u0103: a\u0219teptat una dintre ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`Prea mare: a\u0219teptat ca ${n.origin??"valoarea"} ${a.verb} ${o}${n.maximum.toString()} ${a.unit??"elemente"}`:`Prea mare: a\u0219teptat ca ${n.origin??"valoarea"} s\u0103 fie ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`Prea mic: a\u0219teptat ca ${n.origin} ${a.verb} ${o}${n.minimum.toString()} ${a.unit}`:`Prea mic: a\u0219teptat ca ${n.origin} s\u0103 fie ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u0218ir invalid: trebuie s\u0103 \xEEnceap\u0103 cu "${o.prefix}"`:o.format==="ends_with"?`\u0218ir invalid: trebuie s\u0103 se termine cu "${o.suffix}"`:o.format==="includes"?`\u0218ir invalid: trebuie s\u0103 includ\u0103 "${o.includes}"`:o.format==="regex"?`\u0218ir invalid: trebuie s\u0103 se potriveasc\u0103 cu modelul ${o.pattern}`:`Format invalid: ${r[o.format]??n.format}`}case"not_multiple_of":return`Num\u0103r invalid: trebuie s\u0103 fie multiplu de ${n.divisor}`;case"unrecognized_keys":return`Chei nerecunoscute: ${h(n.keys,", ")}`;case"invalid_key":return`Cheie invalid\u0103 \xEEn ${n.origin}`;case"invalid_union":return"Intrare invalid\u0103";case"invalid_element":return`Valoare invalid\u0103 \xEEn ${n.origin}`;default:return"Intrare invalid\u0103"}}};function ug(){return{localeError:Xx()}}function dg(t,e,r,i){let n=Math.abs(t),o=n%10,a=n%100;return a>=11&&a<=19?i:o===1?e:o>=2&&o<=4?r:i}var Qx=()=>{let t={string:{unit:{one:"\u0441\u0438\u043C\u0432\u043E\u043B",few:"\u0441\u0438\u043C\u0432\u043E\u043B\u0430",many:"\u0441\u0438\u043C\u0432\u043E\u043B\u043E\u0432"},verb:"\u0438\u043C\u0435\u0442\u044C"},file:{unit:{one:"\u0431\u0430\u0439\u0442",few:"\u0431\u0430\u0439\u0442\u0430",many:"\u0431\u0430\u0439\u0442"},verb:"\u0438\u043C\u0435\u0442\u044C"},array:{unit:{one:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442",few:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u0430",many:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u043E\u0432"},verb:"\u0438\u043C\u0435\u0442\u044C"},set:{unit:{one:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442",few:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u0430",many:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u043E\u0432"},verb:"\u0438\u043C\u0435\u0442\u044C"}};function e(n){return t[n]??null}let r={regex:"\u0432\u0432\u043E\u0434",email:"email \u0430\u0434\u0440\u0435\u0441",url:"URL",emoji:"\u044D\u043C\u043E\u0434\u0437\u0438",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO \u0434\u0430\u0442\u0430 \u0438 \u0432\u0440\u0435\u043C\u044F",date:"ISO \u0434\u0430\u0442\u0430",time:"ISO \u0432\u0440\u0435\u043C\u044F",duration:"ISO \u0434\u043B\u0438\u0442\u0435\u043B\u044C\u043D\u043E\u0441\u0442\u044C",ipv4:"IPv4 \u0430\u0434\u0440\u0435\u0441",ipv6:"IPv6 \u0430\u0434\u0440\u0435\u0441",cidrv4:"IPv4 \u0434\u0438\u0430\u043F\u0430\u0437\u043E\u043D",cidrv6:"IPv6 \u0434\u0438\u0430\u043F\u0430\u0437\u043E\u043D",base64:"\u0441\u0442\u0440\u043E\u043A\u0430 \u0432 \u0444\u043E\u0440\u043C\u0430\u0442\u0435 base64",base64url:"\u0441\u0442\u0440\u043E\u043A\u0430 \u0432 \u0444\u043E\u0440\u043C\u0430\u0442\u0435 base64url",json_string:"JSON \u0441\u0442\u0440\u043E\u043A\u0430",e164:"\u043D\u043E\u043C\u0435\u0440 E.164",jwt:"JWT",template_literal:"\u0432\u0432\u043E\u0434"},i={nan:"NaN",number:"\u0447\u0438\u0441\u043B\u043E",array:"\u043C\u0430\u0441\u0441\u0438\u0432"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=_(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u0432\u0432\u043E\u0434: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C instanceof ${n.expected}, \u043F\u043E\u043B\u0443\u0447\u0435\u043D\u043E ${c}`:`\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u0432\u0432\u043E\u0434: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C ${o}, \u043F\u043E\u043B\u0443\u0447\u0435\u043D\u043E ${c}`}case"invalid_value":return n.values.length===1?`\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u0432\u0432\u043E\u0434: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C ${v(n.values[0])}`:`\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u0432\u0430\u0440\u0438\u0430\u043D\u0442: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C \u043E\u0434\u043D\u043E \u0438\u0437 ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);if(a){let c=Number(n.maximum),l=dg(c,a.unit.one,a.unit.few,a.unit.many);return`\u0421\u043B\u0438\u0448\u043A\u043E\u043C \u0431\u043E\u043B\u044C\u0448\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C, \u0447\u0442\u043E ${n.origin??"\u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435"} \u0431\u0443\u0434\u0435\u0442 \u0438\u043C\u0435\u0442\u044C ${o}${n.maximum.toString()} ${l}`}return`\u0421\u043B\u0438\u0448\u043A\u043E\u043C \u0431\u043E\u043B\u044C\u0448\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C, \u0447\u0442\u043E ${n.origin??"\u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435"} \u0431\u0443\u0434\u0435\u0442 ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);if(a){let c=Number(n.minimum),l=dg(c,a.unit.one,a.unit.few,a.unit.many);return`\u0421\u043B\u0438\u0448\u043A\u043E\u043C \u043C\u0430\u043B\u0435\u043D\u044C\u043A\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C, \u0447\u0442\u043E ${n.origin} \u0431\u0443\u0434\u0435\u0442 \u0438\u043C\u0435\u0442\u044C ${o}${n.minimum.toString()} ${l}`}return`\u0421\u043B\u0438\u0448\u043A\u043E\u043C \u043C\u0430\u043B\u0435\u043D\u044C\u043A\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C, \u0447\u0442\u043E ${n.origin} \u0431\u0443\u0434\u0435\u0442 ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u041D\u0435\u0432\u0435\u0440\u043D\u0430\u044F \u0441\u0442\u0440\u043E\u043A\u0430: \u0434\u043E\u043B\u0436\u043D\u0430 \u043D\u0430\u0447\u0438\u043D\u0430\u0442\u044C\u0441\u044F \u0441 "${o.prefix}"`:o.format==="ends_with"?`\u041D\u0435\u0432\u0435\u0440\u043D\u0430\u044F \u0441\u0442\u0440\u043E\u043A\u0430: \u0434\u043E\u043B\u0436\u043D\u0430 \u0437\u0430\u043A\u0430\u043D\u0447\u0438\u0432\u0430\u0442\u044C\u0441\u044F \u043D\u0430 "${o.suffix}"`:o.format==="includes"?`\u041D\u0435\u0432\u0435\u0440\u043D\u0430\u044F \u0441\u0442\u0440\u043E\u043A\u0430: \u0434\u043E\u043B\u0436\u043D\u0430 \u0441\u043E\u0434\u0435\u0440\u0436\u0430\u0442\u044C "${o.includes}"`:o.format==="regex"?`\u041D\u0435\u0432\u0435\u0440\u043D\u0430\u044F \u0441\u0442\u0440\u043E\u043A\u0430: \u0434\u043E\u043B\u0436\u043D\u0430 \u0441\u043E\u043E\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u043E\u0432\u0430\u0442\u044C \u0448\u0430\u0431\u043B\u043E\u043D\u0443 ${o.pattern}`:`\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 ${r[o.format]??n.format}`}case"not_multiple_of":return`\u041D\u0435\u0432\u0435\u0440\u043D\u043E\u0435 \u0447\u0438\u0441\u043B\u043E: \u0434\u043E\u043B\u0436\u043D\u043E \u0431\u044B\u0442\u044C \u043A\u0440\u0430\u0442\u043D\u044B\u043C ${n.divisor}`;case"unrecognized_keys":return`\u041D\u0435\u0440\u0430\u0441\u043F\u043E\u0437\u043D\u0430\u043D\u043D${n.keys.length>1?"\u044B\u0435":"\u044B\u0439"} \u043A\u043B\u044E\u0447${n.keys.length>1?"\u0438":""}: ${h(n.keys,", ")}`;case"invalid_key":return`\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u043A\u043B\u044E\u0447 \u0432 ${n.origin}`;case"invalid_union":return"\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0435 \u0432\u0445\u043E\u0434\u043D\u044B\u0435 \u0434\u0430\u043D\u043D\u044B\u0435";case"invalid_element":return`\u041D\u0435\u0432\u0435\u0440\u043D\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435 \u0432 ${n.origin}`;default:return"\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0435 \u0432\u0445\u043E\u0434\u043D\u044B\u0435 \u0434\u0430\u043D\u043D\u044B\u0435"}}};function pg(){return{localeError:Qx()}}var eI=()=>{let t={string:{unit:"znakov",verb:"imeti"},file:{unit:"bajtov",verb:"imeti"},array:{unit:"elementov",verb:"imeti"},set:{unit:"elementov",verb:"imeti"}};function e(n){return t[n]??null}let r={regex:"vnos",email:"e-po\u0161tni naslov",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 datum in \u010Das",date:"ISO datum",time:"ISO \u010Das",duration:"ISO trajanje",ipv4:"IPv4 naslov",ipv6:"IPv6 naslov",cidrv4:"obseg IPv4",cidrv6:"obseg IPv6",base64:"base64 kodiran niz",base64url:"base64url kodiran niz",json_string:"JSON niz",e164:"E.164 \u0161tevilka",jwt:"JWT",template_literal:"vnos"},i={nan:"NaN",number:"\u0161tevilo",array:"tabela"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=_(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`Neveljaven vnos: pri\u010Dakovano instanceof ${n.expected}, prejeto ${c}`:`Neveljaven vnos: pri\u010Dakovano ${o}, prejeto ${c}`}case"invalid_value":return n.values.length===1?`Neveljaven vnos: pri\u010Dakovano ${v(n.values[0])}`:`Neveljavna mo\u017Enost: pri\u010Dakovano eno izmed ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`Preveliko: pri\u010Dakovano, da bo ${n.origin??"vrednost"} imelo ${o}${n.maximum.toString()} ${a.unit??"elementov"}`:`Preveliko: pri\u010Dakovano, da bo ${n.origin??"vrednost"} ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`Premajhno: pri\u010Dakovano, da bo ${n.origin} imelo ${o}${n.minimum.toString()} ${a.unit}`:`Premajhno: pri\u010Dakovano, da bo ${n.origin} ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Neveljaven niz: mora se za\u010Deti z "${o.prefix}"`:o.format==="ends_with"?`Neveljaven niz: mora se kon\u010Dati z "${o.suffix}"`:o.format==="includes"?`Neveljaven niz: mora vsebovati "${o.includes}"`:o.format==="regex"?`Neveljaven niz: mora ustrezati vzorcu ${o.pattern}`:`Neveljaven ${r[o.format]??n.format}`}case"not_multiple_of":return`Neveljavno \u0161tevilo: mora biti ve\u010Dkratnik ${n.divisor}`;case"unrecognized_keys":return`Neprepoznan${n.keys.length>1?"i klju\u010Di":" klju\u010D"}: ${h(n.keys,", ")}`;case"invalid_key":return`Neveljaven klju\u010D v ${n.origin}`;case"invalid_union":return"Neveljaven vnos";case"invalid_element":return`Neveljavna vrednost v ${n.origin}`;default:return"Neveljaven vnos"}}};function mg(){return{localeError:eI()}}var tI=()=>{let t={string:{unit:"tecken",verb:"att ha"},file:{unit:"bytes",verb:"att ha"},array:{unit:"objekt",verb:"att inneh\xE5lla"},set:{unit:"objekt",verb:"att inneh\xE5lla"}};function e(n){return t[n]??null}let r={regex:"regulj\xE4rt uttryck",email:"e-postadress",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-datum och tid",date:"ISO-datum",time:"ISO-tid",duration:"ISO-varaktighet",ipv4:"IPv4-intervall",ipv6:"IPv6-intervall",cidrv4:"IPv4-spektrum",cidrv6:"IPv6-spektrum",base64:"base64-kodad str\xE4ng",base64url:"base64url-kodad str\xE4ng",json_string:"JSON-str\xE4ng",e164:"E.164-nummer",jwt:"JWT",template_literal:"mall-literal"},i={nan:"NaN",number:"antal",array:"lista"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=_(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`Ogiltig inmatning: f\xF6rv\xE4ntat instanceof ${n.expected}, fick ${c}`:`Ogiltig inmatning: f\xF6rv\xE4ntat ${o}, fick ${c}`}case"invalid_value":return n.values.length===1?`Ogiltig inmatning: f\xF6rv\xE4ntat ${v(n.values[0])}`:`Ogiltigt val: f\xF6rv\xE4ntade en av ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`F\xF6r stor(t): f\xF6rv\xE4ntade ${n.origin??"v\xE4rdet"} att ha ${o}${n.maximum.toString()} ${a.unit??"element"}`:`F\xF6r stor(t): f\xF6rv\xE4ntat ${n.origin??"v\xE4rdet"} att ha ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`F\xF6r lite(t): f\xF6rv\xE4ntade ${n.origin??"v\xE4rdet"} att ha ${o}${n.minimum.toString()} ${a.unit}`:`F\xF6r lite(t): f\xF6rv\xE4ntade ${n.origin??"v\xE4rdet"} att ha ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Ogiltig str\xE4ng: m\xE5ste b\xF6rja med "${o.prefix}"`:o.format==="ends_with"?`Ogiltig str\xE4ng: m\xE5ste sluta med "${o.suffix}"`:o.format==="includes"?`Ogiltig str\xE4ng: m\xE5ste inneh\xE5lla "${o.includes}"`:o.format==="regex"?`Ogiltig str\xE4ng: m\xE5ste matcha m\xF6nstret "${o.pattern}"`:`Ogiltig(t) ${r[o.format]??n.format}`}case"not_multiple_of":return`Ogiltigt tal: m\xE5ste vara en multipel av ${n.divisor}`;case"unrecognized_keys":return`${n.keys.length>1?"Ok\xE4nda nycklar":"Ok\xE4nd nyckel"}: ${h(n.keys,", ")}`;case"invalid_key":return`Ogiltig nyckel i ${n.origin??"v\xE4rdet"}`;case"invalid_union":return"Ogiltig input";case"invalid_element":return`Ogiltigt v\xE4rde i ${n.origin??"v\xE4rdet"}`;default:return"Ogiltig input"}}};function fg(){return{localeError:tI()}}var nI=()=>{let t={string:{unit:"\u0B8E\u0BB4\u0BC1\u0BA4\u0BCD\u0BA4\u0BC1\u0B95\u0BCD\u0B95\u0BB3\u0BCD",verb:"\u0B95\u0BCA\u0BA3\u0BCD\u0B9F\u0BBF\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD"},file:{unit:"\u0BAA\u0BC8\u0B9F\u0BCD\u0B9F\u0BC1\u0B95\u0BB3\u0BCD",verb:"\u0B95\u0BCA\u0BA3\u0BCD\u0B9F\u0BBF\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD"},array:{unit:"\u0B89\u0BB1\u0BC1\u0BAA\u0BCD\u0BAA\u0BC1\u0B95\u0BB3\u0BCD",verb:"\u0B95\u0BCA\u0BA3\u0BCD\u0B9F\u0BBF\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD"},set:{unit:"\u0B89\u0BB1\u0BC1\u0BAA\u0BCD\u0BAA\u0BC1\u0B95\u0BB3\u0BCD",verb:"\u0B95\u0BCA\u0BA3\u0BCD\u0B9F\u0BBF\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD"}};function e(n){return t[n]??null}let r={regex:"\u0B89\u0BB3\u0BCD\u0BB3\u0BC0\u0B9F\u0BC1",email:"\u0BAE\u0BBF\u0BA9\u0BCD\u0BA9\u0B9E\u0BCD\u0B9A\u0BB2\u0BCD \u0BAE\u0BC1\u0B95\u0BB5\u0BB0\u0BBF",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 \u0BA4\u0BC7\u0BA4\u0BBF \u0BA8\u0BC7\u0BB0\u0BAE\u0BCD",date:"ISO \u0BA4\u0BC7\u0BA4\u0BBF",time:"ISO \u0BA8\u0BC7\u0BB0\u0BAE\u0BCD",duration:"ISO \u0B95\u0BBE\u0BB2 \u0B85\u0BB3\u0BB5\u0BC1",ipv4:"IPv4 \u0BAE\u0BC1\u0B95\u0BB5\u0BB0\u0BBF",ipv6:"IPv6 \u0BAE\u0BC1\u0B95\u0BB5\u0BB0\u0BBF",cidrv4:"IPv4 \u0BB5\u0BB0\u0BAE\u0BCD\u0BAA\u0BC1",cidrv6:"IPv6 \u0BB5\u0BB0\u0BAE\u0BCD\u0BAA\u0BC1",base64:"base64-encoded \u0B9A\u0BB0\u0BAE\u0BCD",base64url:"base64url-encoded \u0B9A\u0BB0\u0BAE\u0BCD",json_string:"JSON \u0B9A\u0BB0\u0BAE\u0BCD",e164:"E.164 \u0B8E\u0BA3\u0BCD",jwt:"JWT",template_literal:"input"},i={nan:"NaN",number:"\u0B8E\u0BA3\u0BCD",array:"\u0B85\u0BA3\u0BBF",null:"\u0BB5\u0BC6\u0BB1\u0BC1\u0BAE\u0BC8"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=_(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B89\u0BB3\u0BCD\u0BB3\u0BC0\u0B9F\u0BC1: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 instanceof ${n.expected}, \u0BAA\u0BC6\u0BB1\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${c}`:`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B89\u0BB3\u0BCD\u0BB3\u0BC0\u0B9F\u0BC1: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${o}, \u0BAA\u0BC6\u0BB1\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${c}`}case"invalid_value":return n.values.length===1?`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B89\u0BB3\u0BCD\u0BB3\u0BC0\u0B9F\u0BC1: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${v(n.values[0])}`:`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0BB5\u0BBF\u0BB0\u0BC1\u0BAA\u0BCD\u0BAA\u0BAE\u0BCD: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${h(n.values,"|")} \u0B87\u0BB2\u0BCD \u0B92\u0BA9\u0BCD\u0BB1\u0BC1`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`\u0BAE\u0BBF\u0B95 \u0BAA\u0BC6\u0BB0\u0BBF\u0BAF\u0BA4\u0BC1: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${n.origin??"\u0BAE\u0BA4\u0BBF\u0BAA\u0BCD\u0BAA\u0BC1"} ${o}${n.maximum.toString()} ${a.unit??"\u0B89\u0BB1\u0BC1\u0BAA\u0BCD\u0BAA\u0BC1\u0B95\u0BB3\u0BCD"} \u0B86\u0B95 \u0B87\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`:`\u0BAE\u0BBF\u0B95 \u0BAA\u0BC6\u0BB0\u0BBF\u0BAF\u0BA4\u0BC1: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${n.origin??"\u0BAE\u0BA4\u0BBF\u0BAA\u0BCD\u0BAA\u0BC1"} ${o}${n.maximum.toString()} \u0B86\u0B95 \u0B87\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`\u0BAE\u0BBF\u0B95\u0B9A\u0BCD \u0B9A\u0BBF\u0BB1\u0BBF\u0BAF\u0BA4\u0BC1: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${n.origin} ${o}${n.minimum.toString()} ${a.unit} \u0B86\u0B95 \u0B87\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`:`\u0BAE\u0BBF\u0B95\u0B9A\u0BCD \u0B9A\u0BBF\u0BB1\u0BBF\u0BAF\u0BA4\u0BC1: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${n.origin} ${o}${n.minimum.toString()} \u0B86\u0B95 \u0B87\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B9A\u0BB0\u0BAE\u0BCD: "${o.prefix}" \u0B87\u0BB2\u0BCD \u0BA4\u0BCA\u0B9F\u0B99\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`:o.format==="ends_with"?`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B9A\u0BB0\u0BAE\u0BCD: "${o.suffix}" \u0B87\u0BB2\u0BCD \u0BAE\u0BC1\u0B9F\u0BBF\u0BB5\u0B9F\u0BC8\u0BAF \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`:o.format==="includes"?`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B9A\u0BB0\u0BAE\u0BCD: "${o.includes}" \u0B90 \u0B89\u0BB3\u0BCD\u0BB3\u0B9F\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`:o.format==="regex"?`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B9A\u0BB0\u0BAE\u0BCD: ${o.pattern} \u0BAE\u0BC1\u0BB1\u0BC8\u0BAA\u0BBE\u0B9F\u0BCD\u0B9F\u0BC1\u0B9F\u0BA9\u0BCD \u0BAA\u0BCA\u0BB0\u0BC1\u0BA8\u0BCD\u0BA4 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`:`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 ${r[o.format]??n.format}`}case"not_multiple_of":return`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B8E\u0BA3\u0BCD: ${n.divisor} \u0B87\u0BA9\u0BCD \u0BAA\u0BB2\u0BAE\u0BBE\u0B95 \u0B87\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`;case"unrecognized_keys":return`\u0B85\u0B9F\u0BC8\u0BAF\u0BBE\u0BB3\u0BAE\u0BCD \u0BA4\u0BC6\u0BB0\u0BBF\u0BAF\u0BBE\u0BA4 \u0BB5\u0BBF\u0B9A\u0BC8${n.keys.length>1?"\u0B95\u0BB3\u0BCD":""}: ${h(n.keys,", ")}`;case"invalid_key":return`${n.origin} \u0B87\u0BB2\u0BCD \u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0BB5\u0BBF\u0B9A\u0BC8`;case"invalid_union":return"\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B89\u0BB3\u0BCD\u0BB3\u0BC0\u0B9F\u0BC1";case"invalid_element":return`${n.origin} \u0B87\u0BB2\u0BCD \u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0BAE\u0BA4\u0BBF\u0BAA\u0BCD\u0BAA\u0BC1`;default:return"\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B89\u0BB3\u0BCD\u0BB3\u0BC0\u0B9F\u0BC1"}}};function gg(){return{localeError:nI()}}var rI=()=>{let t={string:{unit:"\u0E15\u0E31\u0E27\u0E2D\u0E31\u0E01\u0E29\u0E23",verb:"\u0E04\u0E27\u0E23\u0E21\u0E35"},file:{unit:"\u0E44\u0E1A\u0E15\u0E4C",verb:"\u0E04\u0E27\u0E23\u0E21\u0E35"},array:{unit:"\u0E23\u0E32\u0E22\u0E01\u0E32\u0E23",verb:"\u0E04\u0E27\u0E23\u0E21\u0E35"},set:{unit:"\u0E23\u0E32\u0E22\u0E01\u0E32\u0E23",verb:"\u0E04\u0E27\u0E23\u0E21\u0E35"}};function e(n){return t[n]??null}let r={regex:"\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E17\u0E35\u0E48\u0E1B\u0E49\u0E2D\u0E19",email:"\u0E17\u0E35\u0E48\u0E2D\u0E22\u0E39\u0E48\u0E2D\u0E35\u0E40\u0E21\u0E25",url:"URL",emoji:"\u0E2D\u0E34\u0E42\u0E21\u0E08\u0E34",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"\u0E27\u0E31\u0E19\u0E17\u0E35\u0E48\u0E40\u0E27\u0E25\u0E32\u0E41\u0E1A\u0E1A ISO",date:"\u0E27\u0E31\u0E19\u0E17\u0E35\u0E48\u0E41\u0E1A\u0E1A ISO",time:"\u0E40\u0E27\u0E25\u0E32\u0E41\u0E1A\u0E1A ISO",duration:"\u0E0A\u0E48\u0E27\u0E07\u0E40\u0E27\u0E25\u0E32\u0E41\u0E1A\u0E1A ISO",ipv4:"\u0E17\u0E35\u0E48\u0E2D\u0E22\u0E39\u0E48 IPv4",ipv6:"\u0E17\u0E35\u0E48\u0E2D\u0E22\u0E39\u0E48 IPv6",cidrv4:"\u0E0A\u0E48\u0E27\u0E07 IP \u0E41\u0E1A\u0E1A IPv4",cidrv6:"\u0E0A\u0E48\u0E27\u0E07 IP \u0E41\u0E1A\u0E1A IPv6",base64:"\u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21\u0E41\u0E1A\u0E1A Base64",base64url:"\u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21\u0E41\u0E1A\u0E1A Base64 \u0E2A\u0E33\u0E2B\u0E23\u0E31\u0E1A URL",json_string:"\u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21\u0E41\u0E1A\u0E1A JSON",e164:"\u0E40\u0E1A\u0E2D\u0E23\u0E4C\u0E42\u0E17\u0E23\u0E28\u0E31\u0E1E\u0E17\u0E4C\u0E23\u0E30\u0E2B\u0E27\u0E48\u0E32\u0E07\u0E1B\u0E23\u0E30\u0E40\u0E17\u0E28 (E.164)",jwt:"\u0E42\u0E17\u0E40\u0E04\u0E19 JWT",template_literal:"\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E17\u0E35\u0E48\u0E1B\u0E49\u0E2D\u0E19"},i={nan:"NaN",number:"\u0E15\u0E31\u0E27\u0E40\u0E25\u0E02",array:"\u0E2D\u0E32\u0E23\u0E4C\u0E40\u0E23\u0E22\u0E4C (Array)",null:"\u0E44\u0E21\u0E48\u0E21\u0E35\u0E04\u0E48\u0E32 (null)"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=_(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`\u0E1B\u0E23\u0E30\u0E40\u0E20\u0E17\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E04\u0E27\u0E23\u0E40\u0E1B\u0E47\u0E19 instanceof ${n.expected} \u0E41\u0E15\u0E48\u0E44\u0E14\u0E49\u0E23\u0E31\u0E1A ${c}`:`\u0E1B\u0E23\u0E30\u0E40\u0E20\u0E17\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E04\u0E27\u0E23\u0E40\u0E1B\u0E47\u0E19 ${o} \u0E41\u0E15\u0E48\u0E44\u0E14\u0E49\u0E23\u0E31\u0E1A ${c}`}case"invalid_value":return n.values.length===1?`\u0E04\u0E48\u0E32\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E04\u0E27\u0E23\u0E40\u0E1B\u0E47\u0E19 ${v(n.values[0])}`:`\u0E15\u0E31\u0E27\u0E40\u0E25\u0E37\u0E2D\u0E01\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E04\u0E27\u0E23\u0E40\u0E1B\u0E47\u0E19\u0E2B\u0E19\u0E36\u0E48\u0E07\u0E43\u0E19 ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"\u0E44\u0E21\u0E48\u0E40\u0E01\u0E34\u0E19":"\u0E19\u0E49\u0E2D\u0E22\u0E01\u0E27\u0E48\u0E32",a=e(n.origin);return a?`\u0E40\u0E01\u0E34\u0E19\u0E01\u0E33\u0E2B\u0E19\u0E14: ${n.origin??"\u0E04\u0E48\u0E32"} \u0E04\u0E27\u0E23\u0E21\u0E35${o} ${n.maximum.toString()} ${a.unit??"\u0E23\u0E32\u0E22\u0E01\u0E32\u0E23"}`:`\u0E40\u0E01\u0E34\u0E19\u0E01\u0E33\u0E2B\u0E19\u0E14: ${n.origin??"\u0E04\u0E48\u0E32"} \u0E04\u0E27\u0E23\u0E21\u0E35${o} ${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?"\u0E2D\u0E22\u0E48\u0E32\u0E07\u0E19\u0E49\u0E2D\u0E22":"\u0E21\u0E32\u0E01\u0E01\u0E27\u0E48\u0E32",a=e(n.origin);return a?`\u0E19\u0E49\u0E2D\u0E22\u0E01\u0E27\u0E48\u0E32\u0E01\u0E33\u0E2B\u0E19\u0E14: ${n.origin} \u0E04\u0E27\u0E23\u0E21\u0E35${o} ${n.minimum.toString()} ${a.unit}`:`\u0E19\u0E49\u0E2D\u0E22\u0E01\u0E27\u0E48\u0E32\u0E01\u0E33\u0E2B\u0E19\u0E14: ${n.origin} \u0E04\u0E27\u0E23\u0E21\u0E35${o} ${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u0E23\u0E39\u0E1B\u0E41\u0E1A\u0E1A\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21\u0E15\u0E49\u0E2D\u0E07\u0E02\u0E36\u0E49\u0E19\u0E15\u0E49\u0E19\u0E14\u0E49\u0E27\u0E22 "${o.prefix}"`:o.format==="ends_with"?`\u0E23\u0E39\u0E1B\u0E41\u0E1A\u0E1A\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21\u0E15\u0E49\u0E2D\u0E07\u0E25\u0E07\u0E17\u0E49\u0E32\u0E22\u0E14\u0E49\u0E27\u0E22 "${o.suffix}"`:o.format==="includes"?`\u0E23\u0E39\u0E1B\u0E41\u0E1A\u0E1A\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21\u0E15\u0E49\u0E2D\u0E07\u0E21\u0E35 "${o.includes}" \u0E2D\u0E22\u0E39\u0E48\u0E43\u0E19\u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21`:o.format==="regex"?`\u0E23\u0E39\u0E1B\u0E41\u0E1A\u0E1A\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E15\u0E49\u0E2D\u0E07\u0E15\u0E23\u0E07\u0E01\u0E31\u0E1A\u0E23\u0E39\u0E1B\u0E41\u0E1A\u0E1A\u0E17\u0E35\u0E48\u0E01\u0E33\u0E2B\u0E19\u0E14 ${o.pattern}`:`\u0E23\u0E39\u0E1B\u0E41\u0E1A\u0E1A\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: ${r[o.format]??n.format}`}case"not_multiple_of":return`\u0E15\u0E31\u0E27\u0E40\u0E25\u0E02\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E15\u0E49\u0E2D\u0E07\u0E40\u0E1B\u0E47\u0E19\u0E08\u0E33\u0E19\u0E27\u0E19\u0E17\u0E35\u0E48\u0E2B\u0E32\u0E23\u0E14\u0E49\u0E27\u0E22 ${n.divisor} \u0E44\u0E14\u0E49\u0E25\u0E07\u0E15\u0E31\u0E27`;case"unrecognized_keys":return`\u0E1E\u0E1A\u0E04\u0E35\u0E22\u0E4C\u0E17\u0E35\u0E48\u0E44\u0E21\u0E48\u0E23\u0E39\u0E49\u0E08\u0E31\u0E01: ${h(n.keys,", ")}`;case"invalid_key":return`\u0E04\u0E35\u0E22\u0E4C\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07\u0E43\u0E19 ${n.origin}`;case"invalid_union":return"\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E44\u0E21\u0E48\u0E15\u0E23\u0E07\u0E01\u0E31\u0E1A\u0E23\u0E39\u0E1B\u0E41\u0E1A\u0E1A\u0E22\u0E39\u0E40\u0E19\u0E35\u0E22\u0E19\u0E17\u0E35\u0E48\u0E01\u0E33\u0E2B\u0E19\u0E14\u0E44\u0E27\u0E49";case"invalid_element":return`\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07\u0E43\u0E19 ${n.origin}`;default:return"\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07"}}};function hg(){return{localeError:rI()}}var iI=()=>{let t={string:{unit:"karakter",verb:"olmal\u0131"},file:{unit:"bayt",verb:"olmal\u0131"},array:{unit:"\xF6\u011Fe",verb:"olmal\u0131"},set:{unit:"\xF6\u011Fe",verb:"olmal\u0131"}};function e(n){return t[n]??null}let r={regex:"girdi",email:"e-posta adresi",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 tarih ve saat",date:"ISO tarih",time:"ISO saat",duration:"ISO s\xFCre",ipv4:"IPv4 adresi",ipv6:"IPv6 adresi",cidrv4:"IPv4 aral\u0131\u011F\u0131",cidrv6:"IPv6 aral\u0131\u011F\u0131",base64:"base64 ile \u015Fifrelenmi\u015F metin",base64url:"base64url ile \u015Fifrelenmi\u015F metin",json_string:"JSON dizesi",e164:"E.164 say\u0131s\u0131",jwt:"JWT",template_literal:"\u015Eablon dizesi"},i={nan:"NaN"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=_(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`Ge\xE7ersiz de\u011Fer: beklenen instanceof ${n.expected}, al\u0131nan ${c}`:`Ge\xE7ersiz de\u011Fer: beklenen ${o}, al\u0131nan ${c}`}case"invalid_value":return n.values.length===1?`Ge\xE7ersiz de\u011Fer: beklenen ${v(n.values[0])}`:`Ge\xE7ersiz se\xE7enek: a\u015Fa\u011F\u0131dakilerden biri olmal\u0131: ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`\xC7ok b\xFCy\xFCk: beklenen ${n.origin??"de\u011Fer"} ${o}${n.maximum.toString()} ${a.unit??"\xF6\u011Fe"}`:`\xC7ok b\xFCy\xFCk: beklenen ${n.origin??"de\u011Fer"} ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`\xC7ok k\xFC\xE7\xFCk: beklenen ${n.origin} ${o}${n.minimum.toString()} ${a.unit}`:`\xC7ok k\xFC\xE7\xFCk: beklenen ${n.origin} ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Ge\xE7ersiz metin: "${o.prefix}" ile ba\u015Flamal\u0131`:o.format==="ends_with"?`Ge\xE7ersiz metin: "${o.suffix}" ile bitmeli`:o.format==="includes"?`Ge\xE7ersiz metin: "${o.includes}" i\xE7ermeli`:o.format==="regex"?`Ge\xE7ersiz metin: ${o.pattern} desenine uymal\u0131`:`Ge\xE7ersiz ${r[o.format]??n.format}`}case"not_multiple_of":return`Ge\xE7ersiz say\u0131: ${n.divisor} ile tam b\xF6l\xFCnebilmeli`;case"unrecognized_keys":return`Tan\u0131nmayan anahtar${n.keys.length>1?"lar":""}: ${h(n.keys,", ")}`;case"invalid_key":return`${n.origin} i\xE7inde ge\xE7ersiz anahtar`;case"invalid_union":return"Ge\xE7ersiz de\u011Fer";case"invalid_element":return`${n.origin} i\xE7inde ge\xE7ersiz de\u011Fer`;default:return"Ge\xE7ersiz de\u011Fer"}}};function bg(){return{localeError:iI()}}var oI=()=>{let t={string:{unit:"\u0441\u0438\u043C\u0432\u043E\u043B\u0456\u0432",verb:"\u043C\u0430\u0442\u0438\u043C\u0435"},file:{unit:"\u0431\u0430\u0439\u0442\u0456\u0432",verb:"\u043C\u0430\u0442\u0438\u043C\u0435"},array:{unit:"\u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0456\u0432",verb:"\u043C\u0430\u0442\u0438\u043C\u0435"},set:{unit:"\u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0456\u0432",verb:"\u043C\u0430\u0442\u0438\u043C\u0435"}};function e(n){return t[n]??null}let r={regex:"\u0432\u0445\u0456\u0434\u043D\u0456 \u0434\u0430\u043D\u0456",email:"\u0430\u0434\u0440\u0435\u0441\u0430 \u0435\u043B\u0435\u043A\u0442\u0440\u043E\u043D\u043D\u043E\u0457 \u043F\u043E\u0448\u0442\u0438",url:"URL",emoji:"\u0435\u043C\u043E\u0434\u0437\u0456",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"\u0434\u0430\u0442\u0430 \u0442\u0430 \u0447\u0430\u0441 ISO",date:"\u0434\u0430\u0442\u0430 ISO",time:"\u0447\u0430\u0441 ISO",duration:"\u0442\u0440\u0438\u0432\u0430\u043B\u0456\u0441\u0442\u044C ISO",ipv4:"\u0430\u0434\u0440\u0435\u0441\u0430 IPv4",ipv6:"\u0430\u0434\u0440\u0435\u0441\u0430 IPv6",cidrv4:"\u0434\u0456\u0430\u043F\u0430\u0437\u043E\u043D IPv4",cidrv6:"\u0434\u0456\u0430\u043F\u0430\u0437\u043E\u043D IPv6",base64:"\u0440\u044F\u0434\u043E\u043A \u0443 \u043A\u043E\u0434\u0443\u0432\u0430\u043D\u043D\u0456 base64",base64url:"\u0440\u044F\u0434\u043E\u043A \u0443 \u043A\u043E\u0434\u0443\u0432\u0430\u043D\u043D\u0456 base64url",json_string:"\u0440\u044F\u0434\u043E\u043A JSON",e164:"\u043D\u043E\u043C\u0435\u0440 E.164",jwt:"JWT",template_literal:"\u0432\u0445\u0456\u0434\u043D\u0456 \u0434\u0430\u043D\u0456"},i={nan:"NaN",number:"\u0447\u0438\u0441\u043B\u043E",array:"\u043C\u0430\u0441\u0438\u0432"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=_(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0456 \u0432\u0445\u0456\u0434\u043D\u0456 \u0434\u0430\u043D\u0456: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F instanceof ${n.expected}, \u043E\u0442\u0440\u0438\u043C\u0430\u043D\u043E ${c}`:`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0456 \u0432\u0445\u0456\u0434\u043D\u0456 \u0434\u0430\u043D\u0456: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F ${o}, \u043E\u0442\u0440\u0438\u043C\u0430\u043D\u043E ${c}`}case"invalid_value":return n.values.length===1?`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0456 \u0432\u0445\u0456\u0434\u043D\u0456 \u0434\u0430\u043D\u0456: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F ${v(n.values[0])}`:`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0430 \u043E\u043F\u0446\u0456\u044F: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F \u043E\u0434\u043D\u0435 \u0437 ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`\u0417\u0430\u043D\u0430\u0434\u0442\u043E \u0432\u0435\u043B\u0438\u043A\u0435: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F, \u0449\u043E ${n.origin??"\u0437\u043D\u0430\u0447\u0435\u043D\u043D\u044F"} ${a.verb} ${o}${n.maximum.toString()} ${a.unit??"\u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0456\u0432"}`:`\u0417\u0430\u043D\u0430\u0434\u0442\u043E \u0432\u0435\u043B\u0438\u043A\u0435: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F, \u0449\u043E ${n.origin??"\u0437\u043D\u0430\u0447\u0435\u043D\u043D\u044F"} \u0431\u0443\u0434\u0435 ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`\u0417\u0430\u043D\u0430\u0434\u0442\u043E \u043C\u0430\u043B\u0435: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F, \u0449\u043E ${n.origin} ${a.verb} ${o}${n.minimum.toString()} ${a.unit}`:`\u0417\u0430\u043D\u0430\u0434\u0442\u043E \u043C\u0430\u043B\u0435: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F, \u0449\u043E ${n.origin} \u0431\u0443\u0434\u0435 ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0438\u0439 \u0440\u044F\u0434\u043E\u043A: \u043F\u043E\u0432\u0438\u043D\u0435\u043D \u043F\u043E\u0447\u0438\u043D\u0430\u0442\u0438\u0441\u044F \u0437 "${o.prefix}"`:o.format==="ends_with"?`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0438\u0439 \u0440\u044F\u0434\u043E\u043A: \u043F\u043E\u0432\u0438\u043D\u0435\u043D \u0437\u0430\u043A\u0456\u043D\u0447\u0443\u0432\u0430\u0442\u0438\u0441\u044F \u043D\u0430 "${o.suffix}"`:o.format==="includes"?`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0438\u0439 \u0440\u044F\u0434\u043E\u043A: \u043F\u043E\u0432\u0438\u043D\u0435\u043D \u043C\u0456\u0441\u0442\u0438\u0442\u0438 "${o.includes}"`:o.format==="regex"?`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0438\u0439 \u0440\u044F\u0434\u043E\u043A: \u043F\u043E\u0432\u0438\u043D\u0435\u043D \u0432\u0456\u0434\u043F\u043E\u0432\u0456\u0434\u0430\u0442\u0438 \u0448\u0430\u0431\u043B\u043E\u043D\u0443 ${o.pattern}`:`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0438\u0439 ${r[o.format]??n.format}`}case"not_multiple_of":return`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0435 \u0447\u0438\u0441\u043B\u043E: \u043F\u043E\u0432\u0438\u043D\u043D\u043E \u0431\u0443\u0442\u0438 \u043A\u0440\u0430\u0442\u043D\u0438\u043C ${n.divisor}`;case"unrecognized_keys":return`\u041D\u0435\u0440\u043E\u0437\u043F\u0456\u0437\u043D\u0430\u043D\u0438\u0439 \u043A\u043B\u044E\u0447${n.keys.length>1?"\u0456":""}: ${h(n.keys,", ")}`;case"invalid_key":return`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0438\u0439 \u043A\u043B\u044E\u0447 \u0443 ${n.origin}`;case"invalid_union":return"\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0456 \u0432\u0445\u0456\u0434\u043D\u0456 \u0434\u0430\u043D\u0456";case"invalid_element":return`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u043D\u044F \u0443 ${n.origin}`;default:return"\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0456 \u0432\u0445\u0456\u0434\u043D\u0456 \u0434\u0430\u043D\u0456"}}};function ui(){return{localeError:oI()}}function vg(){return ui()}var sI=()=>{let t={string:{unit:"\u062D\u0631\u0648\u0641",verb:"\u06C1\u0648\u0646\u0627"},file:{unit:"\u0628\u0627\u0626\u0679\u0633",verb:"\u06C1\u0648\u0646\u0627"},array:{unit:"\u0622\u0626\u0679\u0645\u0632",verb:"\u06C1\u0648\u0646\u0627"},set:{unit:"\u0622\u0626\u0679\u0645\u0632",verb:"\u06C1\u0648\u0646\u0627"}};function e(n){return t[n]??null}let r={regex:"\u0627\u0646 \u067E\u0679",email:"\u0627\u06CC \u0645\u06CC\u0644 \u0627\u06CC\u0688\u0631\u06CC\u0633",url:"\u06CC\u0648 \u0622\u0631 \u0627\u06CC\u0644",emoji:"\u0627\u06CC\u0645\u0648\u062C\u06CC",uuid:"\u06CC\u0648 \u06CC\u0648 \u0622\u0626\u06CC \u0688\u06CC",uuidv4:"\u06CC\u0648 \u06CC\u0648 \u0622\u0626\u06CC \u0688\u06CC \u0648\u06CC 4",uuidv6:"\u06CC\u0648 \u06CC\u0648 \u0622\u0626\u06CC \u0688\u06CC \u0648\u06CC 6",nanoid:"\u0646\u06CC\u0646\u0648 \u0622\u0626\u06CC \u0688\u06CC",guid:"\u062C\u06CC \u06CC\u0648 \u0622\u0626\u06CC \u0688\u06CC",cuid:"\u0633\u06CC \u06CC\u0648 \u0622\u0626\u06CC \u0688\u06CC",cuid2:"\u0633\u06CC \u06CC\u0648 \u0622\u0626\u06CC \u0688\u06CC 2",ulid:"\u06CC\u0648 \u0627\u06CC\u0644 \u0622\u0626\u06CC \u0688\u06CC",xid:"\u0627\u06CC\u06A9\u0633 \u0622\u0626\u06CC \u0688\u06CC",ksuid:"\u06A9\u06D2 \u0627\u06CC\u0633 \u06CC\u0648 \u0622\u0626\u06CC \u0688\u06CC",datetime:"\u0622\u0626\u06CC \u0627\u06CC\u0633 \u0627\u0648 \u0688\u06CC\u0679 \u0679\u0627\u0626\u0645",date:"\u0622\u0626\u06CC \u0627\u06CC\u0633 \u0627\u0648 \u062A\u0627\u0631\u06CC\u062E",time:"\u0622\u0626\u06CC \u0627\u06CC\u0633 \u0627\u0648 \u0648\u0642\u062A",duration:"\u0622\u0626\u06CC \u0627\u06CC\u0633 \u0627\u0648 \u0645\u062F\u062A",ipv4:"\u0622\u0626\u06CC \u067E\u06CC \u0648\u06CC 4 \u0627\u06CC\u0688\u0631\u06CC\u0633",ipv6:"\u0622\u0626\u06CC \u067E\u06CC \u0648\u06CC 6 \u0627\u06CC\u0688\u0631\u06CC\u0633",cidrv4:"\u0622\u0626\u06CC \u067E\u06CC \u0648\u06CC 4 \u0631\u06CC\u0646\u062C",cidrv6:"\u0622\u0626\u06CC \u067E\u06CC \u0648\u06CC 6 \u0631\u06CC\u0646\u062C",base64:"\u0628\u06CC\u0633 64 \u0627\u0646 \u06A9\u0648\u0688\u0688 \u0633\u0679\u0631\u0646\u06AF",base64url:"\u0628\u06CC\u0633 64 \u06CC\u0648 \u0622\u0631 \u0627\u06CC\u0644 \u0627\u0646 \u06A9\u0648\u0688\u0688 \u0633\u0679\u0631\u0646\u06AF",json_string:"\u062C\u06D2 \u0627\u06CC\u0633 \u0627\u0648 \u0627\u06CC\u0646 \u0633\u0679\u0631\u0646\u06AF",e164:"\u0627\u06CC 164 \u0646\u0645\u0628\u0631",jwt:"\u062C\u06D2 \u0688\u0628\u0644\u06CC\u0648 \u0679\u06CC",template_literal:"\u0627\u0646 \u067E\u0679"},i={nan:"NaN",number:"\u0646\u0645\u0628\u0631",array:"\u0622\u0631\u06D2",null:"\u0646\u0644"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=_(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`\u063A\u0644\u0637 \u0627\u0646 \u067E\u0679: instanceof ${n.expected} \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u0627\u060C ${c} \u0645\u0648\u0635\u0648\u0644 \u06C1\u0648\u0627`:`\u063A\u0644\u0637 \u0627\u0646 \u067E\u0679: ${o} \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u0627\u060C ${c} \u0645\u0648\u0635\u0648\u0644 \u06C1\u0648\u0627`}case"invalid_value":return n.values.length===1?`\u063A\u0644\u0637 \u0627\u0646 \u067E\u0679: ${v(n.values[0])} \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u0627`:`\u063A\u0644\u0637 \u0622\u067E\u0634\u0646: ${h(n.values,"|")} \u0645\u06CC\u06BA \u0633\u06D2 \u0627\u06CC\u06A9 \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u0627`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`\u0628\u06C1\u062A \u0628\u0691\u0627: ${n.origin??"\u0648\u06CC\u0644\u06CC\u0648"} \u06A9\u06D2 ${o}${n.maximum.toString()} ${a.unit??"\u0639\u0646\u0627\u0635\u0631"} \u06C1\u0648\u0646\u06D2 \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u06D2`:`\u0628\u06C1\u062A \u0628\u0691\u0627: ${n.origin??"\u0648\u06CC\u0644\u06CC\u0648"} \u06A9\u0627 ${o}${n.maximum.toString()} \u06C1\u0648\u0646\u0627 \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u0627`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`\u0628\u06C1\u062A \u0686\u06BE\u0648\u0679\u0627: ${n.origin} \u06A9\u06D2 ${o}${n.minimum.toString()} ${a.unit} \u06C1\u0648\u0646\u06D2 \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u06D2`:`\u0628\u06C1\u062A \u0686\u06BE\u0648\u0679\u0627: ${n.origin} \u06A9\u0627 ${o}${n.minimum.toString()} \u06C1\u0648\u0646\u0627 \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u0627`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u063A\u0644\u0637 \u0633\u0679\u0631\u0646\u06AF: "${o.prefix}" \u0633\u06D2 \u0634\u0631\u0648\u0639 \u06C1\u0648\u0646\u0627 \u0686\u0627\u06C1\u06CC\u06D2`:o.format==="ends_with"?`\u063A\u0644\u0637 \u0633\u0679\u0631\u0646\u06AF: "${o.suffix}" \u067E\u0631 \u062E\u062A\u0645 \u06C1\u0648\u0646\u0627 \u0686\u0627\u06C1\u06CC\u06D2`:o.format==="includes"?`\u063A\u0644\u0637 \u0633\u0679\u0631\u0646\u06AF: "${o.includes}" \u0634\u0627\u0645\u0644 \u06C1\u0648\u0646\u0627 \u0686\u0627\u06C1\u06CC\u06D2`:o.format==="regex"?`\u063A\u0644\u0637 \u0633\u0679\u0631\u0646\u06AF: \u067E\u06CC\u0679\u0631\u0646 ${o.pattern} \u0633\u06D2 \u0645\u06CC\u0686 \u06C1\u0648\u0646\u0627 \u0686\u0627\u06C1\u06CC\u06D2`:`\u063A\u0644\u0637 ${r[o.format]??n.format}`}case"not_multiple_of":return`\u063A\u0644\u0637 \u0646\u0645\u0628\u0631: ${n.divisor} \u06A9\u0627 \u0645\u0636\u0627\u0639\u0641 \u06C1\u0648\u0646\u0627 \u0686\u0627\u06C1\u06CC\u06D2`;case"unrecognized_keys":return`\u063A\u06CC\u0631 \u062A\u0633\u0644\u06CC\u0645 \u0634\u062F\u06C1 \u06A9\u06CC${n.keys.length>1?"\u0632":""}: ${h(n.keys,"\u060C ")}`;case"invalid_key":return`${n.origin} \u0645\u06CC\u06BA \u063A\u0644\u0637 \u06A9\u06CC`;case"invalid_union":return"\u063A\u0644\u0637 \u0627\u0646 \u067E\u0679";case"invalid_element":return`${n.origin} \u0645\u06CC\u06BA \u063A\u0644\u0637 \u0648\u06CC\u0644\u06CC\u0648`;default:return"\u063A\u0644\u0637 \u0627\u0646 \u067E\u0679"}}};function _g(){return{localeError:sI()}}var aI=()=>{let t={string:{unit:"belgi",verb:"bo\u2018lishi kerak"},file:{unit:"bayt",verb:"bo\u2018lishi kerak"},array:{unit:"element",verb:"bo\u2018lishi kerak"},set:{unit:"element",verb:"bo\u2018lishi kerak"},map:{unit:"yozuv",verb:"bo\u2018lishi kerak"}};function e(n){return t[n]??null}let r={regex:"kirish",email:"elektron pochta manzili",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 sana va vaqti",date:"ISO sana",time:"ISO vaqt",duration:"ISO davomiylik",ipv4:"IPv4 manzil",ipv6:"IPv6 manzil",mac:"MAC manzil",cidrv4:"IPv4 diapazon",cidrv6:"IPv6 diapazon",base64:"base64 kodlangan satr",base64url:"base64url kodlangan satr",json_string:"JSON satr",e164:"E.164 raqam",jwt:"JWT",template_literal:"kirish"},i={nan:"NaN",number:"raqam",array:"massiv"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=_(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`Noto\u2018g\u2018ri kirish: kutilgan instanceof ${n.expected}, qabul qilingan ${c}`:`Noto\u2018g\u2018ri kirish: kutilgan ${o}, qabul qilingan ${c}`}case"invalid_value":return n.values.length===1?`Noto\u2018g\u2018ri kirish: kutilgan ${v(n.values[0])}`:`Noto\u2018g\u2018ri variant: quyidagilardan biri kutilgan ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`Juda katta: kutilgan ${n.origin??"qiymat"} ${o}${n.maximum.toString()} ${a.unit} ${a.verb}`:`Juda katta: kutilgan ${n.origin??"qiymat"} ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`Juda kichik: kutilgan ${n.origin} ${o}${n.minimum.toString()} ${a.unit} ${a.verb}`:`Juda kichik: kutilgan ${n.origin} ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Noto\u2018g\u2018ri satr: "${o.prefix}" bilan boshlanishi kerak`:o.format==="ends_with"?`Noto\u2018g\u2018ri satr: "${o.suffix}" bilan tugashi kerak`:o.format==="includes"?`Noto\u2018g\u2018ri satr: "${o.includes}" ni o\u2018z ichiga olishi kerak`:o.format==="regex"?`Noto\u2018g\u2018ri satr: ${o.pattern} shabloniga mos kelishi kerak`:`Noto\u2018g\u2018ri ${r[o.format]??n.format}`}case"not_multiple_of":return`Noto\u2018g\u2018ri raqam: ${n.divisor} ning karralisi bo\u2018lishi kerak`;case"unrecognized_keys":return`Noma\u2019lum kalit${n.keys.length>1?"lar":""}: ${h(n.keys,", ")}`;case"invalid_key":return`${n.origin} dagi kalit noto\u2018g\u2018ri`;case"invalid_union":return"Noto\u2018g\u2018ri kirish";case"invalid_element":return`${n.origin} da noto\u2018g\u2018ri qiymat`;default:return"Noto\u2018g\u2018ri kirish"}}};function yg(){return{localeError:aI()}}var cI=()=>{let t={string:{unit:"k\xFD t\u1EF1",verb:"c\xF3"},file:{unit:"byte",verb:"c\xF3"},array:{unit:"ph\u1EA7n t\u1EED",verb:"c\xF3"},set:{unit:"ph\u1EA7n t\u1EED",verb:"c\xF3"}};function e(n){return t[n]??null}let r={regex:"\u0111\u1EA7u v\xE0o",email:"\u0111\u1ECBa ch\u1EC9 email",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:"ng\xE0y gi\u1EDD ISO",date:"ng\xE0y ISO",time:"gi\u1EDD ISO",duration:"kho\u1EA3ng th\u1EDDi gian ISO",ipv4:"\u0111\u1ECBa ch\u1EC9 IPv4",ipv6:"\u0111\u1ECBa ch\u1EC9 IPv6",cidrv4:"d\u1EA3i IPv4",cidrv6:"d\u1EA3i IPv6",base64:"chu\u1ED7i m\xE3 h\xF3a base64",base64url:"chu\u1ED7i m\xE3 h\xF3a base64url",json_string:"chu\u1ED7i JSON",e164:"s\u1ED1 E.164",jwt:"JWT",template_literal:"\u0111\u1EA7u v\xE0o"},i={nan:"NaN",number:"s\u1ED1",array:"m\u1EA3ng"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=_(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`\u0110\u1EA7u v\xE0o kh\xF4ng h\u1EE3p l\u1EC7: mong \u0111\u1EE3i instanceof ${n.expected}, nh\u1EADn \u0111\u01B0\u1EE3c ${c}`:`\u0110\u1EA7u v\xE0o kh\xF4ng h\u1EE3p l\u1EC7: mong \u0111\u1EE3i ${o}, nh\u1EADn \u0111\u01B0\u1EE3c ${c}`}case"invalid_value":return n.values.length===1?`\u0110\u1EA7u v\xE0o kh\xF4ng h\u1EE3p l\u1EC7: mong \u0111\u1EE3i ${v(n.values[0])}`:`T\xF9y ch\u1ECDn kh\xF4ng h\u1EE3p l\u1EC7: mong \u0111\u1EE3i m\u1ED9t trong c\xE1c gi\xE1 tr\u1ECB ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`Qu\xE1 l\u1EDBn: mong \u0111\u1EE3i ${n.origin??"gi\xE1 tr\u1ECB"} ${a.verb} ${o}${n.maximum.toString()} ${a.unit??"ph\u1EA7n t\u1EED"}`:`Qu\xE1 l\u1EDBn: mong \u0111\u1EE3i ${n.origin??"gi\xE1 tr\u1ECB"} ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`Qu\xE1 nh\u1ECF: mong \u0111\u1EE3i ${n.origin} ${a.verb} ${o}${n.minimum.toString()} ${a.unit}`:`Qu\xE1 nh\u1ECF: mong \u0111\u1EE3i ${n.origin} ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Chu\u1ED7i kh\xF4ng h\u1EE3p l\u1EC7: ph\u1EA3i b\u1EAFt \u0111\u1EA7u b\u1EB1ng "${o.prefix}"`:o.format==="ends_with"?`Chu\u1ED7i kh\xF4ng h\u1EE3p l\u1EC7: ph\u1EA3i k\u1EBFt th\xFAc b\u1EB1ng "${o.suffix}"`:o.format==="includes"?`Chu\u1ED7i kh\xF4ng h\u1EE3p l\u1EC7: ph\u1EA3i bao g\u1ED3m "${o.includes}"`:o.format==="regex"?`Chu\u1ED7i kh\xF4ng h\u1EE3p l\u1EC7: ph\u1EA3i kh\u1EDBp v\u1EDBi m\u1EABu ${o.pattern}`:`${r[o.format]??n.format} kh\xF4ng h\u1EE3p l\u1EC7`}case"not_multiple_of":return`S\u1ED1 kh\xF4ng h\u1EE3p l\u1EC7: ph\u1EA3i l\xE0 b\u1ED9i s\u1ED1 c\u1EE7a ${n.divisor}`;case"unrecognized_keys":return`Kh\xF3a kh\xF4ng \u0111\u01B0\u1EE3c nh\u1EADn d\u1EA1ng: ${h(n.keys,", ")}`;case"invalid_key":return`Kh\xF3a kh\xF4ng h\u1EE3p l\u1EC7 trong ${n.origin}`;case"invalid_union":return"\u0110\u1EA7u v\xE0o kh\xF4ng h\u1EE3p l\u1EC7";case"invalid_element":return`Gi\xE1 tr\u1ECB kh\xF4ng h\u1EE3p l\u1EC7 trong ${n.origin}`;default:return"\u0110\u1EA7u v\xE0o kh\xF4ng h\u1EE3p l\u1EC7"}}};function kg(){return{localeError:cI()}}var lI=()=>{let t={string:{unit:"\u5B57\u7B26",verb:"\u5305\u542B"},file:{unit:"\u5B57\u8282",verb:"\u5305\u542B"},array:{unit:"\u9879",verb:"\u5305\u542B"},set:{unit:"\u9879",verb:"\u5305\u542B"}};function e(n){return t[n]??null}let r={regex:"\u8F93\u5165",email:"\u7535\u5B50\u90AE\u4EF6",url:"URL",emoji:"\u8868\u60C5\u7B26\u53F7",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO\u65E5\u671F\u65F6\u95F4",date:"ISO\u65E5\u671F",time:"ISO\u65F6\u95F4",duration:"ISO\u65F6\u957F",ipv4:"IPv4\u5730\u5740",ipv6:"IPv6\u5730\u5740",cidrv4:"IPv4\u7F51\u6BB5",cidrv6:"IPv6\u7F51\u6BB5",base64:"base64\u7F16\u7801\u5B57\u7B26\u4E32",base64url:"base64url\u7F16\u7801\u5B57\u7B26\u4E32",json_string:"JSON\u5B57\u7B26\u4E32",e164:"E.164\u53F7\u7801",jwt:"JWT",template_literal:"\u8F93\u5165"},i={nan:"NaN",number:"\u6570\u5B57",array:"\u6570\u7EC4",null:"\u7A7A\u503C(null)"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=_(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`\u65E0\u6548\u8F93\u5165\uFF1A\u671F\u671B instanceof ${n.expected}\uFF0C\u5B9E\u9645\u63A5\u6536 ${c}`:`\u65E0\u6548\u8F93\u5165\uFF1A\u671F\u671B ${o}\uFF0C\u5B9E\u9645\u63A5\u6536 ${c}`}case"invalid_value":return n.values.length===1?`\u65E0\u6548\u8F93\u5165\uFF1A\u671F\u671B ${v(n.values[0])}`:`\u65E0\u6548\u9009\u9879\uFF1A\u671F\u671B\u4EE5\u4E0B\u4E4B\u4E00 ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`\u6570\u503C\u8FC7\u5927\uFF1A\u671F\u671B ${n.origin??"\u503C"} ${o}${n.maximum.toString()} ${a.unit??"\u4E2A\u5143\u7D20"}`:`\u6570\u503C\u8FC7\u5927\uFF1A\u671F\u671B ${n.origin??"\u503C"} ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`\u6570\u503C\u8FC7\u5C0F\uFF1A\u671F\u671B ${n.origin} ${o}${n.minimum.toString()} ${a.unit}`:`\u6570\u503C\u8FC7\u5C0F\uFF1A\u671F\u671B ${n.origin} ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u65E0\u6548\u5B57\u7B26\u4E32\uFF1A\u5FC5\u987B\u4EE5 "${o.prefix}" \u5F00\u5934`:o.format==="ends_with"?`\u65E0\u6548\u5B57\u7B26\u4E32\uFF1A\u5FC5\u987B\u4EE5 "${o.suffix}" \u7ED3\u5C3E`:o.format==="includes"?`\u65E0\u6548\u5B57\u7B26\u4E32\uFF1A\u5FC5\u987B\u5305\u542B "${o.includes}"`:o.format==="regex"?`\u65E0\u6548\u5B57\u7B26\u4E32\uFF1A\u5FC5\u987B\u6EE1\u8DB3\u6B63\u5219\u8868\u8FBE\u5F0F ${o.pattern}`:`\u65E0\u6548${r[o.format]??n.format}`}case"not_multiple_of":return`\u65E0\u6548\u6570\u5B57\uFF1A\u5FC5\u987B\u662F ${n.divisor} \u7684\u500D\u6570`;case"unrecognized_keys":return`\u51FA\u73B0\u672A\u77E5\u7684\u952E(key): ${h(n.keys,", ")}`;case"invalid_key":return`${n.origin} \u4E2D\u7684\u952E(key)\u65E0\u6548`;case"invalid_union":return"\u65E0\u6548\u8F93\u5165";case"invalid_element":return`${n.origin} \u4E2D\u5305\u542B\u65E0\u6548\u503C(value)`;default:return"\u65E0\u6548\u8F93\u5165"}}};function xg(){return{localeError:lI()}}var uI=()=>{let t={string:{unit:"\u5B57\u5143",verb:"\u64C1\u6709"},file:{unit:"\u4F4D\u5143\u7D44",verb:"\u64C1\u6709"},array:{unit:"\u9805\u76EE",verb:"\u64C1\u6709"},set:{unit:"\u9805\u76EE",verb:"\u64C1\u6709"}};function e(n){return t[n]??null}let r={regex:"\u8F38\u5165",email:"\u90F5\u4EF6\u5730\u5740",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 \u65E5\u671F\u6642\u9593",date:"ISO \u65E5\u671F",time:"ISO \u6642\u9593",duration:"ISO \u671F\u9593",ipv4:"IPv4 \u4F4D\u5740",ipv6:"IPv6 \u4F4D\u5740",cidrv4:"IPv4 \u7BC4\u570D",cidrv6:"IPv6 \u7BC4\u570D",base64:"base64 \u7DE8\u78BC\u5B57\u4E32",base64url:"base64url \u7DE8\u78BC\u5B57\u4E32",json_string:"JSON \u5B57\u4E32",e164:"E.164 \u6578\u503C",jwt:"JWT",template_literal:"\u8F38\u5165"},i={nan:"NaN"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=_(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`\u7121\u6548\u7684\u8F38\u5165\u503C\uFF1A\u9810\u671F\u70BA instanceof ${n.expected}\uFF0C\u4F46\u6536\u5230 ${c}`:`\u7121\u6548\u7684\u8F38\u5165\u503C\uFF1A\u9810\u671F\u70BA ${o}\uFF0C\u4F46\u6536\u5230 ${c}`}case"invalid_value":return n.values.length===1?`\u7121\u6548\u7684\u8F38\u5165\u503C\uFF1A\u9810\u671F\u70BA ${v(n.values[0])}`:`\u7121\u6548\u7684\u9078\u9805\uFF1A\u9810\u671F\u70BA\u4EE5\u4E0B\u5176\u4E2D\u4E4B\u4E00 ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`\u6578\u503C\u904E\u5927\uFF1A\u9810\u671F ${n.origin??"\u503C"} \u61C9\u70BA ${o}${n.maximum.toString()} ${a.unit??"\u500B\u5143\u7D20"}`:`\u6578\u503C\u904E\u5927\uFF1A\u9810\u671F ${n.origin??"\u503C"} \u61C9\u70BA ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`\u6578\u503C\u904E\u5C0F\uFF1A\u9810\u671F ${n.origin} \u61C9\u70BA ${o}${n.minimum.toString()} ${a.unit}`:`\u6578\u503C\u904E\u5C0F\uFF1A\u9810\u671F ${n.origin} \u61C9\u70BA ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u7121\u6548\u7684\u5B57\u4E32\uFF1A\u5FC5\u9808\u4EE5 "${o.prefix}" \u958B\u982D`:o.format==="ends_with"?`\u7121\u6548\u7684\u5B57\u4E32\uFF1A\u5FC5\u9808\u4EE5 "${o.suffix}" \u7D50\u5C3E`:o.format==="includes"?`\u7121\u6548\u7684\u5B57\u4E32\uFF1A\u5FC5\u9808\u5305\u542B "${o.includes}"`:o.format==="regex"?`\u7121\u6548\u7684\u5B57\u4E32\uFF1A\u5FC5\u9808\u7B26\u5408\u683C\u5F0F ${o.pattern}`:`\u7121\u6548\u7684 ${r[o.format]??n.format}`}case"not_multiple_of":return`\u7121\u6548\u7684\u6578\u5B57\uFF1A\u5FC5\u9808\u70BA ${n.divisor} \u7684\u500D\u6578`;case"unrecognized_keys":return`\u7121\u6CD5\u8B58\u5225\u7684\u9375\u503C${n.keys.length>1?"\u5011":""}\uFF1A${h(n.keys,"\u3001")}`;case"invalid_key":return`${n.origin} \u4E2D\u6709\u7121\u6548\u7684\u9375\u503C`;case"invalid_union":return"\u7121\u6548\u7684\u8F38\u5165\u503C";case"invalid_element":return`${n.origin} \u4E2D\u6709\u7121\u6548\u7684\u503C`;default:return"\u7121\u6548\u7684\u8F38\u5165\u503C"}}};function Ig(){return{localeError:uI()}}var dI=()=>{let t={string:{unit:"\xE0mi",verb:"n\xED"},file:{unit:"bytes",verb:"n\xED"},array:{unit:"nkan",verb:"n\xED"},set:{unit:"nkan",verb:"n\xED"}};function e(n){return t[n]??null}let r={regex:"\u1EB9\u0300r\u1ECD \xECb\xE1w\u1ECDl\xE9",email:"\xE0d\xEDr\u1EB9\u0301s\xEC \xECm\u1EB9\u0301l\xEC",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:"\xE0k\xF3k\xF2 ISO",date:"\u1ECDj\u1ECD\u0301 ISO",time:"\xE0k\xF3k\xF2 ISO",duration:"\xE0k\xF3k\xF2 t\xF3 p\xE9 ISO",ipv4:"\xE0d\xEDr\u1EB9\u0301s\xEC IPv4",ipv6:"\xE0d\xEDr\u1EB9\u0301s\xEC IPv6",cidrv4:"\xE0gb\xE8gb\xE8 IPv4",cidrv6:"\xE0gb\xE8gb\xE8 IPv6",base64:"\u1ECD\u0300r\u1ECD\u0300 t\xED a k\u1ECD\u0301 n\xED base64",base64url:"\u1ECD\u0300r\u1ECD\u0300 base64url",json_string:"\u1ECD\u0300r\u1ECD\u0300 JSON",e164:"n\u1ECD\u0301mb\xE0 E.164",jwt:"JWT",template_literal:"\u1EB9\u0300r\u1ECD \xECb\xE1w\u1ECDl\xE9"},i={nan:"NaN",number:"n\u1ECD\u0301mb\xE0",array:"akop\u1ECD"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=_(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`\xCCb\xE1w\u1ECDl\xE9 a\u1E63\xEC\u1E63e: a n\xED l\xE1ti fi instanceof ${n.expected}, \xE0m\u1ECD\u0300 a r\xED ${c}`:`\xCCb\xE1w\u1ECDl\xE9 a\u1E63\xEC\u1E63e: a n\xED l\xE1ti fi ${o}, \xE0m\u1ECD\u0300 a r\xED ${c}`}case"invalid_value":return n.values.length===1?`\xCCb\xE1w\u1ECDl\xE9 a\u1E63\xEC\u1E63e: a n\xED l\xE1ti fi ${v(n.values[0])}`:`\xC0\u1E63\xE0y\xE0n a\u1E63\xEC\u1E63e: yan \u1ECD\u0300kan l\xE1ra ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`T\xF3 p\u1ECD\u0300 j\xF9: a n\xED l\xE1ti j\u1EB9\u0301 p\xE9 ${n.origin??"iye"} ${a.verb} ${o}${n.maximum} ${a.unit}`:`T\xF3 p\u1ECD\u0300 j\xF9: a n\xED l\xE1ti j\u1EB9\u0301 ${o}${n.maximum}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`K\xE9r\xE9 ju: a n\xED l\xE1ti j\u1EB9\u0301 p\xE9 ${n.origin} ${a.verb} ${o}${n.minimum} ${a.unit}`:`K\xE9r\xE9 ju: a n\xED l\xE1ti j\u1EB9\u0301 ${o}${n.minimum}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u1ECC\u0300r\u1ECD\u0300 a\u1E63\xEC\u1E63e: gb\u1ECD\u0301d\u1ECD\u0300 b\u1EB9\u0300r\u1EB9\u0300 p\u1EB9\u0300l\xFA "${o.prefix}"`:o.format==="ends_with"?`\u1ECC\u0300r\u1ECD\u0300 a\u1E63\xEC\u1E63e: gb\u1ECD\u0301d\u1ECD\u0300 par\xED p\u1EB9\u0300l\xFA "${o.suffix}"`:o.format==="includes"?`\u1ECC\u0300r\u1ECD\u0300 a\u1E63\xEC\u1E63e: gb\u1ECD\u0301d\u1ECD\u0300 n\xED "${o.includes}"`:o.format==="regex"?`\u1ECC\u0300r\u1ECD\u0300 a\u1E63\xEC\u1E63e: gb\u1ECD\u0301d\u1ECD\u0300 b\xE1 \xE0p\u1EB9\u1EB9r\u1EB9 mu ${o.pattern}`:`A\u1E63\xEC\u1E63e: ${r[o.format]??n.format}`}case"not_multiple_of":return`N\u1ECD\u0301mb\xE0 a\u1E63\xEC\u1E63e: gb\u1ECD\u0301d\u1ECD\u0300 j\u1EB9\u0301 \xE8y\xE0 p\xEDp\xEDn ti ${n.divisor}`;case"unrecognized_keys":return`B\u1ECDt\xECn\xEC \xE0\xECm\u1ECD\u0300: ${h(n.keys,", ")}`;case"invalid_key":return`B\u1ECDt\xECn\xEC a\u1E63\xEC\u1E63e n\xEDn\xFA ${n.origin}`;case"invalid_union":return"\xCCb\xE1w\u1ECDl\xE9 a\u1E63\xEC\u1E63e";case"invalid_element":return`Iye a\u1E63\xEC\u1E63e n\xEDn\xFA ${n.origin}`;default:return"\xCCb\xE1w\u1ECDl\xE9 a\u1E63\xEC\u1E63e"}}};function Sg(){return{localeError:dI()}}var Eg,Gc=Symbol("ZodOutput"),Wc=Symbol("ZodInput"),di=class{constructor(){this._map=new WeakMap,this._idmap=new Map}add(e,...r){let i=r[0];return this._map.set(e,i),i&&typeof i=="object"&&"id"in i&&this._idmap.set(i.id,e),this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(e){let r=this._map.get(e);return r&&typeof r=="object"&&"id"in r&&this._idmap.delete(r.id),this._map.delete(e),this}get(e){let r=e._zod.parent;if(r){let i={...this.get(r)??{}};delete i.id;let n={...i,...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 pi(){return new di}(Eg=globalThis).__zod_globalRegistry??(Eg.__zod_globalRegistry=pi());var ee=globalThis.__zod_globalRegistry;function qc(t,e){return new t({type:"string",...x(e)})}function Jc(t,e){return new t({type:"string",coerce:!0,...x(e)})}function mi(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...x(e)})}function Ln(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...x(e)})}function fi(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...x(e)})}function gi(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...x(e)})}function hi(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...x(e)})}function bi(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...x(e)})}function Mn(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...x(e)})}function vi(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...x(e)})}function _i(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...x(e)})}function yi(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...x(e)})}function ki(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...x(e)})}function xi(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...x(e)})}function Ii(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...x(e)})}function Si(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...x(e)})}function Ei(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...x(e)})}function wi(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...x(e)})}function Yc(t,e){return new t({type:"string",format:"mac",check:"string_format",abort:!1,...x(e)})}function $i(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...x(e)})}function Oi(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...x(e)})}function Ti(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...x(e)})}function Ri(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...x(e)})}function Ai(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...x(e)})}function Ci(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...x(e)})}var Xc={Any:null,Minute:-1,Second:0,Millisecond:3,Microsecond:6};function Qc(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...x(e)})}function el(t,e){return new t({type:"string",format:"date",check:"string_format",...x(e)})}function tl(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...x(e)})}function nl(t,e){return new t({type:"string",format:"duration",check:"string_format",...x(e)})}function rl(t,e){return new t({type:"number",checks:[],...x(e)})}function il(t,e){return new t({type:"number",coerce:!0,checks:[],...x(e)})}function ol(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...x(e)})}function sl(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"float32",...x(e)})}function al(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"float64",...x(e)})}function cl(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"int32",...x(e)})}function ll(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"uint32",...x(e)})}function ul(t,e){return new t({type:"boolean",...x(e)})}function dl(t,e){return new t({type:"boolean",coerce:!0,...x(e)})}function pl(t,e){return new t({type:"bigint",...x(e)})}function ml(t,e){return new t({type:"bigint",coerce:!0,...x(e)})}function fl(t,e){return new t({type:"bigint",check:"bigint_format",abort:!1,format:"int64",...x(e)})}function gl(t,e){return new t({type:"bigint",check:"bigint_format",abort:!1,format:"uint64",...x(e)})}function hl(t,e){return new t({type:"symbol",...x(e)})}function bl(t,e){return new t({type:"undefined",...x(e)})}function vl(t,e){return new t({type:"null",...x(e)})}function _l(t){return new t({type:"any"})}function yl(t){return new t({type:"unknown"})}function kl(t,e){return new t({type:"never",...x(e)})}function xl(t,e){return new t({type:"void",...x(e)})}function Il(t,e){return new t({type:"date",...x(e)})}function Sl(t,e){return new t({type:"date",coerce:!0,...x(e)})}function El(t,e){return new t({type:"nan",...x(e)})}function Se(t,e){return new Yr({check:"less_than",...x(e),value:t,inclusive:!1})}function pe(t,e){return new Yr({check:"less_than",...x(e),value:t,inclusive:!0})}function Ee(t,e){return new Xr({check:"greater_than",...x(e),value:t,inclusive:!1})}function oe(t,e){return new Xr({check:"greater_than",...x(e),value:t,inclusive:!0})}function Pi(t){return Ee(0,t)}function Ni(t){return Se(0,t)}function Di(t){return pe(0,t)}function Ui(t){return oe(0,t)}function Fe(t,e){return new va({check:"multiple_of",...x(e),value:t})}function Be(t,e){return new ka({check:"max_size",...x(e),maximum:t})}function we(t,e){return new xa({check:"min_size",...x(e),minimum:t})}function rt(t,e){return new Ia({check:"size_equals",...x(e),size:t})}function it(t,e){return new Sa({check:"max_length",...x(e),maximum:t})}function Ce(t,e){return new Ea({check:"min_length",...x(e),minimum:t})}function ot(t,e){return new wa({check:"length_equals",...x(e),length:t})}function Et(t,e){return new $a({check:"string_format",format:"regex",...x(e),pattern:t})}function wt(t){return new Oa({check:"string_format",format:"lowercase",...x(t)})}function $t(t){return new Ta({check:"string_format",format:"uppercase",...x(t)})}function Ot(t,e){return new Ra({check:"string_format",format:"includes",...x(e),includes:t})}function Tt(t,e){return new Aa({check:"string_format",format:"starts_with",...x(e),prefix:t})}function Rt(t,e){return new Ca({check:"string_format",format:"ends_with",...x(e),suffix:t})}function zi(t,e,r){return new Pa({check:"property",property:t,schema:e,...x(r)})}function At(t,e){return new Na({check:"mime_type",mime:t,...x(e)})}function ye(t){return new Da({check:"overwrite",tx:t})}function Ct(t){return ye(e=>e.normalize(t))}function Pt(){return ye(t=>t.trim())}function Nt(){return ye(t=>t.toLowerCase())}function Dt(){return ye(t=>t.toUpperCase())}function Ut(){return ye(t=>As(t))}function wl(t,e,r){return new t({type:"array",element:e,...x(r)})}function mI(t,e,r){return new t({type:"union",options:e,...x(r)})}function fI(t,e,r){return new t({type:"union",options:e,inclusive:!1,...x(r)})}function gI(t,e,r,i){return new t({type:"union",options:r,discriminator:e,...x(i)})}function hI(t,e,r){return new t({type:"intersection",left:e,right:r})}function bI(t,e,r,i){let n=r instanceof w,o=n?i:r,a=n?r:null;return new t({type:"tuple",items:e,rest:a,...x(o)})}function vI(t,e,r,i){return new t({type:"record",keyType:e,valueType:r,...x(i)})}function _I(t,e,r,i){return new t({type:"map",keyType:e,valueType:r,...x(i)})}function yI(t,e,r){return new t({type:"set",valueType:e,...x(r)})}function kI(t,e,r){let i=Array.isArray(e)?Object.fromEntries(e.map(n=>[n,n])):e;return new t({type:"enum",entries:i,...x(r)})}function xI(t,e,r){return new t({type:"enum",entries:e,...x(r)})}function II(t,e,r){return new t({type:"literal",values:Array.isArray(e)?e:[e],...x(r)})}function $l(t,e){return new t({type:"file",...x(e)})}function SI(t,e){return new t({type:"transform",transform:e})}function EI(t,e){return new t({type:"optional",innerType:e})}function wI(t,e){return new t({type:"nullable",innerType:e})}function $I(t,e,r){return new t({type:"default",innerType:e,get defaultValue(){return typeof r=="function"?r():Ps(r)}})}function OI(t,e,r){return new t({type:"nonoptional",innerType:e,...x(r)})}function TI(t,e){return new t({type:"success",innerType:e})}function RI(t,e,r){return new t({type:"catch",innerType:e,catchValue:typeof r=="function"?r:()=>r})}function AI(t,e,r){return new t({type:"pipe",in:e,out:r})}function CI(t,e){return new t({type:"readonly",innerType:e})}function PI(t,e,r){return new t({type:"template_literal",parts:e,...x(r)})}function NI(t,e){return new t({type:"lazy",getter:e})}function DI(t,e){return new t({type:"promise",innerType:e})}function Ol(t,e,r){let i=x(r);return i.abort??(i.abort=!0),new t({type:"custom",check:"custom",fn:e,...i})}function Tl(t,e,r){return new t({type:"custom",check:"custom",fn:e,...x(r)})}function Rl(t,e){let r=wg(i=>(i.addIssue=n=>{if(typeof n=="string")i.issues.push(vt(n,i.value,r._zod.def));else{let o=n;o.fatal&&(o.continue=!1),o.code??(o.code="custom"),o.input??(o.input=i.value),o.inst??(o.inst=r),o.continue??(o.continue=!r._zod.def.abort),i.issues.push(vt(o))}},t(i.value,i)),e);return r}function wg(t,e){let r=new B({check:"custom",...x(e)});return r._zod.check=t,r}function Al(t){let e=new B({check:"describe"});return e._zod.onattach=[r=>{let i=ee.get(r)??{};ee.add(r,{...i,description:t})}],e._zod.check=()=>{},e}function Cl(t){let e=new B({check:"meta"});return e._zod.onattach=[r=>{let i=ee.get(r)??{};ee.add(r,{...i,...t})}],e._zod.check=()=>{},e}function Pl(t,e){let r=x(e),i=r.truthy??["true","1","yes","on","y","enabled"],n=r.falsy??["false","0","no","off","n","disabled"];r.case!=="sensitive"&&(i=i.map(g=>typeof g=="string"?g.toLowerCase():g),n=n.map(g=>typeof g=="string"?g.toLowerCase():g));let o=new Set(i),a=new Set(n),c=t.Codec??Un,l=t.Boolean??Nn,d=t.String??nt,u=new d({type:"string",error:r.error}),p=new l({type:"boolean",error:r.error}),m=new c({type:"pipe",in:u,out:p,transform:((g,k)=>{let E=g;return r.case!=="sensitive"&&(E=E.toLowerCase()),o.has(E)?!0:a.has(E)?!1:(k.issues.push({code:"invalid_value",expected:"stringbool",values:[...o,...a],input:k.value,inst:m,continue:!1}),{})}),reverseTransform:((g,k)=>g===!0?i[0]||"true":n[0]||"false"),error:r.error});return m}function zt(t,e,r,i={}){let n=x(i),o={...x(i),check:"string_format",type:"string",format:e,fn:typeof r=="function"?r:c=>r.test(c),...n};return r instanceof RegExp&&(o.pattern=r),new t(o)}function He(t){let e=t?.target??"draft-2020-12";return e==="draft-4"&&(e="draft-04"),e==="draft-7"&&(e="draft-07"),{processors:t.processors??{},metadataRegistry:t?.metadata??ee,target:e,unrepresentable:t?.unrepresentable??"throw",override:t?.override??(()=>{}),io:t?.io??"output",counter:0,seen:new Map,cycles:t?.cycles??"ref",reused:t?.reused??"inline",external:t?.external??void 0}}function z(t,e,r={path:[],schemaPath:[]}){var i;let n=t._zod.def,o=e.seen.get(t);if(o)return o.count++,r.schemaPath.includes(t)&&(o.cycle=r.path),o.schema;let a={schema:{},count:1,cycle:void 0,path:r.path};e.seen.set(t,a);let c=t._zod.toJSONSchema?.();if(c)a.schema=c;else{let u={...r,schemaPath:[...r.schemaPath,t],path:r.path};if(t._zod.processJSONSchema)t._zod.processJSONSchema(e,a.schema,u);else{let m=a.schema,g=e.processors[n.type];if(!g)throw new Error(`[toJSONSchema]: Non-representable type encountered: ${n.type}`);g(t,e,m,u)}let p=t._zod.parent;p&&(a.ref||(a.ref=p),z(p,e,u),e.seen.get(p).isParent=!0)}let l=e.metadataRegistry.get(t);return l&&Object.assign(a.schema,l),e.io==="input"&&se(t)&&(delete a.schema.examples,delete a.schema.default),e.io==="input"&&"_prefault"in a.schema&&((i=a.schema).default??(i.default=a.schema._prefault)),delete a.schema._prefault,e.seen.get(t).schema}function Ve(t,e){let r=t.seen.get(e);if(!r)throw new Error("Unprocessed schema. This is a bug in Zod.");let i=new Map;for(let a of t.seen.entries()){let c=t.metadataRegistry.get(a[0])?.id;if(c){let l=i.get(c);if(l&&l!==a[0])throw new Error(`Duplicate schema id "${c}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);i.set(c,a[0])}}let n=a=>{let c=t.target==="draft-2020-12"?"$defs":"definitions";if(t.external){let p=t.external.registry.get(a[0])?.id,m=t.external.uri??(k=>k);if(p)return{ref:m(p)};let g=a[1].defId??a[1].schema.id??`schema${t.counter++}`;return a[1].defId=g,{defId:g,ref:`${m("__shared")}#/${c}/${g}`}}if(a[1]===r)return{ref:"#"};let d=`#/${c}/`,u=a[1].schema.id??`__schema${t.counter++}`;return{defId:u,ref:d+u}},o=a=>{if(a[1].schema.$ref)return;let c=a[1],{ref:l,defId:d}=n(a);c.def={...c.schema},d&&(c.defId=d);let u=c.schema;for(let p in u)delete u[p];u.$ref=l};if(t.cycles==="throw")for(let a of t.seen.entries()){let c=a[1];if(c.cycle)throw new Error(`Cycle detected: #/${c.cycle?.join("/")}/<root>
96
+ `)}f.write("payload.value = newResult;"),f.write("return payload;");let H=f.compile();return(V,D)=>H(m,V,D)},o,a=lt,c=!ct.jitless,d=c&&la.value,u=e.catchall,p;t._zod.parse=(m,f)=>{p??(p=i.value);let v=m.value;return a(v)?c&&d&&f?.async===!1&&f.jitless!==!0?(o||(o=n(e.shape)),m=o(m,f),u?sg([],v,m,f,p,t):m):r(m,f):(m.issues.push({expected:"object",code:"invalid_type",input:v,inst:t}),m)}});function Vf(t,e,r,i){for(let o of t)if(o.issues.length===0)return e.value=o.value,e;let n=t.filter(o=>!Ge(o));return n.length===1?(e.value=n[0].value,n[0]):(e.issues.push({code:"invalid_union",input:e.value,inst:r,errors:t.map(o=>o.issues.map(a=>se(a,i,Y())))}),e)}var Jn=g("$ZodUnion",(t,e)=>{$.init(t,e),T(t._zod,"optin",()=>e.options.some(i=>i._zod.optin==="optional")?"optional":void 0),T(t._zod,"optout",()=>e.options.some(i=>i._zod.optout==="optional")?"optional":void 0),T(t._zod,"values",()=>{if(e.options.every(i=>i._zod.values))return new Set(e.options.flatMap(i=>Array.from(i._zod.values)))}),T(t._zod,"pattern",()=>{if(e.options.every(i=>i._zod.pattern)){let i=e.options.map(n=>n._zod.pattern);return new RegExp(`^(${i.map(n=>Ln(n.source)).join("|")})$`)}});let r=e.options.length===1?e.options[0]._zod.run:null;t._zod.parse=(i,n)=>{if(r)return r(i,n);let o=!1,a=[];for(let c of e.options){let l=c._zod.run({value:i.value,issues:[]},n);if(l instanceof Promise)a.push(l),o=!0;else{if(l.issues.length===0)return l;a.push(l)}}return o?Promise.all(a).then(c=>Vf(c,i,t,n)):Vf(a,i,t,n)}});function Kf(t,e,r,i){let n=t.filter(o=>o.issues.length===0);return n.length===1?(e.value=n[0].value,e):(n.length===0?e.issues.push({code:"invalid_union",input:e.value,inst:r,errors:t.map(o=>o.issues.map(a=>se(a,i,Y())))}):e.issues.push({code:"invalid_union",input:e.value,inst:r,errors:[],inclusive:!1}),e)}var Qc=g("$ZodXor",(t,e)=>{Jn.init(t,e),e.inclusive=!1;let r=e.options.length===1?e.options[0]._zod.run:null;t._zod.parse=(i,n)=>{if(r)return r(i,n);let o=!1,a=[];for(let c of e.options){let l=c._zod.run({value:i.value,issues:[]},n);l instanceof Promise?(a.push(l),o=!0):a.push(l)}return o?Promise.all(a).then(c=>Kf(c,i,t,n)):Kf(a,i,t,n)}}),el=g("$ZodDiscriminatedUnion",(t,e)=>{e.inclusive=!1,Jn.init(t,e);let r=t._zod.parse;T(t._zod,"propValues",()=>{let n={};for(let o of e.options){let a=o._zod.propValues;if(!a||Object.keys(a).length===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(o)}"`);for(let[c,l]of Object.entries(a)){n[c]||(n[c]=new Set);for(let d of l)n[c].add(d)}}return n});let i=Ot(()=>{let n=e.options,o=new Map;for(let a of n){let c=a._zod.propValues?.[e.discriminator];if(!c||c.size===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(a)}"`);for(let l of c){if(o.has(l))throw new Error(`Duplicate discriminator value "${String(l)}"`);o.set(l,a)}}return o});t._zod.parse=(n,o)=>{let a=n.value;if(!lt(a))return n.issues.push({code:"invalid_type",expected:"object",input:a,inst:t}),n;let c=i.value.get(a?.[e.discriminator]);return c?c._zod.run(n,o):e.unionFallback||o.direction==="backward"?r(n,o):(n.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",discriminator:e.discriminator,options:Array.from(i.value.keys()),input:a,path:[e.discriminator],inst:t}),n)}}),tl=g("$ZodIntersection",(t,e)=>{$.init(t,e),t._zod.parse=(r,i)=>{let n=r.value,o=e.left._zod.run({value:n,issues:[]},i),a=e.right._zod.run({value:n,issues:[]},i);return o instanceof Promise||a instanceof Promise?Promise.all([o,a]).then(([l,d])=>Gf(r,l,d)):Gf(r,o,a)}});function fc(t,e){if(t===e)return{valid:!0,data:t};if(t instanceof Date&&e instanceof Date&&+t==+e)return{valid:!0,data:t};if(Ke(t)&&Ke(e)){let r=Object.keys(e),i=Object.keys(t).filter(o=>r.indexOf(o)!==-1),n={...t,...e};for(let o of i){let a=fc(t[o],e[o]);if(!a.valid)return{valid:!1,mergeErrorPath:[o,...a.mergeErrorPath]};n[o]=a.data}return{valid:!0,data:n}}if(Array.isArray(t)&&Array.isArray(e)){if(t.length!==e.length)return{valid:!1,mergeErrorPath:[]};let r=[];for(let i=0;i<t.length;i++){let n=t[i],o=e[i],a=fc(n,o);if(!a.valid)return{valid:!1,mergeErrorPath:[i,...a.mergeErrorPath]};r.push(a.data)}return{valid:!0,data:r}}return{valid:!1,mergeErrorPath:[]}}function Gf(t,e,r){let i=new Map,n;for(let c of e.issues)if(c.code==="unrecognized_keys"){n??(n=c);for(let l of c.keys)i.has(l)||i.set(l,{}),i.get(l).l=!0}else t.issues.push(c);for(let c of r.issues)if(c.code==="unrecognized_keys")for(let l of c.keys)i.has(l)||i.set(l,{}),i.get(l).r=!0;else t.issues.push(c);let o=[...i].filter(([,c])=>c.l&&c.r).map(([c])=>c);if(o.length&&n&&t.issues.push({...n,keys:o}),Ge(t))return t;let a=fc(e.value,r.value);if(!a.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(a.mergeErrorPath)}`);return t.value=a.data,t}var Ei=g("$ZodTuple",(t,e)=>{$.init(t,e);let r=e.items;t._zod.parse=(i,n)=>{let o=i.value;if(!Array.isArray(o))return i.issues.push({input:o,inst:t,expected:"tuple",code:"invalid_type"}),i;i.value=[];let a=[],c=Zf(r,"optin"),l=Zf(r,"optout");if(!e.rest){if(o.length<c)return i.issues.push({code:"too_small",minimum:c,inclusive:!0,input:o,inst:t,origin:"array"}),i;o.length>r.length&&i.issues.push({code:"too_big",maximum:r.length,inclusive:!0,input:o,inst:t,origin:"array"})}let d=new Array(r.length);for(let u=0;u<r.length;u++){let p=r[u]._zod.run({value:o[u],issues:[]},n);p instanceof Promise?a.push(p.then(m=>{d[u]=m})):d[u]=p}if(e.rest){let u=r.length-1,p=o.slice(r.length);for(let m of p){u++;let f=e.rest._zod.run({value:m,issues:[]},n);f instanceof Promise?a.push(f.then(v=>Wf(v,i,u))):Wf(f,i,u)}}return a.length?Promise.all(a).then(()=>qf(d,i,r,o,l)):qf(d,i,r,o,l)}});function Zf(t,e){for(let r=t.length-1;r>=0;r--)if(t[r]._zod[e]!=="optional")return r+1;return 0}function Wf(t,e,r){t.issues.length&&e.issues.push(...ue(r,t.issues)),e.value[r]=t.value}function qf(t,e,r,i,n){for(let o=0;o<r.length;o++){let a=t[o],c=o<i.length;if(a.issues.length){if(!c&&o>=n){e.value.length=o;break}e.issues.push(...ue(o,a.issues))}e.value[o]=a.value}for(let o=e.value.length-1;o>=i.length&&(r[o]._zod.optout==="optional"&&e.value[o]===void 0);o--)e.value.length=o;return e}var nl=g("$ZodRecord",(t,e)=>{$.init(t,e),t._zod.parse=(r,i)=>{let n=r.value;if(!Ke(n))return r.issues.push({expected:"record",code:"invalid_type",input:n,inst:t}),r;let o=[],a=e.keyType._zod.values;if(a){r.value={};let c=new Set;for(let d of a)if(typeof d=="string"||typeof d=="number"||typeof d=="symbol"){c.add(typeof d=="number"?d.toString():d);let u=e.keyType._zod.run({value:d,issues:[]},i);if(u instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(u.issues.length){r.issues.push({code:"invalid_key",origin:"record",issues:u.issues.map(f=>se(f,i,Y())),input:d,path:[d],inst:t});continue}let p=u.value,m=e.valueType._zod.run({value:n[d],issues:[]},i);m instanceof Promise?o.push(m.then(f=>{f.issues.length&&r.issues.push(...ue(d,f.issues)),r.value[p]=f.value})):(m.issues.length&&r.issues.push(...ue(d,m.issues)),r.value[p]=m.value)}let l;for(let d in n)c.has(d)||(l=l??[],l.push(d));l&&l.length>0&&r.issues.push({code:"unrecognized_keys",input:n,inst:t,keys:l})}else{r.value={};for(let c of Reflect.ownKeys(n)){if(c==="__proto__"||!Object.prototype.propertyIsEnumerable.call(n,c))continue;let l=e.keyType._zod.run({value:c,issues:[]},i);if(l instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(typeof c=="string"&&hi.test(c)&&l.issues.length){let p=e.keyType._zod.run({value:Number(c),issues:[]},i);if(p instanceof Promise)throw new Error("Async schemas not supported in object keys currently");p.issues.length===0&&(l=p)}if(l.issues.length){e.mode==="loose"?r.value[c]=n[c]:r.issues.push({code:"invalid_key",origin:"record",issues:l.issues.map(p=>se(p,i,Y())),input:c,path:[c],inst:t});continue}let u=e.valueType._zod.run({value:n[c],issues:[]},i);u instanceof Promise?o.push(u.then(p=>{p.issues.length&&r.issues.push(...ue(c,p.issues)),r.value[l.value]=p.value})):(u.issues.length&&r.issues.push(...ue(c,u.issues)),r.value[l.value]=u.value)}}return o.length?Promise.all(o).then(()=>r):r}}),rl=g("$ZodMap",(t,e)=>{$.init(t,e),t._zod.parse=(r,i)=>{let n=r.value;if(!(n instanceof Map))return r.issues.push({expected:"map",code:"invalid_type",input:n,inst:t}),r;let o=[];r.value=new Map;for(let[a,c]of n){let l=e.keyType._zod.run({value:a,issues:[]},i),d=e.valueType._zod.run({value:c,issues:[]},i);l instanceof Promise||d instanceof Promise?o.push(Promise.all([l,d]).then(([u,p])=>{Jf(u,p,r,a,n,t,i)})):Jf(l,d,r,a,n,t,i)}return o.length?Promise.all(o).then(()=>r):r}});function Jf(t,e,r,i,n,o,a){t.issues.length&&(Mn.has(typeof i)?r.issues.push(...ue(i,t.issues)):r.issues.push({code:"invalid_key",origin:"map",input:n,inst:o,issues:t.issues.map(c=>se(c,a,Y()))})),e.issues.length&&(Mn.has(typeof i)?r.issues.push(...ue(i,e.issues)):r.issues.push({origin:"map",code:"invalid_element",input:n,inst:o,key:i,issues:e.issues.map(c=>se(c,a,Y()))})),r.value.set(t.value,e.value)}var il=g("$ZodSet",(t,e)=>{$.init(t,e),t._zod.parse=(r,i)=>{let n=r.value;if(!(n instanceof Set))return r.issues.push({input:n,inst:t,expected:"set",code:"invalid_type"}),r;let o=[];r.value=new Set;for(let a of n){let c=e.valueType._zod.run({value:a,issues:[]},i);c instanceof Promise?o.push(c.then(l=>Yf(l,r))):Yf(c,r)}return o.length?Promise.all(o).then(()=>r):r}});function Yf(t,e){t.issues.length&&e.issues.push(...t.issues),e.value.add(t.value)}var ol=g("$ZodEnum",(t,e)=>{$.init(t,e);let r=jn(e.entries),i=new Set(r);t._zod.values=i,t._zod.pattern=new RegExp(`^(${r.filter(n=>Mn.has(typeof n)).map(n=>typeof n=="string"?_e(n):n.toString()).join("|")})$`),t._zod.parse=(n,o)=>{let a=n.value;return i.has(a)||n.issues.push({code:"invalid_value",values:r,input:a,inst:t}),n}}),sl=g("$ZodLiteral",(t,e)=>{if($.init(t,e),e.values.length===0)throw new Error("Cannot create literal schema with no valid values");let r=new Set(e.values);t._zod.values=r,t._zod.pattern=new RegExp(`^(${e.values.map(i=>typeof i=="string"?_e(i):i?_e(i.toString()):String(i)).join("|")})$`),t._zod.parse=(i,n)=>{let o=i.value;return r.has(o)||i.issues.push({code:"invalid_value",values:e.values,input:o,inst:t}),i}}),al=g("$ZodFile",(t,e)=>{$.init(t,e),t._zod.parse=(r,i)=>{let n=r.value;return n instanceof File||r.issues.push({expected:"file",code:"invalid_type",input:n,inst:t}),r}}),cl=g("$ZodTransform",(t,e)=>{$.init(t,e),t._zod.optin="optional",t._zod.parse=(r,i)=>{if(i.direction==="backward")throw new Fe(t.constructor.name);let n=e.transform(r.value,r);if(i.async)return(n instanceof Promise?n:Promise.resolve(n)).then(a=>(r.value=a,r.fallback=!0,r));if(n instanceof Promise)throw new xe;return r.value=n,r.fallback=!0,r}});function Xf(t,e){return e===void 0&&(t.issues.length||t.fallback)?{issues:[],value:void 0}:t}var wi=g("$ZodOptional",(t,e)=>{$.init(t,e),t._zod.optin="optional",t._zod.optout="optional",T(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,void 0]):void 0),T(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${Ln(r.source)})?$`):void 0}),t._zod.parse=(r,i)=>{if(e.innerType._zod.optin==="optional"){let n=r.value,o=e.innerType._zod.run(r,i);return o instanceof Promise?o.then(a=>Xf(a,n)):Xf(o,n)}return r.value===void 0?r:e.innerType._zod.run(r,i)}}),ll=g("$ZodExactOptional",(t,e)=>{wi.init(t,e),T(t._zod,"values",()=>e.innerType._zod.values),T(t._zod,"pattern",()=>e.innerType._zod.pattern),t._zod.parse=(r,i)=>e.innerType._zod.run(r,i)}),ul=g("$ZodNullable",(t,e)=>{$.init(t,e),T(t._zod,"optin",()=>e.innerType._zod.optin),T(t._zod,"optout",()=>e.innerType._zod.optout),T(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${Ln(r.source)}|null)$`):void 0}),T(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,null]):void 0),t._zod.parse=(r,i)=>r.value===null?r:e.innerType._zod.run(r,i)}),dl=g("$ZodDefault",(t,e)=>{$.init(t,e),t._zod.optin="optional",T(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,i)=>{if(i.direction==="backward")return e.innerType._zod.run(r,i);if(r.value===void 0)return r.value=e.defaultValue,r;let n=e.innerType._zod.run(r,i);return n instanceof Promise?n.then(o=>Qf(o,e)):Qf(n,e)}});function Qf(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}var pl=g("$ZodPrefault",(t,e)=>{$.init(t,e),t._zod.optin="optional",T(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,i)=>(i.direction==="backward"||r.value===void 0&&(r.value=e.defaultValue),e.innerType._zod.run(r,i))}),ml=g("$ZodNonOptional",(t,e)=>{$.init(t,e),T(t._zod,"values",()=>{let r=e.innerType._zod.values;return r?new Set([...r].filter(i=>i!==void 0)):void 0}),t._zod.parse=(r,i)=>{let n=e.innerType._zod.run(r,i);return n instanceof Promise?n.then(o=>eg(o,t)):eg(n,t)}});function eg(t,e){return!t.issues.length&&t.value===void 0&&t.issues.push({code:"invalid_type",expected:"nonoptional",input:t.value,inst:e}),t}var fl=g("$ZodSuccess",(t,e)=>{$.init(t,e),t._zod.parse=(r,i)=>{if(i.direction==="backward")throw new Fe("ZodSuccess");let n=e.innerType._zod.run(r,i);return n instanceof Promise?n.then(o=>(r.value=o.issues.length===0,r)):(r.value=n.issues.length===0,r)}}),gl=g("$ZodCatch",(t,e)=>{$.init(t,e),t._zod.optin="optional",T(t._zod,"optout",()=>e.innerType._zod.optout),T(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,i)=>{if(i.direction==="backward")return e.innerType._zod.run(r,i);let n=e.innerType._zod.run(r,i);return n instanceof Promise?n.then(o=>(r.value=o.value,o.issues.length&&(r.value=e.catchValue({...r,error:{issues:o.issues.map(a=>se(a,i,Y()))},input:r.value}),r.issues=[],r.fallback=!0),r)):(r.value=n.value,n.issues.length&&(r.value=e.catchValue({...r,error:{issues:n.issues.map(o=>se(o,i,Y()))},input:r.value}),r.issues=[],r.fallback=!0),r)}}),hl=g("$ZodNaN",(t,e)=>{$.init(t,e),t._zod.parse=(r,i)=>((typeof r.value!="number"||!Number.isNaN(r.value))&&r.issues.push({input:r.value,inst:t,expected:"nan",code:"invalid_type"}),r)}),$i=g("$ZodPipe",(t,e)=>{$.init(t,e),T(t._zod,"values",()=>e.in._zod.values),T(t._zod,"optin",()=>e.in._zod.optin),T(t._zod,"optout",()=>e.out._zod.optout),T(t._zod,"propValues",()=>e.in._zod.propValues),t._zod.parse=(r,i)=>{if(i.direction==="backward"){let o=e.out._zod.run(r,i);return o instanceof Promise?o.then(a=>_i(a,e.in,i)):_i(o,e.in,i)}let n=e.in._zod.run(r,i);return n instanceof Promise?n.then(o=>_i(o,e.out,i)):_i(n,e.out,i)}});function _i(t,e,r){return t.issues.length?(t.aborted=!0,t):e._zod.run({value:t.value,issues:t.issues,fallback:t.fallback},r)}var Yn=g("$ZodCodec",(t,e)=>{$.init(t,e),T(t._zod,"values",()=>e.in._zod.values),T(t._zod,"optin",()=>e.in._zod.optin),T(t._zod,"optout",()=>e.out._zod.optout),T(t._zod,"propValues",()=>e.in._zod.propValues),t._zod.parse=(r,i)=>{if((i.direction||"forward")==="forward"){let o=e.in._zod.run(r,i);return o instanceof Promise?o.then(a=>yi(a,e,i)):yi(o,e,i)}else{let o=e.out._zod.run(r,i);return o instanceof Promise?o.then(a=>yi(a,e,i)):yi(o,e,i)}}});function yi(t,e,r){if(t.issues.length)return t.aborted=!0,t;if((r.direction||"forward")==="forward"){let n=e.transform(t.value,t);return n instanceof Promise?n.then(o=>ki(t,o,e.out,r)):ki(t,n,e.out,r)}else{let n=e.reverseTransform(t.value,t);return n instanceof Promise?n.then(o=>ki(t,o,e.in,r)):ki(t,n,e.in,r)}}function ki(t,e,r,i){return t.issues.length?(t.aborted=!0,t):r._zod.run({value:e,issues:t.issues},i)}var bl=g("$ZodPreprocess",(t,e)=>{$i.init(t,e)}),vl=g("$ZodReadonly",(t,e)=>{$.init(t,e),T(t._zod,"propValues",()=>e.innerType._zod.propValues),T(t._zod,"values",()=>e.innerType._zod.values),T(t._zod,"optin",()=>e.innerType?._zod?.optin),T(t._zod,"optout",()=>e.innerType?._zod?.optout),t._zod.parse=(r,i)=>{if(i.direction==="backward")return e.innerType._zod.run(r,i);let n=e.innerType._zod.run(r,i);return n instanceof Promise?n.then(tg):tg(n)}});function tg(t){return t.value=Object.freeze(t.value),t}var _l=g("$ZodTemplateLiteral",(t,e)=>{$.init(t,e);let r=[];for(let i of e.parts)if(typeof i=="object"&&i!==null){if(!i._zod.pattern)throw new Error(`Invalid template literal part, no pattern found: ${[...i._zod.traits].shift()}`);let n=i._zod.pattern instanceof RegExp?i._zod.pattern.source:i._zod.pattern;if(!n)throw new Error(`Invalid template literal part: ${i._zod.traits}`);let o=n.startsWith("^")?1:0,a=n.endsWith("$")?n.length-1:n.length;r.push(n.slice(o,a))}else if(i===null||da.has(typeof i))r.push(_e(`${i}`));else throw new Error(`Invalid template literal part: ${i}`);t._zod.pattern=new RegExp(`^${r.join("")}$`),t._zod.parse=(i,n)=>typeof i.value!="string"?(i.issues.push({input:i.value,inst:t,expected:"string",code:"invalid_type"}),i):(t._zod.pattern.lastIndex=0,t._zod.pattern.test(i.value)||i.issues.push({input:i.value,inst:t,code:"invalid_format",format:e.format??"template_literal",pattern:t._zod.pattern.source}),i)}),yl=g("$ZodFunction",(t,e)=>($.init(t,e),t._def=e,t._zod.def=e,t.implement=r=>{if(typeof r!="function")throw new Error("implement() must be called with a function");return function(...i){let n=t._def.input?oi(t._def.input,i):i,o=Reflect.apply(r,this,n);return t._def.output?oi(t._def.output,o):o}},t.implementAsync=r=>{if(typeof r!="function")throw new Error("implementAsync() must be called with a function");return async function(...i){let n=t._def.input?await si(t._def.input,i):i,o=await Reflect.apply(r,this,n);return t._def.output?await si(t._def.output,o):o}},t._zod.parse=(r,i)=>typeof r.value!="function"?(r.issues.push({code:"invalid_type",expected:"function",input:r.value,inst:t}),r):(t._def.output&&t._def.output._zod.def.type==="promise"?r.value=t.implementAsync(r.value):r.value=t.implement(r.value),r),t.input=(...r)=>{let i=t.constructor;return Array.isArray(r[0])?new i({type:"function",input:new Ei({type:"tuple",items:r[0],rest:r[1]}),output:t._def.output}):new i({type:"function",input:r[0],output:t._def.output})},t.output=r=>{let i=t.constructor;return new i({type:"function",input:t._def.input,output:r})},t)),kl=g("$ZodPromise",(t,e)=>{$.init(t,e),t._zod.parse=(r,i)=>Promise.resolve(r.value).then(n=>e.innerType._zod.run({value:n,issues:[]},i))}),xl=g("$ZodLazy",(t,e)=>{$.init(t,e),T(t._zod,"innerType",()=>{let r=e;return r._cachedInner||(r._cachedInner=e.getter()),r._cachedInner}),T(t._zod,"pattern",()=>t._zod.innerType?._zod?.pattern),T(t._zod,"propValues",()=>t._zod.innerType?._zod?.propValues),T(t._zod,"optin",()=>t._zod.innerType?._zod?.optin??void 0),T(t._zod,"optout",()=>t._zod.innerType?._zod?.optout??void 0),t._zod.parse=(r,i)=>t._zod.innerType._zod.run(r,i)}),Il=g("$ZodCustom",(t,e)=>{K.init(t,e),$.init(t,e),t._zod.parse=(r,i)=>r,t._zod.check=r=>{let i=r.value,n=e.fn(i);if(n instanceof Promise)return n.then(o=>ng(o,r,i,t));ng(n,r,i,t)}});function ng(t,e,r,i){if(!t){let n={code:"custom",input:r,inst:i,path:[...i._zod.def.path??[]],continue:!i._zod.def.abort};i._zod.def.params&&(n.params=i._zod.def.params),e.issues.push(Tt(n))}}var Qn={};De(Qn,{ar:()=>cg,az:()=>lg,be:()=>dg,bg:()=>pg,ca:()=>mg,cs:()=>fg,da:()=>gg,de:()=>hg,el:()=>bg,en:()=>Oi,eo:()=>vg,es:()=>_g,fa:()=>yg,fi:()=>kg,fr:()=>xg,frCA:()=>Ig,he:()=>Sg,hr:()=>Eg,hu:()=>wg,hy:()=>Og,id:()=>Tg,is:()=>Ag,it:()=>Rg,ja:()=>Cg,ka:()=>Pg,kh:()=>Ng,km:()=>Ti,ko:()=>Dg,lt:()=>zg,mk:()=>jg,ms:()=>Lg,nl:()=>Mg,no:()=>Bg,ota:()=>Fg,pl:()=>Vg,ps:()=>Hg,pt:()=>Kg,ro:()=>Gg,ru:()=>Wg,sl:()=>qg,sv:()=>Jg,ta:()=>Yg,th:()=>Xg,tr:()=>Qg,ua:()=>eh,uk:()=>Ai,ur:()=>th,uz:()=>nh,vi:()=>rh,yo:()=>sh,zhCN:()=>ih,zhTW:()=>oh});var OI=()=>{let t={string:{unit:"\u062D\u0631\u0641",verb:"\u0623\u0646 \u064A\u062D\u0648\u064A"},file:{unit:"\u0628\u0627\u064A\u062A",verb:"\u0623\u0646 \u064A\u062D\u0648\u064A"},array:{unit:"\u0639\u0646\u0635\u0631",verb:"\u0623\u0646 \u064A\u062D\u0648\u064A"},set:{unit:"\u0639\u0646\u0635\u0631",verb:"\u0623\u0646 \u064A\u062D\u0648\u064A"}};function e(n){return t[n]??null}let r={regex:"\u0645\u062F\u062E\u0644",email:"\u0628\u0631\u064A\u062F \u0625\u0644\u0643\u062A\u0631\u0648\u0646\u064A",url:"\u0631\u0627\u0628\u0637",emoji:"\u0625\u064A\u0645\u0648\u062C\u064A",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"\u062A\u0627\u0631\u064A\u062E \u0648\u0648\u0642\u062A \u0628\u0645\u0639\u064A\u0627\u0631 ISO",date:"\u062A\u0627\u0631\u064A\u062E \u0628\u0645\u0639\u064A\u0627\u0631 ISO",time:"\u0648\u0642\u062A \u0628\u0645\u0639\u064A\u0627\u0631 ISO",duration:"\u0645\u062F\u0629 \u0628\u0645\u0639\u064A\u0627\u0631 ISO",ipv4:"\u0639\u0646\u0648\u0627\u0646 IPv4",ipv6:"\u0639\u0646\u0648\u0627\u0646 IPv6",cidrv4:"\u0645\u062F\u0649 \u0639\u0646\u0627\u0648\u064A\u0646 \u0628\u0635\u064A\u063A\u0629 IPv4",cidrv6:"\u0645\u062F\u0649 \u0639\u0646\u0627\u0648\u064A\u0646 \u0628\u0635\u064A\u063A\u0629 IPv6",base64:"\u0646\u064E\u0635 \u0628\u062A\u0631\u0645\u064A\u0632 base64-encoded",base64url:"\u0646\u064E\u0635 \u0628\u062A\u0631\u0645\u064A\u0632 base64url-encoded",json_string:"\u0646\u064E\u0635 \u0639\u0644\u0649 \u0647\u064A\u0626\u0629 JSON",e164:"\u0631\u0642\u0645 \u0647\u0627\u062A\u0641 \u0628\u0645\u0639\u064A\u0627\u0631 E.164",jwt:"JWT",template_literal:"\u0645\u062F\u062E\u0644"},i={nan:"NaN"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=k(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`\u0645\u062F\u062E\u0644\u0627\u062A \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644\u0629: \u064A\u0641\u062A\u0631\u0636 \u0625\u062F\u062E\u0627\u0644 instanceof ${n.expected}\u060C \u0648\u0644\u0643\u0646 \u062A\u0645 \u0625\u062F\u062E\u0627\u0644 ${c}`:`\u0645\u062F\u062E\u0644\u0627\u062A \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644\u0629: \u064A\u0641\u062A\u0631\u0636 \u0625\u062F\u062E\u0627\u0644 ${o}\u060C \u0648\u0644\u0643\u0646 \u062A\u0645 \u0625\u062F\u062E\u0627\u0644 ${c}`}case"invalid_value":return n.values.length===1?`\u0645\u062F\u062E\u0644\u0627\u062A \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644\u0629: \u064A\u0641\u062A\u0631\u0636 \u0625\u062F\u062E\u0627\u0644 ${y(n.values[0])}`:`\u0627\u062E\u062A\u064A\u0627\u0631 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644: \u064A\u062A\u0648\u0642\u0639 \u0627\u0646\u062A\u0642\u0627\u0621 \u0623\u062D\u062F \u0647\u0630\u0647 \u0627\u0644\u062E\u064A\u0627\u0631\u0627\u062A: ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?` \u0623\u0643\u0628\u0631 \u0645\u0646 \u0627\u0644\u0644\u0627\u0632\u0645: \u064A\u0641\u062A\u0631\u0636 \u0623\u0646 \u062A\u0643\u0648\u0646 ${n.origin??"\u0627\u0644\u0642\u064A\u0645\u0629"} ${o} ${n.maximum.toString()} ${a.unit??"\u0639\u0646\u0635\u0631"}`:`\u0623\u0643\u0628\u0631 \u0645\u0646 \u0627\u0644\u0644\u0627\u0632\u0645: \u064A\u0641\u062A\u0631\u0636 \u0623\u0646 \u062A\u0643\u0648\u0646 ${n.origin??"\u0627\u0644\u0642\u064A\u0645\u0629"} ${o} ${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`\u0623\u0635\u063A\u0631 \u0645\u0646 \u0627\u0644\u0644\u0627\u0632\u0645: \u064A\u0641\u062A\u0631\u0636 \u0644\u0640 ${n.origin} \u0623\u0646 \u064A\u0643\u0648\u0646 ${o} ${n.minimum.toString()} ${a.unit}`:`\u0623\u0635\u063A\u0631 \u0645\u0646 \u0627\u0644\u0644\u0627\u0632\u0645: \u064A\u0641\u062A\u0631\u0636 \u0644\u0640 ${n.origin} \u0623\u0646 \u064A\u0643\u0648\u0646 ${o} ${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u0646\u064E\u0635 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644: \u064A\u062C\u0628 \u0623\u0646 \u064A\u0628\u062F\u0623 \u0628\u0640 "${n.prefix}"`:o.format==="ends_with"?`\u0646\u064E\u0635 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644: \u064A\u062C\u0628 \u0623\u0646 \u064A\u0646\u062A\u0647\u064A \u0628\u0640 "${o.suffix}"`:o.format==="includes"?`\u0646\u064E\u0635 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644: \u064A\u062C\u0628 \u0623\u0646 \u064A\u062A\u0636\u0645\u0651\u064E\u0646 "${o.includes}"`:o.format==="regex"?`\u0646\u064E\u0635 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644: \u064A\u062C\u0628 \u0623\u0646 \u064A\u0637\u0627\u0628\u0642 \u0627\u0644\u0646\u0645\u0637 ${o.pattern}`:`${r[o.format]??n.format} \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644`}case"not_multiple_of":return`\u0631\u0642\u0645 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644: \u064A\u062C\u0628 \u0623\u0646 \u064A\u0643\u0648\u0646 \u0645\u0646 \u0645\u0636\u0627\u0639\u0641\u0627\u062A ${n.divisor}`;case"unrecognized_keys":return`\u0645\u0639\u0631\u0641${n.keys.length>1?"\u0627\u062A":""} \u063A\u0631\u064A\u0628${n.keys.length>1?"\u0629":""}: ${h(n.keys,"\u060C ")}`;case"invalid_key":return`\u0645\u0639\u0631\u0641 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644 \u0641\u064A ${n.origin}`;case"invalid_union":return"\u0645\u062F\u062E\u0644 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644";case"invalid_element":return`\u0645\u062F\u062E\u0644 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644 \u0641\u064A ${n.origin}`;default:return"\u0645\u062F\u062E\u0644 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644"}}};function cg(){return{localeError:OI()}}var TI=()=>{let t={string:{unit:"simvol",verb:"olmal\u0131d\u0131r"},file:{unit:"bayt",verb:"olmal\u0131d\u0131r"},array:{unit:"element",verb:"olmal\u0131d\u0131r"},set:{unit:"element",verb:"olmal\u0131d\u0131r"}};function e(n){return t[n]??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",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",jwt:"JWT",template_literal:"input"},i={nan:"NaN"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=k(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`Yanl\u0131\u015F d\u0259y\u0259r: g\xF6zl\u0259nil\u0259n instanceof ${n.expected}, daxil olan ${c}`:`Yanl\u0131\u015F d\u0259y\u0259r: g\xF6zl\u0259nil\u0259n ${o}, daxil olan ${c}`}case"invalid_value":return n.values.length===1?`Yanl\u0131\u015F d\u0259y\u0259r: g\xF6zl\u0259nil\u0259n ${y(n.values[0])}`:`Yanl\u0131\u015F se\xE7im: a\u015Fa\u011F\u0131dak\u0131lardan biri olmal\u0131d\u0131r: ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`\xC7ox b\xF6y\xFCk: g\xF6zl\u0259nil\u0259n ${n.origin??"d\u0259y\u0259r"} ${o}${n.maximum.toString()} ${a.unit??"element"}`:`\xC7ox b\xF6y\xFCk: g\xF6zl\u0259nil\u0259n ${n.origin??"d\u0259y\u0259r"} ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`\xC7ox ki\xE7ik: g\xF6zl\u0259nil\u0259n ${n.origin} ${o}${n.minimum.toString()} ${a.unit}`:`\xC7ox ki\xE7ik: g\xF6zl\u0259nil\u0259n ${n.origin} ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Yanl\u0131\u015F m\u0259tn: "${o.prefix}" il\u0259 ba\u015Flamal\u0131d\u0131r`:o.format==="ends_with"?`Yanl\u0131\u015F m\u0259tn: "${o.suffix}" il\u0259 bitm\u0259lidir`:o.format==="includes"?`Yanl\u0131\u015F m\u0259tn: "${o.includes}" daxil olmal\u0131d\u0131r`:o.format==="regex"?`Yanl\u0131\u015F m\u0259tn: ${o.pattern} \u015Fablonuna uy\u011Fun olmal\u0131d\u0131r`:`Yanl\u0131\u015F ${r[o.format]??n.format}`}case"not_multiple_of":return`Yanl\u0131\u015F \u0259d\u0259d: ${n.divisor} il\u0259 b\xF6l\xFCn\u0259 bil\u0259n olmal\u0131d\u0131r`;case"unrecognized_keys":return`Tan\u0131nmayan a\xE7ar${n.keys.length>1?"lar":""}: ${h(n.keys,", ")}`;case"invalid_key":return`${n.origin} daxilind\u0259 yanl\u0131\u015F a\xE7ar`;case"invalid_union":return"Yanl\u0131\u015F d\u0259y\u0259r";case"invalid_element":return`${n.origin} daxilind\u0259 yanl\u0131\u015F d\u0259y\u0259r`;default:return"Yanl\u0131\u015F d\u0259y\u0259r"}}};function lg(){return{localeError:TI()}}function ug(t,e,r,i){let n=Math.abs(t),o=n%10,a=n%100;return a>=11&&a<=19?i:o===1?e:o>=2&&o<=4?r:i}var AI=()=>{let t={string:{unit:{one:"\u0441\u0456\u043C\u0432\u0430\u043B",few:"\u0441\u0456\u043C\u0432\u0430\u043B\u044B",many:"\u0441\u0456\u043C\u0432\u0430\u043B\u0430\u045E"},verb:"\u043C\u0435\u0446\u044C"},array:{unit:{one:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442",few:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u044B",many:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u0430\u045E"},verb:"\u043C\u0435\u0446\u044C"},set:{unit:{one:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442",few:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u044B",many:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u0430\u045E"},verb:"\u043C\u0435\u0446\u044C"},file:{unit:{one:"\u0431\u0430\u0439\u0442",few:"\u0431\u0430\u0439\u0442\u044B",many:"\u0431\u0430\u0439\u0442\u0430\u045E"},verb:"\u043C\u0435\u0446\u044C"}};function e(n){return t[n]??null}let r={regex:"\u0443\u0432\u043E\u0434",email:"email \u0430\u0434\u0440\u0430\u0441",url:"URL",emoji:"\u044D\u043C\u043E\u0434\u0437\u0456",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO \u0434\u0430\u0442\u0430 \u0456 \u0447\u0430\u0441",date:"ISO \u0434\u0430\u0442\u0430",time:"ISO \u0447\u0430\u0441",duration:"ISO \u043F\u0440\u0430\u0446\u044F\u0433\u043B\u0430\u0441\u0446\u044C",ipv4:"IPv4 \u0430\u0434\u0440\u0430\u0441",ipv6:"IPv6 \u0430\u0434\u0440\u0430\u0441",cidrv4:"IPv4 \u0434\u044B\u044F\u043F\u0430\u0437\u043E\u043D",cidrv6:"IPv6 \u0434\u044B\u044F\u043F\u0430\u0437\u043E\u043D",base64:"\u0440\u0430\u0434\u043E\u043A \u0443 \u0444\u0430\u0440\u043C\u0430\u0446\u0435 base64",base64url:"\u0440\u0430\u0434\u043E\u043A \u0443 \u0444\u0430\u0440\u043C\u0430\u0446\u0435 base64url",json_string:"JSON \u0440\u0430\u0434\u043E\u043A",e164:"\u043D\u0443\u043C\u0430\u0440 E.164",jwt:"JWT",template_literal:"\u0443\u0432\u043E\u0434"},i={nan:"NaN",number:"\u043B\u0456\u043A",array:"\u043C\u0430\u0441\u0456\u045E"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=k(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u045E\u0432\u043E\u0434: \u0447\u0430\u043A\u0430\u045E\u0441\u044F instanceof ${n.expected}, \u0430\u0442\u0440\u044B\u043C\u0430\u043D\u0430 ${c}`:`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u045E\u0432\u043E\u0434: \u0447\u0430\u043A\u0430\u045E\u0441\u044F ${o}, \u0430\u0442\u0440\u044B\u043C\u0430\u043D\u0430 ${c}`}case"invalid_value":return n.values.length===1?`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u045E\u0432\u043E\u0434: \u0447\u0430\u043A\u0430\u043B\u0430\u0441\u044F ${y(n.values[0])}`:`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u0432\u0430\u0440\u044B\u044F\u043D\u0442: \u0447\u0430\u043A\u0430\u045E\u0441\u044F \u0430\u0434\u0437\u0456\u043D \u0437 ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);if(a){let c=Number(n.maximum),l=ug(c,a.unit.one,a.unit.few,a.unit.many);return`\u0417\u0430\u043D\u0430\u0434\u0442\u0430 \u0432\u044F\u043B\u0456\u043A\u0456: \u0447\u0430\u043A\u0430\u043B\u0430\u0441\u044F, \u0448\u0442\u043E ${n.origin??"\u0437\u043D\u0430\u0447\u044D\u043D\u043D\u0435"} \u043F\u0430\u0432\u0456\u043D\u043D\u0430 ${a.verb} ${o}${n.maximum.toString()} ${l}`}return`\u0417\u0430\u043D\u0430\u0434\u0442\u0430 \u0432\u044F\u043B\u0456\u043A\u0456: \u0447\u0430\u043A\u0430\u043B\u0430\u0441\u044F, \u0448\u0442\u043E ${n.origin??"\u0437\u043D\u0430\u0447\u044D\u043D\u043D\u0435"} \u043F\u0430\u0432\u0456\u043D\u043D\u0430 \u0431\u044B\u0446\u044C ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);if(a){let c=Number(n.minimum),l=ug(c,a.unit.one,a.unit.few,a.unit.many);return`\u0417\u0430\u043D\u0430\u0434\u0442\u0430 \u043C\u0430\u043B\u044B: \u0447\u0430\u043A\u0430\u043B\u0430\u0441\u044F, \u0448\u0442\u043E ${n.origin} \u043F\u0430\u0432\u0456\u043D\u043D\u0430 ${a.verb} ${o}${n.minimum.toString()} ${l}`}return`\u0417\u0430\u043D\u0430\u0434\u0442\u0430 \u043C\u0430\u043B\u044B: \u0447\u0430\u043A\u0430\u043B\u0430\u0441\u044F, \u0448\u0442\u043E ${n.origin} \u043F\u0430\u0432\u0456\u043D\u043D\u0430 \u0431\u044B\u0446\u044C ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u0440\u0430\u0434\u043E\u043A: \u043F\u0430\u0432\u0456\u043D\u0435\u043D \u043F\u0430\u0447\u044B\u043D\u0430\u0446\u0446\u0430 \u0437 "${o.prefix}"`:o.format==="ends_with"?`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u0440\u0430\u0434\u043E\u043A: \u043F\u0430\u0432\u0456\u043D\u0435\u043D \u0437\u0430\u043A\u0430\u043D\u0447\u0432\u0430\u0446\u0446\u0430 \u043D\u0430 "${o.suffix}"`:o.format==="includes"?`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u0440\u0430\u0434\u043E\u043A: \u043F\u0430\u0432\u0456\u043D\u0435\u043D \u0437\u043C\u044F\u0448\u0447\u0430\u0446\u044C "${o.includes}"`:o.format==="regex"?`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u0440\u0430\u0434\u043E\u043A: \u043F\u0430\u0432\u0456\u043D\u0435\u043D \u0430\u0434\u043F\u0430\u0432\u044F\u0434\u0430\u0446\u044C \u0448\u0430\u0431\u043B\u043E\u043D\u0443 ${o.pattern}`:`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B ${r[o.format]??n.format}`}case"not_multiple_of":return`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u043B\u0456\u043A: \u043F\u0430\u0432\u0456\u043D\u0435\u043D \u0431\u044B\u0446\u044C \u043A\u0440\u0430\u0442\u043D\u044B\u043C ${n.divisor}`;case"unrecognized_keys":return`\u041D\u0435\u0440\u0430\u0441\u043F\u0430\u0437\u043D\u0430\u043D\u044B ${n.keys.length>1?"\u043A\u043B\u044E\u0447\u044B":"\u043A\u043B\u044E\u0447"}: ${h(n.keys,", ")}`;case"invalid_key":return`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u043A\u043B\u044E\u0447 \u0443 ${n.origin}`;case"invalid_union":return"\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u045E\u0432\u043E\u0434";case"invalid_element":return`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u0430\u0435 \u0437\u043D\u0430\u0447\u044D\u043D\u043D\u0435 \u045E ${n.origin}`;default:return"\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u045E\u0432\u043E\u0434"}}};function dg(){return{localeError:AI()}}var RI=()=>{let t={string:{unit:"\u0441\u0438\u043C\u0432\u043E\u043B\u0430",verb:"\u0434\u0430 \u0441\u044A\u0434\u044A\u0440\u0436\u0430"},file:{unit:"\u0431\u0430\u0439\u0442\u0430",verb:"\u0434\u0430 \u0441\u044A\u0434\u044A\u0440\u0436\u0430"},array:{unit:"\u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0430",verb:"\u0434\u0430 \u0441\u044A\u0434\u044A\u0440\u0436\u0430"},set:{unit:"\u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0430",verb:"\u0434\u0430 \u0441\u044A\u0434\u044A\u0440\u0436\u0430"}};function e(n){return t[n]??null}let r={regex:"\u0432\u0445\u043E\u0434",email:"\u0438\u043C\u0435\u0439\u043B \u0430\u0434\u0440\u0435\u0441",url:"URL",emoji:"\u0435\u043C\u043E\u0434\u0436\u0438",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO \u0432\u0440\u0435\u043C\u0435",date:"ISO \u0434\u0430\u0442\u0430",time:"ISO \u0432\u0440\u0435\u043C\u0435",duration:"ISO \u043F\u0440\u043E\u0434\u044A\u043B\u0436\u0438\u0442\u0435\u043B\u043D\u043E\u0441\u0442",ipv4:"IPv4 \u0430\u0434\u0440\u0435\u0441",ipv6:"IPv6 \u0430\u0434\u0440\u0435\u0441",cidrv4:"IPv4 \u0434\u0438\u0430\u043F\u0430\u0437\u043E\u043D",cidrv6:"IPv6 \u0434\u0438\u0430\u043F\u0430\u0437\u043E\u043D",base64:"base64-\u043A\u043E\u0434\u0438\u0440\u0430\u043D \u043D\u0438\u0437",base64url:"base64url-\u043A\u043E\u0434\u0438\u0440\u0430\u043D \u043D\u0438\u0437",json_string:"JSON \u043D\u0438\u0437",e164:"E.164 \u043D\u043E\u043C\u0435\u0440",jwt:"JWT",template_literal:"\u0432\u0445\u043E\u0434"},i={nan:"NaN",number:"\u0447\u0438\u0441\u043B\u043E",array:"\u043C\u0430\u0441\u0438\u0432"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=k(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u0432\u0445\u043E\u0434: \u043E\u0447\u0430\u043A\u0432\u0430\u043D instanceof ${n.expected}, \u043F\u043E\u043B\u0443\u0447\u0435\u043D ${c}`:`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u0432\u0445\u043E\u0434: \u043E\u0447\u0430\u043A\u0432\u0430\u043D ${o}, \u043F\u043E\u043B\u0443\u0447\u0435\u043D ${c}`}case"invalid_value":return n.values.length===1?`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u0432\u0445\u043E\u0434: \u043E\u0447\u0430\u043A\u0432\u0430\u043D ${y(n.values[0])}`:`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u043D\u0430 \u043E\u043F\u0446\u0438\u044F: \u043E\u0447\u0430\u043A\u0432\u0430\u043D\u043E \u0435\u0434\u043D\u043E \u043E\u0442 ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`\u0422\u0432\u044A\u0440\u0434\u0435 \u0433\u043E\u043B\u044F\u043C\u043E: \u043E\u0447\u0430\u043A\u0432\u0430 \u0441\u0435 ${n.origin??"\u0441\u0442\u043E\u0439\u043D\u043E\u0441\u0442"} \u0434\u0430 \u0441\u044A\u0434\u044A\u0440\u0436\u0430 ${o}${n.maximum.toString()} ${a.unit??"\u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0430"}`:`\u0422\u0432\u044A\u0440\u0434\u0435 \u0433\u043E\u043B\u044F\u043C\u043E: \u043E\u0447\u0430\u043A\u0432\u0430 \u0441\u0435 ${n.origin??"\u0441\u0442\u043E\u0439\u043D\u043E\u0441\u0442"} \u0434\u0430 \u0431\u044A\u0434\u0435 ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`\u0422\u0432\u044A\u0440\u0434\u0435 \u043C\u0430\u043B\u043A\u043E: \u043E\u0447\u0430\u043A\u0432\u0430 \u0441\u0435 ${n.origin} \u0434\u0430 \u0441\u044A\u0434\u044A\u0440\u0436\u0430 ${o}${n.minimum.toString()} ${a.unit}`:`\u0422\u0432\u044A\u0440\u0434\u0435 \u043C\u0430\u043B\u043A\u043E: \u043E\u0447\u0430\u043A\u0432\u0430 \u0441\u0435 ${n.origin} \u0434\u0430 \u0431\u044A\u0434\u0435 ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;if(o.format==="starts_with")return`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u043D\u0438\u0437: \u0442\u0440\u044F\u0431\u0432\u0430 \u0434\u0430 \u0437\u0430\u043F\u043E\u0447\u0432\u0430 \u0441 "${o.prefix}"`;if(o.format==="ends_with")return`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u043D\u0438\u0437: \u0442\u0440\u044F\u0431\u0432\u0430 \u0434\u0430 \u0437\u0430\u0432\u044A\u0440\u0448\u0432\u0430 \u0441 "${o.suffix}"`;if(o.format==="includes")return`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u043D\u0438\u0437: \u0442\u0440\u044F\u0431\u0432\u0430 \u0434\u0430 \u0432\u043A\u043B\u044E\u0447\u0432\u0430 "${o.includes}"`;if(o.format==="regex")return`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u043D\u0438\u0437: \u0442\u0440\u044F\u0431\u0432\u0430 \u0434\u0430 \u0441\u044A\u0432\u043F\u0430\u0434\u0430 \u0441 ${o.pattern}`;let a="\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D";return o.format==="emoji"&&(a="\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u043D\u043E"),o.format==="datetime"&&(a="\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u043D\u043E"),o.format==="date"&&(a="\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u043D\u0430"),o.format==="time"&&(a="\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u043D\u043E"),o.format==="duration"&&(a="\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u043D\u0430"),`${a} ${r[o.format]??n.format}`}case"not_multiple_of":return`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u043D\u043E \u0447\u0438\u0441\u043B\u043E: \u0442\u0440\u044F\u0431\u0432\u0430 \u0434\u0430 \u0431\u044A\u0434\u0435 \u043A\u0440\u0430\u0442\u043D\u043E \u043D\u0430 ${n.divisor}`;case"unrecognized_keys":return`\u041D\u0435\u0440\u0430\u0437\u043F\u043E\u0437\u043D\u0430\u0442${n.keys.length>1?"\u0438":""} \u043A\u043B\u044E\u0447${n.keys.length>1?"\u043E\u0432\u0435":""}: ${h(n.keys,", ")}`;case"invalid_key":return`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u043A\u043B\u044E\u0447 \u0432 ${n.origin}`;case"invalid_union":return"\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u0432\u0445\u043E\u0434";case"invalid_element":return`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u043D\u0430 \u0441\u0442\u043E\u0439\u043D\u043E\u0441\u0442 \u0432 ${n.origin}`;default:return"\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u0432\u0445\u043E\u0434"}}};function pg(){return{localeError:RI()}}var CI=()=>{let t={string:{unit:"car\xE0cters",verb:"contenir"},file:{unit:"bytes",verb:"contenir"},array:{unit:"elements",verb:"contenir"},set:{unit:"elements",verb:"contenir"}};function e(n){return t[n]??null}let r={regex:"entrada",email:"adre\xE7a electr\xF2nica",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:"data i hora ISO",date:"data ISO",time:"hora ISO",duration:"durada ISO",ipv4:"adre\xE7a IPv4",ipv6:"adre\xE7a IPv6",cidrv4:"rang IPv4",cidrv6:"rang IPv6",base64:"cadena codificada en base64",base64url:"cadena codificada en base64url",json_string:"cadena JSON",e164:"n\xFAmero E.164",jwt:"JWT",template_literal:"entrada"},i={nan:"NaN"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=k(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`Tipus inv\xE0lid: s'esperava instanceof ${n.expected}, s'ha rebut ${c}`:`Tipus inv\xE0lid: s'esperava ${o}, s'ha rebut ${c}`}case"invalid_value":return n.values.length===1?`Valor inv\xE0lid: s'esperava ${y(n.values[0])}`:`Opci\xF3 inv\xE0lida: s'esperava una de ${h(n.values," o ")}`;case"too_big":{let o=n.inclusive?"com a m\xE0xim":"menys de",a=e(n.origin);return a?`Massa gran: s'esperava que ${n.origin??"el valor"} contingu\xE9s ${o} ${n.maximum.toString()} ${a.unit??"elements"}`:`Massa gran: s'esperava que ${n.origin??"el valor"} fos ${o} ${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?"com a m\xEDnim":"m\xE9s de",a=e(n.origin);return a?`Massa petit: s'esperava que ${n.origin} contingu\xE9s ${o} ${n.minimum.toString()} ${a.unit}`:`Massa petit: s'esperava que ${n.origin} fos ${o} ${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Format inv\xE0lid: ha de comen\xE7ar amb "${o.prefix}"`:o.format==="ends_with"?`Format inv\xE0lid: ha d'acabar amb "${o.suffix}"`:o.format==="includes"?`Format inv\xE0lid: ha d'incloure "${o.includes}"`:o.format==="regex"?`Format inv\xE0lid: ha de coincidir amb el patr\xF3 ${o.pattern}`:`Format inv\xE0lid per a ${r[o.format]??n.format}`}case"not_multiple_of":return`N\xFAmero inv\xE0lid: ha de ser m\xFAltiple de ${n.divisor}`;case"unrecognized_keys":return`Clau${n.keys.length>1?"s":""} no reconeguda${n.keys.length>1?"s":""}: ${h(n.keys,", ")}`;case"invalid_key":return`Clau inv\xE0lida a ${n.origin}`;case"invalid_union":return"Entrada inv\xE0lida";case"invalid_element":return`Element inv\xE0lid a ${n.origin}`;default:return"Entrada inv\xE0lida"}}};function mg(){return{localeError:CI()}}var PI=()=>{let t={string:{unit:"znak\u016F",verb:"m\xEDt"},file:{unit:"bajt\u016F",verb:"m\xEDt"},array:{unit:"prvk\u016F",verb:"m\xEDt"},set:{unit:"prvk\u016F",verb:"m\xEDt"}};function e(n){return t[n]??null}let r={regex:"regul\xE1rn\xED v\xFDraz",email:"e-mailov\xE1 adresa",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:"datum a \u010Das ve form\xE1tu ISO",date:"datum ve form\xE1tu ISO",time:"\u010Das ve form\xE1tu ISO",duration:"doba trv\xE1n\xED ISO",ipv4:"IPv4 adresa",ipv6:"IPv6 adresa",cidrv4:"rozsah IPv4",cidrv6:"rozsah IPv6",base64:"\u0159et\u011Bzec zak\xF3dovan\xFD ve form\xE1tu base64",base64url:"\u0159et\u011Bzec zak\xF3dovan\xFD ve form\xE1tu base64url",json_string:"\u0159et\u011Bzec ve form\xE1tu JSON",e164:"\u010D\xEDslo E.164",jwt:"JWT",template_literal:"vstup"},i={nan:"NaN",number:"\u010D\xEDslo",string:"\u0159et\u011Bzec",function:"funkce",array:"pole"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=k(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`Neplatn\xFD vstup: o\u010Dek\xE1v\xE1no instanceof ${n.expected}, obdr\u017Eeno ${c}`:`Neplatn\xFD vstup: o\u010Dek\xE1v\xE1no ${o}, obdr\u017Eeno ${c}`}case"invalid_value":return n.values.length===1?`Neplatn\xFD vstup: o\u010Dek\xE1v\xE1no ${y(n.values[0])}`:`Neplatn\xE1 mo\u017Enost: o\u010Dek\xE1v\xE1na jedna z hodnot ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`Hodnota je p\u0159\xEDli\u0161 velk\xE1: ${n.origin??"hodnota"} mus\xED m\xEDt ${o}${n.maximum.toString()} ${a.unit??"prvk\u016F"}`:`Hodnota je p\u0159\xEDli\u0161 velk\xE1: ${n.origin??"hodnota"} mus\xED b\xFDt ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`Hodnota je p\u0159\xEDli\u0161 mal\xE1: ${n.origin??"hodnota"} mus\xED m\xEDt ${o}${n.minimum.toString()} ${a.unit??"prvk\u016F"}`:`Hodnota je p\u0159\xEDli\u0161 mal\xE1: ${n.origin??"hodnota"} mus\xED b\xFDt ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Neplatn\xFD \u0159et\u011Bzec: mus\xED za\u010D\xEDnat na "${o.prefix}"`:o.format==="ends_with"?`Neplatn\xFD \u0159et\u011Bzec: mus\xED kon\u010Dit na "${o.suffix}"`:o.format==="includes"?`Neplatn\xFD \u0159et\u011Bzec: mus\xED obsahovat "${o.includes}"`:o.format==="regex"?`Neplatn\xFD \u0159et\u011Bzec: mus\xED odpov\xEDdat vzoru ${o.pattern}`:`Neplatn\xFD form\xE1t ${r[o.format]??n.format}`}case"not_multiple_of":return`Neplatn\xE9 \u010D\xEDslo: mus\xED b\xFDt n\xE1sobkem ${n.divisor}`;case"unrecognized_keys":return`Nezn\xE1m\xE9 kl\xED\u010De: ${h(n.keys,", ")}`;case"invalid_key":return`Neplatn\xFD kl\xED\u010D v ${n.origin}`;case"invalid_union":return"Neplatn\xFD vstup";case"invalid_element":return`Neplatn\xE1 hodnota v ${n.origin}`;default:return"Neplatn\xFD vstup"}}};function fg(){return{localeError:PI()}}var NI=()=>{let t={string:{unit:"tegn",verb:"havde"},file:{unit:"bytes",verb:"havde"},array:{unit:"elementer",verb:"indeholdt"},set:{unit:"elementer",verb:"indeholdt"}};function e(n){return t[n]??null}let r={regex:"input",email:"e-mailadresse",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 dato- og klokkesl\xE6t",date:"ISO-dato",time:"ISO-klokkesl\xE6t",duration:"ISO-varighed",ipv4:"IPv4-omr\xE5de",ipv6:"IPv6-omr\xE5de",cidrv4:"IPv4-spektrum",cidrv6:"IPv6-spektrum",base64:"base64-kodet streng",base64url:"base64url-kodet streng",json_string:"JSON-streng",e164:"E.164-nummer",jwt:"JWT",template_literal:"input"},i={nan:"NaN",string:"streng",number:"tal",boolean:"boolean",array:"liste",object:"objekt",set:"s\xE6t",file:"fil"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=k(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`Ugyldigt input: forventede instanceof ${n.expected}, fik ${c}`:`Ugyldigt input: forventede ${o}, fik ${c}`}case"invalid_value":return n.values.length===1?`Ugyldig v\xE6rdi: forventede ${y(n.values[0])}`:`Ugyldigt valg: forventede en af f\xF8lgende ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin),c=i[n.origin]??n.origin;return a?`For stor: forventede ${c??"value"} ${a.verb} ${o} ${n.maximum.toString()} ${a.unit??"elementer"}`:`For stor: forventede ${c??"value"} havde ${o} ${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin),c=i[n.origin]??n.origin;return a?`For lille: forventede ${c} ${a.verb} ${o} ${n.minimum.toString()} ${a.unit}`:`For lille: forventede ${c} havde ${o} ${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Ugyldig streng: skal starte med "${o.prefix}"`:o.format==="ends_with"?`Ugyldig streng: skal ende med "${o.suffix}"`:o.format==="includes"?`Ugyldig streng: skal indeholde "${o.includes}"`:o.format==="regex"?`Ugyldig streng: skal matche m\xF8nsteret ${o.pattern}`:`Ugyldig ${r[o.format]??n.format}`}case"not_multiple_of":return`Ugyldigt tal: skal v\xE6re deleligt med ${n.divisor}`;case"unrecognized_keys":return`${n.keys.length>1?"Ukendte n\xF8gler":"Ukendt n\xF8gle"}: ${h(n.keys,", ")}`;case"invalid_key":return`Ugyldig n\xF8gle i ${n.origin}`;case"invalid_union":return"Ugyldigt input: matcher ingen af de tilladte typer";case"invalid_element":return`Ugyldig v\xE6rdi i ${n.origin}`;default:return"Ugyldigt input"}}};function gg(){return{localeError:NI()}}var DI=()=>{let t={string:{unit:"Zeichen",verb:"zu haben"},file:{unit:"Bytes",verb:"zu haben"},array:{unit:"Elemente",verb:"zu haben"},set:{unit:"Elemente",verb:"zu haben"}};function e(n){return t[n]??null}let r={regex:"Eingabe",email:"E-Mail-Adresse",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-Datum und -Uhrzeit",date:"ISO-Datum",time:"ISO-Uhrzeit",duration:"ISO-Dauer",ipv4:"IPv4-Adresse",ipv6:"IPv6-Adresse",cidrv4:"IPv4-Bereich",cidrv6:"IPv6-Bereich",base64:"Base64-codierter String",base64url:"Base64-URL-codierter String",json_string:"JSON-String",e164:"E.164-Nummer",jwt:"JWT",template_literal:"Eingabe"},i={nan:"NaN",number:"Zahl",array:"Array"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=k(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`Ung\xFCltige Eingabe: erwartet instanceof ${n.expected}, erhalten ${c}`:`Ung\xFCltige Eingabe: erwartet ${o}, erhalten ${c}`}case"invalid_value":return n.values.length===1?`Ung\xFCltige Eingabe: erwartet ${y(n.values[0])}`:`Ung\xFCltige Option: erwartet eine von ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`Zu gro\xDF: erwartet, dass ${n.origin??"Wert"} ${o}${n.maximum.toString()} ${a.unit??"Elemente"} hat`:`Zu gro\xDF: erwartet, dass ${n.origin??"Wert"} ${o}${n.maximum.toString()} ist`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`Zu klein: erwartet, dass ${n.origin} ${o}${n.minimum.toString()} ${a.unit} hat`:`Zu klein: erwartet, dass ${n.origin} ${o}${n.minimum.toString()} ist`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Ung\xFCltiger String: muss mit "${o.prefix}" beginnen`:o.format==="ends_with"?`Ung\xFCltiger String: muss mit "${o.suffix}" enden`:o.format==="includes"?`Ung\xFCltiger String: muss "${o.includes}" enthalten`:o.format==="regex"?`Ung\xFCltiger String: muss dem Muster ${o.pattern} entsprechen`:`Ung\xFCltig: ${r[o.format]??n.format}`}case"not_multiple_of":return`Ung\xFCltige Zahl: muss ein Vielfaches von ${n.divisor} sein`;case"unrecognized_keys":return`${n.keys.length>1?"Unbekannte Schl\xFCssel":"Unbekannter Schl\xFCssel"}: ${h(n.keys,", ")}`;case"invalid_key":return`Ung\xFCltiger Schl\xFCssel in ${n.origin}`;case"invalid_union":return"Ung\xFCltige Eingabe";case"invalid_element":return`Ung\xFCltiger Wert in ${n.origin}`;default:return"Ung\xFCltige Eingabe"}}};function hg(){return{localeError:DI()}}var UI=()=>{let t={string:{unit:"\u03C7\u03B1\u03C1\u03B1\u03BA\u03C4\u03AE\u03C1\u03B5\u03C2",verb:"\u03BD\u03B1 \u03AD\u03C7\u03B5\u03B9"},file:{unit:"bytes",verb:"\u03BD\u03B1 \u03AD\u03C7\u03B5\u03B9"},array:{unit:"\u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03B1",verb:"\u03BD\u03B1 \u03AD\u03C7\u03B5\u03B9"},set:{unit:"\u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03B1",verb:"\u03BD\u03B1 \u03AD\u03C7\u03B5\u03B9"},map:{unit:"\u03BA\u03B1\u03C4\u03B1\u03C7\u03C9\u03C1\u03AE\u03C3\u03B5\u03B9\u03C2",verb:"\u03BD\u03B1 \u03AD\u03C7\u03B5\u03B9"}};function e(n){return t[n]??null}let r={regex:"\u03B5\u03AF\u03C3\u03BF\u03B4\u03BF\u03C2",email:"\u03B4\u03B9\u03B5\u03CD\u03B8\u03C5\u03BD\u03C3\u03B7 email",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 \u03B7\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1 \u03BA\u03B1\u03B9 \u03CE\u03C1\u03B1",date:"ISO \u03B7\u03BC\u03B5\u03C1\u03BF\u03BC\u03B7\u03BD\u03AF\u03B1",time:"ISO \u03CE\u03C1\u03B1",duration:"ISO \u03B4\u03B9\u03AC\u03C1\u03BA\u03B5\u03B9\u03B1",ipv4:"\u03B4\u03B9\u03B5\u03CD\u03B8\u03C5\u03BD\u03C3\u03B7 IPv4",ipv6:"\u03B4\u03B9\u03B5\u03CD\u03B8\u03C5\u03BD\u03C3\u03B7 IPv6",mac:"\u03B4\u03B9\u03B5\u03CD\u03B8\u03C5\u03BD\u03C3\u03B7 MAC",cidrv4:"\u03B5\u03CD\u03C1\u03BF\u03C2 IPv4",cidrv6:"\u03B5\u03CD\u03C1\u03BF\u03C2 IPv6",base64:"\u03C3\u03C5\u03BC\u03B2\u03BF\u03BB\u03BF\u03C3\u03B5\u03B9\u03C1\u03AC \u03BA\u03C9\u03B4\u03B9\u03BA\u03BF\u03C0\u03BF\u03B9\u03B7\u03BC\u03AD\u03BD\u03B7 \u03C3\u03B5 base64",base64url:"\u03C3\u03C5\u03BC\u03B2\u03BF\u03BB\u03BF\u03C3\u03B5\u03B9\u03C1\u03AC \u03BA\u03C9\u03B4\u03B9\u03BA\u03BF\u03C0\u03BF\u03B9\u03B7\u03BC\u03AD\u03BD\u03B7 \u03C3\u03B5 base64url",json_string:"\u03C3\u03C5\u03BC\u03B2\u03BF\u03BB\u03BF\u03C3\u03B5\u03B9\u03C1\u03AC JSON",e164:"\u03B1\u03C1\u03B9\u03B8\u03BC\u03CC\u03C2 E.164",jwt:"JWT",template_literal:"\u03B5\u03AF\u03C3\u03BF\u03B4\u03BF\u03C2"},i={nan:"NaN"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=k(n.input),c=i[a]??a;return typeof n.expected=="string"&&/^[A-Z]/.test(n.expected)?`\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03B5\u03AF\u03C3\u03BF\u03B4\u03BF\u03C2: \u03B1\u03BD\u03B1\u03BC\u03B5\u03BD\u03CC\u03C4\u03B1\u03BD instanceof ${n.expected}, \u03BB\u03AE\u03C6\u03B8\u03B7\u03BA\u03B5 ${c}`:`\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03B5\u03AF\u03C3\u03BF\u03B4\u03BF\u03C2: \u03B1\u03BD\u03B1\u03BC\u03B5\u03BD\u03CC\u03C4\u03B1\u03BD ${o}, \u03BB\u03AE\u03C6\u03B8\u03B7\u03BA\u03B5 ${c}`}case"invalid_value":return n.values.length===1?`\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03B5\u03AF\u03C3\u03BF\u03B4\u03BF\u03C2: \u03B1\u03BD\u03B1\u03BC\u03B5\u03BD\u03CC\u03C4\u03B1\u03BD ${y(n.values[0])}`:`\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03B5\u03C0\u03B9\u03BB\u03BF\u03B3\u03AE: \u03B1\u03BD\u03B1\u03BC\u03B5\u03BD\u03CC\u03C4\u03B1\u03BD \u03AD\u03BD\u03B1 \u03B1\u03C0\u03CC ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`\u03A0\u03BF\u03BB\u03CD \u03BC\u03B5\u03B3\u03AC\u03BB\u03BF: \u03B1\u03BD\u03B1\u03BC\u03B5\u03BD\u03CC\u03C4\u03B1\u03BD ${n.origin??"\u03C4\u03B9\u03BC\u03AE"} \u03BD\u03B1 \u03AD\u03C7\u03B5\u03B9 ${o}${n.maximum.toString()} ${a.unit??"\u03C3\u03C4\u03BF\u03B9\u03C7\u03B5\u03AF\u03B1"}`:`\u03A0\u03BF\u03BB\u03CD \u03BC\u03B5\u03B3\u03AC\u03BB\u03BF: \u03B1\u03BD\u03B1\u03BC\u03B5\u03BD\u03CC\u03C4\u03B1\u03BD ${n.origin??"\u03C4\u03B9\u03BC\u03AE"} \u03BD\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9 ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`\u03A0\u03BF\u03BB\u03CD \u03BC\u03B9\u03BA\u03C1\u03CC: \u03B1\u03BD\u03B1\u03BC\u03B5\u03BD\u03CC\u03C4\u03B1\u03BD ${n.origin} \u03BD\u03B1 \u03AD\u03C7\u03B5\u03B9 ${o}${n.minimum.toString()} ${a.unit}`:`\u03A0\u03BF\u03BB\u03CD \u03BC\u03B9\u03BA\u03C1\u03CC: \u03B1\u03BD\u03B1\u03BC\u03B5\u03BD\u03CC\u03C4\u03B1\u03BD ${n.origin} \u03BD\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9 ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03C3\u03C5\u03BC\u03B2\u03BF\u03BB\u03BF\u03C3\u03B5\u03B9\u03C1\u03AC: \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03BE\u03B5\u03BA\u03B9\u03BD\u03AC \u03BC\u03B5 "${o.prefix}"`:o.format==="ends_with"?`\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03C3\u03C5\u03BC\u03B2\u03BF\u03BB\u03BF\u03C3\u03B5\u03B9\u03C1\u03AC: \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03C4\u03B5\u03BB\u03B5\u03B9\u03CE\u03BD\u03B5\u03B9 \u03BC\u03B5 "${o.suffix}"`:o.format==="includes"?`\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03C3\u03C5\u03BC\u03B2\u03BF\u03BB\u03BF\u03C3\u03B5\u03B9\u03C1\u03AC: \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03C0\u03B5\u03C1\u03B9\u03AD\u03C7\u03B5\u03B9 "${o.includes}"`:o.format==="regex"?`\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03C3\u03C5\u03BC\u03B2\u03BF\u03BB\u03BF\u03C3\u03B5\u03B9\u03C1\u03AC: \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03C4\u03B1\u03B9\u03C1\u03B9\u03AC\u03B6\u03B5\u03B9 \u03BC\u03B5 \u03C4\u03BF \u03BC\u03BF\u03C4\u03AF\u03B2\u03BF ${o.pattern}`:`\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03BF: ${r[o.format]??n.format}`}case"not_multiple_of":return`\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03BF\u03C2 \u03B1\u03C1\u03B9\u03B8\u03BC\u03CC\u03C2: \u03C0\u03C1\u03AD\u03C0\u03B5\u03B9 \u03BD\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9 \u03C0\u03BF\u03BB\u03BB\u03B1\u03C0\u03BB\u03AC\u03C3\u03B9\u03BF \u03C4\u03BF\u03C5 ${n.divisor}`;case"unrecognized_keys":return`\u0386\u03B3\u03BD\u03C9\u03C3\u03C4${n.keys.length>1?"\u03B1":"\u03BF"} \u03BA\u03BB\u03B5\u03B9\u03B4${n.keys.length>1?"\u03B9\u03AC":"\u03AF"}: ${h(n.keys,", ")}`;case"invalid_key":return`\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03BF \u03BA\u03BB\u03B5\u03B9\u03B4\u03AF \u03C3\u03C4\u03BF ${n.origin}`;case"invalid_union":return"\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03B5\u03AF\u03C3\u03BF\u03B4\u03BF\u03C2";case"invalid_element":return`\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03C4\u03B9\u03BC\u03AE \u03C3\u03C4\u03BF ${n.origin}`;default:return"\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03B5\u03AF\u03C3\u03BF\u03B4\u03BF\u03C2"}}};function bg(){return{localeError:UI()}}var zI=()=>{let t={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 e(n){return t[n]??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",jwt:"JWT",template_literal:"input"},i={nan:"NaN"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=k(n.input),c=i[a]??a;return`Invalid input: expected ${o}, received ${c}`}case"invalid_value":return n.values.length===1?`Invalid input: expected ${y(n.values[0])}`:`Invalid option: expected one of ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`Too big: expected ${n.origin??"value"} to have ${o}${n.maximum.toString()} ${a.unit??"elements"}`:`Too big: expected ${n.origin??"value"} to be ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`Too small: expected ${n.origin} to have ${o}${n.minimum.toString()} ${a.unit}`:`Too small: expected ${n.origin} to be ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Invalid string: must start with "${o.prefix}"`:o.format==="ends_with"?`Invalid string: must end with "${o.suffix}"`:o.format==="includes"?`Invalid string: must include "${o.includes}"`:o.format==="regex"?`Invalid string: must match pattern ${o.pattern}`:`Invalid ${r[o.format]??n.format}`}case"not_multiple_of":return`Invalid number: must be a multiple of ${n.divisor}`;case"unrecognized_keys":return`Unrecognized key${n.keys.length>1?"s":""}: ${h(n.keys,", ")}`;case"invalid_key":return`Invalid key in ${n.origin}`;case"invalid_union":return n.options&&Array.isArray(n.options)&&n.options.length>0?`Invalid discriminator value. Expected ${n.options.map(a=>`'${a}'`).join(" | ")}`:"Invalid input";case"invalid_element":return`Invalid value in ${n.origin}`;default:return"Invalid input"}}};function Oi(){return{localeError:zI()}}var jI=()=>{let t={string:{unit:"karaktrojn",verb:"havi"},file:{unit:"bajtojn",verb:"havi"},array:{unit:"elementojn",verb:"havi"},set:{unit:"elementojn",verb:"havi"}};function e(n){return t[n]??null}let r={regex:"enigo",email:"retadreso",url:"URL",emoji:"emo\u011Dio",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO-datotempo",date:"ISO-dato",time:"ISO-tempo",duration:"ISO-da\u016Dro",ipv4:"IPv4-adreso",ipv6:"IPv6-adreso",cidrv4:"IPv4-rango",cidrv6:"IPv6-rango",base64:"64-ume kodita karaktraro",base64url:"URL-64-ume kodita karaktraro",json_string:"JSON-karaktraro",e164:"E.164-nombro",jwt:"JWT",template_literal:"enigo"},i={nan:"NaN",number:"nombro",array:"tabelo",null:"senvalora"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=k(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`Nevalida enigo: atendi\u011Dis instanceof ${n.expected}, ricevi\u011Dis ${c}`:`Nevalida enigo: atendi\u011Dis ${o}, ricevi\u011Dis ${c}`}case"invalid_value":return n.values.length===1?`Nevalida enigo: atendi\u011Dis ${y(n.values[0])}`:`Nevalida opcio: atendi\u011Dis unu el ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`Tro granda: atendi\u011Dis ke ${n.origin??"valoro"} havu ${o}${n.maximum.toString()} ${a.unit??"elementojn"}`:`Tro granda: atendi\u011Dis ke ${n.origin??"valoro"} havu ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`Tro malgranda: atendi\u011Dis ke ${n.origin} havu ${o}${n.minimum.toString()} ${a.unit}`:`Tro malgranda: atendi\u011Dis ke ${n.origin} estu ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Nevalida karaktraro: devas komenci\u011Di per "${o.prefix}"`:o.format==="ends_with"?`Nevalida karaktraro: devas fini\u011Di per "${o.suffix}"`:o.format==="includes"?`Nevalida karaktraro: devas inkluzivi "${o.includes}"`:o.format==="regex"?`Nevalida karaktraro: devas kongrui kun la modelo ${o.pattern}`:`Nevalida ${r[o.format]??n.format}`}case"not_multiple_of":return`Nevalida nombro: devas esti oblo de ${n.divisor}`;case"unrecognized_keys":return`Nekonata${n.keys.length>1?"j":""} \u015Dlosilo${n.keys.length>1?"j":""}: ${h(n.keys,", ")}`;case"invalid_key":return`Nevalida \u015Dlosilo en ${n.origin}`;case"invalid_union":return"Nevalida enigo";case"invalid_element":return`Nevalida valoro en ${n.origin}`;default:return"Nevalida enigo"}}};function vg(){return{localeError:jI()}}var LI=()=>{let t={string:{unit:"caracteres",verb:"tener"},file:{unit:"bytes",verb:"tener"},array:{unit:"elementos",verb:"tener"},set:{unit:"elementos",verb:"tener"}};function e(n){return t[n]??null}let r={regex:"entrada",email:"direcci\xF3n de correo electr\xF3nico",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:"fecha y hora ISO",date:"fecha ISO",time:"hora ISO",duration:"duraci\xF3n ISO",ipv4:"direcci\xF3n IPv4",ipv6:"direcci\xF3n IPv6",cidrv4:"rango IPv4",cidrv6:"rango IPv6",base64:"cadena codificada en base64",base64url:"URL codificada en base64",json_string:"cadena JSON",e164:"n\xFAmero E.164",jwt:"JWT",template_literal:"entrada"},i={nan:"NaN",string:"texto",number:"n\xFAmero",boolean:"booleano",array:"arreglo",object:"objeto",set:"conjunto",file:"archivo",date:"fecha",bigint:"n\xFAmero grande",symbol:"s\xEDmbolo",undefined:"indefinido",null:"nulo",function:"funci\xF3n",map:"mapa",record:"registro",tuple:"tupla",enum:"enumeraci\xF3n",union:"uni\xF3n",literal:"literal",promise:"promesa",void:"vac\xEDo",never:"nunca",unknown:"desconocido",any:"cualquiera"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=k(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`Entrada inv\xE1lida: se esperaba instanceof ${n.expected}, recibido ${c}`:`Entrada inv\xE1lida: se esperaba ${o}, recibido ${c}`}case"invalid_value":return n.values.length===1?`Entrada inv\xE1lida: se esperaba ${y(n.values[0])}`:`Opci\xF3n inv\xE1lida: se esperaba una de ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin),c=i[n.origin]??n.origin;return a?`Demasiado grande: se esperaba que ${c??"valor"} tuviera ${o}${n.maximum.toString()} ${a.unit??"elementos"}`:`Demasiado grande: se esperaba que ${c??"valor"} fuera ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin),c=i[n.origin]??n.origin;return a?`Demasiado peque\xF1o: se esperaba que ${c} tuviera ${o}${n.minimum.toString()} ${a.unit}`:`Demasiado peque\xF1o: se esperaba que ${c} fuera ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Cadena inv\xE1lida: debe comenzar con "${o.prefix}"`:o.format==="ends_with"?`Cadena inv\xE1lida: debe terminar en "${o.suffix}"`:o.format==="includes"?`Cadena inv\xE1lida: debe incluir "${o.includes}"`:o.format==="regex"?`Cadena inv\xE1lida: debe coincidir con el patr\xF3n ${o.pattern}`:`Inv\xE1lido ${r[o.format]??n.format}`}case"not_multiple_of":return`N\xFAmero inv\xE1lido: debe ser m\xFAltiplo de ${n.divisor}`;case"unrecognized_keys":return`Llave${n.keys.length>1?"s":""} desconocida${n.keys.length>1?"s":""}: ${h(n.keys,", ")}`;case"invalid_key":return`Llave inv\xE1lida en ${i[n.origin]??n.origin}`;case"invalid_union":return"Entrada inv\xE1lida";case"invalid_element":return`Valor inv\xE1lido en ${i[n.origin]??n.origin}`;default:return"Entrada inv\xE1lida"}}};function _g(){return{localeError:LI()}}var MI=()=>{let t={string:{unit:"\u06A9\u0627\u0631\u0627\u06A9\u062A\u0631",verb:"\u062F\u0627\u0634\u062A\u0647 \u0628\u0627\u0634\u062F"},file:{unit:"\u0628\u0627\u06CC\u062A",verb:"\u062F\u0627\u0634\u062A\u0647 \u0628\u0627\u0634\u062F"},array:{unit:"\u0622\u06CC\u062A\u0645",verb:"\u062F\u0627\u0634\u062A\u0647 \u0628\u0627\u0634\u062F"},set:{unit:"\u0622\u06CC\u062A\u0645",verb:"\u062F\u0627\u0634\u062A\u0647 \u0628\u0627\u0634\u062F"}};function e(n){return t[n]??null}let r={regex:"\u0648\u0631\u0648\u062F\u06CC",email:"\u0622\u062F\u0631\u0633 \u0627\u06CC\u0645\u06CC\u0644",url:"URL",emoji:"\u0627\u06CC\u0645\u0648\u062C\u06CC",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"\u062A\u0627\u0631\u06CC\u062E \u0648 \u0632\u0645\u0627\u0646 \u0627\u06CC\u0632\u0648",date:"\u062A\u0627\u0631\u06CC\u062E \u0627\u06CC\u0632\u0648",time:"\u0632\u0645\u0627\u0646 \u0627\u06CC\u0632\u0648",duration:"\u0645\u062F\u062A \u0632\u0645\u0627\u0646 \u0627\u06CC\u0632\u0648",ipv4:"IPv4 \u0622\u062F\u0631\u0633",ipv6:"IPv6 \u0622\u062F\u0631\u0633",cidrv4:"IPv4 \u062F\u0627\u0645\u0646\u0647",cidrv6:"IPv6 \u062F\u0627\u0645\u0646\u0647",base64:"base64-encoded \u0631\u0634\u062A\u0647",base64url:"base64url-encoded \u0631\u0634\u062A\u0647",json_string:"JSON \u0631\u0634\u062A\u0647",e164:"E.164 \u0639\u062F\u062F",jwt:"JWT",template_literal:"\u0648\u0631\u0648\u062F\u06CC"},i={nan:"NaN",number:"\u0639\u062F\u062F",array:"\u0622\u0631\u0627\u06CC\u0647"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=k(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`\u0648\u0631\u0648\u062F\u06CC \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0645\u06CC\u200C\u0628\u0627\u06CC\u0633\u062A instanceof ${n.expected} \u0645\u06CC\u200C\u0628\u0648\u062F\u060C ${c} \u062F\u0631\u06CC\u0627\u0641\u062A \u0634\u062F`:`\u0648\u0631\u0648\u062F\u06CC \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0645\u06CC\u200C\u0628\u0627\u06CC\u0633\u062A ${o} \u0645\u06CC\u200C\u0628\u0648\u062F\u060C ${c} \u062F\u0631\u06CC\u0627\u0641\u062A \u0634\u062F`}case"invalid_value":return n.values.length===1?`\u0648\u0631\u0648\u062F\u06CC \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0645\u06CC\u200C\u0628\u0627\u06CC\u0633\u062A ${y(n.values[0])} \u0645\u06CC\u200C\u0628\u0648\u062F`:`\u06AF\u0632\u06CC\u0646\u0647 \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0645\u06CC\u200C\u0628\u0627\u06CC\u0633\u062A \u06CC\u06A9\u06CC \u0627\u0632 ${h(n.values,"|")} \u0645\u06CC\u200C\u0628\u0648\u062F`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`\u062E\u06CC\u0644\u06CC \u0628\u0632\u0631\u06AF: ${n.origin??"\u0645\u0642\u062F\u0627\u0631"} \u0628\u0627\u06CC\u062F ${o}${n.maximum.toString()} ${a.unit??"\u0639\u0646\u0635\u0631"} \u0628\u0627\u0634\u062F`:`\u062E\u06CC\u0644\u06CC \u0628\u0632\u0631\u06AF: ${n.origin??"\u0645\u0642\u062F\u0627\u0631"} \u0628\u0627\u06CC\u062F ${o}${n.maximum.toString()} \u0628\u0627\u0634\u062F`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`\u062E\u06CC\u0644\u06CC \u06A9\u0648\u0686\u06A9: ${n.origin} \u0628\u0627\u06CC\u062F ${o}${n.minimum.toString()} ${a.unit} \u0628\u0627\u0634\u062F`:`\u062E\u06CC\u0644\u06CC \u06A9\u0648\u0686\u06A9: ${n.origin} \u0628\u0627\u06CC\u062F ${o}${n.minimum.toString()} \u0628\u0627\u0634\u062F`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u0631\u0634\u062A\u0647 \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0628\u0627\u06CC\u062F \u0628\u0627 "${o.prefix}" \u0634\u0631\u0648\u0639 \u0634\u0648\u062F`:o.format==="ends_with"?`\u0631\u0634\u062A\u0647 \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0628\u0627\u06CC\u062F \u0628\u0627 "${o.suffix}" \u062A\u0645\u0627\u0645 \u0634\u0648\u062F`:o.format==="includes"?`\u0631\u0634\u062A\u0647 \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0628\u0627\u06CC\u062F \u0634\u0627\u0645\u0644 "${o.includes}" \u0628\u0627\u0634\u062F`:o.format==="regex"?`\u0631\u0634\u062A\u0647 \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0628\u0627\u06CC\u062F \u0628\u0627 \u0627\u0644\u06AF\u0648\u06CC ${o.pattern} \u0645\u0637\u0627\u0628\u0642\u062A \u062F\u0627\u0634\u062A\u0647 \u0628\u0627\u0634\u062F`:`${r[o.format]??n.format} \u0646\u0627\u0645\u0639\u062A\u0628\u0631`}case"not_multiple_of":return`\u0639\u062F\u062F \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0628\u0627\u06CC\u062F \u0645\u0636\u0631\u0628 ${n.divisor} \u0628\u0627\u0634\u062F`;case"unrecognized_keys":return`\u06A9\u0644\u06CC\u062F${n.keys.length>1?"\u0647\u0627\u06CC":""} \u0646\u0627\u0634\u0646\u0627\u0633: ${h(n.keys,", ")}`;case"invalid_key":return`\u06A9\u0644\u06CC\u062F \u0646\u0627\u0634\u0646\u0627\u0633 \u062F\u0631 ${n.origin}`;case"invalid_union":return"\u0648\u0631\u0648\u062F\u06CC \u0646\u0627\u0645\u0639\u062A\u0628\u0631";case"invalid_element":return`\u0645\u0642\u062F\u0627\u0631 \u0646\u0627\u0645\u0639\u062A\u0628\u0631 \u062F\u0631 ${n.origin}`;default:return"\u0648\u0631\u0648\u062F\u06CC \u0646\u0627\u0645\u0639\u062A\u0628\u0631"}}};function yg(){return{localeError:MI()}}var BI=()=>{let t={string:{unit:"merkki\xE4",subject:"merkkijonon"},file:{unit:"tavua",subject:"tiedoston"},array:{unit:"alkiota",subject:"listan"},set:{unit:"alkiota",subject:"joukon"},number:{unit:"",subject:"luvun"},bigint:{unit:"",subject:"suuren kokonaisluvun"},int:{unit:"",subject:"kokonaisluvun"},date:{unit:"",subject:"p\xE4iv\xE4m\xE4\xE4r\xE4n"}};function e(n){return t[n]??null}let r={regex:"s\xE4\xE4nn\xF6llinen lauseke",email:"s\xE4hk\xF6postiosoite",url:"URL-osoite",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO-aikaleima",date:"ISO-p\xE4iv\xE4m\xE4\xE4r\xE4",time:"ISO-aika",duration:"ISO-kesto",ipv4:"IPv4-osoite",ipv6:"IPv6-osoite",cidrv4:"IPv4-alue",cidrv6:"IPv6-alue",base64:"base64-koodattu merkkijono",base64url:"base64url-koodattu merkkijono",json_string:"JSON-merkkijono",e164:"E.164-luku",jwt:"JWT",template_literal:"templaattimerkkijono"},i={nan:"NaN"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=k(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`Virheellinen tyyppi: odotettiin instanceof ${n.expected}, oli ${c}`:`Virheellinen tyyppi: odotettiin ${o}, oli ${c}`}case"invalid_value":return n.values.length===1?`Virheellinen sy\xF6te: t\xE4ytyy olla ${y(n.values[0])}`:`Virheellinen valinta: t\xE4ytyy olla yksi seuraavista: ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`Liian suuri: ${a.subject} t\xE4ytyy olla ${o}${n.maximum.toString()} ${a.unit}`.trim():`Liian suuri: arvon t\xE4ytyy olla ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`Liian pieni: ${a.subject} t\xE4ytyy olla ${o}${n.minimum.toString()} ${a.unit}`.trim():`Liian pieni: arvon t\xE4ytyy olla ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Virheellinen sy\xF6te: t\xE4ytyy alkaa "${o.prefix}"`:o.format==="ends_with"?`Virheellinen sy\xF6te: t\xE4ytyy loppua "${o.suffix}"`:o.format==="includes"?`Virheellinen sy\xF6te: t\xE4ytyy sis\xE4lt\xE4\xE4 "${o.includes}"`:o.format==="regex"?`Virheellinen sy\xF6te: t\xE4ytyy vastata s\xE4\xE4nn\xF6llist\xE4 lauseketta ${o.pattern}`:`Virheellinen ${r[o.format]??n.format}`}case"not_multiple_of":return`Virheellinen luku: t\xE4ytyy olla luvun ${n.divisor} monikerta`;case"unrecognized_keys":return`${n.keys.length>1?"Tuntemattomat avaimet":"Tuntematon avain"}: ${h(n.keys,", ")}`;case"invalid_key":return"Virheellinen avain tietueessa";case"invalid_union":return"Virheellinen unioni";case"invalid_element":return"Virheellinen arvo joukossa";default:return"Virheellinen sy\xF6te"}}};function kg(){return{localeError:BI()}}var FI=()=>{let t={string:{unit:"caract\xE8res",verb:"avoir"},file:{unit:"octets",verb:"avoir"},array:{unit:"\xE9l\xE9ments",verb:"avoir"},set:{unit:"\xE9l\xE9ments",verb:"avoir"}};function e(n){return t[n]??null}let r={regex:"entr\xE9e",email:"adresse e-mail",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:"date et heure ISO",date:"date ISO",time:"heure ISO",duration:"dur\xE9e ISO",ipv4:"adresse IPv4",ipv6:"adresse IPv6",cidrv4:"plage IPv4",cidrv6:"plage IPv6",base64:"cha\xEEne encod\xE9e en base64",base64url:"cha\xEEne encod\xE9e en base64url",json_string:"cha\xEEne JSON",e164:"num\xE9ro E.164",jwt:"JWT",template_literal:"entr\xE9e"},i={string:"cha\xEEne",number:"nombre",int:"entier",boolean:"bool\xE9en",bigint:"grand entier",symbol:"symbole",undefined:"ind\xE9fini",null:"null",never:"jamais",void:"vide",date:"date",array:"tableau",object:"objet",tuple:"tuple",record:"enregistrement",map:"carte",set:"ensemble",file:"fichier",nonoptional:"non-optionnel",nan:"NaN",function:"fonction"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=k(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`Entr\xE9e invalide : instanceof ${n.expected} attendu, ${c} re\xE7u`:`Entr\xE9e invalide : ${o} attendu, ${c} re\xE7u`}case"invalid_value":return n.values.length===1?`Entr\xE9e invalide : ${y(n.values[0])} attendu`:`Option invalide : une valeur parmi ${h(n.values,"|")} attendue`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`Trop grand : ${i[n.origin]??"valeur"} doit ${a.verb} ${o}${n.maximum.toString()} ${a.unit??"\xE9l\xE9ment(s)"}`:`Trop grand : ${i[n.origin]??"valeur"} doit \xEAtre ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`Trop petit : ${i[n.origin]??"valeur"} doit ${a.verb} ${o}${n.minimum.toString()} ${a.unit}`:`Trop petit : ${i[n.origin]??"valeur"} doit \xEAtre ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Cha\xEEne invalide : doit commencer par "${o.prefix}"`:o.format==="ends_with"?`Cha\xEEne invalide : doit se terminer par "${o.suffix}"`:o.format==="includes"?`Cha\xEEne invalide : doit inclure "${o.includes}"`:o.format==="regex"?`Cha\xEEne invalide : doit correspondre au mod\xE8le ${o.pattern}`:`${r[o.format]??n.format} invalide`}case"not_multiple_of":return`Nombre invalide : doit \xEAtre un multiple de ${n.divisor}`;case"unrecognized_keys":return`Cl\xE9${n.keys.length>1?"s":""} non reconnue${n.keys.length>1?"s":""} : ${h(n.keys,", ")}`;case"invalid_key":return`Cl\xE9 invalide dans ${n.origin}`;case"invalid_union":return"Entr\xE9e invalide";case"invalid_element":return`Valeur invalide dans ${n.origin}`;default:return"Entr\xE9e invalide"}}};function xg(){return{localeError:FI()}}var HI=()=>{let t={string:{unit:"caract\xE8res",verb:"avoir"},file:{unit:"octets",verb:"avoir"},array:{unit:"\xE9l\xE9ments",verb:"avoir"},set:{unit:"\xE9l\xE9ments",verb:"avoir"}};function e(n){return t[n]??null}let r={regex:"entr\xE9e",email:"adresse courriel",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:"date-heure ISO",date:"date ISO",time:"heure ISO",duration:"dur\xE9e ISO",ipv4:"adresse IPv4",ipv6:"adresse IPv6",cidrv4:"plage IPv4",cidrv6:"plage IPv6",base64:"cha\xEEne encod\xE9e en base64",base64url:"cha\xEEne encod\xE9e en base64url",json_string:"cha\xEEne JSON",e164:"num\xE9ro E.164",jwt:"JWT",template_literal:"entr\xE9e"},i={nan:"NaN"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=k(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`Entr\xE9e invalide : attendu instanceof ${n.expected}, re\xE7u ${c}`:`Entr\xE9e invalide : attendu ${o}, re\xE7u ${c}`}case"invalid_value":return n.values.length===1?`Entr\xE9e invalide : attendu ${y(n.values[0])}`:`Option invalide : attendu l'une des valeurs suivantes ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"\u2264":"<",a=e(n.origin);return a?`Trop grand : attendu que ${n.origin??"la valeur"} ait ${o}${n.maximum.toString()} ${a.unit}`:`Trop grand : attendu que ${n.origin??"la valeur"} soit ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?"\u2265":">",a=e(n.origin);return a?`Trop petit : attendu que ${n.origin} ait ${o}${n.minimum.toString()} ${a.unit}`:`Trop petit : attendu que ${n.origin} soit ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Cha\xEEne invalide : doit commencer par "${o.prefix}"`:o.format==="ends_with"?`Cha\xEEne invalide : doit se terminer par "${o.suffix}"`:o.format==="includes"?`Cha\xEEne invalide : doit inclure "${o.includes}"`:o.format==="regex"?`Cha\xEEne invalide : doit correspondre au motif ${o.pattern}`:`${r[o.format]??n.format} invalide`}case"not_multiple_of":return`Nombre invalide : doit \xEAtre un multiple de ${n.divisor}`;case"unrecognized_keys":return`Cl\xE9${n.keys.length>1?"s":""} non reconnue${n.keys.length>1?"s":""} : ${h(n.keys,", ")}`;case"invalid_key":return`Cl\xE9 invalide dans ${n.origin}`;case"invalid_union":return"Entr\xE9e invalide";case"invalid_element":return`Valeur invalide dans ${n.origin}`;default:return"Entr\xE9e invalide"}}};function Ig(){return{localeError:HI()}}var VI=()=>{let t={string:{label:"\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA",gender:"f"},number:{label:"\u05DE\u05E1\u05E4\u05E8",gender:"m"},boolean:{label:"\u05E2\u05E8\u05DA \u05D1\u05D5\u05DC\u05D9\u05D0\u05E0\u05D9",gender:"m"},bigint:{label:"BigInt",gender:"m"},date:{label:"\u05EA\u05D0\u05E8\u05D9\u05DA",gender:"m"},array:{label:"\u05DE\u05E2\u05E8\u05DA",gender:"m"},object:{label:"\u05D0\u05D5\u05D1\u05D9\u05D9\u05E7\u05D8",gender:"m"},null:{label:"\u05E2\u05E8\u05DA \u05E8\u05D9\u05E7 (null)",gender:"m"},undefined:{label:"\u05E2\u05E8\u05DA \u05DC\u05D0 \u05DE\u05D5\u05D2\u05D3\u05E8 (undefined)",gender:"m"},symbol:{label:"\u05E1\u05D9\u05DE\u05D1\u05D5\u05DC (Symbol)",gender:"m"},function:{label:"\u05E4\u05D5\u05E0\u05E7\u05E6\u05D9\u05D4",gender:"f"},map:{label:"\u05DE\u05E4\u05D4 (Map)",gender:"f"},set:{label:"\u05E7\u05D1\u05D5\u05E6\u05D4 (Set)",gender:"f"},file:{label:"\u05E7\u05D5\u05D1\u05E5",gender:"m"},promise:{label:"Promise",gender:"m"},NaN:{label:"NaN",gender:"m"},unknown:{label:"\u05E2\u05E8\u05DA \u05DC\u05D0 \u05D9\u05D3\u05D5\u05E2",gender:"m"},value:{label:"\u05E2\u05E8\u05DA",gender:"m"}},e={string:{unit:"\u05EA\u05D5\u05D5\u05D9\u05DD",shortLabel:"\u05E7\u05E6\u05E8",longLabel:"\u05D0\u05E8\u05D5\u05DA"},file:{unit:"\u05D1\u05D9\u05D9\u05D8\u05D9\u05DD",shortLabel:"\u05E7\u05D8\u05DF",longLabel:"\u05D2\u05D3\u05D5\u05DC"},array:{unit:"\u05E4\u05E8\u05D9\u05D8\u05D9\u05DD",shortLabel:"\u05E7\u05D8\u05DF",longLabel:"\u05D2\u05D3\u05D5\u05DC"},set:{unit:"\u05E4\u05E8\u05D9\u05D8\u05D9\u05DD",shortLabel:"\u05E7\u05D8\u05DF",longLabel:"\u05D2\u05D3\u05D5\u05DC"},number:{unit:"",shortLabel:"\u05E7\u05D8\u05DF",longLabel:"\u05D2\u05D3\u05D5\u05DC"}},r=d=>d?t[d]:void 0,i=d=>{let u=r(d);return u?u.label:d??t.unknown.label},n=d=>`\u05D4${i(d)}`,o=d=>(r(d)?.gender??"m")==="f"?"\u05E6\u05E8\u05D9\u05DB\u05D4 \u05DC\u05D4\u05D9\u05D5\u05EA":"\u05E6\u05E8\u05D9\u05DA \u05DC\u05D4\u05D9\u05D5\u05EA",a=d=>d?e[d]??null:null,c={regex:{label:"\u05E7\u05DC\u05D8",gender:"m"},email:{label:"\u05DB\u05EA\u05D5\u05D1\u05EA \u05D0\u05D9\u05DE\u05D9\u05D9\u05DC",gender:"f"},url:{label:"\u05DB\u05EA\u05D5\u05D1\u05EA \u05E8\u05E9\u05EA",gender:"f"},emoji:{label:"\u05D0\u05D9\u05DE\u05D5\u05D2'\u05D9",gender:"m"},uuid:{label:"UUID",gender:"m"},nanoid:{label:"nanoid",gender:"m"},guid:{label:"GUID",gender:"m"},cuid:{label:"cuid",gender:"m"},cuid2:{label:"cuid2",gender:"m"},ulid:{label:"ULID",gender:"m"},xid:{label:"XID",gender:"m"},ksuid:{label:"KSUID",gender:"m"},datetime:{label:"\u05EA\u05D0\u05E8\u05D9\u05DA \u05D5\u05D6\u05DE\u05DF ISO",gender:"m"},date:{label:"\u05EA\u05D0\u05E8\u05D9\u05DA ISO",gender:"m"},time:{label:"\u05D6\u05DE\u05DF ISO",gender:"m"},duration:{label:"\u05DE\u05E9\u05DA \u05D6\u05DE\u05DF ISO",gender:"m"},ipv4:{label:"\u05DB\u05EA\u05D5\u05D1\u05EA IPv4",gender:"f"},ipv6:{label:"\u05DB\u05EA\u05D5\u05D1\u05EA IPv6",gender:"f"},cidrv4:{label:"\u05D8\u05D5\u05D5\u05D7 IPv4",gender:"m"},cidrv6:{label:"\u05D8\u05D5\u05D5\u05D7 IPv6",gender:"m"},base64:{label:"\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA \u05D1\u05D1\u05E1\u05D9\u05E1 64",gender:"f"},base64url:{label:"\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA \u05D1\u05D1\u05E1\u05D9\u05E1 64 \u05DC\u05DB\u05EA\u05D5\u05D1\u05D5\u05EA \u05E8\u05E9\u05EA",gender:"f"},json_string:{label:"\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA JSON",gender:"f"},e164:{label:"\u05DE\u05E1\u05E4\u05E8 E.164",gender:"m"},jwt:{label:"JWT",gender:"m"},ends_with:{label:"\u05E7\u05DC\u05D8",gender:"m"},includes:{label:"\u05E7\u05DC\u05D8",gender:"m"},lowercase:{label:"\u05E7\u05DC\u05D8",gender:"m"},starts_with:{label:"\u05E7\u05DC\u05D8",gender:"m"},uppercase:{label:"\u05E7\u05DC\u05D8",gender:"m"}},l={nan:"NaN"};return d=>{switch(d.code){case"invalid_type":{let u=d.expected,p=l[u??""]??i(u),m=k(d.input),f=l[m]??t[m]?.label??m;return/^[A-Z]/.test(d.expected)?`\u05E7\u05DC\u05D8 \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF: \u05E6\u05E8\u05D9\u05DA \u05DC\u05D4\u05D9\u05D5\u05EA instanceof ${d.expected}, \u05D4\u05EA\u05E7\u05D1\u05DC ${f}`:`\u05E7\u05DC\u05D8 \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF: \u05E6\u05E8\u05D9\u05DA \u05DC\u05D4\u05D9\u05D5\u05EA ${p}, \u05D4\u05EA\u05E7\u05D1\u05DC ${f}`}case"invalid_value":{if(d.values.length===1)return`\u05E2\u05E8\u05DA \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF: \u05D4\u05E2\u05E8\u05DA \u05D7\u05D9\u05D9\u05D1 \u05DC\u05D4\u05D9\u05D5\u05EA ${y(d.values[0])}`;let u=d.values.map(f=>y(f));if(d.values.length===2)return`\u05E2\u05E8\u05DA \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF: \u05D4\u05D0\u05E4\u05E9\u05E8\u05D5\u05D9\u05D5\u05EA \u05D4\u05DE\u05EA\u05D0\u05D9\u05DE\u05D5\u05EA \u05D4\u05DF ${u[0]} \u05D0\u05D5 ${u[1]}`;let p=u[u.length-1];return`\u05E2\u05E8\u05DA \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF: \u05D4\u05D0\u05E4\u05E9\u05E8\u05D5\u05D9\u05D5\u05EA \u05D4\u05DE\u05EA\u05D0\u05D9\u05DE\u05D5\u05EA \u05D4\u05DF ${u.slice(0,-1).join(", ")} \u05D0\u05D5 ${p}`}case"too_big":{let u=a(d.origin),p=n(d.origin??"value");if(d.origin==="string")return`${u?.longLabel??"\u05D0\u05E8\u05D5\u05DA"} \u05DE\u05D3\u05D9: ${p} \u05E6\u05E8\u05D9\u05DB\u05D4 \u05DC\u05D4\u05DB\u05D9\u05DC ${d.maximum.toString()} ${u?.unit??""} ${d.inclusive?"\u05D0\u05D5 \u05E4\u05D7\u05D5\u05EA":"\u05DC\u05DB\u05DC \u05D4\u05D9\u05D5\u05EA\u05E8"}`.trim();if(d.origin==="number"){let v=d.inclusive?`\u05E7\u05D8\u05DF \u05D0\u05D5 \u05E9\u05D5\u05D5\u05D4 \u05DC-${d.maximum}`:`\u05E7\u05D8\u05DF \u05DE-${d.maximum}`;return`\u05D2\u05D3\u05D5\u05DC \u05DE\u05D3\u05D9: ${p} \u05E6\u05E8\u05D9\u05DA \u05DC\u05D4\u05D9\u05D5\u05EA ${v}`}if(d.origin==="array"||d.origin==="set"){let v=d.origin==="set"?"\u05E6\u05E8\u05D9\u05DB\u05D4":"\u05E6\u05E8\u05D9\u05DA",w=d.inclusive?`${d.maximum} ${u?.unit??""} \u05D0\u05D5 \u05E4\u05D7\u05D5\u05EA`:`\u05E4\u05D7\u05D5\u05EA \u05DE-${d.maximum} ${u?.unit??""}`;return`\u05D2\u05D3\u05D5\u05DC \u05DE\u05D3\u05D9: ${p} ${v} \u05DC\u05D4\u05DB\u05D9\u05DC ${w}`.trim()}let m=d.inclusive?"<=":"<",f=o(d.origin??"value");return u?.unit?`${u.longLabel} \u05DE\u05D3\u05D9: ${p} ${f} ${m}${d.maximum.toString()} ${u.unit}`:`${u?.longLabel??"\u05D2\u05D3\u05D5\u05DC"} \u05DE\u05D3\u05D9: ${p} ${f} ${m}${d.maximum.toString()}`}case"too_small":{let u=a(d.origin),p=n(d.origin??"value");if(d.origin==="string")return`${u?.shortLabel??"\u05E7\u05E6\u05E8"} \u05DE\u05D3\u05D9: ${p} \u05E6\u05E8\u05D9\u05DB\u05D4 \u05DC\u05D4\u05DB\u05D9\u05DC ${d.minimum.toString()} ${u?.unit??""} ${d.inclusive?"\u05D0\u05D5 \u05D9\u05D5\u05EA\u05E8":"\u05DC\u05E4\u05D7\u05D5\u05EA"}`.trim();if(d.origin==="number"){let v=d.inclusive?`\u05D2\u05D3\u05D5\u05DC \u05D0\u05D5 \u05E9\u05D5\u05D5\u05D4 \u05DC-${d.minimum}`:`\u05D2\u05D3\u05D5\u05DC \u05DE-${d.minimum}`;return`\u05E7\u05D8\u05DF \u05DE\u05D3\u05D9: ${p} \u05E6\u05E8\u05D9\u05DA \u05DC\u05D4\u05D9\u05D5\u05EA ${v}`}if(d.origin==="array"||d.origin==="set"){let v=d.origin==="set"?"\u05E6\u05E8\u05D9\u05DB\u05D4":"\u05E6\u05E8\u05D9\u05DA";if(d.minimum===1&&d.inclusive){let E=(d.origin==="set","\u05DC\u05E4\u05D7\u05D5\u05EA \u05E4\u05E8\u05D9\u05D8 \u05D0\u05D7\u05D3");return`\u05E7\u05D8\u05DF \u05DE\u05D3\u05D9: ${p} ${v} \u05DC\u05D4\u05DB\u05D9\u05DC ${E}`}let w=d.inclusive?`${d.minimum} ${u?.unit??""} \u05D0\u05D5 \u05D9\u05D5\u05EA\u05E8`:`\u05D9\u05D5\u05EA\u05E8 \u05DE-${d.minimum} ${u?.unit??""}`;return`\u05E7\u05D8\u05DF \u05DE\u05D3\u05D9: ${p} ${v} \u05DC\u05D4\u05DB\u05D9\u05DC ${w}`.trim()}let m=d.inclusive?">=":">",f=o(d.origin??"value");return u?.unit?`${u.shortLabel} \u05DE\u05D3\u05D9: ${p} ${f} ${m}${d.minimum.toString()} ${u.unit}`:`${u?.shortLabel??"\u05E7\u05D8\u05DF"} \u05DE\u05D3\u05D9: ${p} ${f} ${m}${d.minimum.toString()}`}case"invalid_format":{let u=d;if(u.format==="starts_with")return`\u05D4\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA \u05D7\u05D9\u05D9\u05D1\u05EA \u05DC\u05D4\u05EA\u05D7\u05D9\u05DC \u05D1 "${u.prefix}"`;if(u.format==="ends_with")return`\u05D4\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA \u05D7\u05D9\u05D9\u05D1\u05EA \u05DC\u05D4\u05E1\u05EA\u05D9\u05D9\u05DD \u05D1 "${u.suffix}"`;if(u.format==="includes")return`\u05D4\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA \u05D7\u05D9\u05D9\u05D1\u05EA \u05DC\u05DB\u05DC\u05D5\u05DC "${u.includes}"`;if(u.format==="regex")return`\u05D4\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA \u05D7\u05D9\u05D9\u05D1\u05EA \u05DC\u05D4\u05EA\u05D0\u05D9\u05DD \u05DC\u05EA\u05D1\u05E0\u05D9\u05EA ${u.pattern}`;let p=c[u.format],m=p?.label??u.format,v=(p?.gender??"m")==="f"?"\u05EA\u05E7\u05D9\u05E0\u05D4":"\u05EA\u05E7\u05D9\u05DF";return`${m} \u05DC\u05D0 ${v}`}case"not_multiple_of":return`\u05DE\u05E1\u05E4\u05E8 \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF: \u05D7\u05D9\u05D9\u05D1 \u05DC\u05D4\u05D9\u05D5\u05EA \u05DE\u05DB\u05E4\u05DC\u05D4 \u05E9\u05DC ${d.divisor}`;case"unrecognized_keys":return`\u05DE\u05E4\u05EA\u05D7${d.keys.length>1?"\u05D5\u05EA":""} \u05DC\u05D0 \u05DE\u05D6\u05D5\u05D4${d.keys.length>1?"\u05D9\u05DD":"\u05D4"}: ${h(d.keys,", ")}`;case"invalid_key":return"\u05E9\u05D3\u05D4 \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF \u05D1\u05D0\u05D5\u05D1\u05D9\u05D9\u05E7\u05D8";case"invalid_union":return"\u05E7\u05DC\u05D8 \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF";case"invalid_element":return`\u05E2\u05E8\u05DA \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF \u05D1${n(d.origin??"array")}`;default:return"\u05E7\u05DC\u05D8 \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF"}}};function Sg(){return{localeError:VI()}}var KI=()=>{let t={string:{unit:"znakova",verb:"imati"},file:{unit:"bajtova",verb:"imati"},array:{unit:"stavki",verb:"imati"},set:{unit:"stavki",verb:"imati"}};function e(n){return t[n]??null}let r={regex:"unos",email:"email adresa",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 datum i vrijeme",date:"ISO datum",time:"ISO vrijeme",duration:"ISO trajanje",ipv4:"IPv4 adresa",ipv6:"IPv6 adresa",cidrv4:"IPv4 raspon",cidrv6:"IPv6 raspon",base64:"base64 kodirani tekst",base64url:"base64url kodirani tekst",json_string:"JSON tekst",e164:"E.164 broj",jwt:"JWT",template_literal:"unos"},i={nan:"NaN",string:"tekst",number:"broj",boolean:"boolean",array:"niz",object:"objekt",set:"skup",file:"datoteka",date:"datum",bigint:"bigint",symbol:"simbol",undefined:"undefined",null:"null",function:"funkcija",map:"mapa"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=k(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`Neispravan unos: o\u010Dekuje se instanceof ${n.expected}, a primljeno je ${c}`:`Neispravan unos: o\u010Dekuje se ${o}, a primljeno je ${c}`}case"invalid_value":return n.values.length===1?`Neispravna vrijednost: o\u010Dekivano ${y(n.values[0])}`:`Neispravna opcija: o\u010Dekivano jedno od ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin),c=i[n.origin]??n.origin;return a?`Preveliko: o\u010Dekivano da ${c??"vrijednost"} ima ${o}${n.maximum.toString()} ${a.unit??"elemenata"}`:`Preveliko: o\u010Dekivano da ${c??"vrijednost"} bude ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin),c=i[n.origin]??n.origin;return a?`Premalo: o\u010Dekivano da ${c} ima ${o}${n.minimum.toString()} ${a.unit}`:`Premalo: o\u010Dekivano da ${c} bude ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Neispravan tekst: mora zapo\u010Dinjati s "${o.prefix}"`:o.format==="ends_with"?`Neispravan tekst: mora zavr\u0161avati s "${o.suffix}"`:o.format==="includes"?`Neispravan tekst: mora sadr\u017Eavati "${o.includes}"`:o.format==="regex"?`Neispravan tekst: mora odgovarati uzorku ${o.pattern}`:`Neispravna ${r[o.format]??n.format}`}case"not_multiple_of":return`Neispravan broj: mora biti vi\u0161ekratnik od ${n.divisor}`;case"unrecognized_keys":return`Neprepoznat${n.keys.length>1?"i klju\u010Devi":" klju\u010D"}: ${h(n.keys,", ")}`;case"invalid_key":return`Neispravan klju\u010D u ${i[n.origin]??n.origin}`;case"invalid_union":return"Neispravan unos";case"invalid_element":return`Neispravna vrijednost u ${i[n.origin]??n.origin}`;default:return"Neispravan unos"}}};function Eg(){return{localeError:KI()}}var GI=()=>{let t={string:{unit:"karakter",verb:"legyen"},file:{unit:"byte",verb:"legyen"},array:{unit:"elem",verb:"legyen"},set:{unit:"elem",verb:"legyen"}};function e(n){return t[n]??null}let r={regex:"bemenet",email:"email c\xEDm",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 id\u0151b\xE9lyeg",date:"ISO d\xE1tum",time:"ISO id\u0151",duration:"ISO id\u0151intervallum",ipv4:"IPv4 c\xEDm",ipv6:"IPv6 c\xEDm",cidrv4:"IPv4 tartom\xE1ny",cidrv6:"IPv6 tartom\xE1ny",base64:"base64-k\xF3dolt string",base64url:"base64url-k\xF3dolt string",json_string:"JSON string",e164:"E.164 sz\xE1m",jwt:"JWT",template_literal:"bemenet"},i={nan:"NaN",number:"sz\xE1m",array:"t\xF6mb"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=k(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`\xC9rv\xE9nytelen bemenet: a v\xE1rt \xE9rt\xE9k instanceof ${n.expected}, a kapott \xE9rt\xE9k ${c}`:`\xC9rv\xE9nytelen bemenet: a v\xE1rt \xE9rt\xE9k ${o}, a kapott \xE9rt\xE9k ${c}`}case"invalid_value":return n.values.length===1?`\xC9rv\xE9nytelen bemenet: a v\xE1rt \xE9rt\xE9k ${y(n.values[0])}`:`\xC9rv\xE9nytelen opci\xF3: valamelyik \xE9rt\xE9k v\xE1rt ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`T\xFAl nagy: ${n.origin??"\xE9rt\xE9k"} m\xE9rete t\xFAl nagy ${o}${n.maximum.toString()} ${a.unit??"elem"}`:`T\xFAl nagy: a bemeneti \xE9rt\xE9k ${n.origin??"\xE9rt\xE9k"} t\xFAl nagy: ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`T\xFAl kicsi: a bemeneti \xE9rt\xE9k ${n.origin} m\xE9rete t\xFAl kicsi ${o}${n.minimum.toString()} ${a.unit}`:`T\xFAl kicsi: a bemeneti \xE9rt\xE9k ${n.origin} t\xFAl kicsi ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\xC9rv\xE9nytelen string: "${o.prefix}" \xE9rt\xE9kkel kell kezd\u0151dnie`:o.format==="ends_with"?`\xC9rv\xE9nytelen string: "${o.suffix}" \xE9rt\xE9kkel kell v\xE9gz\u0151dnie`:o.format==="includes"?`\xC9rv\xE9nytelen string: "${o.includes}" \xE9rt\xE9ket kell tartalmaznia`:o.format==="regex"?`\xC9rv\xE9nytelen string: ${o.pattern} mint\xE1nak kell megfelelnie`:`\xC9rv\xE9nytelen ${r[o.format]??n.format}`}case"not_multiple_of":return`\xC9rv\xE9nytelen sz\xE1m: ${n.divisor} t\xF6bbsz\xF6r\xF6s\xE9nek kell lennie`;case"unrecognized_keys":return`Ismeretlen kulcs${n.keys.length>1?"s":""}: ${h(n.keys,", ")}`;case"invalid_key":return`\xC9rv\xE9nytelen kulcs ${n.origin}`;case"invalid_union":return"\xC9rv\xE9nytelen bemenet";case"invalid_element":return`\xC9rv\xE9nytelen \xE9rt\xE9k: ${n.origin}`;default:return"\xC9rv\xE9nytelen bemenet"}}};function wg(){return{localeError:GI()}}function $g(t,e,r){return Math.abs(t)===1?e:r}function Dt(t){if(!t)return"";let e=["\u0561","\u0565","\u0568","\u056B","\u0578","\u0578\u0582","\u0585"],r=t[t.length-1];return t+(e.includes(r)?"\u0576":"\u0568")}var ZI=()=>{let t={string:{unit:{one:"\u0576\u0577\u0561\u0576",many:"\u0576\u0577\u0561\u0576\u0576\u0565\u0580"},verb:"\u0578\u0582\u0576\u0565\u0576\u0561\u056C"},file:{unit:{one:"\u0562\u0561\u0575\u0569",many:"\u0562\u0561\u0575\u0569\u0565\u0580"},verb:"\u0578\u0582\u0576\u0565\u0576\u0561\u056C"},array:{unit:{one:"\u057F\u0561\u0580\u0580",many:"\u057F\u0561\u0580\u0580\u0565\u0580"},verb:"\u0578\u0582\u0576\u0565\u0576\u0561\u056C"},set:{unit:{one:"\u057F\u0561\u0580\u0580",many:"\u057F\u0561\u0580\u0580\u0565\u0580"},verb:"\u0578\u0582\u0576\u0565\u0576\u0561\u056C"}};function e(n){return t[n]??null}let r={regex:"\u0574\u0578\u0582\u057F\u0584",email:"\u0567\u056C. \u0570\u0561\u057D\u0581\u0565",url:"URL",emoji:"\u0567\u0574\u0578\u057B\u056B",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO \u0561\u0574\u057D\u0561\u0569\u056B\u057E \u0587 \u056A\u0561\u0574",date:"ISO \u0561\u0574\u057D\u0561\u0569\u056B\u057E",time:"ISO \u056A\u0561\u0574",duration:"ISO \u057F\u0587\u0578\u0572\u0578\u0582\u0569\u0575\u0578\u0582\u0576",ipv4:"IPv4 \u0570\u0561\u057D\u0581\u0565",ipv6:"IPv6 \u0570\u0561\u057D\u0581\u0565",cidrv4:"IPv4 \u0574\u056B\u057B\u0561\u056F\u0561\u0575\u0584",cidrv6:"IPv6 \u0574\u056B\u057B\u0561\u056F\u0561\u0575\u0584",base64:"base64 \u0571\u0587\u0561\u0579\u0561\u0583\u0578\u057E \u057F\u0578\u0572",base64url:"base64url \u0571\u0587\u0561\u0579\u0561\u0583\u0578\u057E \u057F\u0578\u0572",json_string:"JSON \u057F\u0578\u0572",e164:"E.164 \u0570\u0561\u0574\u0561\u0580",jwt:"JWT",template_literal:"\u0574\u0578\u0582\u057F\u0584"},i={nan:"NaN",number:"\u0569\u056B\u057E",array:"\u0566\u0561\u0576\u0563\u057E\u0561\u056E"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=k(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`\u054D\u056D\u0561\u056C \u0574\u0578\u0582\u057F\u0584\u0561\u0563\u0580\u0578\u0582\u0574\u2024 \u057D\u057A\u0561\u057D\u057E\u0578\u0582\u0574 \u0567\u0580 instanceof ${n.expected}, \u057D\u057F\u0561\u0581\u057E\u0565\u056C \u0567 ${c}`:`\u054D\u056D\u0561\u056C \u0574\u0578\u0582\u057F\u0584\u0561\u0563\u0580\u0578\u0582\u0574\u2024 \u057D\u057A\u0561\u057D\u057E\u0578\u0582\u0574 \u0567\u0580 ${o}, \u057D\u057F\u0561\u0581\u057E\u0565\u056C \u0567 ${c}`}case"invalid_value":return n.values.length===1?`\u054D\u056D\u0561\u056C \u0574\u0578\u0582\u057F\u0584\u0561\u0563\u0580\u0578\u0582\u0574\u2024 \u057D\u057A\u0561\u057D\u057E\u0578\u0582\u0574 \u0567\u0580 ${y(n.values[1])}`:`\u054D\u056D\u0561\u056C \u057F\u0561\u0580\u0562\u0565\u0580\u0561\u056F\u2024 \u057D\u057A\u0561\u057D\u057E\u0578\u0582\u0574 \u0567\u0580 \u0570\u0565\u057F\u0587\u0575\u0561\u056C\u0576\u0565\u0580\u056B\u0581 \u0574\u0565\u056F\u0568\u055D ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);if(a){let c=Number(n.maximum),l=$g(c,a.unit.one,a.unit.many);return`\u0549\u0561\u0583\u0561\u0566\u0561\u0576\u0581 \u0574\u0565\u056E \u0561\u0580\u056A\u0565\u0584\u2024 \u057D\u057A\u0561\u057D\u057E\u0578\u0582\u0574 \u0567, \u0578\u0580 ${Dt(n.origin??"\u0561\u0580\u056A\u0565\u0584")} \u056F\u0578\u0582\u0576\u0565\u0576\u0561 ${o}${n.maximum.toString()} ${l}`}return`\u0549\u0561\u0583\u0561\u0566\u0561\u0576\u0581 \u0574\u0565\u056E \u0561\u0580\u056A\u0565\u0584\u2024 \u057D\u057A\u0561\u057D\u057E\u0578\u0582\u0574 \u0567, \u0578\u0580 ${Dt(n.origin??"\u0561\u0580\u056A\u0565\u0584")} \u056C\u056B\u0576\u056B ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);if(a){let c=Number(n.minimum),l=$g(c,a.unit.one,a.unit.many);return`\u0549\u0561\u0583\u0561\u0566\u0561\u0576\u0581 \u0583\u0578\u0584\u0580 \u0561\u0580\u056A\u0565\u0584\u2024 \u057D\u057A\u0561\u057D\u057E\u0578\u0582\u0574 \u0567, \u0578\u0580 ${Dt(n.origin)} \u056F\u0578\u0582\u0576\u0565\u0576\u0561 ${o}${n.minimum.toString()} ${l}`}return`\u0549\u0561\u0583\u0561\u0566\u0561\u0576\u0581 \u0583\u0578\u0584\u0580 \u0561\u0580\u056A\u0565\u0584\u2024 \u057D\u057A\u0561\u057D\u057E\u0578\u0582\u0574 \u0567, \u0578\u0580 ${Dt(n.origin)} \u056C\u056B\u0576\u056B ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u054D\u056D\u0561\u056C \u057F\u0578\u0572\u2024 \u057A\u0565\u057F\u0584 \u0567 \u057D\u056F\u057D\u057E\u056B "${o.prefix}"-\u0578\u057E`:o.format==="ends_with"?`\u054D\u056D\u0561\u056C \u057F\u0578\u0572\u2024 \u057A\u0565\u057F\u0584 \u0567 \u0561\u057E\u0561\u0580\u057F\u057E\u056B "${o.suffix}"-\u0578\u057E`:o.format==="includes"?`\u054D\u056D\u0561\u056C \u057F\u0578\u0572\u2024 \u057A\u0565\u057F\u0584 \u0567 \u057A\u0561\u0580\u0578\u0582\u0576\u0561\u056F\u056B "${o.includes}"`:o.format==="regex"?`\u054D\u056D\u0561\u056C \u057F\u0578\u0572\u2024 \u057A\u0565\u057F\u0584 \u0567 \u0570\u0561\u0574\u0561\u057A\u0561\u057F\u0561\u057D\u056D\u0561\u0576\u056B ${o.pattern} \u0571\u0587\u0561\u0579\u0561\u0583\u056B\u0576`:`\u054D\u056D\u0561\u056C ${r[o.format]??n.format}`}case"not_multiple_of":return`\u054D\u056D\u0561\u056C \u0569\u056B\u057E\u2024 \u057A\u0565\u057F\u0584 \u0567 \u0562\u0561\u0566\u0574\u0561\u057A\u0561\u057F\u056B\u056F \u056C\u056B\u0576\u056B ${n.divisor}-\u056B`;case"unrecognized_keys":return`\u0549\u0573\u0561\u0576\u0561\u0579\u057E\u0561\u056E \u0562\u0561\u0576\u0561\u056C\u056B${n.keys.length>1?"\u0576\u0565\u0580":""}. ${h(n.keys,", ")}`;case"invalid_key":return`\u054D\u056D\u0561\u056C \u0562\u0561\u0576\u0561\u056C\u056B ${Dt(n.origin)}-\u0578\u0582\u0574`;case"invalid_union":return"\u054D\u056D\u0561\u056C \u0574\u0578\u0582\u057F\u0584\u0561\u0563\u0580\u0578\u0582\u0574";case"invalid_element":return`\u054D\u056D\u0561\u056C \u0561\u0580\u056A\u0565\u0584 ${Dt(n.origin)}-\u0578\u0582\u0574`;default:return"\u054D\u056D\u0561\u056C \u0574\u0578\u0582\u057F\u0584\u0561\u0563\u0580\u0578\u0582\u0574"}}};function Og(){return{localeError:ZI()}}var WI=()=>{let t={string:{unit:"karakter",verb:"memiliki"},file:{unit:"byte",verb:"memiliki"},array:{unit:"item",verb:"memiliki"},set:{unit:"item",verb:"memiliki"}};function e(n){return t[n]??null}let r={regex:"input",email:"alamat email",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:"tanggal dan waktu format ISO",date:"tanggal format ISO",time:"jam format ISO",duration:"durasi format ISO",ipv4:"alamat IPv4",ipv6:"alamat IPv6",cidrv4:"rentang alamat IPv4",cidrv6:"rentang alamat IPv6",base64:"string dengan enkode base64",base64url:"string dengan enkode base64url",json_string:"string JSON",e164:"angka E.164",jwt:"JWT",template_literal:"input"},i={nan:"NaN"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=k(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`Input tidak valid: diharapkan instanceof ${n.expected}, diterima ${c}`:`Input tidak valid: diharapkan ${o}, diterima ${c}`}case"invalid_value":return n.values.length===1?`Input tidak valid: diharapkan ${y(n.values[0])}`:`Pilihan tidak valid: diharapkan salah satu dari ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`Terlalu besar: diharapkan ${n.origin??"value"} memiliki ${o}${n.maximum.toString()} ${a.unit??"elemen"}`:`Terlalu besar: diharapkan ${n.origin??"value"} menjadi ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`Terlalu kecil: diharapkan ${n.origin} memiliki ${o}${n.minimum.toString()} ${a.unit}`:`Terlalu kecil: diharapkan ${n.origin} menjadi ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`String tidak valid: harus dimulai dengan "${o.prefix}"`:o.format==="ends_with"?`String tidak valid: harus berakhir dengan "${o.suffix}"`:o.format==="includes"?`String tidak valid: harus menyertakan "${o.includes}"`:o.format==="regex"?`String tidak valid: harus sesuai pola ${o.pattern}`:`${r[o.format]??n.format} tidak valid`}case"not_multiple_of":return`Angka tidak valid: harus kelipatan dari ${n.divisor}`;case"unrecognized_keys":return`Kunci tidak dikenali ${n.keys.length>1?"s":""}: ${h(n.keys,", ")}`;case"invalid_key":return`Kunci tidak valid di ${n.origin}`;case"invalid_union":return"Input tidak valid";case"invalid_element":return`Nilai tidak valid di ${n.origin}`;default:return"Input tidak valid"}}};function Tg(){return{localeError:WI()}}var qI=()=>{let t={string:{unit:"stafi",verb:"a\xF0 hafa"},file:{unit:"b\xE6ti",verb:"a\xF0 hafa"},array:{unit:"hluti",verb:"a\xF0 hafa"},set:{unit:"hluti",verb:"a\xF0 hafa"}};function e(n){return t[n]??null}let r={regex:"gildi",email:"netfang",url:"vefsl\xF3\xF0",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO dagsetning og t\xEDmi",date:"ISO dagsetning",time:"ISO t\xEDmi",duration:"ISO t\xEDmalengd",ipv4:"IPv4 address",ipv6:"IPv6 address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded strengur",base64url:"base64url-encoded strengur",json_string:"JSON strengur",e164:"E.164 t\xF6lugildi",jwt:"JWT",template_literal:"gildi"},i={nan:"NaN",number:"n\xFAmer",array:"fylki"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=k(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`Rangt gildi: \xDE\xFA sl\xF3st inn ${c} \xFEar sem \xE1 a\xF0 vera instanceof ${n.expected}`:`Rangt gildi: \xDE\xFA sl\xF3st inn ${c} \xFEar sem \xE1 a\xF0 vera ${o}`}case"invalid_value":return n.values.length===1?`Rangt gildi: gert r\xE1\xF0 fyrir ${y(n.values[0])}`:`\xD3gilt val: m\xE1 vera eitt af eftirfarandi ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`Of st\xF3rt: gert er r\xE1\xF0 fyrir a\xF0 ${n.origin??"gildi"} hafi ${o}${n.maximum.toString()} ${a.unit??"hluti"}`:`Of st\xF3rt: gert er r\xE1\xF0 fyrir a\xF0 ${n.origin??"gildi"} s\xE9 ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`Of l\xEDti\xF0: gert er r\xE1\xF0 fyrir a\xF0 ${n.origin} hafi ${o}${n.minimum.toString()} ${a.unit}`:`Of l\xEDti\xF0: gert er r\xE1\xF0 fyrir a\xF0 ${n.origin} s\xE9 ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\xD3gildur strengur: ver\xF0ur a\xF0 byrja \xE1 "${o.prefix}"`:o.format==="ends_with"?`\xD3gildur strengur: ver\xF0ur a\xF0 enda \xE1 "${o.suffix}"`:o.format==="includes"?`\xD3gildur strengur: ver\xF0ur a\xF0 innihalda "${o.includes}"`:o.format==="regex"?`\xD3gildur strengur: ver\xF0ur a\xF0 fylgja mynstri ${o.pattern}`:`Rangt ${r[o.format]??n.format}`}case"not_multiple_of":return`R\xF6ng tala: ver\xF0ur a\xF0 vera margfeldi af ${n.divisor}`;case"unrecognized_keys":return`\xD3\xFEekkt ${n.keys.length>1?"ir lyklar":"ur lykill"}: ${h(n.keys,", ")}`;case"invalid_key":return`Rangur lykill \xED ${n.origin}`;case"invalid_union":return"Rangt gildi";case"invalid_element":return`Rangt gildi \xED ${n.origin}`;default:return"Rangt gildi"}}};function Ag(){return{localeError:qI()}}var JI=()=>{let t={string:{unit:"caratteri",verb:"avere"},file:{unit:"byte",verb:"avere"},array:{unit:"elementi",verb:"avere"},set:{unit:"elementi",verb:"avere"}};function e(n){return t[n]??null}let r={regex:"input",email:"indirizzo email",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:"data e ora ISO",date:"data ISO",time:"ora ISO",duration:"durata ISO",ipv4:"indirizzo IPv4",ipv6:"indirizzo IPv6",cidrv4:"intervallo IPv4",cidrv6:"intervallo IPv6",base64:"stringa codificata in base64",base64url:"URL codificata in base64",json_string:"stringa JSON",e164:"numero E.164",jwt:"JWT",template_literal:"input"},i={nan:"NaN",number:"numero",array:"vettore"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=k(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`Input non valido: atteso instanceof ${n.expected}, ricevuto ${c}`:`Input non valido: atteso ${o}, ricevuto ${c}`}case"invalid_value":return n.values.length===1?`Input non valido: atteso ${y(n.values[0])}`:`Opzione non valida: atteso uno tra ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`Troppo grande: ${n.origin??"valore"} deve avere ${o}${n.maximum.toString()} ${a.unit??"elementi"}`:`Troppo grande: ${n.origin??"valore"} deve essere ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`Troppo piccolo: ${n.origin} deve avere ${o}${n.minimum.toString()} ${a.unit}`:`Troppo piccolo: ${n.origin} deve essere ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Stringa non valida: deve iniziare con "${o.prefix}"`:o.format==="ends_with"?`Stringa non valida: deve terminare con "${o.suffix}"`:o.format==="includes"?`Stringa non valida: deve includere "${o.includes}"`:o.format==="regex"?`Stringa non valida: deve corrispondere al pattern ${o.pattern}`:`Input non valido: ${r[o.format]??n.format}`}case"not_multiple_of":return`Numero non valido: deve essere un multiplo di ${n.divisor}`;case"unrecognized_keys":return`Chiav${n.keys.length>1?"i":"e"} non riconosciut${n.keys.length>1?"e":"a"}: ${h(n.keys,", ")}`;case"invalid_key":return`Chiave non valida in ${n.origin}`;case"invalid_union":return"Input non valido";case"invalid_element":return`Valore non valido in ${n.origin}`;default:return"Input non valido"}}};function Rg(){return{localeError:JI()}}var YI=()=>{let t={string:{unit:"\u6587\u5B57",verb:"\u3067\u3042\u308B"},file:{unit:"\u30D0\u30A4\u30C8",verb:"\u3067\u3042\u308B"},array:{unit:"\u8981\u7D20",verb:"\u3067\u3042\u308B"},set:{unit:"\u8981\u7D20",verb:"\u3067\u3042\u308B"}};function e(n){return t[n]??null}let r={regex:"\u5165\u529B\u5024",email:"\u30E1\u30FC\u30EB\u30A2\u30C9\u30EC\u30B9",url:"URL",emoji:"\u7D75\u6587\u5B57",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO\u65E5\u6642",date:"ISO\u65E5\u4ED8",time:"ISO\u6642\u523B",duration:"ISO\u671F\u9593",ipv4:"IPv4\u30A2\u30C9\u30EC\u30B9",ipv6:"IPv6\u30A2\u30C9\u30EC\u30B9",cidrv4:"IPv4\u7BC4\u56F2",cidrv6:"IPv6\u7BC4\u56F2",base64:"base64\u30A8\u30F3\u30B3\u30FC\u30C9\u6587\u5B57\u5217",base64url:"base64url\u30A8\u30F3\u30B3\u30FC\u30C9\u6587\u5B57\u5217",json_string:"JSON\u6587\u5B57\u5217",e164:"E.164\u756A\u53F7",jwt:"JWT",template_literal:"\u5165\u529B\u5024"},i={nan:"NaN",number:"\u6570\u5024",array:"\u914D\u5217"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=k(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`\u7121\u52B9\u306A\u5165\u529B: instanceof ${n.expected}\u304C\u671F\u5F85\u3055\u308C\u307E\u3057\u305F\u304C\u3001${c}\u304C\u5165\u529B\u3055\u308C\u307E\u3057\u305F`:`\u7121\u52B9\u306A\u5165\u529B: ${o}\u304C\u671F\u5F85\u3055\u308C\u307E\u3057\u305F\u304C\u3001${c}\u304C\u5165\u529B\u3055\u308C\u307E\u3057\u305F`}case"invalid_value":return n.values.length===1?`\u7121\u52B9\u306A\u5165\u529B: ${y(n.values[0])}\u304C\u671F\u5F85\u3055\u308C\u307E\u3057\u305F`:`\u7121\u52B9\u306A\u9078\u629E: ${h(n.values,"\u3001")}\u306E\u3044\u305A\u308C\u304B\u3067\u3042\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`;case"too_big":{let o=n.inclusive?"\u4EE5\u4E0B\u3067\u3042\u308B":"\u3088\u308A\u5C0F\u3055\u3044",a=e(n.origin);return a?`\u5927\u304D\u3059\u304E\u308B\u5024: ${n.origin??"\u5024"}\u306F${n.maximum.toString()}${a.unit??"\u8981\u7D20"}${o}\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`:`\u5927\u304D\u3059\u304E\u308B\u5024: ${n.origin??"\u5024"}\u306F${n.maximum.toString()}${o}\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`}case"too_small":{let o=n.inclusive?"\u4EE5\u4E0A\u3067\u3042\u308B":"\u3088\u308A\u5927\u304D\u3044",a=e(n.origin);return a?`\u5C0F\u3055\u3059\u304E\u308B\u5024: ${n.origin}\u306F${n.minimum.toString()}${a.unit}${o}\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`:`\u5C0F\u3055\u3059\u304E\u308B\u5024: ${n.origin}\u306F${n.minimum.toString()}${o}\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u7121\u52B9\u306A\u6587\u5B57\u5217: "${o.prefix}"\u3067\u59CB\u307E\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`:o.format==="ends_with"?`\u7121\u52B9\u306A\u6587\u5B57\u5217: "${o.suffix}"\u3067\u7D42\u308F\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`:o.format==="includes"?`\u7121\u52B9\u306A\u6587\u5B57\u5217: "${o.includes}"\u3092\u542B\u3080\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`:o.format==="regex"?`\u7121\u52B9\u306A\u6587\u5B57\u5217: \u30D1\u30BF\u30FC\u30F3${o.pattern}\u306B\u4E00\u81F4\u3059\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`:`\u7121\u52B9\u306A${r[o.format]??n.format}`}case"not_multiple_of":return`\u7121\u52B9\u306A\u6570\u5024: ${n.divisor}\u306E\u500D\u6570\u3067\u3042\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`;case"unrecognized_keys":return`\u8A8D\u8B58\u3055\u308C\u3066\u3044\u306A\u3044\u30AD\u30FC${n.keys.length>1?"\u7FA4":""}: ${h(n.keys,"\u3001")}`;case"invalid_key":return`${n.origin}\u5185\u306E\u7121\u52B9\u306A\u30AD\u30FC`;case"invalid_union":return"\u7121\u52B9\u306A\u5165\u529B";case"invalid_element":return`${n.origin}\u5185\u306E\u7121\u52B9\u306A\u5024`;default:return"\u7121\u52B9\u306A\u5165\u529B"}}};function Cg(){return{localeError:YI()}}var XI=()=>{let t={string:{unit:"\u10E1\u10D8\u10DB\u10D1\u10DD\u10DA\u10DD",verb:"\u10E3\u10DC\u10D3\u10D0 \u10E8\u10D4\u10D8\u10EA\u10D0\u10D5\u10D3\u10D4\u10E1"},file:{unit:"\u10D1\u10D0\u10D8\u10E2\u10D8",verb:"\u10E3\u10DC\u10D3\u10D0 \u10E8\u10D4\u10D8\u10EA\u10D0\u10D5\u10D3\u10D4\u10E1"},array:{unit:"\u10D4\u10DA\u10D4\u10DB\u10D4\u10DC\u10E2\u10D8",verb:"\u10E3\u10DC\u10D3\u10D0 \u10E8\u10D4\u10D8\u10EA\u10D0\u10D5\u10D3\u10D4\u10E1"},set:{unit:"\u10D4\u10DA\u10D4\u10DB\u10D4\u10DC\u10E2\u10D8",verb:"\u10E3\u10DC\u10D3\u10D0 \u10E8\u10D4\u10D8\u10EA\u10D0\u10D5\u10D3\u10D4\u10E1"}};function e(n){return t[n]??null}let r={regex:"\u10E8\u10D4\u10E7\u10D5\u10D0\u10DC\u10D0",email:"\u10D4\u10DA-\u10E4\u10DD\u10E1\u10E2\u10D8\u10E1 \u10DB\u10D8\u10E1\u10D0\u10DB\u10D0\u10E0\u10D7\u10D8",url:"URL",emoji:"\u10D4\u10DB\u10DD\u10EF\u10D8",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"\u10D7\u10D0\u10E0\u10D8\u10E6\u10D8-\u10D3\u10E0\u10DD",date:"\u10D7\u10D0\u10E0\u10D8\u10E6\u10D8",time:"\u10D3\u10E0\u10DD",duration:"\u10EE\u10D0\u10DC\u10D2\u10E0\u10EB\u10DA\u10D8\u10D5\u10DD\u10D1\u10D0",ipv4:"IPv4 \u10DB\u10D8\u10E1\u10D0\u10DB\u10D0\u10E0\u10D7\u10D8",ipv6:"IPv6 \u10DB\u10D8\u10E1\u10D0\u10DB\u10D0\u10E0\u10D7\u10D8",cidrv4:"IPv4 \u10D3\u10D8\u10D0\u10DE\u10D0\u10D6\u10DD\u10DC\u10D8",cidrv6:"IPv6 \u10D3\u10D8\u10D0\u10DE\u10D0\u10D6\u10DD\u10DC\u10D8",base64:"base64-\u10D9\u10DD\u10D3\u10D8\u10E0\u10D4\u10D1\u10E3\u10DA\u10D8 \u10D5\u10D4\u10DA\u10D8",base64url:"base64url-\u10D9\u10DD\u10D3\u10D8\u10E0\u10D4\u10D1\u10E3\u10DA\u10D8 \u10D5\u10D4\u10DA\u10D8",json_string:"JSON \u10D5\u10D4\u10DA\u10D8",e164:"E.164 \u10DC\u10DD\u10DB\u10D4\u10E0\u10D8",jwt:"JWT",template_literal:"\u10E8\u10D4\u10E7\u10D5\u10D0\u10DC\u10D0"},i={nan:"NaN",number:"\u10E0\u10D8\u10EA\u10EE\u10D5\u10D8",string:"\u10D5\u10D4\u10DA\u10D8",boolean:"\u10D1\u10E3\u10DA\u10D4\u10D0\u10DC\u10D8",function:"\u10E4\u10E3\u10DC\u10E5\u10EA\u10D8\u10D0",array:"\u10DB\u10D0\u10E1\u10D8\u10D5\u10D8"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=k(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10E8\u10D4\u10E7\u10D5\u10D0\u10DC\u10D0: \u10DB\u10DD\u10E1\u10D0\u10DA\u10DD\u10D3\u10DC\u10D4\u10DA\u10D8 instanceof ${n.expected}, \u10DB\u10D8\u10E6\u10D4\u10D1\u10E3\u10DA\u10D8 ${c}`:`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10E8\u10D4\u10E7\u10D5\u10D0\u10DC\u10D0: \u10DB\u10DD\u10E1\u10D0\u10DA\u10DD\u10D3\u10DC\u10D4\u10DA\u10D8 ${o}, \u10DB\u10D8\u10E6\u10D4\u10D1\u10E3\u10DA\u10D8 ${c}`}case"invalid_value":return n.values.length===1?`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10E8\u10D4\u10E7\u10D5\u10D0\u10DC\u10D0: \u10DB\u10DD\u10E1\u10D0\u10DA\u10DD\u10D3\u10DC\u10D4\u10DA\u10D8 ${y(n.values[0])}`:`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10D5\u10D0\u10E0\u10D8\u10D0\u10DC\u10E2\u10D8: \u10DB\u10DD\u10E1\u10D0\u10DA\u10DD\u10D3\u10DC\u10D4\u10DA\u10D8\u10D0 \u10D4\u10E0\u10D7-\u10D4\u10E0\u10D7\u10D8 ${h(n.values,"|")}-\u10D3\u10D0\u10DC`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`\u10D6\u10D4\u10D3\u10DB\u10D4\u10E2\u10D0\u10D3 \u10D3\u10D8\u10D3\u10D8: \u10DB\u10DD\u10E1\u10D0\u10DA\u10DD\u10D3\u10DC\u10D4\u10DA\u10D8 ${n.origin??"\u10DB\u10DC\u10D8\u10E8\u10D5\u10DC\u10D4\u10DA\u10DD\u10D1\u10D0"} ${a.verb} ${o}${n.maximum.toString()} ${a.unit}`:`\u10D6\u10D4\u10D3\u10DB\u10D4\u10E2\u10D0\u10D3 \u10D3\u10D8\u10D3\u10D8: \u10DB\u10DD\u10E1\u10D0\u10DA\u10DD\u10D3\u10DC\u10D4\u10DA\u10D8 ${n.origin??"\u10DB\u10DC\u10D8\u10E8\u10D5\u10DC\u10D4\u10DA\u10DD\u10D1\u10D0"} \u10D8\u10E7\u10DD\u10E1 ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`\u10D6\u10D4\u10D3\u10DB\u10D4\u10E2\u10D0\u10D3 \u10DE\u10D0\u10E2\u10D0\u10E0\u10D0: \u10DB\u10DD\u10E1\u10D0\u10DA\u10DD\u10D3\u10DC\u10D4\u10DA\u10D8 ${n.origin} ${a.verb} ${o}${n.minimum.toString()} ${a.unit}`:`\u10D6\u10D4\u10D3\u10DB\u10D4\u10E2\u10D0\u10D3 \u10DE\u10D0\u10E2\u10D0\u10E0\u10D0: \u10DB\u10DD\u10E1\u10D0\u10DA\u10DD\u10D3\u10DC\u10D4\u10DA\u10D8 ${n.origin} \u10D8\u10E7\u10DD\u10E1 ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10D5\u10D4\u10DA\u10D8: \u10E3\u10DC\u10D3\u10D0 \u10D8\u10EC\u10E7\u10D4\u10D1\u10DD\u10D3\u10D4\u10E1 "${o.prefix}"-\u10D8\u10D7`:o.format==="ends_with"?`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10D5\u10D4\u10DA\u10D8: \u10E3\u10DC\u10D3\u10D0 \u10DB\u10D7\u10D0\u10D5\u10E0\u10D3\u10D4\u10D1\u10DD\u10D3\u10D4\u10E1 "${o.suffix}"-\u10D8\u10D7`:o.format==="includes"?`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10D5\u10D4\u10DA\u10D8: \u10E3\u10DC\u10D3\u10D0 \u10E8\u10D4\u10D8\u10EA\u10D0\u10D5\u10D3\u10D4\u10E1 "${o.includes}"-\u10E1`:o.format==="regex"?`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10D5\u10D4\u10DA\u10D8: \u10E3\u10DC\u10D3\u10D0 \u10E8\u10D4\u10D4\u10E1\u10D0\u10D1\u10D0\u10DB\u10D4\u10D1\u10DD\u10D3\u10D4\u10E1 \u10E8\u10D0\u10D1\u10DA\u10DD\u10DC\u10E1 ${o.pattern}`:`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 ${r[o.format]??n.format}`}case"not_multiple_of":return`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10E0\u10D8\u10EA\u10EE\u10D5\u10D8: \u10E3\u10DC\u10D3\u10D0 \u10D8\u10E7\u10DD\u10E1 ${n.divisor}-\u10D8\u10E1 \u10EF\u10D4\u10E0\u10D0\u10D3\u10D8`;case"unrecognized_keys":return`\u10E3\u10EA\u10DC\u10DD\u10D1\u10D8 \u10D2\u10D0\u10E1\u10D0\u10E6\u10D4\u10D1${n.keys.length>1?"\u10D4\u10D1\u10D8":"\u10D8"}: ${h(n.keys,", ")}`;case"invalid_key":return`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10D2\u10D0\u10E1\u10D0\u10E6\u10D4\u10D1\u10D8 ${n.origin}-\u10E8\u10D8`;case"invalid_union":return"\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10E8\u10D4\u10E7\u10D5\u10D0\u10DC\u10D0";case"invalid_element":return`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10DB\u10DC\u10D8\u10E8\u10D5\u10DC\u10D4\u10DA\u10DD\u10D1\u10D0 ${n.origin}-\u10E8\u10D8`;default:return"\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10E8\u10D4\u10E7\u10D5\u10D0\u10DC\u10D0"}}};function Pg(){return{localeError:XI()}}var QI=()=>{let t={string:{unit:"\u178F\u17BD\u17A2\u1780\u17D2\u179F\u179A",verb:"\u1782\u17BD\u179A\u1798\u17B6\u1793"},file:{unit:"\u1794\u17C3",verb:"\u1782\u17BD\u179A\u1798\u17B6\u1793"},array:{unit:"\u1792\u17B6\u178F\u17BB",verb:"\u1782\u17BD\u179A\u1798\u17B6\u1793"},set:{unit:"\u1792\u17B6\u178F\u17BB",verb:"\u1782\u17BD\u179A\u1798\u17B6\u1793"}};function e(n){return t[n]??null}let r={regex:"\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1794\u1789\u17D2\u1785\u17BC\u179B",email:"\u17A2\u17B6\u179F\u1799\u178A\u17D2\u178B\u17B6\u1793\u17A2\u17CA\u17B8\u1798\u17C2\u179B",url:"URL",emoji:"\u179F\u1789\u17D2\u1789\u17B6\u17A2\u17B6\u179A\u1798\u17D2\u1798\u178E\u17CD",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"\u1780\u17B6\u179B\u1794\u179A\u17B7\u1785\u17D2\u1786\u17C1\u1791 \u1793\u17B7\u1784\u1798\u17C9\u17C4\u1784 ISO",date:"\u1780\u17B6\u179B\u1794\u179A\u17B7\u1785\u17D2\u1786\u17C1\u1791 ISO",time:"\u1798\u17C9\u17C4\u1784 ISO",duration:"\u179A\u1799\u17C8\u1796\u17C1\u179B ISO",ipv4:"\u17A2\u17B6\u179F\u1799\u178A\u17D2\u178B\u17B6\u1793 IPv4",ipv6:"\u17A2\u17B6\u179F\u1799\u178A\u17D2\u178B\u17B6\u1793 IPv6",cidrv4:"\u178A\u17C2\u1793\u17A2\u17B6\u179F\u1799\u178A\u17D2\u178B\u17B6\u1793 IPv4",cidrv6:"\u178A\u17C2\u1793\u17A2\u17B6\u179F\u1799\u178A\u17D2\u178B\u17B6\u1793 IPv6",base64:"\u1781\u17D2\u179F\u17C2\u17A2\u1780\u17D2\u179F\u179A\u17A2\u17CA\u17B7\u1780\u17BC\u178A base64",base64url:"\u1781\u17D2\u179F\u17C2\u17A2\u1780\u17D2\u179F\u179A\u17A2\u17CA\u17B7\u1780\u17BC\u178A base64url",json_string:"\u1781\u17D2\u179F\u17C2\u17A2\u1780\u17D2\u179F\u179A JSON",e164:"\u179B\u17C1\u1781 E.164",jwt:"JWT",template_literal:"\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1794\u1789\u17D2\u1785\u17BC\u179B"},i={nan:"NaN",number:"\u179B\u17C1\u1781",array:"\u17A2\u17B6\u179A\u17C1 (Array)",null:"\u1782\u17D2\u1798\u17B6\u1793\u178F\u1798\u17D2\u179B\u17C3 (null)"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=k(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1794\u1789\u17D2\u1785\u17BC\u179B\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1780\u17B6\u179A instanceof ${n.expected} \u1794\u17C9\u17BB\u1793\u17D2\u178F\u17C2\u1791\u1791\u17BD\u179B\u1794\u17B6\u1793 ${c}`:`\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1794\u1789\u17D2\u1785\u17BC\u179B\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1780\u17B6\u179A ${o} \u1794\u17C9\u17BB\u1793\u17D2\u178F\u17C2\u1791\u1791\u17BD\u179B\u1794\u17B6\u1793 ${c}`}case"invalid_value":return n.values.length===1?`\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1794\u1789\u17D2\u1785\u17BC\u179B\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1780\u17B6\u179A ${y(n.values[0])}`:`\u1787\u1798\u17D2\u179A\u17BE\u179F\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1787\u17B6\u1798\u17BD\u1799\u1780\u17D2\u1793\u17BB\u1784\u1785\u17C6\u178E\u17C4\u1798 ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`\u1792\u17C6\u1796\u17C1\u1780\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1780\u17B6\u179A ${n.origin??"\u178F\u1798\u17D2\u179B\u17C3"} ${o} ${n.maximum.toString()} ${a.unit??"\u1792\u17B6\u178F\u17BB"}`:`\u1792\u17C6\u1796\u17C1\u1780\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1780\u17B6\u179A ${n.origin??"\u178F\u1798\u17D2\u179B\u17C3"} ${o} ${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`\u178F\u17BC\u1785\u1796\u17C1\u1780\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1780\u17B6\u179A ${n.origin} ${o} ${n.minimum.toString()} ${a.unit}`:`\u178F\u17BC\u1785\u1796\u17C1\u1780\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1780\u17B6\u179A ${n.origin} ${o} ${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u1781\u17D2\u179F\u17C2\u17A2\u1780\u17D2\u179F\u179A\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1785\u17B6\u1794\u17CB\u1795\u17D2\u178F\u17BE\u1798\u178A\u17C4\u1799 "${o.prefix}"`:o.format==="ends_with"?`\u1781\u17D2\u179F\u17C2\u17A2\u1780\u17D2\u179F\u179A\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1794\u1789\u17D2\u1785\u1794\u17CB\u178A\u17C4\u1799 "${o.suffix}"`:o.format==="includes"?`\u1781\u17D2\u179F\u17C2\u17A2\u1780\u17D2\u179F\u179A\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1798\u17B6\u1793 "${o.includes}"`:o.format==="regex"?`\u1781\u17D2\u179F\u17C2\u17A2\u1780\u17D2\u179F\u179A\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u178F\u17C2\u1795\u17D2\u1782\u17BC\u1795\u17D2\u1782\u1784\u1793\u17B9\u1784\u1791\u1798\u17D2\u179A\u1784\u17CB\u178A\u17C2\u179B\u1794\u17B6\u1793\u1780\u17C6\u178E\u178F\u17CB ${o.pattern}`:`\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 ${r[o.format]??n.format}`}case"not_multiple_of":return`\u179B\u17C1\u1781\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u178F\u17C2\u1787\u17B6\u1796\u17A0\u17BB\u1782\u17BB\u178E\u1793\u17C3 ${n.divisor}`;case"unrecognized_keys":return`\u179A\u1780\u1783\u17BE\u1789\u179F\u17C4\u1798\u17B7\u1793\u179F\u17D2\u1782\u17B6\u179B\u17CB\u17D6 ${h(n.keys,", ")}`;case"invalid_key":return`\u179F\u17C4\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u1793\u17C5\u1780\u17D2\u1793\u17BB\u1784 ${n.origin}`;case"invalid_union":return"\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C";case"invalid_element":return`\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C\u1793\u17C5\u1780\u17D2\u1793\u17BB\u1784 ${n.origin}`;default:return"\u1791\u17B7\u1793\u17D2\u1793\u1793\u17D0\u1799\u1798\u17B7\u1793\u178F\u17D2\u179A\u17B9\u1798\u178F\u17D2\u179A\u17BC\u179C"}}};function Ti(){return{localeError:QI()}}function Ng(){return Ti()}var eS=()=>{let t={string:{unit:"\uBB38\uC790",verb:"to have"},file:{unit:"\uBC14\uC774\uD2B8",verb:"to have"},array:{unit:"\uAC1C",verb:"to have"},set:{unit:"\uAC1C",verb:"to have"}};function e(n){return t[n]??null}let r={regex:"\uC785\uB825",email:"\uC774\uBA54\uC77C \uC8FC\uC18C",url:"URL",emoji:"\uC774\uBAA8\uC9C0",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO \uB0A0\uC9DC\uC2DC\uAC04",date:"ISO \uB0A0\uC9DC",time:"ISO \uC2DC\uAC04",duration:"ISO \uAE30\uAC04",ipv4:"IPv4 \uC8FC\uC18C",ipv6:"IPv6 \uC8FC\uC18C",cidrv4:"IPv4 \uBC94\uC704",cidrv6:"IPv6 \uBC94\uC704",base64:"base64 \uC778\uCF54\uB529 \uBB38\uC790\uC5F4",base64url:"base64url \uC778\uCF54\uB529 \uBB38\uC790\uC5F4",json_string:"JSON \uBB38\uC790\uC5F4",e164:"E.164 \uBC88\uD638",jwt:"JWT",template_literal:"\uC785\uB825"},i={nan:"NaN"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=k(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`\uC798\uBABB\uB41C \uC785\uB825: \uC608\uC0C1 \uD0C0\uC785\uC740 instanceof ${n.expected}, \uBC1B\uC740 \uD0C0\uC785\uC740 ${c}\uC785\uB2C8\uB2E4`:`\uC798\uBABB\uB41C \uC785\uB825: \uC608\uC0C1 \uD0C0\uC785\uC740 ${o}, \uBC1B\uC740 \uD0C0\uC785\uC740 ${c}\uC785\uB2C8\uB2E4`}case"invalid_value":return n.values.length===1?`\uC798\uBABB\uB41C \uC785\uB825: \uAC12\uC740 ${y(n.values[0])} \uC774\uC5B4\uC57C \uD569\uB2C8\uB2E4`:`\uC798\uBABB\uB41C \uC635\uC158: ${h(n.values,"\uB610\uB294 ")} \uC911 \uD558\uB098\uC5EC\uC57C \uD569\uB2C8\uB2E4`;case"too_big":{let o=n.inclusive?"\uC774\uD558":"\uBBF8\uB9CC",a=o==="\uBBF8\uB9CC"?"\uC774\uC5B4\uC57C \uD569\uB2C8\uB2E4":"\uC5EC\uC57C \uD569\uB2C8\uB2E4",c=e(n.origin),l=c?.unit??"\uC694\uC18C";return c?`${n.origin??"\uAC12"}\uC774 \uB108\uBB34 \uD07D\uB2C8\uB2E4: ${n.maximum.toString()}${l} ${o}${a}`:`${n.origin??"\uAC12"}\uC774 \uB108\uBB34 \uD07D\uB2C8\uB2E4: ${n.maximum.toString()} ${o}${a}`}case"too_small":{let o=n.inclusive?"\uC774\uC0C1":"\uCD08\uACFC",a=o==="\uC774\uC0C1"?"\uC774\uC5B4\uC57C \uD569\uB2C8\uB2E4":"\uC5EC\uC57C \uD569\uB2C8\uB2E4",c=e(n.origin),l=c?.unit??"\uC694\uC18C";return c?`${n.origin??"\uAC12"}\uC774 \uB108\uBB34 \uC791\uC2B5\uB2C8\uB2E4: ${n.minimum.toString()}${l} ${o}${a}`:`${n.origin??"\uAC12"}\uC774 \uB108\uBB34 \uC791\uC2B5\uB2C8\uB2E4: ${n.minimum.toString()} ${o}${a}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\uC798\uBABB\uB41C \uBB38\uC790\uC5F4: "${o.prefix}"(\uC73C)\uB85C \uC2DC\uC791\uD574\uC57C \uD569\uB2C8\uB2E4`:o.format==="ends_with"?`\uC798\uBABB\uB41C \uBB38\uC790\uC5F4: "${o.suffix}"(\uC73C)\uB85C \uB05D\uB098\uC57C \uD569\uB2C8\uB2E4`:o.format==="includes"?`\uC798\uBABB\uB41C \uBB38\uC790\uC5F4: "${o.includes}"\uC744(\uB97C) \uD3EC\uD568\uD574\uC57C \uD569\uB2C8\uB2E4`:o.format==="regex"?`\uC798\uBABB\uB41C \uBB38\uC790\uC5F4: \uC815\uADDC\uC2DD ${o.pattern} \uD328\uD134\uACFC \uC77C\uCE58\uD574\uC57C \uD569\uB2C8\uB2E4`:`\uC798\uBABB\uB41C ${r[o.format]??n.format}`}case"not_multiple_of":return`\uC798\uBABB\uB41C \uC22B\uC790: ${n.divisor}\uC758 \uBC30\uC218\uC5EC\uC57C \uD569\uB2C8\uB2E4`;case"unrecognized_keys":return`\uC778\uC2DD\uD560 \uC218 \uC5C6\uB294 \uD0A4: ${h(n.keys,", ")}`;case"invalid_key":return`\uC798\uBABB\uB41C \uD0A4: ${n.origin}`;case"invalid_union":return"\uC798\uBABB\uB41C \uC785\uB825";case"invalid_element":return`\uC798\uBABB\uB41C \uAC12: ${n.origin}`;default:return"\uC798\uBABB\uB41C \uC785\uB825"}}};function Dg(){return{localeError:eS()}}var Xn=t=>t.charAt(0).toUpperCase()+t.slice(1);function Ug(t){let e=Math.abs(t),r=e%10,i=e%100;return i>=11&&i<=19||r===0?"many":r===1?"one":"few"}var tS=()=>{let t={string:{unit:{one:"simbolis",few:"simboliai",many:"simboli\u0173"},verb:{smaller:{inclusive:"turi b\u016Bti ne ilgesn\u0117 kaip",notInclusive:"turi b\u016Bti trumpesn\u0117 kaip"},bigger:{inclusive:"turi b\u016Bti ne trumpesn\u0117 kaip",notInclusive:"turi b\u016Bti ilgesn\u0117 kaip"}}},file:{unit:{one:"baitas",few:"baitai",many:"bait\u0173"},verb:{smaller:{inclusive:"turi b\u016Bti ne didesnis kaip",notInclusive:"turi b\u016Bti ma\u017Eesnis kaip"},bigger:{inclusive:"turi b\u016Bti ne ma\u017Eesnis kaip",notInclusive:"turi b\u016Bti didesnis kaip"}}},array:{unit:{one:"element\u0105",few:"elementus",many:"element\u0173"},verb:{smaller:{inclusive:"turi tur\u0117ti ne daugiau kaip",notInclusive:"turi tur\u0117ti ma\u017Eiau kaip"},bigger:{inclusive:"turi tur\u0117ti ne ma\u017Eiau kaip",notInclusive:"turi tur\u0117ti daugiau kaip"}}},set:{unit:{one:"element\u0105",few:"elementus",many:"element\u0173"},verb:{smaller:{inclusive:"turi tur\u0117ti ne daugiau kaip",notInclusive:"turi tur\u0117ti ma\u017Eiau kaip"},bigger:{inclusive:"turi tur\u0117ti ne ma\u017Eiau kaip",notInclusive:"turi tur\u0117ti daugiau kaip"}}}};function e(n,o,a,c){let l=t[n]??null;return l===null?l:{unit:l.unit[o],verb:l.verb[c][a?"inclusive":"notInclusive"]}}let r={regex:"\u012Fvestis",email:"el. pa\u0161to adresas",url:"URL",emoji:"jaustukas",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO data ir laikas",date:"ISO data",time:"ISO laikas",duration:"ISO trukm\u0117",ipv4:"IPv4 adresas",ipv6:"IPv6 adresas",cidrv4:"IPv4 tinklo prefiksas (CIDR)",cidrv6:"IPv6 tinklo prefiksas (CIDR)",base64:"base64 u\u017Ekoduota eilut\u0117",base64url:"base64url u\u017Ekoduota eilut\u0117",json_string:"JSON eilut\u0117",e164:"E.164 numeris",jwt:"JWT",template_literal:"\u012Fvestis"},i={nan:"NaN",number:"skai\u010Dius",bigint:"sveikasis skai\u010Dius",string:"eilut\u0117",boolean:"login\u0117 reik\u0161m\u0117",undefined:"neapibr\u0117\u017Eta reik\u0161m\u0117",function:"funkcija",symbol:"simbolis",array:"masyvas",object:"objektas",null:"nulin\u0117 reik\u0161m\u0117"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=k(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`Gautas tipas ${c}, o tik\u0117tasi - instanceof ${n.expected}`:`Gautas tipas ${c}, o tik\u0117tasi - ${o}`}case"invalid_value":return n.values.length===1?`Privalo b\u016Bti ${y(n.values[0])}`:`Privalo b\u016Bti vienas i\u0161 ${h(n.values,"|")} pasirinkim\u0173`;case"too_big":{let o=i[n.origin]??n.origin,a=e(n.origin,Ug(Number(n.maximum)),n.inclusive??!1,"smaller");if(a?.verb)return`${Xn(o??n.origin??"reik\u0161m\u0117")} ${a.verb} ${n.maximum.toString()} ${a.unit??"element\u0173"}`;let c=n.inclusive?"ne didesnis kaip":"ma\u017Eesnis kaip";return`${Xn(o??n.origin??"reik\u0161m\u0117")} turi b\u016Bti ${c} ${n.maximum.toString()} ${a?.unit}`}case"too_small":{let o=i[n.origin]??n.origin,a=e(n.origin,Ug(Number(n.minimum)),n.inclusive??!1,"bigger");if(a?.verb)return`${Xn(o??n.origin??"reik\u0161m\u0117")} ${a.verb} ${n.minimum.toString()} ${a.unit??"element\u0173"}`;let c=n.inclusive?"ne ma\u017Eesnis kaip":"didesnis kaip";return`${Xn(o??n.origin??"reik\u0161m\u0117")} turi b\u016Bti ${c} ${n.minimum.toString()} ${a?.unit}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Eilut\u0117 privalo prasid\u0117ti "${o.prefix}"`:o.format==="ends_with"?`Eilut\u0117 privalo pasibaigti "${o.suffix}"`:o.format==="includes"?`Eilut\u0117 privalo \u012Ftraukti "${o.includes}"`:o.format==="regex"?`Eilut\u0117 privalo atitikti ${o.pattern}`:`Neteisingas ${r[o.format]??n.format}`}case"not_multiple_of":return`Skai\u010Dius privalo b\u016Bti ${n.divisor} kartotinis.`;case"unrecognized_keys":return`Neatpa\u017Eint${n.keys.length>1?"i":"as"} rakt${n.keys.length>1?"ai":"as"}: ${h(n.keys,", ")}`;case"invalid_key":return"Rastas klaidingas raktas";case"invalid_union":return"Klaidinga \u012Fvestis";case"invalid_element":{let o=i[n.origin]??n.origin;return`${Xn(o??n.origin??"reik\u0161m\u0117")} turi klaiding\u0105 \u012Fvest\u012F`}default:return"Klaidinga \u012Fvestis"}}};function zg(){return{localeError:tS()}}var nS=()=>{let t={string:{unit:"\u0437\u043D\u0430\u0446\u0438",verb:"\u0434\u0430 \u0438\u043C\u0430\u0430\u0442"},file:{unit:"\u0431\u0430\u0458\u0442\u0438",verb:"\u0434\u0430 \u0438\u043C\u0430\u0430\u0442"},array:{unit:"\u0441\u0442\u0430\u0432\u043A\u0438",verb:"\u0434\u0430 \u0438\u043C\u0430\u0430\u0442"},set:{unit:"\u0441\u0442\u0430\u0432\u043A\u0438",verb:"\u0434\u0430 \u0438\u043C\u0430\u0430\u0442"}};function e(n){return t[n]??null}let r={regex:"\u0432\u043D\u0435\u0441",email:"\u0430\u0434\u0440\u0435\u0441\u0430 \u043D\u0430 \u0435-\u043F\u043E\u0448\u0442\u0430",url:"URL",emoji:"\u0435\u043C\u043E\u045F\u0438",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO \u0434\u0430\u0442\u0443\u043C \u0438 \u0432\u0440\u0435\u043C\u0435",date:"ISO \u0434\u0430\u0442\u0443\u043C",time:"ISO \u0432\u0440\u0435\u043C\u0435",duration:"ISO \u0432\u0440\u0435\u043C\u0435\u0442\u0440\u0430\u0435\u045A\u0435",ipv4:"IPv4 \u0430\u0434\u0440\u0435\u0441\u0430",ipv6:"IPv6 \u0430\u0434\u0440\u0435\u0441\u0430",cidrv4:"IPv4 \u043E\u043F\u0441\u0435\u0433",cidrv6:"IPv6 \u043E\u043F\u0441\u0435\u0433",base64:"base64-\u0435\u043D\u043A\u043E\u0434\u0438\u0440\u0430\u043D\u0430 \u043D\u0438\u0437\u0430",base64url:"base64url-\u0435\u043D\u043A\u043E\u0434\u0438\u0440\u0430\u043D\u0430 \u043D\u0438\u0437\u0430",json_string:"JSON \u043D\u0438\u0437\u0430",e164:"E.164 \u0431\u0440\u043E\u0458",jwt:"JWT",template_literal:"\u0432\u043D\u0435\u0441"},i={nan:"NaN",number:"\u0431\u0440\u043E\u0458",array:"\u043D\u0438\u0437\u0430"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=k(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`\u0413\u0440\u0435\u0448\u0435\u043D \u0432\u043D\u0435\u0441: \u0441\u0435 \u043E\u0447\u0435\u043A\u0443\u0432\u0430 instanceof ${n.expected}, \u043F\u0440\u0438\u043C\u0435\u043D\u043E ${c}`:`\u0413\u0440\u0435\u0448\u0435\u043D \u0432\u043D\u0435\u0441: \u0441\u0435 \u043E\u0447\u0435\u043A\u0443\u0432\u0430 ${o}, \u043F\u0440\u0438\u043C\u0435\u043D\u043E ${c}`}case"invalid_value":return n.values.length===1?`Invalid input: expected ${y(n.values[0])}`:`\u0413\u0440\u0435\u0448\u0430\u043D\u0430 \u043E\u043F\u0446\u0438\u0458\u0430: \u0441\u0435 \u043E\u0447\u0435\u043A\u0443\u0432\u0430 \u0435\u0434\u043D\u0430 ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`\u041F\u0440\u0435\u043C\u043D\u043E\u0433\u0443 \u0433\u043E\u043B\u0435\u043C: \u0441\u0435 \u043E\u0447\u0435\u043A\u0443\u0432\u0430 ${n.origin??"\u0432\u0440\u0435\u0434\u043D\u043E\u0441\u0442\u0430"} \u0434\u0430 \u0438\u043C\u0430 ${o}${n.maximum.toString()} ${a.unit??"\u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0438"}`:`\u041F\u0440\u0435\u043C\u043D\u043E\u0433\u0443 \u0433\u043E\u043B\u0435\u043C: \u0441\u0435 \u043E\u0447\u0435\u043A\u0443\u0432\u0430 ${n.origin??"\u0432\u0440\u0435\u0434\u043D\u043E\u0441\u0442\u0430"} \u0434\u0430 \u0431\u0438\u0434\u0435 ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`\u041F\u0440\u0435\u043C\u043D\u043E\u0433\u0443 \u043C\u0430\u043B: \u0441\u0435 \u043E\u0447\u0435\u043A\u0443\u0432\u0430 ${n.origin} \u0434\u0430 \u0438\u043C\u0430 ${o}${n.minimum.toString()} ${a.unit}`:`\u041F\u0440\u0435\u043C\u043D\u043E\u0433\u0443 \u043C\u0430\u043B: \u0441\u0435 \u043E\u0447\u0435\u043A\u0443\u0432\u0430 ${n.origin} \u0434\u0430 \u0431\u0438\u0434\u0435 ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u041D\u0435\u0432\u0430\u0436\u0435\u0447\u043A\u0430 \u043D\u0438\u0437\u0430: \u043C\u043E\u0440\u0430 \u0434\u0430 \u0437\u0430\u043F\u043E\u0447\u043D\u0443\u0432\u0430 \u0441\u043E "${o.prefix}"`:o.format==="ends_with"?`\u041D\u0435\u0432\u0430\u0436\u0435\u0447\u043A\u0430 \u043D\u0438\u0437\u0430: \u043C\u043E\u0440\u0430 \u0434\u0430 \u0437\u0430\u0432\u0440\u0448\u0443\u0432\u0430 \u0441\u043E "${o.suffix}"`:o.format==="includes"?`\u041D\u0435\u0432\u0430\u0436\u0435\u0447\u043A\u0430 \u043D\u0438\u0437\u0430: \u043C\u043E\u0440\u0430 \u0434\u0430 \u0432\u043A\u043B\u0443\u0447\u0443\u0432\u0430 "${o.includes}"`:o.format==="regex"?`\u041D\u0435\u0432\u0430\u0436\u0435\u0447\u043A\u0430 \u043D\u0438\u0437\u0430: \u043C\u043E\u0440\u0430 \u0434\u0430 \u043E\u0434\u0433\u043E\u0430\u0440\u0430 \u043D\u0430 \u043F\u0430\u0442\u0435\u0440\u043D\u043E\u0442 ${o.pattern}`:`Invalid ${r[o.format]??n.format}`}case"not_multiple_of":return`\u0413\u0440\u0435\u0448\u0435\u043D \u0431\u0440\u043E\u0458: \u043C\u043E\u0440\u0430 \u0434\u0430 \u0431\u0438\u0434\u0435 \u0434\u0435\u043B\u0438\u0432 \u0441\u043E ${n.divisor}`;case"unrecognized_keys":return`${n.keys.length>1?"\u041D\u0435\u043F\u0440\u0435\u043F\u043E\u0437\u043D\u0430\u0435\u043D\u0438 \u043A\u043B\u0443\u0447\u0435\u0432\u0438":"\u041D\u0435\u043F\u0440\u0435\u043F\u043E\u0437\u043D\u0430\u0435\u043D \u043A\u043B\u0443\u0447"}: ${h(n.keys,", ")}`;case"invalid_key":return`\u0413\u0440\u0435\u0448\u0435\u043D \u043A\u043B\u0443\u0447 \u0432\u043E ${n.origin}`;case"invalid_union":return"\u0413\u0440\u0435\u0448\u0435\u043D \u0432\u043D\u0435\u0441";case"invalid_element":return`\u0413\u0440\u0435\u0448\u043D\u0430 \u0432\u0440\u0435\u0434\u043D\u043E\u0441\u0442 \u0432\u043E ${n.origin}`;default:return"\u0413\u0440\u0435\u0448\u0435\u043D \u0432\u043D\u0435\u0441"}}};function jg(){return{localeError:nS()}}var rS=()=>{let t={string:{unit:"aksara",verb:"mempunyai"},file:{unit:"bait",verb:"mempunyai"},array:{unit:"elemen",verb:"mempunyai"},set:{unit:"elemen",verb:"mempunyai"}};function e(n){return t[n]??null}let r={regex:"input",email:"alamat e-mel",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:"tarikh masa ISO",date:"tarikh ISO",time:"masa ISO",duration:"tempoh ISO",ipv4:"alamat IPv4",ipv6:"alamat IPv6",cidrv4:"julat IPv4",cidrv6:"julat IPv6",base64:"string dikodkan base64",base64url:"string dikodkan base64url",json_string:"string JSON",e164:"nombor E.164",jwt:"JWT",template_literal:"input"},i={nan:"NaN",number:"nombor"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=k(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`Input tidak sah: dijangka instanceof ${n.expected}, diterima ${c}`:`Input tidak sah: dijangka ${o}, diterima ${c}`}case"invalid_value":return n.values.length===1?`Input tidak sah: dijangka ${y(n.values[0])}`:`Pilihan tidak sah: dijangka salah satu daripada ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`Terlalu besar: dijangka ${n.origin??"nilai"} ${a.verb} ${o}${n.maximum.toString()} ${a.unit??"elemen"}`:`Terlalu besar: dijangka ${n.origin??"nilai"} adalah ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`Terlalu kecil: dijangka ${n.origin} ${a.verb} ${o}${n.minimum.toString()} ${a.unit}`:`Terlalu kecil: dijangka ${n.origin} adalah ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`String tidak sah: mesti bermula dengan "${o.prefix}"`:o.format==="ends_with"?`String tidak sah: mesti berakhir dengan "${o.suffix}"`:o.format==="includes"?`String tidak sah: mesti mengandungi "${o.includes}"`:o.format==="regex"?`String tidak sah: mesti sepadan dengan corak ${o.pattern}`:`${r[o.format]??n.format} tidak sah`}case"not_multiple_of":return`Nombor tidak sah: perlu gandaan ${n.divisor}`;case"unrecognized_keys":return`Kunci tidak dikenali: ${h(n.keys,", ")}`;case"invalid_key":return`Kunci tidak sah dalam ${n.origin}`;case"invalid_union":return"Input tidak sah";case"invalid_element":return`Nilai tidak sah dalam ${n.origin}`;default:return"Input tidak sah"}}};function Lg(){return{localeError:rS()}}var iS=()=>{let t={string:{unit:"tekens",verb:"heeft"},file:{unit:"bytes",verb:"heeft"},array:{unit:"elementen",verb:"heeft"},set:{unit:"elementen",verb:"heeft"}};function e(n){return t[n]??null}let r={regex:"invoer",email:"emailadres",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 datum en tijd",date:"ISO datum",time:"ISO tijd",duration:"ISO duur",ipv4:"IPv4-adres",ipv6:"IPv6-adres",cidrv4:"IPv4-bereik",cidrv6:"IPv6-bereik",base64:"base64-gecodeerde tekst",base64url:"base64 URL-gecodeerde tekst",json_string:"JSON string",e164:"E.164-nummer",jwt:"JWT",template_literal:"invoer"},i={nan:"NaN",number:"getal"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=k(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`Ongeldige invoer: verwacht instanceof ${n.expected}, ontving ${c}`:`Ongeldige invoer: verwacht ${o}, ontving ${c}`}case"invalid_value":return n.values.length===1?`Ongeldige invoer: verwacht ${y(n.values[0])}`:`Ongeldige optie: verwacht \xE9\xE9n van ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin),c=n.origin==="date"?"laat":n.origin==="string"?"lang":"groot";return a?`Te ${c}: verwacht dat ${n.origin??"waarde"} ${o}${n.maximum.toString()} ${a.unit??"elementen"} ${a.verb}`:`Te ${c}: verwacht dat ${n.origin??"waarde"} ${o}${n.maximum.toString()} is`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin),c=n.origin==="date"?"vroeg":n.origin==="string"?"kort":"klein";return a?`Te ${c}: verwacht dat ${n.origin} ${o}${n.minimum.toString()} ${a.unit} ${a.verb}`:`Te ${c}: verwacht dat ${n.origin} ${o}${n.minimum.toString()} is`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Ongeldige tekst: moet met "${o.prefix}" beginnen`:o.format==="ends_with"?`Ongeldige tekst: moet op "${o.suffix}" eindigen`:o.format==="includes"?`Ongeldige tekst: moet "${o.includes}" bevatten`:o.format==="regex"?`Ongeldige tekst: moet overeenkomen met patroon ${o.pattern}`:`Ongeldig: ${r[o.format]??n.format}`}case"not_multiple_of":return`Ongeldig getal: moet een veelvoud van ${n.divisor} zijn`;case"unrecognized_keys":return`Onbekende key${n.keys.length>1?"s":""}: ${h(n.keys,", ")}`;case"invalid_key":return`Ongeldige key in ${n.origin}`;case"invalid_union":return"Ongeldige invoer";case"invalid_element":return`Ongeldige waarde in ${n.origin}`;default:return"Ongeldige invoer"}}};function Mg(){return{localeError:iS()}}var oS=()=>{let t={string:{unit:"tegn",verb:"\xE5 ha"},file:{unit:"bytes",verb:"\xE5 ha"},array:{unit:"elementer",verb:"\xE5 inneholde"},set:{unit:"elementer",verb:"\xE5 inneholde"}};function e(n){return t[n]??null}let r={regex:"input",email:"e-postadresse",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 dato- og klokkeslett",date:"ISO-dato",time:"ISO-klokkeslett",duration:"ISO-varighet",ipv4:"IPv4-omr\xE5de",ipv6:"IPv6-omr\xE5de",cidrv4:"IPv4-spekter",cidrv6:"IPv6-spekter",base64:"base64-enkodet streng",base64url:"base64url-enkodet streng",json_string:"JSON-streng",e164:"E.164-nummer",jwt:"JWT",template_literal:"input"},i={nan:"NaN",number:"tall",array:"liste"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=k(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`Ugyldig input: forventet instanceof ${n.expected}, fikk ${c}`:`Ugyldig input: forventet ${o}, fikk ${c}`}case"invalid_value":return n.values.length===1?`Ugyldig verdi: forventet ${y(n.values[0])}`:`Ugyldig valg: forventet en av ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`For stor(t): forventet ${n.origin??"value"} til \xE5 ha ${o}${n.maximum.toString()} ${a.unit??"elementer"}`:`For stor(t): forventet ${n.origin??"value"} til \xE5 ha ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`For lite(n): forventet ${n.origin} til \xE5 ha ${o}${n.minimum.toString()} ${a.unit}`:`For lite(n): forventet ${n.origin} til \xE5 ha ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Ugyldig streng: m\xE5 starte med "${o.prefix}"`:o.format==="ends_with"?`Ugyldig streng: m\xE5 ende med "${o.suffix}"`:o.format==="includes"?`Ugyldig streng: m\xE5 inneholde "${o.includes}"`:o.format==="regex"?`Ugyldig streng: m\xE5 matche m\xF8nsteret ${o.pattern}`:`Ugyldig ${r[o.format]??n.format}`}case"not_multiple_of":return`Ugyldig tall: m\xE5 v\xE6re et multiplum av ${n.divisor}`;case"unrecognized_keys":return`${n.keys.length>1?"Ukjente n\xF8kler":"Ukjent n\xF8kkel"}: ${h(n.keys,", ")}`;case"invalid_key":return`Ugyldig n\xF8kkel i ${n.origin}`;case"invalid_union":return"Ugyldig input";case"invalid_element":return`Ugyldig verdi i ${n.origin}`;default:return"Ugyldig input"}}};function Bg(){return{localeError:oS()}}var sS=()=>{let t={string:{unit:"harf",verb:"olmal\u0131d\u0131r"},file:{unit:"bayt",verb:"olmal\u0131d\u0131r"},array:{unit:"unsur",verb:"olmal\u0131d\u0131r"},set:{unit:"unsur",verb:"olmal\u0131d\u0131r"}};function e(n){return t[n]??null}let r={regex:"giren",email:"epostag\xE2h",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 heng\xE2m\u0131",date:"ISO tarihi",time:"ISO zaman\u0131",duration:"ISO m\xFCddeti",ipv4:"IPv4 ni\u015F\xE2n\u0131",ipv6:"IPv6 ni\u015F\xE2n\u0131",cidrv4:"IPv4 menzili",cidrv6:"IPv6 menzili",base64:"base64-\u015Fifreli metin",base64url:"base64url-\u015Fifreli metin",json_string:"JSON metin",e164:"E.164 say\u0131s\u0131",jwt:"JWT",template_literal:"giren"},i={nan:"NaN",number:"numara",array:"saf",null:"gayb"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=k(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`F\xE2sit giren: umulan instanceof ${n.expected}, al\u0131nan ${c}`:`F\xE2sit giren: umulan ${o}, al\u0131nan ${c}`}case"invalid_value":return n.values.length===1?`F\xE2sit giren: umulan ${y(n.values[0])}`:`F\xE2sit tercih: m\xFBteberler ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`Fazla b\xFCy\xFCk: ${n.origin??"value"}, ${o}${n.maximum.toString()} ${a.unit??"elements"} sahip olmal\u0131yd\u0131.`:`Fazla b\xFCy\xFCk: ${n.origin??"value"}, ${o}${n.maximum.toString()} olmal\u0131yd\u0131.`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`Fazla k\xFC\xE7\xFCk: ${n.origin}, ${o}${n.minimum.toString()} ${a.unit} sahip olmal\u0131yd\u0131.`:`Fazla k\xFC\xE7\xFCk: ${n.origin}, ${o}${n.minimum.toString()} olmal\u0131yd\u0131.`}case"invalid_format":{let o=n;return o.format==="starts_with"?`F\xE2sit metin: "${o.prefix}" ile ba\u015Flamal\u0131.`:o.format==="ends_with"?`F\xE2sit metin: "${o.suffix}" ile bitmeli.`:o.format==="includes"?`F\xE2sit metin: "${o.includes}" ihtiv\xE2 etmeli.`:o.format==="regex"?`F\xE2sit metin: ${o.pattern} nak\u015F\u0131na uymal\u0131.`:`F\xE2sit ${r[o.format]??n.format}`}case"not_multiple_of":return`F\xE2sit say\u0131: ${n.divisor} kat\u0131 olmal\u0131yd\u0131.`;case"unrecognized_keys":return`Tan\u0131nmayan anahtar ${n.keys.length>1?"s":""}: ${h(n.keys,", ")}`;case"invalid_key":return`${n.origin} i\xE7in tan\u0131nmayan anahtar var.`;case"invalid_union":return"Giren tan\u0131namad\u0131.";case"invalid_element":return`${n.origin} i\xE7in tan\u0131nmayan k\u0131ymet var.`;default:return"K\u0131ymet tan\u0131namad\u0131."}}};function Fg(){return{localeError:sS()}}var aS=()=>{let t={string:{unit:"\u062A\u0648\u06A9\u064A",verb:"\u0648\u0644\u0631\u064A"},file:{unit:"\u0628\u0627\u06CC\u067C\u0633",verb:"\u0648\u0644\u0631\u064A"},array:{unit:"\u062A\u0648\u06A9\u064A",verb:"\u0648\u0644\u0631\u064A"},set:{unit:"\u062A\u0648\u06A9\u064A",verb:"\u0648\u0644\u0631\u064A"}};function e(n){return t[n]??null}let r={regex:"\u0648\u0631\u0648\u062F\u064A",email:"\u0628\u0631\u06CC\u069A\u0646\u0627\u0644\u06CC\u06A9",url:"\u06CC\u0648 \u0622\u0631 \u0627\u0644",emoji:"\u0627\u06CC\u0645\u0648\u062C\u064A",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"\u0646\u06CC\u067C\u0647 \u0627\u0648 \u0648\u062E\u062A",date:"\u0646\u06D0\u067C\u0647",time:"\u0648\u062E\u062A",duration:"\u0645\u0648\u062F\u0647",ipv4:"\u062F IPv4 \u067E\u062A\u0647",ipv6:"\u062F IPv6 \u067E\u062A\u0647",cidrv4:"\u062F IPv4 \u0633\u0627\u062D\u0647",cidrv6:"\u062F IPv6 \u0633\u0627\u062D\u0647",base64:"base64-encoded \u0645\u062A\u0646",base64url:"base64url-encoded \u0645\u062A\u0646",json_string:"JSON \u0645\u062A\u0646",e164:"\u062F E.164 \u0634\u0645\u06D0\u0631\u0647",jwt:"JWT",template_literal:"\u0648\u0631\u0648\u062F\u064A"},i={nan:"NaN",number:"\u0639\u062F\u062F",array:"\u0627\u0631\u06D0"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=k(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`\u0646\u0627\u0633\u0645 \u0648\u0631\u0648\u062F\u064A: \u0628\u0627\u06CC\u062F instanceof ${n.expected} \u0648\u0627\u06CC, \u0645\u06AB\u0631 ${c} \u062A\u0631\u0644\u0627\u0633\u0647 \u0634\u0648`:`\u0646\u0627\u0633\u0645 \u0648\u0631\u0648\u062F\u064A: \u0628\u0627\u06CC\u062F ${o} \u0648\u0627\u06CC, \u0645\u06AB\u0631 ${c} \u062A\u0631\u0644\u0627\u0633\u0647 \u0634\u0648`}case"invalid_value":return n.values.length===1?`\u0646\u0627\u0633\u0645 \u0648\u0631\u0648\u062F\u064A: \u0628\u0627\u06CC\u062F ${y(n.values[0])} \u0648\u0627\u06CC`:`\u0646\u0627\u0633\u0645 \u0627\u0646\u062A\u062E\u0627\u0628: \u0628\u0627\u06CC\u062F \u06CC\u0648 \u0644\u0647 ${h(n.values,"|")} \u0685\u062E\u0647 \u0648\u0627\u06CC`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`\u0689\u06CC\u0631 \u0644\u0648\u06CC: ${n.origin??"\u0627\u0631\u0632\u069A\u062A"} \u0628\u0627\u06CC\u062F ${o}${n.maximum.toString()} ${a.unit??"\u0639\u0646\u0635\u0631\u0648\u0646\u0647"} \u0648\u0644\u0631\u064A`:`\u0689\u06CC\u0631 \u0644\u0648\u06CC: ${n.origin??"\u0627\u0631\u0632\u069A\u062A"} \u0628\u0627\u06CC\u062F ${o}${n.maximum.toString()} \u0648\u064A`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`\u0689\u06CC\u0631 \u06A9\u0648\u0686\u0646\u06CC: ${n.origin} \u0628\u0627\u06CC\u062F ${o}${n.minimum.toString()} ${a.unit} \u0648\u0644\u0631\u064A`:`\u0689\u06CC\u0631 \u06A9\u0648\u0686\u0646\u06CC: ${n.origin} \u0628\u0627\u06CC\u062F ${o}${n.minimum.toString()} \u0648\u064A`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u0646\u0627\u0633\u0645 \u0645\u062A\u0646: \u0628\u0627\u06CC\u062F \u062F "${o.prefix}" \u0633\u0631\u0647 \u067E\u06CC\u0644 \u0634\u064A`:o.format==="ends_with"?`\u0646\u0627\u0633\u0645 \u0645\u062A\u0646: \u0628\u0627\u06CC\u062F \u062F "${o.suffix}" \u0633\u0631\u0647 \u067E\u0627\u06CC \u062A\u0647 \u0648\u0631\u0633\u064A\u0696\u064A`:o.format==="includes"?`\u0646\u0627\u0633\u0645 \u0645\u062A\u0646: \u0628\u0627\u06CC\u062F "${o.includes}" \u0648\u0644\u0631\u064A`:o.format==="regex"?`\u0646\u0627\u0633\u0645 \u0645\u062A\u0646: \u0628\u0627\u06CC\u062F \u062F ${o.pattern} \u0633\u0631\u0647 \u0645\u0637\u0627\u0628\u0642\u062A \u0648\u0644\u0631\u064A`:`${r[o.format]??n.format} \u0646\u0627\u0633\u0645 \u062F\u06CC`}case"not_multiple_of":return`\u0646\u0627\u0633\u0645 \u0639\u062F\u062F: \u0628\u0627\u06CC\u062F \u062F ${n.divisor} \u0645\u0636\u0631\u0628 \u0648\u064A`;case"unrecognized_keys":return`\u0646\u0627\u0633\u0645 ${n.keys.length>1?"\u06A9\u0644\u06CC\u0689\u0648\u0646\u0647":"\u06A9\u0644\u06CC\u0689"}: ${h(n.keys,", ")}`;case"invalid_key":return`\u0646\u0627\u0633\u0645 \u06A9\u0644\u06CC\u0689 \u067E\u0647 ${n.origin} \u06A9\u06D0`;case"invalid_union":return"\u0646\u0627\u0633\u0645\u0647 \u0648\u0631\u0648\u062F\u064A";case"invalid_element":return`\u0646\u0627\u0633\u0645 \u0639\u0646\u0635\u0631 \u067E\u0647 ${n.origin} \u06A9\u06D0`;default:return"\u0646\u0627\u0633\u0645\u0647 \u0648\u0631\u0648\u062F\u064A"}}};function Hg(){return{localeError:aS()}}var cS=()=>{let t={string:{unit:"znak\xF3w",verb:"mie\u0107"},file:{unit:"bajt\xF3w",verb:"mie\u0107"},array:{unit:"element\xF3w",verb:"mie\u0107"},set:{unit:"element\xF3w",verb:"mie\u0107"}};function e(n){return t[n]??null}let r={regex:"wyra\u017Cenie",email:"adres email",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:"data i godzina w formacie ISO",date:"data w formacie ISO",time:"godzina w formacie ISO",duration:"czas trwania ISO",ipv4:"adres IPv4",ipv6:"adres IPv6",cidrv4:"zakres IPv4",cidrv6:"zakres IPv6",base64:"ci\u0105g znak\xF3w zakodowany w formacie base64",base64url:"ci\u0105g znak\xF3w zakodowany w formacie base64url",json_string:"ci\u0105g znak\xF3w w formacie JSON",e164:"liczba E.164",jwt:"JWT",template_literal:"wej\u015Bcie"},i={nan:"NaN",number:"liczba",array:"tablica"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=k(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`Nieprawid\u0142owe dane wej\u015Bciowe: oczekiwano instanceof ${n.expected}, otrzymano ${c}`:`Nieprawid\u0142owe dane wej\u015Bciowe: oczekiwano ${o}, otrzymano ${c}`}case"invalid_value":return n.values.length===1?`Nieprawid\u0142owe dane wej\u015Bciowe: oczekiwano ${y(n.values[0])}`:`Nieprawid\u0142owa opcja: oczekiwano jednej z warto\u015Bci ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`Za du\u017Ca warto\u015B\u0107: oczekiwano, \u017Ce ${n.origin??"warto\u015B\u0107"} b\u0119dzie mie\u0107 ${o}${n.maximum.toString()} ${a.unit??"element\xF3w"}`:`Zbyt du\u017C(y/a/e): oczekiwano, \u017Ce ${n.origin??"warto\u015B\u0107"} b\u0119dzie wynosi\u0107 ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`Za ma\u0142a warto\u015B\u0107: oczekiwano, \u017Ce ${n.origin??"warto\u015B\u0107"} b\u0119dzie mie\u0107 ${o}${n.minimum.toString()} ${a.unit??"element\xF3w"}`:`Zbyt ma\u0142(y/a/e): oczekiwano, \u017Ce ${n.origin??"warto\u015B\u0107"} b\u0119dzie wynosi\u0107 ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Nieprawid\u0142owy ci\u0105g znak\xF3w: musi zaczyna\u0107 si\u0119 od "${o.prefix}"`:o.format==="ends_with"?`Nieprawid\u0142owy ci\u0105g znak\xF3w: musi ko\u0144czy\u0107 si\u0119 na "${o.suffix}"`:o.format==="includes"?`Nieprawid\u0142owy ci\u0105g znak\xF3w: musi zawiera\u0107 "${o.includes}"`:o.format==="regex"?`Nieprawid\u0142owy ci\u0105g znak\xF3w: musi odpowiada\u0107 wzorcowi ${o.pattern}`:`Nieprawid\u0142ow(y/a/e) ${r[o.format]??n.format}`}case"not_multiple_of":return`Nieprawid\u0142owa liczba: musi by\u0107 wielokrotno\u015Bci\u0105 ${n.divisor}`;case"unrecognized_keys":return`Nierozpoznane klucze${n.keys.length>1?"s":""}: ${h(n.keys,", ")}`;case"invalid_key":return`Nieprawid\u0142owy klucz w ${n.origin}`;case"invalid_union":return"Nieprawid\u0142owe dane wej\u015Bciowe";case"invalid_element":return`Nieprawid\u0142owa warto\u015B\u0107 w ${n.origin}`;default:return"Nieprawid\u0142owe dane wej\u015Bciowe"}}};function Vg(){return{localeError:cS()}}var lS=()=>{let t={string:{unit:"caracteres",verb:"ter"},file:{unit:"bytes",verb:"ter"},array:{unit:"itens",verb:"ter"},set:{unit:"itens",verb:"ter"}};function e(n){return t[n]??null}let r={regex:"padr\xE3o",email:"endere\xE7o de e-mail",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:"data e hora ISO",date:"data ISO",time:"hora ISO",duration:"dura\xE7\xE3o ISO",ipv4:"endere\xE7o IPv4",ipv6:"endere\xE7o IPv6",cidrv4:"faixa de IPv4",cidrv6:"faixa de IPv6",base64:"texto codificado em base64",base64url:"URL codificada em base64",json_string:"texto JSON",e164:"n\xFAmero E.164",jwt:"JWT",template_literal:"entrada"},i={nan:"NaN",number:"n\xFAmero",null:"nulo"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=k(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`Tipo inv\xE1lido: esperado instanceof ${n.expected}, recebido ${c}`:`Tipo inv\xE1lido: esperado ${o}, recebido ${c}`}case"invalid_value":return n.values.length===1?`Entrada inv\xE1lida: esperado ${y(n.values[0])}`:`Op\xE7\xE3o inv\xE1lida: esperada uma das ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`Muito grande: esperado que ${n.origin??"valor"} tivesse ${o}${n.maximum.toString()} ${a.unit??"elementos"}`:`Muito grande: esperado que ${n.origin??"valor"} fosse ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`Muito pequeno: esperado que ${n.origin} tivesse ${o}${n.minimum.toString()} ${a.unit}`:`Muito pequeno: esperado que ${n.origin} fosse ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Texto inv\xE1lido: deve come\xE7ar com "${o.prefix}"`:o.format==="ends_with"?`Texto inv\xE1lido: deve terminar com "${o.suffix}"`:o.format==="includes"?`Texto inv\xE1lido: deve incluir "${o.includes}"`:o.format==="regex"?`Texto inv\xE1lido: deve corresponder ao padr\xE3o ${o.pattern}`:`${r[o.format]??n.format} inv\xE1lido`}case"not_multiple_of":return`N\xFAmero inv\xE1lido: deve ser m\xFAltiplo de ${n.divisor}`;case"unrecognized_keys":return`Chave${n.keys.length>1?"s":""} desconhecida${n.keys.length>1?"s":""}: ${h(n.keys,", ")}`;case"invalid_key":return`Chave inv\xE1lida em ${n.origin}`;case"invalid_union":return"Entrada inv\xE1lida";case"invalid_element":return`Valor inv\xE1lido em ${n.origin}`;default:return"Campo inv\xE1lido"}}};function Kg(){return{localeError:lS()}}var uS=()=>{let t={string:{unit:"caractere",verb:"s\u0103 aib\u0103"},file:{unit:"octe\u021Bi",verb:"s\u0103 aib\u0103"},array:{unit:"elemente",verb:"s\u0103 aib\u0103"},set:{unit:"elemente",verb:"s\u0103 aib\u0103"},map:{unit:"intr\u0103ri",verb:"s\u0103 aib\u0103"}};function e(n){return t[n]??null}let r={regex:"intrare",email:"adres\u0103 de email",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:"dat\u0103 \u0219i or\u0103 ISO",date:"dat\u0103 ISO",time:"or\u0103 ISO",duration:"durat\u0103 ISO",ipv4:"adres\u0103 IPv4",ipv6:"adres\u0103 IPv6",mac:"adres\u0103 MAC",cidrv4:"interval IPv4",cidrv6:"interval IPv6",base64:"\u0219ir codat base64",base64url:"\u0219ir codat base64url",json_string:"\u0219ir JSON",e164:"num\u0103r E.164",jwt:"JWT",template_literal:"intrare"},i={nan:"NaN",string:"\u0219ir",number:"num\u0103r",boolean:"boolean",function:"func\u021Bie",array:"matrice",object:"obiect",undefined:"nedefinit",symbol:"simbol",bigint:"num\u0103r mare",void:"void",never:"never",map:"hart\u0103",set:"set"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=k(n.input),c=i[a]??a;return`Intrare invalid\u0103: a\u0219teptat ${o}, primit ${c}`}case"invalid_value":return n.values.length===1?`Intrare invalid\u0103: a\u0219teptat ${y(n.values[0])}`:`Op\u021Biune invalid\u0103: a\u0219teptat una dintre ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`Prea mare: a\u0219teptat ca ${n.origin??"valoarea"} ${a.verb} ${o}${n.maximum.toString()} ${a.unit??"elemente"}`:`Prea mare: a\u0219teptat ca ${n.origin??"valoarea"} s\u0103 fie ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`Prea mic: a\u0219teptat ca ${n.origin} ${a.verb} ${o}${n.minimum.toString()} ${a.unit}`:`Prea mic: a\u0219teptat ca ${n.origin} s\u0103 fie ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u0218ir invalid: trebuie s\u0103 \xEEnceap\u0103 cu "${o.prefix}"`:o.format==="ends_with"?`\u0218ir invalid: trebuie s\u0103 se termine cu "${o.suffix}"`:o.format==="includes"?`\u0218ir invalid: trebuie s\u0103 includ\u0103 "${o.includes}"`:o.format==="regex"?`\u0218ir invalid: trebuie s\u0103 se potriveasc\u0103 cu modelul ${o.pattern}`:`Format invalid: ${r[o.format]??n.format}`}case"not_multiple_of":return`Num\u0103r invalid: trebuie s\u0103 fie multiplu de ${n.divisor}`;case"unrecognized_keys":return`Chei nerecunoscute: ${h(n.keys,", ")}`;case"invalid_key":return`Cheie invalid\u0103 \xEEn ${n.origin}`;case"invalid_union":return"Intrare invalid\u0103";case"invalid_element":return`Valoare invalid\u0103 \xEEn ${n.origin}`;default:return"Intrare invalid\u0103"}}};function Gg(){return{localeError:uS()}}function Zg(t,e,r,i){let n=Math.abs(t),o=n%10,a=n%100;return a>=11&&a<=19?i:o===1?e:o>=2&&o<=4?r:i}var dS=()=>{let t={string:{unit:{one:"\u0441\u0438\u043C\u0432\u043E\u043B",few:"\u0441\u0438\u043C\u0432\u043E\u043B\u0430",many:"\u0441\u0438\u043C\u0432\u043E\u043B\u043E\u0432"},verb:"\u0438\u043C\u0435\u0442\u044C"},file:{unit:{one:"\u0431\u0430\u0439\u0442",few:"\u0431\u0430\u0439\u0442\u0430",many:"\u0431\u0430\u0439\u0442"},verb:"\u0438\u043C\u0435\u0442\u044C"},array:{unit:{one:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442",few:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u0430",many:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u043E\u0432"},verb:"\u0438\u043C\u0435\u0442\u044C"},set:{unit:{one:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442",few:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u0430",many:"\u044D\u043B\u0435\u043C\u0435\u043D\u0442\u043E\u0432"},verb:"\u0438\u043C\u0435\u0442\u044C"}};function e(n){return t[n]??null}let r={regex:"\u0432\u0432\u043E\u0434",email:"email \u0430\u0434\u0440\u0435\u0441",url:"URL",emoji:"\u044D\u043C\u043E\u0434\u0437\u0438",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO \u0434\u0430\u0442\u0430 \u0438 \u0432\u0440\u0435\u043C\u044F",date:"ISO \u0434\u0430\u0442\u0430",time:"ISO \u0432\u0440\u0435\u043C\u044F",duration:"ISO \u0434\u043B\u0438\u0442\u0435\u043B\u044C\u043D\u043E\u0441\u0442\u044C",ipv4:"IPv4 \u0430\u0434\u0440\u0435\u0441",ipv6:"IPv6 \u0430\u0434\u0440\u0435\u0441",cidrv4:"IPv4 \u0434\u0438\u0430\u043F\u0430\u0437\u043E\u043D",cidrv6:"IPv6 \u0434\u0438\u0430\u043F\u0430\u0437\u043E\u043D",base64:"\u0441\u0442\u0440\u043E\u043A\u0430 \u0432 \u0444\u043E\u0440\u043C\u0430\u0442\u0435 base64",base64url:"\u0441\u0442\u0440\u043E\u043A\u0430 \u0432 \u0444\u043E\u0440\u043C\u0430\u0442\u0435 base64url",json_string:"JSON \u0441\u0442\u0440\u043E\u043A\u0430",e164:"\u043D\u043E\u043C\u0435\u0440 E.164",jwt:"JWT",template_literal:"\u0432\u0432\u043E\u0434"},i={nan:"NaN",number:"\u0447\u0438\u0441\u043B\u043E",array:"\u043C\u0430\u0441\u0441\u0438\u0432"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=k(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u0432\u0432\u043E\u0434: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C instanceof ${n.expected}, \u043F\u043E\u043B\u0443\u0447\u0435\u043D\u043E ${c}`:`\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u0432\u0432\u043E\u0434: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C ${o}, \u043F\u043E\u043B\u0443\u0447\u0435\u043D\u043E ${c}`}case"invalid_value":return n.values.length===1?`\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u0432\u0432\u043E\u0434: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C ${y(n.values[0])}`:`\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u0432\u0430\u0440\u0438\u0430\u043D\u0442: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C \u043E\u0434\u043D\u043E \u0438\u0437 ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);if(a){let c=Number(n.maximum),l=Zg(c,a.unit.one,a.unit.few,a.unit.many);return`\u0421\u043B\u0438\u0448\u043A\u043E\u043C \u0431\u043E\u043B\u044C\u0448\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C, \u0447\u0442\u043E ${n.origin??"\u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435"} \u0431\u0443\u0434\u0435\u0442 \u0438\u043C\u0435\u0442\u044C ${o}${n.maximum.toString()} ${l}`}return`\u0421\u043B\u0438\u0448\u043A\u043E\u043C \u0431\u043E\u043B\u044C\u0448\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C, \u0447\u0442\u043E ${n.origin??"\u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435"} \u0431\u0443\u0434\u0435\u0442 ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);if(a){let c=Number(n.minimum),l=Zg(c,a.unit.one,a.unit.few,a.unit.many);return`\u0421\u043B\u0438\u0448\u043A\u043E\u043C \u043C\u0430\u043B\u0435\u043D\u044C\u043A\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C, \u0447\u0442\u043E ${n.origin} \u0431\u0443\u0434\u0435\u0442 \u0438\u043C\u0435\u0442\u044C ${o}${n.minimum.toString()} ${l}`}return`\u0421\u043B\u0438\u0448\u043A\u043E\u043C \u043C\u0430\u043B\u0435\u043D\u044C\u043A\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C, \u0447\u0442\u043E ${n.origin} \u0431\u0443\u0434\u0435\u0442 ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u041D\u0435\u0432\u0435\u0440\u043D\u0430\u044F \u0441\u0442\u0440\u043E\u043A\u0430: \u0434\u043E\u043B\u0436\u043D\u0430 \u043D\u0430\u0447\u0438\u043D\u0430\u0442\u044C\u0441\u044F \u0441 "${o.prefix}"`:o.format==="ends_with"?`\u041D\u0435\u0432\u0435\u0440\u043D\u0430\u044F \u0441\u0442\u0440\u043E\u043A\u0430: \u0434\u043E\u043B\u0436\u043D\u0430 \u0437\u0430\u043A\u0430\u043D\u0447\u0438\u0432\u0430\u0442\u044C\u0441\u044F \u043D\u0430 "${o.suffix}"`:o.format==="includes"?`\u041D\u0435\u0432\u0435\u0440\u043D\u0430\u044F \u0441\u0442\u0440\u043E\u043A\u0430: \u0434\u043E\u043B\u0436\u043D\u0430 \u0441\u043E\u0434\u0435\u0440\u0436\u0430\u0442\u044C "${o.includes}"`:o.format==="regex"?`\u041D\u0435\u0432\u0435\u0440\u043D\u0430\u044F \u0441\u0442\u0440\u043E\u043A\u0430: \u0434\u043E\u043B\u0436\u043D\u0430 \u0441\u043E\u043E\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u043E\u0432\u0430\u0442\u044C \u0448\u0430\u0431\u043B\u043E\u043D\u0443 ${o.pattern}`:`\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 ${r[o.format]??n.format}`}case"not_multiple_of":return`\u041D\u0435\u0432\u0435\u0440\u043D\u043E\u0435 \u0447\u0438\u0441\u043B\u043E: \u0434\u043E\u043B\u0436\u043D\u043E \u0431\u044B\u0442\u044C \u043A\u0440\u0430\u0442\u043D\u044B\u043C ${n.divisor}`;case"unrecognized_keys":return`\u041D\u0435\u0440\u0430\u0441\u043F\u043E\u0437\u043D\u0430\u043D\u043D${n.keys.length>1?"\u044B\u0435":"\u044B\u0439"} \u043A\u043B\u044E\u0447${n.keys.length>1?"\u0438":""}: ${h(n.keys,", ")}`;case"invalid_key":return`\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u043A\u043B\u044E\u0447 \u0432 ${n.origin}`;case"invalid_union":return"\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0435 \u0432\u0445\u043E\u0434\u043D\u044B\u0435 \u0434\u0430\u043D\u043D\u044B\u0435";case"invalid_element":return`\u041D\u0435\u0432\u0435\u0440\u043D\u043E\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435 \u0432 ${n.origin}`;default:return"\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0435 \u0432\u0445\u043E\u0434\u043D\u044B\u0435 \u0434\u0430\u043D\u043D\u044B\u0435"}}};function Wg(){return{localeError:dS()}}var pS=()=>{let t={string:{unit:"znakov",verb:"imeti"},file:{unit:"bajtov",verb:"imeti"},array:{unit:"elementov",verb:"imeti"},set:{unit:"elementov",verb:"imeti"}};function e(n){return t[n]??null}let r={regex:"vnos",email:"e-po\u0161tni naslov",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 datum in \u010Das",date:"ISO datum",time:"ISO \u010Das",duration:"ISO trajanje",ipv4:"IPv4 naslov",ipv6:"IPv6 naslov",cidrv4:"obseg IPv4",cidrv6:"obseg IPv6",base64:"base64 kodiran niz",base64url:"base64url kodiran niz",json_string:"JSON niz",e164:"E.164 \u0161tevilka",jwt:"JWT",template_literal:"vnos"},i={nan:"NaN",number:"\u0161tevilo",array:"tabela"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=k(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`Neveljaven vnos: pri\u010Dakovano instanceof ${n.expected}, prejeto ${c}`:`Neveljaven vnos: pri\u010Dakovano ${o}, prejeto ${c}`}case"invalid_value":return n.values.length===1?`Neveljaven vnos: pri\u010Dakovano ${y(n.values[0])}`:`Neveljavna mo\u017Enost: pri\u010Dakovano eno izmed ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`Preveliko: pri\u010Dakovano, da bo ${n.origin??"vrednost"} imelo ${o}${n.maximum.toString()} ${a.unit??"elementov"}`:`Preveliko: pri\u010Dakovano, da bo ${n.origin??"vrednost"} ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`Premajhno: pri\u010Dakovano, da bo ${n.origin} imelo ${o}${n.minimum.toString()} ${a.unit}`:`Premajhno: pri\u010Dakovano, da bo ${n.origin} ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Neveljaven niz: mora se za\u010Deti z "${o.prefix}"`:o.format==="ends_with"?`Neveljaven niz: mora se kon\u010Dati z "${o.suffix}"`:o.format==="includes"?`Neveljaven niz: mora vsebovati "${o.includes}"`:o.format==="regex"?`Neveljaven niz: mora ustrezati vzorcu ${o.pattern}`:`Neveljaven ${r[o.format]??n.format}`}case"not_multiple_of":return`Neveljavno \u0161tevilo: mora biti ve\u010Dkratnik ${n.divisor}`;case"unrecognized_keys":return`Neprepoznan${n.keys.length>1?"i klju\u010Di":" klju\u010D"}: ${h(n.keys,", ")}`;case"invalid_key":return`Neveljaven klju\u010D v ${n.origin}`;case"invalid_union":return"Neveljaven vnos";case"invalid_element":return`Neveljavna vrednost v ${n.origin}`;default:return"Neveljaven vnos"}}};function qg(){return{localeError:pS()}}var mS=()=>{let t={string:{unit:"tecken",verb:"att ha"},file:{unit:"bytes",verb:"att ha"},array:{unit:"objekt",verb:"att inneh\xE5lla"},set:{unit:"objekt",verb:"att inneh\xE5lla"}};function e(n){return t[n]??null}let r={regex:"regulj\xE4rt uttryck",email:"e-postadress",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-datum och tid",date:"ISO-datum",time:"ISO-tid",duration:"ISO-varaktighet",ipv4:"IPv4-intervall",ipv6:"IPv6-intervall",cidrv4:"IPv4-spektrum",cidrv6:"IPv6-spektrum",base64:"base64-kodad str\xE4ng",base64url:"base64url-kodad str\xE4ng",json_string:"JSON-str\xE4ng",e164:"E.164-nummer",jwt:"JWT",template_literal:"mall-literal"},i={nan:"NaN",number:"antal",array:"lista"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=k(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`Ogiltig inmatning: f\xF6rv\xE4ntat instanceof ${n.expected}, fick ${c}`:`Ogiltig inmatning: f\xF6rv\xE4ntat ${o}, fick ${c}`}case"invalid_value":return n.values.length===1?`Ogiltig inmatning: f\xF6rv\xE4ntat ${y(n.values[0])}`:`Ogiltigt val: f\xF6rv\xE4ntade en av ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`F\xF6r stor(t): f\xF6rv\xE4ntade ${n.origin??"v\xE4rdet"} att ha ${o}${n.maximum.toString()} ${a.unit??"element"}`:`F\xF6r stor(t): f\xF6rv\xE4ntat ${n.origin??"v\xE4rdet"} att ha ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`F\xF6r lite(t): f\xF6rv\xE4ntade ${n.origin??"v\xE4rdet"} att ha ${o}${n.minimum.toString()} ${a.unit}`:`F\xF6r lite(t): f\xF6rv\xE4ntade ${n.origin??"v\xE4rdet"} att ha ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Ogiltig str\xE4ng: m\xE5ste b\xF6rja med "${o.prefix}"`:o.format==="ends_with"?`Ogiltig str\xE4ng: m\xE5ste sluta med "${o.suffix}"`:o.format==="includes"?`Ogiltig str\xE4ng: m\xE5ste inneh\xE5lla "${o.includes}"`:o.format==="regex"?`Ogiltig str\xE4ng: m\xE5ste matcha m\xF6nstret "${o.pattern}"`:`Ogiltig(t) ${r[o.format]??n.format}`}case"not_multiple_of":return`Ogiltigt tal: m\xE5ste vara en multipel av ${n.divisor}`;case"unrecognized_keys":return`${n.keys.length>1?"Ok\xE4nda nycklar":"Ok\xE4nd nyckel"}: ${h(n.keys,", ")}`;case"invalid_key":return`Ogiltig nyckel i ${n.origin??"v\xE4rdet"}`;case"invalid_union":return"Ogiltig input";case"invalid_element":return`Ogiltigt v\xE4rde i ${n.origin??"v\xE4rdet"}`;default:return"Ogiltig input"}}};function Jg(){return{localeError:mS()}}var fS=()=>{let t={string:{unit:"\u0B8E\u0BB4\u0BC1\u0BA4\u0BCD\u0BA4\u0BC1\u0B95\u0BCD\u0B95\u0BB3\u0BCD",verb:"\u0B95\u0BCA\u0BA3\u0BCD\u0B9F\u0BBF\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD"},file:{unit:"\u0BAA\u0BC8\u0B9F\u0BCD\u0B9F\u0BC1\u0B95\u0BB3\u0BCD",verb:"\u0B95\u0BCA\u0BA3\u0BCD\u0B9F\u0BBF\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD"},array:{unit:"\u0B89\u0BB1\u0BC1\u0BAA\u0BCD\u0BAA\u0BC1\u0B95\u0BB3\u0BCD",verb:"\u0B95\u0BCA\u0BA3\u0BCD\u0B9F\u0BBF\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD"},set:{unit:"\u0B89\u0BB1\u0BC1\u0BAA\u0BCD\u0BAA\u0BC1\u0B95\u0BB3\u0BCD",verb:"\u0B95\u0BCA\u0BA3\u0BCD\u0B9F\u0BBF\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD"}};function e(n){return t[n]??null}let r={regex:"\u0B89\u0BB3\u0BCD\u0BB3\u0BC0\u0B9F\u0BC1",email:"\u0BAE\u0BBF\u0BA9\u0BCD\u0BA9\u0B9E\u0BCD\u0B9A\u0BB2\u0BCD \u0BAE\u0BC1\u0B95\u0BB5\u0BB0\u0BBF",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 \u0BA4\u0BC7\u0BA4\u0BBF \u0BA8\u0BC7\u0BB0\u0BAE\u0BCD",date:"ISO \u0BA4\u0BC7\u0BA4\u0BBF",time:"ISO \u0BA8\u0BC7\u0BB0\u0BAE\u0BCD",duration:"ISO \u0B95\u0BBE\u0BB2 \u0B85\u0BB3\u0BB5\u0BC1",ipv4:"IPv4 \u0BAE\u0BC1\u0B95\u0BB5\u0BB0\u0BBF",ipv6:"IPv6 \u0BAE\u0BC1\u0B95\u0BB5\u0BB0\u0BBF",cidrv4:"IPv4 \u0BB5\u0BB0\u0BAE\u0BCD\u0BAA\u0BC1",cidrv6:"IPv6 \u0BB5\u0BB0\u0BAE\u0BCD\u0BAA\u0BC1",base64:"base64-encoded \u0B9A\u0BB0\u0BAE\u0BCD",base64url:"base64url-encoded \u0B9A\u0BB0\u0BAE\u0BCD",json_string:"JSON \u0B9A\u0BB0\u0BAE\u0BCD",e164:"E.164 \u0B8E\u0BA3\u0BCD",jwt:"JWT",template_literal:"input"},i={nan:"NaN",number:"\u0B8E\u0BA3\u0BCD",array:"\u0B85\u0BA3\u0BBF",null:"\u0BB5\u0BC6\u0BB1\u0BC1\u0BAE\u0BC8"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=k(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B89\u0BB3\u0BCD\u0BB3\u0BC0\u0B9F\u0BC1: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 instanceof ${n.expected}, \u0BAA\u0BC6\u0BB1\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${c}`:`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B89\u0BB3\u0BCD\u0BB3\u0BC0\u0B9F\u0BC1: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${o}, \u0BAA\u0BC6\u0BB1\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${c}`}case"invalid_value":return n.values.length===1?`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B89\u0BB3\u0BCD\u0BB3\u0BC0\u0B9F\u0BC1: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${y(n.values[0])}`:`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0BB5\u0BBF\u0BB0\u0BC1\u0BAA\u0BCD\u0BAA\u0BAE\u0BCD: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${h(n.values,"|")} \u0B87\u0BB2\u0BCD \u0B92\u0BA9\u0BCD\u0BB1\u0BC1`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`\u0BAE\u0BBF\u0B95 \u0BAA\u0BC6\u0BB0\u0BBF\u0BAF\u0BA4\u0BC1: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${n.origin??"\u0BAE\u0BA4\u0BBF\u0BAA\u0BCD\u0BAA\u0BC1"} ${o}${n.maximum.toString()} ${a.unit??"\u0B89\u0BB1\u0BC1\u0BAA\u0BCD\u0BAA\u0BC1\u0B95\u0BB3\u0BCD"} \u0B86\u0B95 \u0B87\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`:`\u0BAE\u0BBF\u0B95 \u0BAA\u0BC6\u0BB0\u0BBF\u0BAF\u0BA4\u0BC1: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${n.origin??"\u0BAE\u0BA4\u0BBF\u0BAA\u0BCD\u0BAA\u0BC1"} ${o}${n.maximum.toString()} \u0B86\u0B95 \u0B87\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`\u0BAE\u0BBF\u0B95\u0B9A\u0BCD \u0B9A\u0BBF\u0BB1\u0BBF\u0BAF\u0BA4\u0BC1: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${n.origin} ${o}${n.minimum.toString()} ${a.unit} \u0B86\u0B95 \u0B87\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`:`\u0BAE\u0BBF\u0B95\u0B9A\u0BCD \u0B9A\u0BBF\u0BB1\u0BBF\u0BAF\u0BA4\u0BC1: \u0B8E\u0BA4\u0BBF\u0BB0\u0BCD\u0BAA\u0BBE\u0BB0\u0BCD\u0B95\u0BCD\u0B95\u0BAA\u0BCD\u0BAA\u0B9F\u0BCD\u0B9F\u0BA4\u0BC1 ${n.origin} ${o}${n.minimum.toString()} \u0B86\u0B95 \u0B87\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B9A\u0BB0\u0BAE\u0BCD: "${o.prefix}" \u0B87\u0BB2\u0BCD \u0BA4\u0BCA\u0B9F\u0B99\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`:o.format==="ends_with"?`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B9A\u0BB0\u0BAE\u0BCD: "${o.suffix}" \u0B87\u0BB2\u0BCD \u0BAE\u0BC1\u0B9F\u0BBF\u0BB5\u0B9F\u0BC8\u0BAF \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`:o.format==="includes"?`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B9A\u0BB0\u0BAE\u0BCD: "${o.includes}" \u0B90 \u0B89\u0BB3\u0BCD\u0BB3\u0B9F\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`:o.format==="regex"?`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B9A\u0BB0\u0BAE\u0BCD: ${o.pattern} \u0BAE\u0BC1\u0BB1\u0BC8\u0BAA\u0BBE\u0B9F\u0BCD\u0B9F\u0BC1\u0B9F\u0BA9\u0BCD \u0BAA\u0BCA\u0BB0\u0BC1\u0BA8\u0BCD\u0BA4 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`:`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 ${r[o.format]??n.format}`}case"not_multiple_of":return`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B8E\u0BA3\u0BCD: ${n.divisor} \u0B87\u0BA9\u0BCD \u0BAA\u0BB2\u0BAE\u0BBE\u0B95 \u0B87\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`;case"unrecognized_keys":return`\u0B85\u0B9F\u0BC8\u0BAF\u0BBE\u0BB3\u0BAE\u0BCD \u0BA4\u0BC6\u0BB0\u0BBF\u0BAF\u0BBE\u0BA4 \u0BB5\u0BBF\u0B9A\u0BC8${n.keys.length>1?"\u0B95\u0BB3\u0BCD":""}: ${h(n.keys,", ")}`;case"invalid_key":return`${n.origin} \u0B87\u0BB2\u0BCD \u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0BB5\u0BBF\u0B9A\u0BC8`;case"invalid_union":return"\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B89\u0BB3\u0BCD\u0BB3\u0BC0\u0B9F\u0BC1";case"invalid_element":return`${n.origin} \u0B87\u0BB2\u0BCD \u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0BAE\u0BA4\u0BBF\u0BAA\u0BCD\u0BAA\u0BC1`;default:return"\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B89\u0BB3\u0BCD\u0BB3\u0BC0\u0B9F\u0BC1"}}};function Yg(){return{localeError:fS()}}var gS=()=>{let t={string:{unit:"\u0E15\u0E31\u0E27\u0E2D\u0E31\u0E01\u0E29\u0E23",verb:"\u0E04\u0E27\u0E23\u0E21\u0E35"},file:{unit:"\u0E44\u0E1A\u0E15\u0E4C",verb:"\u0E04\u0E27\u0E23\u0E21\u0E35"},array:{unit:"\u0E23\u0E32\u0E22\u0E01\u0E32\u0E23",verb:"\u0E04\u0E27\u0E23\u0E21\u0E35"},set:{unit:"\u0E23\u0E32\u0E22\u0E01\u0E32\u0E23",verb:"\u0E04\u0E27\u0E23\u0E21\u0E35"}};function e(n){return t[n]??null}let r={regex:"\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E17\u0E35\u0E48\u0E1B\u0E49\u0E2D\u0E19",email:"\u0E17\u0E35\u0E48\u0E2D\u0E22\u0E39\u0E48\u0E2D\u0E35\u0E40\u0E21\u0E25",url:"URL",emoji:"\u0E2D\u0E34\u0E42\u0E21\u0E08\u0E34",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"\u0E27\u0E31\u0E19\u0E17\u0E35\u0E48\u0E40\u0E27\u0E25\u0E32\u0E41\u0E1A\u0E1A ISO",date:"\u0E27\u0E31\u0E19\u0E17\u0E35\u0E48\u0E41\u0E1A\u0E1A ISO",time:"\u0E40\u0E27\u0E25\u0E32\u0E41\u0E1A\u0E1A ISO",duration:"\u0E0A\u0E48\u0E27\u0E07\u0E40\u0E27\u0E25\u0E32\u0E41\u0E1A\u0E1A ISO",ipv4:"\u0E17\u0E35\u0E48\u0E2D\u0E22\u0E39\u0E48 IPv4",ipv6:"\u0E17\u0E35\u0E48\u0E2D\u0E22\u0E39\u0E48 IPv6",cidrv4:"\u0E0A\u0E48\u0E27\u0E07 IP \u0E41\u0E1A\u0E1A IPv4",cidrv6:"\u0E0A\u0E48\u0E27\u0E07 IP \u0E41\u0E1A\u0E1A IPv6",base64:"\u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21\u0E41\u0E1A\u0E1A Base64",base64url:"\u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21\u0E41\u0E1A\u0E1A Base64 \u0E2A\u0E33\u0E2B\u0E23\u0E31\u0E1A URL",json_string:"\u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21\u0E41\u0E1A\u0E1A JSON",e164:"\u0E40\u0E1A\u0E2D\u0E23\u0E4C\u0E42\u0E17\u0E23\u0E28\u0E31\u0E1E\u0E17\u0E4C\u0E23\u0E30\u0E2B\u0E27\u0E48\u0E32\u0E07\u0E1B\u0E23\u0E30\u0E40\u0E17\u0E28 (E.164)",jwt:"\u0E42\u0E17\u0E40\u0E04\u0E19 JWT",template_literal:"\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E17\u0E35\u0E48\u0E1B\u0E49\u0E2D\u0E19"},i={nan:"NaN",number:"\u0E15\u0E31\u0E27\u0E40\u0E25\u0E02",array:"\u0E2D\u0E32\u0E23\u0E4C\u0E40\u0E23\u0E22\u0E4C (Array)",null:"\u0E44\u0E21\u0E48\u0E21\u0E35\u0E04\u0E48\u0E32 (null)"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=k(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`\u0E1B\u0E23\u0E30\u0E40\u0E20\u0E17\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E04\u0E27\u0E23\u0E40\u0E1B\u0E47\u0E19 instanceof ${n.expected} \u0E41\u0E15\u0E48\u0E44\u0E14\u0E49\u0E23\u0E31\u0E1A ${c}`:`\u0E1B\u0E23\u0E30\u0E40\u0E20\u0E17\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E04\u0E27\u0E23\u0E40\u0E1B\u0E47\u0E19 ${o} \u0E41\u0E15\u0E48\u0E44\u0E14\u0E49\u0E23\u0E31\u0E1A ${c}`}case"invalid_value":return n.values.length===1?`\u0E04\u0E48\u0E32\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E04\u0E27\u0E23\u0E40\u0E1B\u0E47\u0E19 ${y(n.values[0])}`:`\u0E15\u0E31\u0E27\u0E40\u0E25\u0E37\u0E2D\u0E01\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E04\u0E27\u0E23\u0E40\u0E1B\u0E47\u0E19\u0E2B\u0E19\u0E36\u0E48\u0E07\u0E43\u0E19 ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"\u0E44\u0E21\u0E48\u0E40\u0E01\u0E34\u0E19":"\u0E19\u0E49\u0E2D\u0E22\u0E01\u0E27\u0E48\u0E32",a=e(n.origin);return a?`\u0E40\u0E01\u0E34\u0E19\u0E01\u0E33\u0E2B\u0E19\u0E14: ${n.origin??"\u0E04\u0E48\u0E32"} \u0E04\u0E27\u0E23\u0E21\u0E35${o} ${n.maximum.toString()} ${a.unit??"\u0E23\u0E32\u0E22\u0E01\u0E32\u0E23"}`:`\u0E40\u0E01\u0E34\u0E19\u0E01\u0E33\u0E2B\u0E19\u0E14: ${n.origin??"\u0E04\u0E48\u0E32"} \u0E04\u0E27\u0E23\u0E21\u0E35${o} ${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?"\u0E2D\u0E22\u0E48\u0E32\u0E07\u0E19\u0E49\u0E2D\u0E22":"\u0E21\u0E32\u0E01\u0E01\u0E27\u0E48\u0E32",a=e(n.origin);return a?`\u0E19\u0E49\u0E2D\u0E22\u0E01\u0E27\u0E48\u0E32\u0E01\u0E33\u0E2B\u0E19\u0E14: ${n.origin} \u0E04\u0E27\u0E23\u0E21\u0E35${o} ${n.minimum.toString()} ${a.unit}`:`\u0E19\u0E49\u0E2D\u0E22\u0E01\u0E27\u0E48\u0E32\u0E01\u0E33\u0E2B\u0E19\u0E14: ${n.origin} \u0E04\u0E27\u0E23\u0E21\u0E35${o} ${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u0E23\u0E39\u0E1B\u0E41\u0E1A\u0E1A\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21\u0E15\u0E49\u0E2D\u0E07\u0E02\u0E36\u0E49\u0E19\u0E15\u0E49\u0E19\u0E14\u0E49\u0E27\u0E22 "${o.prefix}"`:o.format==="ends_with"?`\u0E23\u0E39\u0E1B\u0E41\u0E1A\u0E1A\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21\u0E15\u0E49\u0E2D\u0E07\u0E25\u0E07\u0E17\u0E49\u0E32\u0E22\u0E14\u0E49\u0E27\u0E22 "${o.suffix}"`:o.format==="includes"?`\u0E23\u0E39\u0E1B\u0E41\u0E1A\u0E1A\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21\u0E15\u0E49\u0E2D\u0E07\u0E21\u0E35 "${o.includes}" \u0E2D\u0E22\u0E39\u0E48\u0E43\u0E19\u0E02\u0E49\u0E2D\u0E04\u0E27\u0E32\u0E21`:o.format==="regex"?`\u0E23\u0E39\u0E1B\u0E41\u0E1A\u0E1A\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E15\u0E49\u0E2D\u0E07\u0E15\u0E23\u0E07\u0E01\u0E31\u0E1A\u0E23\u0E39\u0E1B\u0E41\u0E1A\u0E1A\u0E17\u0E35\u0E48\u0E01\u0E33\u0E2B\u0E19\u0E14 ${o.pattern}`:`\u0E23\u0E39\u0E1B\u0E41\u0E1A\u0E1A\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: ${r[o.format]??n.format}`}case"not_multiple_of":return`\u0E15\u0E31\u0E27\u0E40\u0E25\u0E02\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E15\u0E49\u0E2D\u0E07\u0E40\u0E1B\u0E47\u0E19\u0E08\u0E33\u0E19\u0E27\u0E19\u0E17\u0E35\u0E48\u0E2B\u0E32\u0E23\u0E14\u0E49\u0E27\u0E22 ${n.divisor} \u0E44\u0E14\u0E49\u0E25\u0E07\u0E15\u0E31\u0E27`;case"unrecognized_keys":return`\u0E1E\u0E1A\u0E04\u0E35\u0E22\u0E4C\u0E17\u0E35\u0E48\u0E44\u0E21\u0E48\u0E23\u0E39\u0E49\u0E08\u0E31\u0E01: ${h(n.keys,", ")}`;case"invalid_key":return`\u0E04\u0E35\u0E22\u0E4C\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07\u0E43\u0E19 ${n.origin}`;case"invalid_union":return"\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E44\u0E21\u0E48\u0E15\u0E23\u0E07\u0E01\u0E31\u0E1A\u0E23\u0E39\u0E1B\u0E41\u0E1A\u0E1A\u0E22\u0E39\u0E40\u0E19\u0E35\u0E22\u0E19\u0E17\u0E35\u0E48\u0E01\u0E33\u0E2B\u0E19\u0E14\u0E44\u0E27\u0E49";case"invalid_element":return`\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07\u0E43\u0E19 ${n.origin}`;default:return"\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07"}}};function Xg(){return{localeError:gS()}}var hS=()=>{let t={string:{unit:"karakter",verb:"olmal\u0131"},file:{unit:"bayt",verb:"olmal\u0131"},array:{unit:"\xF6\u011Fe",verb:"olmal\u0131"},set:{unit:"\xF6\u011Fe",verb:"olmal\u0131"}};function e(n){return t[n]??null}let r={regex:"girdi",email:"e-posta adresi",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 tarih ve saat",date:"ISO tarih",time:"ISO saat",duration:"ISO s\xFCre",ipv4:"IPv4 adresi",ipv6:"IPv6 adresi",cidrv4:"IPv4 aral\u0131\u011F\u0131",cidrv6:"IPv6 aral\u0131\u011F\u0131",base64:"base64 ile \u015Fifrelenmi\u015F metin",base64url:"base64url ile \u015Fifrelenmi\u015F metin",json_string:"JSON dizesi",e164:"E.164 say\u0131s\u0131",jwt:"JWT",template_literal:"\u015Eablon dizesi"},i={nan:"NaN"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=k(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`Ge\xE7ersiz de\u011Fer: beklenen instanceof ${n.expected}, al\u0131nan ${c}`:`Ge\xE7ersiz de\u011Fer: beklenen ${o}, al\u0131nan ${c}`}case"invalid_value":return n.values.length===1?`Ge\xE7ersiz de\u011Fer: beklenen ${y(n.values[0])}`:`Ge\xE7ersiz se\xE7enek: a\u015Fa\u011F\u0131dakilerden biri olmal\u0131: ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`\xC7ok b\xFCy\xFCk: beklenen ${n.origin??"de\u011Fer"} ${o}${n.maximum.toString()} ${a.unit??"\xF6\u011Fe"}`:`\xC7ok b\xFCy\xFCk: beklenen ${n.origin??"de\u011Fer"} ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`\xC7ok k\xFC\xE7\xFCk: beklenen ${n.origin} ${o}${n.minimum.toString()} ${a.unit}`:`\xC7ok k\xFC\xE7\xFCk: beklenen ${n.origin} ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Ge\xE7ersiz metin: "${o.prefix}" ile ba\u015Flamal\u0131`:o.format==="ends_with"?`Ge\xE7ersiz metin: "${o.suffix}" ile bitmeli`:o.format==="includes"?`Ge\xE7ersiz metin: "${o.includes}" i\xE7ermeli`:o.format==="regex"?`Ge\xE7ersiz metin: ${o.pattern} desenine uymal\u0131`:`Ge\xE7ersiz ${r[o.format]??n.format}`}case"not_multiple_of":return`Ge\xE7ersiz say\u0131: ${n.divisor} ile tam b\xF6l\xFCnebilmeli`;case"unrecognized_keys":return`Tan\u0131nmayan anahtar${n.keys.length>1?"lar":""}: ${h(n.keys,", ")}`;case"invalid_key":return`${n.origin} i\xE7inde ge\xE7ersiz anahtar`;case"invalid_union":return"Ge\xE7ersiz de\u011Fer";case"invalid_element":return`${n.origin} i\xE7inde ge\xE7ersiz de\u011Fer`;default:return"Ge\xE7ersiz de\u011Fer"}}};function Qg(){return{localeError:hS()}}var bS=()=>{let t={string:{unit:"\u0441\u0438\u043C\u0432\u043E\u043B\u0456\u0432",verb:"\u043C\u0430\u0442\u0438\u043C\u0435"},file:{unit:"\u0431\u0430\u0439\u0442\u0456\u0432",verb:"\u043C\u0430\u0442\u0438\u043C\u0435"},array:{unit:"\u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0456\u0432",verb:"\u043C\u0430\u0442\u0438\u043C\u0435"},set:{unit:"\u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0456\u0432",verb:"\u043C\u0430\u0442\u0438\u043C\u0435"}};function e(n){return t[n]??null}let r={regex:"\u0432\u0445\u0456\u0434\u043D\u0456 \u0434\u0430\u043D\u0456",email:"\u0430\u0434\u0440\u0435\u0441\u0430 \u0435\u043B\u0435\u043A\u0442\u0440\u043E\u043D\u043D\u043E\u0457 \u043F\u043E\u0448\u0442\u0438",url:"URL",emoji:"\u0435\u043C\u043E\u0434\u0437\u0456",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"\u0434\u0430\u0442\u0430 \u0442\u0430 \u0447\u0430\u0441 ISO",date:"\u0434\u0430\u0442\u0430 ISO",time:"\u0447\u0430\u0441 ISO",duration:"\u0442\u0440\u0438\u0432\u0430\u043B\u0456\u0441\u0442\u044C ISO",ipv4:"\u0430\u0434\u0440\u0435\u0441\u0430 IPv4",ipv6:"\u0430\u0434\u0440\u0435\u0441\u0430 IPv6",cidrv4:"\u0434\u0456\u0430\u043F\u0430\u0437\u043E\u043D IPv4",cidrv6:"\u0434\u0456\u0430\u043F\u0430\u0437\u043E\u043D IPv6",base64:"\u0440\u044F\u0434\u043E\u043A \u0443 \u043A\u043E\u0434\u0443\u0432\u0430\u043D\u043D\u0456 base64",base64url:"\u0440\u044F\u0434\u043E\u043A \u0443 \u043A\u043E\u0434\u0443\u0432\u0430\u043D\u043D\u0456 base64url",json_string:"\u0440\u044F\u0434\u043E\u043A JSON",e164:"\u043D\u043E\u043C\u0435\u0440 E.164",jwt:"JWT",template_literal:"\u0432\u0445\u0456\u0434\u043D\u0456 \u0434\u0430\u043D\u0456"},i={nan:"NaN",number:"\u0447\u0438\u0441\u043B\u043E",array:"\u043C\u0430\u0441\u0438\u0432"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=k(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0456 \u0432\u0445\u0456\u0434\u043D\u0456 \u0434\u0430\u043D\u0456: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F instanceof ${n.expected}, \u043E\u0442\u0440\u0438\u043C\u0430\u043D\u043E ${c}`:`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0456 \u0432\u0445\u0456\u0434\u043D\u0456 \u0434\u0430\u043D\u0456: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F ${o}, \u043E\u0442\u0440\u0438\u043C\u0430\u043D\u043E ${c}`}case"invalid_value":return n.values.length===1?`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0456 \u0432\u0445\u0456\u0434\u043D\u0456 \u0434\u0430\u043D\u0456: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F ${y(n.values[0])}`:`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0430 \u043E\u043F\u0446\u0456\u044F: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F \u043E\u0434\u043D\u0435 \u0437 ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`\u0417\u0430\u043D\u0430\u0434\u0442\u043E \u0432\u0435\u043B\u0438\u043A\u0435: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F, \u0449\u043E ${n.origin??"\u0437\u043D\u0430\u0447\u0435\u043D\u043D\u044F"} ${a.verb} ${o}${n.maximum.toString()} ${a.unit??"\u0435\u043B\u0435\u043C\u0435\u043D\u0442\u0456\u0432"}`:`\u0417\u0430\u043D\u0430\u0434\u0442\u043E \u0432\u0435\u043B\u0438\u043A\u0435: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F, \u0449\u043E ${n.origin??"\u0437\u043D\u0430\u0447\u0435\u043D\u043D\u044F"} \u0431\u0443\u0434\u0435 ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`\u0417\u0430\u043D\u0430\u0434\u0442\u043E \u043C\u0430\u043B\u0435: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F, \u0449\u043E ${n.origin} ${a.verb} ${o}${n.minimum.toString()} ${a.unit}`:`\u0417\u0430\u043D\u0430\u0434\u0442\u043E \u043C\u0430\u043B\u0435: \u043E\u0447\u0456\u043A\u0443\u0454\u0442\u044C\u0441\u044F, \u0449\u043E ${n.origin} \u0431\u0443\u0434\u0435 ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0438\u0439 \u0440\u044F\u0434\u043E\u043A: \u043F\u043E\u0432\u0438\u043D\u0435\u043D \u043F\u043E\u0447\u0438\u043D\u0430\u0442\u0438\u0441\u044F \u0437 "${o.prefix}"`:o.format==="ends_with"?`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0438\u0439 \u0440\u044F\u0434\u043E\u043A: \u043F\u043E\u0432\u0438\u043D\u0435\u043D \u0437\u0430\u043A\u0456\u043D\u0447\u0443\u0432\u0430\u0442\u0438\u0441\u044F \u043D\u0430 "${o.suffix}"`:o.format==="includes"?`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0438\u0439 \u0440\u044F\u0434\u043E\u043A: \u043F\u043E\u0432\u0438\u043D\u0435\u043D \u043C\u0456\u0441\u0442\u0438\u0442\u0438 "${o.includes}"`:o.format==="regex"?`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0438\u0439 \u0440\u044F\u0434\u043E\u043A: \u043F\u043E\u0432\u0438\u043D\u0435\u043D \u0432\u0456\u0434\u043F\u043E\u0432\u0456\u0434\u0430\u0442\u0438 \u0448\u0430\u0431\u043B\u043E\u043D\u0443 ${o.pattern}`:`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0438\u0439 ${r[o.format]??n.format}`}case"not_multiple_of":return`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0435 \u0447\u0438\u0441\u043B\u043E: \u043F\u043E\u0432\u0438\u043D\u043D\u043E \u0431\u0443\u0442\u0438 \u043A\u0440\u0430\u0442\u043D\u0438\u043C ${n.divisor}`;case"unrecognized_keys":return`\u041D\u0435\u0440\u043E\u0437\u043F\u0456\u0437\u043D\u0430\u043D\u0438\u0439 \u043A\u043B\u044E\u0447${n.keys.length>1?"\u0456":""}: ${h(n.keys,", ")}`;case"invalid_key":return`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0438\u0439 \u043A\u043B\u044E\u0447 \u0443 ${n.origin}`;case"invalid_union":return"\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0456 \u0432\u0445\u0456\u0434\u043D\u0456 \u0434\u0430\u043D\u0456";case"invalid_element":return`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u043D\u044F \u0443 ${n.origin}`;default:return"\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0456 \u0432\u0445\u0456\u0434\u043D\u0456 \u0434\u0430\u043D\u0456"}}};function Ai(){return{localeError:bS()}}function eh(){return Ai()}var vS=()=>{let t={string:{unit:"\u062D\u0631\u0648\u0641",verb:"\u06C1\u0648\u0646\u0627"},file:{unit:"\u0628\u0627\u0626\u0679\u0633",verb:"\u06C1\u0648\u0646\u0627"},array:{unit:"\u0622\u0626\u0679\u0645\u0632",verb:"\u06C1\u0648\u0646\u0627"},set:{unit:"\u0622\u0626\u0679\u0645\u0632",verb:"\u06C1\u0648\u0646\u0627"}};function e(n){return t[n]??null}let r={regex:"\u0627\u0646 \u067E\u0679",email:"\u0627\u06CC \u0645\u06CC\u0644 \u0627\u06CC\u0688\u0631\u06CC\u0633",url:"\u06CC\u0648 \u0622\u0631 \u0627\u06CC\u0644",emoji:"\u0627\u06CC\u0645\u0648\u062C\u06CC",uuid:"\u06CC\u0648 \u06CC\u0648 \u0622\u0626\u06CC \u0688\u06CC",uuidv4:"\u06CC\u0648 \u06CC\u0648 \u0622\u0626\u06CC \u0688\u06CC \u0648\u06CC 4",uuidv6:"\u06CC\u0648 \u06CC\u0648 \u0622\u0626\u06CC \u0688\u06CC \u0648\u06CC 6",nanoid:"\u0646\u06CC\u0646\u0648 \u0622\u0626\u06CC \u0688\u06CC",guid:"\u062C\u06CC \u06CC\u0648 \u0622\u0626\u06CC \u0688\u06CC",cuid:"\u0633\u06CC \u06CC\u0648 \u0622\u0626\u06CC \u0688\u06CC",cuid2:"\u0633\u06CC \u06CC\u0648 \u0622\u0626\u06CC \u0688\u06CC 2",ulid:"\u06CC\u0648 \u0627\u06CC\u0644 \u0622\u0626\u06CC \u0688\u06CC",xid:"\u0627\u06CC\u06A9\u0633 \u0622\u0626\u06CC \u0688\u06CC",ksuid:"\u06A9\u06D2 \u0627\u06CC\u0633 \u06CC\u0648 \u0622\u0626\u06CC \u0688\u06CC",datetime:"\u0622\u0626\u06CC \u0627\u06CC\u0633 \u0627\u0648 \u0688\u06CC\u0679 \u0679\u0627\u0626\u0645",date:"\u0622\u0626\u06CC \u0627\u06CC\u0633 \u0627\u0648 \u062A\u0627\u0631\u06CC\u062E",time:"\u0622\u0626\u06CC \u0627\u06CC\u0633 \u0627\u0648 \u0648\u0642\u062A",duration:"\u0622\u0626\u06CC \u0627\u06CC\u0633 \u0627\u0648 \u0645\u062F\u062A",ipv4:"\u0622\u0626\u06CC \u067E\u06CC \u0648\u06CC 4 \u0627\u06CC\u0688\u0631\u06CC\u0633",ipv6:"\u0622\u0626\u06CC \u067E\u06CC \u0648\u06CC 6 \u0627\u06CC\u0688\u0631\u06CC\u0633",cidrv4:"\u0622\u0626\u06CC \u067E\u06CC \u0648\u06CC 4 \u0631\u06CC\u0646\u062C",cidrv6:"\u0622\u0626\u06CC \u067E\u06CC \u0648\u06CC 6 \u0631\u06CC\u0646\u062C",base64:"\u0628\u06CC\u0633 64 \u0627\u0646 \u06A9\u0648\u0688\u0688 \u0633\u0679\u0631\u0646\u06AF",base64url:"\u0628\u06CC\u0633 64 \u06CC\u0648 \u0622\u0631 \u0627\u06CC\u0644 \u0627\u0646 \u06A9\u0648\u0688\u0688 \u0633\u0679\u0631\u0646\u06AF",json_string:"\u062C\u06D2 \u0627\u06CC\u0633 \u0627\u0648 \u0627\u06CC\u0646 \u0633\u0679\u0631\u0646\u06AF",e164:"\u0627\u06CC 164 \u0646\u0645\u0628\u0631",jwt:"\u062C\u06D2 \u0688\u0628\u0644\u06CC\u0648 \u0679\u06CC",template_literal:"\u0627\u0646 \u067E\u0679"},i={nan:"NaN",number:"\u0646\u0645\u0628\u0631",array:"\u0622\u0631\u06D2",null:"\u0646\u0644"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=k(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`\u063A\u0644\u0637 \u0627\u0646 \u067E\u0679: instanceof ${n.expected} \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u0627\u060C ${c} \u0645\u0648\u0635\u0648\u0644 \u06C1\u0648\u0627`:`\u063A\u0644\u0637 \u0627\u0646 \u067E\u0679: ${o} \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u0627\u060C ${c} \u0645\u0648\u0635\u0648\u0644 \u06C1\u0648\u0627`}case"invalid_value":return n.values.length===1?`\u063A\u0644\u0637 \u0627\u0646 \u067E\u0679: ${y(n.values[0])} \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u0627`:`\u063A\u0644\u0637 \u0622\u067E\u0634\u0646: ${h(n.values,"|")} \u0645\u06CC\u06BA \u0633\u06D2 \u0627\u06CC\u06A9 \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u0627`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`\u0628\u06C1\u062A \u0628\u0691\u0627: ${n.origin??"\u0648\u06CC\u0644\u06CC\u0648"} \u06A9\u06D2 ${o}${n.maximum.toString()} ${a.unit??"\u0639\u0646\u0627\u0635\u0631"} \u06C1\u0648\u0646\u06D2 \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u06D2`:`\u0628\u06C1\u062A \u0628\u0691\u0627: ${n.origin??"\u0648\u06CC\u0644\u06CC\u0648"} \u06A9\u0627 ${o}${n.maximum.toString()} \u06C1\u0648\u0646\u0627 \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u0627`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`\u0628\u06C1\u062A \u0686\u06BE\u0648\u0679\u0627: ${n.origin} \u06A9\u06D2 ${o}${n.minimum.toString()} ${a.unit} \u06C1\u0648\u0646\u06D2 \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u06D2`:`\u0628\u06C1\u062A \u0686\u06BE\u0648\u0679\u0627: ${n.origin} \u06A9\u0627 ${o}${n.minimum.toString()} \u06C1\u0648\u0646\u0627 \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u0627`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u063A\u0644\u0637 \u0633\u0679\u0631\u0646\u06AF: "${o.prefix}" \u0633\u06D2 \u0634\u0631\u0648\u0639 \u06C1\u0648\u0646\u0627 \u0686\u0627\u06C1\u06CC\u06D2`:o.format==="ends_with"?`\u063A\u0644\u0637 \u0633\u0679\u0631\u0646\u06AF: "${o.suffix}" \u067E\u0631 \u062E\u062A\u0645 \u06C1\u0648\u0646\u0627 \u0686\u0627\u06C1\u06CC\u06D2`:o.format==="includes"?`\u063A\u0644\u0637 \u0633\u0679\u0631\u0646\u06AF: "${o.includes}" \u0634\u0627\u0645\u0644 \u06C1\u0648\u0646\u0627 \u0686\u0627\u06C1\u06CC\u06D2`:o.format==="regex"?`\u063A\u0644\u0637 \u0633\u0679\u0631\u0646\u06AF: \u067E\u06CC\u0679\u0631\u0646 ${o.pattern} \u0633\u06D2 \u0645\u06CC\u0686 \u06C1\u0648\u0646\u0627 \u0686\u0627\u06C1\u06CC\u06D2`:`\u063A\u0644\u0637 ${r[o.format]??n.format}`}case"not_multiple_of":return`\u063A\u0644\u0637 \u0646\u0645\u0628\u0631: ${n.divisor} \u06A9\u0627 \u0645\u0636\u0627\u0639\u0641 \u06C1\u0648\u0646\u0627 \u0686\u0627\u06C1\u06CC\u06D2`;case"unrecognized_keys":return`\u063A\u06CC\u0631 \u062A\u0633\u0644\u06CC\u0645 \u0634\u062F\u06C1 \u06A9\u06CC${n.keys.length>1?"\u0632":""}: ${h(n.keys,"\u060C ")}`;case"invalid_key":return`${n.origin} \u0645\u06CC\u06BA \u063A\u0644\u0637 \u06A9\u06CC`;case"invalid_union":return"\u063A\u0644\u0637 \u0627\u0646 \u067E\u0679";case"invalid_element":return`${n.origin} \u0645\u06CC\u06BA \u063A\u0644\u0637 \u0648\u06CC\u0644\u06CC\u0648`;default:return"\u063A\u0644\u0637 \u0627\u0646 \u067E\u0679"}}};function th(){return{localeError:vS()}}var _S=()=>{let t={string:{unit:"belgi",verb:"bo\u2018lishi kerak"},file:{unit:"bayt",verb:"bo\u2018lishi kerak"},array:{unit:"element",verb:"bo\u2018lishi kerak"},set:{unit:"element",verb:"bo\u2018lishi kerak"},map:{unit:"yozuv",verb:"bo\u2018lishi kerak"}};function e(n){return t[n]??null}let r={regex:"kirish",email:"elektron pochta manzili",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 sana va vaqti",date:"ISO sana",time:"ISO vaqt",duration:"ISO davomiylik",ipv4:"IPv4 manzil",ipv6:"IPv6 manzil",mac:"MAC manzil",cidrv4:"IPv4 diapazon",cidrv6:"IPv6 diapazon",base64:"base64 kodlangan satr",base64url:"base64url kodlangan satr",json_string:"JSON satr",e164:"E.164 raqam",jwt:"JWT",template_literal:"kirish"},i={nan:"NaN",number:"raqam",array:"massiv"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=k(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`Noto\u2018g\u2018ri kirish: kutilgan instanceof ${n.expected}, qabul qilingan ${c}`:`Noto\u2018g\u2018ri kirish: kutilgan ${o}, qabul qilingan ${c}`}case"invalid_value":return n.values.length===1?`Noto\u2018g\u2018ri kirish: kutilgan ${y(n.values[0])}`:`Noto\u2018g\u2018ri variant: quyidagilardan biri kutilgan ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`Juda katta: kutilgan ${n.origin??"qiymat"} ${o}${n.maximum.toString()} ${a.unit} ${a.verb}`:`Juda katta: kutilgan ${n.origin??"qiymat"} ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`Juda kichik: kutilgan ${n.origin} ${o}${n.minimum.toString()} ${a.unit} ${a.verb}`:`Juda kichik: kutilgan ${n.origin} ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Noto\u2018g\u2018ri satr: "${o.prefix}" bilan boshlanishi kerak`:o.format==="ends_with"?`Noto\u2018g\u2018ri satr: "${o.suffix}" bilan tugashi kerak`:o.format==="includes"?`Noto\u2018g\u2018ri satr: "${o.includes}" ni o\u2018z ichiga olishi kerak`:o.format==="regex"?`Noto\u2018g\u2018ri satr: ${o.pattern} shabloniga mos kelishi kerak`:`Noto\u2018g\u2018ri ${r[o.format]??n.format}`}case"not_multiple_of":return`Noto\u2018g\u2018ri raqam: ${n.divisor} ning karralisi bo\u2018lishi kerak`;case"unrecognized_keys":return`Noma\u2019lum kalit${n.keys.length>1?"lar":""}: ${h(n.keys,", ")}`;case"invalid_key":return`${n.origin} dagi kalit noto\u2018g\u2018ri`;case"invalid_union":return"Noto\u2018g\u2018ri kirish";case"invalid_element":return`${n.origin} da noto\u2018g\u2018ri qiymat`;default:return"Noto\u2018g\u2018ri kirish"}}};function nh(){return{localeError:_S()}}var yS=()=>{let t={string:{unit:"k\xFD t\u1EF1",verb:"c\xF3"},file:{unit:"byte",verb:"c\xF3"},array:{unit:"ph\u1EA7n t\u1EED",verb:"c\xF3"},set:{unit:"ph\u1EA7n t\u1EED",verb:"c\xF3"}};function e(n){return t[n]??null}let r={regex:"\u0111\u1EA7u v\xE0o",email:"\u0111\u1ECBa ch\u1EC9 email",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:"ng\xE0y gi\u1EDD ISO",date:"ng\xE0y ISO",time:"gi\u1EDD ISO",duration:"kho\u1EA3ng th\u1EDDi gian ISO",ipv4:"\u0111\u1ECBa ch\u1EC9 IPv4",ipv6:"\u0111\u1ECBa ch\u1EC9 IPv6",cidrv4:"d\u1EA3i IPv4",cidrv6:"d\u1EA3i IPv6",base64:"chu\u1ED7i m\xE3 h\xF3a base64",base64url:"chu\u1ED7i m\xE3 h\xF3a base64url",json_string:"chu\u1ED7i JSON",e164:"s\u1ED1 E.164",jwt:"JWT",template_literal:"\u0111\u1EA7u v\xE0o"},i={nan:"NaN",number:"s\u1ED1",array:"m\u1EA3ng"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=k(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`\u0110\u1EA7u v\xE0o kh\xF4ng h\u1EE3p l\u1EC7: mong \u0111\u1EE3i instanceof ${n.expected}, nh\u1EADn \u0111\u01B0\u1EE3c ${c}`:`\u0110\u1EA7u v\xE0o kh\xF4ng h\u1EE3p l\u1EC7: mong \u0111\u1EE3i ${o}, nh\u1EADn \u0111\u01B0\u1EE3c ${c}`}case"invalid_value":return n.values.length===1?`\u0110\u1EA7u v\xE0o kh\xF4ng h\u1EE3p l\u1EC7: mong \u0111\u1EE3i ${y(n.values[0])}`:`T\xF9y ch\u1ECDn kh\xF4ng h\u1EE3p l\u1EC7: mong \u0111\u1EE3i m\u1ED9t trong c\xE1c gi\xE1 tr\u1ECB ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`Qu\xE1 l\u1EDBn: mong \u0111\u1EE3i ${n.origin??"gi\xE1 tr\u1ECB"} ${a.verb} ${o}${n.maximum.toString()} ${a.unit??"ph\u1EA7n t\u1EED"}`:`Qu\xE1 l\u1EDBn: mong \u0111\u1EE3i ${n.origin??"gi\xE1 tr\u1ECB"} ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`Qu\xE1 nh\u1ECF: mong \u0111\u1EE3i ${n.origin} ${a.verb} ${o}${n.minimum.toString()} ${a.unit}`:`Qu\xE1 nh\u1ECF: mong \u0111\u1EE3i ${n.origin} ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Chu\u1ED7i kh\xF4ng h\u1EE3p l\u1EC7: ph\u1EA3i b\u1EAFt \u0111\u1EA7u b\u1EB1ng "${o.prefix}"`:o.format==="ends_with"?`Chu\u1ED7i kh\xF4ng h\u1EE3p l\u1EC7: ph\u1EA3i k\u1EBFt th\xFAc b\u1EB1ng "${o.suffix}"`:o.format==="includes"?`Chu\u1ED7i kh\xF4ng h\u1EE3p l\u1EC7: ph\u1EA3i bao g\u1ED3m "${o.includes}"`:o.format==="regex"?`Chu\u1ED7i kh\xF4ng h\u1EE3p l\u1EC7: ph\u1EA3i kh\u1EDBp v\u1EDBi m\u1EABu ${o.pattern}`:`${r[o.format]??n.format} kh\xF4ng h\u1EE3p l\u1EC7`}case"not_multiple_of":return`S\u1ED1 kh\xF4ng h\u1EE3p l\u1EC7: ph\u1EA3i l\xE0 b\u1ED9i s\u1ED1 c\u1EE7a ${n.divisor}`;case"unrecognized_keys":return`Kh\xF3a kh\xF4ng \u0111\u01B0\u1EE3c nh\u1EADn d\u1EA1ng: ${h(n.keys,", ")}`;case"invalid_key":return`Kh\xF3a kh\xF4ng h\u1EE3p l\u1EC7 trong ${n.origin}`;case"invalid_union":return"\u0110\u1EA7u v\xE0o kh\xF4ng h\u1EE3p l\u1EC7";case"invalid_element":return`Gi\xE1 tr\u1ECB kh\xF4ng h\u1EE3p l\u1EC7 trong ${n.origin}`;default:return"\u0110\u1EA7u v\xE0o kh\xF4ng h\u1EE3p l\u1EC7"}}};function rh(){return{localeError:yS()}}var kS=()=>{let t={string:{unit:"\u5B57\u7B26",verb:"\u5305\u542B"},file:{unit:"\u5B57\u8282",verb:"\u5305\u542B"},array:{unit:"\u9879",verb:"\u5305\u542B"},set:{unit:"\u9879",verb:"\u5305\u542B"}};function e(n){return t[n]??null}let r={regex:"\u8F93\u5165",email:"\u7535\u5B50\u90AE\u4EF6",url:"URL",emoji:"\u8868\u60C5\u7B26\u53F7",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO\u65E5\u671F\u65F6\u95F4",date:"ISO\u65E5\u671F",time:"ISO\u65F6\u95F4",duration:"ISO\u65F6\u957F",ipv4:"IPv4\u5730\u5740",ipv6:"IPv6\u5730\u5740",cidrv4:"IPv4\u7F51\u6BB5",cidrv6:"IPv6\u7F51\u6BB5",base64:"base64\u7F16\u7801\u5B57\u7B26\u4E32",base64url:"base64url\u7F16\u7801\u5B57\u7B26\u4E32",json_string:"JSON\u5B57\u7B26\u4E32",e164:"E.164\u53F7\u7801",jwt:"JWT",template_literal:"\u8F93\u5165"},i={nan:"NaN",number:"\u6570\u5B57",array:"\u6570\u7EC4",null:"\u7A7A\u503C(null)"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=k(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`\u65E0\u6548\u8F93\u5165\uFF1A\u671F\u671B instanceof ${n.expected}\uFF0C\u5B9E\u9645\u63A5\u6536 ${c}`:`\u65E0\u6548\u8F93\u5165\uFF1A\u671F\u671B ${o}\uFF0C\u5B9E\u9645\u63A5\u6536 ${c}`}case"invalid_value":return n.values.length===1?`\u65E0\u6548\u8F93\u5165\uFF1A\u671F\u671B ${y(n.values[0])}`:`\u65E0\u6548\u9009\u9879\uFF1A\u671F\u671B\u4EE5\u4E0B\u4E4B\u4E00 ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`\u6570\u503C\u8FC7\u5927\uFF1A\u671F\u671B ${n.origin??"\u503C"} ${o}${n.maximum.toString()} ${a.unit??"\u4E2A\u5143\u7D20"}`:`\u6570\u503C\u8FC7\u5927\uFF1A\u671F\u671B ${n.origin??"\u503C"} ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`\u6570\u503C\u8FC7\u5C0F\uFF1A\u671F\u671B ${n.origin} ${o}${n.minimum.toString()} ${a.unit}`:`\u6570\u503C\u8FC7\u5C0F\uFF1A\u671F\u671B ${n.origin} ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u65E0\u6548\u5B57\u7B26\u4E32\uFF1A\u5FC5\u987B\u4EE5 "${o.prefix}" \u5F00\u5934`:o.format==="ends_with"?`\u65E0\u6548\u5B57\u7B26\u4E32\uFF1A\u5FC5\u987B\u4EE5 "${o.suffix}" \u7ED3\u5C3E`:o.format==="includes"?`\u65E0\u6548\u5B57\u7B26\u4E32\uFF1A\u5FC5\u987B\u5305\u542B "${o.includes}"`:o.format==="regex"?`\u65E0\u6548\u5B57\u7B26\u4E32\uFF1A\u5FC5\u987B\u6EE1\u8DB3\u6B63\u5219\u8868\u8FBE\u5F0F ${o.pattern}`:`\u65E0\u6548${r[o.format]??n.format}`}case"not_multiple_of":return`\u65E0\u6548\u6570\u5B57\uFF1A\u5FC5\u987B\u662F ${n.divisor} \u7684\u500D\u6570`;case"unrecognized_keys":return`\u51FA\u73B0\u672A\u77E5\u7684\u952E(key): ${h(n.keys,", ")}`;case"invalid_key":return`${n.origin} \u4E2D\u7684\u952E(key)\u65E0\u6548`;case"invalid_union":return"\u65E0\u6548\u8F93\u5165";case"invalid_element":return`${n.origin} \u4E2D\u5305\u542B\u65E0\u6548\u503C(value)`;default:return"\u65E0\u6548\u8F93\u5165"}}};function ih(){return{localeError:kS()}}var xS=()=>{let t={string:{unit:"\u5B57\u5143",verb:"\u64C1\u6709"},file:{unit:"\u4F4D\u5143\u7D44",verb:"\u64C1\u6709"},array:{unit:"\u9805\u76EE",verb:"\u64C1\u6709"},set:{unit:"\u9805\u76EE",verb:"\u64C1\u6709"}};function e(n){return t[n]??null}let r={regex:"\u8F38\u5165",email:"\u90F5\u4EF6\u5730\u5740",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 \u65E5\u671F\u6642\u9593",date:"ISO \u65E5\u671F",time:"ISO \u6642\u9593",duration:"ISO \u671F\u9593",ipv4:"IPv4 \u4F4D\u5740",ipv6:"IPv6 \u4F4D\u5740",cidrv4:"IPv4 \u7BC4\u570D",cidrv6:"IPv6 \u7BC4\u570D",base64:"base64 \u7DE8\u78BC\u5B57\u4E32",base64url:"base64url \u7DE8\u78BC\u5B57\u4E32",json_string:"JSON \u5B57\u4E32",e164:"E.164 \u6578\u503C",jwt:"JWT",template_literal:"\u8F38\u5165"},i={nan:"NaN"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=k(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`\u7121\u6548\u7684\u8F38\u5165\u503C\uFF1A\u9810\u671F\u70BA instanceof ${n.expected}\uFF0C\u4F46\u6536\u5230 ${c}`:`\u7121\u6548\u7684\u8F38\u5165\u503C\uFF1A\u9810\u671F\u70BA ${o}\uFF0C\u4F46\u6536\u5230 ${c}`}case"invalid_value":return n.values.length===1?`\u7121\u6548\u7684\u8F38\u5165\u503C\uFF1A\u9810\u671F\u70BA ${y(n.values[0])}`:`\u7121\u6548\u7684\u9078\u9805\uFF1A\u9810\u671F\u70BA\u4EE5\u4E0B\u5176\u4E2D\u4E4B\u4E00 ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`\u6578\u503C\u904E\u5927\uFF1A\u9810\u671F ${n.origin??"\u503C"} \u61C9\u70BA ${o}${n.maximum.toString()} ${a.unit??"\u500B\u5143\u7D20"}`:`\u6578\u503C\u904E\u5927\uFF1A\u9810\u671F ${n.origin??"\u503C"} \u61C9\u70BA ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`\u6578\u503C\u904E\u5C0F\uFF1A\u9810\u671F ${n.origin} \u61C9\u70BA ${o}${n.minimum.toString()} ${a.unit}`:`\u6578\u503C\u904E\u5C0F\uFF1A\u9810\u671F ${n.origin} \u61C9\u70BA ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u7121\u6548\u7684\u5B57\u4E32\uFF1A\u5FC5\u9808\u4EE5 "${o.prefix}" \u958B\u982D`:o.format==="ends_with"?`\u7121\u6548\u7684\u5B57\u4E32\uFF1A\u5FC5\u9808\u4EE5 "${o.suffix}" \u7D50\u5C3E`:o.format==="includes"?`\u7121\u6548\u7684\u5B57\u4E32\uFF1A\u5FC5\u9808\u5305\u542B "${o.includes}"`:o.format==="regex"?`\u7121\u6548\u7684\u5B57\u4E32\uFF1A\u5FC5\u9808\u7B26\u5408\u683C\u5F0F ${o.pattern}`:`\u7121\u6548\u7684 ${r[o.format]??n.format}`}case"not_multiple_of":return`\u7121\u6548\u7684\u6578\u5B57\uFF1A\u5FC5\u9808\u70BA ${n.divisor} \u7684\u500D\u6578`;case"unrecognized_keys":return`\u7121\u6CD5\u8B58\u5225\u7684\u9375\u503C${n.keys.length>1?"\u5011":""}\uFF1A${h(n.keys,"\u3001")}`;case"invalid_key":return`${n.origin} \u4E2D\u6709\u7121\u6548\u7684\u9375\u503C`;case"invalid_union":return"\u7121\u6548\u7684\u8F38\u5165\u503C";case"invalid_element":return`${n.origin} \u4E2D\u6709\u7121\u6548\u7684\u503C`;default:return"\u7121\u6548\u7684\u8F38\u5165\u503C"}}};function oh(){return{localeError:xS()}}var IS=()=>{let t={string:{unit:"\xE0mi",verb:"n\xED"},file:{unit:"bytes",verb:"n\xED"},array:{unit:"nkan",verb:"n\xED"},set:{unit:"nkan",verb:"n\xED"}};function e(n){return t[n]??null}let r={regex:"\u1EB9\u0300r\u1ECD \xECb\xE1w\u1ECDl\xE9",email:"\xE0d\xEDr\u1EB9\u0301s\xEC \xECm\u1EB9\u0301l\xEC",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:"\xE0k\xF3k\xF2 ISO",date:"\u1ECDj\u1ECD\u0301 ISO",time:"\xE0k\xF3k\xF2 ISO",duration:"\xE0k\xF3k\xF2 t\xF3 p\xE9 ISO",ipv4:"\xE0d\xEDr\u1EB9\u0301s\xEC IPv4",ipv6:"\xE0d\xEDr\u1EB9\u0301s\xEC IPv6",cidrv4:"\xE0gb\xE8gb\xE8 IPv4",cidrv6:"\xE0gb\xE8gb\xE8 IPv6",base64:"\u1ECD\u0300r\u1ECD\u0300 t\xED a k\u1ECD\u0301 n\xED base64",base64url:"\u1ECD\u0300r\u1ECD\u0300 base64url",json_string:"\u1ECD\u0300r\u1ECD\u0300 JSON",e164:"n\u1ECD\u0301mb\xE0 E.164",jwt:"JWT",template_literal:"\u1EB9\u0300r\u1ECD \xECb\xE1w\u1ECDl\xE9"},i={nan:"NaN",number:"n\u1ECD\u0301mb\xE0",array:"akop\u1ECD"};return n=>{switch(n.code){case"invalid_type":{let o=i[n.expected]??n.expected,a=k(n.input),c=i[a]??a;return/^[A-Z]/.test(n.expected)?`\xCCb\xE1w\u1ECDl\xE9 a\u1E63\xEC\u1E63e: a n\xED l\xE1ti fi instanceof ${n.expected}, \xE0m\u1ECD\u0300 a r\xED ${c}`:`\xCCb\xE1w\u1ECDl\xE9 a\u1E63\xEC\u1E63e: a n\xED l\xE1ti fi ${o}, \xE0m\u1ECD\u0300 a r\xED ${c}`}case"invalid_value":return n.values.length===1?`\xCCb\xE1w\u1ECDl\xE9 a\u1E63\xEC\u1E63e: a n\xED l\xE1ti fi ${y(n.values[0])}`:`\xC0\u1E63\xE0y\xE0n a\u1E63\xEC\u1E63e: yan \u1ECD\u0300kan l\xE1ra ${h(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",a=e(n.origin);return a?`T\xF3 p\u1ECD\u0300 j\xF9: a n\xED l\xE1ti j\u1EB9\u0301 p\xE9 ${n.origin??"iye"} ${a.verb} ${o}${n.maximum} ${a.unit}`:`T\xF3 p\u1ECD\u0300 j\xF9: a n\xED l\xE1ti j\u1EB9\u0301 ${o}${n.maximum}`}case"too_small":{let o=n.inclusive?">=":">",a=e(n.origin);return a?`K\xE9r\xE9 ju: a n\xED l\xE1ti j\u1EB9\u0301 p\xE9 ${n.origin} ${a.verb} ${o}${n.minimum} ${a.unit}`:`K\xE9r\xE9 ju: a n\xED l\xE1ti j\u1EB9\u0301 ${o}${n.minimum}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`\u1ECC\u0300r\u1ECD\u0300 a\u1E63\xEC\u1E63e: gb\u1ECD\u0301d\u1ECD\u0300 b\u1EB9\u0300r\u1EB9\u0300 p\u1EB9\u0300l\xFA "${o.prefix}"`:o.format==="ends_with"?`\u1ECC\u0300r\u1ECD\u0300 a\u1E63\xEC\u1E63e: gb\u1ECD\u0301d\u1ECD\u0300 par\xED p\u1EB9\u0300l\xFA "${o.suffix}"`:o.format==="includes"?`\u1ECC\u0300r\u1ECD\u0300 a\u1E63\xEC\u1E63e: gb\u1ECD\u0301d\u1ECD\u0300 n\xED "${o.includes}"`:o.format==="regex"?`\u1ECC\u0300r\u1ECD\u0300 a\u1E63\xEC\u1E63e: gb\u1ECD\u0301d\u1ECD\u0300 b\xE1 \xE0p\u1EB9\u1EB9r\u1EB9 mu ${o.pattern}`:`A\u1E63\xEC\u1E63e: ${r[o.format]??n.format}`}case"not_multiple_of":return`N\u1ECD\u0301mb\xE0 a\u1E63\xEC\u1E63e: gb\u1ECD\u0301d\u1ECD\u0300 j\u1EB9\u0301 \xE8y\xE0 p\xEDp\xEDn ti ${n.divisor}`;case"unrecognized_keys":return`B\u1ECDt\xECn\xEC \xE0\xECm\u1ECD\u0300: ${h(n.keys,", ")}`;case"invalid_key":return`B\u1ECDt\xECn\xEC a\u1E63\xEC\u1E63e n\xEDn\xFA ${n.origin}`;case"invalid_union":return"\xCCb\xE1w\u1ECDl\xE9 a\u1E63\xEC\u1E63e";case"invalid_element":return`Iye a\u1E63\xEC\u1E63e n\xEDn\xFA ${n.origin}`;default:return"\xCCb\xE1w\u1ECDl\xE9 a\u1E63\xEC\u1E63e"}}};function sh(){return{localeError:IS()}}var ah,Sl=Symbol("ZodOutput"),El=Symbol("ZodInput"),Ri=class{constructor(){this._map=new WeakMap,this._idmap=new Map}add(e,...r){let i=r[0];return this._map.set(e,i),i&&typeof i=="object"&&"id"in i&&this._idmap.set(i.id,e),this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(e){let r=this._map.get(e);return r&&typeof r=="object"&&"id"in r&&this._idmap.delete(r.id),this._map.delete(e),this}get(e){let r=e._zod.parent;if(r){let i={...this.get(r)??{}};delete i.id;let n={...i,...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 Ci(){return new Ri}(ah=globalThis).__zod_globalRegistry??(ah.__zod_globalRegistry=Ci());var re=globalThis.__zod_globalRegistry;function wl(t,e){return new t({type:"string",...I(e)})}function $l(t,e){return new t({type:"string",coerce:!0,...I(e)})}function Pi(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...I(e)})}function er(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...I(e)})}function Ni(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...I(e)})}function Di(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...I(e)})}function Ui(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...I(e)})}function zi(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...I(e)})}function tr(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...I(e)})}function ji(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...I(e)})}function Li(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...I(e)})}function Mi(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...I(e)})}function Bi(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...I(e)})}function Fi(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...I(e)})}function Hi(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...I(e)})}function Vi(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...I(e)})}function Ki(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...I(e)})}function Gi(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...I(e)})}function Ol(t,e){return new t({type:"string",format:"mac",check:"string_format",abort:!1,...I(e)})}function Zi(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...I(e)})}function Wi(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...I(e)})}function qi(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...I(e)})}function Ji(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...I(e)})}function Yi(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...I(e)})}function Xi(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...I(e)})}var Tl={Any:null,Minute:-1,Second:0,Millisecond:3,Microsecond:6};function Al(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...I(e)})}function Rl(t,e){return new t({type:"string",format:"date",check:"string_format",...I(e)})}function Cl(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...I(e)})}function Pl(t,e){return new t({type:"string",format:"duration",check:"string_format",...I(e)})}function Nl(t,e){return new t({type:"number",checks:[],...I(e)})}function Dl(t,e){return new t({type:"number",coerce:!0,checks:[],...I(e)})}function Ul(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...I(e)})}function zl(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"float32",...I(e)})}function jl(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"float64",...I(e)})}function Ll(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"int32",...I(e)})}function Ml(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"uint32",...I(e)})}function Bl(t,e){return new t({type:"boolean",...I(e)})}function Fl(t,e){return new t({type:"boolean",coerce:!0,...I(e)})}function Hl(t,e){return new t({type:"bigint",...I(e)})}function Vl(t,e){return new t({type:"bigint",coerce:!0,...I(e)})}function Kl(t,e){return new t({type:"bigint",check:"bigint_format",abort:!1,format:"int64",...I(e)})}function Gl(t,e){return new t({type:"bigint",check:"bigint_format",abort:!1,format:"uint64",...I(e)})}function Zl(t,e){return new t({type:"symbol",...I(e)})}function Wl(t,e){return new t({type:"undefined",...I(e)})}function ql(t,e){return new t({type:"null",...I(e)})}function Jl(t){return new t({type:"any"})}function Yl(t){return new t({type:"unknown"})}function Xl(t,e){return new t({type:"never",...I(e)})}function Ql(t,e){return new t({type:"void",...I(e)})}function eu(t,e){return new t({type:"date",...I(e)})}function tu(t,e){return new t({type:"date",coerce:!0,...I(e)})}function nu(t,e){return new t({type:"nan",...I(e)})}function $e(t,e){return new bi({check:"less_than",...I(e),value:t,inclusive:!1})}function ge(t,e){return new bi({check:"less_than",...I(e),value:t,inclusive:!0})}function Oe(t,e){return new vi({check:"greater_than",...I(e),value:t,inclusive:!1})}function ae(t,e){return new vi({check:"greater_than",...I(e),value:t,inclusive:!0})}function Qi(t){return Oe(0,t)}function eo(t){return $e(0,t)}function to(t){return ge(0,t)}function no(t){return ae(0,t)}function Ze(t,e){return new qa({check:"multiple_of",...I(e),value:t})}function We(t,e){return new Xa({check:"max_size",...I(e),maximum:t})}function Te(t,e){return new Qa({check:"min_size",...I(e),minimum:t})}function pt(t,e){return new ec({check:"size_equals",...I(e),size:t})}function mt(t,e){return new tc({check:"max_length",...I(e),maximum:t})}function je(t,e){return new nc({check:"min_length",...I(e),minimum:t})}function ft(t,e){return new rc({check:"length_equals",...I(e),length:t})}function Ut(t,e){return new ic({check:"string_format",format:"regex",...I(e),pattern:t})}function zt(t){return new oc({check:"string_format",format:"lowercase",...I(t)})}function jt(t){return new sc({check:"string_format",format:"uppercase",...I(t)})}function Lt(t,e){return new ac({check:"string_format",format:"includes",...I(e),includes:t})}function Mt(t,e){return new cc({check:"string_format",format:"starts_with",...I(e),prefix:t})}function Bt(t,e){return new lc({check:"string_format",format:"ends_with",...I(e),suffix:t})}function ro(t,e,r){return new uc({check:"property",property:t,schema:e,...I(r)})}function Ft(t,e){return new dc({check:"mime_type",mime:t,...I(e)})}function Ie(t){return new pc({check:"overwrite",tx:t})}function Ht(t){return Ie(e=>e.normalize(t))}function Vt(){return Ie(t=>t.trim())}function Kt(){return Ie(t=>t.toLowerCase())}function Gt(){return Ie(t=>t.toUpperCase())}function Zt(){return Ie(t=>ca(t))}function ru(t,e,r){return new t({type:"array",element:e,...I(r)})}function ES(t,e,r){return new t({type:"union",options:e,...I(r)})}function wS(t,e,r){return new t({type:"union",options:e,inclusive:!1,...I(r)})}function $S(t,e,r,i){return new t({type:"union",options:r,discriminator:e,...I(i)})}function OS(t,e,r){return new t({type:"intersection",left:e,right:r})}function TS(t,e,r,i){let n=r instanceof $,o=n?i:r,a=n?r:null;return new t({type:"tuple",items:e,rest:a,...I(o)})}function AS(t,e,r,i){return new t({type:"record",keyType:e,valueType:r,...I(i)})}function RS(t,e,r,i){return new t({type:"map",keyType:e,valueType:r,...I(i)})}function CS(t,e,r){return new t({type:"set",valueType:e,...I(r)})}function PS(t,e,r){let i=Array.isArray(e)?Object.fromEntries(e.map(n=>[n,n])):e;return new t({type:"enum",entries:i,...I(r)})}function NS(t,e,r){return new t({type:"enum",entries:e,...I(r)})}function DS(t,e,r){return new t({type:"literal",values:Array.isArray(e)?e:[e],...I(r)})}function iu(t,e){return new t({type:"file",...I(e)})}function US(t,e){return new t({type:"transform",transform:e})}function zS(t,e){return new t({type:"optional",innerType:e})}function jS(t,e){return new t({type:"nullable",innerType:e})}function LS(t,e,r){return new t({type:"default",innerType:e,get defaultValue(){return typeof r=="function"?r():ua(r)}})}function MS(t,e,r){return new t({type:"nonoptional",innerType:e,...I(r)})}function BS(t,e){return new t({type:"success",innerType:e})}function FS(t,e,r){return new t({type:"catch",innerType:e,catchValue:typeof r=="function"?r:()=>r})}function HS(t,e,r){return new t({type:"pipe",in:e,out:r})}function VS(t,e){return new t({type:"readonly",innerType:e})}function KS(t,e,r){return new t({type:"template_literal",parts:e,...I(r)})}function GS(t,e){return new t({type:"lazy",getter:e})}function ZS(t,e){return new t({type:"promise",innerType:e})}function ou(t,e,r){let i=I(r);return i.abort??(i.abort=!0),new t({type:"custom",check:"custom",fn:e,...i})}function su(t,e,r){return new t({type:"custom",check:"custom",fn:e,...I(r)})}function au(t,e){let r=ch(i=>(i.addIssue=n=>{if(typeof n=="string")i.issues.push(Tt(n,i.value,r._zod.def));else{let o=n;o.fatal&&(o.continue=!1),o.code??(o.code="custom"),o.input??(o.input=i.value),o.inst??(o.inst=r),o.continue??(o.continue=!r._zod.def.abort),i.issues.push(Tt(o))}},t(i.value,i)),e);return r}function ch(t,e){let r=new K({check:"custom",...I(e)});return r._zod.check=t,r}function cu(t){let e=new K({check:"describe"});return e._zod.onattach=[r=>{let i=re.get(r)??{};re.add(r,{...i,description:t})}],e._zod.check=()=>{},e}function lu(t){let e=new K({check:"meta"});return e._zod.onattach=[r=>{let i=re.get(r)??{};re.add(r,{...i,...t})}],e._zod.check=()=>{},e}function uu(t,e){let r=I(e),i=r.truthy??["true","1","yes","on","y","enabled"],n=r.falsy??["false","0","no","off","n","disabled"];r.case!=="sensitive"&&(i=i.map(f=>typeof f=="string"?f.toLowerCase():f),n=n.map(f=>typeof f=="string"?f.toLowerCase():f));let o=new Set(i),a=new Set(n),c=t.Codec??Yn,l=t.Boolean??qn,d=t.String??dt,u=new d({type:"string",error:r.error}),p=new l({type:"boolean",error:r.error}),m=new c({type:"pipe",in:u,out:p,transform:((f,v)=>{let w=f;return r.case!=="sensitive"&&(w=w.toLowerCase()),o.has(w)?!0:a.has(w)?!1:(v.issues.push({code:"invalid_value",expected:"stringbool",values:[...o,...a],input:v.value,inst:m,continue:!1}),{})}),reverseTransform:((f,v)=>f===!0?i[0]||"true":n[0]||"false"),error:r.error});return m}function Wt(t,e,r,i={}){let n=I(i),o={...I(i),check:"string_format",type:"string",format:e,fn:typeof r=="function"?r:c=>r.test(c),...n};return r instanceof RegExp&&(o.pattern=r),new t(o)}function qe(t){let e=t?.target??"draft-2020-12";return e==="draft-4"&&(e="draft-04"),e==="draft-7"&&(e="draft-07"),{processors:t.processors??{},metadataRegistry:t?.metadata??re,target:e,unrepresentable:t?.unrepresentable??"throw",override:t?.override??(()=>{}),io:t?.io??"output",counter:0,seen:new Map,cycles:t?.cycles??"ref",reused:t?.reused??"inline",external:t?.external??void 0}}function j(t,e,r={path:[],schemaPath:[]}){var i;let n=t._zod.def,o=e.seen.get(t);if(o)return o.count++,r.schemaPath.includes(t)&&(o.cycle=r.path),o.schema;let a={schema:{},count:1,cycle:void 0,path:r.path};e.seen.set(t,a);let c=t._zod.toJSONSchema?.();if(c)a.schema=c;else{let u={...r,schemaPath:[...r.schemaPath,t],path:r.path};if(t._zod.processJSONSchema)t._zod.processJSONSchema(e,a.schema,u);else{let m=a.schema,f=e.processors[n.type];if(!f)throw new Error(`[toJSONSchema]: Non-representable type encountered: ${n.type}`);f(t,e,m,u)}let p=t._zod.parent;p&&(a.ref||(a.ref=p),j(p,e,u),e.seen.get(p).isParent=!0)}let l=e.metadataRegistry.get(t);return l&&Object.assign(a.schema,l),e.io==="input"&&ce(t)&&(delete a.schema.examples,delete a.schema.default),e.io==="input"&&"_prefault"in a.schema&&((i=a.schema).default??(i.default=a.schema._prefault)),delete a.schema._prefault,e.seen.get(t).schema}function Je(t,e){let r=t.seen.get(e);if(!r)throw new Error("Unprocessed schema. This is a bug in Zod.");let i=new Map;for(let a of t.seen.entries()){let c=t.metadataRegistry.get(a[0])?.id;if(c){let l=i.get(c);if(l&&l!==a[0])throw new Error(`Duplicate schema id "${c}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);i.set(c,a[0])}}let n=a=>{let c=t.target==="draft-2020-12"?"$defs":"definitions";if(t.external){let p=t.external.registry.get(a[0])?.id,m=t.external.uri??(v=>v);if(p)return{ref:m(p)};let f=a[1].defId??a[1].schema.id??`schema${t.counter++}`;return a[1].defId=f,{defId:f,ref:`${m("__shared")}#/${c}/${f}`}}if(a[1]===r)return{ref:"#"};let d=`#/${c}/`,u=a[1].schema.id??`__schema${t.counter++}`;return{defId:u,ref:d+u}},o=a=>{if(a[1].schema.$ref)return;let c=a[1],{ref:l,defId:d}=n(a);c.def={...c.schema},d&&(c.defId=d);let u=c.schema;for(let p in u)delete u[p];u.$ref=l};if(t.cycles==="throw")for(let a of t.seen.entries()){let c=a[1];if(c.cycle)throw new Error(`Cycle detected: #/${c.cycle?.join("/")}/<root>
96
97
 
97
- Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let a of t.seen.entries()){let c=a[1];if(e===a[0]){o(a);continue}if(t.external){let d=t.external.registry.get(a[0])?.id;if(e!==a[0]&&d){o(a);continue}}if(t.metadataRegistry.get(a[0])?.id){o(a);continue}if(c.cycle){o(a);continue}if(c.count>1&&t.reused==="ref"){o(a);continue}}}function Ze(t,e){let r=t.seen.get(e);if(!r)throw new Error("Unprocessed schema. This is a bug in Zod.");let i=c=>{let l=t.seen.get(c);if(l.ref===null)return;let d=l.def??l.schema,u={...d},p=l.ref;if(l.ref=null,p){i(p);let g=t.seen.get(p),k=g.schema;if(k.$ref&&(t.target==="draft-07"||t.target==="draft-04"||t.target==="openapi-3.0")?(d.allOf=d.allOf??[],d.allOf.push(k)):Object.assign(d,k),Object.assign(d,u),c._zod.parent===p)for(let S in d)S==="$ref"||S==="allOf"||S in u||delete d[S];if(k.$ref&&g.def)for(let S in d)S==="$ref"||S==="allOf"||S in g.def&&JSON.stringify(d[S])===JSON.stringify(g.def[S])&&delete d[S]}let m=c._zod.parent;if(m&&m!==p){i(m);let g=t.seen.get(m);if(g?.schema.$ref&&(d.$ref=g.schema.$ref,g.def))for(let k in d)k==="$ref"||k==="allOf"||k in g.def&&JSON.stringify(d[k])===JSON.stringify(g.def[k])&&delete d[k]}t.override({zodSchema:c,jsonSchema:d,path:l.path??[]})};for(let c of[...t.seen.entries()].reverse())i(c[0]);let n={};if(t.target==="draft-2020-12"?n.$schema="https://json-schema.org/draft/2020-12/schema":t.target==="draft-07"?n.$schema="http://json-schema.org/draft-07/schema#":t.target==="draft-04"?n.$schema="http://json-schema.org/draft-04/schema#":t.target,t.external?.uri){let c=t.external.registry.get(e)?.id;if(!c)throw new Error("Schema is missing an `id` property");n.$id=t.external.uri(c)}Object.assign(n,r.def??r.schema);let o=t.metadataRegistry.get(e)?.id;o!==void 0&&n.id===o&&delete n.id;let a=t.external?.defs??{};for(let c of t.seen.entries()){let l=c[1];l.def&&l.defId&&(l.def.id===l.defId&&delete l.def.id,a[l.defId]=l.def)}t.external||Object.keys(a).length>0&&(t.target==="draft-2020-12"?n.$defs=a:n.definitions=a);try{let c=JSON.parse(JSON.stringify(n));return Object.defineProperty(c,"~standard",{value:{...e["~standard"],jsonSchema:{input:jt(e,"input",t.processors),output:jt(e,"output",t.processors)}},enumerable:!1,writable:!1}),c}catch{throw new Error("Error converting schema to JSON.")}}function se(t,e){let r=e??{seen:new Set};if(r.seen.has(t))return!1;r.seen.add(t);let i=t._zod.def;if(i.type==="transform")return!0;if(i.type==="array")return se(i.element,r);if(i.type==="set")return se(i.valueType,r);if(i.type==="lazy")return se(i.getter(),r);if(i.type==="promise"||i.type==="optional"||i.type==="nonoptional"||i.type==="nullable"||i.type==="readonly"||i.type==="default"||i.type==="prefault")return se(i.innerType,r);if(i.type==="intersection")return se(i.left,r)||se(i.right,r);if(i.type==="record"||i.type==="map")return se(i.keyType,r)||se(i.valueType,r);if(i.type==="pipe")return t._zod.traits.has("$ZodCodec")?!0:se(i.in,r)||se(i.out,r);if(i.type==="object"){for(let n in i.shape)if(se(i.shape[n],r))return!0;return!1}if(i.type==="union"){for(let n of i.options)if(se(n,r))return!0;return!1}if(i.type==="tuple"){for(let n of i.items)if(se(n,r))return!0;return!!(i.rest&&se(i.rest,r))}return!1}var Nl=(t,e={})=>r=>{let i=He({...r,processors:e});return z(t,i),Ve(i,t),Ze(i,t)},jt=(t,e,r={})=>i=>{let{libraryOptions:n,target:o}=i??{},a=He({...n??{},target:o,io:e,processors:r});return z(t,a),Ve(a,t),Ze(a,t)};var UI={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},Dl=(t,e,r,i)=>{let n=r;n.type="string";let{minimum:o,maximum:a,format:c,patterns:l,contentEncoding:d}=t._zod.bag;if(typeof o=="number"&&(n.minLength=o),typeof a=="number"&&(n.maxLength=a),c&&(n.format=UI[c]??c,n.format===""&&delete n.format,c==="time"&&delete n.format),d&&(n.contentEncoding=d),l&&l.size>0){let u=[...l];u.length===1?n.pattern=u[0].source:u.length>1&&(n.allOf=[...u.map(p=>({...e.target==="draft-07"||e.target==="draft-04"||e.target==="openapi-3.0"?{type:"string"}:{},pattern:p.source}))])}},Ul=(t,e,r,i)=>{let n=r,{minimum:o,maximum:a,format:c,multipleOf:l,exclusiveMaximum:d,exclusiveMinimum:u}=t._zod.bag;typeof c=="string"&&c.includes("int")?n.type="integer":n.type="number";let p=typeof u=="number"&&u>=(o??Number.NEGATIVE_INFINITY),m=typeof d=="number"&&d<=(a??Number.POSITIVE_INFINITY),g=e.target==="draft-04"||e.target==="openapi-3.0";p?g?(n.minimum=u,n.exclusiveMinimum=!0):n.exclusiveMinimum=u:typeof o=="number"&&(n.minimum=o),m?g?(n.maximum=d,n.exclusiveMaximum=!0):n.exclusiveMaximum=d:typeof a=="number"&&(n.maximum=a),typeof l=="number"&&(n.multipleOf=l)},zl=(t,e,r,i)=>{r.type="boolean"},jl=(t,e,r,i)=>{if(e.unrepresentable==="throw")throw new Error("BigInt cannot be represented in JSON Schema")},Ll=(t,e,r,i)=>{if(e.unrepresentable==="throw")throw new Error("Symbols cannot be represented in JSON Schema")},Ml=(t,e,r,i)=>{e.target==="openapi-3.0"?(r.type="string",r.nullable=!0,r.enum=[null]):r.type="null"},Fl=(t,e,r,i)=>{if(e.unrepresentable==="throw")throw new Error("Undefined cannot be represented in JSON Schema")},Bl=(t,e,r,i)=>{if(e.unrepresentable==="throw")throw new Error("Void cannot be represented in JSON Schema")},Hl=(t,e,r,i)=>{r.not={}},Vl=(t,e,r,i)=>{},Zl=(t,e,r,i)=>{},Kl=(t,e,r,i)=>{if(e.unrepresentable==="throw")throw new Error("Date cannot be represented in JSON Schema")},Gl=(t,e,r,i)=>{let n=t._zod.def,o=In(n.entries);o.every(a=>typeof a=="number")&&(r.type="number"),o.every(a=>typeof a=="string")&&(r.type="string"),r.enum=o},Wl=(t,e,r,i)=>{let n=t._zod.def,o=[];for(let a of n.values)if(a===void 0){if(e.unrepresentable==="throw")throw new Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof a=="bigint"){if(e.unrepresentable==="throw")throw new Error("BigInt literals cannot be represented in JSON Schema");o.push(Number(a))}else o.push(a);if(o.length!==0)if(o.length===1){let a=o[0];r.type=a===null?"null":typeof a,e.target==="draft-04"||e.target==="openapi-3.0"?r.enum=[a]:r.const=a}else o.every(a=>typeof a=="number")&&(r.type="number"),o.every(a=>typeof a=="string")&&(r.type="string"),o.every(a=>typeof a=="boolean")&&(r.type="boolean"),o.every(a=>a===null)&&(r.type="null"),r.enum=o},ql=(t,e,r,i)=>{if(e.unrepresentable==="throw")throw new Error("NaN cannot be represented in JSON Schema")},Jl=(t,e,r,i)=>{let n=r,o=t._zod.pattern;if(!o)throw new Error("Pattern not found in template literal");n.type="string",n.pattern=o.source},Yl=(t,e,r,i)=>{let n=r,o={type:"string",format:"binary",contentEncoding:"binary"},{minimum:a,maximum:c,mime:l}=t._zod.bag;a!==void 0&&(o.minLength=a),c!==void 0&&(o.maxLength=c),l?l.length===1?(o.contentMediaType=l[0],Object.assign(n,o)):(Object.assign(n,o),n.anyOf=l.map(d=>({contentMediaType:d}))):Object.assign(n,o)},Xl=(t,e,r,i)=>{r.type="boolean"},Ql=(t,e,r,i)=>{if(e.unrepresentable==="throw")throw new Error("Custom types cannot be represented in JSON Schema")},eu=(t,e,r,i)=>{if(e.unrepresentable==="throw")throw new Error("Function types cannot be represented in JSON Schema")},tu=(t,e,r,i)=>{if(e.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema")},nu=(t,e,r,i)=>{if(e.unrepresentable==="throw")throw new Error("Map cannot be represented in JSON Schema")},ru=(t,e,r,i)=>{if(e.unrepresentable==="throw")throw new Error("Set cannot be represented in JSON Schema")},iu=(t,e,r,i)=>{let n=r,o=t._zod.def,{minimum:a,maximum:c}=t._zod.bag;typeof a=="number"&&(n.minItems=a),typeof c=="number"&&(n.maxItems=c),n.type="array",n.items=z(o.element,e,{...i,path:[...i.path,"items"]})},ou=(t,e,r,i)=>{let n=r,o=t._zod.def;n.type="object",n.properties={};let a=o.shape;for(let d in a)n.properties[d]=z(a[d],e,{...i,path:[...i.path,"properties",d]});let c=new Set(Object.keys(a)),l=new Set([...c].filter(d=>{let u=o.shape[d]._zod;return e.io==="input"?u.optin===void 0:u.optout===void 0}));l.size>0&&(n.required=Array.from(l)),o.catchall?._zod.def.type==="never"?n.additionalProperties=!1:o.catchall?o.catchall&&(n.additionalProperties=z(o.catchall,e,{...i,path:[...i.path,"additionalProperties"]})):e.io==="output"&&(n.additionalProperties=!1)},Li=(t,e,r,i)=>{let n=t._zod.def,o=n.inclusive===!1,a=n.options.map((c,l)=>z(c,e,{...i,path:[...i.path,o?"oneOf":"anyOf",l]}));o?r.oneOf=a:r.anyOf=a},su=(t,e,r,i)=>{let n=t._zod.def,o=z(n.left,e,{...i,path:[...i.path,"allOf",0]}),a=z(n.right,e,{...i,path:[...i.path,"allOf",1]}),c=d=>"allOf"in d&&Object.keys(d).length===1,l=[...c(o)?o.allOf:[o],...c(a)?a.allOf:[a]];r.allOf=l},au=(t,e,r,i)=>{let n=r,o=t._zod.def;n.type="array";let a=e.target==="draft-2020-12"?"prefixItems":"items",c=e.target==="draft-2020-12"||e.target==="openapi-3.0"?"items":"additionalItems",l=o.items.map((m,g)=>z(m,e,{...i,path:[...i.path,a,g]})),d=o.rest?z(o.rest,e,{...i,path:[...i.path,c,...e.target==="openapi-3.0"?[o.items.length]:[]]}):null;e.target==="draft-2020-12"?(n.prefixItems=l,d&&(n.items=d)):e.target==="openapi-3.0"?(n.items={anyOf:l},d&&n.items.anyOf.push(d),n.minItems=l.length,d||(n.maxItems=l.length)):(n.items=l,d&&(n.additionalItems=d));let{minimum:u,maximum:p}=t._zod.bag;typeof u=="number"&&(n.minItems=u),typeof p=="number"&&(n.maxItems=p)},cu=(t,e,r,i)=>{let n=r,o=t._zod.def;n.type="object";let a=o.keyType,l=a._zod.bag?.patterns;if(o.mode==="loose"&&l&&l.size>0){let u=z(o.valueType,e,{...i,path:[...i.path,"patternProperties","*"]});n.patternProperties={};for(let p of l)n.patternProperties[p.source]=u}else(e.target==="draft-07"||e.target==="draft-2020-12")&&(n.propertyNames=z(o.keyType,e,{...i,path:[...i.path,"propertyNames"]})),n.additionalProperties=z(o.valueType,e,{...i,path:[...i.path,"additionalProperties"]});let d=a._zod.values;if(d){let u=[...d].filter(p=>typeof p=="string"||typeof p=="number");u.length>0&&(n.required=u)}},lu=(t,e,r,i)=>{let n=t._zod.def,o=z(n.innerType,e,i),a=e.seen.get(t);e.target==="openapi-3.0"?(a.ref=n.innerType,r.nullable=!0):r.anyOf=[o,{type:"null"}]},uu=(t,e,r,i)=>{let n=t._zod.def;z(n.innerType,e,i);let o=e.seen.get(t);o.ref=n.innerType},du=(t,e,r,i)=>{let n=t._zod.def;z(n.innerType,e,i);let o=e.seen.get(t);o.ref=n.innerType,r.default=JSON.parse(JSON.stringify(n.defaultValue))},pu=(t,e,r,i)=>{let n=t._zod.def;z(n.innerType,e,i);let o=e.seen.get(t);o.ref=n.innerType,e.io==="input"&&(r._prefault=JSON.parse(JSON.stringify(n.defaultValue)))},mu=(t,e,r,i)=>{let n=t._zod.def;z(n.innerType,e,i);let o=e.seen.get(t);o.ref=n.innerType;let a;try{a=n.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}r.default=a},fu=(t,e,r,i)=>{let n=t._zod.def,o=n.in._zod.traits.has("$ZodTransform"),a=e.io==="input"?o?n.out:n.in:n.out;z(a,e,i);let c=e.seen.get(t);c.ref=a},gu=(t,e,r,i)=>{let n=t._zod.def;z(n.innerType,e,i);let o=e.seen.get(t);o.ref=n.innerType,r.readOnly=!0},hu=(t,e,r,i)=>{let n=t._zod.def;z(n.innerType,e,i);let o=e.seen.get(t);o.ref=n.innerType},Mi=(t,e,r,i)=>{let n=t._zod.def;z(n.innerType,e,i);let o=e.seen.get(t);o.ref=n.innerType},bu=(t,e,r,i)=>{let n=t._zod.innerType;z(n,e,i);let o=e.seen.get(t);o.ref=n},ji={string:Dl,number:Ul,boolean:zl,bigint:jl,symbol:Ll,null:Ml,undefined:Fl,void:Bl,never:Hl,any:Vl,unknown:Zl,date:Kl,enum:Gl,literal:Wl,nan:ql,template_literal:Jl,file:Yl,success:Xl,custom:Ql,function:eu,transform:tu,map:nu,set:ru,array:iu,object:ou,union:Li,intersection:su,tuple:au,record:cu,nullable:lu,nonoptional:uu,default:du,prefault:pu,catch:mu,pipe:fu,readonly:gu,promise:hu,optional:Mi,lazy:bu};function Fi(t,e){if("_idmap"in t){let i=t,n=He({...e,processors:ji}),o={};for(let l of i._idmap.entries()){let[d,u]=l;z(u,n)}let a={},c={registry:i,uri:e?.uri,defs:o};n.external=c;for(let l of i._idmap.entries()){let[d,u]=l;Ve(n,u),a[d]=Ze(n,u)}if(Object.keys(o).length>0){let l=n.target==="draft-2020-12"?"$defs":"definitions";a.__shared={[l]:o}}return{schemas:a}}let r=He({...e,processors:ji});return z(t,r),Ve(r,t),Ze(r,t)}var Bi=class{get metadataRegistry(){return this.ctx.metadataRegistry}get target(){return this.ctx.target}get unrepresentable(){return this.ctx.unrepresentable}get override(){return this.ctx.override}get io(){return this.ctx.io}get counter(){return this.ctx.counter}set counter(e){this.ctx.counter=e}get seen(){return this.ctx.seen}constructor(e){let r=e?.target??"draft-2020-12";r==="draft-4"&&(r="draft-04"),r==="draft-7"&&(r="draft-07"),this.ctx=He({processors:ji,target:r,...e?.metadata&&{metadata:e.metadata},...e?.unrepresentable&&{unrepresentable:e.unrepresentable},...e?.override&&{override:e.override},...e?.io&&{io:e.io}})}process(e,r={path:[],schemaPath:[]}){return z(e,this.ctx,r)}emit(e,r){r&&(r.cycles&&(this.ctx.cycles=r.cycles),r.reused&&(this.ctx.reused=r.reused),r.external&&(this.ctx.external=r.external)),Ve(this.ctx,e);let i=Ze(this.ctx,e),{"~standard":n,...o}=i;return o}};var $g={};var Fn={};Te(Fn,{ZodAny:()=>Fu,ZodArray:()=>Zu,ZodBase64:()=>lo,ZodBase64URL:()=>uo,ZodBigInt:()=>Kt,ZodBigIntFormat:()=>fo,ZodBoolean:()=>Zt,ZodCIDRv4:()=>ao,ZodCIDRv6:()=>co,ZodCUID:()=>eo,ZodCUID2:()=>to,ZodCatch:()=>md,ZodCodec:()=>Qn,ZodCustom:()=>er,ZodCustomStringFormat:()=>Ht,ZodDate:()=>Wn,ZodDefault:()=>ad,ZodDiscriminatedUnion:()=>Gu,ZodE164:()=>po,ZodEmail:()=>Yi,ZodEmoji:()=>Xi,ZodEnum:()=>Ft,ZodExactOptional:()=>id,ZodFile:()=>nd,ZodFunction:()=>Id,ZodGUID:()=>Hn,ZodIPv4:()=>oo,ZodIPv6:()=>so,ZodIntersection:()=>Wu,ZodJWT:()=>mo,ZodKSUID:()=>io,ZodLazy:()=>yd,ZodLiteral:()=>td,ZodMAC:()=>Nu,ZodMap:()=>Qu,ZodNaN:()=>gd,ZodNanoID:()=>Qi,ZodNever:()=>Hu,ZodNonOptional:()=>yo,ZodNull:()=>Lu,ZodNullable:()=>sd,ZodNumber:()=>Vt,ZodNumberFormat:()=>at,ZodObject:()=>Jn,ZodOptional:()=>_o,ZodPipe:()=>Xn,ZodPrefault:()=>ld,ZodPreprocess:()=>hd,ZodPromise:()=>xd,ZodReadonly:()=>bd,ZodRecord:()=>Mt,ZodSet:()=>ed,ZodString:()=>Bt,ZodStringFormat:()=>F,ZodSuccess:()=>pd,ZodSymbol:()=>zu,ZodTemplateLiteral:()=>_d,ZodTransform:()=>rd,ZodTuple:()=>Ju,ZodType:()=>$,ZodULID:()=>no,ZodURL:()=>Gn,ZodUUID:()=>$e,ZodUndefined:()=>ju,ZodUnion:()=>Yn,ZodUnknown:()=>Bu,ZodVoid:()=>Vu,ZodXID:()=>ro,ZodXor:()=>Ku,_ZodString:()=>Ji,_default:()=>cd,_function:()=>Uh,any:()=>mh,array:()=>qn,base64:()=>Jg,base64url:()=>Yg,bigint:()=>ch,boolean:()=>Uu,catch:()=>fd,check:()=>zh,cidrv4:()=>Wg,cidrv6:()=>qg,codec:()=>Ch,cuid:()=>Mg,cuid2:()=>Fg,custom:()=>jh,date:()=>gh,describe:()=>Lh,discriminatedUnion:()=>kh,e164:()=>Xg,email:()=>Rg,emoji:()=>jg,enum:()=>bo,exactOptional:()=>od,file:()=>Oh,float32:()=>ih,float64:()=>oh,function:()=>Uh,guid:()=>Ag,hash:()=>rh,hex:()=>nh,hostname:()=>th,httpUrl:()=>zg,instanceof:()=>Fh,int:()=>Wi,int32:()=>sh,int64:()=>lh,intersection:()=>qu,invertCodec:()=>Ph,ipv4:()=>Zg,ipv6:()=>Gg,json:()=>Hh,jwt:()=>Qg,keyof:()=>hh,ksuid:()=>Vg,lazy:()=>kd,literal:()=>$h,looseObject:()=>_h,looseRecord:()=>Ih,mac:()=>Kg,map:()=>Sh,meta:()=>Mh,nan:()=>Ah,nanoid:()=>Lg,nativeEnum:()=>wh,never:()=>go,nonoptional:()=>dd,null:()=>Mu,nullable:()=>Zn,nullish:()=>Th,number:()=>Du,object:()=>bh,optional:()=>Vn,partialRecord:()=>xh,pipe:()=>qi,prefault:()=>ud,preprocess:()=>Vh,promise:()=>Dh,readonly:()=>vd,record:()=>Xu,refine:()=>Sd,set:()=>Eh,strictObject:()=>vh,string:()=>Bn,stringFormat:()=>eh,stringbool:()=>Bh,success:()=>Rh,superRefine:()=>Ed,symbol:()=>dh,templateLiteral:()=>Nh,transform:()=>vo,tuple:()=>Yu,uint32:()=>ah,uint64:()=>uh,ulid:()=>Bg,undefined:()=>ph,union:()=>ho,unknown:()=>st,url:()=>Ug,uuid:()=>Cg,uuidv4:()=>Pg,uuidv6:()=>Ng,uuidv7:()=>Dg,void:()=>fh,xid:()=>Hg,xor:()=>yh});var Hi={};Te(Hi,{endsWith:()=>Rt,gt:()=>Ee,gte:()=>oe,includes:()=>Ot,length:()=>ot,lowercase:()=>wt,lt:()=>Se,lte:()=>pe,maxLength:()=>it,maxSize:()=>Be,mime:()=>At,minLength:()=>Ce,minSize:()=>we,multipleOf:()=>Fe,negative:()=>Ni,nonnegative:()=>Ui,nonpositive:()=>Di,normalize:()=>Ct,overwrite:()=>ye,positive:()=>Pi,property:()=>zi,regex:()=>Et,size:()=>rt,slugify:()=>Ut,startsWith:()=>Tt,toLowerCase:()=>Nt,toUpperCase:()=>Dt,trim:()=>Pt,uppercase:()=>$t});var Lt={};Te(Lt,{ZodISODate:()=>Zi,ZodISODateTime:()=>Vi,ZodISODuration:()=>Gi,ZodISOTime:()=>Ki,date:()=>_u,datetime:()=>vu,duration:()=>ku,time:()=>yu});var Vi=f("ZodISODateTime",(t,e)=>{qa.init(t,e),F.init(t,e)});function vu(t){return Qc(Vi,t)}var Zi=f("ZodISODate",(t,e)=>{Ja.init(t,e),F.init(t,e)});function _u(t){return el(Zi,t)}var Ki=f("ZodISOTime",(t,e)=>{Ya.init(t,e),F.init(t,e)});function yu(t){return tl(Ki,t)}var Gi=f("ZodISODuration",(t,e)=>{Xa.init(t,e),F.init(t,e)});function ku(t){return nl(Gi,t)}var Og=(t,e)=>{On.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>Rn(t,r)},flatten:{value:r=>Tn(t,r)},addIssue:{value:r=>{t.issues.push(r),t.message=JSON.stringify(t.issues,ht,2)}},addIssues:{value:r=>{t.issues.push(...r),t.message=JSON.stringify(t.issues,ht,2)}},isEmpty:{get(){return t.issues.length===0}}})},jI=f("ZodError",Og),le=f("ZodError",Og,{Parent:Error});var xu=_t(le),Iu=yt(le),Su=kt(le),Eu=xt(le),wu=Fr(le),$u=Br(le),Ou=Hr(le),Tu=Vr(le),Ru=Zr(le),Au=Kr(le),Cu=Gr(le),Pu=Wr(le);var Tg=new WeakMap;function Kn(t,e,r){let i=Object.getPrototypeOf(t),n=Tg.get(i);if(n||(n=new Set,Tg.set(i,n)),!n.has(e)){n.add(e);for(let o in r){let a=r[o];Object.defineProperty(i,o,{configurable:!0,enumerable:!1,get(){let c=a.bind(this);return Object.defineProperty(this,o,{configurable:!0,writable:!0,enumerable:!0,value:c}),c},set(c){Object.defineProperty(this,o,{configurable:!0,writable:!0,enumerable:!0,value:c})}})}}}var $=f("ZodType",(t,e)=>(w.init(t,e),Object.assign(t["~standard"],{jsonSchema:{input:jt(t,"input"),output:jt(t,"output")}}),t.toJSONSchema=Nl(t,{}),t.def=e,t.type=e.type,Object.defineProperty(t,"_def",{value:e}),t.parse=(r,i)=>xu(t,r,i,{callee:t.parse}),t.safeParse=(r,i)=>Su(t,r,i),t.parseAsync=async(r,i)=>Iu(t,r,i,{callee:t.parseAsync}),t.safeParseAsync=async(r,i)=>Eu(t,r,i),t.spa=t.safeParseAsync,t.encode=(r,i)=>wu(t,r,i),t.decode=(r,i)=>$u(t,r,i),t.encodeAsync=async(r,i)=>Ou(t,r,i),t.decodeAsync=async(r,i)=>Tu(t,r,i),t.safeEncode=(r,i)=>Ru(t,r,i),t.safeDecode=(r,i)=>Au(t,r,i),t.safeEncodeAsync=async(r,i)=>Cu(t,r,i),t.safeDecodeAsync=async(r,i)=>Pu(t,r,i),Kn(t,"ZodType",{check(...r){let i=this.def;return this.clone(y.mergeDefs(i,{checks:[...i.checks??[],...r.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),{parent:!0})},with(...r){return this.check(...r)},clone(r,i){return re(this,r,i)},brand(){return this},register(r,i){return r.add(this,i),this},refine(r,i){return this.check(Sd(r,i))},superRefine(r,i){return this.check(Ed(r,i))},overwrite(r){return this.check(ye(r))},optional(){return Vn(this)},exactOptional(){return od(this)},nullable(){return Zn(this)},nullish(){return Vn(Zn(this))},nonoptional(r){return dd(this,r)},array(){return qn(this)},or(r){return ho([this,r])},and(r){return qu(this,r)},transform(r){return qi(this,vo(r))},default(r){return cd(this,r)},prefault(r){return ud(this,r)},catch(r){return fd(this,r)},pipe(r){return qi(this,r)},readonly(){return vd(this)},describe(r){let i=this.clone();return ee.add(i,{description:r}),i},meta(...r){if(r.length===0)return ee.get(this);let i=this.clone();return ee.add(i,r[0]),i},isOptional(){return this.safeParse(void 0).success},isNullable(){return this.safeParse(null).success},apply(r){return r(this)}}),Object.defineProperty(t,"description",{get(){return ee.get(t)?.description},configurable:!0}),t)),Ji=f("_ZodString",(t,e)=>{nt.init(t,e),$.init(t,e),t._zod.processJSONSchema=(i,n,o)=>Dl(t,i,n,o);let r=t._zod.bag;t.format=r.format??null,t.minLength=r.minimum??null,t.maxLength=r.maximum??null,Kn(t,"_ZodString",{regex(...i){return this.check(Et(...i))},includes(...i){return this.check(Ot(...i))},startsWith(...i){return this.check(Tt(...i))},endsWith(...i){return this.check(Rt(...i))},min(...i){return this.check(Ce(...i))},max(...i){return this.check(it(...i))},length(...i){return this.check(ot(...i))},nonempty(...i){return this.check(Ce(1,...i))},lowercase(i){return this.check(wt(i))},uppercase(i){return this.check($t(i))},trim(){return this.check(Pt())},normalize(...i){return this.check(Ct(...i))},toLowerCase(){return this.check(Nt())},toUpperCase(){return this.check(Dt())},slugify(){return this.check(Ut())}})}),Bt=f("ZodString",(t,e)=>{nt.init(t,e),Ji.init(t,e),t.email=r=>t.check(mi(Yi,r)),t.url=r=>t.check(Mn(Gn,r)),t.jwt=r=>t.check(Ci(mo,r)),t.emoji=r=>t.check(vi(Xi,r)),t.guid=r=>t.check(Ln(Hn,r)),t.uuid=r=>t.check(fi($e,r)),t.uuidv4=r=>t.check(gi($e,r)),t.uuidv6=r=>t.check(hi($e,r)),t.uuidv7=r=>t.check(bi($e,r)),t.nanoid=r=>t.check(_i(Qi,r)),t.guid=r=>t.check(Ln(Hn,r)),t.cuid=r=>t.check(yi(eo,r)),t.cuid2=r=>t.check(ki(to,r)),t.ulid=r=>t.check(xi(no,r)),t.base64=r=>t.check(Ti(lo,r)),t.base64url=r=>t.check(Ri(uo,r)),t.xid=r=>t.check(Ii(ro,r)),t.ksuid=r=>t.check(Si(io,r)),t.ipv4=r=>t.check(Ei(oo,r)),t.ipv6=r=>t.check(wi(so,r)),t.cidrv4=r=>t.check($i(ao,r)),t.cidrv6=r=>t.check(Oi(co,r)),t.e164=r=>t.check(Ai(po,r)),t.datetime=r=>t.check(vu(r)),t.date=r=>t.check(_u(r)),t.time=r=>t.check(yu(r)),t.duration=r=>t.check(ku(r))});function Bn(t){return qc(Bt,t)}var F=f("ZodStringFormat",(t,e)=>{M.init(t,e),Ji.init(t,e)}),Yi=f("ZodEmail",(t,e)=>{Ma.init(t,e),F.init(t,e)});function Rg(t){return mi(Yi,t)}var Hn=f("ZodGUID",(t,e)=>{ja.init(t,e),F.init(t,e)});function Ag(t){return Ln(Hn,t)}var $e=f("ZodUUID",(t,e)=>{La.init(t,e),F.init(t,e)});function Cg(t){return fi($e,t)}function Pg(t){return gi($e,t)}function Ng(t){return hi($e,t)}function Dg(t){return bi($e,t)}var Gn=f("ZodURL",(t,e)=>{Fa.init(t,e),F.init(t,e)});function Ug(t){return Mn(Gn,t)}function zg(t){return Mn(Gn,{protocol:de.httpProtocol,hostname:de.domain,...y.normalizeParams(t)})}var Xi=f("ZodEmoji",(t,e)=>{Ba.init(t,e),F.init(t,e)});function jg(t){return vi(Xi,t)}var Qi=f("ZodNanoID",(t,e)=>{Ha.init(t,e),F.init(t,e)});function Lg(t){return _i(Qi,t)}var eo=f("ZodCUID",(t,e)=>{Va.init(t,e),F.init(t,e)});function Mg(t){return yi(eo,t)}var to=f("ZodCUID2",(t,e)=>{Za.init(t,e),F.init(t,e)});function Fg(t){return ki(to,t)}var no=f("ZodULID",(t,e)=>{Ka.init(t,e),F.init(t,e)});function Bg(t){return xi(no,t)}var ro=f("ZodXID",(t,e)=>{Ga.init(t,e),F.init(t,e)});function Hg(t){return Ii(ro,t)}var io=f("ZodKSUID",(t,e)=>{Wa.init(t,e),F.init(t,e)});function Vg(t){return Si(io,t)}var oo=f("ZodIPv4",(t,e)=>{Qa.init(t,e),F.init(t,e)});function Zg(t){return Ei(oo,t)}var Nu=f("ZodMAC",(t,e)=>{tc.init(t,e),F.init(t,e)});function Kg(t){return Yc(Nu,t)}var so=f("ZodIPv6",(t,e)=>{ec.init(t,e),F.init(t,e)});function Gg(t){return wi(so,t)}var ao=f("ZodCIDRv4",(t,e)=>{nc.init(t,e),F.init(t,e)});function Wg(t){return $i(ao,t)}var co=f("ZodCIDRv6",(t,e)=>{rc.init(t,e),F.init(t,e)});function qg(t){return Oi(co,t)}var lo=f("ZodBase64",(t,e)=>{oc.init(t,e),F.init(t,e)});function Jg(t){return Ti(lo,t)}var uo=f("ZodBase64URL",(t,e)=>{sc.init(t,e),F.init(t,e)});function Yg(t){return Ri(uo,t)}var po=f("ZodE164",(t,e)=>{ac.init(t,e),F.init(t,e)});function Xg(t){return Ai(po,t)}var mo=f("ZodJWT",(t,e)=>{cc.init(t,e),F.init(t,e)});function Qg(t){return Ci(mo,t)}var Ht=f("ZodCustomStringFormat",(t,e)=>{lc.init(t,e),F.init(t,e)});function eh(t,e,r={}){return zt(Ht,t,e,r)}function th(t){return zt(Ht,"hostname",de.hostname,t)}function nh(t){return zt(Ht,"hex",de.hex,t)}function rh(t,e){let r=e?.enc??"hex",i=`${t}_${r}`,n=de[i];if(!n)throw new Error(`Unrecognized hash format: ${i}`);return zt(Ht,i,n,e)}var Vt=f("ZodNumber",(t,e)=>{ri.init(t,e),$.init(t,e),t._zod.processJSONSchema=(i,n,o)=>Ul(t,i,n,o),Kn(t,"ZodNumber",{gt(i,n){return this.check(Ee(i,n))},gte(i,n){return this.check(oe(i,n))},min(i,n){return this.check(oe(i,n))},lt(i,n){return this.check(Se(i,n))},lte(i,n){return this.check(pe(i,n))},max(i,n){return this.check(pe(i,n))},int(i){return this.check(Wi(i))},safe(i){return this.check(Wi(i))},positive(i){return this.check(Ee(0,i))},nonnegative(i){return this.check(oe(0,i))},negative(i){return this.check(Se(0,i))},nonpositive(i){return this.check(pe(0,i))},multipleOf(i,n){return this.check(Fe(i,n))},step(i,n){return this.check(Fe(i,n))},finite(){return this}});let r=t._zod.bag;t.minValue=Math.max(r.minimum??Number.NEGATIVE_INFINITY,r.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,t.maxValue=Math.min(r.maximum??Number.POSITIVE_INFINITY,r.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,t.isInt=(r.format??"").includes("int")||Number.isSafeInteger(r.multipleOf??.5),t.isFinite=!0,t.format=r.format??null});function Du(t){return rl(Vt,t)}var at=f("ZodNumberFormat",(t,e)=>{uc.init(t,e),Vt.init(t,e)});function Wi(t){return ol(at,t)}function ih(t){return sl(at,t)}function oh(t){return al(at,t)}function sh(t){return cl(at,t)}function ah(t){return ll(at,t)}var Zt=f("ZodBoolean",(t,e)=>{Nn.init(t,e),$.init(t,e),t._zod.processJSONSchema=(r,i,n)=>zl(t,r,i,n)});function Uu(t){return ul(Zt,t)}var Kt=f("ZodBigInt",(t,e)=>{ii.init(t,e),$.init(t,e),t._zod.processJSONSchema=(i,n,o)=>jl(t,i,n,o),t.gte=(i,n)=>t.check(oe(i,n)),t.min=(i,n)=>t.check(oe(i,n)),t.gt=(i,n)=>t.check(Ee(i,n)),t.gte=(i,n)=>t.check(oe(i,n)),t.min=(i,n)=>t.check(oe(i,n)),t.lt=(i,n)=>t.check(Se(i,n)),t.lte=(i,n)=>t.check(pe(i,n)),t.max=(i,n)=>t.check(pe(i,n)),t.positive=i=>t.check(Ee(BigInt(0),i)),t.negative=i=>t.check(Se(BigInt(0),i)),t.nonpositive=i=>t.check(pe(BigInt(0),i)),t.nonnegative=i=>t.check(oe(BigInt(0),i)),t.multipleOf=(i,n)=>t.check(Fe(i,n));let r=t._zod.bag;t.minValue=r.minimum??null,t.maxValue=r.maximum??null,t.format=r.format??null});function ch(t){return pl(Kt,t)}var fo=f("ZodBigIntFormat",(t,e)=>{dc.init(t,e),Kt.init(t,e)});function lh(t){return fl(fo,t)}function uh(t){return gl(fo,t)}var zu=f("ZodSymbol",(t,e)=>{pc.init(t,e),$.init(t,e),t._zod.processJSONSchema=(r,i,n)=>Ll(t,r,i,n)});function dh(t){return hl(zu,t)}var ju=f("ZodUndefined",(t,e)=>{mc.init(t,e),$.init(t,e),t._zod.processJSONSchema=(r,i,n)=>Fl(t,r,i,n)});function ph(t){return bl(ju,t)}var Lu=f("ZodNull",(t,e)=>{fc.init(t,e),$.init(t,e),t._zod.processJSONSchema=(r,i,n)=>Ml(t,r,i,n)});function Mu(t){return vl(Lu,t)}var Fu=f("ZodAny",(t,e)=>{gc.init(t,e),$.init(t,e),t._zod.processJSONSchema=(r,i,n)=>Vl(t,r,i,n)});function mh(){return _l(Fu)}var Bu=f("ZodUnknown",(t,e)=>{hc.init(t,e),$.init(t,e),t._zod.processJSONSchema=(r,i,n)=>Zl(t,r,i,n)});function st(){return yl(Bu)}var Hu=f("ZodNever",(t,e)=>{bc.init(t,e),$.init(t,e),t._zod.processJSONSchema=(r,i,n)=>Hl(t,r,i,n)});function go(t){return kl(Hu,t)}var Vu=f("ZodVoid",(t,e)=>{vc.init(t,e),$.init(t,e),t._zod.processJSONSchema=(r,i,n)=>Bl(t,r,i,n)});function fh(t){return xl(Vu,t)}var Wn=f("ZodDate",(t,e)=>{_c.init(t,e),$.init(t,e),t._zod.processJSONSchema=(i,n,o)=>Kl(t,i,n,o),t.min=(i,n)=>t.check(oe(i,n)),t.max=(i,n)=>t.check(pe(i,n));let r=t._zod.bag;t.minDate=r.minimum?new Date(r.minimum):null,t.maxDate=r.maximum?new Date(r.maximum):null});function gh(t){return Il(Wn,t)}var Zu=f("ZodArray",(t,e)=>{yc.init(t,e),$.init(t,e),t._zod.processJSONSchema=(r,i,n)=>iu(t,r,i,n),t.element=e.element,Kn(t,"ZodArray",{min(r,i){return this.check(Ce(r,i))},nonempty(r){return this.check(Ce(1,r))},max(r,i){return this.check(it(r,i))},length(r,i){return this.check(ot(r,i))},unwrap(){return this.element}})});function qn(t,e){return wl(Zu,t,e)}function hh(t){let e=t._zod.def.shape;return bo(Object.keys(e))}var Jn=f("ZodObject",(t,e)=>{kc.init(t,e),$.init(t,e),t._zod.processJSONSchema=(r,i,n)=>ou(t,r,i,n),y.defineLazy(t,"shape",()=>e.shape),Kn(t,"ZodObject",{keyof(){return bo(Object.keys(this._zod.def.shape))},catchall(r){return this.clone({...this._zod.def,catchall:r})},passthrough(){return this.clone({...this._zod.def,catchall:st()})},loose(){return this.clone({...this._zod.def,catchall:st()})},strict(){return this.clone({...this._zod.def,catchall:go()})},strip(){return this.clone({...this._zod.def,catchall:void 0})},extend(r){return y.extend(this,r)},safeExtend(r){return y.safeExtend(this,r)},merge(r){return y.merge(this,r)},pick(r){return y.pick(this,r)},omit(r){return y.omit(this,r)},partial(...r){return y.partial(_o,this,r[0])},required(...r){return y.required(yo,this,r[0])}})});function bh(t,e){let r={type:"object",shape:t??{},...y.normalizeParams(e)};return new Jn(r)}function vh(t,e){return new Jn({type:"object",shape:t,catchall:go(),...y.normalizeParams(e)})}function _h(t,e){return new Jn({type:"object",shape:t,catchall:st(),...y.normalizeParams(e)})}var Yn=f("ZodUnion",(t,e)=>{Dn.init(t,e),$.init(t,e),t._zod.processJSONSchema=(r,i,n)=>Li(t,r,i,n),t.options=e.options});function ho(t,e){return new Yn({type:"union",options:t,...y.normalizeParams(e)})}var Ku=f("ZodXor",(t,e)=>{Yn.init(t,e),xc.init(t,e),t._zod.processJSONSchema=(r,i,n)=>Li(t,r,i,n),t.options=e.options});function yh(t,e){return new Ku({type:"union",options:t,inclusive:!1,...y.normalizeParams(e)})}var Gu=f("ZodDiscriminatedUnion",(t,e)=>{Yn.init(t,e),Ic.init(t,e)});function kh(t,e,r){return new Gu({type:"union",options:e,discriminator:t,...y.normalizeParams(r)})}var Wu=f("ZodIntersection",(t,e)=>{Sc.init(t,e),$.init(t,e),t._zod.processJSONSchema=(r,i,n)=>su(t,r,i,n)});function qu(t,e){return new Wu({type:"intersection",left:t,right:e})}var Ju=f("ZodTuple",(t,e)=>{oi.init(t,e),$.init(t,e),t._zod.processJSONSchema=(r,i,n)=>au(t,r,i,n),t.rest=r=>t.clone({...t._zod.def,rest:r})});function Yu(t,e,r){let i=e instanceof w,n=i?r:e,o=i?e:null;return new Ju({type:"tuple",items:t,rest:o,...y.normalizeParams(n)})}var Mt=f("ZodRecord",(t,e)=>{Ec.init(t,e),$.init(t,e),t._zod.processJSONSchema=(r,i,n)=>cu(t,r,i,n),t.keyType=e.keyType,t.valueType=e.valueType});function Xu(t,e,r){return!e||!e._zod?new Mt({type:"record",keyType:Bn(),valueType:t,...y.normalizeParams(e)}):new Mt({type:"record",keyType:t,valueType:e,...y.normalizeParams(r)})}function xh(t,e,r){let i=re(t);return i._zod.values=void 0,new Mt({type:"record",keyType:i,valueType:e,...y.normalizeParams(r)})}function Ih(t,e,r){return new Mt({type:"record",keyType:t,valueType:e,mode:"loose",...y.normalizeParams(r)})}var Qu=f("ZodMap",(t,e)=>{wc.init(t,e),$.init(t,e),t._zod.processJSONSchema=(r,i,n)=>nu(t,r,i,n),t.keyType=e.keyType,t.valueType=e.valueType,t.min=(...r)=>t.check(we(...r)),t.nonempty=r=>t.check(we(1,r)),t.max=(...r)=>t.check(Be(...r)),t.size=(...r)=>t.check(rt(...r))});function Sh(t,e,r){return new Qu({type:"map",keyType:t,valueType:e,...y.normalizeParams(r)})}var ed=f("ZodSet",(t,e)=>{$c.init(t,e),$.init(t,e),t._zod.processJSONSchema=(r,i,n)=>ru(t,r,i,n),t.min=(...r)=>t.check(we(...r)),t.nonempty=r=>t.check(we(1,r)),t.max=(...r)=>t.check(Be(...r)),t.size=(...r)=>t.check(rt(...r))});function Eh(t,e){return new ed({type:"set",valueType:t,...y.normalizeParams(e)})}var Ft=f("ZodEnum",(t,e)=>{Oc.init(t,e),$.init(t,e),t._zod.processJSONSchema=(i,n,o)=>Gl(t,i,n,o),t.enum=e.entries,t.options=Object.values(e.entries);let r=new Set(Object.keys(e.entries));t.extract=(i,n)=>{let o={};for(let a of i)if(r.has(a))o[a]=e.entries[a];else throw new Error(`Key ${a} not found in enum`);return new Ft({...e,checks:[],...y.normalizeParams(n),entries:o})},t.exclude=(i,n)=>{let o={...e.entries};for(let a of i)if(r.has(a))delete o[a];else throw new Error(`Key ${a} not found in enum`);return new Ft({...e,checks:[],...y.normalizeParams(n),entries:o})}});function bo(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(i=>[i,i])):t;return new Ft({type:"enum",entries:r,...y.normalizeParams(e)})}function wh(t,e){return new Ft({type:"enum",entries:t,...y.normalizeParams(e)})}var td=f("ZodLiteral",(t,e)=>{Tc.init(t,e),$.init(t,e),t._zod.processJSONSchema=(r,i,n)=>Wl(t,r,i,n),t.values=new Set(e.values),Object.defineProperty(t,"value",{get(){if(e.values.length>1)throw new Error("This schema contains multiple valid literal values. Use `.values` instead.");return e.values[0]}})});function $h(t,e){return new td({type:"literal",values:Array.isArray(t)?t:[t],...y.normalizeParams(e)})}var nd=f("ZodFile",(t,e)=>{Rc.init(t,e),$.init(t,e),t._zod.processJSONSchema=(r,i,n)=>Yl(t,r,i,n),t.min=(r,i)=>t.check(we(r,i)),t.max=(r,i)=>t.check(Be(r,i)),t.mime=(r,i)=>t.check(At(Array.isArray(r)?r:[r],i))});function Oh(t){return $l(nd,t)}var rd=f("ZodTransform",(t,e)=>{Ac.init(t,e),$.init(t,e),t._zod.processJSONSchema=(r,i,n)=>tu(t,r,i,n),t._zod.parse=(r,i)=>{if(i.direction==="backward")throw new Ue(t.constructor.name);r.addIssue=o=>{if(typeof o=="string")r.issues.push(y.issue(o,r.value,e));else{let a=o;a.fatal&&(a.continue=!1),a.code??(a.code="custom"),a.input??(a.input=r.value),a.inst??(a.inst=t),r.issues.push(y.issue(a))}};let n=e.transform(r.value,r);return n instanceof Promise?n.then(o=>(r.value=o,r.fallback=!0,r)):(r.value=n,r.fallback=!0,r)}});function vo(t){return new rd({type:"transform",transform:t})}var _o=f("ZodOptional",(t,e)=>{si.init(t,e),$.init(t,e),t._zod.processJSONSchema=(r,i,n)=>Mi(t,r,i,n),t.unwrap=()=>t._zod.def.innerType});function Vn(t){return new _o({type:"optional",innerType:t})}var id=f("ZodExactOptional",(t,e)=>{Cc.init(t,e),$.init(t,e),t._zod.processJSONSchema=(r,i,n)=>Mi(t,r,i,n),t.unwrap=()=>t._zod.def.innerType});function od(t){return new id({type:"optional",innerType:t})}var sd=f("ZodNullable",(t,e)=>{Pc.init(t,e),$.init(t,e),t._zod.processJSONSchema=(r,i,n)=>lu(t,r,i,n),t.unwrap=()=>t._zod.def.innerType});function Zn(t){return new sd({type:"nullable",innerType:t})}function Th(t){return Vn(Zn(t))}var ad=f("ZodDefault",(t,e)=>{Nc.init(t,e),$.init(t,e),t._zod.processJSONSchema=(r,i,n)=>du(t,r,i,n),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});function cd(t,e){return new ad({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():y.shallowClone(e)}})}var ld=f("ZodPrefault",(t,e)=>{Dc.init(t,e),$.init(t,e),t._zod.processJSONSchema=(r,i,n)=>pu(t,r,i,n),t.unwrap=()=>t._zod.def.innerType});function ud(t,e){return new ld({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():y.shallowClone(e)}})}var yo=f("ZodNonOptional",(t,e)=>{Uc.init(t,e),$.init(t,e),t._zod.processJSONSchema=(r,i,n)=>uu(t,r,i,n),t.unwrap=()=>t._zod.def.innerType});function dd(t,e){return new yo({type:"nonoptional",innerType:t,...y.normalizeParams(e)})}var pd=f("ZodSuccess",(t,e)=>{zc.init(t,e),$.init(t,e),t._zod.processJSONSchema=(r,i,n)=>Xl(t,r,i,n),t.unwrap=()=>t._zod.def.innerType});function Rh(t){return new pd({type:"success",innerType:t})}var md=f("ZodCatch",(t,e)=>{jc.init(t,e),$.init(t,e),t._zod.processJSONSchema=(r,i,n)=>mu(t,r,i,n),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});function fd(t,e){return new md({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}var gd=f("ZodNaN",(t,e)=>{Lc.init(t,e),$.init(t,e),t._zod.processJSONSchema=(r,i,n)=>ql(t,r,i,n)});function Ah(t){return El(gd,t)}var Xn=f("ZodPipe",(t,e)=>{ai.init(t,e),$.init(t,e),t._zod.processJSONSchema=(r,i,n)=>fu(t,r,i,n),t.in=e.in,t.out=e.out});function qi(t,e){return new Xn({type:"pipe",in:t,out:e})}var Qn=f("ZodCodec",(t,e)=>{Xn.init(t,e),Un.init(t,e)});function Ch(t,e,r){return new Qn({type:"pipe",in:t,out:e,transform:r.decode,reverseTransform:r.encode})}function Ph(t){let e=t._zod.def;return new Qn({type:"pipe",in:e.out,out:e.in,transform:e.reverseTransform,reverseTransform:e.transform})}var hd=f("ZodPreprocess",(t,e)=>{Xn.init(t,e),Mc.init(t,e)}),bd=f("ZodReadonly",(t,e)=>{Fc.init(t,e),$.init(t,e),t._zod.processJSONSchema=(r,i,n)=>gu(t,r,i,n),t.unwrap=()=>t._zod.def.innerType});function vd(t){return new bd({type:"readonly",innerType:t})}var _d=f("ZodTemplateLiteral",(t,e)=>{Bc.init(t,e),$.init(t,e),t._zod.processJSONSchema=(r,i,n)=>Jl(t,r,i,n)});function Nh(t,e){return new _d({type:"template_literal",parts:t,...y.normalizeParams(e)})}var yd=f("ZodLazy",(t,e)=>{Zc.init(t,e),$.init(t,e),t._zod.processJSONSchema=(r,i,n)=>bu(t,r,i,n),t.unwrap=()=>t._zod.def.getter()});function kd(t){return new yd({type:"lazy",getter:t})}var xd=f("ZodPromise",(t,e)=>{Vc.init(t,e),$.init(t,e),t._zod.processJSONSchema=(r,i,n)=>hu(t,r,i,n),t.unwrap=()=>t._zod.def.innerType});function Dh(t){return new xd({type:"promise",innerType:t})}var Id=f("ZodFunction",(t,e)=>{Hc.init(t,e),$.init(t,e),t._zod.processJSONSchema=(r,i,n)=>eu(t,r,i,n)});function Uh(t){return new Id({type:"function",input:Array.isArray(t?.input)?Yu(t?.input):t?.input??qn(st()),output:t?.output??st()})}var er=f("ZodCustom",(t,e)=>{Kc.init(t,e),$.init(t,e),t._zod.processJSONSchema=(r,i,n)=>Ql(t,r,i,n)});function zh(t){let e=new B({check:"custom"});return e._zod.check=t,e}function jh(t,e){return Ol(er,t??(()=>!0),e)}function Sd(t,e={}){return Tl(er,t,e)}function Ed(t,e){return Rl(t,e)}var Lh=Al,Mh=Cl;function Fh(t,e={}){let r=new er({type:"custom",check:"custom",fn:i=>i instanceof t,abort:!0,...y.normalizeParams(e)});return r._zod.bag.Class=t,r._zod.check=i=>{i.value instanceof t||i.issues.push({code:"invalid_type",expected:t.name,input:i.value,inst:r,path:[...r._zod.def.path??[]]})},r}var Bh=(...t)=>Pl({Codec:Qn,Boolean:Zt,String:Bt},...t);function Hh(t){let e=kd(()=>ho([Bn(t),Du(),Uu(),Mu(),qn(e),Xu(Bn(),e)]));return e}function Vh(t,e){return new hd({type:"pipe",in:vo(t),out:e})}var MI={invalid_type:"invalid_type",too_big:"too_big",too_small:"too_small",invalid_format:"invalid_format",not_multiple_of:"not_multiple_of",unrecognized_keys:"unrecognized_keys",invalid_union:"invalid_union",invalid_key:"invalid_key",invalid_element:"invalid_element",invalid_value:"invalid_value",custom:"custom"};function FI(t){q({customError:t})}function BI(){return q().customError}var wd;wd||(wd={});var I={...Fn,...Hi,iso:Lt},HI=new Set(["$schema","$ref","$defs","definitions","$id","id","$comment","$anchor","$vocabulary","$dynamicRef","$dynamicAnchor","type","enum","const","anyOf","oneOf","allOf","not","properties","required","additionalProperties","patternProperties","propertyNames","minProperties","maxProperties","items","prefixItems","additionalItems","minItems","maxItems","uniqueItems","contains","minContains","maxContains","minLength","maxLength","pattern","format","minimum","maximum","exclusiveMinimum","exclusiveMaximum","multipleOf","description","default","contentEncoding","contentMediaType","contentSchema","unevaluatedItems","unevaluatedProperties","if","then","else","dependentSchemas","dependentRequired","nullable","readOnly"]);function VI(t,e){let r=t.$schema;return r==="https://json-schema.org/draft/2020-12/schema"?"draft-2020-12":r==="http://json-schema.org/draft-07/schema#"?"draft-7":r==="http://json-schema.org/draft-04/schema#"?"draft-4":e??"draft-2020-12"}function ZI(t,e){if(!t.startsWith("#"))throw new Error("External $ref is not supported, only local refs (#/...) are allowed");let r=t.slice(1).split("/").filter(Boolean);if(r.length===0)return e.rootSchema;let i=e.version==="draft-2020-12"?"$defs":"definitions";if(r[0]===i){let n=r[1];if(!n||!e.defs[n])throw new Error(`Reference not found: ${t}`);return e.defs[n]}throw new Error(`Reference not found: ${t}`)}function Zh(t,e){if(t.not!==void 0){if(typeof t.not=="object"&&Object.keys(t.not).length===0)return I.never();throw new Error("not is not supported in Zod (except { not: {} } for never)")}if(t.unevaluatedItems!==void 0)throw new Error("unevaluatedItems is not supported");if(t.unevaluatedProperties!==void 0)throw new Error("unevaluatedProperties is not supported");if(t.if!==void 0||t.then!==void 0||t.else!==void 0)throw new Error("Conditional schemas (if/then/else) are not supported");if(t.dependentSchemas!==void 0||t.dependentRequired!==void 0)throw new Error("dependentSchemas and dependentRequired are not supported");if(t.$ref){let n=t.$ref;if(e.refs.has(n))return e.refs.get(n);if(e.processing.has(n))return I.lazy(()=>{if(!e.refs.has(n))throw new Error(`Circular reference not resolved: ${n}`);return e.refs.get(n)});e.processing.add(n);let o=ZI(n,e),a=ne(o,e);return e.refs.set(n,a),e.processing.delete(n),a}if(t.enum!==void 0){let n=t.enum;if(e.version==="openapi-3.0"&&t.nullable===!0&&n.length===1&&n[0]===null)return I.null();if(n.length===0)return I.never();if(n.length===1)return I.literal(n[0]);if(n.every(a=>typeof a=="string"))return I.enum(n);let o=n.map(a=>I.literal(a));return o.length<2?o[0]:I.union([o[0],o[1],...o.slice(2)])}if(t.const!==void 0)return I.literal(t.const);let r=t.type;if(Array.isArray(r)){let n=r.map(o=>{let a={...t,type:o};return Zh(a,e)});return n.length===0?I.never():n.length===1?n[0]:I.union(n)}if(!r)return I.any();let i;switch(r){case"string":{let n=I.string();if(t.format){let o=t.format;o==="email"?n=n.check(I.email()):o==="uri"||o==="uri-reference"?n=n.check(I.url()):o==="uuid"||o==="guid"?n=n.check(I.uuid()):o==="date-time"?n=n.check(I.iso.datetime()):o==="date"?n=n.check(I.iso.date()):o==="time"?n=n.check(I.iso.time()):o==="duration"?n=n.check(I.iso.duration()):o==="ipv4"?n=n.check(I.ipv4()):o==="ipv6"?n=n.check(I.ipv6()):o==="mac"?n=n.check(I.mac()):o==="cidr"?n=n.check(I.cidrv4()):o==="cidr-v6"?n=n.check(I.cidrv6()):o==="base64"?n=n.check(I.base64()):o==="base64url"?n=n.check(I.base64url()):o==="e164"?n=n.check(I.e164()):o==="jwt"?n=n.check(I.jwt()):o==="emoji"?n=n.check(I.emoji()):o==="nanoid"?n=n.check(I.nanoid()):o==="cuid"?n=n.check(I.cuid()):o==="cuid2"?n=n.check(I.cuid2()):o==="ulid"?n=n.check(I.ulid()):o==="xid"?n=n.check(I.xid()):o==="ksuid"&&(n=n.check(I.ksuid()))}typeof t.minLength=="number"&&(n=n.min(t.minLength)),typeof t.maxLength=="number"&&(n=n.max(t.maxLength)),t.pattern&&(n=n.regex(new RegExp(t.pattern))),i=n;break}case"number":case"integer":{let n=r==="integer"?I.number().int():I.number();typeof t.minimum=="number"&&(n=n.min(t.minimum)),typeof t.maximum=="number"&&(n=n.max(t.maximum)),typeof t.exclusiveMinimum=="number"?n=n.gt(t.exclusiveMinimum):t.exclusiveMinimum===!0&&typeof t.minimum=="number"&&(n=n.gt(t.minimum)),typeof t.exclusiveMaximum=="number"?n=n.lt(t.exclusiveMaximum):t.exclusiveMaximum===!0&&typeof t.maximum=="number"&&(n=n.lt(t.maximum)),typeof t.multipleOf=="number"&&(n=n.multipleOf(t.multipleOf)),i=n;break}case"boolean":{i=I.boolean();break}case"null":{i=I.null();break}case"object":{let n={},o=t.properties||{},a=new Set(t.required||[]);for(let[l,d]of Object.entries(o)){let u=ne(d,e);n[l]=a.has(l)?u:u.optional()}if(t.propertyNames){let l=ne(t.propertyNames,e),d=t.additionalProperties&&typeof t.additionalProperties=="object"?ne(t.additionalProperties,e):I.any();if(Object.keys(n).length===0){i=I.record(l,d);break}let u=I.object(n).passthrough(),p=I.looseRecord(l,d);i=I.intersection(u,p);break}if(t.patternProperties){let l=t.patternProperties,d=Object.keys(l),u=[];for(let m of d){let g=ne(l[m],e),k=I.string().regex(new RegExp(m));u.push(I.looseRecord(k,g))}let p=[];if(Object.keys(n).length>0&&p.push(I.object(n).passthrough()),p.push(...u),p.length===0)i=I.object({}).passthrough();else if(p.length===1)i=p[0];else{let m=I.intersection(p[0],p[1]);for(let g=2;g<p.length;g++)m=I.intersection(m,p[g]);i=m}break}let c=I.object(n);t.additionalProperties===!1?i=c.strict():typeof t.additionalProperties=="object"?i=c.catchall(ne(t.additionalProperties,e)):i=c.passthrough();break}case"array":{let n=t.prefixItems,o=t.items;if(n&&Array.isArray(n)){let a=n.map(l=>ne(l,e)),c=o&&typeof o=="object"&&!Array.isArray(o)?ne(o,e):void 0;c?i=I.tuple(a).rest(c):i=I.tuple(a),typeof t.minItems=="number"&&(i=i.check(I.minLength(t.minItems))),typeof t.maxItems=="number"&&(i=i.check(I.maxLength(t.maxItems)))}else if(Array.isArray(o)){let a=o.map(l=>ne(l,e)),c=t.additionalItems&&typeof t.additionalItems=="object"?ne(t.additionalItems,e):void 0;c?i=I.tuple(a).rest(c):i=I.tuple(a),typeof t.minItems=="number"&&(i=i.check(I.minLength(t.minItems))),typeof t.maxItems=="number"&&(i=i.check(I.maxLength(t.maxItems)))}else if(o!==void 0){let a=ne(o,e),c=I.array(a);typeof t.minItems=="number"&&(c=c.min(t.minItems)),typeof t.maxItems=="number"&&(c=c.max(t.maxItems)),i=c}else i=I.array(I.any());break}default:throw new Error(`Unsupported type: ${r}`)}return i}function ne(t,e){if(typeof t=="boolean")return t?I.any():I.never();let r=Zh(t,e),i=t.type||t.enum!==void 0||t.const!==void 0;if(t.anyOf&&Array.isArray(t.anyOf)){let c=t.anyOf.map(d=>ne(d,e)),l=I.union(c);r=i?I.intersection(r,l):l}if(t.oneOf&&Array.isArray(t.oneOf)){let c=t.oneOf.map(d=>ne(d,e)),l=I.xor(c);r=i?I.intersection(r,l):l}if(t.allOf&&Array.isArray(t.allOf))if(t.allOf.length===0)r=i?r:I.any();else{let c=i?r:ne(t.allOf[0],e),l=i?0:1;for(let d=l;d<t.allOf.length;d++)c=I.intersection(c,ne(t.allOf[d],e));r=c}t.nullable===!0&&e.version==="openapi-3.0"&&(r=I.nullable(r)),t.readOnly===!0&&(r=I.readonly(r)),t.default!==void 0&&(r=r.default(t.default));let n={},o=["$id","id","$comment","$anchor","$vocabulary","$dynamicRef","$dynamicAnchor"];for(let c of o)c in t&&(n[c]=t[c]);let a=["contentEncoding","contentMediaType","contentSchema"];for(let c of a)c in t&&(n[c]=t[c]);for(let c of Object.keys(t))HI.has(c)||(n[c]=t[c]);return Object.keys(n).length>0&&e.registry.add(r,n),t.description&&(r=r.describe(t.description)),r}function Kh(t,e){if(typeof t=="boolean")return t?I.any():I.never();let r;try{r=JSON.parse(JSON.stringify(t))}catch{throw new Error("fromJSONSchema input is not valid JSON (possibly cyclic); use $defs/$ref for recursive schemas")}let i=VI(r,e?.defaultTarget),n=r.$defs||r.definitions||{},o={version:i,defs:n,refs:new Map,processing:new Set,rootSchema:r,registry:e?.registry??ee};return ne(r,o)}var $d={};Te($d,{bigint:()=>qI,boolean:()=>WI,date:()=>JI,number:()=>GI,string:()=>KI});function KI(t){return Jc(Bt,t)}function GI(t){return il(Vt,t)}function WI(t){return dl(Zt,t)}function qI(t){return ml(Kt,t)}function JI(t){return Sl(Wn,t)}q(ci());var tr=s.object({endpoint:s.string().min(1).max(256).optional(),apiKey:s.string().min(1).max(256).optional(),workspace:s.string().min(1).max(256).optional(),region:s.string().min(1).max(256).optional()}).strict(),Gh=s.enum(["SUM","COUNT","MAX","UNIQUE_COUNT","LATEST"]),Od=s.object({d:s.number().int().nonnegative(),w:s.number().int().positive(),c:s.number().nonnegative(),agg:Gh.default("COUNT").optional(),valueProperty:s.string().optional(),uniqueProperty:s.string().optional(),provenance:s.enum(["plan","manual","provider"]).optional(),warnAt:s.number().min(0).max(1).optional(),scope:tr.optional()}),YI=s.object({kind:s.literal("credential_validity")}),XI=s.object({kind:s.literal("track_only_bypass")}),QI=s.object({kind:s.literal("lifecycle_block"),blockOn:s.array(s.string()).default(["SUSPENDED","CANCELLED","INACTIVE"]),code:s.string().default("subscription_inactive")}),eS=s.object({kind:s.literal("scope"),requireExplicit:s.boolean().default(!0)}),tS=s.object({kind:s.literal("permission"),mode:s.enum(["grace","closed"]).optional()}),nS=s.object({kind:s.literal("geo_restriction"),allow:s.array(s.string().length(2).regex(/^[A-Z]{2}$/)).optional(),block:s.array(s.string().length(2).regex(/^[A-Z]{2}$/)).optional()}).refine(t=>t.allow!==void 0||t.block!==void 0,{message:"geo_restriction requires either `allow` or `block`"}),rS=s.enum(["fixed_window","sliding_window","token_bucket"]),iS=Od.extend({kind:s.literal("rate_limit"),m:s.enum(["e","t"]).default("e"),strategy:rS.default("fixed_window"),bucket_capacity:s.number().positive().optional(),refill_rate_per_second:s.number().positive().optional()}).superRefine((t,e)=>{t.strategy==="token_bucket"?(t.bucket_capacity===void 0&&e.addIssue({code:"custom",message:"token_bucket strategy requires `bucket_capacity` (positive number)",path:["bucket_capacity"]}),t.refill_rate_per_second===void 0&&e.addIssue({code:"custom",message:"token_bucket strategy requires `refill_rate_per_second` (positive number)",path:["refill_rate_per_second"]})):(t.bucket_capacity!==void 0&&e.addIssue({code:"custom",message:`bucket_capacity is only valid when strategy === 'token_bucket' (got '${t.strategy}')`,path:["bucket_capacity"]}),t.refill_rate_per_second!==void 0&&e.addIssue({code:"custom",message:`refill_rate_per_second is only valid when strategy === 'token_bucket' (got '${t.strategy}')`,path:["refill_rate_per_second"]}))}),oS=s.enum(["fixed_window","sliding_window"]),sS=Od.extend({kind:s.literal("quota"),ovr:s.enum(["BLOCK","ALLOW_AND_BILL"]),strategy:oS.default("fixed_window")}),aS=Od.extend({kind:s.literal("credit_balance"),ovr:s.enum(["BLOCK","ALLOW_AND_BILL"])}),cS=s.object({kind:s.literal("concurrency"),dimension:s.string().min(1).max(120),limit:s.number().int().positive(),lease_ttl_seconds:s.number().int().positive().max(3600).default(60)}),lS=s.object({kind:s.literal("resource_limit"),resource:s.string().min(1).max(120),limit:s.number().int().nonnegative()}),uS=s.object({kind:s.literal("reservation"),dimension:s.string().min(1).max(120),max_outstanding:s.number().int().positive(),hold_seconds:s.number().int().positive().max(86400)}),dS=s.enum(["plan","manual","provider"]),Td=s.object({maxInputTokens:s.number().int().positive().optional(),maxOutputTokens:s.number().int().positive().optional(),maxContextTokens:s.number().int().positive().optional(),maxPayloadBytes:s.number().int().positive().optional(),enforcement:s.enum(["enforce","track"]).default("enforce"),failMode:s.enum(["open","closed"]).default("open"),tokenCountSource:s.enum(["declared","estimated"]).optional(),scope:tr.optional()}).refine(Wh,{message:"capacity requires at least one ceiling (maxInputTokens / maxOutputTokens / maxContextTokens / maxPayloadBytes)"});function Wh(t){return t.maxInputTokens!==void 0||t.maxOutputTokens!==void 0||t.maxContextTokens!==void 0||t.maxPayloadBytes!==void 0}var pS=s.object({kind:s.literal("capacity"),maxInputTokens:s.number().int().positive().optional(),maxOutputTokens:s.number().int().positive().optional(),maxContextTokens:s.number().int().positive().optional(),maxPayloadBytes:s.number().int().positive().optional(),enforcement:s.enum(["enforce","track"]).default("enforce"),failMode:s.enum(["open","closed"]).default("open"),tokenCountSource:s.enum(["declared","estimated"]).optional(),scope:tr.optional(),provenance:dS.optional()}).refine(Wh,{message:"capacity requires at least one ceiling (maxInputTokens / maxOutputTokens / maxContextTokens / maxPayloadBytes)"}),Rd=s.discriminatedUnion("kind",[YI,XI,QI,eS,tS,nS,iS,sS,aS,lS,cS,uS,pS]);var nr=["customer_operation","control_plane","admin_internal","background_job","webhook","healthcheck","unclassified"],hN=new Set(nr);var ko=s.object({trafficClass:s.enum(nr),policySource:s.enum(["declared","inherited","defaulted","inferred"]),limitParticipation:s.object({profile:s.enum(["customer_usage","business_capacity","control_plane","admin_internal","platform_abuse_only","healthcheck","none"]),pools:s.array(s.string().min(1)).optional(),scopes:s.array(s.object({endpoint:s.string().optional(),apiKey:s.string().optional(),workspace:s.string().optional(),region:s.string().optional()}).passthrough()).optional(),metrics:s.array(s.string().min(1)).optional()}).passthrough(),customerBillingPolicy:s.object({customerBillable:s.boolean(),meterKey:s.string().min(1).optional(),chargeableOutcomes:s.enum(["success_only","success_and_partial","attempted","trusted_actual_usage_only"]),invoiceBehavior:s.string().optional()}).passthrough(),providerCostPolicy:s.object({providerCostTracked:s.boolean(),declaredProviderHint:s.string().optional(),declaredModelHint:s.string().optional()}).passthrough()}).passthrough();var $N=s.object({keyId:s.string().min(1),orgId:s.string().min(1),principal:s.object({subjectKind:s.enum(["member","service"]),memberId:s.string().optional(),serviceAccountId:s.string().optional(),keyId:s.string()}),businessId:s.string().min(1),compiledPlanId:s.string().min(1),entitlementHash:s.string().optional(),subjectKey:s.string().min(1),subscriptionId:s.string().min(1),currentPeriodId:s.string().optional(),currentPeriodStartMs:s.number().optional(),subscriberId:s.string().min(1),apiKeyId:s.string().nullable(),entitlementVersion:s.number(),status:s.enum(["active","revoked"]),expiresAt:s.number().nullable().optional(),subscriberStatus:s.enum(["ONBOARDING","ACTIVE","SUSPENDED"]),subscriptionStatus:s.string().min(1),environment:s.enum(["production","sandbox"]).optional(),environmentId:s.string().optional(),scopes:s.array(s.string()).readonly().optional(),entitlement:s.record(s.string(),s.unknown()).nullable().optional()});var qh=s.object({unit:s.enum(["requests","tokens","computeMs","dollars"]),window:s.enum(["second","minute","hour","day","week","month"]),capacity:s.number()}),mS=s.object({id:s.string().min(1),slug:s.string().optional(),transportMode:s.enum(["direct","tunnel"]),verificationRequired:s.boolean().optional(),originUrl:s.string().optional(),originHostname:s.string().optional(),accessCredentialRef:s.string().optional(),policyVersion:s.string().optional()}),ON=s.object({id:s.string().min(1),origin:s.string().min(1),sandboxOrigin:s.string().nullable().optional(),authHeader:s.string().optional(),pricing:s.object({requests:s.number().optional(),tokens:s.number().optional(),computeMs:s.number().optional(),per_request:s.number().optional()}).catchall(s.number().optional()).optional(),metering:s.object({tokens:s.object({}).optional(),computeMs:s.object({}).optional(),billOn4xx:s.boolean().optional()}).optional(),tenantLimits:s.array(qh).readonly().optional(),userLimits:s.array(qh).readonly().optional(),environmentId:s.string().optional(),contextTokenSecret:s.string().nullable().optional(),timeoutMs:s.number().positive().optional(),idleTimeoutMs:s.number().positive().optional(),backends:s.array(mS).optional(),defaultBackendId:s.string().optional(),verificationRequired:s.boolean().optional(),allowedOrigins:s.array(s.string()).optional(),hasPublicRoutes:s.boolean().optional(),publicRoutesCompiledPlanId:s.string().min(1).optional()});var fS=s.object({perRequestMinUnitsByDim:s.record(s.string(),s.number()).optional(),creditPoolMicros:s.number().optional(),perDimUnitCostMicros:s.record(s.string(),s.number()).optional()}),gS=s.object({source:s.enum(["fixed","provider_catalog"]),meterKey:s.string(),selector:s.string().optional(),measures:s.array(s.string()),catalog:s.string().optional(),pricePolicy:s.string().optional(),markupPercent:s.number().optional(),fixedRatesMicros:s.record(s.string(),s.record(s.string(),s.number())).optional()}),hS=s.object({key:s.string(),display:s.string(),unit:s.string().optional(),aggregation:s.enum(["SUM","COUNT","MAX","UNIQUE_COUNT","LATEST"]),window:s.enum(["minute","hour","day","month","billing_period"]),enforcementType:s.string()}),bS=s.object({routeId:s.string().min(1),method:s.string(),path:s.string(),meters:s.array(s.string()).optional(),usagePolicy:ko.optional(),policyResolutionMode:s.literal("policy").optional()}),TN=s.object({v:s.number(),sub:s.string(),compiledPlanId:s.string().min(1),planType:s.string(),ts:s.number(),constraints:s.array(Rd),cv:s.number(),policyResolutionMode:s.literal("policy").optional(),dm:s.record(s.string(),s.number()),dmv:s.number().optional(),floor:fS.nullable().optional(),displayDims:s.array(s.number()).optional(),meterSemantics:s.record(s.string(),hS).optional(),rp:s.record(s.string(),gS).optional(),fr:s.array(bS).optional(),sig:s.string().min(1),sigKid:s.string().optional(),environmentId:s.string().optional()}).passthrough();var RN=s.object({subscriptionId:s.string().min(1),activePeriodId:s.string().optional(),activeCompiledPlanId:s.string().min(1),activeEntitlementHash:s.string().optional(),enforcementMode:s.enum(["STRICT","GRACE","TRACK_ONLY"]),postStreamLockouts:s.array(s.object({code:s.literal("post_stream_overspend"),reason:s.literal("usage_exhausted"),constraintKey:s.string().min(1),cycleId:s.string().min(1),dimension:s.string().min(1),currentCapacity:s.number().nonnegative(),observedUsage:s.number().nonnegative(),lockedAt:s.string().min(1),expiresAt:s.string().min(1)})).optional(),gracePeriodEndsAt:s.string().optional(),trialEndsAt:s.string().optional(),scheduledTransition:s.object({kind:s.string(),timing:s.string(),scheduledFor:s.string(),toCompiledPlanId:s.string().nullable()}).optional(),creditPool:s.object({periodStartMs:s.number(),periodEndMs:s.number(),grantedCents:s.number(),policy:s.enum(["block","allow"]),epoch:s.number()}).optional(),dedicatedShard:s.enum(["ACTIVE","DRAINING"]).optional(),memberAuthz:s.record(s.string(),s.object({permissions:s.array(s.string()),roles:s.array(s.string())})).optional(),memberAuthzComputedAt:s.number().optional(),generation:s.number(),updatedAt:s.string()});var vS=["DRAFT","ACTIVE"],PN=s.enum(vS),_S=["ONBOARDING","ACTIVE","SUSPENDED"],Jh=s.enum(_S),yS=["ACTIVE","REVOKED"],NN=s.enum(yS),kS=["BLOCK","ALLOW_AND_BILL"],Yh=s.enum(kS),xS=["ACTIVE","ARCHIVED"],DN=s.enum(xS),IS=["ACTIVE","PHASING_OUT","SUPERSEDED","ARCHIVED"],UN=s.enum(IS);var Xh=["input","output","total","cached_read_input","cache_creation_input","context","max_output","estimated_output","actual_output","streaming_output"],xo=[{id:"requests",label:"API requests",description:"Count every call \u2014 the right default for most APIs.",meters:[{key:"requests",display:"Requests",unit:"request"}]},{id:"ai-tokens",label:"AI tokens",description:"LLM-style token metering alongside calls. The gateway can estimate tokens per request and settle actuals from @farthershore/backend reports.",meters:[{key:"requests",display:"Requests",unit:"request"},{key:"tokens_used",display:"Tokens Used",unit:"token"}]},{id:"credits",label:"Credits",description:"Price work in abstract credits (e.g. one image = 5 credits). Report each call's dynamic credit cost through @farthershore/backend.",meters:[{key:"requests",display:"Requests",unit:"request"},{key:"credits",display:"Credits",unit:"credit"}]},{id:"spend",label:"Metered spend",description:"Pass-through spend in cents (OpenRouter-style) reported through @farthershore/backend. Pairs with prepaid credit wallets.",meters:[{key:"requests",display:"Requests",unit:"request"},{key:"dollars",display:"Spend",unit:"cent"}]},{id:"compute",label:"Compute time",description:"Bill milliseconds of compute, settled from @farthershore/backend reports.",meters:[{key:"requests",display:"Requests",unit:"request"},{key:"compute_ms",display:"Compute Time",unit:"ms"}]}];function Qh(t){let e=t.trim().toLowerCase();return xo.find(r=>r.id===e)}function eb(){return xo.map(t=>t.id)}var SS="FS_RUNTIME_TOKEN";var ES={payload:"x-fs-metering",signature:"x-fs-metering-sig",token:"x-fs-metering-token"};var BN={environmentVariable:SS,presentation:ES.token,storage:"sha256-hash-only"};var tb={missingSignature:"missing_signature",malformedSignature:"malformed_signature",unknownKeyId:"unknown_key_id",jwksUnavailable:"jwks_unavailable",badSignature:"bad_signature",bodyHashMismatch:"body_hash_mismatch",routeMismatch:"route_mismatch",clockSkew:"clock_skew",expiredSignature:"expired_signature",replayedNonce:"replayed_nonce",bodyTooLarge:"body_too_large",environmentMismatch:"environment_mismatch",missingToken:"missing_token",invalidToken:"invalid_token",contextUnverified:"context_unverified",memberSubjectRequired:"member_subject_required",serviceSubjectRequired:"service_subject_required",surfaceNotAllowed:"surface_not_allowed"};var HN=10*1024*1024;var wS=["CHECKOUT_COMPLETED","PLAN_CHANGED","CANCELLED","RESTORED","UNSCHEDULED_CANCELLATION","PRICE_ROLLOVER","PAUSED","RESUMED","PLAN_CHANGE_SCHEDULED","PLAN_CHANGE_ABORTED","SCHEDULE_CREATED","SCHEDULE_UPDATED","SCHEDULE_RELEASED","SCHEDULE_COMPLETED","SCHEDULE_ABORTED","CANCEL_SCHEDULED","PAYMENT_FAILED","PAYMENT_RECOVERED","PAYMENT_RECOVERED_FROM_SUSPENDED","PAYMENT_ACTION_REQUIRED","RECURRING_PAYMENT","REFUND_PROCESSED","DISPUTE_OPENED","DISPUTE_FUNDS_WITHDRAWN","DISPUTE_CLOSED","DISPUTE_FUNDS_REINSTATED","DISPUTE_CREDIT_REVOKED","DISPUTE_CREDIT_REINSTATED","MIN_SPEND_TRUE_UP"],KN=s.enum(wS);var Ad=["BRANCH_PREFIX","PULL_REQUEST","DISABLED"];var $S=s.object({d:s.number(),w:s.number(),capacity:s.number(),remaining:s.number(),windowStart:s.number(),windowEnd:s.number()}),OS=s.record(s.string(),$S),TS=s.object({allocations:s.array(s.number()),expiresAt:s.number()}),RS=s.record(s.string(),TS),AS=s.record(s.string(),s.bigint()),eD=s.object({subscriptionId:s.string(),handoffToken:s.string(),targetShardId:s.string(),policyVersion:s.number(),entitlementVersion:s.number().nullable(),windowStates:OS,activeLeases:RS,totalsByDimension:AS.optional(),billingCycleId:s.string().nullable().optional(),billingCycleStartMs:s.number().optional()});var nb=new Set(["read","export","download"]);var rb={org:["read","create","update","delete","manage_settings","manage_billing"],business:["read","create","update","delete","publish","archive"],plan:["read","create","update","delete","promote_version"],makertoken:["read","create","rotate","revoke"],webhook:["read","configure","rotate_secret"],persona:["read","issue","rotate","revoke"],migration:["create"],auth_provider_connection:["read","create","update","delete"],subscription:["read","cancel","restore","change_plan"],usage:["read","export"],invoice:["read","pay","download"],billing:["read","manage_subscription","refund","change_payment_method"],team:["read","invite","remove_member","change_role","manage_rbac","assign_product_role"],apikey:["read","create","rotate","revoke"],audit_log:["read","export"]},oD=Object.keys(rb),sD=Object.fromEntries(Object.entries(rb).map(([t,e])=>[t,{read:e.filter(r=>nb.has(r)),write:e.filter(r=>!nb.has(r))}]));var CS=new Set(["GET","HEAD","OPTIONS"]);function ib(t,e){return CS.has(e.toUpperCase())?`${t}:read`:`${t}:write`}var PS={gatewayProjectRead:"gateway:project:read",gatewayResourceWrite:"gateway:resource:write",usageWrite:"usage:write",authzDeniedWrite:"authz-denied:write",reservationAuthorize:"reservation:authorize",reservationFinalize:"reservation:finalize",internalCronRun:"internal:cron:run",personaManage:"persona:manage"},dD=Object.values(PS);var NS=["managed_frontend","custom_frontend","embedded_sdk","public_api","cli","agent","webhook","admin","internal"],sb=s.enum(NS),ob=s.string().min(1).max(128),DS=s.object({d:s.number().int().nonnegative(),w:s.number().int().positive(),rem:s.number(),cap:s.number()}).strict(),ab=s.object({v:s.literal(1),entV:s.number().int().nonnegative().optional(),entHash:ob.optional(),featureGrant:s.boolean().optional(),gates:s.array(ob).max(16).optional(),limits:s.array(DS).max(16).optional()}).strict();var _D=s.object({requestId:s.string(),eventId:s.string(),tenantId:s.string(),slug:s.string(),subscriptionId:s.string(),subscriberId:s.string(),apiKeyId:s.string().nullable(),compiledPlanId:s.string(),subscriberStatus:Jh,subscriptionStatus:s.string(),businessId:s.string(),statusCode:s.number(),path:s.string(),latencyMs:s.number(),rawDimsUnits:s.record(s.string(),s.number()),matchedRouteMeters:s.array(s.string().min(1)).optional(),servedRouteScopes:s.array(s.string().min(1)).optional(),meterSettlements:s.array(s.object({meterId:s.string(),meterType:s.enum(["exact_pre_request","estimated_then_settled","postpaid","strict_concurrency"]),reserved:s.number(),actual:s.number(),delta:s.number(),dimension:s.number().int().nonnegative(),leaseId:s.string()})).optional(),reportingAttested:s.boolean(),customerBillable:s.boolean(),platformBillable:s.boolean().optional(),postStreamPending:s.boolean().optional(),measureContext:s.record(s.string(),s.unknown()).optional(),creditUnitsConsumed:s.record(s.string(),s.number()).optional(),timestamp:s.number(),environmentId:s.string().nullable().optional(),orgId:s.string().optional(),principal:s.object({subjectKind:s.enum(["member","service"]),memberId:s.string().trim().min(1).optional(),serviceAccountId:s.string().trim().min(1).optional(),keyId:s.string().trim().min(1).optional()}).optional(),subjectKey:s.string().optional(),overageBehavior:Yh.optional(),environment:s.enum(["production","sandbox"]).optional(),surface:sb.optional(),actionId:s.string().min(1).max(128).optional(),resourceMutationId:s.string().min(1).max(200).optional(),subjectType:s.string().min(1).max(128).optional(),subjectId:s.string().min(1).max(256).optional(),decision:ab.optional(),decisionId:s.string().min(1).max(256).optional(),denyClass:s.enum(["quota","rate","concurrency","capacity","spend","adaptive"]).optional(),blockingConstraintId:s.string().min(1).max(256).optional(),providerSettlements:s.array(s.object({meterId:s.string(),providerReported:s.number(),reconciled:s.number()})).optional(),usagePolicyId:s.string().min(1).max(256).optional(),policySource:s.enum(["declared","inherited","defaulted","inferred"]).optional(),trafficClass:s.enum(nr).optional(),limitProfile:s.enum(["customer_usage","business_capacity","control_plane","admin_internal","platform_abuse_only","healthcheck","none"]).optional(),leaseId:s.string(),transactionId:s.string(),gatewayMetadata:s.object({shardId:s.string(),policyVersion:s.number().int().nonnegative().optional(),artifactVersion:s.number().int().nonnegative().default(0),artifactHash:s.string().regex(/^sha256_[a-f0-9]{64}$/).optional(),leaseTelemetry:s.object({consumeRequests:s.number().int().nonnegative(),localLeaseHits:s.number().int().nonnegative(),doAllocationAttempts:s.number().int().nonnegative(),doAllocationGrants:s.number().int().nonnegative(),doAllocationDenials:s.number().int().nonnegative(),doUnavailable:s.number().int().nonnegative(),doCircuitOpen:s.number().int().nonnegative(),leaseRefreshSingleflightJoins:s.number().int().nonnegative(),leaseRefreshSingleflightJoinRate:s.number().min(0).max(1),expiredLeasesReaped:s.number().int().nonnegative(),expiredLeaseReclaimedGrant:s.array(s.number().nonnegative()),reconcileRequests:s.number().int().nonnegative(),reconcilePositiveDeltas:s.number().int().nonnegative(),reconcileNoLocalLease:s.number().int().nonnegative(),doReconcileAttempts:s.number().int().nonnegative(),doReconcileFailures:s.number().int().nonnegative(),unspentLeaseRemainderReturns:s.number().int().nonnegative(),unspentLeaseRemainderReturnFailures:s.number().int().nonnegative(),unspentLeaseRemainderReturnedGrant:s.array(s.number().nonnegative()),maxObservedPositiveReconcileDelta:s.array(s.number().nonnegative()),requestToDoRatio:s.number().nonnegative(),localLeaseHitRate:s.number().min(0).max(1),localSpendRate:s.number().min(0).max(1),maxObservedActiveLeases:s.number().int().nonnegative(),maxObservedOutstandingGrant:s.array(s.number().nonnegative()),maxObservedOutstandingGrantRatio:s.number().nonnegative(),maxObservedEmergencyReserveGrant:s.array(s.number().nonnegative()),maxObservedEmergencyReserveGrantRatio:s.number().nonnegative(),maxObservedLeaseGrant:s.array(s.number().nonnegative()),maxObservedLeaseGrantRatio:s.number().nonnegative(),maxObservedLeaseTtlMs:s.number().int().nonnegative()}).optional(),artifactCacheTelemetry:s.object({reads:s.number().int().nonnegative(),l0FreshHits:s.number().int().nonnegative(),l0Misses:s.number().int().nonnegative(),l0StaleServes:s.number().int().nonnegative(),l0StaleIfErrorServes:s.number().int().nonnegative(),l0BlockingRefreshes:s.number().int().nonnegative(),l0SingleflightJoins:s.number().int().nonnegative(),l0EarlyRefreshes:s.number().int().nonnegative(),l1Hits:s.number().int().nonnegative(),l1Misses:s.number().int().nonnegative(),l1Rejected:s.number().int().nonnegative(),l1WriteFailures:s.number().int().nonnegative(),kvHits:s.number().int().nonnegative(),kvMisses:s.number().int().nonnegative(),kvTimeouts:s.number().int().nonnegative(),kvCircuitOpenReads:s.number().int().nonnegative(),resultHits:s.number().int().nonnegative(),resultMisses:s.number().int().nonnegative(),resultDenied:s.number().int().nonnegative(),resultUnavailable:s.number().int().nonnegative(),backgroundRefreshErrors:s.number().int().nonnegative(),l0HitRate:s.number().min(0).max(1),l0SingleflightJoinRate:s.number().min(0).max(1),l0EarlyRefreshRate:s.number().min(0).max(1),l1HitRate:s.number().min(0).max(1),kvHitRate:s.number().min(0).max(1),resultHitRate:s.number().min(0).max(1),staleServeRate:s.number().min(0).max(1)}).optional(),gatewayVersion:s.string()}).passthrough()}).passthrough();var US=s.object({path:s.string(),code:s.string(),message:s.string()}),xD=s.object({reason:s.literal("schema_validation_failed"),receivedAt:s.string(),rawPayload:s.unknown(),issues:s.array(US),consumerVersion:s.string().optional(),originalMessageId:s.string().optional()});var cb=[{name:"subscription.created",webhook:!0,description:"A subscriber subscription was created."},{name:"subscription.updated",webhook:!0,description:"A subscriber subscription changed (plan, status, trial)."},{name:"subscription.canceled",webhook:!0,description:"A subscriber subscription was canceled."},{name:"payment.succeeded",webhook:!0,description:"A Stripe payment succeeded for a subscription."},{name:"payment.failed",webhook:!0,description:"A Stripe payment failed for a subscription."},{name:"rate_limit.exceeded",webhook:!0,description:"The gateway denied a request for exceeding a rate limit."},{name:"entitlement.changed",webhook:!0,description:"A compiled entitlement/plan was (re)published."},{name:"usage.threshold_reached",webhook:!0,description:"A metered-usage threshold was crossed."},{name:"change_set.created",webhook:!1,description:"A governed Evolution ChangeSet was proposed (draft created)."},{name:"change_set.approved",webhook:!1,description:"A governed Evolution ChangeSet was approved."},{name:"change_set.applied",webhook:!1,description:"A governed Evolution ChangeSet was applied to live state."},{name:"change_set.rolled_back",webhook:!1,description:"A governed Evolution ChangeSet was rolled back."},{name:"change_set.cancelled",webhook:!1,description:"A governed Evolution ChangeSet was cancelled."},{name:"billing.event_recorded",webhook:!1,description:"A BillingEvent row was recorded; the fact references it by id (the authoritative billing row is unchanged \u2014 exact-accounting invariant)."},{name:"authz.decision",webhook:!1,description:"An authorization decision (ALLOW/DENY) mirrored from the audit log onto the spine; AuditLog stays authoritative."},{name:"repo.changed",webhook:!1,description:"A default-branch push to the business's repo touched paths at least one enabled automation rule watches (payload: branch, headSha, bounded changed-path list). Emitted pre-filtered \u2014 never on every push \u2014 so path-triggered automations (e.g. legal/** changed \u2192 notify subscribers) can fire deterministically."},{name:"automation.rule_fired",webhook:!1,description:"An enabled AutomationRule matched a spine fact (trigger + all conditions held) and its actions were scheduled."},{name:"automation.action_succeeded",webhook:!1,description:"An AutomationRule action ran to success."},{name:"automation.action_failed",webhook:!1,description:"An AutomationRule action failed (will retry per the queue)."},{name:"automation.action_denied",webhook:!1,description:"An AutomationRule action was DENIED \u2014 the automation actor lacked the action's native permission (automation is a first-class authz subject, never a bypass). Recorded + audited; the action did not run."},{name:"automation.notification",webhook:!1,description:"A notification recorded by an AutomationRule `create_notification` action \u2014 a spine fact other surfaces (portal/admin) read; no separate notification runtime."},{name:"access_request.created",webhook:!1,description:"A subscriber member requested a missing permission (AccessRequest row created). Internal \u2014 the Communication layer notifies the subscriber's admins (who can grant it)."},{name:"access_request.resolved",webhook:!1,description:"A pending AccessRequest was resolved (approved or denied) by an owner/admin. Internal \u2014 notifies the subscriber's admins."},{name:"build.failed",webhook:!1,description:"A build for the business (frontend/portal or Business-SDK) failed and did not go live. Internal \u2014 the Communication layer notifies the org's members (opt-out-able, category: deployments)."},{name:"product.published",webhook:!1,description:"A business went live for the first time (DRAFT\u2192ACTIVE first publish). Internal \u2014 notifies the org's members (category: deployments)."},{name:"workflow.failed",webhook:!1,description:"A platform workflow (config apply / Stripe sync / subscription transition) reached a terminal FAILED state. Internal \u2014 notifies the org's admins (category: deployments)."},{name:"pr.review_posted",webhook:!1,description:"The platform posted (or updated) its Business-as-Code impact report on a managed-repo pull request. Internal \u2014 emails the org's members the review synopsis + a link to the PR (category: deployments)."}],zS=cb.map(t=>t.name),lb=cb.filter(t=>t.webhook).map(t=>t.name),ED=s.enum(zS);var ub=["subscription.created","subscription.updated","subscription.canceled","payment.succeeded","payment.failed","rate_limit.exceeded","entitlement.changed","usage.threshold_reached"],Cd=ub;{let t=new Set(lb),e=new Set(ub),r=[...t].filter(n=>!e.has(n)),i=[...e].filter(n=>!t.has(n));if(r.length>0||i.length>0)throw new Error(`[webhooks/events] WEBHOOK_EVENT_NAMES drifted from the events catalog. Missing from order tuple: [${r.join(", ")}]; extra in order tuple: [${i.join(", ")}]. Reconcile ../events/catalog.ts (webhook: true entries) with WEBHOOK_EVENT_ORDER in this file.`)}var Gt=s.enum(Cd);var ke=s.enum(["immediate","period_end"]),Wt=s.object({default:ke.default("period_end"),when:s.object({price_increase:ke.optional(),price_decrease:ke.optional(),route_grant_added:ke.optional(),route_grant_removed:ke.optional(),limit_increased:ke.optional(),limit_reduced:ke.optional(),credit_increased:ke.optional(),credit_reduced:ke.optional(),rating_changed:ke.optional()}).strict().default({price_increase:"period_end",price_decrease:"immediate",route_grant_added:"immediate",route_grant_removed:"period_end",limit_increased:"immediate",limit_reduced:"period_end",credit_increased:"immediate",credit_reduced:"period_end",rating_changed:"period_end"}),allowImmediatePriceIncrease:s.boolean().default(!1),allowImmediateEntitlementReduction:s.boolean().default(!1)}).strict().superRefine((t,e)=>{(t.when.price_increase??t.default)==="immediate"&&!t.allowImmediatePriceIncrease&&e.addIssue({code:"custom",path:["when","price_increase"],message:"price_increase cannot switch immediately without allowImmediatePriceIncrease: true"});for(let r of["route_grant_removed","limit_reduced","credit_reduced"])(t.when[r]??t.default)==="immediate"&&!t.allowImmediateEntitlementReduction&&e.addIssue({code:"custom",path:["when",r],message:`${r} cannot switch immediately without allowImmediateEntitlementReduction: true`})}),jS=Wt.parse({});var LS=s.object({kind:s.literal("credit"),amount_cents:s.number().int().nonnegative(),recurs:s.boolean().optional(),expires_after_days:s.number().int().positive().optional(),label:s.string().min(1).max(120).optional()}),MS=s.object({kind:s.literal("top_up"),sku:s.string().min(1).max(120),label:s.string().min(1).max(200),price_cents:s.number().int().positive(),credit_cents:s.number().int().positive()}),Ke=s.discriminatedUnion("kind",[LS,MS]);function db(t){return t.kind==="credit"&&t.recurs===!0&&t.label===void 0}function pb(t){return t.kind==="credit"&&t.recurs!==!0&&t.label===void 0}function mb(t,e,r=["grants"]){if(!t)return;let i=0,n=0;for(let o of t)db(o)?i+=1:pb(o)&&(n+=1);i>1&&e.addIssue({code:"custom",message:"At most one recurring `credit` grant (recurs:true, no label) is allowed \u2014 recurring credit is a single canonical entry.",path:r}),n>1&&e.addIssue({code:"custom",message:"At most one one-time `credit` grant (recurs:false, no label) is allowed \u2014 one-time credit is a single canonical entry.",path:r})}function fb(t){return t.grants&&t.grants.length>0?[...t.grants]:[]}function rr(t){return fb(t).find(db)?.amount_cents??0}function qt(t){return fb(t).find(pb)?.amount_cents??0}var FS=s.object({percent:s.number().int().min(0).max(100)}),BS=s.object({threshold_cents:s.number().int().nonnegative(),refill_cents:s.number().int().positive()}),Ge=s.object({rollover:FS.optional(),auto_recharge:BS.optional()});var gb=s.enum(["linear","active_count","event_count"]);var HS=s.object({up_to:s.number().int().positive().nullable(),price_per_unit_micros:s.number().int().nonnegative()}),VS=s.object({strategy:s.enum(["graduated","volume"]),tiers:s.array(HS).min(1).max(20)}),We=s.object({dimension:s.string().min(1).max(64).regex(/^[a-z0-9_]+$/,"Meter dimension must be lowercase alphanumeric with underscores"),kind:gb.default("linear"),price_per_unit_micros:s.number().int().nonnegative().default(0),tiered:VS.optional(),included_units:s.number().int().positive().optional()}).superRefine((t,e)=>{if(t.tiered&&t.price_per_unit_micros>0&&e.addIssue({code:"custom",message:"`tiered` is mutually exclusive with a non-zero `price_per_unit_micros` \u2014 drop one",path:["tiered"]}),t.included_units!==void 0&&t.tiered&&e.addIssue({code:"custom",message:"`included_units` is mutually exclusive with `tiered` \u2014 a tiered schedule already expresses the included allotment as a zero-priced first tier",path:["included_units"]}),t.tiered){let r=0,i=!1;for(let n=0;n<t.tiered.tiers.length;n++){let o=t.tiered.tiers[n];if(i){e.addIssue({code:"custom",message:"Open-ended tier (`up_to: null`) must be the final tier",path:["tiered","tiers",n,"up_to"]});break}if(o.up_to===null){i=!0;continue}o.up_to<=r&&e.addIssue({code:"custom",message:`Tier upper bounds must be strictly ascending (tier ${n} = ${o.up_to} <= previous ${r})`,path:["tiered","tiers",n,"up_to"]}),r=o.up_to}i||e.addIssue({code:"custom",message:"The final tier of a `tiered` schedule must be open-ended (`up_to: null`)",path:["tiered","tiers",t.tiered.tiers.length-1,"up_to"]})}}),Jt=s.enum(["month","year"]),ZS=s.object({meters:s.array(We).default([]),recurring_fee_cents:s.number().int().nonnegative().default(0),billing_interval:Jt.default("month"),grants:s.array(Ke).max(40).default([]),creditPolicy:Ge.optional(),trial_days:s.number().int().nonnegative().default(0),max_monthly_spend_cents:s.number().int().nonnegative().optional()});var KS=s.string().min(1),GS=s.object({type:s.literal("named"),name:s.enum(["second","minute","hour","day","week","month"])}),WS=s.object({type:s.literal("custom"),seconds:s.number().int().positive(),label:s.string().optional()}),qS=s.discriminatedUnion("type",[GS,WS]),ir=s.object({dimension:KS,window:qS,capacity:s.number().nonnegative(),enforcement:s.enum(["enforce","track"]).optional(),warnAt:s.number().min(0).max(1).optional(),scope:tr.optional(),acknowledgeUnreachable:s.boolean().optional()}),BD=s.array(ir).max(20);function JS(t){let e=/^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/.exec(t);if(!e)return!1;let r=Number(e[1]),i=Number(e[2]);return r>255||i>255||Number(e[3])>255||Number(e[4])>255?!1:r===0||r===127||r===10||r===172&&i>=16&&i<=31||r===192&&i===168||r===169&&i===254||r===100&&i>=64&&i<=127}function hb(t){let e=t.trim().toLowerCase().replace(/^\[|\]$/g,"");return e.endsWith(".")&&(e=e.slice(0,-1)),e==="localhost"||e.endsWith(".localhost")||e.startsWith("::ffff:")||e==="::"||e==="::1"||e.includes(":")&&(e.startsWith("fc")||e.startsWith("fd")||e.startsWith("fe80"))?!0:JS(e)}var Nd=["GET","HEAD","POST","PUT","PATCH","DELETE"],or=1048576,vb=1048576;function _b(t){return new TextEncoder().encode(t).byteLength}function YS(t){try{let e=JSON.stringify(t);return typeof e=="string"?_b(e):null}catch{return null}}var Dd=s.string().min(1).max(64).regex(/^[a-z][a-z0-9_-]*$/,"Integration id must be lowercase alphanumeric with hyphens/underscores"),Ud=s.string().min(1).max(128).regex(/^[!#$%&'*+.^_`|~0-9A-Za-z-]+$/,"Header name must be a valid HTTP token").refine(t=>t!=="*","Header wildcard is not allowed").transform(t=>t.toLowerCase()),yb=new Set(["connection","keep-alive","proxy-connection","te","trailer","transfer-encoding","upgrade","content-length","content-encoding"]),kb=Ud.refine(t=>!yb.has(t)&&!["host","cookie","set-cookie","authorization","proxy-authorization"].includes(t),"Browser request header is not safe"),XS=Ud.refine(t=>!yb.has(t)&&!["host","cookie","set-cookie"].includes(t),"Injection header is not safe"),QS=new Set(["cache-control","etag","last-modified","link","retry-after","x-request-id","x-ratelimit-limit","x-ratelimit-remaining","x-ratelimit-reset"]),eE=Ud.refine(t=>QS.has(t),"Response header is not safe to project"),tE=s.string().max(16384).refine(t=>!/[\r\n]/.test(t),"Header values cannot contain CR/LF"),xb=s.string().min(3).max(128).regex(/^[a-z0-9!#$&^_.+-]+\/[a-z0-9!#$&^_.+-]+$/i,"Content type must be an exact media type").refine(t=>!t.includes("*"),"Content type wildcards are not allowed").transform(t=>t.toLowerCase());function Ib(t){return[...new Set(t)].sort((e,r)=>e<r?-1:e>r?1:0)}function Yt(t,e,r=1,i=!1){return s.array(t).min(r).max(e).superRefine((n,o)=>{if(!i)return;let a=new Set;for(let[c,l]of n.entries())a.has(l)&&o.addIssue({code:"custom",path:[c],message:`duplicate value "${l}" is not allowed`}),a.add(l)}).transform(n=>Ib(n))}var nE=Yt(kb,20,0,!0),Sb=s.string().min(1).max(128).regex(/^[A-Za-z0-9_.~-]+$/,"Query parameter name is invalid"),rE=Yt(Sb,30,0,!0);function iE(){return s.record(s.string(),s.string().max(16384)).superRefine((t,e)=>{let r=Object.keys(t);r.length>30&&e.addIssue({code:"custom",message:"Too many query parameters"});for(let i of r)Sb.safeParse(i).success||e.addIssue({code:"custom",path:[i],message:"Browser query parameter is invalid"})})}function oE(){return s.record(s.string(),tE).superRefine((t,e)=>{Object.keys(t).length>20&&e.addIssue({code:"custom",message:"Too many request headers"});let i=new Set;for(let[n,o]of Object.entries(t)){let a=kb.safeParse(n);if(!a.success){e.addIssue({code:"custom",path:[n],message:"Browser request header is not safe"});continue}i.has(a.data)&&e.addIssue({code:"custom",path:[n],message:`duplicate request header "${n}" is not allowed`}),i.add(a.data),typeof o!="string"&&e.addIssue({code:"custom",path:[n],message:"Request header value must be a string"})}}).transform(t=>Object.fromEntries(Object.entries(t).map(([e,r])=>[e.toLowerCase(),r])))}function sE(t){return t.split("/").some(e=>{let r=e.replace(/%2e/gi,".");return r==="."||r===".."})}var zd=s.string().min(1).max(500).refine(t=>t.startsWith("/")&&!t.startsWith("//")&&!t.includes("?")&&!t.includes("#")&&!t.includes("\\")&&!t.includes("*")&&!sE(t),"Request path must be an exact relative path"),Eb=s.string().max(2048).superRefine((t,e)=>{let r;try{r=new URL(t)}catch{e.addIssue({code:"custom",message:"Upstream must be a valid HTTPS origin"});return}r.protocol!=="https:"&&e.addIssue({code:"custom",message:"Upstream must use HTTPS"}),(r.username||r.password)&&e.addIssue({code:"custom",message:"Upstream cannot include userinfo"}),r.port&&r.port!=="443"&&e.addIssue({code:"custom",message:"Upstream must use the default HTTPS port"}),(r.pathname!=="/"||r.search||r.hash)&&e.addIssue({code:"custom",message:"Upstream must be an origin without a path, query, or fragment"}),r.hostname.includes("*")&&e.addIssue({code:"custom",message:"Upstream wildcard hosts are not allowed"}),hb(r.hostname)&&e.addIssue({code:"custom",message:"Upstream host is private or loopback"})}).transform(t=>new URL(t).origin),aE=s.discriminatedUnion("kind",[s.object({kind:s.literal("none")}).strict(),s.object({kind:s.literal("json"),maxBytes:s.number().int().positive().max(or)}).strict(),s.object({kind:s.literal("text"),maxBytes:s.number().int().positive().max(or),contentTypes:Yt(xb,10)}).strict()]),cE=s.string().min(1).max(500).regex(/^(?:\/(?:[^~/]|~[01])*)+$/,"Response field must be an RFC 6901 JSON pointer"),lE=s.object({kind:s.literal("json"),contentTypes:Yt(xb,10),maxBytes:s.number().int().positive().max(vb),jsonPointers:Yt(cE,100),responseHeaders:Yt(eE,20,0,!0).default([])}).strict(),bb=s.string().min(1).max(128).regex(/^[A-Z][A-Z0-9_]*$/,"secretRef must be UPPER_SNAKE"),uE=s.discriminatedUnion("location",[s.object({secretRef:bb,location:s.literal("header"),name:XS,template:s.enum(["{value}","Bearer {value}"])}).strict(),s.object({secretRef:bb,location:s.literal("query"),name:s.string().min(1).max(128).regex(/^[A-Za-z0-9_.~-]+$/,"Query parameter name is invalid")}).strict()]),dE=s.object({method:s.enum(Nd),path:zd,headers:nE.default([]),query:rE.default([]),body:aE}).strict(),pE=s.array(dE).min(1).max(100).superRefine((t,e)=>{let r=new Set;for(let[i,n]of t.entries()){let o=`${n.method} ${n.path}`;r.has(o)&&e.addIssue({code:"custom",path:[i],message:`duplicate frontend integration operation "${o}"`}),r.add(o)}}).transform(t=>[...t].sort((e,r)=>{let i=`${e.method} ${e.path}`,n=`${r.method} ${r.path}`;return i<n?-1:i>n?1:0})),wb=s.object({id:Dd,upstream:Eb,request:s.object({operations:pE}).strict(),injection:uE,response:lE}).strict().superRefine((t,e)=>{if(t.injection.location==="header")for(let[r,i]of t.request.operations.entries())i.headers.includes(t.injection.name)&&e.addIssue({code:"custom",path:["request","operations",r,"headers"],message:`browser request header collides with injected header "${t.injection.name}"`})}),$b=wb;function Ob(t){if(t&&typeof t=="object"&&!Object.isFrozen(t)){Object.freeze(t);for(let e of Object.values(t))Ob(e)}return t}var mE=wb.transform(t=>Ob(t)),jd=s.array($b).max(200).superRefine((t,e)=>{let r=new Set;for(let[i,n]of t.entries())r.has(n.id)&&e.addIssue({code:"custom",path:[i,"id"],message:`duplicate frontend integration id "${n.id}"`}),r.add(n.id)}).transform(t=>[...t].sort((e,r)=>e.id<r.id?-1:e.id>r.id?1:0)),Ld=s.array(Dd).max(200).transform(t=>Ib(t)).optional(),Pd=s.lazy(()=>s.union([s.null(),s.boolean(),s.number().finite(),s.string().max(65536),s.array(Pd).max(100),s.record(s.string().min(1).max(128),Pd).superRefine((t,e)=>{Object.keys(t).length>100&&e.addIssue({code:"custom",message:"JSON object has too many keys"})})])),fE=s.discriminatedUnion("kind",[s.object({kind:s.literal("json"),value:Pd}).strict(),s.object({kind:s.literal("text"),value:s.string().max(or)}).strict()]).superRefine((t,e)=>{let r=t.kind==="json"?YS(t.value):_b(t.value);(r===null||r>or)&&e.addIssue({code:"custom",message:"Request body exceeds the UTF-8 byte limit"})}),gE=s.object({integrationId:Dd,path:zd,method:s.enum(Nd),headers:oE().optional(),query:iE().optional(),body:fE.optional()}).strict();var hE={meters:s.array(We).default([]),recurring_fee_cents:s.number().int().nonnegative().default(0),billing_interval:Jt.default("month"),trial_days:s.number().int().nonnegative().default(0),max_monthly_spend_cents:s.number().int().nonnegative().optional(),min_monthly_spend_cents:s.number().int().nonnegative().optional(),grants:s.array(Ke).max(40).default([]),creditPolicy:Ge.optional()},Tb=s.object({key:s.string().min(1).max(64).regex(/^[a-z0-9_-]+$/,"Plan key must be lowercase alphanumeric with hyphens/underscores"),name:s.string().min(1).max(100),description:s.string().max(500).optional(),details:s.array(s.string().max(200)).max(10).optional(),...hE,free:s.boolean().default(!1),limits:s.array(ir).max(20).default([]),routeGrants:s.array(s.string().min(1).max(500)).max(500).transform(t=>[...new Set(t)].sort()).optional(),frontendIntegrationGrants:Ld,resource_limits:s.record(s.string().min(1).max(120),s.number().int().nonnegative()).default({}),overageBehavior:s.enum(["block","allow_and_bill"]).default("block"),selfServeEnabled:s.boolean().default(!0),capacity:Td.optional(),archive:s.object({at:s.string().datetime().optional(),transitionTo:s.string().optional(),strategy:s.enum(["auto","explicit","block"]).default("auto")}).optional()}).strict(),Io=Tb.superRefine((t,e)=>{mb(t.grants,e)});var bE=/^\$\{[A-Z][A-Z0-9_]{0,127}\}$/,Md=s.string().min(3).max(200).refine(t=>bE.test(t),{message:"secret must use ${VAR} interpolation syntax (e.g. ${WEBHOOK_SECRET}); raw secrets in YAML are rejected. Define the env var in the per-product secret store and reference it here."}),Fd=s.object({maxAttempts:s.number().int().min(1).max(20).default(5),backoff:s.enum(["exponential","fixed"]).default("exponential")}),Bd=s.object({id:s.string().min(1).max(64).regex(/^[a-z0-9_-]+$/,"Webhook endpoint id must be lowercase alphanumeric with hyphens/underscores"),url:s.string().url("webhooks.endpoints[].url must be a valid URL"),secret:Md,events:s.array(Gt).min(1,"webhooks.endpoints[].events must subscribe to \u2265 1 event"),enabled:s.boolean().default(!0),retryPolicy:Fd.default({maxAttempts:5,backoff:"exponential"})}),Hd=s.object({endpoints:s.array(Bd).max(50).default([])});var vE=s.object({meters:s.array(We).optional(),recurring_fee_cents:s.number().int().nonnegative().optional(),billing_interval:Jt.optional(),grants:s.array(Ke).max(40).optional(),creditPolicy:Ge.optional(),trial_days:s.number().int().nonnegative().optional(),max_monthly_spend_cents:s.number().int().nonnegative().optional(),limits:s.array(ir).max(20).optional(),overageBehavior:s.enum(["block","allow_and_bill"]).optional(),selfServeEnabled:s.boolean().optional()}).strict(),_E=s.object({url:s.string().url().optional(),secret:Md.optional(),events:s.array(Gt).optional(),enabled:s.boolean().optional(),retryPolicy:Fd.partial().optional()}).strict(),yE=s.object({plans:s.record(s.string(),vE).optional(),webhooks:s.object({endpoints:s.record(s.string(),_E).optional()}).strict().optional()}).strict(),Vd=s.record(s.string().min(1).max(64),yE);var Zd=s.enum(["query","mutation"]),Kd=s.enum(["none","metadata","full"]),Gd=s.object({type:s.string().min(1).max(64).regex(/^[a-zA-Z0-9_.:-]+$/),from:s.enum(["header","path_param"]),name:s.string().min(1).max(120)}),Wd=s.object({resource:s.string().min(1).max(100).regex(/^[a-z0-9_.:-]+$/),effect:s.enum(["create","delete"])}),Rb=s.object({id:s.string().min(1).max(160).regex(/^[a-z0-9_.:-]+$/),title:s.string().min(1).max(160).optional(),kind:Zd,actorType:s.string().min(1).max(64).regex(/^[a-zA-Z0-9_.:-]+$/).optional(),subject:Gd.optional(),inputSchemaRef:s.string().min(1).max(240).optional(),audit:Kd.default("metadata"),resource:Wd.optional()});var Ab=s.enum(["subscription","subject"]),Cb=s.enum(["reported","action_inferred"]),Pb=s.string().min(1).max(100).regex(/^[a-z0-9_.:-]+$/),Nb=s.object({name:Pb,display:s.string().min(1).max(120).optional(),scope:Ab.default("subscription"),subjectType:s.string().min(1).max(64).regex(/^[a-zA-Z0-9_.:-]+$/).optional(),countSource:Cb.default("reported")}).superRefine((t,e)=>{t.scope==="subject"&&!t.subjectType&&e.addIssue({code:"custom",path:["subjectType"],message:"subjectType is required when resource scope is subject"}),t.scope==="subscription"&&t.subjectType&&e.addIssue({code:"custom",path:["subjectType"],message:"subjectType is only valid for subject-scoped counted resources"})}),qd=s.array(Nb).max(100).default([]);var Db=/^[a-z0-9][a-z0-9_-]*$/,Jd=s.string().min(1).max(64).regex(Db,"backend id must be a lowercase slug ([a-z0-9][a-z0-9_-]*)"),Ub=s.enum(["direct","tunnel"]),zb=s.enum(["embedded","sidecar"]);var jb=s.object({mode:Ub.default("direct"),runner:zb.optional()}).strict(),Lb=s.object({required:s.boolean().default(!0)}).strict(),Mb=s.object({name:s.string().min(1).max(120).optional(),slug:Jd.optional(),transport:jb.default({mode:"direct"}),verification:Lb.default({required:!0}),meters:s.array(s.string().min(1).max(64)).max(100).optional(),default:s.boolean().optional()}).strict(),Yd=s.record(Jd,Mb),Xt=Jd,Qt={unknownBackendInRoute:"UNKNOWN_BACKEND_IN_ROUTE",ambiguousDefaultBackend:"AMBIGUOUS_DEFAULT_BACKEND",routeMeterNotAllowedByBackend:"ROUTE_METER_NOT_ALLOWED_BY_BACKEND",unknownMeterInBackend:"UNKNOWN_METER_IN_BACKEND"};function Xd(t){let e=Object.keys(t??{});if(e.length===0)return{defaultId:null,ambiguous:!1};if(e.length===1)return{defaultId:e[0],ambiguous:!1};let r=e.filter(i=>t[i]?.default===!0);return r.length===1?{defaultId:r[0],ambiguous:!1}:{defaultId:null,ambiguous:!0}}var Bb=s.enum(["long","short","blocking"]).default("long");var Hb=s.object({method:s.enum(["GET","POST","PUT","PATCH","DELETE","HEAD","OPTIONS"]),path:s.string().min(1).max(500).regex(/^\/[a-zA-Z0-9_/:.{}-]*$/,"path must be a concrete route starting with /; wildcard segments are reserved for meterRoutes selectors").refine(t=>!t.split("/").some(e=>["{__fs_rest}",":__fs_rest","[__fs_rest]"].includes(e)),"reserved greedy path parameters are only valid in non-granting meter selectors")});function kE(t){let e=t.trim();if(!e)return!1;let[r,i,n]=e.split("-");if(n!==void 0||!/^\d{3}$/.test(r??""))return!1;let o=Number(r),a=i===void 0?o:Number(i);return i!==void 0&&!/^\d{3}$/.test(i)?!1:o>=100&&o<=599&&a>=100&&a<=599&&o<=a}function Vb(t){return t.split(",").every(kE)}var So=s.union([s.string().min(1).max(100).refine(Vb,{message:"onStatusCodes must be comma-separated HTTP status codes or numeric ranges, e.g. 200-299,304"}),s.array(s.number().int().min(100).max(599)).min(1).max(100)]),Zb=s.enum(["public","required"]),Kb=s.enum(["network","5xx"]),Gb=s.object({maxAttempts:s.number().int().min(1).max(3),retryOn:s.array(Kb).min(1).max(2),backoff:s.object({base:s.number().int().min(0).max(6e4),max:s.number().int().min(0).max(6e4),jitter:s.number().min(0).max(1)}).strict().refine(t=>t.max>=t.base,{message:"retry.backoff.max must be >= retry.backoff.base"}),budgetRatio:s.number().min(0).max(1)}).strict(),Wb=s.enum(["ui","api","agent","webhook","cli"]),Fb=new Map(Wb.options.map((t,e)=>[t,e])),xE=s.array(Wb).min(1).refine(t=>t.every((e,r)=>r===0||(Fb.get(e)??-1)>(Fb.get(t[r-1])??-1)),{message:"surfaces must be a canonical set: unique and sorted by surface order (ui, api, agent, webhook, cli)"}),Eo=s.object({authMode:Zb.optional(),timeoutMs:s.number().int().min(1).max(6e5).optional(),idleTimeoutMs:s.number().int().min(1).max(6e5).optional(),retry:Gb.optional(),subject:s.enum(["member","service"]).optional(),surfaces:xE.optional(),hidden:s.boolean().optional()}).strict(),wo=s.object({dimension:s.string().min(1).max(64).default("requests"),window:s.union([s.object({type:s.literal("named"),name:s.enum(["second","minute","hour","day","week","month"])}),s.object({type:s.literal("custom"),seconds:s.number().int().positive(),label:s.string().min(1).max(64).optional()})]),capacity:s.number().nonnegative(),enforcement:s.enum(["enforce","track"]).default("enforce")}).strict(),qb=s.object({match:Hb,metering:s.object({defaults:s.record(s.string().min(1).max(64),s.number().finite().nonnegative()).optional(),reports:s.array(s.string().min(1).max(64)).max(20).optional(),onStatusCodes:So.optional(),postStreamBilling:s.boolean().optional()}).optional(),unmetered:s.boolean().optional(),inheritDefaultMeters:s.boolean().optional(),action:s.string().min(1).max(160).regex(/^[a-z0-9_.:-]+$/).optional(),backend:Xt.optional(),usagePolicy:ko.optional(),policy:Eo.optional(),limits:s.array(wo).min(1).max(8).optional()}).strict(),Jb=s.object({rollout_key:s.string().min(1).max(120).regex(/^[a-z0-9_-]+$/,"rollout_key must be lowercase alphanumeric with hyphens/underscores").optional(),required_flags:s.array(s.string().min(1).max(120).regex(/^[a-z0-9_-]+$/)).max(10).optional()}),Qd=s.object({description:s.string().max(500).optional(),mutation_class:s.enum(["runtime","contractual"]).default("contractual"),cacheProfile:Bb,routes:s.array(qb).min(1).max(50),runtime:Jb.default({}),actions:s.array(Rb).max(100).optional(),backend:Xt.optional()}).strict();var IE="{__fs_rest}";function SE(t){if(t.startsWith(":"))return t.slice(1);if(t.startsWith("{")&&t.endsWith("}")||t.startsWith("[")&&t.endsWith("]"))return t.slice(1,-1)}function ep(t,e){let r=e.split("/").map((i,n)=>n===0?i:i==="**"||i===IE?"**":i==="*"||SE(i)!==void 0?"*":i).join("/");return`${t.toUpperCase()} ${r}`}function ct(t){return t.actionId??ep(t.method,t.path)}function Yb(t,e){t.usagePricing!==void 0&&e.addIssue({code:"custom",path:["usagePricing"],message:"usagePricing is not supported. Define usage.meters.<key>.rating instead."})}function Xb(t,e){t.filter(i=>i.free).length>1&&e.addIssue({code:"custom",path:["plans"],message:"Only one free plan is allowed per product"}),t.forEach((i,n)=>{i.free&&(EE(i,n,e),wE(i,n,e))})}function EE(t,e,r){(iv(t)??0)!==0&&r.addIssue({code:"custom",path:["plans",e,"recurring_fee_cents"],message:"Free plans must have zero price"})}function wE(t,e,r){t.limits.some(n=>!n.enforcement||n.enforcement==="enforce")||r.addIssue({code:"custom",path:["plans",e,"limits"],message:"Free plans must include at least one hard enforced limit"})}function Qb(t,e){let r=new Map;t.forEach((i,n)=>{if(i.free)return;let o=iv(i);if(o===void 0||o<=0)return;let a=RE(i,o),c=r.get(a);if(c){e.addIssue({code:"custom",path:["plans",n,"recurring_fee_cents"],message:`Paid plan price duplicates plan "${c}" (${a})`});return}r.set(a,i.key)})}function ev(t,e){let r=new Set((t.metering?.meters??[]).map(n=>n.key).filter(n=>typeof n=="string"&&n.length>0)),i=new Set(Object.keys(t.usage?.meters??{}));t.plans.forEach((n,o)=>{let a=n.meters;a&&a.forEach((c,l)=>{let d=c.dimension;typeof d!="string"||d.length===0||r.has(d)||i.has(d)||e.addIssue({code:"custom",path:["plans",o,"meters",l,"dimension"],message:`Plan "${n.key}" prices meter "${d}" but no metering.meters[] entry and no usage.meters[] entry declares it.`})})})}function tv(t,e){if(!t.routeCatalog)return;let r=new Set((t.metering?.meters??[]).map(n=>n.key).filter(n=>typeof n=="string"&&n.length>0)),i=!1;for(let[n,o]of Object.entries(t.routeCatalog))(o.routes??[]).forEach((c,l)=>{let d=tp(c);d.length!==0&&(i=!0,d.forEach((u,p)=>{r.has(u)||e.addIssue({code:"custom",path:["routeCatalog",n,"routes",l,"metering",p],message:`Route references unknown meter "${u}". Declare it in metering.meters[].`})}))});i&&r.size===0&&e.addIssue({code:"custom",path:["metering","meters"],message:"One or more routes declare metering keys but `metering.meters[]` is empty. Declare meters at the product level first."})}function $E(t,e){let r=new Map;for(let n of t.plans)r.set(n.key,new Set);if(!t.routeCatalog){for(let n of r.values())for(let o of e)n.add(o);return r}let i=Object.values(t.routeCatalog).flatMap(n=>n.routes??[]);for(let n of t.plans){let o=r.get(n.key),a=new Set(n.routeGrants??[]);for(let c of i){if(c.unmetered===!0||!c.path)continue;let l=ct({actionId:c.actionId,method:c.method,path:c.path});if(a.has(l))for(let d of tp(c))o.add(d)}}return r}function tp(t){let e=new Set;for(let r of Object.keys(t.metering?.defaults??{}))e.add(r);for(let r of t.metering?.reports??[])e.add(r);return[...e]}function OE(t){if(!t||typeof t!="object")return null;let e=t;return typeof e.dimension=="string"?e.dimension:null}var TE=new Set(["credits"]);function nv(t,e){if(!t.plans||t.plans.length===0)return;let r=new Set((t.metering?.meters??[]).map(o=>o.key).filter(o=>typeof o=="string"&&o.length>0)),i=new Set(Object.keys(t.usage?.meters??{})),n=$E(t,r);t.plans.forEach((o,a)=>{let c=o.limits??[],l=n.get(o.key)??new Set;c.forEach((d,u)=>{if(d&&typeof d=="object"?d.acknowledgeUnreachable===!0:!1)return;let m=OE(d);m&&(l.has(m)||i.has(m)||TE.has(m)||e.addIssue({code:"custom",path:["plans",a,"limits",u,"meter"],message:`Plan "${o.key}" limits meter "${m}" but no directly granted route emits this meter, and the meter is not declared under usage.meters either. Either add a matching routeGrants entry for a route that emits "${m}", declare the meter under metering.meters[] or usage.meters, or set acknowledgeUnreachable: true if the limit is intentional (e.g. soft budget).`}))})})}function rv(t,e){let r=t.backend;if(!r||Object.keys(r).length===0)return;let i=new Set(Object.keys(r)),n=new Set((t.metering?.meters??[]).map(l=>l.key).filter(l=>typeof l=="string"&&l.length>0));for(let[l,d]of Object.entries(r))(d.meters??[]).forEach((u,p)=>{n.has(u)||e.addIssue({code:"custom",path:["backend",l,"meters",p],message:`${Qt.unknownMeterInBackend}: backend "${l}" allows meter "${u}" but no metering.meters[] entry declares it.`})});let{defaultId:o,ambiguous:a}=Xd(r),c=!1;for(let l of Object.values(t.routeCatalog??{}))for(let d of l.routes??[])d.backend===void 0&&(c=!0);a&&c&&e.addIssue({code:"custom",path:["backend"],message:`${Qt.ambiguousDefaultBackend}: product declares ${i.size} backends but no single default \u2014 mark exactly one backend \`default: true\` or bind every route explicitly.`});for(let[l,d]of Object.entries(t.routeCatalog??{}))(d.routes??[]).forEach((u,p)=>{let m=u.backend??o;if(u.backend!==void 0&&!i.has(u.backend)){e.addIssue({code:"custom",path:["routeCatalog",l,"routes",p,"backend"],message:`${Qt.unknownBackendInRoute}: route binds backend "${u.backend}" which is not declared in the product \`backend\` block.`});return}if(!m)return;let k=r[m]?.meters;if(!k)return;let E=new Set(k);for(let S of tp(u))E.has(S)||e.addIssue({code:"custom",path:["routeCatalog",l,"routes",p,"metering"],message:`${Qt.routeMeterNotAllowedByBackend}: route meters "${S}" but backend "${m}" does not allow it (backend.meters[] = [${k.join(", ")}]).`})})}function iv(t){return t.recurring_fee_cents}function RE(t,e){return`USD:month:${e}`}var AE=s.object({subdomain:s.string().min(1).max(63).regex(/^[a-z0-9]([a-z0-9-]*[a-z0-9])?$/,"Subdomain must be lowercase alphanumeric with optional hyphens")}),ov=s.enum(["exact_pre_request","estimated_then_settled","postpaid","strict_concurrency"]),CE=s.enum(Xh),np=s.object({key:s.string().min(1).max(64).regex(/^[a-z0-9_]+$/,"Meter key must be lowercase alphanumeric with underscores"),display:s.string().min(1).max(100),unit:s.string().max(20).optional(),routeDefault:s.number().finite().nonnegative().optional(),enforcementType:ov.default("estimated_then_settled"),aggregation:s.enum(["SUM","COUNT","MAX","UNIQUE_COUNT","LATEST"]).default("COUNT"),window:s.enum(["minute","hour","day","month","billing_period"]).default("billing_period"),valueProperty:s.string().optional(),uniqueProperty:s.string().optional(),groupBy:s.array(s.string()).optional(),eventCode:s.string().optional(),tokenCategory:CE.optional(),reserveStrategy:s.enum(["reserve_max","estimate","count_actual"]).optional(),reserveCeiling:s.number().int().positive().optional(),pairsWith:s.string().min(1).max(64).optional()}),sv=s.string().min(1).max(64).regex(/^[a-z0-9_]+$/,"Usage measure must be lowercase alphanumeric with underscores"),PE=s.enum(["pass_through","markup"]),NE=s.object({source:s.literal("fixed"),rates:s.record(s.string().min(1),s.record(sv,s.number().int().nonnegative()))}),DE=s.object({source:s.literal("provider_catalog"),catalog:s.string().min(1).max(100),pricePolicy:PE.default("pass_through"),markupPercent:s.number().nonnegative().max(1e4).optional(),marginMicros:s.number().int().nonnegative().optional()}),av=s.discriminatedUnion("source",[NE,DE]),cv=s.object({selector:s.string().min(1).max(100).optional(),measures:s.array(sv).min(1).max(20),rating:av.optional()}),lv=s.object({meters:s.record(s.string().min(1).max(64).regex(/^[a-z0-9_]+$/),cv)}),UE=s.object({defaults:s.record(s.string().min(1).max(64),s.number().finite().nonnegative()).optional(),reports:s.array(s.string().min(1).max(64)).max(20).optional(),onStatusCodes:So.optional(),postStreamBilling:s.boolean().optional()}),zE=s.object({kind:Zd,title:s.string().min(1).max(160).optional(),actorType:s.string().min(1).max(64).regex(/^[a-zA-Z0-9_.:-]+$/).optional(),subject:Gd.optional(),audit:Kd,resource:Wd.optional()}),uv=s.object({method:s.enum(["GET","POST","PUT","PATCH","DELETE","HEAD","OPTIONS"]),path:s.string().min(1).max(500).regex(/^\/[a-zA-Z0-9_/:.{}-]*$/,"path must be a concrete route starting with /; wildcard segments are reserved for meterRoutes selectors").refine(t=>!t.split("/").some(e=>["{__fs_rest}",":__fs_rest","[__fs_rest]"].includes(e)),"reserved greedy path parameters are only valid in non-granting meter selectors"),actionId:s.string().min(1).max(120).optional(),actionMeta:zE.optional(),unmetered:s.boolean().optional(),metering:UE.optional(),inheritDefaultMeters:s.boolean().optional(),backend:Xt.optional(),limits:s.array(wo).min(1).max(8).optional(),policy:Eo.optional()}).strict(),rp=s.object({description:s.string().max(500).optional(),routes:s.array(uv).min(1).max(50)}),dv=s.record(s.string().min(1).max(100).regex(/^[a-z0-9_.:-]+$/),rp),pv=s.enum(["report","pull_request"]),mv=s.enum(["safe","non_blocking","economic_risk","blocking"]),fv=s.object({cleanup:s.object({enabled:s.boolean().default(!1),mode:pv.default("report")}).default({enabled:!1,mode:"report"}),change_approval:s.object({auto_merge_max_risk:s.enum(["none","safe","non_blocking"]).default("none"),require_human_for:s.array(mv).default(["economic_risk","blocking"])}).default({auto_merge_max_risk:"none",require_human_for:["economic_risk","blocking"]})}).default({cleanup:{enabled:!1,mode:"report"},change_approval:{auto_merge_max_risk:"none",require_human_for:["economic_risk","blocking"]}}),gv=s.enum(["clerk","test-personas"]),hv=s.object({context_tokens:s.object({enabled:s.boolean().default(!0)}).optional(),portal_auth:s.object({strategy:gv}).optional()}),lt=s.object({business:s.object({visibility:s.enum(["public","private"]).default("public"),rbac:s.boolean().optional()}),gateway:s.object({authHeader:s.string().min(1).max(100).default("x-api-key"),upstreamAuth:s.object({type:s.enum(["none","static_bearer"]),token:s.string().optional()}).default({type:"none"})}),metering:s.object({meters:s.array(np).max(10).default([]),billOn4xx:s.boolean().default(!1)}).default({meters:[],billOn4xx:!1}),backend:Yd.optional(),usage:lv.optional(),usagePricing:s.never({error:"usagePricing is not supported. Define usage.meters.<key>.rating instead."}).optional(),routeCatalog:dv.optional(),resources:qd,policies:fv,customer_context:hv.optional(),frontend:s.never({error:"frontend is not authorable in Business-as-Code. Define pages and navigation in the frontend application; use route policy surfaces for API/UI callability."}).optional(),billing:s.object({applyLimitUpgradesInstantly:s.boolean().optional(),subscriberChangePolicy:Wt.default({default:"period_end",when:{price_increase:"period_end",price_decrease:"immediate",route_grant_added:"immediate",route_grant_removed:"period_end",limit_increased:"immediate",limit_reduced:"period_end",credit_increased:"immediate",credit_reduced:"period_end",rating_changed:"period_end"},allowImmediatePriceIncrease:!1,allowImmediateEntitlementReduction:!1})}).default({subscriberChangePolicy:{default:"period_end",when:{price_increase:"period_end",price_decrease:"immediate",route_grant_added:"immediate",route_grant_removed:"period_end",limit_increased:"immediate",limit_reduced:"period_end",credit_increased:"immediate",credit_reduced:"period_end",rating_changed:"period_end"},allowImmediatePriceIncrease:!1,allowImmediateEntitlementReduction:!1}}),plans:s.array(Io).max(4).default([]),lifecycle:s.object({breaking_changes:s.object({require_deprecation_window_days:s.number().int().nonnegative().default(0),require_successor_route:s.boolean().default(!1)}).default({require_deprecation_window_days:0,require_successor_route:!1})}).default({breaking_changes:{require_deprecation_window_days:0,require_successor_route:!1}}),webhooks:Hd.optional(),environments:Vd.optional(),ephemeral:s.object({defaultPlan:s.string().min(1).optional()}).optional()}).superRefine((t,e)=>{Yb(t,e),Xb(t.plans,e),Qb(t.plans,e),ev(t,e),tv(t,e),nv(t,e),rv(t,e)}),jE=s.object({business:lt.shape.business}),LE=s.object({gateway:lt.shape.gateway}),ME=s.object({metering:lt.shape.metering}),FE=s.object({plans:lt.shape.plans});var bv=1,vv="business",op=`${vv}/index.ts`,BE=s.object({irVersion:s.literal(bv),sdkVersion:s.string().min(1).max(64),business:lt,routes:s.array(Qd).max(200).default([]),frontendIntegrations:jd.default([])}).strict().superRefine((t,e)=>{let r=new Map;for(let[i,n]of t.routes.entries())for(let[o,a]of n.routes.entries()){let c=ct({actionId:a.action,method:a.match.method,path:a.match.path}),l=ep(a.match.method,a.match.path),d=a.action?n.actions?.find(m=>m.id===a.action):void 0,u=_v({action:d,layer:{backend:n.backend,cacheProfile:n.cacheProfile,description:n.description,mutation_class:n.mutation_class,runtime:n.runtime},route:{backend:a.backend??n.backend,inheritDefaultMeters:a.inheritDefaultMeters,limits:a.limits,metering:a.metering,policy:a.policy,unmetered:a.unmetered,usagePolicy:a.usagePolicy}}),p=r.get(c);if(p&&p.endpoint!==l){e.addIssue({code:"custom",path:["routes",i,"routes",o,"action"],message:`route id collision for "${c}": maps to both ${p.endpoint} and ${l}`});continue}if(p&&p.behavior!==u){e.addIssue({code:"custom",path:["routes",i,"routes",o],message:`conflicting route definition for "${c}"`});continue}r.set(c,{endpoint:l,behavior:u})}for(let[i,n]of t.business.plans.entries()){for(let[o,a]of(n.routeGrants??[]).entries())r.has(a)||e.addIssue({code:"custom",path:["business","plans",i,"routeGrants",o],message:`unknown route grant "${a}" for plan "${n.key}"`});for(let[o,a]of(n.frontendIntegrationGrants??[]).entries())t.frontendIntegrations.some(c=>c.id===a)||e.addIssue({code:"custom",path:["business","plans",i,"frontendIntegrationGrants",o],message:`unknown frontend integration grant "${a}" for plan "${n.key}"`})}});function _v(t){return ip(JSON.parse(JSON.stringify(t)))}function ip(t){return Array.isArray(t)?`[${t.map(ip).join(",")}]`:t&&typeof t=="object"?`{${Object.entries(t).sort(([e],[r])=>e<r?-1:e>r?1:0).map(([e,r])=>`${JSON.stringify(e)}:${ip(r)}`).join(",")}}`:JSON.stringify(t)}var pU=s.object({subscriberChangePolicy:Wt.optional()}),mU=s.object({code:s.string(),kind:s.enum(["percent_off","amount_off","free_months"]),amount:s.number().optional(),durationMonths:s.number(),applicablePlanIds:s.array(s.string()).optional(),maxRedemptions:s.number().optional(),activeFrom:s.string().optional(),activeUntil:s.string().optional(),status:s.enum(["ACTIVE","ARCHIVED"]).optional()}),fU=s.object({id:s.string(),actorUserId:s.string().optional(),action:s.string(),decision:s.string().optional(),timestamp:s.string(),details:s.unknown().optional()}),gU=s.object({name:s.string(),branch:s.string().optional(),isProduction:s.boolean().optional()}),hU=s.object({id:s.string(),name:s.string(),apiKeyId:s.string().optional()});var yv=s.object({id:s.string(),billingCycleId:s.string(),effectiveStart:s.string(),effectiveEnd:s.string(),compiledPlanId:s.string()}),kv=s.object({currentPeriod:yv,priorPeriod:yv.optional()});var HE=s.object({subjectKey:s.string(),subscriptionId:s.string(),subscriberId:s.string(),businessId:s.string(),organizationId:s.string(),compiledPlanId:s.string(),activeEntitlementHash:s.string().optional(),generation:s.number(),enforcementMode:s.enum(["STRICT","GRACE","TRACK_ONLY"]),dedicatedShard:s.enum(["ACTIVE","DRAINING"]).optional(),memberAuthz:s.record(s.string(),s.object({permissions:s.array(s.string()),roles:s.array(s.string())})).optional(),memberAuthzComputedAt:s.number().optional(),postStreamLockouts:s.array(s.object({code:s.literal("post_stream_overspend"),reason:s.literal("usage_exhausted"),constraintKey:s.string().min(1),cycleId:s.string().min(1),dimension:s.string().min(1),currentCapacity:s.number().nonnegative(),observedUsage:s.number().nonnegative(),lockedAt:s.string().min(1),expiresAt:s.string().min(1)})).optional(),subscriptionStatus:s.string(),subscriberStatus:s.string(),scopes:s.array(s.string()),periods:kv,expiresAt:s.number().optional(),trialEndsAt:s.string().optional()}),VE=s.discriminatedUnion("kind",[s.object({kind:s.literal("found"),state:HE,expiresAt:s.number(),ttlSeconds:s.number()}),s.object({kind:s.literal("not_found"),negativeCacheTtlSeconds:s.number().default(60)}),s.object({kind:s.literal("revoked"),negativeCacheTtlSeconds:s.number().default(300),reason:s.string().optional()}),s.object({kind:s.literal("rate_limited"),retryAfterSeconds:s.number().default(10)})]),$U=s.object({environmentId:s.string().nullable(),subjectKeys:s.array(s.string()).min(1).max(500)}),OU=s.object({results:s.array(s.object({subjectKey:s.string(),result:VE}))}),ZE=s.object({keyId:s.string(),orgId:s.string(),businessId:s.string(),compiledPlanId:s.string(),entitlementHash:s.string().optional(),subscriptionId:s.string(),subscriberId:s.string(),apiKeyId:s.string().nullable(),subjectKey:s.string(),entitlementVersion:s.number().int(),status:s.enum(["active","revoked"]),subscriberStatus:s.enum(["ONBOARDING","ACTIVE","SUSPENDED"]),subscriptionStatus:s.string(),environment:s.enum(["production","sandbox"]).optional(),environmentId:s.string().optional(),scopes:s.array(s.string()).default([]),permissions:s.array(s.string()).optional(),roles:s.array(s.string()).optional(),entitlement:s.unknown().optional(),principal:s.object({subjectKind:s.enum(["member","service"]),memberId:s.string().optional(),serviceAccountId:s.string().optional(),keyId:s.string()}),currentPeriodId:s.string().optional(),currentPeriodStartMs:s.number().int().nonnegative().optional(),expiresAt:s.number().nullable().optional()}),TU=s.discriminatedUnion("kind",[s.object({kind:s.literal("found"),record:ZE,expiresAt:s.number(),ttlSeconds:s.number()}),s.object({kind:s.literal("not_found"),negativeCacheTtlSeconds:s.number().default(60)}),s.object({kind:s.literal("revoked"),negativeCacheTtlSeconds:s.number().default(300),reason:s.string().optional()}),s.object({kind:s.literal("rate_limited"),retryAfterSeconds:s.number().default(10)})]),RU=s.discriminatedUnion("kind",[s.object({kind:s.literal("found"),entitlement:s.unknown(),expiresAt:s.number(),ttlSeconds:s.number()}),s.object({kind:s.literal("not_found"),negativeCacheTtlSeconds:s.number().default(60)}),s.object({kind:s.literal("rate_limited"),retryAfterSeconds:s.number().default(10)})]),KE=s.object({id:s.string().min(1),slug:s.string().optional(),transportMode:s.enum(["direct","tunnel"]),verificationRequired:s.boolean().optional(),originUrl:s.string().optional(),originHostname:s.string().optional(),accessCredentialRef:s.string().optional(),policyVersion:s.string().optional()}),GE=s.object({id:s.string(),origin:s.string(),sandboxOrigin:s.string().nullable().optional(),authHeader:s.string().optional(),pricing:s.record(s.string(),s.number()).optional(),metering:s.object({billOn4xx:s.boolean().optional()}).optional(),tenantLimits:s.array(s.object({unit:s.enum(["requests","tokens","computeMs","dollars"]),window:s.enum(["second","minute","hour","day","week","month"]),capacity:s.number()})).optional(),userLimits:s.array(s.object({unit:s.enum(["requests","tokens","computeMs","dollars"]),window:s.enum(["second","minute","hour","day","week","month"]),capacity:s.number()})).optional(),environmentId:s.string().optional(),contextTokenSecret:s.string().nullable().optional(),timeoutMs:s.number().positive().optional(),idleTimeoutMs:s.number().positive().optional(),backends:s.array(KE).optional(),defaultBackendId:s.string().optional(),verificationRequired:s.boolean().optional(),allowedOrigins:s.array(s.string()).optional(),hasPublicRoutes:s.boolean().optional(),publicRoutesCompiledPlanId:s.string().min(1).optional()}),AU=s.discriminatedUnion("kind",[s.object({kind:s.literal("found"),tenant:GE,expiresAt:s.number(),ttlSeconds:s.number()}),s.object({kind:s.literal("not_found"),negativeCacheTtlSeconds:s.number().default(60)}),s.object({kind:s.literal("rate_limited"),retryAfterSeconds:s.number().default(10)})]);var $o=["consumer_api_key","consumer_session_token","test_persona_session_token","builder_master_key","builder_session_token","maker_jwt","service_jwt","internal_service","context_token"],xv=s.enum($o);var WE=s.object({fromIssuer:s.string().min(1),fromTokenId:s.string().min(1),intent:s.string().min(1)}),Iv=s.object({issuer:s.string().min(1),issuedAt:s.number().int().nonnegative(),expiresAt:s.number().int().nonnegative().optional(),tokenId:s.string().min(1).optional(),delegationChain:s.array(WE)});var sp=["template","embedded","provisioned","agent"],qE=s.enum(sp),JE=["builder_user","builder_org","maker","consumer_subject","internal_service","service_jwt","agent_runtime"],YE=s.enum(JE),Sv=s.object({kind:YE,id:s.string().min(1),label:s.string().optional()}),XE=["subscription","organization","platform"],QE=s.enum(XE),ew=s.object({kind:QE,id:s.string().min(1)}),tw=s.object({type:xv,id:s.string().min(1),hint:s.string().max(8).optional()}),nw=s.object({compiledPlanId:s.string().min(1),fromCache:s.boolean().optional()}),FU=s.object({requestId:s.string().min(1),surface:qE,builderOrgId:s.string().min(1),businessId:s.string().min(1).optional(),runtimeId:s.string().min(1).optional(),template:s.string().optional(),caller:Sv,actor:Sv,billingSubject:ew,credential:tw,operation:s.string().min(1),scopes:s.array(s.string()),entitlement:nw.optional(),trust:Iv});var C=["template","agent"],rw=["provisioned"],Ev=[...sp],P=["builder_master_key","builder_session_token","maker_jwt"],en=["service_jwt","internal_service"],ap=["consumer_api_key","consumer_session_token","test_persona_session_token","context_token"],wv=[...$o],sr="subscriptions:write",iw=[{id:"businesses.create",operation:"Create a product",requiredScopes:["businesses:write"],allowedSurfaces:C,allowedCredentialTypes:P,description:"Create a new product in the builder org"},{id:"businesses.update",operation:"Update a product",requiredScopes:["businesses:write"],allowedSurfaces:C,allowedCredentialTypes:P,description:"Update product metadata or compiled config"},{id:"businesses.delete",operation:"Delete a product",requiredScopes:["businesses:write"],allowedSurfaces:C,allowedCredentialTypes:P,description:"Delete a product (soft-archive if subscriptions exist)"},{id:"businesses.read",operation:"Read a product",requiredScopes:["businesses:read"],allowedSurfaces:C,allowedCredentialTypes:P,description:"Read product metadata + compiled config"},{id:"businesses.publish",operation:"Publish a product",requiredScopes:["businesses:write"],allowedSurfaces:C,allowedCredentialTypes:P,description:"Compile + publish the product to the gateway"},{id:"plans.create",operation:"Create a plan",requiredScopes:["plans:write"],allowedSurfaces:C,allowedCredentialTypes:P,description:"Add a new plan to a product"},{id:"plans.update",operation:"Update a plan",requiredScopes:["plans:write"],allowedSurfaces:C,allowedCredentialTypes:P,description:"Update plan pricing, limits, or features"},{id:"plans.delete",operation:"Delete a plan",requiredScopes:["plans:write"],allowedSurfaces:C,allowedCredentialTypes:P,description:"Delete a plan (denied if subscriptions are attached)"},{id:"plans.publish",operation:"Publish a plan",requiredScopes:["plans:write"],allowedSurfaces:C,allowedCredentialTypes:P,description:"Mark a plan as available for new subscriptions"},{id:"subscriptions.create",operation:"Create a subscription",requiredScopes:[sr],allowedSurfaces:C,allowedCredentialTypes:[...P,...en],description:"Provision a new subscription for a subscriber"},{id:"subscriptions.update",operation:"Update a subscription",requiredScopes:[sr],allowedSurfaces:C,allowedCredentialTypes:[...P,...en],description:"Change plan, enforcement mode, or schedule"},{id:"subscriptions.cancel",operation:"Cancel a subscription",requiredScopes:[sr],allowedSurfaces:C,allowedCredentialTypes:[...P,...en],description:"Cancel a subscription (immediate or end-of-period)"},{id:"subscriptions.pause",operation:"Pause a subscription",requiredScopes:[sr],allowedSurfaces:C,allowedCredentialTypes:[...P,...en],description:"Pause a subscription (no usage, no billing)"},{id:"subscriptions.resume",operation:"Resume a subscription",requiredScopes:[sr],allowedSurfaces:C,allowedCredentialTypes:[...P,...en],description:"Resume a paused subscription"},{id:"subscriptions.read",operation:"Read a subscription",requiredScopes:["subscriptions:read"],allowedSurfaces:C,allowedCredentialTypes:[...P,...en],description:"Read subscription state and usage"},{id:"webhooks.create",operation:"Create a webhook endpoint",requiredScopes:["webhooks:write"],allowedSurfaces:C,allowedCredentialTypes:P,description:"Register a new webhook endpoint URL"},{id:"webhooks.update",operation:"Update a webhook endpoint",requiredScopes:["webhooks:write"],allowedSurfaces:C,allowedCredentialTypes:P,description:"Update endpoint URL, secret, or subscribed events"},{id:"webhooks.delete",operation:"Delete a webhook endpoint",requiredScopes:["webhooks:write"],allowedSurfaces:C,allowedCredentialTypes:P,description:"Remove a webhook endpoint"},{id:"webhooks.test",operation:"Send a test webhook payload",requiredScopes:["webhooks:write"],allowedSurfaces:C,allowedCredentialTypes:P,description:"Trigger a synthetic payload to verify an endpoint"},{id:"api-keys.create",operation:"Create an API key",requiredScopes:["api-keys:write"],allowedSurfaces:C,allowedCredentialTypes:P,description:"Mint a new consumer or master API key"},{id:"api-keys.revoke",operation:"Revoke an API key",requiredScopes:["api-keys:write"],allowedSurfaces:C,allowedCredentialTypes:P,description:"Revoke an API key (immediate invalidation)"},{id:"api-keys.read",operation:"Read API key metadata",requiredScopes:["api-keys:read"],allowedSurfaces:C,allowedCredentialTypes:P,description:"Read key id + hint + scopes (never the secret)"},{id:"organizations.create",operation:"Create an organization",requiredScopes:["orgs:write"],allowedSurfaces:["template"],allowedCredentialTypes:["builder_session_token"],description:"Create a builder org (top-level signup)"},{id:"organizations.update",operation:"Update an organization",requiredScopes:["orgs:write"],allowedSurfaces:C,allowedCredentialTypes:P,description:"Update org metadata or billing email"},{id:"members.invite",operation:"Invite a member to an organization",requiredScopes:["members:write"],allowedSurfaces:C,allowedCredentialTypes:P,description:"Send an invitation to join the org"},{id:"members.remove",operation:"Remove a member from an organization",requiredScopes:["members:write"],allowedSurfaces:C,allowedCredentialTypes:P,description:"Revoke a member's access to the org"},{id:"projects.create",operation:"Create a project",requiredScopes:["projects:write"],allowedSurfaces:C,allowedCredentialTypes:P,description:"Create a project (groups products + environments)"},{id:"environments.create",operation:"Create an environment",requiredScopes:["environments:write"],allowedSurfaces:C,allowedCredentialTypes:P,description:"Add a deployment environment (stage / branch)"},{id:"environments.delete",operation:"Delete an environment",requiredScopes:["environments:write"],allowedSurfaces:C,allowedCredentialTypes:P,description:"Remove a deployment environment"},{id:"billing.portal-redirect",operation:"Generate Stripe customer-portal redirect",requiredScopes:["billing:portal"],allowedSurfaces:C,allowedCredentialTypes:[...P,...ap],description:"Mint a one-time Stripe portal-session redirect URL"},{id:"billing.read",operation:"Read billing state",requiredScopes:["billing:read"],allowedSurfaces:C,allowedCredentialTypes:[...P,...ap],description:"Read invoices, balances, scheduled changes"},{id:"runtime-context.read",operation:"Read the caller's runtime context",requiredScopes:[],allowedSurfaces:Ev,allowedCredentialTypes:wv,description:"Introspect the resolved RuntimeContext (minus secrets)"},{id:"operations.list",operation:"List registered operations",requiredScopes:[],allowedSurfaces:Ev,allowedCredentialTypes:wv,description:"List all operations the registry knows about"},{id:"explain-denial.read",operation:"Explain a denial decision",requiredScopes:["audit:read"],allowedSurfaces:C,allowedCredentialTypes:P,description:"Look up a decision id + return the full ctx + reason"},{id:"replay.execute",operation:"Replay a historical billing period",requiredScopes:["replay:execute"],allowedSurfaces:C,allowedCredentialTypes:P,description:"Re-run billing for a past period; verify deltas"},{id:"rollback.execute",operation:"Execute a GitHub-driven product rollback",requiredScopes:["rollback:execute"],allowedSurfaces:C,allowedCredentialTypes:P,description:"Revert business.ts to a previous commit (dry-run capable)"},{id:"api.invoke",operation:"Invoke a consumer-facing gateway route",requiredScopes:[],allowedSurfaces:rw,allowedCredentialTypes:ap,description:"Consumer-side traffic into a deployed product (catch-all). The EntitlementEngine + RuntimeLimitEngine handle the fine-grained gating; this operation is the umbrella entry-point."}],GU=Object.freeze(iw);var ow=["BusinessApplyWorkflow","RollbackWorkflow","StripeSyncWorkflow","WebhookDispatchWorkflow","SubscriptionTransitionWorkflow","CompiledPlanLifecycleWorkflow","ShardReshardWorkflow","MaintenanceJobWorkflow"],YU=s.enum(ow),sw=["transient","permanent","rollback-required","human-intervention"],XU=s.enum(sw);var aw=["SAFE_AUTOMATIC","REQUIRES_APPROVAL","IRREVERSIBLE","BILLING_IMPACTING","EDGE_BREAKING"],QU=s.enum(aw);var oz=s.object({workflowExecutionId:s.string().min(1),eventType:s.string().min(1),phase:s.string().min(1).optional(),stepId:s.string().min(1).optional(),cohortKey:s.string().min(1).optional(),payload:s.record(s.string(),s.unknown()),occurredAt:s.string().min(1),correlationId:s.string().min(1).optional()}).transform(t=>({...t,workflowExecutionId:t.workflowExecutionId,stepId:t.stepId===void 0?void 0:t.stepId}));var cw=["GATEWAY","HOSTED_UI_PAGE","HOSTED_UI_PROXY"],lw=["platform_requests"],uw=s.object({requestId:s.string().optional(),businessId:s.string().optional(),route:s.string().optional(),usageEventId:s.string().optional()}).strict(),dw=s.object({organizationId:s.string().min(1),source:s.enum(cw),dimension:s.enum(lw),quantity:s.number().int().positive(),idempotencyKey:s.string().min(1).max(512),occurredAt:s.string().datetime(),metadata:uw.optional()}).strict(),Iz=s.object({entries:s.array(dw).min(1).max(500)});var Oo={contract:{label:"Managed as code",summary:"Declarative business state, canonical in the GitHub repo; the API returns 409 MANAGED_BY_CODE once published. Author via the manifest + push.",canonicalHome:"repo",mcpMayWrite:!1},operate:{label:"Runtime operation",summary:"Imperative action on the running platform; never in the repo. Tokens, usage, readiness, builds, publish triggers, runtime knobs, brand edits.",canonicalHome:"api",mcpMayWrite:!0},dual:{label:"Repo or API",summary:"Reconciles via either the repo or the API/MCP; both converge to the same state. Preview environments are the canonical example.",canonicalHome:"both",mcpMayWrite:!0}};function $v(t){return Oo[t].mcpMayWrite}function Ov(t){return Oo[t].canonicalHome}var ut="webhooks",ar="maker-tokens",cr="promo-codes",tn="variables",he="change-sets",Tv=[{key:"plan.create",class:"contract",domain:"plans"},{key:"plan.update",class:"contract",domain:"plans"},{key:"plan.delete",class:"contract",domain:"plans"},{key:"plan.read",class:"contract",domain:"plans"},{key:"plan.variant.create",class:"contract",domain:"plans"},{key:"plan.promote",class:"contract",domain:"plans"},{key:"plan.rollback",class:"contract",domain:"plans"},{key:"route.define",class:"contract",domain:"routes"},{key:"gateway.config",class:"contract",domain:"gateway"},{key:"auth_strategy.update",class:"contract",domain:"gateway"},{key:"rate_limit.update",class:"contract",domain:"gateway"},{key:"meter.define",class:"contract",domain:"metering"},{key:"backend.define",class:"contract",domain:"backends"},{key:"webhook.define",class:"contract",domain:ut},{key:"business.contract_field.update",class:"contract",domain:"businesses"},{key:"rbac.enable",class:"contract",domain:"products"},{key:"business.list",class:"operate",domain:"businesses"},{key:"business.status",class:"operate",domain:"businesses"},{key:"change_set.list",class:"operate",domain:he},{key:"change_set.read",class:"operate",domain:he},{key:"apply_timeline.list",class:"operate",domain:he},{key:"apply_timeline.read",class:"operate",domain:he},{key:"change_set.propose",class:"operate",domain:he},{key:"change_set.approve",class:"operate",domain:he},{key:"change_set.apply",class:"operate",domain:he},{key:"change_set.rollback",class:"operate",domain:he},{key:"change_set.cancel",class:"operate",domain:he},{key:"change_set.preview",class:"operate",domain:he},{key:"change_set.proposal_list",class:"operate",domain:he},{key:"change_set.proposal_read",class:"operate",domain:he},{key:"business.delete",class:"operate",domain:"businesses"},{key:"build.trigger",class:"operate",domain:"lifecycle"},{key:"frontend.deploy",class:"operate",domain:"frontend"},{key:"frontend.status",class:"operate",domain:"frontend"},{key:"frontend.rollback",class:"operate",domain:"frontend"},{key:"webhook.read",class:"operate",domain:ut},{key:"webhook.create",class:"operate",domain:ut},{key:"webhook.update",class:"operate",domain:ut},{key:"webhook.delete",class:"operate",domain:ut},{key:"webhook.test",class:"operate",domain:ut},{key:"agents.list",class:"operate",domain:"agents"},{key:"agents.status",class:"operate",domain:"agents"},{key:"agents.runs.show",class:"operate",domain:"agents"},{key:"agents.enable",class:"operate",domain:"agents"},{key:"agents.disable",class:"operate",domain:"agents"},{key:"bulletin.list",class:"operate",domain:"agents"},{key:"bulletin.read",class:"operate",domain:"agents"},{key:"bulletin.ack",class:"operate",domain:"agents"},{key:"bulletin.resolve",class:"operate",domain:"agents"},{key:"webhook.delivery.read",class:"operate",domain:ut},{key:"promo_code.read",class:"operate",domain:cr},{key:"promo_code.create",class:"operate",domain:cr},{key:"promo_code.update",class:"operate",domain:cr},{key:"promo_code.archive",class:"operate",domain:cr},{key:"promo_code.reactivate",class:"operate",domain:cr},{key:"consumer.read",class:"operate",domain:"consumers"},{key:"consumer.block",class:"operate",domain:"consumers"},{key:"consumer.remove",class:"operate",domain:"consumers"},{key:"consumer.rbac.settings",class:"operate",domain:"consumers"},{key:"consumer.rbac.roles",class:"operate",domain:"consumers"},{key:"consumer.roles.assign",class:"operate",domain:"consumers"},{key:"business_variable.read",class:"operate",domain:tn},{key:"business_variable.create",class:"operate",domain:tn},{key:"business_variable.rotate",class:"operate",domain:tn},{key:"business_variable.revoke",class:"operate",domain:tn},{key:"business_variable.delete",class:"operate",domain:tn},{key:"business_variable.operation.read",class:"operate",domain:tn},{key:"runtime_token.mint",class:"operate",domain:"runtime-tokens"},{key:"runtime_token.rotate",class:"operate",domain:"runtime-tokens"},{key:"runtime_token.revoke",class:"operate",domain:"runtime-tokens"},{key:"runtime_token.read",class:"operate",domain:"runtime-tokens"},{key:"maker_token.create",class:"operate",domain:ar},{key:"maker_token.revoke",class:"operate",domain:ar},{key:"maker_token.rotate",class:"operate",domain:ar},{key:"maker_token.hard_delete",class:"operate",domain:ar},{key:"maker_token.read",class:"operate",domain:ar},{key:"metering_token.mint",class:"operate",domain:"metering"},{key:"usage.report",class:"operate",domain:"usage"},{key:"usage.read",class:"operate",domain:"usage"},{key:"backend.create",class:"operate",domain:"backends"},{key:"backend.bind",class:"operate",domain:"backends"},{key:"backend.delete",class:"operate",domain:"backends"},{key:"backend.read",class:"operate",domain:"backends"},{key:"backend.status.read",class:"operate",domain:"backends"},{key:"persona.bootstrap",class:"operate",domain:"personas"},{key:"persona.read",class:"operate",domain:"personas"},{key:"persona.revoke",class:"operate",domain:"personas"},{key:"brand.update",class:"operate",domain:"branding"},{key:"business.origin.update",class:"operate",domain:"businesses"},{key:"business.docs.enable",class:"operate",domain:"businesses"},{key:"business.docs.disable",class:"operate",domain:"businesses"},{key:"business.preview_env.set",class:"operate",domain:"businesses"},{key:"workflows.replay",class:"operate",domain:"workflows"},{key:"plan.migration_batch.create",class:"operate",domain:"plans"},{key:"business.create",class:"dual",domain:"businesses"},{key:"business.read",class:"dual",domain:"businesses"},{key:"business.publish",class:"dual",domain:"lifecycle"},{key:"business.rollback",class:"dual",domain:"lifecycle"},{key:"manifest.apply",class:"dual",domain:"lifecycle"},{key:"config.apply",class:"dual",domain:"lifecycle"},{key:"environment.create",class:"dual",domain:"environments"},{key:"environment.update",class:"dual",domain:"environments"},{key:"environment.delete",class:"dual",domain:"environments"},{key:"environment.read",class:"dual",domain:"environments"}];var Q={VALIDATION_ERROR:"VALIDATION_ERROR",CONFLICT:"CONFLICT",NOT_FOUND:"NOT_FOUND",NOT_IMPLEMENTED:"NOT_IMPLEMENTED",NOT_CONFIGURED:"NOT_CONFIGURED",INTERNAL_ERROR:"INTERNAL_ERROR",SERVICE_UNAVAILABLE:"SERVICE_UNAVAILABLE",RATE_LIMIT_EXCEEDED:"RATE_LIMIT_EXCEEDED",DELETE_CONFIRMATION_REQUIRED:"DELETE_CONFIRMATION_REQUIRED",MISSING_HOST:"MISSING_HOST",MISSING_CONNECTIONS:"MISSING_CONNECTIONS",SECRET_NOT_CONFIGURED:"SECRET_NOT_CONFIGURED",UNAUTHORIZED:"UNAUTHORIZED",FORBIDDEN:"FORBIDDEN",INVALID_ACCESS_KEY:"INVALID_ACCESS_KEY",AUTO_KEY_CREATION_FAILED:"AUTO_KEY_CREATION_FAILED",PERSONA_NOT_FOUND:"PERSONA_NOT_FOUND",PERSONA_REVOKED:"PERSONA_REVOKED",PERSONA_SESSIONS_NOT_SUPPORTED:"PERSONA_SESSIONS_NOT_SUPPORTED",NOT_TEST_PERSONA_ENV:"NOT_TEST_PERSONA_ENV",PERSONA_AUTH_DISABLED_IN_PROD:"PERSONA_AUTH_DISABLED_IN_PROD",MAKER_TOKEN_NOT_FOUND:"MAKER_TOKEN_NOT_FOUND",MAKER_TOKEN_NOT_REVOKED:"MAKER_TOKEN_NOT_REVOKED",MAKER_TOKEN_NO_PRODUCT:"MAKER_TOKEN_NO_PRODUCT",MAKER_TOKEN_REVOKED:"MAKER_TOKEN_REVOKED",ORGANIZATION_NOT_FOUND:"ORGANIZATION_NOT_FOUND",ORG_HAS_ACTIVE_SUBSCRIPTIONS:"ORG_HAS_ACTIVE_SUBSCRIPTIONS",ORG_HAS_OUTSTANDING_BALANCE:"ORG_HAS_OUTSTANDING_BALANCE",PERSONAL_ORG_NOT_DELETABLE:"PERSONAL_ORG_NOT_DELETABLE",PERSONAL_OWNER_IMMUTABLE:"PERSONAL_OWNER_IMMUTABLE",PERSONAL_CO_OWNER_NOT_ALLOWED:"PERSONAL_CO_OWNER_NOT_ALLOWED",PRIMARY_OWNER_TRANSFER_REQUIRED:"PRIMARY_OWNER_TRANSFER_REQUIRED",MEMBER_NOT_FOUND:"MEMBER_NOT_FOUND",INVITATION_NOT_FOUND:"INVITATION_NOT_FOUND",RBAC_REQUIRES_TEAM_ORG:"RBAC_REQUIRES_TEAM_ORG",RBAC_NOT_ENABLED_BY_PRODUCT:"RBAC_NOT_ENABLED_BY_PRODUCT",UNKNOWN_PERMISSION:"UNKNOWN_PERMISSION",CUSTOMER_NOT_FOUND:"CUSTOMER_NOT_FOUND",PRODUCT_NOT_FOUND:"PRODUCT_NOT_FOUND",PRODUCT_DELETE_BLOCKED:"PRODUCT_DELETE_BLOCKED",PRODUCT_REPO_NOT_LINKED:"PRODUCT_REPO_NOT_LINKED",PRODUCT_SCOPE_MISMATCH:"PRODUCT_SCOPE_MISMATCH",YAML_PARSE_ERROR:"YAML_PARSE_ERROR",COMPILATION_NOT_FOUND:"COMPILATION_NOT_FOUND",PLAN_NOT_FOUND:"PLAN_NOT_FOUND",PLAN_HAS_ACTIVE_SUBSCRIPTIONS:"PLAN_HAS_ACTIVE_SUBSCRIPTIONS",PLAN_SLUG_CONFLICT:"PLAN_SLUG_CONFLICT",PLAN_REQUIRED:"PLAN_REQUIRED",PLAN_UPGRADE_REQUIRED:"PLAN_UPGRADE_REQUIRED",PLAN_OFFER_CHANGED:"PLAN_OFFER_CHANGED",SLUG_CONFLICT:"SLUG_CONFLICT",SLUG_BLOCKED:"SLUG_BLOCKED",SLUG_OFFENSIVE:"SLUG_OFFENSIVE",SLUG_RESERVED:"SLUG_RESERVED",SLUG_IMPERSONATION:"SLUG_IMPERSONATION",SLUG_INVALID_FORMAT:"SLUG_INVALID_FORMAT",SLUG_VALIDATOR_NOT_READY:"SLUG_VALIDATOR_NOT_READY",PRICING_PREVIEW_FAILED:"PRICING_PREVIEW_FAILED",PRICING_REPLAY_FAILED:"PRICING_REPLAY_FAILED",RESERVATION_NOT_FOUND:"RESERVATION_NOT_FOUND",PROMO_CODE_NOT_FOUND:"PROMO_CODE_NOT_FOUND",PROMO_CODE_INVALID:"PROMO_CODE_INVALID",BILLING_EVENT_NOT_FOUND:"BILLING_EVENT_NOT_FOUND",BILLING_NOT_CONFIGURED:"BILLING_NOT_CONFIGURED",SUBSCRIPTION_NOT_READY:"SUBSCRIPTION_NOT_READY",SUBSCRIPTION_FETCH_FAILED:"SUBSCRIPTION_FETCH_FAILED",INVALID_STATE:"INVALID_STATE",DUPLICATE_TRANSITION:"DUPLICATE_TRANSITION",ARCHIVED_TARGET:"ARCHIVED_TARGET",FREE_TO_PAID_VIA_CHECKOUT_ONLY:"FREE_TO_PAID_VIA_CHECKOUT_ONLY",RESOURCE_LIMIT_EXCEEDED:"RESOURCE_LIMIT_EXCEEDED",RESOURCE_LIMIT_CHECK_UNAVAILABLE:"RESOURCE_LIMIT_CHECK_UNAVAILABLE",STRIPE_NOT_CONFIGURED:"STRIPE_NOT_CONFIGURED",STRIPE_BALANCE_OUTSTANDING:"STRIPE_BALANCE_OUTSTANDING",STRIPE_OPERATION_FAILED:"STRIPE_OPERATION_FAILED",STRIPE_RESYNC_FAILED:"STRIPE_RESYNC_FAILED",CHECKOUT_SESSION_FAILED:"CHECKOUT_SESSION_FAILED",POLAR_PRODUCT_NOT_CONFIGURED:"POLAR_PRODUCT_NOT_CONFIGURED",BILLING_TAX_NOT_ENROLLED:"BILLING_TAX_NOT_ENROLLED",WEBHOOK_NOT_FOUND:"WEBHOOK_NOT_FOUND",WEBHOOK_DISPATCH_FAILED:"WEBHOOK_DISPATCH_FAILED",WEBHOOK_SECRET_NOT_CONFIGURED:"WEBHOOK_SECRET_NOT_CONFIGURED",INVALID_WEBHOOK_SIGNATURE:"INVALID_WEBHOOK_SIGNATURE",MISSING_RAW_BODY:"MISSING_RAW_BODY",WEBHOOK_REDIRECTED:"WEBHOOK_REDIRECTED",MANAGED_BY_CODE:"MANAGED_BY_CODE",GITHUB_CONNECTION_NOT_FOUND:"GITHUB_CONNECTION_NOT_FOUND",GITHUB_NOT_CONNECTED:"GITHUB_NOT_CONNECTED",GITHUB_SYNC_FAILED:"GITHUB_SYNC_FAILED",GITHUB_SYNC_UNAVAILABLE:"GITHUB_SYNC_UNAVAILABLE",GITHUB_TOKEN_FAILED:"GITHUB_TOKEN_FAILED",GIT_PROVIDER_NOT_CONFIGURED:"GIT_PROVIDER_NOT_CONFIGURED",ENVIRONMENT_NOT_FOUND:"ENVIRONMENT_NOT_FOUND",ENVIRONMENT_CLEANUP_FAILED:"ENVIRONMENT_CLEANUP_FAILED",DEPLOYMENT_RUN_NOT_FOUND:"DEPLOYMENT_RUN_NOT_FOUND",BRANCH_NO_MATCHING_ENV:"BRANCH_NO_MATCHING_ENV",APPLY_SPEC_FAILED:"APPLY_SPEC_FAILED",BOOTSTRAP_FAILED:"BOOTSTRAP_FAILED",JOB_ALREADY_RUNNING:"JOB_ALREADY_RUNNING",LOGO_DELETE_FAILED:"LOGO_DELETE_FAILED",LOGO_UPLOAD_FAILED:"LOGO_UPLOAD_FAILED",INVALID_LOGO_FORMAT:"INVALID_LOGO_FORMAT",CHANGE_SET_STALE:"CHANGE_SET_STALE",SIMULATION_STALE:"SIMULATION_STALE",IDEMPOTENCY_KEY_REUSED:"IDEMPOTENCY_KEY_REUSED",SELF_APPROVAL_FORBIDDEN:"SELF_APPROVAL_FORBIDDEN",HUMAN_APPROVAL_REQUIRED:"HUMAN_APPROVAL_REQUIRED",GOVERNED_BY_CHANGE_SET:"GOVERNED_BY_CHANGE_SET",COMPENSATION_REQUIRED:"COMPENSATION_REQUIRED",MIGRATION_TOO_LARGE:"MIGRATION_TOO_LARGE"};var Oz={missing_token:Q.UNAUTHORIZED,invalid_token:Q.UNAUTHORIZED,context_unverified:Q.UNAUTHORIZED,missing_signature:Q.UNAUTHORIZED,malformed_signature:Q.UNAUTHORIZED,unknown_key_id:Q.UNAUTHORIZED,bad_signature:Q.UNAUTHORIZED,expired_signature:Q.UNAUTHORIZED,clock_skew:Q.UNAUTHORIZED,replayed_nonce:Q.UNAUTHORIZED,body_hash_mismatch:Q.UNAUTHORIZED,route_mismatch:Q.UNAUTHORIZED,environment_mismatch:Q.UNAUTHORIZED,jwks_unavailable:Q.SERVICE_UNAVAILABLE,body_too_large:Q.VALIDATION_ERROR,member_subject_required:Q.FORBIDDEN,service_subject_required:Q.FORBIDDEN,surface_not_allowed:Q.FORBIDDEN};var Tz=Object.values(tb);var V={BATCHER_ENUM:"batcher-enum",RUNTIME_INLINE:"runtime-inline",CONSTRAINT:"constraint",GATEWAY_ERROR:"gateway-error"};var Rv={limit_allocator_unavailable:{statuses:[503],source:V.BATCHER_ENUM,retryAfter:!0,verifiedAt:["engine/enforcement/runtime.ts:471"]},limit_exceeded:{statuses:[402],source:V.BATCHER_ENUM,retryAfter:!0,verifiedAt:["engine/enforcement/batcher.ts:326","engine/enforcement/constraints/quota.ts:69"]},rate_limited:{statuses:[429],source:V.BATCHER_ENUM,retryAfter:!0,verifiedAt:["engine/enforcement/batcher.ts:328","engine/enforcement/constraints/rate-limit.ts:74","engine/pipeline/rate-limit.ts:83"]},credit_exhausted:{statuses:[402],source:V.BATCHER_ENUM,retryAfter:!0,verifiedAt:["engine/enforcement/batcher.ts:333"]},enforcement_denied:{statuses:[402],source:V.BATCHER_ENUM,retryAfter:!0,verifiedAt:["engine/enforcement/batcher.ts:335"]},invalid_entitlement_shape:{statuses:[503],source:V.RUNTIME_INLINE,retryAfter:!0,verifiedAt:["engine/enforcement/runtime.ts:144"]},unsupported_constraint_schema:{statuses:[503],source:V.RUNTIME_INLINE,retryAfter:!1,verifiedAt:["engine/enforcement/runtime.ts:154"]},enforcement_error:{statuses:[500],source:V.RUNTIME_INLINE,retryAfter:!1,verifiedAt:["engine/enforcement/runtime.ts:342"]},enforcement_dependency_unavailable:{statuses:[503],source:V.RUNTIME_INLINE,retryAfter:!1,verifiedAt:["engine/enforcement/runtime.ts:427"]},concurrency_limit_exceeded:{statuses:[429],source:V.CONSTRAINT,retryAfter:!0,verifiedAt:["engine/enforcement/constraints/concurrency.ts"]},concurrency_context_unavailable:{statuses:[503],source:V.CONSTRAINT,retryAfter:!0,verifiedAt:["engine/enforcement/constraints/concurrency.ts:291"]},concurrency_coordinator_unavailable:{statuses:[503],source:V.CONSTRAINT,retryAfter:!0,verifiedAt:["engine/enforcement/constraints/concurrency.ts:305"]},key_expired:{statuses:[401],source:V.CONSTRAINT,retryAfter:!1,verifiedAt:["engine/enforcement/constraints/credential-validity.ts:33"]},permission_denied:{statuses:[403],source:V.CONSTRAINT,retryAfter:!1,verifiedAt:["engine/enforcement/constraints/permission.ts:63"]},permission_unresolved:{statuses:[403],source:V.CONSTRAINT,retryAfter:!1,verifiedAt:["engine/enforcement/constraints/permission.ts"]},route_not_enabled:{statuses:[403],source:V.RUNTIME_INLINE,retryAfter:!1,verifiedAt:["engine/pipeline/pre-vec-costs.ts"]},geo_context_unavailable:{statuses:[503],source:V.CONSTRAINT,retryAfter:!0,verifiedAt:["engine/enforcement/constraints/geo-restriction.ts:44"]},geo_blocked:{statuses:[403],source:V.CONSTRAINT,retryAfter:!1,verifiedAt:["engine/enforcement/constraints/geo-restriction.ts:51"]},geo_not_allowed:{statuses:[403],source:V.CONSTRAINT,retryAfter:!1,verifiedAt:["engine/enforcement/constraints/geo-restriction.ts:58"]},resource_count_limit_exceeded:{statuses:[402],source:V.GATEWAY_ERROR,retryAfter:!1,verifiedAt:["apps/core:routes/internal/gateway-resources.ts:144"]},post_stream_overspend:{statuses:[402],source:V.CONSTRAINT,retryAfter:!0,verifiedAt:["engine/enforcement/constraints/lifecycle-block.ts"]},request_too_large:{statuses:[413],source:V.CONSTRAINT,retryAfter:!1,verifiedAt:["engine/enforcement/constraints/capacity.ts"]},resolver_rate_limited:{statuses:[503],source:V.GATEWAY_ERROR,retryAfter:!0,verifiedAt:["engine/errors.ts:55"]},resolver_unavailable:{statuses:[503],source:V.GATEWAY_ERROR,retryAfter:!0,verifiedAt:["engine/errors.ts:73"]},credential_resolver_miss_rate_limited:{statuses:[429],source:V.GATEWAY_ERROR,retryAfter:!0,verifiedAt:["engine/errors.ts:89"]},provider_throttled:{statuses:[503],source:V.GATEWAY_ERROR,retryAfter:!0,verifiedAt:["engine/pipeline/provider-adapter.ts"]}},pw=Object.keys(Rv);var mw=new Set([429,503]),Az=new Set(pw.filter(t=>Rv[t].statuses.every(e=>mw.has(e))));var fw=["quota","rate","concurrency","capacity","spend","adaptive"],Pz=new Set(fw);var gw=[402,403,413,429],Dz=new Set(gw);var hw=s.enum(["create","delete"]),bw=s.enum(["RESERVED","COMMITTED","RELEASED","DENIED"]),vw=s.object({mutationId:s.string().min(1).max(200),requestId:s.string().min(1).max(200),businessId:s.string().min(1).max(200),subscriptionId:s.string().min(1).max(200),compiledPlanId:s.string().min(1).max(200),actionId:s.string().min(1).max(160),environmentId:s.string().min(1).max(200).nullable(),subjectId:s.string().min(1).max(200).optional()}).strict();var qz=vw.extend({statusCode:s.number().int().min(100).max(599)}).strict(),Jz=s.object({mutationId:s.string().min(1).max(200),resource:s.string().min(1).max(120),effect:hw,state:bw,count:s.number().int().nonnegative(),limit:s.number().int().nonnegative().nullable(),replayed:s.boolean()}).strict(),Yz=s.object({error:s.object({code:s.literal("resource_count_limit_exceeded"),message:s.string(),limitCode:s.string(),dimension:s.string(),currentCapacity:s.number().int().nonnegative()}).strict()}).strict();var To=s.string().min(1).max(128).regex(/^[A-Za-z0-9._:-]+$/),Av=s.object({businessId:To,environmentId:To.nullable(),secretName:s.string().min(1).max(128).regex(/^[A-Z][A-Z0-9_]*$/)}).strict();var cp=s.object({scope:Av,mutationId:To,expectedGeneration:s.number().int().positive().nullable()}),_w=cp.extend({mutation:s.literal("publish"),generation:s.number().int().positive(),payloadHash:s.string().regex(/^[a-f0-9]{64}$/),sealedPayload:s.string().min(1).max(131072)}).strict(),yw=cp.extend({mutation:s.literal("rotate"),generation:s.number().int().positive(),payloadHash:s.string().regex(/^[a-f0-9]{64}$/),sealedPayload:s.string().min(1).max(131072)}).strict(),kw=cp.extend({mutation:s.enum(["revoke","delete"]),generation:s.number().int().positive(),payloadHash:s.string().regex(/^[a-f0-9]{64}$/)}).strict(),xw=s.discriminatedUnion("mutation",[_w,yw,kw]),ej=s.object({keyId:To,signature:s.string().regex(/^[a-f0-9]{64}$/),command:xw}).strict(),tj=s.discriminatedUnion("available",[s.object({available:s.literal(!0),scope:Av,generation:s.number().int().positive(),payloadHash:s.string().regex(/^[a-f0-9]{64}$/),sealedPayload:s.string().min(1).max(131072),status:s.literal("ACTIVE")}).strict(),s.object({available:s.literal(!1),generation:s.number().int().positive().nullable(),payloadHash:s.string().regex(/^[a-f0-9]{64}$/).nullable(),status:s.enum(["MISSING","PENDING","REVOKING","REVOKED","DELETED"])}).strict()]);var Iw={MANAGED_BY_CODE:"This business's contract is managed as code. Edit the Business SDK program in its GitHub repo (business/) and push \u2014 do NOT retry the API. (Branding stays editable via `farthershore business update`.)",UNAUTHORIZED:"Token is invalid or revoked. Run `farthershore auth login` to update it.",FORBIDDEN:"Your token doesn't have access to this resource. Check the org / business scope.",INVALID_ACCESS_KEY:"Token format is wrong. Generate a new one at https://farthershore.com/settings/tokens.",MAKER_TOKEN_REVOKED:"This maker token was revoked. Mint a new one in the business settings.",MAKER_TOKEN_NO_BUSINESS:"Maker token is not bound to a business. Re-create it from the business page.",AUTH_NO_TOKEN:"Pass --token <mk_...> or set FARTHERSHORE_TOKEN, or run interactively in a TTY.",AUTH_INVALID_TOKEN:"Token format is malformed. Maker tokens start with `mk_` and are 30+ characters.",DESTRUCTIVE_OP_REQUIRES_YES:"Destructive ops (delete) require an explicit `--yes` to proceed. This is intentional safety.",BUSINESS_UPDATE_NO_FIELDS:"Pass at least one field flag (--display-name, --origin, --description).",PLAN_UPDATE_NO_FIELDS:"Pass at least one of --name, --recurring-fee-cents, --grant, --trial-days, --max-monthly-spend-cents, or --meter.",ENV_NOT_FOUND:"Environment doesn't exist. Use `farthershore env list <business>` to see available envs, or create one with `farthershore env create`.",STRIPE_NOT_CONFIGURED:"Stripe isn't connected on this business. Connect it in the dashboard before running billing operations.",STRIPE_NOT_CONNECTED:"Publishing requires a connected Stripe account. Connect one on the dashboard Connections page, then re-run `farthershore business publish`.",STRIPE_NOT_VERIFIED:"Your Stripe account isn't fully verified yet. Finish Stripe onboarding, then re-run `farthershore business publish`.",BILLING_TAX_NOT_ENROLLED:"Stripe Tax isn't enrolled for this account. Enable it from the dashboard Connections page, then re-run `farthershore business publish`.",STRIPE_BALANCE_OUTSTANDING:"Customer has an outstanding balance. Resolve the invoice in Stripe before retrying.",CHECKOUT_SESSION_FAILED:"Stripe rejected the checkout request. Check that the plan exists and Stripe credentials are valid.",BUSINESS_NOT_FOUND:"Check the business slug. Run `farthershore` (no args) for a list of businesses you can see.",BUSINESS_REPO_NOT_LINKED:"Link a GitHub repo to this business before publishing or validating business manifests.",YAML_PARSE_ERROR:"Business manifest is not valid. Run `farthershore build` locally, fix business/ source, then push again for bot validation.",GITHUB_NOT_CONNECTED:"Connect GitHub on the org page before running `init` (it provisions the repo).",BRANCH_NO_MATCHING_ENV:"The current branch isn't mapped to an environment. Add a branch rule in business settings or pass --branch explicitly.",PLAN_NOT_FOUND:"Plan key doesn't exist on this business. Check the `plans` block in your local business manifest.",PLAN_HAS_ACTIVE_SUBSCRIPTIONS:"Plan has active subscribers and can't be deleted. Migrate them to another plan first.",PLAN_SLUG_CONFLICT:"Another plan already uses this key. Pick a unique plan key in your manifest.",SLUG_CONFLICT:"This business slug is taken. Pick a different name.",SLUG_BLOCKED:"This slug is reserved or blocked. Pick a different name.",SLUG_RESERVED:"This slug is reserved by Farther Shore. Pick a different name.",SLUG_INVALID_FORMAT:"Slug must be lowercase letters, digits, and hyphens (no leading/trailing hyphen).",DECISION_NOT_FOUND:"No DenialEvent recorded for that decisionId. Verify the id from the original deny response or audit log.",AUTH_UNAUTHORIZED:"Token is missing, expired, or lacks the audit:read scope required to read denial events.",RATE_LIMIT_EXCEEDED:"You've hit the rate limit. Wait a moment and retry.",VALIDATION_ERROR:"Request is malformed. The `details` field has the field-level errors.",CONFLICT:"The resource is in a state that conflicts with the request. Inspect `details` to learn more."};function lp(t){if(t)return Iw[t]}function Pv(t){process.stdout.write(`${JSON.stringify(t,null,2)}
98
- `)}function Sw(t,e){return{schema_version:1,ok:!0,op:t,data:e}}function Ew(t,e){let r=e.status??0;return{schema_version:1,ok:!1,op:t,error:{code:e.code??"INTERNAL_ERROR",message:e.message,status:r,param:e.param,retryable:Ow(r,e.code),details:e.details,hint:lp(e.code)}}}function j(t,e,r=Uv()){if(te()==="json"){Pv(Sw(r,t));return}e&&Km(e)}function ww(t){return t===0?1:t===400||t===422?2:t===401||t===403?3:t===409?4:t>=500?5:1}var $w=new Set(["RATE_LIMIT_EXCEEDED","SERVICE_UNAVAILABLE"]);function Ow(t,e){return t>=500||t===429||t===503?!0:e?$w.has(e):!1}function up(t,e=Uv()){let r=t.status??0;if(te()==="json")Pv(Ew(e,t));else{let i=lp(t.code),n=t.code?` [${t.code}]`:"";process.stderr.write(`Error${n}: ${t.message}
98
+ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let a of t.seen.entries()){let c=a[1];if(e===a[0]){o(a);continue}if(t.external){let d=t.external.registry.get(a[0])?.id;if(e!==a[0]&&d){o(a);continue}}if(t.metadataRegistry.get(a[0])?.id){o(a);continue}if(c.cycle){o(a);continue}if(c.count>1&&t.reused==="ref"){o(a);continue}}}function Ye(t,e){let r=t.seen.get(e);if(!r)throw new Error("Unprocessed schema. This is a bug in Zod.");let i=c=>{let l=t.seen.get(c);if(l.ref===null)return;let d=l.def??l.schema,u={...d},p=l.ref;if(l.ref=null,p){i(p);let f=t.seen.get(p),v=f.schema;if(v.$ref&&(t.target==="draft-07"||t.target==="draft-04"||t.target==="openapi-3.0")?(d.allOf=d.allOf??[],d.allOf.push(v)):Object.assign(d,v),Object.assign(d,u),c._zod.parent===p)for(let E in d)E==="$ref"||E==="allOf"||E in u||delete d[E];if(v.$ref&&f.def)for(let E in d)E==="$ref"||E==="allOf"||E in f.def&&JSON.stringify(d[E])===JSON.stringify(f.def[E])&&delete d[E]}let m=c._zod.parent;if(m&&m!==p){i(m);let f=t.seen.get(m);if(f?.schema.$ref&&(d.$ref=f.schema.$ref,f.def))for(let v in d)v==="$ref"||v==="allOf"||v in f.def&&JSON.stringify(d[v])===JSON.stringify(f.def[v])&&delete d[v]}t.override({zodSchema:c,jsonSchema:d,path:l.path??[]})};for(let c of[...t.seen.entries()].reverse())i(c[0]);let n={};if(t.target==="draft-2020-12"?n.$schema="https://json-schema.org/draft/2020-12/schema":t.target==="draft-07"?n.$schema="http://json-schema.org/draft-07/schema#":t.target==="draft-04"?n.$schema="http://json-schema.org/draft-04/schema#":t.target,t.external?.uri){let c=t.external.registry.get(e)?.id;if(!c)throw new Error("Schema is missing an `id` property");n.$id=t.external.uri(c)}Object.assign(n,r.def??r.schema);let o=t.metadataRegistry.get(e)?.id;o!==void 0&&n.id===o&&delete n.id;let a=t.external?.defs??{};for(let c of t.seen.entries()){let l=c[1];l.def&&l.defId&&(l.def.id===l.defId&&delete l.def.id,a[l.defId]=l.def)}t.external||Object.keys(a).length>0&&(t.target==="draft-2020-12"?n.$defs=a:n.definitions=a);try{let c=JSON.parse(JSON.stringify(n));return Object.defineProperty(c,"~standard",{value:{...e["~standard"],jsonSchema:{input:qt(e,"input",t.processors),output:qt(e,"output",t.processors)}},enumerable:!1,writable:!1}),c}catch{throw new Error("Error converting schema to JSON.")}}function ce(t,e){let r=e??{seen:new Set};if(r.seen.has(t))return!1;r.seen.add(t);let i=t._zod.def;if(i.type==="transform")return!0;if(i.type==="array")return ce(i.element,r);if(i.type==="set")return ce(i.valueType,r);if(i.type==="lazy")return ce(i.getter(),r);if(i.type==="promise"||i.type==="optional"||i.type==="nonoptional"||i.type==="nullable"||i.type==="readonly"||i.type==="default"||i.type==="prefault")return ce(i.innerType,r);if(i.type==="intersection")return ce(i.left,r)||ce(i.right,r);if(i.type==="record"||i.type==="map")return ce(i.keyType,r)||ce(i.valueType,r);if(i.type==="pipe")return t._zod.traits.has("$ZodCodec")?!0:ce(i.in,r)||ce(i.out,r);if(i.type==="object"){for(let n in i.shape)if(ce(i.shape[n],r))return!0;return!1}if(i.type==="union"){for(let n of i.options)if(ce(n,r))return!0;return!1}if(i.type==="tuple"){for(let n of i.items)if(ce(n,r))return!0;return!!(i.rest&&ce(i.rest,r))}return!1}var du=(t,e={})=>r=>{let i=qe({...r,processors:e});return j(t,i),Je(i,t),Ye(i,t)},qt=(t,e,r={})=>i=>{let{libraryOptions:n,target:o}=i??{},a=qe({...n??{},target:o,io:e,processors:r});return j(t,a),Je(a,t),Ye(a,t)};var WS={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},pu=(t,e,r,i)=>{let n=r;n.type="string";let{minimum:o,maximum:a,format:c,patterns:l,contentEncoding:d}=t._zod.bag;if(typeof o=="number"&&(n.minLength=o),typeof a=="number"&&(n.maxLength=a),c&&(n.format=WS[c]??c,n.format===""&&delete n.format,c==="time"&&delete n.format),d&&(n.contentEncoding=d),l&&l.size>0){let u=[...l];u.length===1?n.pattern=u[0].source:u.length>1&&(n.allOf=[...u.map(p=>({...e.target==="draft-07"||e.target==="draft-04"||e.target==="openapi-3.0"?{type:"string"}:{},pattern:p.source}))])}},mu=(t,e,r,i)=>{let n=r,{minimum:o,maximum:a,format:c,multipleOf:l,exclusiveMaximum:d,exclusiveMinimum:u}=t._zod.bag;typeof c=="string"&&c.includes("int")?n.type="integer":n.type="number";let p=typeof u=="number"&&u>=(o??Number.NEGATIVE_INFINITY),m=typeof d=="number"&&d<=(a??Number.POSITIVE_INFINITY),f=e.target==="draft-04"||e.target==="openapi-3.0";p?f?(n.minimum=u,n.exclusiveMinimum=!0):n.exclusiveMinimum=u:typeof o=="number"&&(n.minimum=o),m?f?(n.maximum=d,n.exclusiveMaximum=!0):n.exclusiveMaximum=d:typeof a=="number"&&(n.maximum=a),typeof l=="number"&&(n.multipleOf=l)},fu=(t,e,r,i)=>{r.type="boolean"},gu=(t,e,r,i)=>{if(e.unrepresentable==="throw")throw new Error("BigInt cannot be represented in JSON Schema")},hu=(t,e,r,i)=>{if(e.unrepresentable==="throw")throw new Error("Symbols cannot be represented in JSON Schema")},bu=(t,e,r,i)=>{e.target==="openapi-3.0"?(r.type="string",r.nullable=!0,r.enum=[null]):r.type="null"},vu=(t,e,r,i)=>{if(e.unrepresentable==="throw")throw new Error("Undefined cannot be represented in JSON Schema")},_u=(t,e,r,i)=>{if(e.unrepresentable==="throw")throw new Error("Void cannot be represented in JSON Schema")},yu=(t,e,r,i)=>{r.not={}},ku=(t,e,r,i)=>{},xu=(t,e,r,i)=>{},Iu=(t,e,r,i)=>{if(e.unrepresentable==="throw")throw new Error("Date cannot be represented in JSON Schema")},Su=(t,e,r,i)=>{let n=t._zod.def,o=jn(n.entries);o.every(a=>typeof a=="number")&&(r.type="number"),o.every(a=>typeof a=="string")&&(r.type="string"),r.enum=o},Eu=(t,e,r,i)=>{let n=t._zod.def,o=[];for(let a of n.values)if(a===void 0){if(e.unrepresentable==="throw")throw new Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof a=="bigint"){if(e.unrepresentable==="throw")throw new Error("BigInt literals cannot be represented in JSON Schema");o.push(Number(a))}else o.push(a);if(o.length!==0)if(o.length===1){let a=o[0];r.type=a===null?"null":typeof a,e.target==="draft-04"||e.target==="openapi-3.0"?r.enum=[a]:r.const=a}else o.every(a=>typeof a=="number")&&(r.type="number"),o.every(a=>typeof a=="string")&&(r.type="string"),o.every(a=>typeof a=="boolean")&&(r.type="boolean"),o.every(a=>a===null)&&(r.type="null"),r.enum=o},wu=(t,e,r,i)=>{if(e.unrepresentable==="throw")throw new Error("NaN cannot be represented in JSON Schema")},$u=(t,e,r,i)=>{let n=r,o=t._zod.pattern;if(!o)throw new Error("Pattern not found in template literal");n.type="string",n.pattern=o.source},Ou=(t,e,r,i)=>{let n=r,o={type:"string",format:"binary",contentEncoding:"binary"},{minimum:a,maximum:c,mime:l}=t._zod.bag;a!==void 0&&(o.minLength=a),c!==void 0&&(o.maxLength=c),l?l.length===1?(o.contentMediaType=l[0],Object.assign(n,o)):(Object.assign(n,o),n.anyOf=l.map(d=>({contentMediaType:d}))):Object.assign(n,o)},Tu=(t,e,r,i)=>{r.type="boolean"},Au=(t,e,r,i)=>{if(e.unrepresentable==="throw")throw new Error("Custom types cannot be represented in JSON Schema")},Ru=(t,e,r,i)=>{if(e.unrepresentable==="throw")throw new Error("Function types cannot be represented in JSON Schema")},Cu=(t,e,r,i)=>{if(e.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema")},Pu=(t,e,r,i)=>{if(e.unrepresentable==="throw")throw new Error("Map cannot be represented in JSON Schema")},Nu=(t,e,r,i)=>{if(e.unrepresentable==="throw")throw new Error("Set cannot be represented in JSON Schema")},Du=(t,e,r,i)=>{let n=r,o=t._zod.def,{minimum:a,maximum:c}=t._zod.bag;typeof a=="number"&&(n.minItems=a),typeof c=="number"&&(n.maxItems=c),n.type="array",n.items=j(o.element,e,{...i,path:[...i.path,"items"]})},Uu=(t,e,r,i)=>{let n=r,o=t._zod.def;n.type="object",n.properties={};let a=o.shape;for(let d in a)n.properties[d]=j(a[d],e,{...i,path:[...i.path,"properties",d]});let c=new Set(Object.keys(a)),l=new Set([...c].filter(d=>{let u=o.shape[d]._zod;return e.io==="input"?u.optin===void 0:u.optout===void 0}));l.size>0&&(n.required=Array.from(l)),o.catchall?._zod.def.type==="never"?n.additionalProperties=!1:o.catchall?o.catchall&&(n.additionalProperties=j(o.catchall,e,{...i,path:[...i.path,"additionalProperties"]})):e.io==="output"&&(n.additionalProperties=!1)},oo=(t,e,r,i)=>{let n=t._zod.def,o=n.inclusive===!1,a=n.options.map((c,l)=>j(c,e,{...i,path:[...i.path,o?"oneOf":"anyOf",l]}));o?r.oneOf=a:r.anyOf=a},zu=(t,e,r,i)=>{let n=t._zod.def,o=j(n.left,e,{...i,path:[...i.path,"allOf",0]}),a=j(n.right,e,{...i,path:[...i.path,"allOf",1]}),c=d=>"allOf"in d&&Object.keys(d).length===1,l=[...c(o)?o.allOf:[o],...c(a)?a.allOf:[a]];r.allOf=l},ju=(t,e,r,i)=>{let n=r,o=t._zod.def;n.type="array";let a=e.target==="draft-2020-12"?"prefixItems":"items",c=e.target==="draft-2020-12"||e.target==="openapi-3.0"?"items":"additionalItems",l=o.items.map((m,f)=>j(m,e,{...i,path:[...i.path,a,f]})),d=o.rest?j(o.rest,e,{...i,path:[...i.path,c,...e.target==="openapi-3.0"?[o.items.length]:[]]}):null;e.target==="draft-2020-12"?(n.prefixItems=l,d&&(n.items=d)):e.target==="openapi-3.0"?(n.items={anyOf:l},d&&n.items.anyOf.push(d),n.minItems=l.length,d||(n.maxItems=l.length)):(n.items=l,d&&(n.additionalItems=d));let{minimum:u,maximum:p}=t._zod.bag;typeof u=="number"&&(n.minItems=u),typeof p=="number"&&(n.maxItems=p)},Lu=(t,e,r,i)=>{let n=r,o=t._zod.def;n.type="object";let a=o.keyType,l=a._zod.bag?.patterns;if(o.mode==="loose"&&l&&l.size>0){let u=j(o.valueType,e,{...i,path:[...i.path,"patternProperties","*"]});n.patternProperties={};for(let p of l)n.patternProperties[p.source]=u}else(e.target==="draft-07"||e.target==="draft-2020-12")&&(n.propertyNames=j(o.keyType,e,{...i,path:[...i.path,"propertyNames"]})),n.additionalProperties=j(o.valueType,e,{...i,path:[...i.path,"additionalProperties"]});let d=a._zod.values;if(d){let u=[...d].filter(p=>typeof p=="string"||typeof p=="number");u.length>0&&(n.required=u)}},Mu=(t,e,r,i)=>{let n=t._zod.def,o=j(n.innerType,e,i),a=e.seen.get(t);e.target==="openapi-3.0"?(a.ref=n.innerType,r.nullable=!0):r.anyOf=[o,{type:"null"}]},Bu=(t,e,r,i)=>{let n=t._zod.def;j(n.innerType,e,i);let o=e.seen.get(t);o.ref=n.innerType},Fu=(t,e,r,i)=>{let n=t._zod.def;j(n.innerType,e,i);let o=e.seen.get(t);o.ref=n.innerType,r.default=JSON.parse(JSON.stringify(n.defaultValue))},Hu=(t,e,r,i)=>{let n=t._zod.def;j(n.innerType,e,i);let o=e.seen.get(t);o.ref=n.innerType,e.io==="input"&&(r._prefault=JSON.parse(JSON.stringify(n.defaultValue)))},Vu=(t,e,r,i)=>{let n=t._zod.def;j(n.innerType,e,i);let o=e.seen.get(t);o.ref=n.innerType;let a;try{a=n.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}r.default=a},Ku=(t,e,r,i)=>{let n=t._zod.def,o=n.in._zod.traits.has("$ZodTransform"),a=e.io==="input"?o?n.out:n.in:n.out;j(a,e,i);let c=e.seen.get(t);c.ref=a},Gu=(t,e,r,i)=>{let n=t._zod.def;j(n.innerType,e,i);let o=e.seen.get(t);o.ref=n.innerType,r.readOnly=!0},Zu=(t,e,r,i)=>{let n=t._zod.def;j(n.innerType,e,i);let o=e.seen.get(t);o.ref=n.innerType},so=(t,e,r,i)=>{let n=t._zod.def;j(n.innerType,e,i);let o=e.seen.get(t);o.ref=n.innerType},Wu=(t,e,r,i)=>{let n=t._zod.innerType;j(n,e,i);let o=e.seen.get(t);o.ref=n},io={string:pu,number:mu,boolean:fu,bigint:gu,symbol:hu,null:bu,undefined:vu,void:_u,never:yu,any:ku,unknown:xu,date:Iu,enum:Su,literal:Eu,nan:wu,template_literal:$u,file:Ou,success:Tu,custom:Au,function:Ru,transform:Cu,map:Pu,set:Nu,array:Du,object:Uu,union:oo,intersection:zu,tuple:ju,record:Lu,nullable:Mu,nonoptional:Bu,default:Fu,prefault:Hu,catch:Vu,pipe:Ku,readonly:Gu,promise:Zu,optional:so,lazy:Wu};function ao(t,e){if("_idmap"in t){let i=t,n=qe({...e,processors:io}),o={};for(let l of i._idmap.entries()){let[d,u]=l;j(u,n)}let a={},c={registry:i,uri:e?.uri,defs:o};n.external=c;for(let l of i._idmap.entries()){let[d,u]=l;Je(n,u),a[d]=Ye(n,u)}if(Object.keys(o).length>0){let l=n.target==="draft-2020-12"?"$defs":"definitions";a.__shared={[l]:o}}return{schemas:a}}let r=qe({...e,processors:io});return j(t,r),Je(r,t),Ye(r,t)}var co=class{get metadataRegistry(){return this.ctx.metadataRegistry}get target(){return this.ctx.target}get unrepresentable(){return this.ctx.unrepresentable}get override(){return this.ctx.override}get io(){return this.ctx.io}get counter(){return this.ctx.counter}set counter(e){this.ctx.counter=e}get seen(){return this.ctx.seen}constructor(e){let r=e?.target??"draft-2020-12";r==="draft-4"&&(r="draft-04"),r==="draft-7"&&(r="draft-07"),this.ctx=qe({processors:io,target:r,...e?.metadata&&{metadata:e.metadata},...e?.unrepresentable&&{unrepresentable:e.unrepresentable},...e?.override&&{override:e.override},...e?.io&&{io:e.io}})}process(e,r={path:[],schemaPath:[]}){return j(e,this.ctx,r)}emit(e,r){r&&(r.cycles&&(this.ctx.cycles=r.cycles),r.reused&&(this.ctx.reused=r.reused),r.external&&(this.ctx.external=r.external)),Je(this.ctx,e);let i=Ye(this.ctx,e),{"~standard":n,...o}=i;return o}};var lh={};var nr={};De(nr,{ZodAny:()=>vd,ZodArray:()=>xd,ZodBase64:()=>Ao,ZodBase64URL:()=>Ro,ZodBigInt:()=>rn,ZodBigIntFormat:()=>No,ZodBoolean:()=>nn,ZodCIDRv4:()=>Oo,ZodCIDRv6:()=>To,ZodCUID:()=>ko,ZodCUID2:()=>xo,ZodCatch:()=>Vd,ZodCodec:()=>fr,ZodCustom:()=>gr,ZodCustomStringFormat:()=>en,ZodDate:()=>lr,ZodDefault:()=>jd,ZodDiscriminatedUnion:()=>Sd,ZodE164:()=>Co,ZodEmail:()=>vo,ZodEmoji:()=>_o,ZodEnum:()=>Xt,ZodExactOptional:()=>Dd,ZodFile:()=>Pd,ZodFunction:()=>ep,ZodGUID:()=>ir,ZodIPv4:()=>wo,ZodIPv6:()=>$o,ZodIntersection:()=>Ed,ZodJWT:()=>Po,ZodKSUID:()=>Eo,ZodLazy:()=>Yd,ZodLiteral:()=>Cd,ZodMAC:()=>dd,ZodMap:()=>Ad,ZodNaN:()=>Gd,ZodNanoID:()=>yo,ZodNever:()=>yd,ZodNonOptional:()=>Mo,ZodNull:()=>hd,ZodNullable:()=>zd,ZodNumber:()=>tn,ZodNumberFormat:()=>ht,ZodObject:()=>dr,ZodOptional:()=>Lo,ZodPipe:()=>mr,ZodPrefault:()=>Md,ZodPreprocess:()=>Zd,ZodPromise:()=>Qd,ZodReadonly:()=>Wd,ZodRecord:()=>Yt,ZodSet:()=>Rd,ZodString:()=>Qt,ZodStringFormat:()=>F,ZodSuccess:()=>Hd,ZodSymbol:()=>fd,ZodTemplateLiteral:()=>Jd,ZodTransform:()=>Nd,ZodTuple:()=>$d,ZodType:()=>O,ZodULID:()=>Io,ZodURL:()=>cr,ZodUUID:()=>Ae,ZodUndefined:()=>gd,ZodUnion:()=>pr,ZodUnknown:()=>_d,ZodVoid:()=>kd,ZodXID:()=>So,ZodXor:()=>Id,_ZodString:()=>bo,_default:()=>Ld,_function:()=>vb,any:()=>qh,array:()=>ur,base64:()=>Ch,base64url:()=>Ph,bigint:()=>Vh,boolean:()=>md,catch:()=>Kd,check:()=>_b,cidrv4:()=>Ah,cidrv6:()=>Rh,codec:()=>fb,cuid:()=>xh,cuid2:()=>Ih,custom:()=>yb,date:()=>Yh,describe:()=>kb,discriminatedUnion:()=>rb,e164:()=>Nh,email:()=>ph,emoji:()=>yh,enum:()=>zo,exactOptional:()=>Ud,file:()=>ub,float32:()=>Mh,float64:()=>Bh,function:()=>vb,guid:()=>mh,hash:()=>Lh,hex:()=>jh,hostname:()=>zh,httpUrl:()=>_h,instanceof:()=>Ib,int:()=>go,int32:()=>Fh,int64:()=>Kh,intersection:()=>wd,invertCodec:()=>gb,ipv4:()=>$h,ipv6:()=>Th,json:()=>Eb,jwt:()=>Dh,keyof:()=>Xh,ksuid:()=>wh,lazy:()=>Xd,literal:()=>lb,looseObject:()=>tb,looseRecord:()=>ob,mac:()=>Oh,map:()=>sb,meta:()=>xb,nan:()=>mb,nanoid:()=>kh,nativeEnum:()=>cb,never:()=>Do,nonoptional:()=>Fd,null:()=>bd,nullable:()=>sr,nullish:()=>db,number:()=>pd,object:()=>Qh,optional:()=>or,partialRecord:()=>ib,pipe:()=>ho,prefault:()=>Bd,preprocess:()=>wb,promise:()=>bb,readonly:()=>qd,record:()=>Td,refine:()=>tp,set:()=>ab,strictObject:()=>eb,string:()=>rr,stringFormat:()=>Uh,stringbool:()=>Sb,success:()=>pb,superRefine:()=>np,symbol:()=>Zh,templateLiteral:()=>hb,transform:()=>jo,tuple:()=>Od,uint32:()=>Hh,uint64:()=>Gh,ulid:()=>Sh,undefined:()=>Wh,union:()=>Uo,unknown:()=>gt,url:()=>vh,uuid:()=>fh,uuidv4:()=>gh,uuidv6:()=>hh,uuidv7:()=>bh,void:()=>Jh,xid:()=>Eh,xor:()=>nb});var lo={};De(lo,{endsWith:()=>Bt,gt:()=>Oe,gte:()=>ae,includes:()=>Lt,length:()=>ft,lowercase:()=>zt,lt:()=>$e,lte:()=>ge,maxLength:()=>mt,maxSize:()=>We,mime:()=>Ft,minLength:()=>je,minSize:()=>Te,multipleOf:()=>Ze,negative:()=>eo,nonnegative:()=>no,nonpositive:()=>to,normalize:()=>Ht,overwrite:()=>Ie,positive:()=>Qi,property:()=>ro,regex:()=>Ut,size:()=>pt,slugify:()=>Zt,startsWith:()=>Mt,toLowerCase:()=>Kt,toUpperCase:()=>Gt,trim:()=>Vt,uppercase:()=>jt});var Jt={};De(Jt,{ZodISODate:()=>po,ZodISODateTime:()=>uo,ZodISODuration:()=>fo,ZodISOTime:()=>mo,date:()=>Ju,datetime:()=>qu,duration:()=>Xu,time:()=>Yu});var uo=g("ZodISODateTime",(t,e)=>{wc.init(t,e),F.init(t,e)});function qu(t){return Al(uo,t)}var po=g("ZodISODate",(t,e)=>{$c.init(t,e),F.init(t,e)});function Ju(t){return Rl(po,t)}var mo=g("ZodISOTime",(t,e)=>{Oc.init(t,e),F.init(t,e)});function Yu(t){return Cl(mo,t)}var fo=g("ZodISODuration",(t,e)=>{Tc.init(t,e),F.init(t,e)});function Xu(t){return Pl(fo,t)}var uh=(t,e)=>{Hn.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>Kn(t,r)},flatten:{value:r=>Vn(t,r)},addIssue:{value:r=>{t.issues.push(r),t.message=JSON.stringify(t.issues,$t,2)}},addIssues:{value:r=>{t.issues.push(...r),t.message=JSON.stringify(t.issues,$t,2)}},isEmpty:{get(){return t.issues.length===0}}})},JS=g("ZodError",uh),pe=g("ZodError",uh,{Parent:Error});var Qu=At(pe),ed=Rt(pe),td=Ct(pe),nd=Pt(pe),rd=ai(pe),id=ci(pe),od=li(pe),sd=ui(pe),ad=di(pe),cd=pi(pe),ld=mi(pe),ud=fi(pe);var dh=new WeakMap;function ar(t,e,r){let i=Object.getPrototypeOf(t),n=dh.get(i);if(n||(n=new Set,dh.set(i,n)),!n.has(e)){n.add(e);for(let o in r){let a=r[o];Object.defineProperty(i,o,{configurable:!0,enumerable:!1,get(){let c=a.bind(this);return Object.defineProperty(this,o,{configurable:!0,writable:!0,enumerable:!0,value:c}),c},set(c){Object.defineProperty(this,o,{configurable:!0,writable:!0,enumerable:!0,value:c})}})}}}var O=g("ZodType",(t,e)=>($.init(t,e),Object.assign(t["~standard"],{jsonSchema:{input:qt(t,"input"),output:qt(t,"output")}}),t.toJSONSchema=du(t,{}),t.def=e,t.type=e.type,Object.defineProperty(t,"_def",{value:e}),t.parse=(r,i)=>Qu(t,r,i,{callee:t.parse}),t.safeParse=(r,i)=>td(t,r,i),t.parseAsync=async(r,i)=>ed(t,r,i,{callee:t.parseAsync}),t.safeParseAsync=async(r,i)=>nd(t,r,i),t.spa=t.safeParseAsync,t.encode=(r,i)=>rd(t,r,i),t.decode=(r,i)=>id(t,r,i),t.encodeAsync=async(r,i)=>od(t,r,i),t.decodeAsync=async(r,i)=>sd(t,r,i),t.safeEncode=(r,i)=>ad(t,r,i),t.safeDecode=(r,i)=>cd(t,r,i),t.safeEncodeAsync=async(r,i)=>ld(t,r,i),t.safeDecodeAsync=async(r,i)=>ud(t,r,i),ar(t,"ZodType",{check(...r){let i=this.def;return this.clone(x.mergeDefs(i,{checks:[...i.checks??[],...r.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),{parent:!0})},with(...r){return this.check(...r)},clone(r,i){return oe(this,r,i)},brand(){return this},register(r,i){return r.add(this,i),this},refine(r,i){return this.check(tp(r,i))},superRefine(r,i){return this.check(np(r,i))},overwrite(r){return this.check(Ie(r))},optional(){return or(this)},exactOptional(){return Ud(this)},nullable(){return sr(this)},nullish(){return or(sr(this))},nonoptional(r){return Fd(this,r)},array(){return ur(this)},or(r){return Uo([this,r])},and(r){return wd(this,r)},transform(r){return ho(this,jo(r))},default(r){return Ld(this,r)},prefault(r){return Bd(this,r)},catch(r){return Kd(this,r)},pipe(r){return ho(this,r)},readonly(){return qd(this)},describe(r){let i=this.clone();return re.add(i,{description:r}),i},meta(...r){if(r.length===0)return re.get(this);let i=this.clone();return re.add(i,r[0]),i},isOptional(){return this.safeParse(void 0).success},isNullable(){return this.safeParse(null).success},apply(r){return r(this)}}),Object.defineProperty(t,"description",{get(){return re.get(t)?.description},configurable:!0}),t)),bo=g("_ZodString",(t,e)=>{dt.init(t,e),O.init(t,e),t._zod.processJSONSchema=(i,n,o)=>pu(t,i,n,o);let r=t._zod.bag;t.format=r.format??null,t.minLength=r.minimum??null,t.maxLength=r.maximum??null,ar(t,"_ZodString",{regex(...i){return this.check(Ut(...i))},includes(...i){return this.check(Lt(...i))},startsWith(...i){return this.check(Mt(...i))},endsWith(...i){return this.check(Bt(...i))},min(...i){return this.check(je(...i))},max(...i){return this.check(mt(...i))},length(...i){return this.check(ft(...i))},nonempty(...i){return this.check(je(1,...i))},lowercase(i){return this.check(zt(i))},uppercase(i){return this.check(jt(i))},trim(){return this.check(Vt())},normalize(...i){return this.check(Ht(...i))},toLowerCase(){return this.check(Kt())},toUpperCase(){return this.check(Gt())},slugify(){return this.check(Zt())}})}),Qt=g("ZodString",(t,e)=>{dt.init(t,e),bo.init(t,e),t.email=r=>t.check(Pi(vo,r)),t.url=r=>t.check(tr(cr,r)),t.jwt=r=>t.check(Xi(Po,r)),t.emoji=r=>t.check(ji(_o,r)),t.guid=r=>t.check(er(ir,r)),t.uuid=r=>t.check(Ni(Ae,r)),t.uuidv4=r=>t.check(Di(Ae,r)),t.uuidv6=r=>t.check(Ui(Ae,r)),t.uuidv7=r=>t.check(zi(Ae,r)),t.nanoid=r=>t.check(Li(yo,r)),t.guid=r=>t.check(er(ir,r)),t.cuid=r=>t.check(Mi(ko,r)),t.cuid2=r=>t.check(Bi(xo,r)),t.ulid=r=>t.check(Fi(Io,r)),t.base64=r=>t.check(qi(Ao,r)),t.base64url=r=>t.check(Ji(Ro,r)),t.xid=r=>t.check(Hi(So,r)),t.ksuid=r=>t.check(Vi(Eo,r)),t.ipv4=r=>t.check(Ki(wo,r)),t.ipv6=r=>t.check(Gi($o,r)),t.cidrv4=r=>t.check(Zi(Oo,r)),t.cidrv6=r=>t.check(Wi(To,r)),t.e164=r=>t.check(Yi(Co,r)),t.datetime=r=>t.check(qu(r)),t.date=r=>t.check(Ju(r)),t.time=r=>t.check(Yu(r)),t.duration=r=>t.check(Xu(r))});function rr(t){return wl(Qt,t)}var F=g("ZodStringFormat",(t,e)=>{B.init(t,e),bo.init(t,e)}),vo=g("ZodEmail",(t,e)=>{bc.init(t,e),F.init(t,e)});function ph(t){return Pi(vo,t)}var ir=g("ZodGUID",(t,e)=>{gc.init(t,e),F.init(t,e)});function mh(t){return er(ir,t)}var Ae=g("ZodUUID",(t,e)=>{hc.init(t,e),F.init(t,e)});function fh(t){return Ni(Ae,t)}function gh(t){return Di(Ae,t)}function hh(t){return Ui(Ae,t)}function bh(t){return zi(Ae,t)}var cr=g("ZodURL",(t,e)=>{vc.init(t,e),F.init(t,e)});function vh(t){return tr(cr,t)}function _h(t){return tr(cr,{protocol:fe.httpProtocol,hostname:fe.domain,...x.normalizeParams(t)})}var _o=g("ZodEmoji",(t,e)=>{_c.init(t,e),F.init(t,e)});function yh(t){return ji(_o,t)}var yo=g("ZodNanoID",(t,e)=>{yc.init(t,e),F.init(t,e)});function kh(t){return Li(yo,t)}var ko=g("ZodCUID",(t,e)=>{kc.init(t,e),F.init(t,e)});function xh(t){return Mi(ko,t)}var xo=g("ZodCUID2",(t,e)=>{xc.init(t,e),F.init(t,e)});function Ih(t){return Bi(xo,t)}var Io=g("ZodULID",(t,e)=>{Ic.init(t,e),F.init(t,e)});function Sh(t){return Fi(Io,t)}var So=g("ZodXID",(t,e)=>{Sc.init(t,e),F.init(t,e)});function Eh(t){return Hi(So,t)}var Eo=g("ZodKSUID",(t,e)=>{Ec.init(t,e),F.init(t,e)});function wh(t){return Vi(Eo,t)}var wo=g("ZodIPv4",(t,e)=>{Ac.init(t,e),F.init(t,e)});function $h(t){return Ki(wo,t)}var dd=g("ZodMAC",(t,e)=>{Cc.init(t,e),F.init(t,e)});function Oh(t){return Ol(dd,t)}var $o=g("ZodIPv6",(t,e)=>{Rc.init(t,e),F.init(t,e)});function Th(t){return Gi($o,t)}var Oo=g("ZodCIDRv4",(t,e)=>{Pc.init(t,e),F.init(t,e)});function Ah(t){return Zi(Oo,t)}var To=g("ZodCIDRv6",(t,e)=>{Nc.init(t,e),F.init(t,e)});function Rh(t){return Wi(To,t)}var Ao=g("ZodBase64",(t,e)=>{Uc.init(t,e),F.init(t,e)});function Ch(t){return qi(Ao,t)}var Ro=g("ZodBase64URL",(t,e)=>{zc.init(t,e),F.init(t,e)});function Ph(t){return Ji(Ro,t)}var Co=g("ZodE164",(t,e)=>{jc.init(t,e),F.init(t,e)});function Nh(t){return Yi(Co,t)}var Po=g("ZodJWT",(t,e)=>{Lc.init(t,e),F.init(t,e)});function Dh(t){return Xi(Po,t)}var en=g("ZodCustomStringFormat",(t,e)=>{Mc.init(t,e),F.init(t,e)});function Uh(t,e,r={}){return Wt(en,t,e,r)}function zh(t){return Wt(en,"hostname",fe.hostname,t)}function jh(t){return Wt(en,"hex",fe.hex,t)}function Lh(t,e){let r=e?.enc??"hex",i=`${t}_${r}`,n=fe[i];if(!n)throw new Error(`Unrecognized hash format: ${i}`);return Wt(en,i,n,e)}var tn=g("ZodNumber",(t,e)=>{Ii.init(t,e),O.init(t,e),t._zod.processJSONSchema=(i,n,o)=>mu(t,i,n,o),ar(t,"ZodNumber",{gt(i,n){return this.check(Oe(i,n))},gte(i,n){return this.check(ae(i,n))},min(i,n){return this.check(ae(i,n))},lt(i,n){return this.check($e(i,n))},lte(i,n){return this.check(ge(i,n))},max(i,n){return this.check(ge(i,n))},int(i){return this.check(go(i))},safe(i){return this.check(go(i))},positive(i){return this.check(Oe(0,i))},nonnegative(i){return this.check(ae(0,i))},negative(i){return this.check($e(0,i))},nonpositive(i){return this.check(ge(0,i))},multipleOf(i,n){return this.check(Ze(i,n))},step(i,n){return this.check(Ze(i,n))},finite(){return this}});let r=t._zod.bag;t.minValue=Math.max(r.minimum??Number.NEGATIVE_INFINITY,r.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,t.maxValue=Math.min(r.maximum??Number.POSITIVE_INFINITY,r.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,t.isInt=(r.format??"").includes("int")||Number.isSafeInteger(r.multipleOf??.5),t.isFinite=!0,t.format=r.format??null});function pd(t){return Nl(tn,t)}var ht=g("ZodNumberFormat",(t,e)=>{Bc.init(t,e),tn.init(t,e)});function go(t){return Ul(ht,t)}function Mh(t){return zl(ht,t)}function Bh(t){return jl(ht,t)}function Fh(t){return Ll(ht,t)}function Hh(t){return Ml(ht,t)}var nn=g("ZodBoolean",(t,e)=>{qn.init(t,e),O.init(t,e),t._zod.processJSONSchema=(r,i,n)=>fu(t,r,i,n)});function md(t){return Bl(nn,t)}var rn=g("ZodBigInt",(t,e)=>{Si.init(t,e),O.init(t,e),t._zod.processJSONSchema=(i,n,o)=>gu(t,i,n,o),t.gte=(i,n)=>t.check(ae(i,n)),t.min=(i,n)=>t.check(ae(i,n)),t.gt=(i,n)=>t.check(Oe(i,n)),t.gte=(i,n)=>t.check(ae(i,n)),t.min=(i,n)=>t.check(ae(i,n)),t.lt=(i,n)=>t.check($e(i,n)),t.lte=(i,n)=>t.check(ge(i,n)),t.max=(i,n)=>t.check(ge(i,n)),t.positive=i=>t.check(Oe(BigInt(0),i)),t.negative=i=>t.check($e(BigInt(0),i)),t.nonpositive=i=>t.check(ge(BigInt(0),i)),t.nonnegative=i=>t.check(ae(BigInt(0),i)),t.multipleOf=(i,n)=>t.check(Ze(i,n));let r=t._zod.bag;t.minValue=r.minimum??null,t.maxValue=r.maximum??null,t.format=r.format??null});function Vh(t){return Hl(rn,t)}var No=g("ZodBigIntFormat",(t,e)=>{Fc.init(t,e),rn.init(t,e)});function Kh(t){return Kl(No,t)}function Gh(t){return Gl(No,t)}var fd=g("ZodSymbol",(t,e)=>{Hc.init(t,e),O.init(t,e),t._zod.processJSONSchema=(r,i,n)=>hu(t,r,i,n)});function Zh(t){return Zl(fd,t)}var gd=g("ZodUndefined",(t,e)=>{Vc.init(t,e),O.init(t,e),t._zod.processJSONSchema=(r,i,n)=>vu(t,r,i,n)});function Wh(t){return Wl(gd,t)}var hd=g("ZodNull",(t,e)=>{Kc.init(t,e),O.init(t,e),t._zod.processJSONSchema=(r,i,n)=>bu(t,r,i,n)});function bd(t){return ql(hd,t)}var vd=g("ZodAny",(t,e)=>{Gc.init(t,e),O.init(t,e),t._zod.processJSONSchema=(r,i,n)=>ku(t,r,i,n)});function qh(){return Jl(vd)}var _d=g("ZodUnknown",(t,e)=>{Zc.init(t,e),O.init(t,e),t._zod.processJSONSchema=(r,i,n)=>xu(t,r,i,n)});function gt(){return Yl(_d)}var yd=g("ZodNever",(t,e)=>{Wc.init(t,e),O.init(t,e),t._zod.processJSONSchema=(r,i,n)=>yu(t,r,i,n)});function Do(t){return Xl(yd,t)}var kd=g("ZodVoid",(t,e)=>{qc.init(t,e),O.init(t,e),t._zod.processJSONSchema=(r,i,n)=>_u(t,r,i,n)});function Jh(t){return Ql(kd,t)}var lr=g("ZodDate",(t,e)=>{Jc.init(t,e),O.init(t,e),t._zod.processJSONSchema=(i,n,o)=>Iu(t,i,n,o),t.min=(i,n)=>t.check(ae(i,n)),t.max=(i,n)=>t.check(ge(i,n));let r=t._zod.bag;t.minDate=r.minimum?new Date(r.minimum):null,t.maxDate=r.maximum?new Date(r.maximum):null});function Yh(t){return eu(lr,t)}var xd=g("ZodArray",(t,e)=>{Yc.init(t,e),O.init(t,e),t._zod.processJSONSchema=(r,i,n)=>Du(t,r,i,n),t.element=e.element,ar(t,"ZodArray",{min(r,i){return this.check(je(r,i))},nonempty(r){return this.check(je(1,r))},max(r,i){return this.check(mt(r,i))},length(r,i){return this.check(ft(r,i))},unwrap(){return this.element}})});function ur(t,e){return ru(xd,t,e)}function Xh(t){let e=t._zod.def.shape;return zo(Object.keys(e))}var dr=g("ZodObject",(t,e)=>{Xc.init(t,e),O.init(t,e),t._zod.processJSONSchema=(r,i,n)=>Uu(t,r,i,n),x.defineLazy(t,"shape",()=>e.shape),ar(t,"ZodObject",{keyof(){return zo(Object.keys(this._zod.def.shape))},catchall(r){return this.clone({...this._zod.def,catchall:r})},passthrough(){return this.clone({...this._zod.def,catchall:gt()})},loose(){return this.clone({...this._zod.def,catchall:gt()})},strict(){return this.clone({...this._zod.def,catchall:Do()})},strip(){return this.clone({...this._zod.def,catchall:void 0})},extend(r){return x.extend(this,r)},safeExtend(r){return x.safeExtend(this,r)},merge(r){return x.merge(this,r)},pick(r){return x.pick(this,r)},omit(r){return x.omit(this,r)},partial(...r){return x.partial(Lo,this,r[0])},required(...r){return x.required(Mo,this,r[0])}})});function Qh(t,e){let r={type:"object",shape:t??{},...x.normalizeParams(e)};return new dr(r)}function eb(t,e){return new dr({type:"object",shape:t,catchall:Do(),...x.normalizeParams(e)})}function tb(t,e){return new dr({type:"object",shape:t,catchall:gt(),...x.normalizeParams(e)})}var pr=g("ZodUnion",(t,e)=>{Jn.init(t,e),O.init(t,e),t._zod.processJSONSchema=(r,i,n)=>oo(t,r,i,n),t.options=e.options});function Uo(t,e){return new pr({type:"union",options:t,...x.normalizeParams(e)})}var Id=g("ZodXor",(t,e)=>{pr.init(t,e),Qc.init(t,e),t._zod.processJSONSchema=(r,i,n)=>oo(t,r,i,n),t.options=e.options});function nb(t,e){return new Id({type:"union",options:t,inclusive:!1,...x.normalizeParams(e)})}var Sd=g("ZodDiscriminatedUnion",(t,e)=>{pr.init(t,e),el.init(t,e)});function rb(t,e,r){return new Sd({type:"union",options:e,discriminator:t,...x.normalizeParams(r)})}var Ed=g("ZodIntersection",(t,e)=>{tl.init(t,e),O.init(t,e),t._zod.processJSONSchema=(r,i,n)=>zu(t,r,i,n)});function wd(t,e){return new Ed({type:"intersection",left:t,right:e})}var $d=g("ZodTuple",(t,e)=>{Ei.init(t,e),O.init(t,e),t._zod.processJSONSchema=(r,i,n)=>ju(t,r,i,n),t.rest=r=>t.clone({...t._zod.def,rest:r})});function Od(t,e,r){let i=e instanceof $,n=i?r:e,o=i?e:null;return new $d({type:"tuple",items:t,rest:o,...x.normalizeParams(n)})}var Yt=g("ZodRecord",(t,e)=>{nl.init(t,e),O.init(t,e),t._zod.processJSONSchema=(r,i,n)=>Lu(t,r,i,n),t.keyType=e.keyType,t.valueType=e.valueType});function Td(t,e,r){return!e||!e._zod?new Yt({type:"record",keyType:rr(),valueType:t,...x.normalizeParams(e)}):new Yt({type:"record",keyType:t,valueType:e,...x.normalizeParams(r)})}function ib(t,e,r){let i=oe(t);return i._zod.values=void 0,new Yt({type:"record",keyType:i,valueType:e,...x.normalizeParams(r)})}function ob(t,e,r){return new Yt({type:"record",keyType:t,valueType:e,mode:"loose",...x.normalizeParams(r)})}var Ad=g("ZodMap",(t,e)=>{rl.init(t,e),O.init(t,e),t._zod.processJSONSchema=(r,i,n)=>Pu(t,r,i,n),t.keyType=e.keyType,t.valueType=e.valueType,t.min=(...r)=>t.check(Te(...r)),t.nonempty=r=>t.check(Te(1,r)),t.max=(...r)=>t.check(We(...r)),t.size=(...r)=>t.check(pt(...r))});function sb(t,e,r){return new Ad({type:"map",keyType:t,valueType:e,...x.normalizeParams(r)})}var Rd=g("ZodSet",(t,e)=>{il.init(t,e),O.init(t,e),t._zod.processJSONSchema=(r,i,n)=>Nu(t,r,i,n),t.min=(...r)=>t.check(Te(...r)),t.nonempty=r=>t.check(Te(1,r)),t.max=(...r)=>t.check(We(...r)),t.size=(...r)=>t.check(pt(...r))});function ab(t,e){return new Rd({type:"set",valueType:t,...x.normalizeParams(e)})}var Xt=g("ZodEnum",(t,e)=>{ol.init(t,e),O.init(t,e),t._zod.processJSONSchema=(i,n,o)=>Su(t,i,n,o),t.enum=e.entries,t.options=Object.values(e.entries);let r=new Set(Object.keys(e.entries));t.extract=(i,n)=>{let o={};for(let a of i)if(r.has(a))o[a]=e.entries[a];else throw new Error(`Key ${a} not found in enum`);return new Xt({...e,checks:[],...x.normalizeParams(n),entries:o})},t.exclude=(i,n)=>{let o={...e.entries};for(let a of i)if(r.has(a))delete o[a];else throw new Error(`Key ${a} not found in enum`);return new Xt({...e,checks:[],...x.normalizeParams(n),entries:o})}});function zo(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(i=>[i,i])):t;return new Xt({type:"enum",entries:r,...x.normalizeParams(e)})}function cb(t,e){return new Xt({type:"enum",entries:t,...x.normalizeParams(e)})}var Cd=g("ZodLiteral",(t,e)=>{sl.init(t,e),O.init(t,e),t._zod.processJSONSchema=(r,i,n)=>Eu(t,r,i,n),t.values=new Set(e.values),Object.defineProperty(t,"value",{get(){if(e.values.length>1)throw new Error("This schema contains multiple valid literal values. Use `.values` instead.");return e.values[0]}})});function lb(t,e){return new Cd({type:"literal",values:Array.isArray(t)?t:[t],...x.normalizeParams(e)})}var Pd=g("ZodFile",(t,e)=>{al.init(t,e),O.init(t,e),t._zod.processJSONSchema=(r,i,n)=>Ou(t,r,i,n),t.min=(r,i)=>t.check(Te(r,i)),t.max=(r,i)=>t.check(We(r,i)),t.mime=(r,i)=>t.check(Ft(Array.isArray(r)?r:[r],i))});function ub(t){return iu(Pd,t)}var Nd=g("ZodTransform",(t,e)=>{cl.init(t,e),O.init(t,e),t._zod.processJSONSchema=(r,i,n)=>Cu(t,r,i,n),t._zod.parse=(r,i)=>{if(i.direction==="backward")throw new Fe(t.constructor.name);r.addIssue=o=>{if(typeof o=="string")r.issues.push(x.issue(o,r.value,e));else{let a=o;a.fatal&&(a.continue=!1),a.code??(a.code="custom"),a.input??(a.input=r.value),a.inst??(a.inst=t),r.issues.push(x.issue(a))}};let n=e.transform(r.value,r);return n instanceof Promise?n.then(o=>(r.value=o,r.fallback=!0,r)):(r.value=n,r.fallback=!0,r)}});function jo(t){return new Nd({type:"transform",transform:t})}var Lo=g("ZodOptional",(t,e)=>{wi.init(t,e),O.init(t,e),t._zod.processJSONSchema=(r,i,n)=>so(t,r,i,n),t.unwrap=()=>t._zod.def.innerType});function or(t){return new Lo({type:"optional",innerType:t})}var Dd=g("ZodExactOptional",(t,e)=>{ll.init(t,e),O.init(t,e),t._zod.processJSONSchema=(r,i,n)=>so(t,r,i,n),t.unwrap=()=>t._zod.def.innerType});function Ud(t){return new Dd({type:"optional",innerType:t})}var zd=g("ZodNullable",(t,e)=>{ul.init(t,e),O.init(t,e),t._zod.processJSONSchema=(r,i,n)=>Mu(t,r,i,n),t.unwrap=()=>t._zod.def.innerType});function sr(t){return new zd({type:"nullable",innerType:t})}function db(t){return or(sr(t))}var jd=g("ZodDefault",(t,e)=>{dl.init(t,e),O.init(t,e),t._zod.processJSONSchema=(r,i,n)=>Fu(t,r,i,n),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});function Ld(t,e){return new jd({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():x.shallowClone(e)}})}var Md=g("ZodPrefault",(t,e)=>{pl.init(t,e),O.init(t,e),t._zod.processJSONSchema=(r,i,n)=>Hu(t,r,i,n),t.unwrap=()=>t._zod.def.innerType});function Bd(t,e){return new Md({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():x.shallowClone(e)}})}var Mo=g("ZodNonOptional",(t,e)=>{ml.init(t,e),O.init(t,e),t._zod.processJSONSchema=(r,i,n)=>Bu(t,r,i,n),t.unwrap=()=>t._zod.def.innerType});function Fd(t,e){return new Mo({type:"nonoptional",innerType:t,...x.normalizeParams(e)})}var Hd=g("ZodSuccess",(t,e)=>{fl.init(t,e),O.init(t,e),t._zod.processJSONSchema=(r,i,n)=>Tu(t,r,i,n),t.unwrap=()=>t._zod.def.innerType});function pb(t){return new Hd({type:"success",innerType:t})}var Vd=g("ZodCatch",(t,e)=>{gl.init(t,e),O.init(t,e),t._zod.processJSONSchema=(r,i,n)=>Vu(t,r,i,n),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});function Kd(t,e){return new Vd({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}var Gd=g("ZodNaN",(t,e)=>{hl.init(t,e),O.init(t,e),t._zod.processJSONSchema=(r,i,n)=>wu(t,r,i,n)});function mb(t){return nu(Gd,t)}var mr=g("ZodPipe",(t,e)=>{$i.init(t,e),O.init(t,e),t._zod.processJSONSchema=(r,i,n)=>Ku(t,r,i,n),t.in=e.in,t.out=e.out});function ho(t,e){return new mr({type:"pipe",in:t,out:e})}var fr=g("ZodCodec",(t,e)=>{mr.init(t,e),Yn.init(t,e)});function fb(t,e,r){return new fr({type:"pipe",in:t,out:e,transform:r.decode,reverseTransform:r.encode})}function gb(t){let e=t._zod.def;return new fr({type:"pipe",in:e.out,out:e.in,transform:e.reverseTransform,reverseTransform:e.transform})}var Zd=g("ZodPreprocess",(t,e)=>{mr.init(t,e),bl.init(t,e)}),Wd=g("ZodReadonly",(t,e)=>{vl.init(t,e),O.init(t,e),t._zod.processJSONSchema=(r,i,n)=>Gu(t,r,i,n),t.unwrap=()=>t._zod.def.innerType});function qd(t){return new Wd({type:"readonly",innerType:t})}var Jd=g("ZodTemplateLiteral",(t,e)=>{_l.init(t,e),O.init(t,e),t._zod.processJSONSchema=(r,i,n)=>$u(t,r,i,n)});function hb(t,e){return new Jd({type:"template_literal",parts:t,...x.normalizeParams(e)})}var Yd=g("ZodLazy",(t,e)=>{xl.init(t,e),O.init(t,e),t._zod.processJSONSchema=(r,i,n)=>Wu(t,r,i,n),t.unwrap=()=>t._zod.def.getter()});function Xd(t){return new Yd({type:"lazy",getter:t})}var Qd=g("ZodPromise",(t,e)=>{kl.init(t,e),O.init(t,e),t._zod.processJSONSchema=(r,i,n)=>Zu(t,r,i,n),t.unwrap=()=>t._zod.def.innerType});function bb(t){return new Qd({type:"promise",innerType:t})}var ep=g("ZodFunction",(t,e)=>{yl.init(t,e),O.init(t,e),t._zod.processJSONSchema=(r,i,n)=>Ru(t,r,i,n)});function vb(t){return new ep({type:"function",input:Array.isArray(t?.input)?Od(t?.input):t?.input??ur(gt()),output:t?.output??gt()})}var gr=g("ZodCustom",(t,e)=>{Il.init(t,e),O.init(t,e),t._zod.processJSONSchema=(r,i,n)=>Au(t,r,i,n)});function _b(t){let e=new K({check:"custom"});return e._zod.check=t,e}function yb(t,e){return ou(gr,t??(()=>!0),e)}function tp(t,e={}){return su(gr,t,e)}function np(t,e){return au(t,e)}var kb=cu,xb=lu;function Ib(t,e={}){let r=new gr({type:"custom",check:"custom",fn:i=>i instanceof t,abort:!0,...x.normalizeParams(e)});return r._zod.bag.Class=t,r._zod.check=i=>{i.value instanceof t||i.issues.push({code:"invalid_type",expected:t.name,input:i.value,inst:r,path:[...r._zod.def.path??[]]})},r}var Sb=(...t)=>uu({Codec:fr,Boolean:nn,String:Qt},...t);function Eb(t){let e=Xd(()=>Uo([rr(t),pd(),md(),bd(),ur(e),Td(rr(),e)]));return e}function wb(t,e){return new Zd({type:"pipe",in:jo(t),out:e})}var XS={invalid_type:"invalid_type",too_big:"too_big",too_small:"too_small",invalid_format:"invalid_format",not_multiple_of:"not_multiple_of",unrecognized_keys:"unrecognized_keys",invalid_union:"invalid_union",invalid_key:"invalid_key",invalid_element:"invalid_element",invalid_value:"invalid_value",custom:"custom"};function QS(t){Y({customError:t})}function eE(){return Y().customError}var rp;rp||(rp={});var S={...nr,...lo,iso:Jt},tE=new Set(["$schema","$ref","$defs","definitions","$id","id","$comment","$anchor","$vocabulary","$dynamicRef","$dynamicAnchor","type","enum","const","anyOf","oneOf","allOf","not","properties","required","additionalProperties","patternProperties","propertyNames","minProperties","maxProperties","items","prefixItems","additionalItems","minItems","maxItems","uniqueItems","contains","minContains","maxContains","minLength","maxLength","pattern","format","minimum","maximum","exclusiveMinimum","exclusiveMaximum","multipleOf","description","default","contentEncoding","contentMediaType","contentSchema","unevaluatedItems","unevaluatedProperties","if","then","else","dependentSchemas","dependentRequired","nullable","readOnly"]);function nE(t,e){let r=t.$schema;return r==="https://json-schema.org/draft/2020-12/schema"?"draft-2020-12":r==="http://json-schema.org/draft-07/schema#"?"draft-7":r==="http://json-schema.org/draft-04/schema#"?"draft-4":e??"draft-2020-12"}function rE(t,e){if(!t.startsWith("#"))throw new Error("External $ref is not supported, only local refs (#/...) are allowed");let r=t.slice(1).split("/").filter(Boolean);if(r.length===0)return e.rootSchema;let i=e.version==="draft-2020-12"?"$defs":"definitions";if(r[0]===i){let n=r[1];if(!n||!e.defs[n])throw new Error(`Reference not found: ${t}`);return e.defs[n]}throw new Error(`Reference not found: ${t}`)}function $b(t,e){if(t.not!==void 0){if(typeof t.not=="object"&&Object.keys(t.not).length===0)return S.never();throw new Error("not is not supported in Zod (except { not: {} } for never)")}if(t.unevaluatedItems!==void 0)throw new Error("unevaluatedItems is not supported");if(t.unevaluatedProperties!==void 0)throw new Error("unevaluatedProperties is not supported");if(t.if!==void 0||t.then!==void 0||t.else!==void 0)throw new Error("Conditional schemas (if/then/else) are not supported");if(t.dependentSchemas!==void 0||t.dependentRequired!==void 0)throw new Error("dependentSchemas and dependentRequired are not supported");if(t.$ref){let n=t.$ref;if(e.refs.has(n))return e.refs.get(n);if(e.processing.has(n))return S.lazy(()=>{if(!e.refs.has(n))throw new Error(`Circular reference not resolved: ${n}`);return e.refs.get(n)});e.processing.add(n);let o=rE(n,e),a=ie(o,e);return e.refs.set(n,a),e.processing.delete(n),a}if(t.enum!==void 0){let n=t.enum;if(e.version==="openapi-3.0"&&t.nullable===!0&&n.length===1&&n[0]===null)return S.null();if(n.length===0)return S.never();if(n.length===1)return S.literal(n[0]);if(n.every(a=>typeof a=="string"))return S.enum(n);let o=n.map(a=>S.literal(a));return o.length<2?o[0]:S.union([o[0],o[1],...o.slice(2)])}if(t.const!==void 0)return S.literal(t.const);let r=t.type;if(Array.isArray(r)){let n=r.map(o=>{let a={...t,type:o};return $b(a,e)});return n.length===0?S.never():n.length===1?n[0]:S.union(n)}if(!r)return S.any();let i;switch(r){case"string":{let n=S.string();if(t.format){let o=t.format;o==="email"?n=n.check(S.email()):o==="uri"||o==="uri-reference"?n=n.check(S.url()):o==="uuid"||o==="guid"?n=n.check(S.uuid()):o==="date-time"?n=n.check(S.iso.datetime()):o==="date"?n=n.check(S.iso.date()):o==="time"?n=n.check(S.iso.time()):o==="duration"?n=n.check(S.iso.duration()):o==="ipv4"?n=n.check(S.ipv4()):o==="ipv6"?n=n.check(S.ipv6()):o==="mac"?n=n.check(S.mac()):o==="cidr"?n=n.check(S.cidrv4()):o==="cidr-v6"?n=n.check(S.cidrv6()):o==="base64"?n=n.check(S.base64()):o==="base64url"?n=n.check(S.base64url()):o==="e164"?n=n.check(S.e164()):o==="jwt"?n=n.check(S.jwt()):o==="emoji"?n=n.check(S.emoji()):o==="nanoid"?n=n.check(S.nanoid()):o==="cuid"?n=n.check(S.cuid()):o==="cuid2"?n=n.check(S.cuid2()):o==="ulid"?n=n.check(S.ulid()):o==="xid"?n=n.check(S.xid()):o==="ksuid"&&(n=n.check(S.ksuid()))}typeof t.minLength=="number"&&(n=n.min(t.minLength)),typeof t.maxLength=="number"&&(n=n.max(t.maxLength)),t.pattern&&(n=n.regex(new RegExp(t.pattern))),i=n;break}case"number":case"integer":{let n=r==="integer"?S.number().int():S.number();typeof t.minimum=="number"&&(n=n.min(t.minimum)),typeof t.maximum=="number"&&(n=n.max(t.maximum)),typeof t.exclusiveMinimum=="number"?n=n.gt(t.exclusiveMinimum):t.exclusiveMinimum===!0&&typeof t.minimum=="number"&&(n=n.gt(t.minimum)),typeof t.exclusiveMaximum=="number"?n=n.lt(t.exclusiveMaximum):t.exclusiveMaximum===!0&&typeof t.maximum=="number"&&(n=n.lt(t.maximum)),typeof t.multipleOf=="number"&&(n=n.multipleOf(t.multipleOf)),i=n;break}case"boolean":{i=S.boolean();break}case"null":{i=S.null();break}case"object":{let n={},o=t.properties||{},a=new Set(t.required||[]);for(let[l,d]of Object.entries(o)){let u=ie(d,e);n[l]=a.has(l)?u:u.optional()}if(t.propertyNames){let l=ie(t.propertyNames,e),d=t.additionalProperties&&typeof t.additionalProperties=="object"?ie(t.additionalProperties,e):S.any();if(Object.keys(n).length===0){i=S.record(l,d);break}let u=S.object(n).passthrough(),p=S.looseRecord(l,d);i=S.intersection(u,p);break}if(t.patternProperties){let l=t.patternProperties,d=Object.keys(l),u=[];for(let m of d){let f=ie(l[m],e),v=S.string().regex(new RegExp(m));u.push(S.looseRecord(v,f))}let p=[];if(Object.keys(n).length>0&&p.push(S.object(n).passthrough()),p.push(...u),p.length===0)i=S.object({}).passthrough();else if(p.length===1)i=p[0];else{let m=S.intersection(p[0],p[1]);for(let f=2;f<p.length;f++)m=S.intersection(m,p[f]);i=m}break}let c=S.object(n);t.additionalProperties===!1?i=c.strict():typeof t.additionalProperties=="object"?i=c.catchall(ie(t.additionalProperties,e)):i=c.passthrough();break}case"array":{let n=t.prefixItems,o=t.items;if(n&&Array.isArray(n)){let a=n.map(l=>ie(l,e)),c=o&&typeof o=="object"&&!Array.isArray(o)?ie(o,e):void 0;c?i=S.tuple(a).rest(c):i=S.tuple(a),typeof t.minItems=="number"&&(i=i.check(S.minLength(t.minItems))),typeof t.maxItems=="number"&&(i=i.check(S.maxLength(t.maxItems)))}else if(Array.isArray(o)){let a=o.map(l=>ie(l,e)),c=t.additionalItems&&typeof t.additionalItems=="object"?ie(t.additionalItems,e):void 0;c?i=S.tuple(a).rest(c):i=S.tuple(a),typeof t.minItems=="number"&&(i=i.check(S.minLength(t.minItems))),typeof t.maxItems=="number"&&(i=i.check(S.maxLength(t.maxItems)))}else if(o!==void 0){let a=ie(o,e),c=S.array(a);typeof t.minItems=="number"&&(c=c.min(t.minItems)),typeof t.maxItems=="number"&&(c=c.max(t.maxItems)),i=c}else i=S.array(S.any());break}default:throw new Error(`Unsupported type: ${r}`)}return i}function ie(t,e){if(typeof t=="boolean")return t?S.any():S.never();let r=$b(t,e),i=t.type||t.enum!==void 0||t.const!==void 0;if(t.anyOf&&Array.isArray(t.anyOf)){let c=t.anyOf.map(d=>ie(d,e)),l=S.union(c);r=i?S.intersection(r,l):l}if(t.oneOf&&Array.isArray(t.oneOf)){let c=t.oneOf.map(d=>ie(d,e)),l=S.xor(c);r=i?S.intersection(r,l):l}if(t.allOf&&Array.isArray(t.allOf))if(t.allOf.length===0)r=i?r:S.any();else{let c=i?r:ie(t.allOf[0],e),l=i?0:1;for(let d=l;d<t.allOf.length;d++)c=S.intersection(c,ie(t.allOf[d],e));r=c}t.nullable===!0&&e.version==="openapi-3.0"&&(r=S.nullable(r)),t.readOnly===!0&&(r=S.readonly(r)),t.default!==void 0&&(r=r.default(t.default));let n={},o=["$id","id","$comment","$anchor","$vocabulary","$dynamicRef","$dynamicAnchor"];for(let c of o)c in t&&(n[c]=t[c]);let a=["contentEncoding","contentMediaType","contentSchema"];for(let c of a)c in t&&(n[c]=t[c]);for(let c of Object.keys(t))tE.has(c)||(n[c]=t[c]);return Object.keys(n).length>0&&e.registry.add(r,n),t.description&&(r=r.describe(t.description)),r}function Ob(t,e){if(typeof t=="boolean")return t?S.any():S.never();let r;try{r=JSON.parse(JSON.stringify(t))}catch{throw new Error("fromJSONSchema input is not valid JSON (possibly cyclic); use $defs/$ref for recursive schemas")}let i=nE(r,e?.defaultTarget),n=r.$defs||r.definitions||{},o={version:i,defs:n,refs:new Map,processing:new Set,rootSchema:r,registry:e?.registry??re};return ie(r,o)}var ip={};De(ip,{bigint:()=>aE,boolean:()=>sE,date:()=>cE,number:()=>oE,string:()=>iE});function iE(t){return $l(Qt,t)}function oE(t){return Dl(tn,t)}function sE(t){return Fl(nn,t)}function aE(t){return Vl(rn,t)}function cE(t){return tu(lr,t)}Y(Oi());var hr=s.object({endpoint:s.string().min(1).max(256).optional(),apiKey:s.string().min(1).max(256).optional(),workspace:s.string().min(1).max(256).optional(),region:s.string().min(1).max(256).optional()}).strict(),Tb=s.enum(["SUM","COUNT","MAX","UNIQUE_COUNT","LATEST"]),op=s.object({d:s.number().int().nonnegative(),w:s.number().int().positive(),c:s.number().nonnegative(),agg:Tb.default("COUNT").optional(),valueProperty:s.string().optional(),uniqueProperty:s.string().optional(),provenance:s.enum(["plan","manual","provider"]).optional(),warnAt:s.number().min(0).max(1).optional(),scope:hr.optional()}),lE=s.object({kind:s.literal("credential_validity")}),uE=s.object({kind:s.literal("track_only_bypass")}),dE=s.object({kind:s.literal("lifecycle_block"),blockOn:s.array(s.string()).default(["SUSPENDED","CANCELLED","INACTIVE"]),code:s.string().default("subscription_inactive")}),pE=s.object({kind:s.literal("scope"),requireExplicit:s.boolean().default(!0)}),mE=s.object({kind:s.literal("permission"),mode:s.enum(["grace","closed"]).optional()}),fE=s.object({kind:s.literal("geo_restriction"),allow:s.array(s.string().length(2).regex(/^[A-Z]{2}$/)).optional(),block:s.array(s.string().length(2).regex(/^[A-Z]{2}$/)).optional()}).refine(t=>t.allow!==void 0||t.block!==void 0,{message:"geo_restriction requires either `allow` or `block`"}),gE=s.enum(["fixed_window","sliding_window","token_bucket"]),hE=op.extend({kind:s.literal("rate_limit"),m:s.enum(["e","t"]).default("e"),strategy:gE.default("fixed_window"),bucket_capacity:s.number().positive().optional(),refill_rate_per_second:s.number().positive().optional()}).superRefine((t,e)=>{t.strategy==="token_bucket"?(t.bucket_capacity===void 0&&e.addIssue({code:"custom",message:"token_bucket strategy requires `bucket_capacity` (positive number)",path:["bucket_capacity"]}),t.refill_rate_per_second===void 0&&e.addIssue({code:"custom",message:"token_bucket strategy requires `refill_rate_per_second` (positive number)",path:["refill_rate_per_second"]})):(t.bucket_capacity!==void 0&&e.addIssue({code:"custom",message:`bucket_capacity is only valid when strategy === 'token_bucket' (got '${t.strategy}')`,path:["bucket_capacity"]}),t.refill_rate_per_second!==void 0&&e.addIssue({code:"custom",message:`refill_rate_per_second is only valid when strategy === 'token_bucket' (got '${t.strategy}')`,path:["refill_rate_per_second"]}))}),bE=s.enum(["fixed_window","sliding_window"]),vE=op.extend({kind:s.literal("quota"),ovr:s.enum(["BLOCK","ALLOW_AND_BILL"]),strategy:bE.default("fixed_window")}),_E=op.extend({kind:s.literal("credit_balance"),ovr:s.enum(["BLOCK","ALLOW_AND_BILL"])}),yE=s.object({kind:s.literal("concurrency"),dimension:s.string().min(1).max(120),limit:s.number().int().positive(),lease_ttl_seconds:s.number().int().positive().max(3600).default(60)}),kE=s.object({kind:s.literal("resource_limit"),resource:s.string().min(1).max(120),limit:s.number().int().nonnegative()}),xE=s.object({kind:s.literal("reservation"),dimension:s.string().min(1).max(120),max_outstanding:s.number().int().positive(),hold_seconds:s.number().int().positive().max(86400)}),IE=s.enum(["plan","manual","provider"]),sp=s.object({maxInputTokens:s.number().int().positive().optional(),maxOutputTokens:s.number().int().positive().optional(),maxContextTokens:s.number().int().positive().optional(),maxPayloadBytes:s.number().int().positive().optional(),enforcement:s.enum(["enforce","track"]).default("enforce"),failMode:s.enum(["open","closed"]).default("open"),tokenCountSource:s.enum(["declared","estimated"]).optional(),scope:hr.optional()}).refine(Ab,{message:"capacity requires at least one ceiling (maxInputTokens / maxOutputTokens / maxContextTokens / maxPayloadBytes)"});function Ab(t){return t.maxInputTokens!==void 0||t.maxOutputTokens!==void 0||t.maxContextTokens!==void 0||t.maxPayloadBytes!==void 0}var SE=s.object({kind:s.literal("capacity"),maxInputTokens:s.number().int().positive().optional(),maxOutputTokens:s.number().int().positive().optional(),maxContextTokens:s.number().int().positive().optional(),maxPayloadBytes:s.number().int().positive().optional(),enforcement:s.enum(["enforce","track"]).default("enforce"),failMode:s.enum(["open","closed"]).default("open"),tokenCountSource:s.enum(["declared","estimated"]).optional(),scope:hr.optional(),provenance:IE.optional()}).refine(Ab,{message:"capacity requires at least one ceiling (maxInputTokens / maxOutputTokens / maxContextTokens / maxPayloadBytes)"}),ap=s.discriminatedUnion("kind",[lE,uE,dE,pE,mE,fE,hE,vE,_E,kE,yE,xE,SE]);var br=["customer_operation","control_plane","admin_internal","background_job","webhook","healthcheck","unclassified"],fD=new Set(br);var Bo=s.object({trafficClass:s.enum(br),policySource:s.enum(["declared","inherited","defaulted","inferred"]),limitParticipation:s.object({profile:s.enum(["customer_usage","business_capacity","control_plane","admin_internal","platform_abuse_only","healthcheck","none"]),pools:s.array(s.string().min(1)).optional(),scopes:s.array(s.object({endpoint:s.string().optional(),apiKey:s.string().optional(),workspace:s.string().optional(),region:s.string().optional()}).passthrough()).optional(),metrics:s.array(s.string().min(1)).optional()}).passthrough(),customerBillingPolicy:s.object({customerBillable:s.boolean(),meterKey:s.string().min(1).optional(),chargeableOutcomes:s.enum(["success_only","success_and_partial","attempted","trusted_actual_usage_only"]),invoiceBehavior:s.string().optional()}).passthrough(),providerCostPolicy:s.object({providerCostTracked:s.boolean(),declaredProviderHint:s.string().optional(),declaredModelHint:s.string().optional()}).passthrough()}).passthrough();var ED=s.object({keyId:s.string().min(1),orgId:s.string().min(1),principal:s.object({subjectKind:s.enum(["member","service"]),memberId:s.string().optional(),serviceAccountId:s.string().optional(),keyId:s.string()}),businessId:s.string().min(1),compiledPlanId:s.string().min(1),entitlementHash:s.string().optional(),subjectKey:s.string().min(1),subscriptionId:s.string().min(1),currentPeriodId:s.string().optional(),currentPeriodStartMs:s.number().optional(),subscriberId:s.string().min(1),apiKeyId:s.string().nullable(),entitlementVersion:s.number(),status:s.enum(["active","revoked"]),expiresAt:s.number().nullable().optional(),subscriberStatus:s.enum(["ONBOARDING","ACTIVE","SUSPENDED"]),subscriptionStatus:s.string().min(1),environment:s.enum(["production","sandbox"]).optional(),environmentId:s.string().optional(),scopes:s.array(s.string()).readonly().optional(),entitlement:s.record(s.string(),s.unknown()).nullable().optional()});var Rb=s.object({unit:s.enum(["requests","tokens","computeMs","dollars"]),window:s.enum(["second","minute","hour","day","week","month"]),capacity:s.number()}),EE=s.object({id:s.string().min(1),slug:s.string().optional(),transportMode:s.enum(["direct","tunnel"]),verificationRequired:s.boolean().optional(),originUrl:s.string().optional(),originHostname:s.string().optional(),accessCredentialRef:s.string().optional(),policyVersion:s.string().optional()}),wD=s.object({id:s.string().min(1),origin:s.string().min(1),sandboxOrigin:s.string().nullable().optional(),authHeader:s.string().optional(),pricing:s.object({requests:s.number().optional(),tokens:s.number().optional(),computeMs:s.number().optional(),per_request:s.number().optional()}).catchall(s.number().optional()).optional(),metering:s.object({tokens:s.object({}).optional(),computeMs:s.object({}).optional(),billOn4xx:s.boolean().optional()}).optional(),tenantLimits:s.array(Rb).readonly().optional(),userLimits:s.array(Rb).readonly().optional(),environmentId:s.string().optional(),contextTokenSecret:s.string().nullable().optional(),timeoutMs:s.number().positive().optional(),idleTimeoutMs:s.number().positive().optional(),backends:s.array(EE).optional(),defaultBackendId:s.string().optional(),verificationRequired:s.boolean().optional(),allowedOrigins:s.array(s.string()).optional(),hasPublicRoutes:s.boolean().optional(),publicRoutesCompiledPlanId:s.string().min(1).optional()});var wE=s.object({perRequestMinUnitsByDim:s.record(s.string(),s.number()).optional(),creditPoolMicros:s.number().optional(),perDimUnitCostMicros:s.record(s.string(),s.number()).optional()}),$E=s.object({source:s.enum(["fixed","provider_catalog"]),meterKey:s.string(),selector:s.string().optional(),measures:s.array(s.string()),catalog:s.string().optional(),pricePolicy:s.string().optional(),markupPercent:s.number().optional(),fixedRatesMicros:s.record(s.string(),s.record(s.string(),s.number())).optional()}),OE=s.object({key:s.string(),display:s.string(),unit:s.string().optional(),aggregation:s.enum(["SUM","COUNT","MAX","UNIQUE_COUNT","LATEST"]),window:s.enum(["minute","hour","day","month","billing_period"]),enforcementType:s.string()}),TE=s.object({routeId:s.string().min(1),method:s.string(),path:s.string(),meters:s.array(s.string()).optional(),usagePolicy:Bo.optional(),policyResolutionMode:s.literal("policy").optional()}),$D=s.object({v:s.number(),sub:s.string(),compiledPlanId:s.string().min(1),planType:s.string(),ts:s.number(),constraints:s.array(ap),cv:s.number(),policyResolutionMode:s.literal("policy").optional(),dm:s.record(s.string(),s.number()),dmv:s.number().optional(),floor:wE.nullable().optional(),displayDims:s.array(s.number()).optional(),meterSemantics:s.record(s.string(),OE).optional(),rp:s.record(s.string(),$E).optional(),fr:s.array(TE).optional(),sig:s.string().min(1),sigKid:s.string().optional(),environmentId:s.string().optional()}).passthrough();var OD=s.object({subscriptionId:s.string().min(1),activePeriodId:s.string().optional(),activeCompiledPlanId:s.string().min(1),activeEntitlementHash:s.string().optional(),enforcementMode:s.enum(["STRICT","GRACE","TRACK_ONLY"]),postStreamLockouts:s.array(s.object({code:s.literal("post_stream_overspend"),reason:s.literal("usage_exhausted"),constraintKey:s.string().min(1),cycleId:s.string().min(1),dimension:s.string().min(1),currentCapacity:s.number().nonnegative(),observedUsage:s.number().nonnegative(),lockedAt:s.string().min(1),expiresAt:s.string().min(1)})).optional(),gracePeriodEndsAt:s.string().optional(),trialEndsAt:s.string().optional(),scheduledTransition:s.object({kind:s.string(),timing:s.string(),scheduledFor:s.string(),toCompiledPlanId:s.string().nullable()}).optional(),creditPool:s.object({periodStartMs:s.number(),periodEndMs:s.number(),grantedCents:s.number(),policy:s.enum(["block","allow"]),epoch:s.number()}).optional(),dedicatedShard:s.enum(["ACTIVE","DRAINING"]).optional(),memberAuthz:s.record(s.string(),s.object({permissions:s.array(s.string()),roles:s.array(s.string())})).optional(),memberAuthzComputedAt:s.number().optional(),generation:s.number(),updatedAt:s.string()});var AE=["DRAFT","ACTIVE"],RD=s.enum(AE),RE=["ONBOARDING","ACTIVE","SUSPENDED"],Cb=s.enum(RE),CE=["ACTIVE","REVOKED"],CD=s.enum(CE),PE=["BLOCK","ALLOW_AND_BILL"],Pb=s.enum(PE),NE=["ACTIVE","ARCHIVED"],PD=s.enum(NE),DE=["ACTIVE","PHASING_OUT","SUPERSEDED","ARCHIVED"],ND=s.enum(DE);var Nb=["input","output","total","cached_read_input","cache_creation_input","context","max_output","estimated_output","actual_output","streaming_output"],Fo=[{id:"requests",label:"API requests",description:"Count every call \u2014 the right default for most APIs.",meters:[{key:"requests",display:"Requests",unit:"request"}]},{id:"ai-tokens",label:"AI tokens",description:"LLM-style token metering alongside calls. The gateway can estimate tokens per request and settle actuals from @farthershore/backend reports.",meters:[{key:"requests",display:"Requests",unit:"request"},{key:"tokens_used",display:"Tokens Used",unit:"token"}]},{id:"credits",label:"Credits",description:"Price work in abstract credits (e.g. one image = 5 credits). Report each call's dynamic credit cost through @farthershore/backend.",meters:[{key:"requests",display:"Requests",unit:"request"},{key:"credits",display:"Credits",unit:"credit"}]},{id:"spend",label:"Metered spend",description:"Pass-through spend in cents (OpenRouter-style) reported through @farthershore/backend. Pairs with prepaid credit wallets.",meters:[{key:"requests",display:"Requests",unit:"request"},{key:"dollars",display:"Spend",unit:"cent"}]},{id:"compute",label:"Compute time",description:"Bill milliseconds of compute, settled from @farthershore/backend reports.",meters:[{key:"requests",display:"Requests",unit:"request"},{key:"compute_ms",display:"Compute Time",unit:"ms"}]}];function Db(t){let e=t.trim().toLowerCase();return Fo.find(r=>r.id===e)}function Ub(){return Fo.map(t=>t.id)}var UE="FS_RUNTIME_TOKEN";var zE={payload:"x-fs-metering",signature:"x-fs-metering-sig",token:"x-fs-metering-token"};var MD={environmentVariable:UE,presentation:zE.token,storage:"sha256-hash-only"};var zb={missingSignature:"missing_signature",malformedSignature:"malformed_signature",unknownKeyId:"unknown_key_id",jwksUnavailable:"jwks_unavailable",badSignature:"bad_signature",bodyHashMismatch:"body_hash_mismatch",routeMismatch:"route_mismatch",clockSkew:"clock_skew",expiredSignature:"expired_signature",replayedNonce:"replayed_nonce",bodyTooLarge:"body_too_large",environmentMismatch:"environment_mismatch",missingToken:"missing_token",invalidToken:"invalid_token",contextUnverified:"context_unverified",memberSubjectRequired:"member_subject_required",serviceSubjectRequired:"service_subject_required",surfaceNotAllowed:"surface_not_allowed"};var BD=10*1024*1024;var jE=["CHECKOUT_COMPLETED","PLAN_CHANGED","CANCELLED","RESTORED","UNSCHEDULED_CANCELLATION","PRICE_ROLLOVER","PAUSED","RESUMED","PLAN_CHANGE_SCHEDULED","PLAN_CHANGE_ABORTED","SCHEDULE_CREATED","SCHEDULE_UPDATED","SCHEDULE_RELEASED","SCHEDULE_COMPLETED","SCHEDULE_ABORTED","CANCEL_SCHEDULED","PAYMENT_FAILED","PAYMENT_RECOVERED","PAYMENT_RECOVERED_FROM_SUSPENDED","PAYMENT_ACTION_REQUIRED","RECURRING_PAYMENT","REFUND_PROCESSED","DISPUTE_OPENED","DISPUTE_FUNDS_WITHDRAWN","DISPUTE_CLOSED","DISPUTE_FUNDS_REINSTATED","DISPUTE_CREDIT_REVOKED","DISPUTE_CREDIT_REINSTATED","MIN_SPEND_TRUE_UP"],VD=s.enum(jE);var cp=["BRANCH_PREFIX","PULL_REQUEST","DISABLED"];var LE=s.object({d:s.number(),w:s.number(),capacity:s.number(),remaining:s.number(),windowStart:s.number(),windowEnd:s.number()}),ME=s.record(s.string(),LE),BE=s.object({allocations:s.array(s.number()),expiresAt:s.number()}),FE=s.record(s.string(),BE),HE=s.record(s.string(),s.bigint()),XD=s.object({subscriptionId:s.string(),handoffToken:s.string(),targetShardId:s.string(),policyVersion:s.number(),entitlementVersion:s.number().nullable(),windowStates:ME,activeLeases:FE,totalsByDimension:HE.optional(),billingCycleId:s.string().nullable().optional(),billingCycleStartMs:s.number().optional()});var jb=new Set(["read","export","download"]);var Lb={org:["read","create","update","delete","manage_settings","manage_billing"],business:["read","create","update","delete","publish","archive"],plan:["read","create","update","delete","promote_version"],makertoken:["read","create","rotate","revoke"],webhook:["read","configure","rotate_secret"],persona:["read","issue","rotate","revoke"],migration:["create"],auth_provider_connection:["read","create","update","delete"],subscription:["read","cancel","restore","change_plan"],usage:["read","export"],invoice:["read","pay","download"],billing:["read","manage_subscription","refund","change_payment_method"],team:["read","invite","remove_member","change_role","manage_rbac","assign_product_role"],apikey:["read","create","rotate","revoke"],audit_log:["read","export"]},rU=Object.keys(Lb),iU=Object.fromEntries(Object.entries(Lb).map(([t,e])=>[t,{read:e.filter(r=>jb.has(r)),write:e.filter(r=>!jb.has(r))}]));var VE=new Set(["GET","HEAD","OPTIONS"]);function Mb(t,e){return VE.has(e.toUpperCase())?`${t}:read`:`${t}:write`}var KE="farthershore.internal",Vb="EdDSA",lp="Ed25519";var GE=["gateway","analytics","core","usage-consumer","web-ui","fs-admin","site-shell","agent-runner","build-api"],up={gatewayProjectRead:"gateway:project:read",gatewayResourceWrite:"gateway:resource:write",usageWrite:"usage:write",authzDeniedWrite:"authz-denied:write",reservationAuthorize:"reservation:authorize",reservationFinalize:"reservation:finalize",internalCronRun:"internal:cron:run",personaManage:"persona:manage",proxyTrust:"proxy:trust",internalAdmin:"internal:admin",agentDispatch:"agent:dispatch",buildDispatch:"build:dispatch",internalNotify:"internal:notify",analyticsQuery:"analytics:query"},lU=Object.values(up),on=class extends Error{code;constructor(e,r){super(e),this.code=r,this.name="ServiceJwtError"}},Bb=new WeakMap;async function Kb(t){let e=t.lifetimeSeconds??60;if(!Number.isInteger(e)||e<=0||e>120)throw new on("Invalid service JWT lifetime","invalid_claims");if(!t.kid.trim())throw new on("Service JWT kid is required","invalid_header");let r=JE(t.now??Date.now()),i={alg:Vb,typ:"JWT",kid:t.kid},n={iss:KE,sub:t.sub,aud:t.aud,scope:[...t.scope],iat:r,exp:r+e,jti:t.jti??YE()};Fb(n.sub,"sub"),Fb(n.aud,"aud"),ZE(n.scope);let o=Hb(i),a=Hb(n),c=`${o}.${a}`,l=await qE(t.privateJwk),d=await crypto.subtle.sign(lp,l,new TextEncoder().encode(c));return`${c}.${Gb(new Uint8Array(d))}`}function Fb(t,e){if(!GE.includes(t))throw new on(`Invalid service JWT ${e}`,"invalid_claims")}function ZE(t){if(!t.every(e=>typeof e=="string"&&e.length>0))throw new on("Invalid service JWT scope","invalid_claims")}function WE(t){return t.alg===lp?{...t,alg:Vb}:t}async function qE(t){let e=Bb.get(t);return e||(e=crypto.subtle.importKey("jwk",WE(t),lp,!1,["sign"]),Bb.set(t,e)),e}function Hb(t){return Gb(new TextEncoder().encode(JSON.stringify(t)))}function Gb(t){let e="";for(let r of t)e+=String.fromCharCode(r);return btoa(e).replaceAll("+","-").replaceAll("/","_").replaceAll("=","")}function JE(t){let e=t instanceof Date?t.getTime():t;return Math.floor(e/1e3)}function YE(){if(typeof crypto.randomUUID=="function")return crypto.randomUUID();let t=new Uint8Array(16);crypto.getRandomValues(t),t[6]=t[6]&15|64,t[8]=t[8]&63|128;let e=Array.from(t,r=>r.toString(16).padStart(2,"0"));return`${e.slice(0,4).join("")}-${e.slice(4,6).join("")}-${e.slice(6,8).join("")}-${e.slice(8,10).join("")}-${e.slice(10).join("")}`}var XE=["managed_frontend","custom_frontend","embedded_sdk","public_api","cli","agent","webhook","admin","internal"],Wb=s.enum(XE),Zb=s.string().min(1).max(128),QE=s.object({d:s.number().int().nonnegative(),w:s.number().int().positive(),rem:s.number(),cap:s.number()}).strict(),qb=s.object({v:s.literal(1),entV:s.number().int().nonnegative().optional(),entHash:Zb.optional(),featureGrant:s.boolean().optional(),gates:s.array(Zb).max(16).optional(),limits:s.array(QE).max(16).optional()}).strict();var ew=["resource_lifecycle_only","platform_only_request","provider_restamped","usage_policy","legacy_tenant_metering"],tw=["credentialed_gateway_work","no_resolved_credential"],bU=s.object({requestId:s.string(),eventId:s.string(),tenantId:s.string(),slug:s.string(),subscriptionId:s.string(),subscriberId:s.string(),apiKeyId:s.string().nullable(),compiledPlanId:s.string(),subscriberStatus:Cb,subscriptionStatus:s.string(),businessId:s.string(),statusCode:s.number(),path:s.string(),latencyMs:s.number(),upstreamMs:s.number().nonnegative().finite().optional(),rawDimsUnits:s.record(s.string(),s.number()),matchedRouteMeters:s.array(s.string().min(1)).optional(),servedRouteScopes:s.array(s.string().min(1)).optional(),meterSettlements:s.array(s.object({meterId:s.string(),meterType:s.enum(["exact_pre_request","estimated_then_settled","postpaid","strict_concurrency"]),reserved:s.number(),actual:s.number(),delta:s.number(),dimension:s.number().int().nonnegative(),leaseId:s.string()})).optional(),reportingAttested:s.boolean(),customerBillable:s.boolean(),platformBillable:s.boolean().optional(),customerBillableReason:s.enum(ew).optional(),platformBillableReason:s.enum(tw).optional(),postStreamPending:s.boolean().optional(),measureContext:s.record(s.string(),s.unknown()).optional(),creditUnitsConsumed:s.record(s.string(),s.number()).optional(),timestamp:s.number(),environmentId:s.string().nullable().optional(),orgId:s.string().optional(),principal:s.object({subjectKind:s.enum(["member","service"]),memberId:s.string().trim().min(1).optional(),serviceAccountId:s.string().trim().min(1).optional(),keyId:s.string().trim().min(1).optional()}).optional(),subjectKey:s.string().optional(),overageBehavior:Pb.optional(),environment:s.enum(["production","sandbox"]).optional(),surface:Wb.optional(),actionId:s.string().min(1).max(128).optional(),resourceMutationId:s.string().min(1).max(200).optional(),subjectType:s.string().min(1).max(128).optional(),subjectId:s.string().min(1).max(256).optional(),decision:qb.optional(),decisionId:s.string().min(1).max(256).optional(),denyClass:s.enum(["quota","rate","concurrency","capacity","spend","adaptive"]).optional(),blockingConstraintId:s.string().min(1).max(256).optional(),providerSettlements:s.array(s.object({meterId:s.string(),providerReported:s.number(),reconciled:s.number()})).optional(),usagePolicyId:s.string().min(1).max(256).optional(),policySource:s.enum(["declared","inherited","defaulted","inferred"]).optional(),trafficClass:s.enum(br).optional(),limitProfile:s.enum(["customer_usage","business_capacity","control_plane","admin_internal","platform_abuse_only","healthcheck","none"]).optional(),leaseId:s.string(),transactionId:s.string(),gatewayMetadata:s.object({shardId:s.string(),policyVersion:s.number().int().nonnegative().optional(),artifactVersion:s.number().int().nonnegative().default(0),artifactHash:s.string().regex(/^sha256_[a-f0-9]{64}$/).optional(),leaseTelemetry:s.object({consumeRequests:s.number().int().nonnegative(),localLeaseHits:s.number().int().nonnegative(),doAllocationAttempts:s.number().int().nonnegative(),doAllocationGrants:s.number().int().nonnegative(),doAllocationDenials:s.number().int().nonnegative(),doUnavailable:s.number().int().nonnegative(),doCircuitOpen:s.number().int().nonnegative(),leaseRefreshSingleflightJoins:s.number().int().nonnegative(),leaseRefreshSingleflightJoinRate:s.number().min(0).max(1),expiredLeasesReaped:s.number().int().nonnegative(),expiredLeaseReclaimedGrant:s.array(s.number().nonnegative()),reconcileRequests:s.number().int().nonnegative(),reconcilePositiveDeltas:s.number().int().nonnegative(),reconcileNoLocalLease:s.number().int().nonnegative(),doReconcileAttempts:s.number().int().nonnegative(),doReconcileFailures:s.number().int().nonnegative(),unspentLeaseRemainderReturns:s.number().int().nonnegative(),unspentLeaseRemainderReturnFailures:s.number().int().nonnegative(),unspentLeaseRemainderReturnedGrant:s.array(s.number().nonnegative()),maxObservedPositiveReconcileDelta:s.array(s.number().nonnegative()),requestToDoRatio:s.number().nonnegative(),localLeaseHitRate:s.number().min(0).max(1),localSpendRate:s.number().min(0).max(1),maxObservedActiveLeases:s.number().int().nonnegative(),maxObservedOutstandingGrant:s.array(s.number().nonnegative()),maxObservedOutstandingGrantRatio:s.number().nonnegative(),maxObservedEmergencyReserveGrant:s.array(s.number().nonnegative()),maxObservedEmergencyReserveGrantRatio:s.number().nonnegative(),maxObservedLeaseGrant:s.array(s.number().nonnegative()),maxObservedLeaseGrantRatio:s.number().nonnegative(),maxObservedLeaseTtlMs:s.number().int().nonnegative()}).optional(),artifactCacheTelemetry:s.object({reads:s.number().int().nonnegative(),l0FreshHits:s.number().int().nonnegative(),l0Misses:s.number().int().nonnegative(),l0StaleServes:s.number().int().nonnegative(),l0StaleIfErrorServes:s.number().int().nonnegative(),l0BlockingRefreshes:s.number().int().nonnegative(),l0SingleflightJoins:s.number().int().nonnegative(),l0EarlyRefreshes:s.number().int().nonnegative(),l1Hits:s.number().int().nonnegative(),l1Misses:s.number().int().nonnegative(),l1Rejected:s.number().int().nonnegative(),l1WriteFailures:s.number().int().nonnegative(),kvHits:s.number().int().nonnegative(),kvMisses:s.number().int().nonnegative(),kvTimeouts:s.number().int().nonnegative(),kvCircuitOpenReads:s.number().int().nonnegative(),resultHits:s.number().int().nonnegative(),resultMisses:s.number().int().nonnegative(),resultDenied:s.number().int().nonnegative(),resultUnavailable:s.number().int().nonnegative(),backgroundRefreshErrors:s.number().int().nonnegative(),l0HitRate:s.number().min(0).max(1),l0SingleflightJoinRate:s.number().min(0).max(1),l0EarlyRefreshRate:s.number().min(0).max(1),l1HitRate:s.number().min(0).max(1),kvHitRate:s.number().min(0).max(1),resultHitRate:s.number().min(0).max(1),staleServeRate:s.number().min(0).max(1)}).optional(),gatewayVersion:s.string()}).passthrough()}).passthrough();var nw=s.object({path:s.string(),code:s.string(),message:s.string()}),yU=s.object({reason:s.literal("schema_validation_failed"),receivedAt:s.string(),rawPayload:s.unknown(),issues:s.array(nw),consumerVersion:s.string().optional(),originalMessageId:s.string().optional()});var Jb=[{name:"subscription.created",webhook:!0,description:"A subscriber subscription was created."},{name:"subscription.updated",webhook:!0,description:"A subscriber subscription changed (plan, status, trial)."},{name:"subscription.canceled",webhook:!0,description:"A subscriber subscription was canceled."},{name:"payment.succeeded",webhook:!0,description:"A Stripe payment succeeded for a subscription."},{name:"payment.failed",webhook:!0,description:"A Stripe payment failed for a subscription."},{name:"rate_limit.exceeded",webhook:!0,description:"The gateway denied a request for exceeding a rate limit."},{name:"entitlement.changed",webhook:!0,description:"A compiled entitlement/plan was (re)published."},{name:"usage.threshold_reached",webhook:!0,description:"A metered-usage threshold was crossed."},{name:"usage.recorded",webhook:!1,description:"The gateway recorded one usage fact; the canonical usage queue remains the coordination path and the event stream is its evidence copy."},{name:"gateway.request_denied",webhook:!1,description:"The gateway denied a request during admission or enforcement and recorded the normalized LimitDecision as evidence."},{name:"change_set.created",webhook:!1,description:"A governed Evolution ChangeSet was proposed (draft created)."},{name:"change_set.approved",webhook:!1,description:"A governed Evolution ChangeSet was approved."},{name:"change_set.applied",webhook:!1,description:"A governed Evolution ChangeSet was applied to live state."},{name:"change_set.rolled_back",webhook:!1,description:"A governed Evolution ChangeSet was rolled back."},{name:"change_set.cancelled",webhook:!1,description:"A governed Evolution ChangeSet was cancelled."},{name:"billing.event_recorded",webhook:!1,description:"A BillingEvent row was recorded; the fact references it by id (the authoritative billing row is unchanged \u2014 exact-accounting invariant)."},{name:"authz.decision",webhook:!1,description:"An authorization decision (ALLOW/DENY) mirrored from the audit log onto the spine; AuditLog stays authoritative."},{name:"repo.changed",webhook:!1,description:"A default-branch push to the business's repo touched paths at least one enabled automation rule watches (payload: branch, headSha, bounded changed-path list). Emitted pre-filtered \u2014 never on every push \u2014 so path-triggered automations (e.g. legal/** changed \u2192 notify subscribers) can fire deterministically."},{name:"automation.rule_fired",webhook:!1,description:"An enabled AutomationRule matched a spine fact (trigger + all conditions held) and its actions were scheduled."},{name:"automation.action_succeeded",webhook:!1,description:"An AutomationRule action ran to success."},{name:"automation.action_failed",webhook:!1,description:"An AutomationRule action failed (will retry per the queue)."},{name:"automation.action_denied",webhook:!1,description:"An AutomationRule action was DENIED \u2014 the automation actor lacked the action's native permission (automation is a first-class authz subject, never a bypass). Recorded + audited; the action did not run."},{name:"automation.notification",webhook:!1,description:"A notification recorded by an AutomationRule `create_notification` action \u2014 a spine fact other surfaces (portal/admin) read; no separate notification runtime."},{name:"access_request.created",webhook:!1,description:"A subscriber member requested a missing permission (AccessRequest row created). Internal \u2014 the Communication layer notifies the subscriber's admins (who can grant it)."},{name:"access_request.resolved",webhook:!1,description:"A pending AccessRequest was resolved (approved or denied) by an owner/admin. Internal \u2014 notifies the subscriber's admins."},{name:"build.failed",webhook:!1,description:"A build for the business (frontend/portal or Business-SDK) failed and did not go live. Internal \u2014 the Communication layer notifies the org's members (opt-out-able, category: deployments)."},{name:"product.published",webhook:!1,description:"A business went live for the first time (DRAFT\u2192ACTIVE first publish). Internal \u2014 notifies the org's members (category: deployments)."},{name:"workflow.failed",webhook:!1,description:"A platform workflow (config apply / Stripe sync / subscription transition) reached a terminal FAILED state. Internal \u2014 notifies the org's admins (category: deployments)."},{name:"pr.review_posted",webhook:!1,description:"The platform posted (or updated) its Business-as-Code impact report on a managed-repo pull request. Internal \u2014 emails the org's members the review synopsis + a link to the PR (category: deployments)."}],rw=Jb.map(t=>t.name),Yb=Jb.filter(t=>t.webhook).map(t=>t.name),Re=s.enum(rw);var Xb=["subscription.created","subscription.updated","subscription.canceled","payment.succeeded","payment.failed","rate_limit.exceeded","entitlement.changed","usage.threshold_reached"],dp=Xb;{let t=new Set(Yb),e=new Set(Xb),r=[...t].filter(n=>!e.has(n)),i=[...e].filter(n=>!t.has(n));if(r.length>0||i.length>0)throw new Error(`[webhooks/events] WEBHOOK_EVENT_NAMES drifted from the events catalog. Missing from order tuple: [${r.join(", ")}]; extra in order tuple: [${i.join(", ")}]. Reconcile ../events/catalog.ts (webhook: true entries) with WEBHOOK_EVENT_ORDER in this file.`)}var sn=s.enum(dp);var Se=s.enum(["immediate","period_end"]),an=s.object({default:Se.default("period_end"),when:s.object({price_increase:Se.optional(),price_decrease:Se.optional(),route_grant_added:Se.optional(),route_grant_removed:Se.optional(),limit_increased:Se.optional(),limit_reduced:Se.optional(),credit_increased:Se.optional(),credit_reduced:Se.optional(),rating_changed:Se.optional()}).strict().default({price_increase:"period_end",price_decrease:"immediate",route_grant_added:"immediate",route_grant_removed:"period_end",limit_increased:"immediate",limit_reduced:"period_end",credit_increased:"immediate",credit_reduced:"period_end",rating_changed:"period_end"}),allowImmediatePriceIncrease:s.boolean().default(!1),allowImmediateEntitlementReduction:s.boolean().default(!1)}).strict().superRefine((t,e)=>{(t.when.price_increase??t.default)==="immediate"&&!t.allowImmediatePriceIncrease&&e.addIssue({code:"custom",path:["when","price_increase"],message:"price_increase cannot switch immediately without allowImmediatePriceIncrease: true"});for(let r of["route_grant_removed","limit_reduced","credit_reduced"])(t.when[r]??t.default)==="immediate"&&!t.allowImmediateEntitlementReduction&&e.addIssue({code:"custom",path:["when",r],message:`${r} cannot switch immediately without allowImmediateEntitlementReduction: true`})}),iw=an.parse({});var ow=s.object({kind:s.literal("credit"),amount_cents:s.number().int().nonnegative(),recurs:s.boolean().optional(),expires_after_days:s.number().int().positive().optional(),label:s.string().min(1).max(120).optional()}),sw=s.object({kind:s.literal("top_up"),sku:s.string().min(1).max(120),label:s.string().min(1).max(200),price_cents:s.number().int().positive(),credit_cents:s.number().int().positive()}),Xe=s.discriminatedUnion("kind",[ow,sw]);function Qb(t){return t.kind==="credit"&&t.recurs===!0&&t.label===void 0}function ev(t){return t.kind==="credit"&&t.recurs!==!0&&t.label===void 0}function tv(t,e,r=["grants"]){if(!t)return;let i=0,n=0;for(let o of t)Qb(o)?i+=1:ev(o)&&(n+=1);i>1&&e.addIssue({code:"custom",message:"At most one recurring `credit` grant (recurs:true, no label) is allowed \u2014 recurring credit is a single canonical entry.",path:r}),n>1&&e.addIssue({code:"custom",message:"At most one one-time `credit` grant (recurs:false, no label) is allowed \u2014 one-time credit is a single canonical entry.",path:r})}function nv(t){return t.grants&&t.grants.length>0?[...t.grants]:[]}function vr(t){return nv(t).find(Qb)?.amount_cents??0}function cn(t){return nv(t).find(ev)?.amount_cents??0}var aw=s.object({percent:s.number().int().min(0).max(100)}),cw=s.object({threshold_cents:s.number().int().nonnegative(),refill_cents:s.number().int().positive()}),Qe=s.object({rollover:aw.optional(),auto_recharge:cw.optional()});var rv=s.enum(["linear","active_count","event_count"]);var lw=s.object({up_to:s.number().int().positive().nullable(),price_per_unit_micros:s.number().int().nonnegative()}),uw=s.object({strategy:s.enum(["graduated","volume"]),tiers:s.array(lw).min(1).max(20)}),et=s.object({dimension:s.string().min(1).max(64).regex(/^[a-z0-9_]+$/,"Meter dimension must be lowercase alphanumeric with underscores"),kind:rv.default("linear"),price_per_unit_micros:s.number().int().nonnegative().default(0),tiered:uw.optional(),included_units:s.number().int().positive().optional()}).superRefine((t,e)=>{if(t.tiered&&t.price_per_unit_micros>0&&e.addIssue({code:"custom",message:"`tiered` is mutually exclusive with a non-zero `price_per_unit_micros` \u2014 drop one",path:["tiered"]}),t.included_units!==void 0&&t.tiered&&e.addIssue({code:"custom",message:"`included_units` is mutually exclusive with `tiered` \u2014 a tiered schedule already expresses the included allotment as a zero-priced first tier",path:["included_units"]}),t.tiered){let r=0,i=!1;for(let n=0;n<t.tiered.tiers.length;n++){let o=t.tiered.tiers[n];if(i){e.addIssue({code:"custom",message:"Open-ended tier (`up_to: null`) must be the final tier",path:["tiered","tiers",n,"up_to"]});break}if(o.up_to===null){i=!0;continue}o.up_to<=r&&e.addIssue({code:"custom",message:`Tier upper bounds must be strictly ascending (tier ${n} = ${o.up_to} <= previous ${r})`,path:["tiered","tiers",n,"up_to"]}),r=o.up_to}i||e.addIssue({code:"custom",message:"The final tier of a `tiered` schedule must be open-ended (`up_to: null`)",path:["tiered","tiers",t.tiered.tiers.length-1,"up_to"]})}}),ln=s.enum(["month","year"]),dw=s.object({meters:s.array(et).default([]),recurring_fee_cents:s.number().int().nonnegative().default(0),billing_interval:ln.default("month"),grants:s.array(Xe).max(40).default([]),creditPolicy:Qe.optional(),trial_days:s.number().int().nonnegative().default(0),max_monthly_spend_cents:s.number().int().nonnegative().optional()});var pw=s.string().min(1),mw=s.object({type:s.literal("named"),name:s.enum(["second","minute","hour","day","week","month"])}),fw=s.object({type:s.literal("custom"),seconds:s.number().int().positive(),label:s.string().optional()}),gw=s.discriminatedUnion("type",[mw,fw]),_r=s.object({dimension:pw,window:gw,capacity:s.number().nonnegative(),enforcement:s.enum(["enforce","track"]).optional(),warnAt:s.number().min(0).max(1).optional(),scope:hr.optional(),acknowledgeUnreachable:s.boolean().optional()}),LU=s.array(_r).max(20);function hw(t){let e=/^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/.exec(t);if(!e)return!1;let r=Number(e[1]),i=Number(e[2]);return r>255||i>255||Number(e[3])>255||Number(e[4])>255?!1:r===0||r===127||r===10||r===172&&i>=16&&i<=31||r===192&&i===168||r===169&&i===254||r===100&&i>=64&&i<=127||r===192&&i===0&&Number(e[3])===0||r===198&&(i===18||i===19)||r>=224}function iv(t){let e=t.trim().toLowerCase().replace(/^\[|\]$/g,"");return e.endsWith(".")&&(e=e.slice(0,-1)),e==="localhost"||e.endsWith(".localhost")||e.startsWith("::ffff:")||e==="::"||e==="::1"||e.includes(":")&&(e.startsWith("fc")||e.startsWith("fd")||/^fe[89ab][0-9a-f]:/.test(e))||/^ff[0-9a-f]{2}:/.test(e)||e.startsWith("2002:")||/^2001:0{0,4}:/.test(e)||e.includes(":")&&e.startsWith("64:ff9b:")||/^::(?:\d+\.\d+\.\d+\.\d+|[0-9a-f]{1,4}:[0-9a-f]{1,4})$/.test(e)?!0:hw(e)}var mp=["GET","HEAD","POST","PUT","PATCH","DELETE"],yr=1048576,sv=1048576;function av(t){return new TextEncoder().encode(t).byteLength}function bw(t){try{let e=JSON.stringify(t);return typeof e=="string"?av(e):null}catch{return null}}var fp=s.string().min(1).max(64).regex(/^[a-z][a-z0-9_-]*$/,"Integration id must be lowercase alphanumeric with hyphens/underscores"),gp=s.string().min(1).max(128).regex(/^[!#$%&'*+.^_`|~0-9A-Za-z-]+$/,"Header name must be a valid HTTP token").refine(t=>t!=="*","Header wildcard is not allowed").transform(t=>t.toLowerCase()),cv=new Set(["connection","keep-alive","proxy-connection","te","trailer","transfer-encoding","upgrade","content-length","content-encoding"]),lv=gp.refine(t=>!cv.has(t)&&!["host","cookie","set-cookie","authorization","proxy-authorization"].includes(t),"Browser request header is not safe"),vw=gp.refine(t=>!cv.has(t)&&!["host","cookie","set-cookie"].includes(t),"Injection header is not safe"),_w=new Set(["cache-control","etag","last-modified","link","retry-after","x-request-id","x-ratelimit-limit","x-ratelimit-remaining","x-ratelimit-reset"]),yw=gp.refine(t=>_w.has(t),"Response header is not safe to project"),kw=s.string().max(16384).refine(t=>!/[\r\n]/.test(t),"Header values cannot contain CR/LF"),uv=s.string().min(3).max(128).regex(/^[a-z0-9!#$&^_.+-]+\/[a-z0-9!#$&^_.+-]+$/i,"Content type must be an exact media type").refine(t=>!t.includes("*"),"Content type wildcards are not allowed").transform(t=>t.toLowerCase());function dv(t){return[...new Set(t)].sort((e,r)=>e<r?-1:e>r?1:0)}function un(t,e,r=1,i=!1){return s.array(t).min(r).max(e).superRefine((n,o)=>{if(!i)return;let a=new Set;for(let[c,l]of n.entries())a.has(l)&&o.addIssue({code:"custom",path:[c],message:`duplicate value "${l}" is not allowed`}),a.add(l)}).transform(n=>dv(n))}var xw=un(lv,20,0,!0),pv=s.string().min(1).max(128).regex(/^[A-Za-z0-9_.~-]+$/,"Query parameter name is invalid"),Iw=un(pv,30,0,!0);function Sw(){return s.record(s.string(),s.string().max(16384)).superRefine((t,e)=>{let r=Object.keys(t);r.length>30&&e.addIssue({code:"custom",message:"Too many query parameters"});for(let i of r)pv.safeParse(i).success||e.addIssue({code:"custom",path:[i],message:"Browser query parameter is invalid"})})}function Ew(){return s.record(s.string(),kw).superRefine((t,e)=>{Object.keys(t).length>20&&e.addIssue({code:"custom",message:"Too many request headers"});let i=new Set;for(let[n,o]of Object.entries(t)){let a=lv.safeParse(n);if(!a.success){e.addIssue({code:"custom",path:[n],message:"Browser request header is not safe"});continue}i.has(a.data)&&e.addIssue({code:"custom",path:[n],message:`duplicate request header "${n}" is not allowed`}),i.add(a.data),typeof o!="string"&&e.addIssue({code:"custom",path:[n],message:"Request header value must be a string"})}}).transform(t=>Object.fromEntries(Object.entries(t).map(([e,r])=>[e.toLowerCase(),r])))}function ww(t){return t.split("/").some(e=>{let r=e.replace(/%2e/gi,".");return r==="."||r===".."})}var hp=s.string().min(1).max(500).superRefine((t,e)=>{let r=i=>{e.addIssue({code:"custom",message:i})};if(/^[a-z][a-z0-9+.-]*:\/\//i.test(t)){r(`Pass an origin-relative path, not a full URL ("${t}"). The upstream origin comes from the integration's declared \`upstream\` \u2014 e.g. "/api/projects".`);return}if(t.startsWith("//")){r('Protocol-relative paths are not allowed \u2014 "//host/x" targets another origin. Use a single leading slash.');return}if(!t.startsWith("/")){r(`Request path must start with "/" \u2014 got "${t}".`);return}if(t.includes("?")){r("Put query parameters in the `query` option, not the path \u2014 they are allowlisted per operation.");return}if(t.includes("#")){r("Fragments are never sent to a server; remove the '#'.");return}if(t.includes("\\")){r("Backslashes are not path separators; use '/'.");return}if(t.includes("*")){r("Wildcards are not allowed \u2014 an operation names one exact path so the allowlist stays decidable.");return}ww(t)&&r("Relative segments ('.' / '..') are not allowed \u2014 they could escape the declared path.")}),mv=s.string().max(2048).superRefine((t,e)=>{let r;try{r=new URL(t)}catch{e.addIssue({code:"custom",message:"Upstream must be a valid HTTPS origin"});return}r.protocol!=="https:"&&e.addIssue({code:"custom",message:"Upstream must use HTTPS"}),(r.username||r.password)&&e.addIssue({code:"custom",message:"Upstream cannot include userinfo"}),r.port&&r.port!=="443"&&e.addIssue({code:"custom",message:"Upstream must use the default HTTPS port"}),(r.pathname!=="/"||r.search||r.hash)&&e.addIssue({code:"custom",message:"Upstream must be an origin without a path, query, or fragment"}),r.hostname.includes("*")&&e.addIssue({code:"custom",message:"Upstream wildcard hosts are not allowed"}),iv(r.hostname)&&e.addIssue({code:"custom",message:"Upstream host is private or loopback"})}).transform(t=>new URL(t).origin),$w=s.discriminatedUnion("kind",[s.object({kind:s.literal("none")}).strict(),s.object({kind:s.literal("json"),maxBytes:s.number().int().positive().max(yr)}).strict(),s.object({kind:s.literal("text"),maxBytes:s.number().int().positive().max(yr),contentTypes:un(uv,10)}).strict()]),Ow=s.string().min(1).max(500).regex(/^(?:\/(?:[^~/]|~[01])*)+$/,"Response field must be an RFC 6901 JSON pointer"),Tw=s.object({kind:s.literal("json"),contentTypes:un(uv,10),maxBytes:s.number().int().positive().max(sv),jsonPointers:un(Ow,100),responseHeaders:un(yw,20,0,!0).default([])}).strict(),ov=s.string().min(1).max(128).regex(/^[A-Z][A-Z0-9_]*$/,"secretRef must be UPPER_SNAKE"),Aw=s.discriminatedUnion("location",[s.object({secretRef:ov,location:s.literal("header"),name:vw,template:s.enum(["{value}","Bearer {value}"])}).strict(),s.object({secretRef:ov,location:s.literal("query"),name:s.string().min(1).max(128).regex(/^[A-Za-z0-9_.~-]+$/,"Query parameter name is invalid")}).strict()]),Rw=s.object({method:s.enum(mp),path:hp,headers:xw.default([]),query:Iw.default([]),body:$w}).strict(),Cw=s.array(Rw).min(1).max(100).superRefine((t,e)=>{let r=new Set;for(let[i,n]of t.entries()){let o=`${n.method} ${n.path}`;r.has(o)&&e.addIssue({code:"custom",path:[i],message:`duplicate frontend integration operation "${o}"`}),r.add(o)}}).transform(t=>[...t].sort((e,r)=>{let i=`${e.method} ${e.path}`,n=`${r.method} ${r.path}`;return i<n?-1:i>n?1:0})),fv=s.object({id:fp,upstream:mv,request:s.object({operations:Cw}).strict(),injection:Aw,response:Tw}).strict().superRefine((t,e)=>{if(t.injection.location==="header")for(let[r,i]of t.request.operations.entries())i.headers.includes(t.injection.name)&&e.addIssue({code:"custom",path:["request","operations",r,"headers"],message:`browser request header collides with injected header "${t.injection.name}"`})}),gv=fv;function hv(t){if(t&&typeof t=="object"&&!Object.isFrozen(t)){Object.freeze(t);for(let e of Object.values(t))hv(e)}return t}var Pw=fv.transform(t=>hv(t)),bp=s.array(gv).max(200).superRefine((t,e)=>{let r=new Set;for(let[i,n]of t.entries())r.has(n.id)&&e.addIssue({code:"custom",path:[i,"id"],message:`duplicate frontend integration id "${n.id}"`}),r.add(n.id)}).transform(t=>[...t].sort((e,r)=>e.id<r.id?-1:e.id>r.id?1:0)),vp=s.array(fp).max(200).transform(t=>dv(t)).optional(),pp=s.lazy(()=>s.union([s.null(),s.boolean(),s.number().finite(),s.string().max(65536),s.array(pp).max(100),s.record(s.string().min(1).max(128),pp).superRefine((t,e)=>{Object.keys(t).length>100&&e.addIssue({code:"custom",message:"JSON object has too many keys"})})])),Nw=s.discriminatedUnion("kind",[s.object({kind:s.literal("json"),value:pp}).strict(),s.object({kind:s.literal("text"),value:s.string().max(yr)}).strict()]).superRefine((t,e)=>{let r=t.kind==="json"?bw(t.value):av(t.value);(r===null||r>yr)&&e.addIssue({code:"custom",message:"Request body exceeds the UTF-8 byte limit"})}),Dw=s.object({integrationId:fp,path:hp,method:s.enum(mp),headers:Ew().optional(),query:Sw().optional(),body:Nw.optional()}).strict();var Uw={meters:s.array(et).default([]),recurring_fee_cents:s.number().int().nonnegative().default(0),billing_interval:ln.default("month"),trial_days:s.number().int().nonnegative().default(0),max_monthly_spend_cents:s.number().int().nonnegative().optional(),min_monthly_spend_cents:s.number().int().nonnegative().optional(),grants:s.array(Xe).max(40).default([]),creditPolicy:Qe.optional()},bv=s.object({key:s.string().min(1).max(64).regex(/^[a-z0-9_-]+$/,"Plan key must be lowercase alphanumeric with hyphens/underscores"),name:s.string().min(1).max(100),description:s.string().max(500).optional(),details:s.array(s.string().max(200)).max(10).optional(),...Uw,free:s.boolean().default(!1),limits:s.array(_r).max(20).default([]),routeGrants:s.array(s.string().min(1).max(500)).max(500).transform(t=>[...new Set(t)].sort()).optional(),frontendIntegrationGrants:vp,resource_limits:s.record(s.string().min(1).max(120),s.number().int().nonnegative()).default({}),overageBehavior:s.enum(["block","allow_and_bill"]).default("block"),selfServeEnabled:s.boolean().default(!0),capacity:sp.optional(),archive:s.object({at:s.string().datetime().optional(),transitionTo:s.string().optional(),strategy:s.enum(["auto","explicit","block"]).default("auto")}).optional()}).strict(),Ho=bv.superRefine((t,e)=>{tv(t.grants,e)});var zw=/^\$\{[A-Z][A-Z0-9_]{0,127}\}$/,_p=s.string().min(3).max(200).refine(t=>zw.test(t),{message:"secret must use ${VAR} interpolation syntax (e.g. ${WEBHOOK_SECRET}); raw secrets in YAML are rejected. Define the env var in the per-product secret store and reference it here."}),yp=s.object({maxAttempts:s.number().int().min(1).max(20).default(5),backoff:s.enum(["exponential","fixed"]).default("exponential")}),kp=s.object({id:s.string().min(1).max(64).regex(/^[a-z0-9_-]+$/,"Webhook endpoint id must be lowercase alphanumeric with hyphens/underscores"),url:s.string().url("webhooks.endpoints[].url must be a valid URL"),secret:_p,events:s.array(sn).min(1,"webhooks.endpoints[].events must subscribe to \u2265 1 event"),enabled:s.boolean().default(!0),retryPolicy:yp.default({maxAttempts:5,backoff:"exponential"})}),xp=s.object({endpoints:s.array(kp).max(50).default([])});var jw=s.object({meters:s.array(et).optional(),recurring_fee_cents:s.number().int().nonnegative().optional(),billing_interval:ln.optional(),grants:s.array(Xe).max(40).optional(),creditPolicy:Qe.optional(),trial_days:s.number().int().nonnegative().optional(),max_monthly_spend_cents:s.number().int().nonnegative().optional(),limits:s.array(_r).max(20).optional(),overageBehavior:s.enum(["block","allow_and_bill"]).optional(),selfServeEnabled:s.boolean().optional()}).strict(),Lw=s.object({url:s.string().url().optional(),secret:_p.optional(),events:s.array(sn).optional(),enabled:s.boolean().optional(),retryPolicy:yp.partial().optional()}).strict(),Mw=s.object({plans:s.record(s.string(),jw).optional(),webhooks:s.object({endpoints:s.record(s.string(),Lw).optional()}).strict().optional()}).strict(),Ip=s.record(s.string().min(1).max(64),Mw);var Sp=s.enum(["query","mutation"]),Ep=s.enum(["none","metadata","full"]),wp=s.object({type:s.string().min(1).max(64).regex(/^[a-zA-Z0-9_.:-]+$/),from:s.enum(["header","path_param"]),name:s.string().min(1).max(120)}),$p=s.object({resource:s.string().min(1).max(100).regex(/^[a-z0-9_.:-]+$/),effect:s.enum(["create","delete"])}),vv=s.object({id:s.string().min(1).max(160).regex(/^[a-z0-9_.:-]+$/),title:s.string().min(1).max(160).optional(),kind:Sp,actorType:s.string().min(1).max(64).regex(/^[a-zA-Z0-9_.:-]+$/).optional(),subject:wp.optional(),inputSchemaRef:s.string().min(1).max(240).optional(),audit:Ep.default("metadata"),resource:$p.optional()});var _v=s.enum(["subscription","subject"]),yv=s.enum(["reported","action_inferred"]),kv=s.string().min(1).max(100).regex(/^[a-z0-9_.:-]+$/),xv=s.object({name:kv,display:s.string().min(1).max(120).optional(),scope:_v.default("subscription"),subjectType:s.string().min(1).max(64).regex(/^[a-zA-Z0-9_.:-]+$/).optional(),countSource:yv.default("reported")}).superRefine((t,e)=>{t.scope==="subject"&&!t.subjectType&&e.addIssue({code:"custom",path:["subjectType"],message:"subjectType is required when resource scope is subject"}),t.scope==="subscription"&&t.subjectType&&e.addIssue({code:"custom",path:["subjectType"],message:"subjectType is only valid for subject-scoped counted resources"})}),Op=s.array(xv).max(100).default([]);var Iv=/^[a-z0-9][a-z0-9_-]*$/,Tp=s.string().min(1).max(64).regex(Iv,"backend id must be a lowercase slug ([a-z0-9][a-z0-9_-]*)"),Sv=s.enum(["direct","tunnel"]),Ev=s.enum(["embedded","sidecar"]);var wv=s.object({mode:Sv.default("direct"),runner:Ev.optional()}).strict(),$v=s.object({required:s.boolean().default(!0)}).strict(),Ov=s.object({name:s.string().min(1).max(120).optional(),slug:Tp.optional(),transport:wv.default({mode:"direct"}),verification:$v.default({required:!0}),meters:s.array(s.string().min(1).max(64)).max(100).optional(),default:s.boolean().optional()}).strict(),Ap=s.record(Tp,Ov),dn=Tp,pn={unknownBackendInRoute:"UNKNOWN_BACKEND_IN_ROUTE",ambiguousDefaultBackend:"AMBIGUOUS_DEFAULT_BACKEND",routeMeterNotAllowedByBackend:"ROUTE_METER_NOT_ALLOWED_BY_BACKEND",unknownMeterInBackend:"UNKNOWN_METER_IN_BACKEND"};function Rp(t){let e=Object.keys(t??{});if(e.length===0)return{defaultId:null,ambiguous:!1};if(e.length===1)return{defaultId:e[0],ambiguous:!1};let r=e.filter(i=>t[i]?.default===!0);return r.length===1?{defaultId:r[0],ambiguous:!1}:{defaultId:null,ambiguous:!0}}var Av=s.enum(["long","short","blocking"]).default("long");var Rv=s.object({method:s.enum(["GET","POST","PUT","PATCH","DELETE","HEAD","OPTIONS"]),path:s.string().min(1).max(500).regex(/^\/[a-zA-Z0-9_/:.{}-]*$/,"path must be a concrete route starting with /; wildcard segments are reserved for meterRoutes selectors").refine(t=>!t.split("/").some(e=>["{__fs_rest}",":__fs_rest","[__fs_rest]"].includes(e)),"reserved greedy path parameters are only valid in non-granting meter selectors")});function Bw(t){let e=t.trim();if(!e)return!1;let[r,i,n]=e.split("-");if(n!==void 0||!/^\d{3}$/.test(r??""))return!1;let o=Number(r),a=i===void 0?o:Number(i);return i!==void 0&&!/^\d{3}$/.test(i)?!1:o>=100&&o<=599&&a>=100&&a<=599&&o<=a}function Cv(t){return t.split(",").every(Bw)}var Vo=s.union([s.string().min(1).max(100).refine(Cv,{message:"onStatusCodes must be comma-separated HTTP status codes or numeric ranges, e.g. 200-299,304"}),s.array(s.number().int().min(100).max(599)).min(1).max(100)]),Pv=s.enum(["public","required"]),Nv=s.enum(["network","5xx"]),Dv=s.object({maxAttempts:s.number().int().min(1).max(3),retryOn:s.array(Nv).min(1).max(2),backoff:s.object({base:s.number().int().min(0).max(6e4),max:s.number().int().min(0).max(6e4),jitter:s.number().min(0).max(1)}).strict().refine(t=>t.max>=t.base,{message:"retry.backoff.max must be >= retry.backoff.base"}),budgetRatio:s.number().min(0).max(1)}).strict(),Uv=s.enum(["ui","api","agent","webhook","cli"]),Tv=new Map(Uv.options.map((t,e)=>[t,e])),Fw=s.array(Uv).min(1).refine(t=>t.every((e,r)=>r===0||(Tv.get(e)??-1)>(Tv.get(t[r-1])??-1)),{message:"surfaces must be a canonical set: unique and sorted by surface order (ui, api, agent, webhook, cli)"}),Ko=s.object({authMode:Pv.optional(),timeoutMs:s.number().int().min(1).max(6e5).optional(),idleTimeoutMs:s.number().int().min(1).max(6e5).optional(),retry:Dv.optional(),subject:s.enum(["member","service"]).optional(),surfaces:Fw.optional(),hidden:s.boolean().optional()}).strict(),Go=s.object({dimension:s.string().min(1).max(64).default("requests"),window:s.union([s.object({type:s.literal("named"),name:s.enum(["second","minute","hour","day","week","month"])}),s.object({type:s.literal("custom"),seconds:s.number().int().positive(),label:s.string().min(1).max(64).optional()})]),capacity:s.number().nonnegative(),enforcement:s.enum(["enforce","track"]).default("enforce")}).strict(),zv=s.object({match:Rv,metering:s.object({defaults:s.record(s.string().min(1).max(64),s.number().finite().nonnegative()).optional(),reports:s.array(s.string().min(1).max(64)).max(20).optional(),onStatusCodes:Vo.optional(),postStreamBilling:s.boolean().optional()}).optional(),unmetered:s.boolean().optional(),inheritDefaultMeters:s.boolean().optional(),action:s.string().min(1).max(160).regex(/^[a-z0-9_.:-]+$/).optional(),backend:dn.optional(),usagePolicy:Bo.optional(),policy:Ko.optional(),limits:s.array(Go).min(1).max(8).optional()}).strict(),jv=s.object({rollout_key:s.string().min(1).max(120).regex(/^[a-z0-9_-]+$/,"rollout_key must be lowercase alphanumeric with hyphens/underscores").optional(),required_flags:s.array(s.string().min(1).max(120).regex(/^[a-z0-9_-]+$/)).max(10).optional()}),Cp=s.object({description:s.string().max(500).optional(),mutation_class:s.enum(["runtime","contractual"]).default("contractual"),cacheProfile:Av,routes:s.array(zv).min(1).max(50),runtime:jv.default({}),actions:s.array(vv).max(100).optional(),backend:dn.optional()}).strict();var Hw="{__fs_rest}";function Vw(t){if(t.startsWith(":"))return t.slice(1);if(t.startsWith("{")&&t.endsWith("}")||t.startsWith("[")&&t.endsWith("]"))return t.slice(1,-1)}function Pp(t,e){let r=e.split("/").map((i,n)=>n===0?i:i==="**"||i===Hw?"**":i==="*"||Vw(i)!==void 0?"*":i).join("/");return`${t.toUpperCase()} ${r}`}function bt(t){return t.actionId??Pp(t.method,t.path)}function Lv(t,e){t.usagePricing!==void 0&&e.addIssue({code:"custom",path:["usagePricing"],message:"usagePricing is not supported. Define usage.meters.<key>.rating instead."})}function Mv(t,e){t.filter(i=>i.free).length>1&&e.addIssue({code:"custom",path:["plans"],message:"Only one free plan is allowed per product"}),t.forEach((i,n)=>{i.free&&(Kw(i,n,e),Gw(i,n,e))})}function Kw(t,e,r){(Gv(t)??0)!==0&&r.addIssue({code:"custom",path:["plans",e,"recurring_fee_cents"],message:"Free plans must have zero price"})}function Gw(t,e,r){t.limits.some(n=>!n.enforcement||n.enforcement==="enforce")||r.addIssue({code:"custom",path:["plans",e,"limits"],message:"Free plans must include at least one hard enforced limit"})}function Bv(t,e){let r=new Map;t.forEach((i,n)=>{if(i.free)return;let o=Gv(i);if(o===void 0||o<=0)return;let a=Jw(i,o),c=r.get(a);if(c){e.addIssue({code:"custom",path:["plans",n,"recurring_fee_cents"],message:`Paid plan price duplicates plan "${c}" (${a})`});return}r.set(a,i.key)})}function Fv(t,e){let r=new Set((t.metering?.meters??[]).map(n=>n.key).filter(n=>typeof n=="string"&&n.length>0)),i=new Set(Object.keys(t.usage?.meters??{}));t.plans.forEach((n,o)=>{let a=n.meters;a&&a.forEach((c,l)=>{let d=c.dimension;typeof d!="string"||d.length===0||r.has(d)||i.has(d)||e.addIssue({code:"custom",path:["plans",o,"meters",l,"dimension"],message:`Plan "${n.key}" prices meter "${d}" but no metering.meters[] entry and no usage.meters[] entry declares it.`})})})}function Hv(t,e){if(!t.routeCatalog)return;let r=new Set((t.metering?.meters??[]).map(n=>n.key).filter(n=>typeof n=="string"&&n.length>0)),i=!1;for(let[n,o]of Object.entries(t.routeCatalog))(o.routes??[]).forEach((c,l)=>{let d=Np(c);d.length!==0&&(i=!0,d.forEach((u,p)=>{r.has(u)||e.addIssue({code:"custom",path:["routeCatalog",n,"routes",l,"metering",p],message:`Route references unknown meter "${u}". Declare it in metering.meters[].`})}))});i&&r.size===0&&e.addIssue({code:"custom",path:["metering","meters"],message:"One or more routes declare metering keys but `metering.meters[]` is empty. Declare meters at the product level first."})}function Zw(t,e){let r=new Map;for(let n of t.plans)r.set(n.key,new Set);if(!t.routeCatalog){for(let n of r.values())for(let o of e)n.add(o);return r}let i=Object.values(t.routeCatalog).flatMap(n=>n.routes??[]);for(let n of t.plans){let o=r.get(n.key),a=new Set(n.routeGrants??[]);for(let c of i){if(c.unmetered===!0||!c.path)continue;let l=bt({actionId:c.actionId,method:c.method,path:c.path});if(a.has(l))for(let d of Np(c))o.add(d)}}return r}function Np(t){let e=new Set;for(let r of Object.keys(t.metering?.defaults??{}))e.add(r);for(let r of t.metering?.reports??[])e.add(r);return[...e]}function Ww(t){if(!t||typeof t!="object")return null;let e=t;return typeof e.dimension=="string"?e.dimension:null}var qw=new Set(["credits"]);function Vv(t,e){if(!t.plans||t.plans.length===0)return;let r=new Set((t.metering?.meters??[]).map(o=>o.key).filter(o=>typeof o=="string"&&o.length>0)),i=new Set(Object.keys(t.usage?.meters??{})),n=Zw(t,r);t.plans.forEach((o,a)=>{let c=o.limits??[],l=n.get(o.key)??new Set;c.forEach((d,u)=>{if(d&&typeof d=="object"?d.acknowledgeUnreachable===!0:!1)return;let m=Ww(d);m&&(l.has(m)||i.has(m)||qw.has(m)||e.addIssue({code:"custom",path:["plans",a,"limits",u,"meter"],message:`Plan "${o.key}" limits meter "${m}" but no directly granted route emits this meter, and the meter is not declared under usage.meters either. Either add a matching routeGrants entry for a route that emits "${m}", declare the meter under metering.meters[] or usage.meters, or set acknowledgeUnreachable: true if the limit is intentional (e.g. soft budget).`}))})})}function Kv(t,e){let r=t.backend;if(!r||Object.keys(r).length===0)return;let i=new Set(Object.keys(r)),n=new Set((t.metering?.meters??[]).map(l=>l.key).filter(l=>typeof l=="string"&&l.length>0));for(let[l,d]of Object.entries(r))(d.meters??[]).forEach((u,p)=>{n.has(u)||e.addIssue({code:"custom",path:["backend",l,"meters",p],message:`${pn.unknownMeterInBackend}: backend "${l}" allows meter "${u}" but no metering.meters[] entry declares it.`})});let{defaultId:o,ambiguous:a}=Rp(r),c=!1;for(let l of Object.values(t.routeCatalog??{}))for(let d of l.routes??[])d.backend===void 0&&(c=!0);a&&c&&e.addIssue({code:"custom",path:["backend"],message:`${pn.ambiguousDefaultBackend}: product declares ${i.size} backends but no single default \u2014 mark exactly one backend \`default: true\` or bind every route explicitly.`});for(let[l,d]of Object.entries(t.routeCatalog??{}))(d.routes??[]).forEach((u,p)=>{let m=u.backend??o;if(u.backend!==void 0&&!i.has(u.backend)){e.addIssue({code:"custom",path:["routeCatalog",l,"routes",p,"backend"],message:`${pn.unknownBackendInRoute}: route binds backend "${u.backend}" which is not declared in the product \`backend\` block.`});return}if(!m)return;let v=r[m]?.meters;if(!v)return;let w=new Set(v);for(let E of Np(u))w.has(E)||e.addIssue({code:"custom",path:["routeCatalog",l,"routes",p,"metering"],message:`${pn.routeMeterNotAllowedByBackend}: route meters "${E}" but backend "${m}" does not allow it (backend.meters[] = [${v.join(", ")}]).`})})}function Gv(t){return t.recurring_fee_cents}function Jw(t,e){return`USD:month:${e}`}var Yw=s.object({subdomain:s.string().min(1).max(63).regex(/^[a-z0-9]([a-z0-9-]*[a-z0-9])?$/,"Subdomain must be lowercase alphanumeric with optional hyphens")}),Zv=s.enum(["exact_pre_request","estimated_then_settled","postpaid","strict_concurrency"]),Xw=s.enum(Nb),Dp=s.object({key:s.string().min(1).max(64).regex(/^[a-z0-9_]+$/,"Meter key must be lowercase alphanumeric with underscores"),display:s.string().min(1).max(100),unit:s.string().max(20).optional(),routeDefault:s.number().finite().nonnegative().optional(),enforcementType:Zv.default("estimated_then_settled"),aggregation:s.enum(["SUM","COUNT","MAX","UNIQUE_COUNT","LATEST"]).default("COUNT"),window:s.enum(["minute","hour","day","month","billing_period"]).default("billing_period"),valueProperty:s.string().optional(),uniqueProperty:s.string().optional(),groupBy:s.array(s.string()).optional(),eventCode:s.string().optional(),tokenCategory:Xw.optional(),reserveStrategy:s.enum(["reserve_max","estimate","count_actual"]).optional(),reserveCeiling:s.number().int().positive().optional(),pairsWith:s.string().min(1).max(64).optional()}),Wv=s.string().min(1).max(64).regex(/^[a-z0-9_]+$/,"Usage measure must be lowercase alphanumeric with underscores"),Qw=s.enum(["pass_through","markup"]),e$=s.object({source:s.literal("fixed"),rates:s.record(s.string().min(1),s.record(Wv,s.number().int().nonnegative()))}),t$=s.object({source:s.literal("provider_catalog"),catalog:s.string().min(1).max(100),pricePolicy:Qw.default("pass_through"),markupPercent:s.number().nonnegative().max(1e4).optional(),marginMicros:s.number().int().nonnegative().optional()}),qv=s.discriminatedUnion("source",[e$,t$]),Jv=s.object({selector:s.string().min(1).max(100).optional(),measures:s.array(Wv).min(1).max(20),rating:qv.optional()}),Yv=s.object({meters:s.record(s.string().min(1).max(64).regex(/^[a-z0-9_]+$/),Jv)}),n$=s.object({defaults:s.record(s.string().min(1).max(64),s.number().finite().nonnegative()).optional(),reports:s.array(s.string().min(1).max(64)).max(20).optional(),onStatusCodes:Vo.optional(),postStreamBilling:s.boolean().optional()}),r$=s.object({kind:Sp,title:s.string().min(1).max(160).optional(),actorType:s.string().min(1).max(64).regex(/^[a-zA-Z0-9_.:-]+$/).optional(),subject:wp.optional(),audit:Ep,resource:$p.optional()}),Xv=s.object({method:s.enum(["GET","POST","PUT","PATCH","DELETE","HEAD","OPTIONS"]),path:s.string().min(1).max(500).regex(/^\/[a-zA-Z0-9_/:.{}-]*$/,"path must be a concrete route starting with /; wildcard segments are reserved for meterRoutes selectors").refine(t=>!t.split("/").some(e=>["{__fs_rest}",":__fs_rest","[__fs_rest]"].includes(e)),"reserved greedy path parameters are only valid in non-granting meter selectors"),actionId:s.string().min(1).max(120).optional(),actionMeta:r$.optional(),unmetered:s.boolean().optional(),metering:n$.optional(),inheritDefaultMeters:s.boolean().optional(),backend:dn.optional(),limits:s.array(Go).min(1).max(8).optional(),policy:Ko.optional()}).strict(),Up=s.object({description:s.string().max(500).optional(),routes:s.array(Xv).min(1).max(50)}),Qv=s.record(s.string().min(1).max(100).regex(/^[a-z0-9_.:-]+$/),Up),e_=s.enum(["report","pull_request"]),t_=s.enum(["safe","non_blocking","economic_risk","blocking"]),n_=s.object({cleanup:s.object({enabled:s.boolean().default(!1),mode:e_.default("report")}).default({enabled:!1,mode:"report"}),change_approval:s.object({auto_merge_max_risk:s.enum(["none","safe","non_blocking"]).default("none"),require_human_for:s.array(t_).default(["economic_risk","blocking"])}).default({auto_merge_max_risk:"none",require_human_for:["economic_risk","blocking"]})}).default({cleanup:{enabled:!1,mode:"report"},change_approval:{auto_merge_max_risk:"none",require_human_for:["economic_risk","blocking"]}}),r_=s.enum(["clerk","test-personas"]),i_=s.object({context_tokens:s.object({enabled:s.boolean().default(!0)}).optional(),portal_auth:s.object({strategy:r_}).optional()}),vt=s.object({business:s.object({visibility:s.enum(["public","private"]).default("public"),rbac:s.boolean().optional()}),gateway:s.object({authHeader:s.string().min(1).max(100).default("x-api-key"),upstreamAuth:s.object({type:s.enum(["none","static_bearer"]),token:s.string().optional()}).default({type:"none"})}),metering:s.object({meters:s.array(Dp).max(10).default([]),billOn4xx:s.boolean().default(!1)}).default({meters:[],billOn4xx:!1}),backend:Ap.optional(),usage:Yv.optional(),usagePricing:s.never({error:"usagePricing is not supported. Define usage.meters.<key>.rating instead."}).optional(),routeCatalog:Qv.optional(),resources:Op,policies:n_,customer_context:i_.optional(),frontend:s.never({error:"frontend is not authorable in Business-as-Code. Define pages and navigation in the frontend application; use route policy surfaces for API/UI callability."}).optional(),billing:s.object({applyLimitUpgradesInstantly:s.boolean().optional(),subscriberChangePolicy:an.default({default:"period_end",when:{price_increase:"period_end",price_decrease:"immediate",route_grant_added:"immediate",route_grant_removed:"period_end",limit_increased:"immediate",limit_reduced:"period_end",credit_increased:"immediate",credit_reduced:"period_end",rating_changed:"period_end"},allowImmediatePriceIncrease:!1,allowImmediateEntitlementReduction:!1})}).default({subscriberChangePolicy:{default:"period_end",when:{price_increase:"period_end",price_decrease:"immediate",route_grant_added:"immediate",route_grant_removed:"period_end",limit_increased:"immediate",limit_reduced:"period_end",credit_increased:"immediate",credit_reduced:"period_end",rating_changed:"period_end"},allowImmediatePriceIncrease:!1,allowImmediateEntitlementReduction:!1}}),plans:s.array(Ho).max(4).default([]),lifecycle:s.object({breaking_changes:s.object({require_deprecation_window_days:s.number().int().nonnegative().default(0),require_successor_route:s.boolean().default(!1)}).default({require_deprecation_window_days:0,require_successor_route:!1})}).default({breaking_changes:{require_deprecation_window_days:0,require_successor_route:!1}}),webhooks:xp.optional(),environments:Ip.optional(),ephemeral:s.object({defaultPlan:s.string().min(1).optional()}).optional()}).superRefine((t,e)=>{Lv(t,e),Mv(t.plans,e),Bv(t.plans,e),Fv(t,e),Hv(t,e),Vv(t,e),Kv(t,e)}),i$=s.object({business:vt.shape.business}),o$=s.object({gateway:vt.shape.gateway}),s$=s.object({metering:vt.shape.metering}),a$=s.object({plans:vt.shape.plans});var o_=1,s_="business",jp=`${s_}/index.ts`,c$=s.object({irVersion:s.literal(o_),sdkVersion:s.string().min(1).max(64),business:vt,routes:s.array(Cp).max(200).default([]),frontendIntegrations:bp.default([])}).strict().superRefine((t,e)=>{let r=new Map;for(let[i,n]of t.routes.entries())for(let[o,a]of n.routes.entries()){let c=bt({actionId:a.action,method:a.match.method,path:a.match.path}),l=Pp(a.match.method,a.match.path),d=a.action?n.actions?.find(m=>m.id===a.action):void 0,u=a_({action:d,layer:{backend:n.backend,cacheProfile:n.cacheProfile,description:n.description,mutation_class:n.mutation_class,runtime:n.runtime},route:{backend:a.backend??n.backend,inheritDefaultMeters:a.inheritDefaultMeters,limits:a.limits,metering:a.metering,policy:a.policy,unmetered:a.unmetered,usagePolicy:a.usagePolicy}}),p=r.get(c);if(p&&p.endpoint!==l){e.addIssue({code:"custom",path:["routes",i,"routes",o,"action"],message:`route id collision for "${c}": maps to both ${p.endpoint} and ${l}`});continue}if(p&&p.behavior!==u){e.addIssue({code:"custom",path:["routes",i,"routes",o],message:`conflicting route definition for "${c}"`});continue}r.set(c,{endpoint:l,behavior:u})}for(let[i,n]of t.business.plans.entries()){for(let[o,a]of(n.routeGrants??[]).entries())r.has(a)||e.addIssue({code:"custom",path:["business","plans",i,"routeGrants",o],message:`unknown route grant "${a}" for plan "${n.key}"`});for(let[o,a]of(n.frontendIntegrationGrants??[]).entries())t.frontendIntegrations.some(c=>c.id===a)||e.addIssue({code:"custom",path:["business","plans",i,"frontendIntegrationGrants",o],message:`unknown frontend integration grant "${a}" for plan "${n.key}"`})}});function a_(t){return zp(JSON.parse(JSON.stringify(t)))}function zp(t){return Array.isArray(t)?`[${t.map(zp).join(",")}]`:t&&typeof t=="object"?`{${Object.entries(t).sort(([e],[r])=>e<r?-1:e>r?1:0).map(([e,r])=>`${JSON.stringify(e)}:${zp(r)}`).join(",")}}`:JSON.stringify(t)}var lj=s.object({subscriberChangePolicy:an.optional()}),uj=s.object({code:s.string(),kind:s.enum(["percent_off","amount_off","free_months"]),amount:s.number().optional(),durationMonths:s.number(),applicablePlanIds:s.array(s.string()).optional(),maxRedemptions:s.number().optional(),activeFrom:s.string().optional(),activeUntil:s.string().optional(),status:s.enum(["ACTIVE","ARCHIVED"]).optional()}),dj=s.object({id:s.string(),actorUserId:s.string().optional(),action:s.string(),decision:s.string().optional(),timestamp:s.string(),details:s.unknown().optional()}),pj=s.object({name:s.string(),branch:s.string().optional(),isProduction:s.boolean().optional()}),mj=s.object({id:s.string(),name:s.string(),apiKeyId:s.string().optional()});var c_=s.object({id:s.string(),billingCycleId:s.string(),effectiveStart:s.string(),effectiveEnd:s.string(),compiledPlanId:s.string()}),l_=s.object({currentPeriod:c_,priorPeriod:c_.optional()});var l$=s.object({subjectKey:s.string(),subscriptionId:s.string(),subscriberId:s.string(),businessId:s.string(),organizationId:s.string(),compiledPlanId:s.string(),activeEntitlementHash:s.string().optional(),generation:s.number(),enforcementMode:s.enum(["STRICT","GRACE","TRACK_ONLY"]),dedicatedShard:s.enum(["ACTIVE","DRAINING"]).optional(),memberAuthz:s.record(s.string(),s.object({permissions:s.array(s.string()),roles:s.array(s.string())})).optional(),memberAuthzComputedAt:s.number().optional(),postStreamLockouts:s.array(s.object({code:s.literal("post_stream_overspend"),reason:s.literal("usage_exhausted"),constraintKey:s.string().min(1),cycleId:s.string().min(1),dimension:s.string().min(1),currentCapacity:s.number().nonnegative(),observedUsage:s.number().nonnegative(),lockedAt:s.string().min(1),expiresAt:s.string().min(1)})).optional(),subscriptionStatus:s.string(),subscriberStatus:s.string(),scopes:s.array(s.string()),periods:l_,expiresAt:s.number().optional(),trialEndsAt:s.string().optional()}),u$=s.discriminatedUnion("kind",[s.object({kind:s.literal("found"),state:l$,expiresAt:s.number(),ttlSeconds:s.number()}),s.object({kind:s.literal("not_found"),negativeCacheTtlSeconds:s.number().default(60)}),s.object({kind:s.literal("revoked"),negativeCacheTtlSeconds:s.number().default(300),reason:s.string().optional()}),s.object({kind:s.literal("rate_limited"),retryAfterSeconds:s.number().default(10)})]),Sj=s.object({environmentId:s.string().nullable(),subjectKeys:s.array(s.string()).min(1).max(500)}),Ej=s.object({results:s.array(s.object({subjectKey:s.string(),result:u$}))}),d$=s.object({keyId:s.string(),orgId:s.string(),businessId:s.string(),compiledPlanId:s.string(),entitlementHash:s.string().optional(),subscriptionId:s.string(),subscriberId:s.string(),apiKeyId:s.string().nullable(),subjectKey:s.string(),entitlementVersion:s.number().int(),status:s.enum(["active","revoked"]),subscriberStatus:s.enum(["ONBOARDING","ACTIVE","SUSPENDED"]),subscriptionStatus:s.string(),environment:s.enum(["production","sandbox"]).optional(),environmentId:s.string().optional(),scopes:s.array(s.string()).default([]),permissions:s.array(s.string()).optional(),roles:s.array(s.string()).optional(),entitlement:s.unknown().optional(),principal:s.object({subjectKind:s.enum(["member","service"]),memberId:s.string().optional(),serviceAccountId:s.string().optional(),keyId:s.string()}),currentPeriodId:s.string().optional(),currentPeriodStartMs:s.number().int().nonnegative().optional(),expiresAt:s.number().nullable().optional()}),wj=s.discriminatedUnion("kind",[s.object({kind:s.literal("found"),record:d$,expiresAt:s.number(),ttlSeconds:s.number()}),s.object({kind:s.literal("not_found"),negativeCacheTtlSeconds:s.number().default(60)}),s.object({kind:s.literal("revoked"),negativeCacheTtlSeconds:s.number().default(300),reason:s.string().optional()}),s.object({kind:s.literal("rate_limited"),retryAfterSeconds:s.number().default(10)})]),$j=s.discriminatedUnion("kind",[s.object({kind:s.literal("found"),entitlement:s.unknown(),expiresAt:s.number(),ttlSeconds:s.number()}),s.object({kind:s.literal("not_found"),negativeCacheTtlSeconds:s.number().default(60)}),s.object({kind:s.literal("rate_limited"),retryAfterSeconds:s.number().default(10)})]),p$=s.object({id:s.string().min(1),slug:s.string().optional(),transportMode:s.enum(["direct","tunnel"]),verificationRequired:s.boolean().optional(),originUrl:s.string().optional(),originHostname:s.string().optional(),accessCredentialRef:s.string().optional(),policyVersion:s.string().optional()}),m$=s.object({id:s.string(),origin:s.string(),sandboxOrigin:s.string().nullable().optional(),authHeader:s.string().optional(),pricing:s.record(s.string(),s.number()).optional(),metering:s.object({billOn4xx:s.boolean().optional()}).optional(),tenantLimits:s.array(s.object({unit:s.enum(["requests","tokens","computeMs","dollars"]),window:s.enum(["second","minute","hour","day","week","month"]),capacity:s.number()})).optional(),userLimits:s.array(s.object({unit:s.enum(["requests","tokens","computeMs","dollars"]),window:s.enum(["second","minute","hour","day","week","month"]),capacity:s.number()})).optional(),environmentId:s.string().optional(),contextTokenSecret:s.string().nullable().optional(),timeoutMs:s.number().positive().optional(),idleTimeoutMs:s.number().positive().optional(),backends:s.array(p$).optional(),defaultBackendId:s.string().optional(),verificationRequired:s.boolean().optional(),allowedOrigins:s.array(s.string()).optional(),hasPublicRoutes:s.boolean().optional(),publicRoutesCompiledPlanId:s.string().min(1).optional()}),Oj=s.discriminatedUnion("kind",[s.object({kind:s.literal("found"),tenant:m$,expiresAt:s.number(),ttlSeconds:s.number()}),s.object({kind:s.literal("not_found"),negativeCacheTtlSeconds:s.number().default(60)}),s.object({kind:s.literal("rate_limited"),retryAfterSeconds:s.number().default(10)})]);var Zo=["consumer_api_key","consumer_session_token","test_persona_session_token","builder_master_key","builder_session_token","maker_jwt","service_jwt","internal_service","context_token"],u_=s.enum(Zo);var f$=s.object({fromIssuer:s.string().min(1),fromTokenId:s.string().min(1),intent:s.string().min(1)}),d_=s.object({issuer:s.string().min(1),issuedAt:s.number().int().nonnegative(),expiresAt:s.number().int().nonnegative().optional(),tokenId:s.string().min(1).optional(),delegationChain:s.array(f$)});var Lp=["template","embedded","provisioned","agent"],g$=s.enum(Lp),h$=["builder_user","builder_org","maker","consumer_subject","internal_service","service_jwt","agent_runtime"],b$=s.enum(h$),p_=s.object({kind:b$,id:s.string().min(1),label:s.string().optional()}),v$=["subscription","organization","platform"],_$=s.enum(v$),y$=s.object({kind:_$,id:s.string().min(1)}),k$=s.object({type:u_,id:s.string().min(1),hint:s.string().max(8).optional()}),x$=s.object({compiledPlanId:s.string().min(1),fromCache:s.boolean().optional()}),jj=s.object({requestId:s.string().min(1),surface:g$,builderOrgId:s.string().min(1),businessId:s.string().min(1).optional(),runtimeId:s.string().min(1).optional(),template:s.string().optional(),caller:p_,actor:p_,billingSubject:y$,credential:k$,operation:s.string().min(1),scopes:s.array(s.string()),entitlement:x$.optional(),trust:d_});var P=["template","agent"],I$=["provisioned"],m_=[...Lp],N=["builder_master_key","builder_session_token","maker_jwt"],mn=["service_jwt","internal_service"],Mp=["consumer_api_key","consumer_session_token","test_persona_session_token","context_token"],f_=[...Zo],kr="subscriptions:write",S$=[{id:"businesses.create",operation:"Create a product",requiredScopes:["businesses:write"],allowedSurfaces:P,allowedCredentialTypes:N,description:"Create a new product in the builder org"},{id:"businesses.update",operation:"Update a product",requiredScopes:["businesses:write"],allowedSurfaces:P,allowedCredentialTypes:N,description:"Update product metadata or compiled config"},{id:"businesses.delete",operation:"Delete a product",requiredScopes:["businesses:write"],allowedSurfaces:P,allowedCredentialTypes:N,description:"Delete a product (soft-archive if subscriptions exist)"},{id:"businesses.read",operation:"Read a product",requiredScopes:["businesses:read"],allowedSurfaces:P,allowedCredentialTypes:N,description:"Read product metadata + compiled config"},{id:"businesses.publish",operation:"Publish a product",requiredScopes:["businesses:write"],allowedSurfaces:P,allowedCredentialTypes:N,description:"Compile + publish the product to the gateway"},{id:"plans.create",operation:"Create a plan",requiredScopes:["plans:write"],allowedSurfaces:P,allowedCredentialTypes:N,description:"Add a new plan to a product"},{id:"plans.update",operation:"Update a plan",requiredScopes:["plans:write"],allowedSurfaces:P,allowedCredentialTypes:N,description:"Update plan pricing, limits, or features"},{id:"plans.delete",operation:"Delete a plan",requiredScopes:["plans:write"],allowedSurfaces:P,allowedCredentialTypes:N,description:"Delete a plan (denied if subscriptions are attached)"},{id:"plans.publish",operation:"Publish a plan",requiredScopes:["plans:write"],allowedSurfaces:P,allowedCredentialTypes:N,description:"Mark a plan as available for new subscriptions"},{id:"subscriptions.create",operation:"Create a subscription",requiredScopes:[kr],allowedSurfaces:P,allowedCredentialTypes:[...N,...mn],description:"Provision a new subscription for a subscriber"},{id:"subscriptions.update",operation:"Update a subscription",requiredScopes:[kr],allowedSurfaces:P,allowedCredentialTypes:[...N,...mn],description:"Change plan, enforcement mode, or schedule"},{id:"subscriptions.cancel",operation:"Cancel a subscription",requiredScopes:[kr],allowedSurfaces:P,allowedCredentialTypes:[...N,...mn],description:"Cancel a subscription (immediate or end-of-period)"},{id:"subscriptions.pause",operation:"Pause a subscription",requiredScopes:[kr],allowedSurfaces:P,allowedCredentialTypes:[...N,...mn],description:"Pause a subscription (no usage, no billing)"},{id:"subscriptions.resume",operation:"Resume a subscription",requiredScopes:[kr],allowedSurfaces:P,allowedCredentialTypes:[...N,...mn],description:"Resume a paused subscription"},{id:"subscriptions.read",operation:"Read a subscription",requiredScopes:["subscriptions:read"],allowedSurfaces:P,allowedCredentialTypes:[...N,...mn],description:"Read subscription state and usage"},{id:"webhooks.create",operation:"Create a webhook endpoint",requiredScopes:["webhooks:write"],allowedSurfaces:P,allowedCredentialTypes:N,description:"Register a new webhook endpoint URL"},{id:"webhooks.update",operation:"Update a webhook endpoint",requiredScopes:["webhooks:write"],allowedSurfaces:P,allowedCredentialTypes:N,description:"Update endpoint URL, secret, or subscribed events"},{id:"webhooks.delete",operation:"Delete a webhook endpoint",requiredScopes:["webhooks:write"],allowedSurfaces:P,allowedCredentialTypes:N,description:"Remove a webhook endpoint"},{id:"webhooks.test",operation:"Send a test webhook payload",requiredScopes:["webhooks:write"],allowedSurfaces:P,allowedCredentialTypes:N,description:"Trigger a synthetic payload to verify an endpoint"},{id:"api-keys.create",operation:"Create an API key",requiredScopes:["api-keys:write"],allowedSurfaces:P,allowedCredentialTypes:N,description:"Mint a new consumer or master API key"},{id:"api-keys.revoke",operation:"Revoke an API key",requiredScopes:["api-keys:write"],allowedSurfaces:P,allowedCredentialTypes:N,description:"Revoke an API key (immediate invalidation)"},{id:"api-keys.read",operation:"Read API key metadata",requiredScopes:["api-keys:read"],allowedSurfaces:P,allowedCredentialTypes:N,description:"Read key id + hint + scopes (never the secret)"},{id:"organizations.create",operation:"Create an organization",requiredScopes:["orgs:write"],allowedSurfaces:["template"],allowedCredentialTypes:["builder_session_token"],description:"Create a builder org (top-level signup)"},{id:"organizations.update",operation:"Update an organization",requiredScopes:["orgs:write"],allowedSurfaces:P,allowedCredentialTypes:N,description:"Update org metadata or billing email"},{id:"members.invite",operation:"Invite a member to an organization",requiredScopes:["members:write"],allowedSurfaces:P,allowedCredentialTypes:N,description:"Send an invitation to join the org"},{id:"members.remove",operation:"Remove a member from an organization",requiredScopes:["members:write"],allowedSurfaces:P,allowedCredentialTypes:N,description:"Revoke a member's access to the org"},{id:"projects.create",operation:"Create a project",requiredScopes:["projects:write"],allowedSurfaces:P,allowedCredentialTypes:N,description:"Create a project (groups products + environments)"},{id:"environments.create",operation:"Create an environment",requiredScopes:["environments:write"],allowedSurfaces:P,allowedCredentialTypes:N,description:"Add a deployment environment (stage / branch)"},{id:"environments.delete",operation:"Delete an environment",requiredScopes:["environments:write"],allowedSurfaces:P,allowedCredentialTypes:N,description:"Remove a deployment environment"},{id:"billing.portal-redirect",operation:"Generate Stripe customer-portal redirect",requiredScopes:["billing:portal"],allowedSurfaces:P,allowedCredentialTypes:[...N,...Mp],description:"Mint a one-time Stripe portal-session redirect URL"},{id:"billing.read",operation:"Read billing state",requiredScopes:["billing:read"],allowedSurfaces:P,allowedCredentialTypes:[...N,...Mp],description:"Read invoices, balances, scheduled changes"},{id:"runtime-context.read",operation:"Read the caller's runtime context",requiredScopes:[],allowedSurfaces:m_,allowedCredentialTypes:f_,description:"Introspect the resolved RuntimeContext (minus secrets)"},{id:"operations.list",operation:"List registered operations",requiredScopes:[],allowedSurfaces:m_,allowedCredentialTypes:f_,description:"List all operations the registry knows about"},{id:"explain-denial.read",operation:"Explain a denial decision",requiredScopes:["audit:read"],allowedSurfaces:P,allowedCredentialTypes:N,description:"Look up a decision id + return the full ctx + reason"},{id:"replay.execute",operation:"Replay a historical billing period",requiredScopes:["replay:execute"],allowedSurfaces:P,allowedCredentialTypes:N,description:"Re-run billing for a past period; verify deltas"},{id:"rollback.execute",operation:"Execute a GitHub-driven product rollback",requiredScopes:["rollback:execute"],allowedSurfaces:P,allowedCredentialTypes:N,description:"Revert business.ts to a previous commit (dry-run capable)"},{id:"api.invoke",operation:"Invoke a consumer-facing gateway route",requiredScopes:[],allowedSurfaces:I$,allowedCredentialTypes:Mp,description:"Consumer-side traffic into a deployed product (catch-all). The EntitlementEngine + RuntimeLimitEngine handle the fine-grained gating; this operation is the umbrella entry-point."}],Vj=Object.freeze(S$);var E$=["BusinessApplyWorkflow","RollbackWorkflow","StripeSyncWorkflow","WebhookDispatchWorkflow","SubscriptionTransitionWorkflow","CompiledPlanLifecycleWorkflow","ShardReshardWorkflow","MaintenanceJobWorkflow"],Wj=s.enum(E$),w$=["transient","permanent","rollback-required","human-intervention"],qj=s.enum(w$);var $$=["SAFE_AUTOMATIC","REQUIRES_APPROVAL","IRREVERSIBLE","BILLING_IMPACTING","EDGE_BREAKING"],Jj=s.enum($$);var nL=s.object({workflowExecutionId:s.string().min(1),eventType:s.string().min(1),phase:s.string().min(1).optional(),stepId:s.string().min(1).optional(),cohortKey:s.string().min(1).optional(),payload:s.record(s.string(),s.unknown()),occurredAt:s.string().min(1),correlationId:s.string().min(1).optional()}).transform(t=>({...t,workflowExecutionId:t.workflowExecutionId,stepId:t.stepId===void 0?void 0:t.stepId}));var O$=["GATEWAY","HOSTED_UI_PAGE","HOSTED_UI_PROXY"],T$=["platform_requests"],A$=s.object({requestId:s.string().optional(),businessId:s.string().optional(),route:s.string().optional(),usageEventId:s.string().optional()}).strict(),R$=s.object({organizationId:s.string().min(1),source:s.enum(O$),dimension:s.enum(T$),quantity:s.number().int().positive(),idempotencyKey:s.string().min(1).max(512),occurredAt:s.string().datetime(),metadata:A$.optional()}).strict(),yL=s.object({entries:s.array(R$).min(1).max(500)});var Wo={contract:{label:"Managed as code",summary:"Declarative business state, canonical in the GitHub repo; the API returns 409 MANAGED_BY_CODE once published. Author via the manifest + push.",canonicalHome:"repo",mcpMayWrite:!1},operate:{label:"Runtime operation",summary:"Imperative action on the running platform; never in the repo. Tokens, usage, readiness, builds, publish triggers, runtime knobs, brand edits.",canonicalHome:"api",mcpMayWrite:!0},dual:{label:"Repo or API",summary:"Reconciles via either the repo or the API/MCP; both converge to the same state. Preview environments are the canonical example.",canonicalHome:"both",mcpMayWrite:!0}};function g_(t){return Wo[t].mcpMayWrite}function h_(t){return Wo[t].canonicalHome}var Bp={repo_authored:{label:"Managed as code",agentAction:"Edit the business repo's business/ folder and push. Do not look for a command.",isPlatformGap:!1},git_triggered:{label:"Git-triggered",agentAction:"Push the branch or cut the GitHub Release; then poll the matching status command.",isPlatformGap:!1},served_by_other_command:{label:"Covered by another command",agentAction:"Run the command named in `unavailableDetail`.",isPlatformGap:!1},subscriber_portal:{label:"Subscriber portal surface",agentAction:"Not the builder's to run \u2014 it belongs to the subscriber org's own portal session. Use the builder-plane equivalent named in `unavailableDetail`, if any.",isPlatformGap:!1},human_decision:{label:"Human decision",agentAction:"Hand off to a human in the subscriber portal. An agent may propose; it may never decide.",isPlatformGap:!1},runtime_surface:{label:"Runtime surface",agentAction:"Performed by the running backend through @farthershore/backend at request time; there is nothing for an operator to call.",isPlatformGap:!1},browser_only:{label:"Browser-only prerequisite",agentAction:"Ask a human to complete the hosted consent flow, then poll the status command.",isPlatformGap:!1},not_implemented:{label:"Not implemented",agentAction:"This IS a platform gap. Report it, and route around it with the fallback in `unavailableDetail` if one is given.",isPlatformGap:!0}},_t="webhooks",xr="maker-tokens",Ir="promo-codes",fn="variables",ye="change-sets",me=t=>({reason:"repo_authored",detail:`Declare ${t} in the business repo's business/ folder and push \u2014 the platform applies it. The API accepts this write only during the DRAFT seed window and returns 409 MANAGED_BY_CODE once the business is ACTIVE + repo-linked.`}),b_=[{key:"plan.create",class:"contract",domain:"plans",unavailable:me("the plan with `fs.plan()`")},{key:"plan.update",class:"contract",domain:"plans",unavailable:me("the plan's new shape with `fs.plan()`")},{key:"plan.delete",class:"contract",domain:"plans",unavailable:me("the removal (delete the `fs.plan()` call)")},{key:"plan.read",class:"contract",domain:"plans"},{key:"plan.variant.create",class:"contract",domain:"plans",unavailable:me("the plan variant with `fs.plan()`")},{key:"plan.promote",class:"contract",domain:"plans",unavailable:me("the promoted plan version")},{key:"plan.rollback",class:"contract",domain:"plans",unavailable:me("the prior plan shape (revert the commit)")},{key:"route.define",class:"contract",domain:"routes",unavailable:me("the route with `fs.route()`")},{key:"gateway.config",class:"contract",domain:"gateway",unavailable:me("the gateway block on `fs.business()`")},{key:"auth_strategy.update",class:"contract",domain:"gateway",unavailable:me("the auth strategy on `fs.business()`")},{key:"rate_limit.update",class:"contract",domain:"gateway",unavailable:me("the limits on the plan or route")},{key:"meter.define",class:"contract",domain:"metering",unavailable:me("the meter with `fs.meter()`")},{key:"backend.define",class:"contract",domain:"backends",unavailable:{reason:"repo_authored",detail:"Declare the backend with `fs.backend()` in the business repo's business/ folder and push \u2014 the platform applies it. CAUTION: unlike other contract-class writes, core does NOT yet enforce 409 MANAGED_BY_CODE on out-of-band backend-definition writes (known enforcement gap); such writes are silently overwritten by the next repo publish, so author in the repo regardless."}},{key:"webhook.define",class:"contract",domain:_t,unavailable:me("the webhook block on `fs.business()`")},{key:"business.contract_field.update",class:"contract",domain:"businesses",unavailable:me("the field (name / meters / subscriberChangePolicy / rbac) on `fs.business()`")},{key:"rbac.enable",class:"contract",domain:"products",unavailable:me("the `rbac` flag on `fs.business()`")},{key:"rbac.read",class:"contract",domain:"products"},{key:"business.list",class:"operate",domain:"businesses"},{key:"business.status",class:"operate",domain:"businesses"},{key:"change_set.portal_list",class:"operate",domain:ye,sideEffect:"read",unavailable:{reason:"subscriber_portal",detail:"GET /portal/businesses/:id/me/change-sets \u2014 the subscriber org's own view of its ChangeSets, reached in the portal. The builder-plane equivalent IS a command: `farthershore proposal list` (change_set.proposal_list)."}},{key:"change_set.portal_read",class:"operate",domain:ye,sideEffect:"read",unavailable:{reason:"subscriber_portal",detail:"GET /portal/businesses/:id/me/change-sets/:changeSetId \u2014 the subscriber's own detail view. The builder-plane equivalent IS a command: `farthershore proposal get` (change_set.proposal_read)."}},{key:"apply_timeline.list",class:"operate",domain:ye},{key:"apply_timeline.read",class:"operate",domain:ye},{key:"change_set.approve",class:"operate",domain:ye,unavailable:{reason:"human_decision",detail:"Sign-off is human/portal-session-only (ADR-0013). Propose with `farthershore proposal create`, then ask a human in the subscriber org to approve it in the portal."}},{key:"change_set.apply",class:"operate",domain:ye,unavailable:{reason:"human_decision",detail:"Execution of a governed ChangeSet is human/portal-session-only (ADR-0013). Poll `farthershore proposal get` for the status a human's apply produces."}},{key:"change_set.rollback",class:"operate",domain:ye,unavailable:{reason:"human_decision",detail:"Reverting an applied ChangeSet is human/portal-session-only (ADR-0013). Ask a human in the subscriber org to roll it back in the portal."}},{key:"change_set.cancel",class:"operate",domain:ye,unavailable:{reason:"human_decision",detail:"Cancelling a governed ChangeSet is human/portal-session-only (ADR-0013), reserved for the proposer or an approver in the portal."}},{key:"change_set.propose",class:"operate",domain:ye},{key:"change_set.preview",class:"operate",domain:ye},{key:"change_set.proposal_list",class:"operate",domain:ye},{key:"change_set.proposal_read",class:"operate",domain:ye},{key:"business.delete",class:"operate",domain:"businesses"},{key:"build.trigger",class:"operate",domain:"lifecycle",unavailable:{reason:"git_triggered",detail:"The sanctioned build triggers are git events: production on a GitHub Release, a preview environment on a push to its env branch. A builder-API trigger route exists (POST /businesses/:id/frontend/deploy) but the CLI deliberately does not expose it \u2014 a third manual trigger lets what is serving diverge from git. Push or release, then `farthershore frontend status --wait`."}},{key:"frontend.deploy",class:"operate",domain:"frontend",unavailable:{reason:"git_triggered",detail:"The CLI DELIBERATELY exposes no deploy verb: production publishes on a GitHub Release, a preview environment on a push to its env branch, and a third manual trigger is another way for what is serving to diverge from git. (The builder API does mount POST /businesses/:id/frontend/deploy; the CLI intentionally does not wrap it.) Push or release, then `farthershore frontend status --wait`."}},{key:"frontend.status",class:"operate",domain:"frontend"},{key:"frontend.rollback",class:"operate",domain:"frontend"},{key:"webhook.read",class:"operate",domain:_t},{key:"webhook.create",class:"operate",domain:_t},{key:"webhook.update",class:"operate",domain:_t},{key:"webhook.delete",class:"operate",domain:_t},{key:"webhook.test",class:"operate",domain:_t},{key:"agents.list",class:"operate",domain:"agents"},{key:"agents.status",class:"operate",domain:"agents"},{key:"agents.runs.show",class:"operate",domain:"agents"},{key:"agents.enable",class:"operate",domain:"agents"},{key:"agents.disable",class:"operate",domain:"agents"},{key:"bulletin.list",class:"operate",domain:"agents"},{key:"bulletin.read",class:"operate",domain:"agents"},{key:"bulletin.ack",class:"operate",domain:"agents"},{key:"bulletin.resolve",class:"operate",domain:"agents"},{key:"webhook.delivery.read",class:"operate",domain:_t},{key:"promo_code.read",class:"operate",domain:Ir},{key:"promo_code.create",class:"operate",domain:Ir},{key:"promo_code.update",class:"operate",domain:Ir},{key:"promo_code.archive",class:"operate",domain:Ir},{key:"promo_code.reactivate",class:"operate",domain:Ir},{key:"consumer.read",class:"operate",domain:"consumers"},{key:"consumer.block",class:"operate",domain:"consumers"},{key:"consumer.remove",class:"operate",domain:"consumers"},{key:"consumer.rbac.settings",class:"operate",domain:"consumers",unavailable:{reason:"subscriber_portal",detail:"GET/PUT /portal/businesses/:id/me/rbac/settings \u2014 the subscriber org toggles RBAC and picks its default role in its own portal. The builder enables the RBAC feature by declaring `rbac` on `fs.business()` and pushing (rbac.enable, repo-authored); `farthershore business rbac` only VERIFIES the accepted state (rbac.read)."}},{key:"consumer.rbac.roles",class:"operate",domain:"consumers",unavailable:{reason:"subscriber_portal",detail:"/portal/businesses/:id/me/rbac/roles \u2014 the subscriber org authors its own roles in its portal. A builder/agent may only PROPOSE a role change, via `farthershore proposal create`."}},{key:"consumer.roles.assign",class:"operate",domain:"consumers"},{key:"business_variable.read",class:"operate",domain:fn},{key:"business_variable.create",class:"operate",domain:fn},{key:"business_variable.rotate",class:"operate",domain:fn},{key:"business_variable.revoke",class:"operate",domain:fn},{key:"business_variable.delete",class:"operate",domain:fn},{key:"business_variable.operation.read",class:"operate",domain:fn},{key:"runtime_token.mint",class:"operate",domain:"runtime-tokens"},{key:"runtime_token.rotate",class:"operate",domain:"runtime-tokens"},{key:"runtime_token.revoke",class:"operate",domain:"runtime-tokens"},{key:"runtime_token.read",class:"operate",domain:"runtime-tokens"},{key:"maker_token.create",class:"operate",domain:xr},{key:"maker_token.revoke",class:"operate",domain:xr},{key:"maker_token.rotate",class:"operate",domain:xr},{key:"maker_token.hard_delete",class:"operate",domain:xr},{key:"maker_token.read",class:"operate",domain:xr},{key:"metering_token.mint",class:"operate",domain:"metering",unavailable:{reason:"runtime_surface",detail:"The metering credential is DERIVED from the runtime token at backend bootstrap (/runtime/*), not minted separately. Issue the runtime token with `farthershore backend tokens create --operations metering`."}},{key:"usage.report",class:"operate",domain:"usage",unavailable:{reason:"runtime_surface",detail:"Usage is reported by the running backend at request time \u2014 `usage.report(meter, n)` from @farthershore/backend. Read what it recorded with `farthershore usage summary`."}},{key:"usage.read",class:"operate",domain:"usage"},{key:"backend.create",class:"operate",domain:"backends"},{key:"backend.bind",class:"operate",domain:"backends"},{key:"backend.delete",class:"operate",domain:"backends"},{key:"backend.read",class:"operate",domain:"backends"},{key:"backend.status.read",class:"operate",domain:"backends",unavailable:{reason:"served_by_other_command",detail:"`farthershore backend list` (backend.read) already returns each backend's derived status \u2014 there is no separate status command."}},{key:"persona.bootstrap",class:"operate",domain:"personas"},{key:"persona.read",class:"operate",domain:"personas"},{key:"persona.revoke",class:"operate",domain:"personas"},{key:"brand.update",class:"operate",domain:"branding",unavailable:{reason:"served_by_other_command",detail:"`farthershore business update --display-name/--description/--icon-url/--logo-url` (registered under business.origin.update; MCP tool `fs_brand_update`) writes the brand fields."}},{key:"business.origin.update",class:"operate",domain:"businesses"},{key:"business.docs.enable",class:"operate",domain:"businesses"},{key:"business.docs.disable",class:"operate",domain:"businesses"},{key:"business.preview_env.set",class:"operate",domain:"businesses"},{key:"plan.migration_batch.create",class:"operate",domain:"plans"},{key:"business.create",class:"dual",domain:"businesses"},{key:"business.read",class:"dual",domain:"businesses"},{key:"business.publish",class:"dual",domain:"lifecycle"},{key:"business.rollback",class:"dual",domain:"lifecycle",unavailable:{reason:"not_implemented",detail:"The API exists (POST /management/businesses/:id/rollback, scope businesses:publish) but no CLI command wraps it yet. Call the endpoint directly, or revert the commit and push."}},{key:"manifest.apply",class:"dual",domain:"lifecycle",unavailable:{reason:"git_triggered",detail:"The repo pipeline applies the compiled IR on a push/release through the same neutral apply service. `farthershore validate` runs the identical verdict locally WITHOUT applying; `farthershore apply-timeline list` shows what the platform applied."}},{key:"config.apply",class:"dual",domain:"lifecycle",unavailable:{reason:"served_by_other_command",detail:"The dashboard's draft\u2192publish path for a business that is NOT code-managed; it 409s MANAGED_BY_CODE once the business is repo-linked. An agent publishes with `farthershore business publish`, or by pushing the repo."}},{key:"environment.create",class:"dual",domain:"environments"},{key:"environment.update",class:"dual",domain:"environments",unavailable:{reason:"not_implemented",detail:"No builder/maker-callable update route exists \u2014 core has only GET/POST /businesses/:id/environments and DELETE /:envName (an internal admin slug-rename exists but is service-plane only). Delete and recreate with `farthershore env delete` + `farthershore env create`."}},{key:"environment.delete",class:"dual",domain:"environments"},{key:"environment.read",class:"dual",domain:"environments"}];var ne={VALIDATION_ERROR:"VALIDATION_ERROR",CONFLICT:"CONFLICT",NOT_FOUND:"NOT_FOUND",NOT_IMPLEMENTED:"NOT_IMPLEMENTED",NOT_CONFIGURED:"NOT_CONFIGURED",INTERNAL_ERROR:"INTERNAL_ERROR",SERVICE_UNAVAILABLE:"SERVICE_UNAVAILABLE",RATE_LIMIT_EXCEEDED:"RATE_LIMIT_EXCEEDED",DELETE_CONFIRMATION_REQUIRED:"DELETE_CONFIRMATION_REQUIRED",MISSING_HOST:"MISSING_HOST",MISSING_CONNECTIONS:"MISSING_CONNECTIONS",SECRET_NOT_CONFIGURED:"SECRET_NOT_CONFIGURED",UNAUTHORIZED:"UNAUTHORIZED",FORBIDDEN:"FORBIDDEN",INVALID_ACCESS_KEY:"INVALID_ACCESS_KEY",AUTO_KEY_CREATION_FAILED:"AUTO_KEY_CREATION_FAILED",PERSONA_NOT_FOUND:"PERSONA_NOT_FOUND",PERSONA_REVOKED:"PERSONA_REVOKED",PERSONA_SESSIONS_NOT_SUPPORTED:"PERSONA_SESSIONS_NOT_SUPPORTED",NOT_TEST_PERSONA_ENV:"NOT_TEST_PERSONA_ENV",PERSONA_AUTH_DISABLED_IN_PROD:"PERSONA_AUTH_DISABLED_IN_PROD",MAKER_TOKEN_NOT_FOUND:"MAKER_TOKEN_NOT_FOUND",MAKER_TOKEN_NOT_REVOKED:"MAKER_TOKEN_NOT_REVOKED",MAKER_TOKEN_NO_PRODUCT:"MAKER_TOKEN_NO_PRODUCT",MAKER_TOKEN_REVOKED:"MAKER_TOKEN_REVOKED",ORGANIZATION_NOT_FOUND:"ORGANIZATION_NOT_FOUND",ORG_HAS_ACTIVE_SUBSCRIPTIONS:"ORG_HAS_ACTIVE_SUBSCRIPTIONS",ORG_HAS_OUTSTANDING_BALANCE:"ORG_HAS_OUTSTANDING_BALANCE",PERSONAL_ORG_NOT_DELETABLE:"PERSONAL_ORG_NOT_DELETABLE",PERSONAL_OWNER_IMMUTABLE:"PERSONAL_OWNER_IMMUTABLE",PERSONAL_CO_OWNER_NOT_ALLOWED:"PERSONAL_CO_OWNER_NOT_ALLOWED",PRIMARY_OWNER_TRANSFER_REQUIRED:"PRIMARY_OWNER_TRANSFER_REQUIRED",MEMBER_NOT_FOUND:"MEMBER_NOT_FOUND",INVITATION_NOT_FOUND:"INVITATION_NOT_FOUND",RBAC_REQUIRES_TEAM_ORG:"RBAC_REQUIRES_TEAM_ORG",RBAC_NOT_ENABLED_BY_PRODUCT:"RBAC_NOT_ENABLED_BY_PRODUCT",UNKNOWN_PERMISSION:"UNKNOWN_PERMISSION",CUSTOMER_NOT_FOUND:"CUSTOMER_NOT_FOUND",PRODUCT_NOT_FOUND:"PRODUCT_NOT_FOUND",PRODUCT_DELETE_BLOCKED:"PRODUCT_DELETE_BLOCKED",PRODUCT_REPO_NOT_LINKED:"PRODUCT_REPO_NOT_LINKED",PRODUCT_SCOPE_MISMATCH:"PRODUCT_SCOPE_MISMATCH",YAML_PARSE_ERROR:"YAML_PARSE_ERROR",COMPILATION_NOT_FOUND:"COMPILATION_NOT_FOUND",PLAN_NOT_FOUND:"PLAN_NOT_FOUND",PLAN_HAS_ACTIVE_SUBSCRIPTIONS:"PLAN_HAS_ACTIVE_SUBSCRIPTIONS",PLAN_SLUG_CONFLICT:"PLAN_SLUG_CONFLICT",PLAN_REQUIRED:"PLAN_REQUIRED",PLAN_UPGRADE_REQUIRED:"PLAN_UPGRADE_REQUIRED",PLAN_OFFER_CHANGED:"PLAN_OFFER_CHANGED",SLUG_CONFLICT:"SLUG_CONFLICT",SLUG_BLOCKED:"SLUG_BLOCKED",SLUG_OFFENSIVE:"SLUG_OFFENSIVE",SLUG_RESERVED:"SLUG_RESERVED",SLUG_IMPERSONATION:"SLUG_IMPERSONATION",SLUG_INVALID_FORMAT:"SLUG_INVALID_FORMAT",SLUG_VALIDATOR_NOT_READY:"SLUG_VALIDATOR_NOT_READY",PRICING_PREVIEW_FAILED:"PRICING_PREVIEW_FAILED",PRICING_REPLAY_FAILED:"PRICING_REPLAY_FAILED",RESERVATION_NOT_FOUND:"RESERVATION_NOT_FOUND",PROMO_CODE_NOT_FOUND:"PROMO_CODE_NOT_FOUND",PROMO_CODE_INVALID:"PROMO_CODE_INVALID",BILLING_EVENT_NOT_FOUND:"BILLING_EVENT_NOT_FOUND",BILLING_NOT_CONFIGURED:"BILLING_NOT_CONFIGURED",SUBSCRIPTION_NOT_READY:"SUBSCRIPTION_NOT_READY",SUBSCRIPTION_FETCH_FAILED:"SUBSCRIPTION_FETCH_FAILED",INVALID_STATE:"INVALID_STATE",DUPLICATE_TRANSITION:"DUPLICATE_TRANSITION",ARCHIVED_TARGET:"ARCHIVED_TARGET",FREE_TO_PAID_VIA_CHECKOUT_ONLY:"FREE_TO_PAID_VIA_CHECKOUT_ONLY",RESOURCE_LIMIT_EXCEEDED:"RESOURCE_LIMIT_EXCEEDED",RESOURCE_LIMIT_CHECK_UNAVAILABLE:"RESOURCE_LIMIT_CHECK_UNAVAILABLE",STRIPE_NOT_CONFIGURED:"STRIPE_NOT_CONFIGURED",STRIPE_BALANCE_OUTSTANDING:"STRIPE_BALANCE_OUTSTANDING",STRIPE_OPERATION_FAILED:"STRIPE_OPERATION_FAILED",STRIPE_RESYNC_FAILED:"STRIPE_RESYNC_FAILED",CHECKOUT_SESSION_FAILED:"CHECKOUT_SESSION_FAILED",POLAR_PRODUCT_NOT_CONFIGURED:"POLAR_PRODUCT_NOT_CONFIGURED",BILLING_TAX_NOT_ENROLLED:"BILLING_TAX_NOT_ENROLLED",WEBHOOK_NOT_FOUND:"WEBHOOK_NOT_FOUND",WEBHOOK_DISPATCH_FAILED:"WEBHOOK_DISPATCH_FAILED",WEBHOOK_SECRET_NOT_CONFIGURED:"WEBHOOK_SECRET_NOT_CONFIGURED",INVALID_WEBHOOK_SIGNATURE:"INVALID_WEBHOOK_SIGNATURE",MISSING_RAW_BODY:"MISSING_RAW_BODY",WEBHOOK_REDIRECTED:"WEBHOOK_REDIRECTED",MANAGED_BY_CODE:"MANAGED_BY_CODE",GITHUB_CONNECTION_NOT_FOUND:"GITHUB_CONNECTION_NOT_FOUND",GITHUB_NOT_CONNECTED:"GITHUB_NOT_CONNECTED",GITHUB_SYNC_FAILED:"GITHUB_SYNC_FAILED",GITHUB_SYNC_UNAVAILABLE:"GITHUB_SYNC_UNAVAILABLE",GITHUB_TOKEN_FAILED:"GITHUB_TOKEN_FAILED",GIT_PROVIDER_NOT_CONFIGURED:"GIT_PROVIDER_NOT_CONFIGURED",ENVIRONMENT_NOT_FOUND:"ENVIRONMENT_NOT_FOUND",ENVIRONMENT_CLEANUP_FAILED:"ENVIRONMENT_CLEANUP_FAILED",DEPLOYMENT_RUN_NOT_FOUND:"DEPLOYMENT_RUN_NOT_FOUND",BRANCH_NO_MATCHING_ENV:"BRANCH_NO_MATCHING_ENV",APPLY_SPEC_FAILED:"APPLY_SPEC_FAILED",BOOTSTRAP_FAILED:"BOOTSTRAP_FAILED",JOB_ALREADY_RUNNING:"JOB_ALREADY_RUNNING",LOGO_DELETE_FAILED:"LOGO_DELETE_FAILED",LOGO_UPLOAD_FAILED:"LOGO_UPLOAD_FAILED",INVALID_LOGO_FORMAT:"INVALID_LOGO_FORMAT",CHANGE_SET_STALE:"CHANGE_SET_STALE",SIMULATION_STALE:"SIMULATION_STALE",IDEMPOTENCY_KEY_REUSED:"IDEMPOTENCY_KEY_REUSED",SELF_APPROVAL_FORBIDDEN:"SELF_APPROVAL_FORBIDDEN",HUMAN_APPROVAL_REQUIRED:"HUMAN_APPROVAL_REQUIRED",GOVERNED_BY_CHANGE_SET:"GOVERNED_BY_CHANGE_SET",COMPENSATION_REQUIRED:"COMPENSATION_REQUIRED",MIGRATION_TOO_LARGE:"MIGRATION_TOO_LARGE"};var EL={missing_token:ne.UNAUTHORIZED,invalid_token:ne.UNAUTHORIZED,context_unverified:ne.UNAUTHORIZED,missing_signature:ne.UNAUTHORIZED,malformed_signature:ne.UNAUTHORIZED,unknown_key_id:ne.UNAUTHORIZED,bad_signature:ne.UNAUTHORIZED,expired_signature:ne.UNAUTHORIZED,clock_skew:ne.UNAUTHORIZED,replayed_nonce:ne.UNAUTHORIZED,body_hash_mismatch:ne.UNAUTHORIZED,route_mismatch:ne.UNAUTHORIZED,environment_mismatch:ne.UNAUTHORIZED,jwks_unavailable:ne.SERVICE_UNAVAILABLE,body_too_large:ne.VALIDATION_ERROR,member_subject_required:ne.FORBIDDEN,service_subject_required:ne.FORBIDDEN,surface_not_allowed:ne.FORBIDDEN};var wL=Object.values(zb);var G={BATCHER_ENUM:"batcher-enum",RUNTIME_INLINE:"runtime-inline",CONSTRAINT:"constraint",GATEWAY_ERROR:"gateway-error"};var v_={limit_allocator_unavailable:{statuses:[503],source:G.BATCHER_ENUM,retryAfter:!0,verifiedAt:["engine/enforcement/runtime.ts:471"]},limit_exceeded:{statuses:[402],source:G.BATCHER_ENUM,retryAfter:!0,verifiedAt:["engine/enforcement/batcher.ts:326","engine/enforcement/constraints/quota.ts:69"]},rate_limited:{statuses:[429],source:G.BATCHER_ENUM,retryAfter:!0,verifiedAt:["engine/enforcement/batcher.ts:328","engine/enforcement/constraints/rate-limit.ts:74","engine/pipeline/rate-limit.ts:83"]},credit_exhausted:{statuses:[402],source:G.BATCHER_ENUM,retryAfter:!0,verifiedAt:["engine/enforcement/batcher.ts:333"]},enforcement_denied:{statuses:[402],source:G.BATCHER_ENUM,retryAfter:!0,verifiedAt:["engine/enforcement/batcher.ts:335"]},invalid_entitlement_shape:{statuses:[503],source:G.RUNTIME_INLINE,retryAfter:!0,verifiedAt:["engine/enforcement/runtime.ts:144"]},unsupported_constraint_schema:{statuses:[503],source:G.RUNTIME_INLINE,retryAfter:!1,verifiedAt:["engine/enforcement/runtime.ts:154"]},enforcement_error:{statuses:[500],source:G.RUNTIME_INLINE,retryAfter:!1,verifiedAt:["engine/enforcement/runtime.ts:342"]},enforcement_dependency_unavailable:{statuses:[503],source:G.RUNTIME_INLINE,retryAfter:!1,verifiedAt:["engine/enforcement/runtime.ts:427"]},concurrency_limit_exceeded:{statuses:[429],source:G.CONSTRAINT,retryAfter:!0,verifiedAt:["engine/enforcement/constraints/concurrency.ts"]},concurrency_context_unavailable:{statuses:[503],source:G.CONSTRAINT,retryAfter:!0,verifiedAt:["engine/enforcement/constraints/concurrency.ts:291"]},concurrency_coordinator_unavailable:{statuses:[503],source:G.CONSTRAINT,retryAfter:!0,verifiedAt:["engine/enforcement/constraints/concurrency.ts:305"]},key_expired:{statuses:[401],source:G.CONSTRAINT,retryAfter:!1,verifiedAt:["engine/enforcement/constraints/credential-validity.ts:33"]},permission_denied:{statuses:[403],source:G.CONSTRAINT,retryAfter:!1,verifiedAt:["engine/enforcement/constraints/permission.ts:63"]},permission_unresolved:{statuses:[403],source:G.CONSTRAINT,retryAfter:!1,verifiedAt:["engine/enforcement/constraints/permission.ts"]},route_not_enabled:{statuses:[403],source:G.RUNTIME_INLINE,retryAfter:!1,verifiedAt:["engine/pipeline/pre-vec-costs.ts"]},geo_context_unavailable:{statuses:[503],source:G.CONSTRAINT,retryAfter:!0,verifiedAt:["engine/enforcement/constraints/geo-restriction.ts:44"]},geo_blocked:{statuses:[403],source:G.CONSTRAINT,retryAfter:!1,verifiedAt:["engine/enforcement/constraints/geo-restriction.ts:51"]},geo_not_allowed:{statuses:[403],source:G.CONSTRAINT,retryAfter:!1,verifiedAt:["engine/enforcement/constraints/geo-restriction.ts:58"]},resource_count_limit_exceeded:{statuses:[402],source:G.GATEWAY_ERROR,retryAfter:!1,verifiedAt:["apps/core:routes/internal/gateway-resources.ts:144"]},post_stream_overspend:{statuses:[402],source:G.CONSTRAINT,retryAfter:!0,verifiedAt:["engine/enforcement/constraints/lifecycle-block.ts"]},request_too_large:{statuses:[413],source:G.CONSTRAINT,retryAfter:!1,verifiedAt:["engine/enforcement/constraints/capacity.ts"]},resolver_rate_limited:{statuses:[503],source:G.GATEWAY_ERROR,retryAfter:!0,verifiedAt:["engine/errors.ts:55"]},resolver_unavailable:{statuses:[503],source:G.GATEWAY_ERROR,retryAfter:!0,verifiedAt:["engine/errors.ts:73"]},credential_resolver_miss_rate_limited:{statuses:[429],source:G.GATEWAY_ERROR,retryAfter:!0,verifiedAt:["engine/errors.ts:89"]},provider_throttled:{statuses:[503],source:G.GATEWAY_ERROR,retryAfter:!0,verifiedAt:["engine/pipeline/provider-adapter.ts"]}},C$=Object.keys(v_);var P$=new Set([429,503]),OL=new Set(C$.filter(t=>v_[t].statuses.every(e=>P$.has(e))));var N$=["quota","rate","concurrency","capacity","spend","adaptive"],AL=new Set(N$);var D$=[402,403,413,429],CL=new Set(D$);var U$=s.enum(["create","delete"]),z$=s.enum(["RESERVED","COMMITTED","RELEASED","DENIED"]),j$=s.object({mutationId:s.string().min(1).max(200),requestId:s.string().min(1).max(200),businessId:s.string().min(1).max(200),subscriptionId:s.string().min(1).max(200),compiledPlanId:s.string().min(1).max(200),actionId:s.string().min(1).max(160),environmentId:s.string().min(1).max(200).nullable(),subjectId:s.string().min(1).max(200).optional()}).strict();var GL=j$.extend({statusCode:s.number().int().min(100).max(599)}).strict(),ZL=s.object({mutationId:s.string().min(1).max(200),resource:s.string().min(1).max(120),effect:U$,state:z$,count:s.number().int().nonnegative(),limit:s.number().int().nonnegative().nullable(),replayed:s.boolean()}).strict(),WL=s.object({error:s.object({code:s.literal("resource_count_limit_exceeded"),message:s.string(),limitCode:s.string(),dimension:s.string(),currentCapacity:s.number().int().nonnegative()}).strict()}).strict();var qo=s.string().min(1).max(128).regex(/^[A-Za-z0-9._:-]+$/),__=s.object({businessId:qo,environmentId:qo.nullable(),secretName:s.string().min(1).max(128).regex(/^[A-Z][A-Z0-9_]*$/)}).strict();var Fp=s.object({scope:__,mutationId:qo,expectedGeneration:s.number().int().positive().nullable()}),L$=Fp.extend({mutation:s.literal("publish"),generation:s.number().int().positive(),payloadHash:s.string().regex(/^[a-f0-9]{64}$/),sealedPayload:s.string().min(1).max(131072)}).strict(),M$=Fp.extend({mutation:s.literal("rotate"),generation:s.number().int().positive(),payloadHash:s.string().regex(/^[a-f0-9]{64}$/),sealedPayload:s.string().min(1).max(131072)}).strict(),B$=Fp.extend({mutation:s.enum(["revoke","delete"]),generation:s.number().int().positive(),payloadHash:s.string().regex(/^[a-f0-9]{64}$/)}).strict(),F$=s.discriminatedUnion("mutation",[L$,M$,B$]),YL=s.object({keyId:qo,signature:s.string().regex(/^[a-f0-9]{64}$/),command:F$}).strict(),XL=s.discriminatedUnion("available",[s.object({available:s.literal(!0),scope:__,generation:s.number().int().positive(),payloadHash:s.string().regex(/^[a-f0-9]{64}$/),sealedPayload:s.string().min(1).max(131072),status:s.literal("ACTIVE")}).strict(),s.object({available:s.literal(!1),generation:s.number().int().positive().nullable(),payloadHash:s.string().regex(/^[a-f0-9]{64}$/).nullable(),status:s.enum(["MISSING","PENDING","REVOKING","REVOKED","DELETED"])}).strict()]);var H$={MANAGED_BY_CODE:"This business's contract is managed as code. Edit the Business SDK program in its GitHub repo (business/) and push \u2014 do NOT retry the API. (Branding stays editable via `farthershore business update`.)",UNAUTHORIZED:"Token is invalid or revoked. Run `farthershore auth login` to update it.",FORBIDDEN:"Your token doesn't have access to this resource. Check the org / business scope.",INVALID_ACCESS_KEY:"Token format is wrong. Generate a new one at https://farthershore.com/settings/tokens.",MAKER_TOKEN_REVOKED:"This maker token was revoked. Mint a new one in the business settings.",MAKER_TOKEN_NO_BUSINESS:"Maker token is not bound to a business. Re-create it from the business page.",AUTH_NO_TOKEN:"Pass --token <mk_...> or set FARTHERSHORE_TOKEN, or run interactively in a TTY.",AUTH_INVALID_TOKEN:"Token format is malformed. Maker tokens start with `mk_` and are 30+ characters.",DESTRUCTIVE_OP_REQUIRES_YES:"Destructive ops (delete) require an explicit `--yes` to proceed. This is intentional safety.",BUSINESS_UPDATE_NO_FIELDS:"Pass at least one field flag (--display-name, --origin, --description).",PLAN_UPDATE_NO_FIELDS:"Pass at least one of --name, --recurring-fee-cents, --grant, --trial-days, --max-monthly-spend-cents, or --meter.",ENV_NOT_FOUND:"Environment doesn't exist. Use `farthershore env list <business>` to see available envs, or create one with `farthershore env create`.",STRIPE_NOT_CONFIGURED:"Stripe isn't connected on this business. Connect it in the dashboard before running billing operations.",STRIPE_NOT_CONNECTED:"Publishing requires a connected Stripe account. Connect one on the dashboard Connections page, then re-run `farthershore business publish`.",STRIPE_NOT_VERIFIED:"Your Stripe account isn't fully verified yet. Finish Stripe onboarding, then re-run `farthershore business publish`.",BILLING_TAX_NOT_ENROLLED:"Stripe Tax isn't enrolled for this account. Enable it from the dashboard Connections page, then re-run `farthershore business publish`.",STRIPE_BALANCE_OUTSTANDING:"Customer has an outstanding balance. Resolve the invoice in Stripe before retrying.",CHECKOUT_SESSION_FAILED:"Stripe rejected the checkout request. Check that the plan exists and Stripe credentials are valid.",BUSINESS_NOT_FOUND:"Check the business slug. Run `farthershore` (no args) for a list of businesses you can see.",BUSINESS_REPO_NOT_LINKED:"Link a GitHub repo to this business before publishing or validating business manifests.",YAML_PARSE_ERROR:"Business manifest is not valid. Run `farthershore build` locally, fix business/ source, then push again for bot validation.",GITHUB_NOT_CONNECTED:"Connect GitHub on the org page before running `init` (it provisions the repo).",BRANCH_NO_MATCHING_ENV:"The current branch isn't mapped to an environment. Add a branch rule in business settings or pass --branch explicitly.",PLAN_NOT_FOUND:"Plan key doesn't exist on this business. Check the `plans` block in your local business manifest.",PLAN_HAS_ACTIVE_SUBSCRIPTIONS:"Plan has active subscribers and can't be deleted. Migrate them to another plan first.",PLAN_SLUG_CONFLICT:"Another plan already uses this key. Pick a unique plan key in your manifest.",SLUG_CONFLICT:"This business slug is taken. Pick a different name.",SLUG_BLOCKED:"This slug is reserved or blocked. Pick a different name.",SLUG_RESERVED:"This slug is reserved by Farther Shore. Pick a different name.",SLUG_INVALID_FORMAT:"Slug must be lowercase letters, digits, and hyphens (no leading/trailing hyphen).",DECISION_NOT_FOUND:"No DenialEvent recorded for that decisionId. Verify the id from the original deny response or audit log.",AUTH_UNAUTHORIZED:"Token is missing, expired, or lacks the audit:read scope required to read denial events.",RATE_LIMIT_EXCEEDED:"You've hit the rate limit. Wait a moment and retry.",VALIDATION_ERROR:"Request is malformed. The `details` field has the field-level errors.",CONFLICT:"The resource is in a state that conflicts with the request. Inspect `details` to learn more."};function Hp(t){if(t)return H$[t]}function k_(t){process.stdout.write(`${JSON.stringify(t,null,2)}
99
+ `)}function V$(t,e){return{schema_version:1,ok:!0,op:t,data:e}}function K$(t,e){let r=e.status??0;return{schema_version:1,ok:!1,op:t,error:{code:e.code??"INTERNAL_ERROR",message:e.message,status:r,param:e.param,retryable:W$(r,e.code),details:e.details,hint:Hp(e.code)}}}function L(t,e,r=E_()){if(te()==="json"){k_(V$(r,t));return}e&&ti(x_(e))}function G$(t){return t===0?1:t===400||t===422?2:t===401||t===403?3:t===409?4:t>=500?5:1}var Z$=new Set(["RATE_LIMIT_EXCEEDED","SERVICE_UNAVAILABLE"]);function W$(t,e){return t>=500||t===429||t===503?!0:e?Z$.has(e):!1}function Vp(t,e=E_()){let r=t.status??0;if(te()==="json")k_(K$(e,t));else{let i=Hp(t.code),n=t.code?` [${t.code}]`:"";process.stderr.write(x_(`Error${n}: ${t.message}`)+`
99
100
  `),i&&process.stderr.write(`Hint: ${i}
100
- `)}return ww(r)}var Nv="unknown";function Dv(t){Nv=t}function Uv(){return Nv}async function Rw(t){if(!kn())throw new b("No token provided. Pass --token, set FARTHERSHORE_TOKEN, or run interactively.",void 0,{code:"AUTH_NO_TOKEN"});let e=Tw({input:process.stdin,output:process.stdout,terminal:!0});return new Promise(r=>{e.question(t,i=>{e.close(),r(i.trim())})})}function zv(t,e){let r=t.command("auth").description("Manage CLI auth credentials");r.command("login").description("Store a maker token in ~/.farthershore/credentials.json").option("--token <token>","Maker token (mk_...). Falls back to FARTHERSHORE_TOKEN env, then prompt.").action(async i=>{let n=i.token??process.env.FARTHERSHORE_TOKEN??await Rw("Maker token: ");if(!n||n.length<10)throw new b("Token looks malformed.",void 0,{code:"AUTH_INVALID_TOKEN"});let o=Pr();Rm({...o??{},token:n}),j({},"Token stored.")}),r.command("whoami").description("Show current auth identity (org, role, scopes)").action(async()=>{let n=await e().authWhoami();if(n.kind==="maker"){j({actorType:"maker",tokenId:n.tokenId,organizationId:n.organizationId,businessId:n.businessId??null,scopes:n.scopes},`Authenticated maker token ${n.tokenId}`);return}let o=n.memberships.find(a=>a.organization.id===n.activeOrganization.id);j({userId:n.user.id,clerkUserId:n.user.clerkUserId,organizationId:n.activeOrganization.id,organizationName:n.activeOrganization.name??null,organizationSlug:n.activeOrganization.slug??null,role:o?.role??null,memberships:n.memberships.map(a=>({organizationId:a.organization.id,organizationName:a.organization.name??null,role:a.role}))},`Authenticated as ${n.user.id}`)}),r.command("logout").description("Clear stored credentials").action(()=>{Am(),j({},"Logged out.")})}import{createInterface as Hw}from"node:readline";import{readFile as Vw}from"node:fs/promises";import{setTimeout as Zw}from"node:timers/promises";import{extname as Kw}from"node:path";var Aw=s.string().regex(/^\/[A-Za-z0-9_/:.{}*-]*$/,"non-canonical route path"),Cw=s.enum(["GET","POST","PUT","PATCH","DELETE","HEAD","OPTIONS"]),jv=s.object({method:Cw,path:Aw}),Pw=jv.extend({pending:s.boolean().optional()}),AL=s.object({lockVersion:s.number().int().nonnegative(),surfaceHash:s.string().startsWith("sha256:"),backends:s.record(s.string(),s.object({routes:s.array(Pw).max(500)}))}),CL=s.object({backendId:s.string().min(1),lockVersion:s.number().int().nonnegative(),reflectedSurfaceHash:s.string().startsWith("sha256:"),routes:s.array(jv).max(500)}),PL=s.object({backendId:s.string().min(1),lockVersion:s.number().int().nonnegative(),servedRouteIds:s.array(s.string().min(1)).max(500)});var Y={idempotencyKey:s.string().optional().describe("A UUID you generate; REUSE the same value when retrying so the retry replays the first result instead of double-provisioning.")};import{randomUUID as Uw}from"node:crypto";function Lv(t){let e=t?.trim().toLowerCase();return e?e.split(".")[0]??null:null}async function A(t,e){if(e){if(e.length===36)return e;let r=e.trim().toLowerCase(),n=(await t.listBusinesses()).find(o=>o.id===e||o.name.toLowerCase()===r||o.runtimeHostname?.toLowerCase()===r||o.portalHostname?.toLowerCase()===r||Lv(o.runtimeHostname)===r||Lv(o.portalHostname)===r);if(n)return n.id;throw new b(`Business "${e}" not found`,404,{code:"NOT_FOUND"})}throw new Error("No business selected. Pass a business id or slug, or run `farthershore business create` first.")}var zw="Reuse the same key on retry so it replays instead of double-creating (auto-generated if omitted).",jw="Preview the change without applying it.",Lw="Skip confirmation; required for this destructive action";function Mw(t,e){let r=typeof e.parser=="function",i=e.defaultValue!==void 0,n=[e.token];(e.describe!==void 0||r||i)&&n.push(e.describe??""),r&&n.push(e.parser),i&&n.push(e.defaultValue),e.required?t.requiredOption(...n):t.option(...n)}function Mv(t,e,r){let i=r.cli.args.filter(c=>c.kind==="positional"),n=r.cli.args.filter(c=>c.kind==="flag"),o=[r.cli.command,...i.map(c=>c.token)].join(" "),a=t.command(o).description(r.cli.summary);for(let c of n)Mw(a,c);r.cli.destructive&&a.option("--yes",Lw),r.cli.idempotent&&(a.option("--idempotency-key <key>",zw),a.option("--dry-run",jw)),r.cli.helpTextAfter&&a.addHelpText("after",r.cli.helpTextAfter),a.action(async(...c)=>{let l=c[c.length-1],d=c[c.length-2]??{},u=typeof l.optsWithGlobals=="function"?l.optsWithGlobals():d,p=c.slice(0,c.length-2);if(r.cli.destructive&&u.yes!==!0)throw new b(r.cli.yesMessage??"Pass --yes to confirm this destructive action.",void 0,{code:"DESTRUCTIVE_OP_REQUIRES_YES"});let m=e(),g={...u};for(let R=0;R<i.length;R++){let H=i[R],W=p[R];g[H.field]=H.resolveBusiness?await A(m,W):W}let k=r.cli.idempotent?{idempotencyKey:u.idempotencyKey??Uw(),dryRun:u.dryRun}:{},S={client:m,args:g,opts:u,reqOpts:k,emit:j,emitDryRunPreview:R=>R?.dryRun===!0?(j({preview:R.wouldHave,dryRun:!0},"Dry run \u2014 no changes applied."),!0):!1};await r.cli.handler(S)})}var Fw={business:"Business bootstrap, status, release, and presentation metadata","business docs":"Enable or disable docs publishing for a business","business preview-env":"Configure automatic preview environment creation for a business","apply-timeline":"Inspect the Apply Timeline: repo-triggered manifest applies (PRs, pushes, releases), checks, diffs, apply phases",plan:"Plan operations: list code-managed plans and migrate subscribers",env:"Manage business environments (preview branches, prod)",backend:"Manage BYO backends and their runtime tokens","backend tokens":"Manage runtime tokens (fsrt_) for BYO backends",frontend:"Managed Frontend Hosting: deploy/status/rollback (+ local preview)",webhook:"Manage outbound webhook endpoints",agents:"Enable, disable, and inspect a business's operating agents",bulletin:"Read and hand off the operating agents' bulletin board","promo-code":"Manage API-controlled checkout promo codes",consumer:"Manage business users/consumers","consumer rbac":"Managed-RBAC support overrides for client-org members (role assignment)",variables:"Manage PUBLIC bundle vars and write-only BUILD/RUNTIME secrets",persona:"Mint and manage test-env personas (test API keys)",usage:"Usage observability for a business",token:"Maker-token management (list, create, revoke)"};function Bw(t,e){let r=e.split(" "),i=t,n="";for(let o of r){n=n?`${n} ${o}`:o;let a=i.commands.find(d=>d.name()===o);if(a){i=a;continue}let c=Fw[n],l=i.command(o);c&&l.description(c),i=l}return i}function N(t,e,r){for(let i of r){let n=Bw(t,i.cli.group);Mv(n,e,i)}}function Fv(t){let e={};return typeof t.bump=="string"&&(e.bump=t.bump),typeof t.version=="string"&&(e.version=t.version),t.acceptBreaking===!0&&(e.acceptBreaking=!0),e}async function Gw(t){let e=Hw({input:process.stdin,output:process.stderr,terminal:!0});return new Promise(r=>{e.question(`Cut release ${t}? [y/N] `,i=>{e.close(),r(/^y(es)?$/i.test(i.trim()))})})}function Ww(t){return t.split("_").map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(" ")}function qw(t){let[e="",r,i]=t.split(":");if(!/^[a-z0-9_]+$/.test(e))throw new b(`Invalid meter key in "--meter ${t}" \u2014 keys are lowercase letters, digits, and underscores (e.g. input_tokens).`,void 0,{code:"INVALID_METER_SPEC"});return{key:e,display:r?.trim()||Ww(e),unit:i?.trim()||void 0}}function Jw(t){let e=t.meter??[];if(e.length>0&&t.meters)throw new b("Pass either --meters <template> or repeated --meter entries, not both.",void 0,{code:"CONFLICTING_METER_FLAGS"});if(e.length>0){let r=e.map(qw);if(new Set(r.map(n=>n.key)).size!==r.length)throw new b("Duplicate meter keys in --meter flags.",void 0,{code:"INVALID_METER_SPEC"});return r}if(t.meters){let r=Qh(t.meters);if(!r)throw new b(`Unknown meter template "${t.meters}". Available: ${eb().join(", ")}.`,void 0,{code:"UNKNOWN_METER_TEMPLATE"});return r.meters.map(i=>({...i}))}}var Ne="<businessIdOrName>",Yw={BRANCH_PREFIX:"branch-prefix",PULL_REQUEST:"pull-request",DISABLED:"disabled"},Xw=Object.fromEntries(Ad.map(t=>[Yw[t],t])),Qw=/^.{1,50}$/,e$={".png":"image/png",".jpg":"image/jpeg",".jpeg":"image/jpeg",".webp":"image/webp"};function t$(t){let e=new Map;for(let r of Object.values(t??{}))for(let i of r?.routes??[]){if(typeof i.method!="string"||typeof i.path!="string")continue;let n=ct({actionId:i.actionId,method:i.method,path:i.path}),o=e.get(n)??new Set;o.add(ib(n,i.method)),e.set(n,o)}return[...e.entries()].map(([r,i])=>({subject:r,title:r,permissions:[...i].sort()})).sort((r,i)=>r.subject.localeCompare(i.subject))}function n$(t){return{enabled:t===!0}}function r$(t){let{business:e,...r}=t;return{...r,business:e}}function i$(t){let e=e$[Kw(t).toLowerCase()];if(!e)throw new b(`Cannot infer image Content-Type for "${t}". Use a .png, .jpg, .jpeg, or .webp file.`,void 0,{code:"UNSUPPORTED_BRAND_ASSET_TYPE"});return e}function o$(t){return t.filter(e=>e!==void 0&&e!==!1).length}function Bv(t,e){let r=e==="icon"?"icon":"logo",i=e==="icon"?"icon":"logo",n=e==="icon"?"clearIcon":"clearLogo";if(o$([t[`${i}Url`],t[`${i}File`],t[n]])>1)throw new b(`Choose only one ${r} operation: --${i}-url, --${i}-file, or --clear-${i}.`,void 0,{code:"CONFLICTING_BRAND_ASSET_FLAGS"})}function s$(t){let e=Xw[t];if(!e)throw new b(`Invalid preview environment trigger "${t}". Use branch-prefix, pull-request, or disabled.`,void 0,{code:"INVALID_PREVIEW_ENV_TRIGGER"});return e}function a$(t){let e={};if(typeof t.trigger=="string"&&(e.previewEnvTrigger=s$(t.trigger)),t.clearBranchPrefix===!0)e.envBranchPrefix=null;else if(typeof t.branchPrefix=="string"){if(!Qw.test(t.branchPrefix))throw new b("--branch-prefix must be 1-50 characters.",void 0,{code:"INVALID_ENV_BRANCH_PREFIX"});e.envBranchPrefix=t.branchPrefix}if(e.previewEnvTrigger===void 0&&e.envBranchPrefix===void 0)throw new b("Pass at least one preview environment setting: --trigger, --branch-prefix, or --clear-branch-prefix.",void 0,{code:"MISSING_PREVIEW_ENV_UPDATE"});return e}async function Hv(t,e,r,i){let n=await Vw(i);return t.uploadBrandAsset(e,r,n,i$(i))}function c$(t){if(t instanceof b||!(t instanceof Error))return!1;let e=t.cause,r=e&&typeof e=="object"&&"code"in e?String(e.code):"",i=`${t.name} ${t.message} ${r}`.toLowerCase();return i.includes("abort")||i.includes("timeout")||i.includes("econnreset")||i.includes("socket hang up")||i.includes("fetch failed")||i.includes("network")}async function l$(t,e){return(await t.listBusinesses()).find(i=>i.name===e)??null}async function u$(t){let{client:e,body:r,reqOpts:i}=t,n=5,o=[2e3,4e3,8e3,8e3];for(let a=1;a<=n;a+=1)try{return{result:await e.initBusiness(r,{...i,retryOnTransient:!1}),recoveredFromTimeout:!1}}catch(c){if(c$(c)){let l=await l$(e,r.name);if(l)return{result:{business:l,repo:null,agent:{instructions:"",agentsMdUrl:null}},recoveredFromTimeout:!0}}if(c instanceof b&&c.status===409&&c.code==="IDEMPOTENCY_KEY_IN_FLIGHT"&&a<n){await Zw(o[Math.min(a-1,o.length-1)]);continue}throw c}throw new b("Timed out waiting for the idempotent business create request to finish.",409,{code:"IDEMPOTENCY_KEY_IN_FLIGHT"})}var dp=[{opKey:"business.list",operationClass:"operate",scope:["businesses:read"],sideEffect:"read",cli:{group:"business",command:"list",summary:"List businesses in the current org",args:[],handler:async({client:t,emit:e})=>{let r=await t.listBusinesses();e({count:r.length,businesses:r.map(i=>({...i,displayName:i.displayName??null,status:i.status??null}))},`${r.length} business(es)`)}},mcp:{tool:"fs_business_list",title:"List businesses",description:"List every business in the authenticated FartherShore workspace (id, name, status). Read-only; use this to discover business ids for the other tools.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{},handler:async t=>{let e=await t.listBusinesses();return{count:e.length,businesses:e.map(r=>({id:r.id,name:r.name,status:r.status??null}))}}}},{opKey:"business.read",operationClass:"dual",scope:["businesses:read"],sideEffect:"read",cli:{group:"business",command:"show",summary:"Show a business",args:[{field:"businessId",kind:"positional",token:Ne,resolveBusiness:!0},{field:"env",kind:"flag",token:"--env <env>",describe:"Environment scope (preview branch name)"}],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=await t.getBusiness(i,{env:e.env});r({business:n},`Business ${i}`)}},mcp:null},{opKey:"business.status",operationClass:"operate",scope:["businesses:read"],sideEffect:"read",cli:{group:"business",command:"status",summary:"Show a business's lifecycle/release/live state (status, latest release version, latest deployment, and a derived `live` boolean) \u2014 verify a business is serving after publish.",args:[{field:"businessId",kind:"positional",token:Ne,resolveBusiness:!0}],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=await t.getDeployments(i),o=n.data[0]??null,a={id:n.business.id,status:n.business.status,latestReleaseVersion:n.business.latestReleaseVersion,live:n.live,latestDeployment:o?{id:o.id,status:o.status,edgePublishStatus:o.edgePublishStatus,createdAt:o.createdAt}:null};r(a,`Business ${i}: ${n.business.status}${n.business.latestReleaseVersion?` @ ${n.business.latestReleaseVersion}`:""} (${n.live?"live":"not live"})`)}},mcp:{tool:"fs_business_status",title:"Business status",description:"Verify a business's lifecycle/release state by id or slug: its status (DRAFT|ACTIVE), latest release version, latest deployment run, and a derived `live` boolean (ACTIVE + a real non-bootstrap release applied + the edge serving the snapshot). Read-only; use this to confirm a business is live after publishing.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe("The business id or slug to check.")},handler:async(t,e)=>{let r=await A(t,e.businessId),i=await t.getDeployments(r),n=i.data[0]??null;return{id:i.business.id,status:i.business.status,latestReleaseVersion:i.business.latestReleaseVersion,live:i.live,latestDeployment:n?{id:n.id,status:n.status,edgePublishStatus:n.edgePublishStatus,createdAt:n.createdAt}:null}}}},{opKey:"rbac.enable",operationClass:"contract",scope:["businesses:read"],sideEffect:"read",cli:{group:"business",command:"rbac",summary:"Show a business's Managed-RBAC contract state: the accepted spec's `rbac` flag and the derived grantable-permission catalog.",args:[{field:"businessId",kind:"positional",token:Ne,resolveBusiness:!0},{field:"env",kind:"flag",token:"--env <env>",describe:"Environment scope (preview branch name)"}],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=await t.getBusinessConfig(i,{state:"accepted",env:e.env}),o=n.config??{},a=n$(o.business?.rbac),c=t$(o.routeCatalog);r({businessId:i,environment:n.environment??null,rbac:a,catalog:c},`Managed RBAC ${a.enabled?"enabled":"not enabled"} \u2014 ${c.length} catalog group(s)`)}},mcp:null},{opKey:"business.create",operationClass:"dual",scope:["businesses:create"],sideEffect:"write",cli:{group:"business",command:"create",summary:"Create a new business and provision the frontend starter repo",idempotent:!0,args:[{field:"name",kind:"flag",token:"--name <name>",describe:"Business slug (becomes the subdomain)",required:!0},{field:"displayName",kind:"flag",token:"--display-name <displayName>",describe:"Human-friendly business name"},{field:"description",kind:"flag",token:"--description <description>"},{field:"origin",kind:"flag",token:"--origin <url>",describe:"Optional business origin Farther Shore calls for customer-facing actions"},{field:"meters",kind:"flag",token:"--meters <template>",describe:`Meter template: ${xo.map(t=>`${t.id} (${t.label})`).join(", ")}. Default: requests.`},{field:"meter",kind:"flag",token:"--meter <key[:display[:unit]]>",describe:"Custom meter, repeatable (e.g. --meter input_tokens:'Input Tokens':token). Overrides --meters.",parser:(t,e)=>[...e,t],defaultValue:[]},{field:"docs",kind:"flag",token:"--docs",describe:"Enable docs for this business (default when omitted)."},{field:"docs",kind:"flag",token:"--no-docs",describe:"Opt out of docs for this business."}],handler:async({client:t,args:e,reqOpts:r,emit:i,emitDryRunPreview:n})=>{let o=Jw({meters:e.meters,meter:e.meter}),a=e.docs===!0?!0:e.docs===!1?!1:void 0,c={name:e.name,...typeof e.origin=="string"?{origin:e.origin}:{},description:e.description,displayName:e.displayName,meters:o,...a!==void 0?{docsEnabled:a}:{}},{result:l,recoveredFromTimeout:d}=await u$({client:t,body:c,reqOpts:r});n(l)||i({result:r$(l),...d?{recoveredFromTimeout:!0}:{}},`Business created: ${e.name}`)}},mcp:null},{opKey:"business.origin.update",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:"business",command:"update",summary:"Update business presentation metadata and per-env origin",args:[{field:"businessId",kind:"positional",token:Ne,resolveBusiness:!0},{field:"displayName",kind:"flag",token:"--display-name <displayName>"},{field:"description",kind:"flag",token:"--description <description>"},{field:"iconUrl",kind:"flag",token:"--icon-url <url>",describe:"Set the square icon/favicon URL"},{field:"iconFile",kind:"flag",token:"--icon-file <path>",describe:"Upload a local PNG, JPEG, or WEBP square icon"},{field:"clearIcon",kind:"flag",token:"--clear-icon",describe:"Remove the current icon asset"},{field:"logoUrl",kind:"flag",token:"--logo-url <url>",describe:"Set the wordmark/logo URL"},{field:"logoFile",kind:"flag",token:"--logo-file <path>",describe:"Upload a local PNG, JPEG, or WEBP wordmark/logo"},{field:"clearLogo",kind:"flag",token:"--clear-logo",describe:"Remove the current logo asset"},{field:"keyPrefix",kind:"flag",token:"--key-prefix <prefix>",describe:"White-label prefix for subscriber API keys (fsk_ \u2192 e.g. acme_). 2-12 lowercase letters/digits; fs/fsk/fsc/fsm reserved."},{field:"clearKeyPrefix",kind:"flag",token:"--clear-key-prefix",describe:"Reset the subscriber API key prefix to the default (fsk)."},{field:"origin",kind:"flag",token:"--origin <url>",describe:"Set the business upstream origin (the URL the gateway proxies to). With --env, sets that environment's override."},{field:"sandboxOrigin",kind:"flag",token:"--sandbox-origin <url>",describe:"Set the sandbox upstream origin. With --env, env-scoped."},{field:"allowedOrigins",kind:"flag",token:"--allowed-origins <origins>",describe:"Comma-separated browser origins allowed to call the gateway cross-origin (custom frontend domains), e.g. https://app.example.com. The tenant's own portal origin is always allowed."},{field:"clearAllowedOrigins",kind:"flag",token:"--clear-allowed-origins",describe:"Remove all custom allowed origins."},{field:"env",kind:"flag",token:"--env <env>",describe:"Environment scope"}],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId;Bv(e,"icon"),Bv(e,"logo");let n={};e.displayName!==void 0&&(n.displayName=e.displayName),e.description!==void 0&&(n.description=e.description),e.iconUrl!==void 0&&(n.iconUrl=e.iconUrl),e.logoUrl!==void 0&&(n.logoUrl=e.logoUrl),e.clearKeyPrefix===!0?n.keyPrefix=null:e.keyPrefix!==void 0&&(n.keyPrefix=e.keyPrefix),e.origin!==void 0&&(n.origin=e.origin),e.sandboxOrigin!==void 0&&(n.sandboxOrigin=e.sandboxOrigin),e.clearAllowedOrigins===!0?n.allowedOrigins=[]:typeof e.allowedOrigins=="string"&&(n.allowedOrigins=e.allowedOrigins.split(",").map(l=>l.trim()).filter(Boolean));let o=[];if(typeof e.iconFile=="string"&&o.push(()=>Hv(t,i,"icon",e.iconFile)),typeof e.logoFile=="string"&&o.push(()=>Hv(t,i,"logo",e.logoFile)),e.clearIcon===!0&&o.push(()=>t.deleteBrandAsset(i,"icon")),e.clearLogo===!0&&o.push(()=>t.deleteBrandAsset(i,"logo")),Object.keys(n).length===0&&o.length===0)throw new b("No fields to update. Pass presentation metadata flags such as --display-name, --description, --origin, --icon-file, --logo-file, or a clear flag.",void 0,{code:"BUSINESS_UPDATE_NO_FIELDS"});let a=Object.keys(n).length>0?await t.updateBusiness(i,n,{env:e.env}):await t.getBusiness(i,{env:e.env}),c=await Promise.all(o.map(l=>l()));r({business:a,assets:c},`Business ${i} updated`)}},mcp:{tool:"fs_brand_update",title:"Update business brand",description:"Update a business's brand/presentation and upstream origin \u2014 display name, description, icon, logo (wordmark), origin (the URL the gateway proxies to), sandboxOrigin. Pass env to write an environment-scoped origin override instead of the business default. Plans, pricing, and routes are managed as code in the business repo and are NOT editable here. Only the fields you pass are changed.",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!1,openWorldHint:!1},inputSchema:{businessId:s.string().describe("The business id or slug to update."),displayName:s.string().optional().describe("Display name."),description:s.string().optional().describe("Short business description."),iconUrl:s.string().nullable().optional().describe("Square icon/favicon URL, or null to clear it."),logoUrl:s.string().nullable().optional().describe("Wordmark/logo URL, or null to clear it."),keyPrefix:s.string().nullable().optional().describe("White-label prefix for subscriber API keys (fsk_ \u2192 e.g. acme_). 2-12 lowercase letters/digits; fs/fsk/fsc/fsm reserved. Null clears to the default fsk."),origin:s.string().optional().describe("Business upstream origin (the URL the gateway proxies to)."),sandboxOrigin:s.string().optional().describe("Sandbox upstream origin."),env:s.string().optional().describe("Environment scope \u2014 when set, the origin override is written to that environment instead of the business default.")},handler:async(t,e)=>{let r=await A(t,e.businessId),i={};return e.displayName!==void 0&&(i.displayName=e.displayName),e.description!==void 0&&(i.description=e.description),e.iconUrl!==void 0&&(i.iconUrl=e.iconUrl),e.logoUrl!==void 0&&(i.logoUrl=e.logoUrl),e.keyPrefix!==void 0&&(i.keyPrefix=e.keyPrefix),e.origin!==void 0&&(i.origin=e.origin),e.sandboxOrigin!==void 0&&(i.sandboxOrigin=e.sandboxOrigin),e.clearAllowedOrigins===!0?i.allowedOrigins=[]:typeof e.allowedOrigins=="string"&&(i.allowedOrigins=e.allowedOrigins.split(",").map(n=>n.trim()).filter(Boolean)),t.updateBusiness(r,i,{env:e.env})}}},{opKey:"business.publish",operationClass:"dual",scope:["businesses:publish"],sideEffect:"write",cli:{group:"business",command:"publish",summary:"Publish a draft business (make it live) and cut a versioned release with an auto-computed semver. Requires at least one plan, an origin, and a verified Stripe connection.",idempotent:!0,args:[{field:"businessId",kind:"positional",token:Ne,resolveBusiness:!0},{field:"bump",kind:"flag",token:"--bump <bump>",describe:"Force the semver bump (major|minor|patch). Omit to auto-derive from the change."},{field:"version",kind:"flag",token:"--version <version>",describe:"Pin the exact next release tag (vX.Y.Z), skipping derivation."},{field:"acceptBreaking",kind:"flag",token:"--accept-breaking",describe:"Consent to publish a breaking (blocking-risk) change as a major release."}],helpTextAfter:`
101
+ `)}return G$(r)}function x_(t){return t.replace(/[\u0000-\u0008\u000b-\u001f\u007f-\u009f]/g,"")}var I_="unknown";function S_(t){I_=t}function E_(){return I_}async function J$(t){if(!Un())throw new b("No token provided. Pass --token, set FARTHERSHORE_TOKEN, or run interactively.",void 0,{code:"AUTH_NO_TOKEN"});let e=q$({input:process.stdin,output:process.stdout,terminal:!0});return new Promise(r=>{e.question(t,i=>{e.close(),r(i.trim())})})}function w_(t,e){let r=t.command("auth").description("Manage CLI auth credentials");r.command("login").description("Store a maker token in ~/.farthershore/credentials.json").option("--token <token>","Maker token (mk_...). Falls back to FARTHERSHORE_TOKEN env, then prompt.").action(async i=>{let n=i.token??process.env.FARTHERSHORE_TOKEN??await J$("Maker token: ");if(!n||n.length<10)throw new b("Token looks malformed.",void 0,{code:"AUTH_INVALID_TOKEN"});let o=Xr();uf({...o??{},token:n}),L({},"Token stored.")}),r.command("whoami").description("Show current auth identity (org, role, scopes)").action(async()=>{let n=await e().authWhoami();if(n.kind==="maker"){L({actorType:"maker",tokenId:n.tokenId,organizationId:n.organizationId,businessId:n.businessId??null,scopes:n.scopes},`Authenticated maker token ${n.tokenId}`);return}let o=n.memberships.find(a=>a.organization.id===n.activeOrganization.id);L({userId:n.user.id,clerkUserId:n.user.clerkUserId,organizationId:n.activeOrganization.id,organizationName:n.activeOrganization.name??null,organizationSlug:n.activeOrganization.slug??null,role:o?.role??null,memberships:n.memberships.map(a=>({organizationId:a.organization.id,organizationName:a.organization.name??null,role:a.role}))},`Authenticated as ${n.user.id}`)}),r.command("logout").description("Clear stored credentials").action(()=>{df(),L({},"Logged out.")})}import{createInterface as pO}from"node:readline";import{readFile as mO}from"node:fs/promises";import{setTimeout as fO}from"node:timers/promises";import{extname as gO}from"node:path";var Y$=s.string().regex(/^\/[A-Za-z0-9_/:.{}*-]*$/,"non-canonical route path"),X$=s.enum(["GET","POST","PUT","PATCH","DELETE","HEAD","OPTIONS"]),$_=s.object({method:X$,path:Y$}),Q$=$_.extend({pending:s.boolean().optional()}),OM=s.object({lockVersion:s.number().int().nonnegative(),surfaceHash:s.string().startsWith("sha256:"),backends:s.record(s.string(),s.object({routes:s.array(Q$).max(500)}))}),TM=s.object({backendId:s.string().min(1),lockVersion:s.number().int().nonnegative(),reflectedSurfaceHash:s.string().startsWith("sha256:"),routes:s.array($_).max(500)}),AM=s.object({backendId:s.string().min(1),lockVersion:s.number().int().nonnegative(),servedRouteIds:s.array(s.string().min(1)).max(500)});var Q={idempotencyKey:s.string().optional().describe("A UUID you generate; REUSE the same value when retrying so the retry replays the first result instead of double-provisioning.")};import{randomUUID as rO}from"node:crypto";function T_(){let t=process.env.FARTHERSHORE_BUSINESS?.trim();if(t)return{ref:t,source:"FARTHERSHORE_BUSINESS"};let e=St(process.cwd());return e?{ref:e.businessId,source:`linked directory (${e.label??e.businessId})`}:null}function O_(t){let e=t?.trim().toLowerCase();return e?e.split(".")[0]??null:null}function nO(t,e){let r=e.trim().toLowerCase();return t.find(i=>i.id===e||i.name.toLowerCase()===r||i.runtimeHostname?.toLowerCase()===r||i.portalHostname?.toLowerCase()===r||O_(i.runtimeHostname)===r||O_(i.portalHostname)===r)}var gn=50,A_=8;async function Kp(t){let e=[];for(let r=0;r<A_;r++){let i=await t.listBusinesses({limit:gn,offset:r*gn});if(e.push(...i),i.length<gn)return{businesses:e,complete:!0}}return{businesses:e,complete:!1}}async function Gp(t,e){for(let r=0;r<A_;r++){let i=await t.listBusinesses({limit:gn,offset:r*gn}),n=nO(i,e);if(n)return{outcome:"matched",business:n};if(i.length<gn)return r===0?{outcome:"absent"}:{outcome:"inconclusive"}}return{outcome:"inconclusive"}}async function A(t,e){if(e){if(e.length===36)return e;let i=await Gp(t,e);if(i.outcome==="matched")return i.business.id;throw i.outcome==="inconclusive"?new b(`Could not conclusively resolve "${e}" \u2014 the business list could not be checked to the end. Pass the 36-character business id directly, or retry.`,0,{code:"BUSINESS_RESOLUTION_INCONCLUSIVE"}):new b(`Business "${e}" not found`,404,{code:"NOT_FOUND"})}let r=T_();if(r)return A(t,r.ref);throw new b("No business selected. Pass one as an argument, run `farthershore link <business>` to target this directory at a business, or set FARTHERSHORE_BUSINESS.",0,{code:"NO_BUSINESS_SELECTED"})}function R_(){return T_()}function C_(){let t=St(process.cwd()),e=process.env.FARTHERSHORE_BUSINESS?.trim(),r=process.env.FARTHERSHORE_ENV?.trim(),i=e?{ref:e,source:"FARTHERSHORE_BUSINESS"}:t?{ref:t.businessId,source:`linked directory (${t.label??t.businessId})`}:null,n=r||t?.environment;return{business:i,environment:n}}var iO="Reuse the same key on retry so it replays instead of double-creating (auto-generated if omitted).",oO="Preview the change without applying it.",sO="Skip confirmation; required for this destructive action";async function aO(t,e){if(typeof t!="string"||t.length===0)return"shift";try{let r=await Gp(e(),t);return r.outcome==="matched"?"explicit":r.outcome==="absent"?"shift":"unverifiable"}catch{return"unverifiable"}}function cO(t,e){let r=typeof e.parser=="function",i=e.defaultValue!==void 0,n=[e.token];(e.describe!==void 0||r||i)&&n.push(e.describe??""),r&&n.push(e.parser),i&&n.push(e.defaultValue),e.required?t.requiredOption(...n):t.option(...n)}function P_(t,e,r){let i=r.cli.args.filter(u=>u.kind==="positional"),n=r.cli.args.filter(u=>u.kind==="flag"),o=i.findIndex(u=>u.resolveBusiness),a=u=>/^<.+>$/.test(u),c=u=>u.replace(/^<(.+)>$/,"[$1]"),l=[r.cli.command,...i.map((u,p)=>u.resolveBusiness||o!==-1&&p>o?c(u.token):u.token)].join(" "),d=t.command(l).description(r.cli.summary);o!==-1&&i.length>1&&d.usage(["[options]",...i.map(u=>u.resolveBusiness?c(u.token):u.token)].join(" "));for(let u of n)cO(d,u);r.cli.destructive&&d.option("--yes",sO),r.cli.idempotent&&(d.option("--idempotency-key <key>",iO),d.option("--dry-run",oO)),r.cli.helpTextAfter&&d.addHelpText("after",r.cli.helpTextAfter),d.action(async(...u)=>{let p=u[u.length-1],m=u[u.length-2]??{},f=typeof p.optsWithGlobals=="function"?p.optsWithGlobals():m,v=u.slice(0,u.length-2).map(ee=>typeof ee=="string"&&ee.trim()===""?void 0:ee),{business:w,environment:E}=C_(),U,H=()=>U??=e();if(r.cli.destructive&&f.yes!==!0)throw new b(r.cli.yesMessage??"Pass --yes to confirm this destructive action.",void 0,{code:"DESTRUCTIVE_OP_REQUIRES_YES"});v=await lO({op:r,positionals:i,bizIdx:o,isRequiredToken:a,positionalValues:v,implicitBusinessRef:w?.ref??null,useClient:H});for(let ee=0;ee<i.length;ee++){let kt=i[ee];if(!kt.resolveBusiness&&a(kt.token)&&v[ee]===void 0){let On=kt.token.slice(1,-1);throw new b(`Missing required argument '${On}'.`,400,{code:"MISSING_ARGUMENT",param:On})}}let V={...f};typeof V.env=="string"&&V.env.trim()===""&&(V.env=void 0),V.env===void 0&&E!==void 0&&(V.env=E);for(let ee=0;ee<i.length;ee++){let kt=i[ee],On=v[ee];V[kt.field]=kt.resolveBusiness?await A(H(),On):On}let D=typeof f.idempotencyKey=="string"&&f.idempotencyKey.trim()!==""?f.idempotencyKey:void 0,q=r.cli.idempotent?{idempotencyKey:D??rO(),dryRun:f.dryRun}:{},Vr=ee=>ee?.dryRun===!0?(L({preview:ee.wouldHave,dryRun:!0},"Dry run \u2014 no changes applied."),!0):!1,Kr={client:H(),args:V,opts:f,reqOpts:q,emit:L,emitDryRunPreview:Vr};await r.cli.handler(Kr)})}async function lO(t){let{op:e,positionals:r,bizIdx:i,isRequiredToken:n,implicitBusinessRef:o,useClient:a}=t,c=t.positionalValues;if(i===-1)return c;if(r.some((d,u)=>u!==i&&n(d.token)&&c[u]===void 0)&&o!==null){let d=c[i],u=await aO(d,a);if(u==="unverifiable"&&e.sideEffect==="write")throw new b(`Cannot prove whether '${String(d)}' names a business (the business list could not be conclusively checked), so this write could target the wrong business. Pass both the business and the remaining arguments explicitly, or retry.`,0,{code:"AMBIGUOUS_BUSINESS_CONTEXT"});if(u!=="explicit"){let p=c.filter(v=>v!==void 0),m=new Array(r.length).fill(void 0),f=0;for(let v=0;v<r.length;v++)v!==i&&(m[v]=p[f++]);c=m}}if(c[i]===void 0){if(o===null)throw new b("No business selected. Pass one as an argument, run `farthershore link <business>` to target this directory at a business, or set FARTHERSHORE_BUSINESS.",0,{code:"NO_BUSINESS_SELECTED"});c=[...c],c[i]=o}return c}var uO={business:"Business bootstrap, status, release, and presentation metadata","business docs":"Enable or disable docs publishing for a business","business preview-env":"Configure automatic preview environment creation for a business","apply-timeline":"Inspect the Apply Timeline: repo-triggered manifest applies (PRs, pushes, releases), checks, diffs, apply phases",plan:"Plan operations: list code-managed plans and migrate subscribers",env:"Manage business environments (preview branches, prod)",backend:"Manage BYO backends and their runtime tokens","backend tokens":"Manage runtime tokens (fsrt_) for BYO backends",frontend:"Managed Frontend Hosting: deploy/status/rollback (+ local preview)",webhook:"Manage outbound webhook endpoints",agents:"Enable, disable, and inspect a business's operating agents",bulletin:"Read and hand off the operating agents' bulletin board","promo-code":"Manage API-controlled checkout promo codes",consumer:"Manage business users/consumers","consumer rbac":"Managed-RBAC support overrides for client-org members (role assignment)",variables:"Manage PUBLIC bundle vars and write-only BUILD/RUNTIME secrets",persona:"Mint and manage test-env personas (test API keys)",usage:"Usage observability for a business",token:"Maker-token management (list, create, revoke)"};function dO(t,e){let r=e.split(" "),i=t,n="";for(let o of r){n=n?`${n} ${o}`:o;let a=i.commands.find(d=>d.name()===o);if(a){i=a;continue}let c=uO[n],l=i.command(o);c&&l.description(c),i=l}return i}function C(t,e,r){for(let i of r){let n=dO(t,i.cli.group);P_(n,e,i)}}function N_(t){let e={};return typeof t.bump=="string"&&(e.bump=t.bump),typeof t.version=="string"&&(e.version=t.version),t.acceptBreaking===!0&&(e.acceptBreaking=!0),e}async function hO(t){let e=pO({input:process.stdin,output:process.stderr,terminal:!0});return new Promise(r=>{e.question(`Cut release ${t}? [y/N] `,i=>{e.close(),r(/^y(es)?$/i.test(i.trim()))})})}function bO(t){return t.split("_").map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(" ")}function vO(t){let[e="",r,i]=t.split(":");if(!/^[a-z0-9_]+$/.test(e))throw new b(`Invalid meter key in "--meter ${t}" \u2014 keys are lowercase letters, digits, and underscores (e.g. input_tokens).`,void 0,{code:"INVALID_METER_SPEC"});return{key:e,display:r?.trim()||bO(e),unit:i?.trim()||void 0}}function _O(t){let e=t.meter??[];if(e.length>0&&t.meters)throw new b("Pass either --meters <template> or repeated --meter entries, not both.",void 0,{code:"CONFLICTING_METER_FLAGS"});if(e.length>0){let r=e.map(vO);if(new Set(r.map(n=>n.key)).size!==r.length)throw new b("Duplicate meter keys in --meter flags.",void 0,{code:"INVALID_METER_SPEC"});return r}if(t.meters){let r=Db(t.meters);if(!r)throw new b(`Unknown meter template "${t.meters}". Available: ${Ub().join(", ")}.`,void 0,{code:"UNKNOWN_METER_TEMPLATE"});return r.meters.map(i=>({...i}))}}var Me="<businessIdOrName>",yO={BRANCH_PREFIX:"branch-prefix",PULL_REQUEST:"pull-request",DISABLED:"disabled"},kO=Object.fromEntries(cp.map(t=>[yO[t],t])),xO=/^.{1,50}$/,IO={".png":"image/png",".jpg":"image/jpeg",".jpeg":"image/jpeg",".webp":"image/webp"};function SO(t){let e=new Map;for(let r of Object.values(t??{}))for(let i of r?.routes??[]){if(typeof i.method!="string"||typeof i.path!="string")continue;let n=bt({actionId:i.actionId,method:i.method,path:i.path}),o=e.get(n)??new Set;o.add(Mb(n,i.method)),e.set(n,o)}return[...e.entries()].map(([r,i])=>({subject:r,title:r,permissions:[...i].sort()})).sort((r,i)=>r.subject.localeCompare(i.subject))}function EO(t){return{enabled:t===!0}}function wO(t){let{business:e,...r}=t;return{...r,business:e}}function $O(t){let e=IO[gO(t).toLowerCase()];if(!e)throw new b(`Cannot infer image Content-Type for "${t}". Use a .png, .jpg, .jpeg, or .webp file.`,void 0,{code:"UNSUPPORTED_BRAND_ASSET_TYPE"});return e}function OO(t){return t.filter(e=>e!==void 0&&e!==!1).length}function D_(t,e){let r=e==="icon"?"icon":"logo",i=e==="icon"?"icon":"logo",n=e==="icon"?"clearIcon":"clearLogo";if(OO([t[`${i}Url`],t[`${i}File`],t[n]])>1)throw new b(`Choose only one ${r} operation: --${i}-url, --${i}-file, or --clear-${i}.`,void 0,{code:"CONFLICTING_BRAND_ASSET_FLAGS"})}function TO(t){let e=kO[t];if(!e)throw new b(`Invalid preview environment trigger "${t}". Use branch-prefix, pull-request, or disabled.`,void 0,{code:"INVALID_PREVIEW_ENV_TRIGGER"});return e}function AO(t){let e={};if(typeof t.trigger=="string"&&(e.previewEnvTrigger=TO(t.trigger)),t.clearBranchPrefix===!0)e.envBranchPrefix=null;else if(typeof t.branchPrefix=="string"){if(!xO.test(t.branchPrefix))throw new b("--branch-prefix must be 1-50 characters.",void 0,{code:"INVALID_ENV_BRANCH_PREFIX"});e.envBranchPrefix=t.branchPrefix}if(e.previewEnvTrigger===void 0&&e.envBranchPrefix===void 0)throw new b("Pass at least one preview environment setting: --trigger, --branch-prefix, or --clear-branch-prefix.",void 0,{code:"MISSING_PREVIEW_ENV_UPDATE"});return e}async function U_(t,e,r,i){let n=await mO(i);return t.uploadBrandAsset(e,r,n,$O(i))}async function RO(t,e){return(await t.listBusinesses()).find(i=>i.name===e)??null}async function CO(t){let{client:e,body:r,reqOpts:i}=t,n=5,o=[2e3,4e3,8e3,8e3];for(let a=1;a<=n;a+=1)try{return{result:await e.initBusiness(r,{...i,retryOnTransient:!1}),recoveredFromTimeout:!1}}catch(c){if(!(c instanceof b&&c.code==="IDEMPOTENCY_KEY_IN_FLIGHT")){let d=await RO(e,r.name).catch(()=>null);if(d)return{result:{business:d,repo:null,agent:{instructions:"",agentsMdUrl:null}},recoveredFromTimeout:!0}}if(c instanceof b&&c.status===409&&c.code==="IDEMPOTENCY_KEY_IN_FLIGHT"&&a<n){await fO(o[Math.min(a-1,o.length-1)]);continue}throw c}throw new b("Timed out waiting for the idempotent business create request to finish.",409,{code:"IDEMPOTENCY_KEY_IN_FLIGHT"})}var Zp=[{opKey:"business.list",operationClass:"operate",scope:["businesses:read"],sideEffect:"read",cli:{group:"business",command:"list",summary:"List businesses in the current org",args:[],handler:async({client:t,emit:e})=>{let{businesses:r,complete:i}=await Kp(t);e({count:r.length,...i?{}:{truncated:!0},businesses:r.map(n=>({...n,displayName:n.displayName??null,status:n.status??null}))},`${r.length} business(es)${i?"":" (truncated)"}`)}},mcp:{tool:"fs_business_list",title:"List businesses",description:"List every business in the authenticated FartherShore workspace (id, name, status). Read-only; use this to discover business ids for the other tools.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{},handler:async t=>{let{businesses:e,complete:r}=await Kp(t);return{count:e.length,...r?{}:{truncated:!0},businesses:e.map(i=>({id:i.id,name:i.name,status:i.status??null}))}}}},{opKey:"business.read",operationClass:"dual",scope:["businesses:read"],sideEffect:"read",cli:{group:"business",command:"show",summary:"Show a business",args:[{field:"businessId",kind:"positional",token:Me,resolveBusiness:!0},{field:"env",kind:"flag",token:"--env <env>",describe:"Environment scope (preview branch name)"}],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=await t.getBusiness(i,{env:e.env});r({business:n},`Business ${i}`)}},mcp:null},{opKey:"business.status",operationClass:"operate",scope:["businesses:read"],sideEffect:"read",cli:{group:"business",command:"status",summary:"Show a business's lifecycle/release/live state (status, latest release version, latest deployment, and a derived `live` boolean) \u2014 verify a business is serving after publish.",args:[{field:"businessId",kind:"positional",token:Me,resolveBusiness:!0}],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=await t.getDeployments(i),o=n.data[0]??null,a={id:n.business.id,status:n.business.status,latestReleaseVersion:n.business.latestReleaseVersion,live:n.live,latestDeployment:o?{id:o.id,status:o.status,edgePublishStatus:o.edgePublishStatus,createdAt:o.createdAt}:null};r(a,`Business ${i}: ${n.business.status}${n.business.latestReleaseVersion?` @ ${n.business.latestReleaseVersion}`:""} (${n.live?"live":"not live"})`)}},mcp:{tool:"fs_business_status",title:"Business status",description:"Verify a business's lifecycle/release state by id or slug: its status (DRAFT|ACTIVE), latest release version, latest deployment run, and a derived `live` boolean (ACTIVE + a real non-bootstrap release applied + the edge serving the snapshot). Read-only; use this to confirm a business is live after publishing.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe("The business id or slug to check.")},handler:async(t,e)=>{let r=await A(t,e.businessId),i=await t.getDeployments(r),n=i.data[0]??null;return{id:i.business.id,status:i.business.status,latestReleaseVersion:i.business.latestReleaseVersion,live:i.live,latestDeployment:n?{id:n.id,status:n.status,edgePublishStatus:n.edgePublishStatus,createdAt:n.createdAt}:null}}}},{opKey:"rbac.read",operationClass:"contract",scope:["businesses:read"],sideEffect:"read",cli:{group:"business",command:"rbac",summary:"Show a business's Managed-RBAC contract state: the accepted spec's `rbac` flag and the derived grantable-permission catalog.",args:[{field:"businessId",kind:"positional",token:Me,resolveBusiness:!0},{field:"env",kind:"flag",token:"--env <env>",describe:"Environment scope (preview branch name)"}],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=await t.getBusinessConfig(i,{state:"accepted",env:e.env}),o=n.config??{},a=EO(o.business?.rbac),c=SO(o.routeCatalog);r({businessId:i,environment:n.environment??null,rbac:a,catalog:c},`Managed RBAC ${a.enabled?"enabled":"not enabled"} \u2014 ${c.length} catalog group(s)`)}},mcp:null},{opKey:"business.create",operationClass:"dual",scope:["businesses:create"],sideEffect:"write",cli:{group:"business",command:"create",summary:"Create a new business and provision the frontend starter repo",idempotent:!0,args:[{field:"name",kind:"flag",token:"--name <name>",describe:"Business slug (becomes the subdomain)",required:!0},{field:"displayName",kind:"flag",token:"--display-name <displayName>",describe:"Human-friendly business name"},{field:"description",kind:"flag",token:"--description <description>"},{field:"origin",kind:"flag",token:"--origin <url>",describe:"Optional business origin Farther Shore calls for customer-facing actions"},{field:"meters",kind:"flag",token:"--meters <template>",describe:`Meter template: ${Fo.map(t=>`${t.id} (${t.label})`).join(", ")}. Default: requests.`},{field:"meter",kind:"flag",token:"--meter <key[:display[:unit]]>",describe:"Custom meter, repeatable (e.g. --meter input_tokens:'Input Tokens':token). Overrides --meters.",parser:(t,e)=>[...e,t],defaultValue:[]},{field:"docs",kind:"flag",token:"--docs",describe:"Enable docs for this business (default when omitted)."},{field:"docs",kind:"flag",token:"--no-docs",describe:"Opt out of docs for this business."}],handler:async({client:t,args:e,reqOpts:r,emit:i,emitDryRunPreview:n})=>{let o=_O({meters:e.meters,meter:e.meter}),a=e.docs===!0?!0:e.docs===!1?!1:void 0,c={name:e.name,...typeof e.origin=="string"?{origin:e.origin}:{},description:e.description,displayName:e.displayName,meters:o,...a!==void 0?{docsEnabled:a}:{}},{result:l,recoveredFromTimeout:d}=await CO({client:t,body:c,reqOpts:r});n(l)||i({result:wO(l),...d?{recoveredFromTimeout:!0}:{}},`Business created: ${e.name}`)}},mcp:null},{opKey:"business.origin.update",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:"business",command:"update",summary:"Update business presentation metadata and per-env origin",args:[{field:"businessId",kind:"positional",token:Me,resolveBusiness:!0},{field:"displayName",kind:"flag",token:"--display-name <displayName>"},{field:"description",kind:"flag",token:"--description <description>"},{field:"iconUrl",kind:"flag",token:"--icon-url <url>",describe:"Set the square icon/favicon URL"},{field:"iconFile",kind:"flag",token:"--icon-file <path>",describe:"Upload a local PNG, JPEG, or WEBP square icon"},{field:"clearIcon",kind:"flag",token:"--clear-icon",describe:"Remove the current icon asset"},{field:"logoUrl",kind:"flag",token:"--logo-url <url>",describe:"Set the wordmark/logo URL"},{field:"logoFile",kind:"flag",token:"--logo-file <path>",describe:"Upload a local PNG, JPEG, or WEBP wordmark/logo"},{field:"clearLogo",kind:"flag",token:"--clear-logo",describe:"Remove the current logo asset"},{field:"keyPrefix",kind:"flag",token:"--key-prefix <prefix>",describe:"White-label prefix for subscriber API keys (fsk_ \u2192 e.g. acme_). 2-12 lowercase letters/digits; fs/fsk/fsc/fsm reserved."},{field:"clearKeyPrefix",kind:"flag",token:"--clear-key-prefix",describe:"Reset the subscriber API key prefix to the default (fsk)."},{field:"docsHistory",kind:"flag",token:"--docs-history",describe:"Expose EVERY historical docs release to subscribers, not just the latest. Off by default \u2014 every release is still published and retained either way, so this only changes what the docs site SHOWS. Use --no-docs-history to go back to latest-only."},{field:"origin",kind:"flag",token:"--origin <url>",describe:"Set the business upstream origin (the URL the gateway proxies to). With --env, sets that environment's override."},{field:"sandboxOrigin",kind:"flag",token:"--sandbox-origin <url>",describe:"Set the sandbox upstream origin. With --env, env-scoped."},{field:"allowedOrigins",kind:"flag",token:"--allowed-origins <origins>",describe:"Comma-separated browser origins allowed to call the gateway cross-origin (custom frontend domains), e.g. https://app.example.com. The tenant's own portal origin is always allowed."},{field:"clearAllowedOrigins",kind:"flag",token:"--clear-allowed-origins",describe:"Remove all custom allowed origins."},{field:"env",kind:"flag",token:"--env <env>",describe:"Environment scope"}],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId;D_(e,"icon"),D_(e,"logo");let n={};e.docsHistory===!0&&(n.docsHistoryEnabled=!0),e.docsHistory===!1&&(n.docsHistoryEnabled=!1),e.displayName!==void 0&&(n.displayName=e.displayName),e.description!==void 0&&(n.description=e.description),e.iconUrl!==void 0&&(n.iconUrl=e.iconUrl),e.logoUrl!==void 0&&(n.logoUrl=e.logoUrl),e.clearKeyPrefix===!0?n.keyPrefix=null:e.keyPrefix!==void 0&&(n.keyPrefix=e.keyPrefix),e.origin!==void 0&&(n.origin=e.origin),e.sandboxOrigin!==void 0&&(n.sandboxOrigin=e.sandboxOrigin),e.clearAllowedOrigins===!0?n.allowedOrigins=[]:typeof e.allowedOrigins=="string"&&(n.allowedOrigins=e.allowedOrigins.split(",").map(l=>l.trim()).filter(Boolean));let o=[];if(typeof e.iconFile=="string"&&o.push(()=>U_(t,i,"icon",e.iconFile)),typeof e.logoFile=="string"&&o.push(()=>U_(t,i,"logo",e.logoFile)),e.clearIcon===!0&&o.push(()=>t.deleteBrandAsset(i,"icon")),e.clearLogo===!0&&o.push(()=>t.deleteBrandAsset(i,"logo")),Object.keys(n).length===0&&o.length===0)throw new b("No fields to update. Pass presentation metadata flags such as --display-name, --description, --origin, --icon-file, --logo-file, --docs-history, or a clear flag.",void 0,{code:"BUSINESS_UPDATE_NO_FIELDS"});let a=Object.keys(n).length>0?await t.updateBusiness(i,n,{env:e.env}):await t.getBusiness(i,{env:e.env}),c=await Promise.all(o.map(l=>l()));r({business:a,assets:c},`Business ${i} updated`)}},mcp:{tool:"fs_brand_update",title:"Update business brand",description:"Update a business's brand/presentation and upstream origin \u2014 display name, description, icon, logo (wordmark), origin (the URL the gateway proxies to), sandboxOrigin. Pass env to write an environment-scoped origin override instead of the business default. Plans, pricing, and routes are managed as code in the business repo and are NOT editable here. Only the fields you pass are changed.",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!1,openWorldHint:!1},inputSchema:{businessId:s.string().describe("The business id or slug to update."),displayName:s.string().optional().describe("Display name."),description:s.string().optional().describe("Short business description."),iconUrl:s.string().nullable().optional().describe("Square icon/favicon URL, or null to clear it."),logoUrl:s.string().nullable().optional().describe("Wordmark/logo URL, or null to clear it."),keyPrefix:s.string().nullable().optional().describe("White-label prefix for subscriber API keys (fsk_ \u2192 e.g. acme_). 2-12 lowercase letters/digits; fs/fsk/fsc/fsm reserved. Null clears to the default fsk."),origin:s.string().optional().describe("Business upstream origin (the URL the gateway proxies to)."),sandboxOrigin:s.string().optional().describe("Sandbox upstream origin."),env:s.string().optional().describe("Environment scope \u2014 when set, the origin override is written to that environment instead of the business default.")},handler:async(t,e)=>{let r=await A(t,e.businessId),i={};return e.displayName!==void 0&&(i.displayName=e.displayName),e.description!==void 0&&(i.description=e.description),e.iconUrl!==void 0&&(i.iconUrl=e.iconUrl),e.logoUrl!==void 0&&(i.logoUrl=e.logoUrl),e.keyPrefix!==void 0&&(i.keyPrefix=e.keyPrefix),e.origin!==void 0&&(i.origin=e.origin),e.sandboxOrigin!==void 0&&(i.sandboxOrigin=e.sandboxOrigin),e.clearAllowedOrigins===!0?i.allowedOrigins=[]:typeof e.allowedOrigins=="string"&&(i.allowedOrigins=e.allowedOrigins.split(",").map(n=>n.trim()).filter(Boolean)),t.updateBusiness(r,i,{env:e.env})}}},{opKey:"business.publish",operationClass:"dual",scope:["businesses:publish"],sideEffect:"write",cli:{group:"business",command:"publish",summary:"Publish a draft business (make it live) and cut a versioned release with an auto-computed semver. Requires at least one plan, an origin, and a verified Stripe connection.",idempotent:!0,args:[{field:"businessId",kind:"positional",token:Me,resolveBusiness:!0},{field:"bump",kind:"flag",token:"--bump <bump>",describe:"Force the semver bump (major|minor|patch). Omit to auto-derive from the change."},{field:"version",kind:"flag",token:"--version <version>",describe:"Pin the exact next release tag (vX.Y.Z), skipping derivation."},{field:"acceptBreaking",kind:"flag",token:"--accept-breaking",describe:"Consent to publish a breaking (blocking-risk) change as a major release."}],helpTextAfter:`
101
102
  Publish auto-derives the semver bump from the change and cuts a vX.Y.Z release.
102
103
  Use --dry-run to preview the computed bump + reasons without cutting a tag.
103
- A blocking-risk (breaking) change is refused unless --accept-breaking is passed.`,handler:async({client:t,args:e,opts:r,reqOpts:i,emit:n,emitDryRunPreview:o})=>{let a=e.businessId,c=Fv(r);if(i.dryRun){let d=await t.publishBusiness(a,c,i);if(o(d))return}if(kn()&&r.input!==!1){let u=(await t.publishBusiness(a,c,{...i,dryRun:!0,idempotencyKey:void 0})).wouldHave?._release;if(u){Gm(`Publishing ${a}: ${u.computedBump} \u2192 ${u.version}`+(u.previousVersion?` (from ${u.previousVersion})`:" (first release)"));for(let m of u.reasons)G(` \u2022 ${m}`);if(!await Gw(u.version)){n({cancelled:!0},"Publish cancelled.");return}}}let l=await t.publishBusiness(a,c,i);n({business:l,_release:l._release??null},`Business ${a} published`)}},mcp:{tool:"fs_business_publish",title:"Publish a business",description:"Publish a business \u2014 deploy its current spec live and cut a versioned release with an auto-computed semver. Equivalent to a repo-driven deploy (operationClass=dual); both reconcile to the same published state.",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe("The business id to publish."),bump:s.enum(["major","minor","patch"]).optional().describe("Force the semver bump. Omit to auto-derive from the change."),version:s.string().optional().describe("Pin the exact next release tag (vX.Y.Z)."),acceptBreaking:s.boolean().optional().describe("Consent to publish a breaking (blocking-risk) change as major."),dryRun:s.boolean().optional().describe("Preview the change (computed semver + reasons) without cutting a release."),...Y},handler:async(t,e)=>{let r=Fv({bump:e.bump,version:e.version,acceptBreaking:e.acceptBreaking});return t.publishBusiness(e.businessId,r,{idempotencyKey:e.idempotencyKey,dryRun:e.dryRun})}}},{opKey:"business.delete",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:"business",command:"delete",summary:"Permanently delete a business. Requires --yes.",destructive:!0,yesMessage:"Pass --yes to confirm business deletion.",args:[{field:"businessId",kind:"positional",token:Ne,resolveBusiness:!0},{field:"deleteGithubRepo",kind:"flag",token:"--delete-github-repo",describe:"Also delete the connected GitHub repository. Requires the same builder-session authorization as dashboard deletion."}],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId;try{await t.deleteBusiness(i,{deleteGitHubRepo:e.deleteGithubRepo===!0})}catch(n){throw n instanceof b&&(n.status===403||n.code==="FORBIDDEN")?new b("Deleting a whole business requires a builder/browser session \u2014 open the business in the dashboard to delete it. (Preview environments CAN be deleted via the CLI: `farthershore env delete`.)",n.status,{code:n.code??"FORBIDDEN"}):n}r({deleted:i},`Business ${i} deleted`)}},mcp:null},{opKey:"business.preview_env.set",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:"business preview-env",command:"set",summary:"Configure automatic preview-environment creation for a business.",args:[{field:"businessId",kind:"positional",token:Ne,resolveBusiness:!0},{field:"trigger",kind:"flag",token:"--trigger <branch-prefix|pull-request|disabled>",describe:"Auto-create previews from env branch prefixes, pull requests, or disable automatic creation."},{field:"branchPrefix",kind:"flag",token:"--branch-prefix <prefix>",describe:"Set the env branch prefix used by --trigger branch-prefix (1-50 characters)."},{field:"clearBranchPrefix",kind:"flag",token:"--clear-branch-prefix",describe:"Reset the env branch prefix to the platform default (env/)."}],handler:async({client:t,args:e,emit:r})=>{if(e.branchPrefix!==void 0&&e.clearBranchPrefix===!0)throw new b("Pass either --branch-prefix or --clear-branch-prefix, not both.",void 0,{code:"CONFLICTING_BRANCH_PREFIX_FLAGS"});let i=e.businessId,n=a$(e),o=await t.updateBusiness(i,n,{});r({business:o},`Preview environment policy updated for ${i}`)}},mcp:{tool:"fs_business_preview_env_set",title:"Set business preview environment policy",description:"Configure automatic preview environment creation for a business. Modes: BRANCH_PREFIX creates previews from matching env branches, PULL_REQUEST creates previews for PRs against the default branch, and DISABLED stops automatic creation while explicit `farthershore env create` continues to work. Pass envBranchPrefix to customize the branch-prefix mode, or null to reset to env/.",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!1,openWorldHint:!1},inputSchema:{businessId:s.string().describe("The business id or slug to update."),previewEnvTrigger:s.enum(Ad).optional().describe("Automatic preview mode: BRANCH_PREFIX, PULL_REQUEST, or DISABLED."),envBranchPrefix:s.string().min(1).max(50).nullable().optional().describe("Branch prefix for BRANCH_PREFIX mode, or null for env/.")},handler:async(t,e)=>{let r=await A(t,e.businessId),i={};if(e.previewEnvTrigger!==void 0&&(i.previewEnvTrigger=e.previewEnvTrigger),e.envBranchPrefix!==void 0&&(i.envBranchPrefix=e.envBranchPrefix),i.previewEnvTrigger===void 0&&i.envBranchPrefix===void 0)throw new b("Pass previewEnvTrigger, envBranchPrefix, or both.",void 0,{code:"MISSING_PREVIEW_ENV_UPDATE"});return t.updateBusiness(r,i,{})}}},{opKey:"business.docs.enable",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:"business docs",command:"enable",summary:"Enable docs for a business (publish/serve docs scaffold).",args:[{field:"businessId",kind:"positional",token:Ne,resolveBusiness:!0}],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=await t.updateBusiness(i,{docsEnabled:!0},{});r({business:n},`Docs enabled for ${i}`)}},mcp:{tool:"fs_business_docs_enable",title:"Enable business docs",description:"Enable docs for a business \u2014 opens the publish/sync gate so docs are served from R2 and `boot.docsEnabled=true` is emitted to the portal. Idempotent if docs are already enabled.",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe("The business id or slug to enable docs on.")},handler:async(t,e)=>{let r=await A(t,e.businessId);return t.updateBusiness(r,{docsEnabled:!0},{})}}},{opKey:"business.docs.disable",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:"business docs",command:"disable",summary:"Disable docs for a business (stop publishing/serving docs; scaffold kept in the repo).",args:[{field:"businessId",kind:"positional",token:Ne,resolveBusiness:!0}],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=await t.updateBusiness(i,{docsEnabled:!1},{});r({business:n},`Docs disabled for ${i}`)}},mcp:{tool:"fs_business_docs_disable",title:"Disable business docs",description:"Disable docs for a business \u2014 closes the publish/sync gate so docs are no longer served and `boot.docsEnabled=false` is emitted to the portal. The docs scaffold stays in the repo; re-enabling is a pure flag flip. Idempotent if docs are already disabled.",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe("The business id or slug to disable docs on.")},handler:async(t,e)=>{let r=await A(t,e.businessId);return t.updateBusiness(r,{docsEnabled:!1},{})}}}];function Vv(t,e){N(t,e,dp)}function d$(t){if(!t||typeof t!="object")return[];let e=t;return Array.isArray(e.data)?e.data:Array.isArray(e.environments)?e.environments:[]}var pp=[{opKey:"environment.read",operationClass:"dual",scope:["businesses:read"],sideEffect:"read",cli:{group:"env",command:"list",summary:"List environments for a business",args:[{field:"businessId",kind:"positional",token:"<businessIdOrName>",resolveBusiness:!0}],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=d$(await t.listEnvironments(i));r({businessId:i,count:n.length,environments:n.map(o=>({id:o.id,name:o.name,branch:o.branch??null,portalHostname:o.portalHostname??null,runtimeHostname:o.runtimeHostname??null,status:o.status??null}))},`${n.length} environment(s)`)}},mcp:{tool:"fs_env_list",title:"List environments",description:"List a business's preview environments (name, branch, hostnames). Read-only.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe("The business id whose environments to list.")},handler:async(t,{businessId:e})=>t.listEnvironments(e)}},{opKey:"environment.create",operationClass:"dual",scope:["businesses:update"],sideEffect:"write",cli:{group:"env",command:"create",summary:"Create a preview environment bound to a git branch",idempotent:!0,args:[{field:"businessId",kind:"positional",token:"<businessIdOrName>",resolveBusiness:!0},{field:"name",kind:"flag",token:"--name <name>",describe:"Environment name (e.g. preview, staging)",required:!0},{field:"branch",kind:"flag",token:"--branch <branch>",describe:"Git branch to track (e.g. env/preview)",required:!0}],handler:async({client:t,args:e,reqOpts:r,emit:i,emitDryRunPreview:n})=>{let o=e.businessId,a=await t.createEnvironment(o,{name:e.name,branch:e.branch},r);n(a)||i({businessId:o,environment:a},`Environment ${e.name} created`)}},mcp:{tool:"fs_env_create",title:"Create preview environment",description:"Create a preview environment bound to a git branch. Equivalent to pushing the branch \u2014 both reconcile to the same environment (operationClass=dual). Provide a name and the git branch it tracks.",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!1,openWorldHint:!1},inputSchema:{businessId:s.string().describe("The business id to create the environment in."),name:s.string().describe("Environment name (e.g. 'staging', 'preview-pr-42')."),branch:s.string().describe("The git branch this environment tracks."),...Y},handler:async(t,e)=>{let r=await t.createEnvironment(e.businessId,{name:e.name,branch:e.branch},{idempotencyKey:e.idempotencyKey});return{ok:!0,businessId:e.businessId,environment:r}}}},{opKey:"environment.delete",operationClass:"dual",scope:["businesses:update"],sideEffect:"write",cli:{group:"env",command:"delete",summary:"Delete an environment by name. Requires --yes.",destructive:!0,yesMessage:"Pass --yes to confirm environment deletion.",args:[{field:"businessId",kind:"positional",token:"<businessIdOrName>",resolveBusiness:!0},{field:"envName",kind:"positional",token:"<envName>"}],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=e.envName;await t.deleteEnvironment(i,n),r({businessId:i,deleted:n},`Environment ${n} deleted`)}},mcp:null}];function Zv(t,e){N(t,e,pp)}var xe=["free","starter","pro","prepaid","metered"],p$={kind:"free",label:"Free",description:"No recurring fee and no metered usage. Pure freemium tier.",pricing:{meters:[],recurring_fee_cents:0,billing_interval:"month",grants:[],trial_days:0}},m$={kind:"starter",label:"Starter \u2014 $20/mo + $20 included",description:"$20/month subscription with $20 of usage credit each period. Stripe-style minimum-spend; overage billed at $0.001/request by default.",pricing:{meters:[{dimension:"requests",kind:"linear",price_per_unit_micros:1e3}],recurring_fee_cents:2e3,billing_interval:"month",grants:[{kind:"credit",amount_cents:2e3,recurs:!0}],trial_days:0}},f$={kind:"pro",label:"Pro \u2014 $100/mo + $200 included",description:"$100/month subscription with $200 of usage credit each period and a 14-day trial. Overage billed at $0.0005/request by default.",pricing:{meters:[{dimension:"requests",kind:"linear",price_per_unit_micros:500}],recurring_fee_cents:1e4,billing_interval:"month",grants:[{kind:"credit",amount_cents:2e4,recurs:!0}],trial_days:14}},g$={kind:"prepaid",label:"Prepaid \u2014 $50 sign-up credit, then PAYG",description:"$50 one-time credit at signup. Once depleted the subscriber pays-as-they-go at $0.001/request by default.",pricing:{meters:[{dimension:"requests",kind:"linear",price_per_unit_micros:1e3}],recurring_fee_cents:0,billing_interval:"month",grants:[{kind:"credit",amount_cents:5e3,recurs:!1}],trial_days:0}},h$={kind:"metered",label:"Metered (pay-as-you-go)",description:"No subscription fee. Pure usage billing at $0.001/request by default.",pricing:{meters:[{dimension:"requests",kind:"linear",price_per_unit_micros:1e3}],recurring_fee_cents:0,billing_interval:"month",grants:[],trial_days:0}},Kv=Object.freeze({free:p$,starter:m$,pro:f$,prepaid:g$,metered:h$});function Ro(t){return Kv[t]}function mp(){return xe.map(t=>Kv[t])}var M1=s.object({recurring_fee_cents:s.number().int().nonnegative().optional(),grants:s.array(Ke).max(40).optional(),creditPolicy:Ge.optional(),min_monthly_spend_cents:s.number().int().nonnegative().optional(),max_monthly_spend_cents:s.number().int().nonnegative().optional(),meters:s.array(We).optional(),notes:s.string().max(2e3).optional()});var Ao=["next_renewal","immediate","by_date","opt_in"];function b$(t){if(!t||typeof t!="object")return[];let e=t;return Array.isArray(e.data)?e.data:Array.isArray(e.plans)?e.plans:Array.isArray(t)?t:[]}function v$(t){if(t.length===0)return"(no plans)";let e=["KEY","NAME","FREE","FEE\xA2","RECURRING\xA2","ONE_TIME\xA2","TRIAL_D","MAX_SPEND\xA2","STATUS"],r=c=>c===null?"\u2014":c.toLocaleString("en-US"),i=t.map(c=>[c.key,c.name,c.free?"Y":"N",r(c.recurring_fee_cents),r(c.recurring_grant_cents),r(c.one_time_grant_cents),r(c.trial_days),r(c.max_monthly_spend_cents),c.status]),n=e.map((c,l)=>Math.max(c.length,...i.map(d=>d[l]?.length??0))),o=c=>c.map((l,d)=>l.padEnd(n[d]??l.length)).join(" "),a=n.map(c=>"-".repeat(c)).join(" ");return[o(e),a,...i.map(o)].join(`
104
- `)}var Gv=[{opKey:"plan.read",operationClass:"contract",scope:["businesses:read"],sideEffect:"read",cli:{group:"plan",command:"list",summary:"List plans for a business",args:[{field:"businessId",kind:"positional",token:"<businessIdOrName>",resolveBusiness:!0}],helpTextAfter:`
104
+ A blocking-risk (breaking) change is refused unless --accept-breaking is passed.`,handler:async({client:t,args:e,opts:r,reqOpts:i,emit:n,emitDryRunPreview:o})=>{let a=e.businessId,c=N_(r);if(i.dryRun){let d=await t.publishBusiness(a,c,i);if(o(d))return}if(Un()&&r.input!==!1){let u=(await t.publishBusiness(a,c,{...i,dryRun:!0,idempotencyKey:void 0})).wouldHave?._release;if(u){Af(`Publishing ${a}: ${u.computedBump} \u2192 ${u.version}`+(u.previousVersion?` (from ${u.previousVersion})`:" (first release)"));for(let m of u.reasons)J(` \u2022 ${m}`);if(!await hO(u.version)){n({cancelled:!0},"Publish cancelled.");return}}}let l=await t.publishBusiness(a,c,i);n({business:l,_release:l._release??null},`Business ${a} published`)}},mcp:{tool:"fs_business_publish",title:"Publish a business",description:"Publish a business \u2014 deploy its current spec live and cut a versioned release with an auto-computed semver. Equivalent to a repo-driven deploy (operationClass=dual); both reconcile to the same published state.",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe("The business id to publish."),bump:s.enum(["major","minor","patch"]).optional().describe("Force the semver bump. Omit to auto-derive from the change."),version:s.string().optional().describe("Pin the exact next release tag (vX.Y.Z)."),acceptBreaking:s.boolean().optional().describe("Consent to publish a breaking (blocking-risk) change as major."),dryRun:s.boolean().optional().describe("Preview the change (computed semver + reasons) without cutting a release."),...Q},handler:async(t,e)=>{let r=N_({bump:e.bump,version:e.version,acceptBreaking:e.acceptBreaking});return t.publishBusiness(e.businessId,r,{idempotencyKey:e.idempotencyKey,dryRun:e.dryRun})}}},{opKey:"business.delete",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:"business",command:"delete",summary:"Permanently delete a business. Requires --yes.",destructive:!0,yesMessage:"Pass --yes to confirm business deletion.",args:[{field:"businessId",kind:"positional",token:Me,resolveBusiness:!0},{field:"deleteGithubRepo",kind:"flag",token:"--delete-github-repo",describe:"Also delete the connected GitHub repository. Requires the same builder-session authorization as dashboard deletion."}],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId;try{await t.deleteBusiness(i,{deleteGitHubRepo:e.deleteGithubRepo===!0})}catch(n){throw n instanceof b&&(n.status===403||n.code==="FORBIDDEN")?new b("Deleting a whole business requires a builder/browser session \u2014 open the business in the dashboard to delete it. (Preview environments CAN be deleted via the CLI: `farthershore env delete`.)",n.status,{code:n.code??"FORBIDDEN"}):n}r({deleted:i},`Business ${i} deleted`)}},mcp:null},{opKey:"business.preview_env.set",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:"business preview-env",command:"set",summary:"Configure automatic preview-environment creation for a business.",args:[{field:"businessId",kind:"positional",token:Me,resolveBusiness:!0},{field:"trigger",kind:"flag",token:"--trigger <branch-prefix|pull-request|disabled>",describe:"Auto-create previews from env branch prefixes, pull requests, or disable automatic creation."},{field:"branchPrefix",kind:"flag",token:"--branch-prefix <prefix>",describe:"Set the env branch prefix used by --trigger branch-prefix (1-50 characters)."},{field:"clearBranchPrefix",kind:"flag",token:"--clear-branch-prefix",describe:"Reset the env branch prefix to the platform default (env/)."}],handler:async({client:t,args:e,emit:r})=>{if(e.branchPrefix!==void 0&&e.clearBranchPrefix===!0)throw new b("Pass either --branch-prefix or --clear-branch-prefix, not both.",void 0,{code:"CONFLICTING_BRANCH_PREFIX_FLAGS"});let i=e.businessId,n=AO(e),o=await t.updateBusiness(i,n,{});r({business:o},`Preview environment policy updated for ${i}`)}},mcp:{tool:"fs_business_preview_env_set",title:"Set business preview environment policy",description:"Configure automatic preview environment creation for a business. Modes: BRANCH_PREFIX creates previews from matching env branches, PULL_REQUEST creates previews for PRs against the default branch, and DISABLED stops automatic creation while explicit `farthershore env create` continues to work. Pass envBranchPrefix to customize the branch-prefix mode, or null to reset to env/.",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!1,openWorldHint:!1},inputSchema:{businessId:s.string().describe("The business id or slug to update."),previewEnvTrigger:s.enum(cp).optional().describe("Automatic preview mode: BRANCH_PREFIX, PULL_REQUEST, or DISABLED."),envBranchPrefix:s.string().min(1).max(50).nullable().optional().describe("Branch prefix for BRANCH_PREFIX mode, or null for env/.")},handler:async(t,e)=>{let r=await A(t,e.businessId),i={};if(e.previewEnvTrigger!==void 0&&(i.previewEnvTrigger=e.previewEnvTrigger),e.envBranchPrefix!==void 0&&(i.envBranchPrefix=e.envBranchPrefix),i.previewEnvTrigger===void 0&&i.envBranchPrefix===void 0)throw new b("Pass previewEnvTrigger, envBranchPrefix, or both.",void 0,{code:"MISSING_PREVIEW_ENV_UPDATE"});return t.updateBusiness(r,i,{})}}},{opKey:"business.docs.enable",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:"business docs",command:"enable",summary:"Enable docs for a business (publish/serve docs scaffold).",args:[{field:"businessId",kind:"positional",token:Me,resolveBusiness:!0}],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=await t.updateBusiness(i,{docsEnabled:!0},{});r({business:n},`Docs enabled for ${i}`)}},mcp:{tool:"fs_business_docs_enable",title:"Enable business docs",description:"Enable docs for a business \u2014 opens the publish/sync gate so docs are served from R2 and `boot.docsEnabled=true` is emitted to the portal. Idempotent if docs are already enabled.",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe("The business id or slug to enable docs on.")},handler:async(t,e)=>{let r=await A(t,e.businessId);return t.updateBusiness(r,{docsEnabled:!0},{})}}},{opKey:"business.docs.disable",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:"business docs",command:"disable",summary:"Disable docs for a business (stop publishing/serving docs; scaffold kept in the repo).",args:[{field:"businessId",kind:"positional",token:Me,resolveBusiness:!0}],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=await t.updateBusiness(i,{docsEnabled:!1},{});r({business:n},`Docs disabled for ${i}`)}},mcp:{tool:"fs_business_docs_disable",title:"Disable business docs",description:"Disable docs for a business \u2014 closes the publish/sync gate so docs are no longer served and `boot.docsEnabled=false` is emitted to the portal. The docs scaffold stays in the repo; re-enabling is a pure flag flip. Idempotent if docs are already disabled.",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe("The business id or slug to disable docs on.")},handler:async(t,e)=>{let r=await A(t,e.businessId);return t.updateBusiness(r,{docsEnabled:!1},{})}}}];function z_(t,e){C(t,e,Zp)}function PO(t){if(!t||typeof t!="object")return[];let e=t;return Array.isArray(e.data)?e.data:Array.isArray(e.environments)?e.environments:[]}var Wp=[{opKey:"environment.read",operationClass:"dual",scope:["businesses:read"],sideEffect:"read",cli:{group:"env",command:"list",summary:"List environments for a business",args:[{field:"businessId",kind:"positional",token:"<businessIdOrName>",resolveBusiness:!0}],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=PO(await t.listEnvironments(i));r({businessId:i,count:n.length,environments:n.map(o=>({id:o.id,name:o.name,branch:o.branch??null,portalHostname:o.portalHostname??null,runtimeHostname:o.runtimeHostname??null,status:o.status??null}))},`${n.length} environment(s)`)}},mcp:{tool:"fs_env_list",title:"List environments",description:"List a business's preview environments (name, branch, hostnames). Read-only.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe("The business id whose environments to list.")},handler:async(t,{businessId:e})=>t.listEnvironments(e)}},{opKey:"environment.create",operationClass:"dual",scope:["businesses:update"],sideEffect:"write",cli:{group:"env",command:"create",summary:"Create a preview environment bound to a git branch",idempotent:!0,args:[{field:"businessId",kind:"positional",token:"<businessIdOrName>",resolveBusiness:!0},{field:"name",kind:"flag",token:"--name <name>",describe:"Environment name (e.g. preview, staging)",required:!0},{field:"branch",kind:"flag",token:"--branch <branch>",describe:"Git branch to track (e.g. env/preview)",required:!0}],handler:async({client:t,args:e,reqOpts:r,emit:i,emitDryRunPreview:n})=>{let o=e.businessId,a=await t.createEnvironment(o,{name:e.name,branch:e.branch},r);n(a)||i({businessId:o,environment:a},`Environment ${e.name} created`)}},mcp:{tool:"fs_env_create",title:"Create preview environment",description:"Create a preview environment bound to a git branch. Equivalent to pushing the branch \u2014 both reconcile to the same environment (operationClass=dual). Provide a name and the git branch it tracks.",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!1,openWorldHint:!1},inputSchema:{businessId:s.string().describe("The business id to create the environment in."),name:s.string().describe("Environment name (e.g. 'staging', 'preview-pr-42')."),branch:s.string().describe("The git branch this environment tracks."),...Q},handler:async(t,e)=>{let r=await t.createEnvironment(e.businessId,{name:e.name,branch:e.branch},{idempotencyKey:e.idempotencyKey});return{ok:!0,businessId:e.businessId,environment:r}}}},{opKey:"environment.delete",operationClass:"dual",scope:["businesses:update"],sideEffect:"write",cli:{group:"env",command:"delete",summary:"Delete an environment by name. Requires --yes.",destructive:!0,yesMessage:"Pass --yes to confirm environment deletion.",args:[{field:"businessId",kind:"positional",token:"<businessIdOrName>",resolveBusiness:!0},{field:"envName",kind:"positional",token:"<envName>"}],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=e.envName;await t.deleteEnvironment(i,n),r({businessId:i,deleted:n},`Environment ${n} deleted`)}},mcp:null}];function j_(t,e){C(t,e,Wp)}var Ee=["free","starter","pro","prepaid","metered"],NO={kind:"free",label:"Free",description:"No recurring fee and no metered usage. Pure freemium tier.",pricing:{meters:[],recurring_fee_cents:0,billing_interval:"month",grants:[],trial_days:0}},DO={kind:"starter",label:"Starter \u2014 $20/mo + $20 included",description:"$20/month subscription with $20 of usage credit each period. Stripe-style minimum-spend; overage billed at $0.001/request by default.",pricing:{meters:[{dimension:"requests",kind:"linear",price_per_unit_micros:1e3}],recurring_fee_cents:2e3,billing_interval:"month",grants:[{kind:"credit",amount_cents:2e3,recurs:!0}],trial_days:0}},UO={kind:"pro",label:"Pro \u2014 $100/mo + $200 included",description:"$100/month subscription with $200 of usage credit each period and a 14-day trial. Overage billed at $0.0005/request by default.",pricing:{meters:[{dimension:"requests",kind:"linear",price_per_unit_micros:500}],recurring_fee_cents:1e4,billing_interval:"month",grants:[{kind:"credit",amount_cents:2e4,recurs:!0}],trial_days:14}},zO={kind:"prepaid",label:"Prepaid \u2014 $50 sign-up credit, then PAYG",description:"$50 one-time credit at signup. Once depleted the subscriber pays-as-they-go at $0.001/request by default.",pricing:{meters:[{dimension:"requests",kind:"linear",price_per_unit_micros:1e3}],recurring_fee_cents:0,billing_interval:"month",grants:[{kind:"credit",amount_cents:5e3,recurs:!1}],trial_days:0}},jO={kind:"metered",label:"Metered (pay-as-you-go)",description:"No subscription fee. Pure usage billing at $0.001/request by default.",pricing:{meters:[{dimension:"requests",kind:"linear",price_per_unit_micros:1e3}],recurring_fee_cents:0,billing_interval:"month",grants:[],trial_days:0}},L_=Object.freeze({free:NO,starter:DO,pro:UO,prepaid:zO,metered:jO});function Jo(t){return L_[t]}function qp(){return Ee.map(t=>L_[t])}var j4=s.object({recurring_fee_cents:s.number().int().nonnegative().optional(),grants:s.array(Xe).max(40).optional(),creditPolicy:Qe.optional(),min_monthly_spend_cents:s.number().int().nonnegative().optional(),max_monthly_spend_cents:s.number().int().nonnegative().optional(),meters:s.array(et).optional(),notes:s.string().max(2e3).optional()});var Yo=["next_renewal","immediate","by_date","opt_in"];function LO(t){if(!t||typeof t!="object")return[];let e=t;return Array.isArray(e.data)?e.data:Array.isArray(e.plans)?e.plans:Array.isArray(t)?t:[]}function MO(t){if(t.length===0)return"(no plans)";let e=["KEY","NAME","FREE","FEE\xA2","RECURRING\xA2","ONE_TIME\xA2","TRIAL_D","MAX_SPEND\xA2","STATUS"],r=c=>c===null?"\u2014":c.toLocaleString("en-US"),i=t.map(c=>[c.key,c.name,c.free?"Y":"N",r(c.recurring_fee_cents),r(c.recurring_grant_cents),r(c.one_time_grant_cents),r(c.trial_days),r(c.max_monthly_spend_cents),c.status]),n=e.map((c,l)=>Math.max(c.length,...i.map(d=>d[l]?.length??0))),o=c=>c.map((l,d)=>l.padEnd(n[d]??l.length)).join(" "),a=n.map(c=>"-".repeat(c)).join(" ");return[o(e),a,...i.map(o)].join(`
105
+ `)}var M_=[{opKey:"plan.read",operationClass:"contract",scope:["businesses:read"],sideEffect:"read",cli:{group:"plan",command:"list",summary:"List plans for a business",args:[{field:"businessId",kind:"positional",token:"<businessIdOrName>",resolveBusiness:!0}],helpTextAfter:`
105
106
  Output:
106
107
  --format json \u2014 stable agent-friendly JSON envelope (default for non-TTY)
107
108
  --format table \u2014 human-readable summary table (default for TTY)
108
- `,handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,o=b$(await t.managementListPlans(i)).map(a=>({id:a.id,key:a.planKey??a.key??"",name:a.name??"",version:a.version??null,free:a.free??!1,recurring_fee_cents:a.recurring_fee_cents??0,grants:a.grants??[],recurring_grant_cents:rr({grants:a.grants}),one_time_grant_cents:qt({grants:a.grants}),trial_days:a.trial_days??0,max_monthly_spend_cents:a.max_monthly_spend_cents??null,status:a.status??(a.isActive===!1?"INACTIVE":"ACTIVE")}));r({businessId:i,count:o.length,plans:o},`${o.length} plan(s) for business ${i}`),te()!=="json"&&console.log(v$(o))}},mcp:{tool:"fs_plan_list",title:"List plans",description:"List a business's pricing plans (read-only). Plans are managed as code in the business's GitHub repo \u2014 to add/change/remove a plan, edit business/ and push; this tool only reads the current state. Pass the business id from fs_business_list.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe("The business id whose plans to list.")},handler:async(t,{businessId:e})=>t.managementListPlans(e)}},{opKey:"plan.migration_batch.create",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:"plan",command:"migrate",summary:"Migrate subscribers between plan versions under a policy (owner-only)",idempotent:!0,args:[{field:"businessId",kind:"positional",token:"<businessIdOrName>",resolveBusiness:!0},{field:"planKey",kind:"positional",token:"<planKey>"},{field:"from",kind:"flag",token:"--from <version>",describe:"Source plan version to migrate FROM: an integer (e.g. 1) or head/latest.",required:!0},{field:"to",kind:"flag",token:"--to <version>",describe:"Target plan version to migrate TO: an integer (e.g. 2) or head/latest.",required:!0},{field:"policy",kind:"flag",token:"--policy <policy>",describe:`Migration policy: ${Ao.join(" | ")}.`,required:!0},{field:"proration",kind:"flag",token:"--proration <proration>",describe:"Optional proration: none | prorate | credit."},{field:"completeBy",kind:"flag",token:"--complete-by <iso8601>",describe:"Deadline (ISO 8601) \u2014 required by the by_date policy."}],helpTextAfter:`
109
+ `,handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,o=LO(await t.managementListPlans(i)).map(a=>({id:a.id,key:a.planKey??a.key??"",name:a.name??"",version:a.version??null,free:a.free??!1,recurring_fee_cents:a.recurring_fee_cents??0,grants:a.grants??[],recurring_grant_cents:vr({grants:a.grants}),one_time_grant_cents:cn({grants:a.grants}),trial_days:a.trial_days??0,max_monthly_spend_cents:a.max_monthly_spend_cents??null,status:a.status??(a.isActive===!1?"INACTIVE":"ACTIVE")}));r({businessId:i,count:o.length,plans:o},`${o.length} plan(s) for business ${i}`),te()!=="json"&&console.log(MO(o))}},mcp:{tool:"fs_plan_list",title:"List plans",description:"List a business's pricing plans (read-only). Plans are managed as code in the business's GitHub repo \u2014 to add/change/remove a plan, edit business/ and push; this tool only reads the current state. Pass the business id from fs_business_list.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe("The business id whose plans to list.")},handler:async(t,{businessId:e})=>t.managementListPlans(e)}},{opKey:"plan.migration_batch.create",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:"plan",command:"migrate",summary:"Migrate subscribers between plan versions under a policy (owner-only)",idempotent:!0,args:[{field:"businessId",kind:"positional",token:"<businessIdOrName>",resolveBusiness:!0},{field:"planKey",kind:"positional",token:"<planKey>"},{field:"from",kind:"flag",token:"--from <version>",describe:"Source plan version to migrate FROM: an integer (e.g. 1) or head/latest.",required:!0},{field:"to",kind:"flag",token:"--to <version>",describe:"Target plan version to migrate TO: an integer (e.g. 2) or head/latest.",required:!0},{field:"policy",kind:"flag",token:"--policy <policy>",describe:`Migration policy: ${Yo.join(" | ")}.`,required:!0},{field:"proration",kind:"flag",token:"--proration <proration>",describe:"Optional proration: none | prorate | credit."},{field:"completeBy",kind:"flag",token:"--complete-by <iso8601>",describe:"Deadline (ISO 8601) \u2014 required by the by_date policy."}],helpTextAfter:`
109
110
  Examples:
110
111
  farthershore plan migrate my-business pro --from 1 --to head --policy next_renewal
111
112
  farthershore plan migrate my-business pro --from 1 --to 2 --policy immediate --proration prorate
112
- `,handler:async({client:t,args:e,reqOpts:r,emit:i,emitDryRunPreview:n})=>{let o=e.businessId,a=e.planKey,c=e.policy;if(!Ao.includes(c))throw new b(`Invalid --policy "${c}". Supported: ${Ao.join(", ")}.`,void 0,{code:"INVALID_MIGRATION_POLICY"});let l=await t.migratePlan(o,a,{fromVersion:e.from,toVersion:e.to,policy:c,proration:e.proration,completeBy:e.completeBy},r);n(l)||i({businessId:o,planKey:a,migration:l},`Migration scheduled for plan ${a}`)}},mcp:{tool:"fs_plan_migrate",title:"Migrate subscribers between plan versions",description:"Schedule a subscriber migration for a plan: move subscribers from one plan version to another under a policy. Pass the plan KEY plus fromVersion/toVersion (each an integer or 'head'/'latest') \u2014 the server resolves them to the right plan versions. Policies: next_renewal (migrate at each subscriber's renewal), immediate (migrate now), by_date (migrate everyone by a deadline), or opt_in (subscribers choose). This is an OPERATE action (it changes live subscriber state, not the business's code-managed definition).",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe("The business id whose subscribers to migrate."),planKey:s.string().describe("The stable plan key (e.g. 'pro') to migrate within."),fromVersion:s.union([s.string(),s.number().int().positive()]).describe("Source plan version: an integer or 'head'/'latest'."),toVersion:s.union([s.string(),s.number().int().positive()]).describe("Target plan version: an integer or 'head'/'latest'."),policy:s.enum(Ao).describe("Migration policy: next_renewal | immediate | by_date | opt_in."),proration:s.enum(["none","prorate","credit"]).optional().describe("Optional proration behaviour."),completeBy:s.string().optional().describe("ISO 8601 deadline \u2014 required by the by_date policy."),...Y},handler:async(t,e)=>t.migratePlan(e.businessId,e.planKey,{fromVersion:e.fromVersion,toVersion:e.toVersion,policy:e.policy,proration:e.proration,completeBy:e.completeBy},{idempotencyKey:e.idempotencyKey})}}],Wv=Gv;function qv(t,e){N(t,e,Gv)}import{mkdtemp as R$,rm as A$}from"node:fs/promises";import{tmpdir as C$}from"node:os";import{join as Qv}from"node:path";import{spawn as _$}from"node:child_process";import{existsSync as Yv}from"node:fs";import{readFile as y$}from"node:fs/promises";var k$="business-build.json",Jv="./business/node_modules/.bin/farthershore-manifest-build",x$="./node_modules/.bin/farthershore-manifest-build";function I$(t=Yv){return t(Jv)?Jv:x$}async function lr(t,e=_$,r=Yv){let i=I$(r),n=t.entry?["--entry",t.entry,"--out",t.out]:["--out",t.out],o=e(i,n,{stdio:["ignore","pipe","pipe"]}),a="",c="",l=!1;return o.stdout?.setEncoding("utf8"),o.stderr?.setEncoding("utf8"),o.stdout?.on("data",d=>{a+=d}),o.stderr?.on("data",d=>{c+=d}),new Promise(d=>{let u=(p,m)=>{l||(l=!0,d({command:i,args:n,exitCode:p,signal:m,stdout:a,stderr:c}))};o.on("error",p=>{c+=`${p.message}
113
- `,u(1,null)}),o.on("close",(p,m)=>{u(p??(m?1:0),m)})})}async function ur(t){let e=await y$(t,"utf8"),r=JSON.parse(e);if(!T$(r)||!("ir"in r))throw new Error(`${t} is not a Manifest IR envelope with an ir field`);return{ir:r.ir,irHash:typeof r.irHash=="string"?r.irHash:void 0}}function Xv(t,e,r={}){t.command("build").description("Build the business/ program into a Manifest IR envelope").option("--entry <path>","Business-as-code folder or file to compile (default: the repo-local SDK resolves it \u2014 normally the business/ folder)").option("--out <path>","Output path for the build output (default: business-build.json)").addHelpText("after",`
113
+ `,handler:async({client:t,args:e,reqOpts:r,emit:i,emitDryRunPreview:n})=>{let o=e.businessId,a=e.planKey,c=e.policy;if(!Yo.includes(c))throw new b(`Invalid --policy "${c}". Supported: ${Yo.join(", ")}.`,void 0,{code:"INVALID_MIGRATION_POLICY"});let l=await t.migratePlan(o,a,{fromVersion:e.from,toVersion:e.to,policy:c,proration:e.proration,completeBy:e.completeBy},r);n(l)||i({businessId:o,planKey:a,migration:l},`Migration scheduled for plan ${a}`)}},mcp:{tool:"fs_plan_migrate",title:"Migrate subscribers between plan versions",description:"Schedule a subscriber migration for a plan: move subscribers from one plan version to another under a policy. Pass the plan KEY plus fromVersion/toVersion (each an integer or 'head'/'latest') \u2014 the server resolves them to the right plan versions. Policies: next_renewal (migrate at each subscriber's renewal), immediate (migrate now), by_date (migrate everyone by a deadline), or opt_in (subscribers choose). This is an OPERATE action (it changes live subscriber state, not the business's code-managed definition).",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe("The business id whose subscribers to migrate."),planKey:s.string().describe("The stable plan key (e.g. 'pro') to migrate within."),fromVersion:s.union([s.string(),s.number().int().positive()]).describe("Source plan version: an integer or 'head'/'latest'."),toVersion:s.union([s.string(),s.number().int().positive()]).describe("Target plan version: an integer or 'head'/'latest'."),policy:s.enum(Yo).describe("Migration policy: next_renewal | immediate | by_date | opt_in."),proration:s.enum(["none","prorate","credit"]).optional().describe("Optional proration behaviour."),completeBy:s.string().optional().describe("ISO 8601 deadline \u2014 required by the by_date policy."),...Q},handler:async(t,e)=>t.migratePlan(e.businessId,e.planKey,{fromVersion:e.fromVersion,toVersion:e.toVersion,policy:e.policy,proration:e.proration,completeBy:e.completeBy},{idempotencyKey:e.idempotencyKey})}}],B_=M_;function F_(t,e){C(t,e,M_)}import{mkdtemp as oT,rm as sT}from"node:fs/promises";import{tmpdir as aT}from"node:os";import{join as q_}from"node:path";import{spawn as WO}from"node:child_process";import{existsSync as Z_}from"node:fs";import{readFile as qO}from"node:fs/promises";import{mkdtemp as BO,rm as FO}from"node:fs/promises";import{tmpdir as HO}from"node:os";import{join as Jp}from"node:path";function K_(t,e,r={}){t.command("validate").description("Validate the business/ program the way the PR check does, before pushing").option("--entry <path>","Business-as-code folder or file to validate (default: the repo-local SDK resolves it \u2014 normally the business/ folder)").option("--business <id-or-name>","Business id or name \u2014 runs the server dry-run validate for the full verdict (diff + economic change)").option("--env <name>","Environment for the server validate").option("--local-only","Build + determinism only; skip the server dry-run validate").addHelpText("after",`
114
+ Examples:
115
+ farthershore validate # local build + determinism
116
+ farthershore validate --business weather-api # + server validate (full PR verdict)
117
+ farthershore validate --local-only --format json
118
+ `).action(async i=>{let n=i.entry,o=n??"business/",a=r.runLocalManifestBuild??Sr,c=r.readManifestEnvelope??Er,l=await BO(Jp(HO(),"fs-validate-")),d=Jp(l,"build-a.json"),u=Jp(l,"build-b.json");try{let p=await a({entry:n,out:d});VO(p),p.exitCode!==0&&V_(p,o);let m=await H_(c,d,o),f=await a({entry:n,out:u});f.exitCode!==0&&V_(f,o);let v=await H_(c,u,o),w=m.irHash??null;(!w||w!==(v.irHash??null))&&KO(m.irHash??null,v.irHash??null,o);let E=null,U=null;if(i.localOnly)U="skipped (--local-only)";else if(!i.business)U="skipped (pass --business <id-or-name> for the full server verdict: diff + economic change)";else{let H=e(),V=await A(H,i.business);E=await H.compileManifest(V,m.ir,{env:i.env}),E.success||GO(E)}L({success:!0,entry:o,irHash:w,deterministic:!0,validate:E?{success:E.success,economicChange:E.economicChange??!1,warnings:E.warnings,lifecyclePlan:E.lifecyclePlan??null,environment:E.environment??null,specHash:E.specHash??null}:null,validateSkipped:U,nextActions:ZO(E,U)},E?"Validate passed \u2014 manifest compiles and validates cleanly":"Validate passed \u2014 manifest builds deterministically"),E?.economicChange&&J("This change is economic (plan/pricing) \u2014 it will defer to a release on push."),U&&!i.localOnly&&J(U)}finally{await FO(l,{recursive:!0,force:!0}).catch(()=>{})}})}function VO(t){te()!=="json"&&(t.stdout&&process.stdout.write(t.stdout),t.stderr&&process.stderr.write(t.stderr))}async function H_(t,e,r){try{return await t(e)}catch(i){let n=i instanceof Error?i.message:"Manifest IR output could not be read";throw new b(n,0,{code:"MANIFEST_IR_READ_FAILED",details:{success:!1,phase:"read_manifest_ir",entry:r,errors:[{message:n}],nextActions:["Run farthershore build to see the full build output"]}})}}function V_(t,e){throw new b(`Manifest build failed with exit code ${t.exitCode||1}`,0,{code:"MANIFEST_BUILD_FAILED",details:{success:!1,phase:"local_build",entry:e,command:t.command,args:t.args,exitCode:t.exitCode,signal:t.signal,stdout:t.stdout,stderr:t.stderr,nextActions:[...Yp(t.stderr,t.command),"Fix your business/ program and run farthershore validate again"]}})}function KO(t,e,r){throw new b("Manifest build is nondeterministic \u2014 two builds produced different irHash",0,{code:"MANIFEST_NONDETERMINISTIC",details:{success:!1,phase:"determinism",entry:r,irHash:t,irHash2:e,nextActions:["Remove nondeterminism from your business/ program (e.g. Date.now(), Math.random(), unordered iteration)"]}})}function GO(t){throw new b(`Manifest validation failed with ${t.errors.length} error(s)`,422,{code:"MANIFEST_VALIDATION_FAILED",details:{success:!1,phase:"server_validate",irHash:t.irHash??null,errors:t.errors,warnings:t.warnings,economicChange:t.economicChange??!1,nextActions:["Fix the reported errors in your business/ program and run farthershore validate again"]}})}function ZO(t,e){return t?["Manifest compiles and validates \u2014 commit and push; the GitHub check will run the same validation"]:e&&e.includes("--business")?["Pass --business <id-or-name> to also run the server validate (semantic diff + economic-change verdict)"]:["Commit and push business/ changes"]}function Yp(t,e){let r=t??"";return/ENOENT/.test(r)&&/manifest-build/.test(r+e)?["business/ dependencies are not installed \u2014 this is NOT a problem with your program","Run `npm install` inside the business/ directory, then re-run the command"]:[]}var JO="business-build.json",G_="./business/node_modules/.bin/farthershore-manifest-build",YO="./node_modules/.bin/farthershore-manifest-build";function XO(t=Z_){return t(G_)?G_:YO}async function Sr(t,e=WO,r=Z_){let i=XO(r),n=t.entry?["--entry",t.entry,"--out",t.out]:["--out",t.out],o=e(i,n,{stdio:["ignore","pipe","pipe"]}),a="",c="",l=!1;return o.stdout?.setEncoding("utf8"),o.stderr?.setEncoding("utf8"),o.stdout?.on("data",d=>{a+=d}),o.stderr?.on("data",d=>{c+=d}),new Promise(d=>{let u=(p,m)=>{l||(l=!0,d({command:i,args:n,exitCode:p,signal:m,stdout:a,stderr:c}))};o.on("error",p=>{c+=`${p.message}
119
+ `,u(1,null)}),o.on("close",(p,m)=>{u(p??(m?1:0),m)})})}async function Er(t){let e=await qO(t,"utf8"),r=JSON.parse(e);if(!iT(r)||!("ir"in r))throw new Error(`${t} is not a Manifest IR envelope with an ir field`);return{ir:r.ir,irHash:typeof r.irHash=="string"?r.irHash:void 0}}function W_(t,e,r={}){t.command("build").description("Build the business/ program into a Manifest IR envelope").option("--entry <path>","Business-as-code folder or file to compile (default: the repo-local SDK resolves it \u2014 normally the business/ folder)").option("--out <path>","Output path for the build output (default: business-build.json)").addHelpText("after",`
114
120
  Examples:
115
121
  farthershore build
116
122
  farthershore build --entry business/index.ts --out business-build.json
117
123
  farthershore build --format json
118
- `).action(async i=>{let n=t.opts(),o=Ur(n.format),a=i.entry,c=a??"business/",l=i.out??k$,d=r.runLocalManifestBuild??lr,u=r.readManifestEnvelope??ur,p=await d({entry:a,out:l});S$(p,o),p.exitCode!==0&&E$(p,c,l);let m;try{m=await u(l)}catch(g){w$(g,c,l)}$$({entry:c,out:l,envelope:m})})}function S$(t,e){e!=="json"&&(t.stdout&&process.stdout.write(t.stdout),t.stderr&&process.stderr.write(t.stderr))}function E$(t,e,r){throw new b(`Manifest build failed with exit code ${t.exitCode||1}`,0,{code:"MANIFEST_BUILD_FAILED",details:{success:!1,phase:"local_build",entry:e,out:r,command:t.command,args:t.args,exitCode:t.exitCode,signal:t.signal,stdout:t.stdout,stderr:t.stderr,nextActions:["Fix your business/ program and run farthershore build again"]}})}function w$(t,e,r){let i=t instanceof Error?t.message:"Manifest IR output could not be read";throw new b(i,0,{code:"MANIFEST_IR_READ_FAILED",details:{success:!1,phase:"read_manifest_ir",entry:e,out:r,errors:[{message:i}],nextActions:["Check the manifest build output path and run farthershore build again"]}})}function $$(t){j({success:!0,entry:t.entry,out:t.out,irHash:t.envelope.irHash??null,mode:null,validation:null,errors:[],warnings:[],lifecyclePlan:null,nextActions:O$()},`Manifest IR written to ${t.out}`),G("Commit and push business/ changes for the GitHub bot to compile and publish accepted lifecycle state.")}function O$(){return["Commit and push business/ changes; the GitHub bot will compile and publish accepted lifecycle state"]}function T$(t){return!!t&&typeof t=="object"&&!Array.isArray(t)}var P$={NO_CHANGE:"no change",IMMEDIATE:"now",BRIDGE_REQUIRED:"bridged",RENEWAL_REQUIRED:"at renewal",UNSUPPORTED:"blocked"},N$={immediate:"now",bridge:"now, old price",renewal:"at renewal",unsupported:"blocked"},D$=16;function U$(t,e){let r=e.keys.length===0?"":` \u2014 ${e.keys.slice(0,6).join(", ")}${e.keys.length>6?` +${e.keys.length-6} more`:""}`;return`${t.padEnd(D$)}${e.label}${r}`}function z$(t){let e=t.planName&&t.planName!==t.planKey?` (${t.planName})`:"";return t.mintsNewVersion?t.currentVersion===null?`${t.planKey}${e} new \u2192 v${t.nextVersion}`:`${t.planKey}${e} v${t.currentVersion} \u2192 v${t.nextVersion}`:`${t.planKey}${e} v${t.currentVersion??1} \u2014 unchanged`}function fp(t,e,r){return`${t.toLocaleString("en-US")} ${t===1?e:r}`}function j$(t){let r=[`Plan release preview \u2014 ${t.environment.production?"production":t.environment.name??"environment"}`,""];if(t.plans.length===0&&t.unclassifiedPlanKeys.length===0)return r.push("(no plans in this manifest)"),r.join(`
119
- `);for(let i of t.plans){r.push(z$(i));for(let n of i.summary)r.push(` ${n}`);for(let n of i.cohorts){r.push(""),r.push(` Version ${n.version} \xB7 ${fp(n.subscribers,"subscriber","subscribers")} \xB7 ${P$[n.disposition]}`);let o=[["unsupported",n.unsupported],["immediate",n.immediate],["bridge",n.bridge],["renewal",n.renewal]],a=!1;for(let[c,l]of o)for(let d of l)r.push(` ${U$(N$[c],d)}`),a=!0;a||r.push(" (no differences)")}r.push("")}return r.push(t.affectedSubscribers===0?"No existing subscribers are affected.":`${fp(t.affectedSubscribers,"subscriber","subscribers")} affected: ${t.immediateSubscribers} now \xB7 ${t.bridgedSubscribers} bridged \xB7 ${t.renewalSubscribers} at renewal \xB7 ${t.unsupportedSubscribers} blocked.`),t.noticeCount>0&&r.push(`${fp(t.noticeCount,"pricing notice","pricing notices")} required.`),t.unclassifiedPlanKeys.length>0&&r.push(`Not classified (not counted above): ${t.unclassifiedPlanKeys.join(", ")}. Run \`farthershore validate\` for the diagnostic.`),t.blocksPublish&&r.push("Publish is BLOCKED: a change cannot be faithfully deferred for a pinned cohort. Use a new plan key and migrate subscribers explicitly."),r.join(`
120
- `)}function e_(t,e,r={}){(t.commands.find(n=>n.name()==="plan")??t.command("plan").description("Plan operations: list code-managed plans and migrate subscribers")).command("diff").description("Preview which subscribers a plan change reaches now, bridges, or defers to renewal").argument("<businessIdOrName>").option("--entry <path>","Business-as-code folder or file to build (default: the repo-local SDK resolves it \u2014 normally the business/ folder)").option("--ir <path>","Use an already-built Manifest IR envelope (e.g. business-build.json) instead of rebuilding").option("--env <name>","Environment to diff against (default: production)").option("--plan <key>","Only show this plan key").addHelpText("after",`
124
+ `).action(async i=>{let n=t.opts(),o=ni(n.format),a=i.entry,c=a??"business/",l=i.out??JO,d=r.runLocalManifestBuild??Sr,u=r.readManifestEnvelope??Er,p=await d({entry:a,out:l});QO(p,o),p.exitCode!==0&&eT(p,c,l);let m;try{m=await u(l)}catch(f){tT(f,c,l)}nT({entry:c,out:l,envelope:m})})}function QO(t,e){e!=="json"&&(t.stdout&&process.stdout.write(t.stdout),t.stderr&&process.stderr.write(t.stderr))}function eT(t,e,r){throw new b(`Manifest build failed with exit code ${t.exitCode||1}`,0,{code:"MANIFEST_BUILD_FAILED",details:{success:!1,phase:"local_build",entry:e,out:r,command:t.command,args:t.args,exitCode:t.exitCode,signal:t.signal,stdout:t.stdout,stderr:t.stderr,nextActions:[...Yp(t.stderr,t.command),"Fix your business/ program and run farthershore build again"]}})}function tT(t,e,r){let i=t instanceof Error?t.message:"Manifest IR output could not be read";throw new b(i,0,{code:"MANIFEST_IR_READ_FAILED",details:{success:!1,phase:"read_manifest_ir",entry:e,out:r,errors:[{message:i}],nextActions:["Check the manifest build output path and run farthershore build again"]}})}function nT(t){L({success:!0,entry:t.entry,out:t.out,irHash:t.envelope.irHash??null,mode:null,validation:null,errors:[],warnings:[],lifecyclePlan:null,nextActions:rT()},`Manifest IR written to ${t.out}`),J("Commit and push business/ changes for the GitHub bot to compile and publish accepted lifecycle state.")}function rT(){return["Commit and push business/ changes; the GitHub bot will compile and publish accepted lifecycle state"]}function iT(t){return!!t&&typeof t=="object"&&!Array.isArray(t)}var cT={NO_CHANGE:"no change",IMMEDIATE:"now",BRIDGE_REQUIRED:"bridged",RENEWAL_REQUIRED:"at renewal",UNSUPPORTED:"blocked"},lT={immediate:"now",bridge:"now, old price",renewal:"at renewal",unsupported:"blocked"},uT=16;function dT(t,e){let r=e.keys.length===0?"":` \u2014 ${e.keys.slice(0,6).join(", ")}${e.keys.length>6?` +${e.keys.length-6} more`:""}`;return`${t.padEnd(uT)}${e.label}${r}`}function pT(t){let e=t.planName&&t.planName!==t.planKey?` (${t.planName})`:"";return t.mintsNewVersion?t.currentVersion===null?`${t.planKey}${e} new \u2192 v${t.nextVersion}`:`${t.planKey}${e} v${t.currentVersion} \u2192 v${t.nextVersion}`:`${t.planKey}${e} v${t.currentVersion??1} \u2014 unchanged`}function Xp(t,e,r){return`${t.toLocaleString("en-US")} ${t===1?e:r}`}function mT(t){let r=[`Plan release preview \u2014 ${t.environment.production?"production":t.environment.name??"environment"}`,""];if(t.plans.length===0&&t.unclassifiedPlanKeys.length===0)return r.push("(no plans in this manifest)"),r.join(`
125
+ `);for(let i of t.plans){r.push(pT(i));for(let n of i.summary)r.push(` ${n}`);for(let n of i.cohorts){r.push(""),r.push(` Version ${n.version} \xB7 ${Xp(n.subscribers,"subscriber","subscribers")} \xB7 ${cT[n.disposition]}`);let o=[["unsupported",n.unsupported],["immediate",n.immediate],["bridge",n.bridge],["renewal",n.renewal]],a=!1;for(let[c,l]of o)for(let d of l)r.push(` ${dT(lT[c],d)}`),a=!0;a||r.push(" (no differences)")}r.push("")}return r.push(t.affectedSubscribers===0?"No existing subscribers are affected.":`${Xp(t.affectedSubscribers,"subscriber","subscribers")} affected: ${t.immediateSubscribers} now \xB7 ${t.bridgedSubscribers} bridged \xB7 ${t.renewalSubscribers} at renewal \xB7 ${t.unsupportedSubscribers} blocked.`),t.noticeCount>0&&r.push(`${Xp(t.noticeCount,"pricing notice","pricing notices")} required.`),t.unclassifiedPlanKeys.length>0&&r.push(`Not classified (not counted above): ${t.unclassifiedPlanKeys.join(", ")}. Run \`farthershore validate\` for the diagnostic.`),t.blocksPublish&&r.push("Publish is BLOCKED: a change cannot be faithfully deferred for a pinned cohort. Use a new plan key and migrate subscribers explicitly."),r.join(`
126
+ `)}function J_(t,e,r={}){(t.commands.find(n=>n.name()==="plan")??t.command("plan").description("Plan operations: list code-managed plans and migrate subscribers")).command("diff").description("Preview which subscribers a plan change reaches now, bridges, or defers to renewal").argument("<businessIdOrName>").option("--entry <path>","Business-as-code folder or file to build (default: the repo-local SDK resolves it \u2014 normally the business/ folder)").option("--ir <path>","Use an already-built Manifest IR envelope (e.g. business-build.json) instead of rebuilding").option("--env <name>","Environment to diff against (default: production)").option("--plan <key>","Only show this plan key").addHelpText("after",`
121
127
  What it tells you:
122
128
  Every plan's next version, and \u2014 per still-populated cohort \u2014 whether the
123
129
  change reaches them now, reaches them via a bridge (new access at their old
@@ -127,7 +133,7 @@ Examples:
127
133
  farthershore plan diff weather-api
128
134
  farthershore plan diff weather-api --env staging
129
135
  farthershore plan diff weather-api --ir business-build.json --format json
130
- `).action(async(n,o)=>{let a=r.runLocalManifestBuild??lr,c=r.readManifestEnvelope??ur,l=await F$({opts:o,runBuild:a,readEnvelope:c}),d=e(),u=await A(d,n),p=await d.previewPlanRelease(u,l.ir,{env:o.env}),m=L$(p.preview,o.plan);j({success:!0,businessId:u,irHash:p.irHash??l.irHash??null,preview:m,nextActions:M$(m)},`Plan release preview for business ${u}`),te()!=="json"&&console.log(j$(m))})}function L$(t,e){if(!e)return t;let r=t.plans.filter(i=>i.planKey===e);if(r.length===0)throw new b(`No plan "${e}" in this manifest. Plans: ${t.plans.map(i=>i.planKey).join(", ")||"(none)"}`,0,{code:"PLAN_NOT_IN_MANIFEST",param:"plan"});return{...t,plans:r,unclassifiedPlanKeys:t.unclassifiedPlanKeys.filter(i=>i===e),affectedSubscribers:nn(r,i=>i.affectedSubscribers),immediateSubscribers:nn(r,i=>i.immediateSubscribers),bridgedSubscribers:nn(r,i=>i.bridgedSubscribers),renewalSubscribers:nn(r,i=>i.renewalSubscribers),unsupportedSubscribers:nn(r,i=>i.unsupportedSubscribers),noticeCount:nn(r,i=>i.noticeCount),blocksPublish:r.some(i=>i.blocksPublish)}}function nn(t,e){return t.reduce((r,i)=>r+e(i),0)}function M$(t){return t.blocksPublish?["A pinned cohort cannot be carried across this change \u2014 publish it under a NEW plan key and move subscribers with `farthershore plan migrate`"]:t.unsupportedSubscribers>0?["Resolve the blocked cohorts before pushing"]:t.noticeCount>0?["Commit and push \u2014 the new version is minted on release and each affected subscriber gets a pricing notice at their renewal"]:["Commit and push business/ changes"]}async function F$(t){let{opts:e,runBuild:r,readEnvelope:i}=t;if(e.ir)try{return await i(e.ir)}catch(a){throw new b(a instanceof Error?a.message:`Manifest IR envelope ${e.ir} could not be read`,0,{code:"MANIFEST_IR_READ_FAILED",param:"ir"})}let n=await R$(Qv(C$(),"fs-plan-diff-")),o=Qv(n,"business-build.json");try{let a=await r({entry:e.entry,out:o});if(te()!=="json"&&(a.stdout&&process.stdout.write(a.stdout),a.stderr&&process.stderr.write(a.stderr)),a.exitCode!==0)throw new b(`Manifest build failed with exit code ${a.exitCode||1}`,0,{code:"MANIFEST_BUILD_FAILED",details:{success:!1,phase:"local_build",entry:e.entry??"business/",command:a.command,args:a.args,exitCode:a.exitCode,stdout:a.stdout,stderr:a.stderr,nextActions:["Fix your business/ program and run farthershore plan diff again"]}});try{return await i(o)}catch(c){throw new b(c instanceof Error?c.message:"Manifest IR output could not be read",0,{code:"MANIFEST_IR_READ_FAILED"})}}finally{await A$(n,{recursive:!0,force:!0}).catch(()=>{})}}async function rn(t,e,r){let n=await t.listEnvironments(e),a=(Array.isArray(n.data)?n.data:Array.isArray(n.environments)?n.environments:[]).find(c=>c.name.toLowerCase()===r.toLowerCase()||c.id===r);if(!a)throw new Error(`Environment "${r}" not found on business ${e}.`);return a.id}var hp=[{opKey:"persona.bootstrap",operationClass:"operate",scope:["businesses:read"],sideEffect:"write",cli:{group:"persona",command:"bootstrap",summary:"Issue a fresh fsk_test_ API key in a test environment",args:[{field:"businessId",kind:"positional",token:"<businessIdOrName>",resolveBusiness:!0},{field:"env",kind:"flag",token:"--env <env>",describe:"Environment name (must be test-strategy)",required:!0},{field:"plan",kind:"flag",token:"--plan <planKey>",describe:"Plan key to assign (e.g. starter)"},{field:"displayName",kind:"flag",token:"--display-name <name>",describe:"Persona display name"}],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=await gp(t,i,e.env),o=await t.issuePersonaBootstrapKey(i,n,{planKey:e.plan,displayName:e.displayName});r({businessId:i,environmentId:n,result:o},"Persona bootstrapped")}},mcp:{tool:"fs_persona_bootstrap",title:"Bootstrap a test persona",description:"Issue a one-time test bootstrap key for a business environment \u2014 use it to provision a test persona. Returns the key ONCE; store it now.",returnsOneTimeSecret:!0,annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!1,openWorldHint:!1},inputSchema:{businessId:s.string().describe("The business id."),environmentId:s.string().describe("The environment id to scope the persona to.")},handler:async(t,{businessId:e,environmentId:r})=>t.issuePersonaBootstrapKey(e,r)}},{opKey:"persona.read",operationClass:"operate",scope:["businesses:read"],sideEffect:"read",cli:{group:"persona",command:"list",summary:"List personas for a test environment",args:[{field:"businessId",kind:"positional",token:"<businessIdOrName>",resolveBusiness:!0},{field:"env",kind:"flag",token:"--env <env>",describe:"Environment name",required:!0}],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=await gp(t,i,e.env),o=await t.listPersonas(i,n);r({businessId:i,environmentId:n,result:o},"Personas")}},mcp:{tool:"fs_persona_list",title:"List personas",description:"List a business environment's test personas (id, label, status). Read-only.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe("The business id."),environmentId:s.string().describe("The environment id whose personas to list.")},handler:async(t,{businessId:e,environmentId:r})=>t.listPersonas(e,r)}},{opKey:"persona.revoke",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:"persona",command:"revoke",summary:"Revoke a persona's API key",args:[{field:"businessId",kind:"positional",token:"<businessIdOrName>",resolveBusiness:!0},{field:"personaId",kind:"positional",token:"<personaId>"},{field:"env",kind:"flag",token:"--env <env>",describe:"Environment name",required:!0}],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=e.personaId,o=await gp(t,i,e.env),a=await t.revokePersona(i,o,n);r({businessId:i,environmentId:o,result:a},`Persona ${n} revoked`)}},mcp:{tool:"fs_persona_revoke",title:"Revoke a persona",description:"Revoke a test persona. Its credentials stop working.",annotations:{readOnlyHint:!1,destructiveHint:!0,idempotentHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe("The business id."),environmentId:s.string().describe("The environment id."),personaId:s.string().describe("The persona id to revoke.")},handler:async(t,{businessId:e,environmentId:r,personaId:i})=>t.revokePersona(e,r,i)}}];function t_(t,e){N(t,e,hp)}async function gp(t,e,r){try{return await rn(t,e,r)}catch(i){throw new b(i instanceof Error?i.message:`Environment "${r}" not found on business ${e}.`,void 0,{code:"ENV_NOT_FOUND"})}}var bp=[{opKey:"usage.read",operationClass:"operate",scope:["businesses:read"],sideEffect:"read",cli:{group:"usage",command:"summary",summary:"Show usage summary for the last 30 days",args:[{field:"businessId",kind:"positional",token:"<businessIdOrName>",resolveBusiness:!0}],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=await t.managementGetUsage(i);r({businessId:i,summary:n},"Usage summary")}},mcp:{tool:"fs_usage_read",title:"Read usage summary",description:"Read a business's usage summary \u2014 metered request counts and tier utilization. Read-only.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe("The business id whose usage to read.")},handler:async(t,{businessId:e})=>t.managementGetUsage(e)}}];function n_(t,e){N(t,e,bp)}function r_(t,e){let r=t.command("connect").description("Connection status for GitHub and Stripe (browser-only flows)");r.command("github").description("Print GitHub-connection status").action(async()=>{let n=await e().builderGitHubStatus();j({status:n},"GitHub status")}),r.command("stripe <businessIdOrName>").description("Print Stripe Connect status for a business").action(async i=>{let n=e(),o=await A(n,i),a=await n.businessStripeStatus(o);j({businessId:o,status:a},"Stripe status")})}function B$(t){if(!t||typeof t!="object")return[];let e=t;return Array.isArray(e.data)?e.data:Array.isArray(e.tokens)?e.tokens:Array.isArray(t)?t:[]}var vp=[{opKey:"maker_token.read",operationClass:"operate",scope:[],sideEffect:"read",cli:{group:"token",command:"list",summary:"List maker tokens in the current org",args:[],handler:async({client:t,emit:e})=>{let r=B$(await t.managementListMakerTokens());e({count:r.length,tokens:r.map(i=>({id:i.id,name:i.name??null,scopes:i.scopes??[],businessId:i.businessId??null,lastFour:i.lastFour??null,createdAt:i.createdAt??null,revokedAt:i.revokedAt??null}))},`${r.length} token(s)`)}},mcp:{tool:"fs_maker_token_list",title:"List maker tokens",description:"List the workspace's maker tokens (mk_) \u2014 id, label, scopes, last-four, status. Read-only; secrets are never shown. Creating/revoking maker tokens is intentionally not exposed via MCP.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{},handler:async t=>t.managementListMakerTokens()}},{opKey:"maker_token.create",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:"token",command:"create",summary:"Create a new maker token (returns the secret once)",args:[{field:"name",kind:"flag",token:"--name <name>",describe:"Human-friendly token name",required:!0},{field:"scope",kind:"flag",token:"--scope <scope...>",describe:"Scope(s) to attach (e.g. businesses:update businesses:publish)"},{field:"business",kind:"flag",token:"--business <businessId>",describe:"Scope to a specific business"},{field:"restrict",kind:"flag",token:"--restrict <perm...>",describe:"Narrow the token's role bundle to these permissions (e.g. business:read plan:read). Must be within your own permissions."}],handler:async({client:t,args:e,emit:r})=>{let i=await t.managementCreateMakerToken({name:e.name,scopes:e.scope,businessId:e.business,restrictedPermissions:e.restrict});r({result:i},"Token created")}},mcp:null},{opKey:"maker_token.revoke",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:"token",command:"revoke",summary:"Revoke a maker token. Requires --yes.",destructive:!0,yesMessage:"Pass --yes to confirm token revocation.",args:[{field:"tokenId",kind:"positional",token:"<tokenId>"}],handler:async({client:t,args:e,emit:r})=>{let i=e.tokenId;await t.managementRevokeMakerToken(i),r({revoked:i},`Token ${i} revoked`)}},mcp:null},{opKey:"maker_token.rotate",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:"token",command:"rotate",summary:"Rotate a maker token secret (returns the new secret once)",idempotent:!0,args:[{field:"tokenId",kind:"positional",token:"<tokenId>"},{field:"syncToGithub",kind:"flag",token:"--sync-to-github",describe:"Also update the connected GitHub repo FARTHERSHORE_TOKEN secret when this is a platform token"}],handler:async({client:t,args:e,reqOpts:r,emit:i})=>{let n=e.tokenId,o=await t.managementRotateMakerToken(n,{syncToGithub:e.syncToGithub===!0},r);i({result:o},`Token ${n} rotated`)}},mcp:null},{opKey:"maker_token.hard_delete",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:"token",command:"delete",summary:"Permanently delete an already-revoked maker token. Requires --yes.",destructive:!0,yesMessage:"Pass --yes to permanently delete the revoked token row.",args:[{field:"tokenId",kind:"positional",token:"<tokenId>"}],handler:async({client:t,args:e,emit:r})=>{let i=e.tokenId;await t.managementHardDeleteMakerToken(i),r({deleted:i},`Token ${i} permanently deleted`)}},mcp:null}];function i_(t,e){N(t,e,vp)}var _p=["gateway_verification","metering","health","tunnel"],H$="<businessId>",on="businesses:update",sn="The business id.",qe={field:"businessId",kind:"positional",token:H$};function o_(t){if(!t||typeof t!="object")return[];let e=t;return Array.isArray(e.data)?e.data:Array.isArray(e.backends)?e.backends:Array.isArray(e.tokens)?e.tokens:Array.isArray(t)?t:[]}function V$(t){let e=t.status;if(typeof e=="string"&&e.length>0)return e;let r=typeof t.readinessState=="string"?t.readinessState:null,i=typeof t.provisionStatus=="string"?t.provisionStatus:null;return r??i??"unknown"}function Z$(t){return{id:t.id,environmentId:t.environmentId??null,name:t.name,slug:t.slug,transport:t.transportMode,default:t.isDefault??!1,status:V$(t),originUrl:t.originUrl??null,lastSeenAt:t.lastSeenAt??null}}async function yp(t,e,r){if(!r)return null;try{return await rn(t,e,r)}catch(i){throw new b(i instanceof Error?i.message:`Environment "${r}" not found on business ${e}.`,void 0,{code:"ENV_NOT_FOUND"})}}var kp=t=>typeof t=="string"&&t.length>0?t.split(",").map(e=>e.trim()).filter(e=>e.length>0):void 0,xp=[{opKey:"backend.read",operationClass:"operate",scope:["businesses:read"],sideEffect:"read",cli:{group:"backend",command:"list",summary:"List backends for a business (id, name, transport, status)",args:[qe],handler:async({client:t,args:e,emit:r})=>{let n=o_(await t.builderListBackends(e.businessId)).map(Z$);r({count:n.length,backends:n},`${n.length} backend(s)`)}},mcp:{tool:"fs_backend_list",title:"List backends",description:"List a business's backends (origins) \u2014 id, name, slug, transport (direct|tunnel), default flag, and derived status. Read-only.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe("The business id whose backends to list.")},handler:async(t,{businessId:e})=>t.builderListBackends(e)}},{opKey:"backend.create",operationClass:"operate",scope:[on],sideEffect:"write",cli:{group:"backend",command:"create",summary:"Create a backend (default transport: direct)",idempotent:!0,args:[qe,{field:"name",kind:"flag",token:"--name <name>",describe:"Human-friendly backend name",required:!0},{field:"slug",kind:"flag",token:"--slug <slug>",describe:"Stable slug (defaults to a slugified name)"},{field:"env",kind:"flag",token:"--env <environment>",describe:"Scope backend to an environment name or id"},{field:"transport",kind:"flag",token:"--transport <mode>",describe:"Transport mode: direct | tunnel",defaultValue:"direct"},{field:"runner",kind:"flag",token:"--runner <runner>",describe:"embedded | sidecar"},{field:"runtime",kind:"flag",token:"--runtime <runtime>",describe:"Container/runtime descriptor"},{field:"originUrl",kind:"flag",token:"--origin-url <url>",describe:"Builder origin URL (direct)"},{field:"default",kind:"flag",token:"--default",describe:"Mark this backend the business default"}],handler:async({client:t,args:e,reqOpts:r,emit:i,emitDryRunPreview:n})=>{let o=e.businessId,a=await yp(t,o,e.env),c=e.transport==="tunnel"?"tunnel":"direct",l=await t.builderCreateBackend(o,{name:e.name,slug:e.slug,environmentId:a,transportMode:c,runner:e.runner==="embedded"||e.runner==="sidecar"?e.runner:null,runtime:e.runtime??null,originUrl:e.originUrl??null,isDefault:e.default},r);n(l)||i({result:l},"Backend created")}},mcp:{tool:"fs_backend_create",title:"Create a backend",description:"Create a backend (origin) for a business. Pick a transport mode: direct (public HTTPS URL, secured by Ed25519 request signing) or tunnel (private outbound-only cloudflared, secure bring-your-own-backend). Mark it default to route traffic to it.",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!1,openWorldHint:!1},inputSchema:{businessId:s.string().describe("The business id to create the backend in."),name:s.string().describe("Backend name (e.g. 'prod-origin')."),slug:s.string().optional().describe("URL-safe slug; derived from name if omitted."),transportMode:s.enum(["direct","tunnel"]).optional().describe("How the gateway reaches the origin; defaults to direct."),originUrl:s.string().optional().describe("The origin URL (for direct mode)."),isDefault:s.boolean().optional().describe("Route traffic to this backend by default."),...Y},handler:async(t,e)=>t.builderCreateBackend(e.businessId,{name:e.name,slug:e.slug,transportMode:e.transportMode,originUrl:e.originUrl,isDefault:e.isDefault},{idempotencyKey:e.idempotencyKey})}},{opKey:"backend.bind",operationClass:"operate",scope:[on],sideEffect:"write",cli:{group:"backend",command:"bind",summary:"Bind a logical backend to a direct upstream in one environment",idempotent:!0,args:[qe,{field:"backend",kind:"positional",token:"<backend>"},{field:"env",kind:"flag",token:"--env <environment>",describe:"Environment name or id (omit for production)"},{field:"originUrl",kind:"flag",token:"--origin-url <url>",describe:"Concrete direct upstream URL for this environment",required:!0}],handler:async({client:t,args:e,reqOpts:r,emit:i,emitDryRunPreview:n})=>{let o=e.businessId,a=e.backend,c=await yp(t,o,e.env),l=await t.builderBindBackend(o,a,{environmentId:c,originUrl:e.originUrl},r);n(l)||i({result:l},`Backend ${a} bound in ${c??"production"}`)}},mcp:{tool:"fs_backend_bind",title:"Bind a backend upstream",description:"Bind a logical backend id to a concrete direct upstream URL in one environment. Omit environmentId for production.",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(sn),backend:s.string().describe("Logical backend slug."),environmentId:s.string().optional().describe("Preview environment id; omit for production."),originUrl:s.string().url().describe("Concrete direct upstream URL."),...Y},handler:async(t,e)=>t.builderBindBackend(e.businessId,e.backend,{environmentId:e.environmentId??null,originUrl:e.originUrl},{idempotencyKey:e.idempotencyKey})}},{opKey:"backend.delete",operationClass:"operate",scope:[on],sideEffect:"write",cli:{group:"backend",command:"delete",summary:"Delete a backend (revokes its runtime tokens). Requires --yes.",destructive:!0,yesMessage:"Pass --yes to confirm backend deletion.",args:[qe,{field:"backendId",kind:"positional",token:"<backendId>"}],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=e.backendId;await t.builderDeleteBackend(i,n),r({businessId:i,deleted:n},`Backend ${n} deleted`)}},mcp:{tool:"fs_backend_delete",title:"Delete a backend",description:"Delete a backend (origin). Traffic routed to it stops; re-create to restore.",annotations:{readOnlyHint:!1,destructiveHint:!0,idempotentHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(sn),backendId:s.string().describe("The backend id to delete.")},handler:async(t,{businessId:e,backendId:r})=>t.builderDeleteBackend(e,r)}},{opKey:"runtime_token.read",operationClass:"operate",scope:["businesses:read"],sideEffect:"read",cli:{group:"backend tokens",command:"list",summary:"List runtime tokens for a business",args:[qe],handler:async({client:t,args:e,emit:r})=>{let i=o_(await t.builderListRuntimeTokens(e.businessId));r({count:i.length,tokens:i},`${i.length} runtime token(s)`)}},mcp:{tool:"fs_runtime_token_list",title:"List runtime tokens",description:"List a business's runtime tokens (fsrt_) \u2014 id, last-four, operations, status. Read-only; secrets are never shown.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(sn)},handler:async(t,{businessId:e})=>t.builderListRuntimeTokens(e)}},{opKey:"runtime_token.mint",operationClass:"operate",scope:[on],sideEffect:"write",cli:{group:"backend tokens",command:"create",summary:"Create a runtime token (returns FS_RUNTIME_TOKEN once)",idempotent:!0,args:[qe,{field:"env",kind:"flag",token:"--env <environment>",describe:"Scope token to an environment name or id"},{field:"backend",kind:"flag",token:"--backend <backendId>",describe:"Bind token to a specific backend"},{field:"kind",kind:"flag",token:"--kind <kind>",describe:"live | test (defaults from env scope)"},{field:"operations",kind:"flag",token:"--operations <list>",describe:`Comma-separated operations: ${_p.join(" | ")}. Default: core's DEFAULT_OPERATIONS. Use tunnel for tunnel backends.`},{field:"meters",kind:"flag",token:"--meters <list>",describe:"Comma-separated allowed meters (default: all business meters)"},{field:"routes",kind:"flag",token:"--routes <list>",describe:"Comma-separated allowed routes"}],handler:async({client:t,args:e,reqOpts:r,emit:i,emitDryRunPreview:n})=>{let o=e.businessId,a=await yp(t,o,e.env),c=e.kind==="test"||e.kind==="live"?e.kind:void 0,l=kp(e.operations);if(l){for(let u of l)if(!_p.includes(u))throw new b(`Unknown operation "${u}". Available: ${_p.join(", ")}.`,void 0,{code:"UNKNOWN_RUNTIME_TOKEN_OPERATION"})}let d=await t.builderCreateRuntimeToken(o,{environmentId:a,backendId:e.backend??null,kind:c,operations:l,allowedMeters:kp(e.meters),allowedRoutes:kp(e.routes)},r);n(d)||i({envVar:"FS_RUNTIME_TOKEN",result:d},"Runtime token created")}},mcp:{tool:"fs_runtime_token_mint",title:"Mint a runtime token",description:"Mint a new runtime token (fsrt_) for a backend. Returns the plaintext token ONCE \u2014 store it now (e.g. as FS_RUNTIME_TOKEN). Operations default to the backend's needs (gateway_verification, metering, health).",returnsOneTimeSecret:!0,annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!1,openWorldHint:!1},inputSchema:{businessId:s.string().describe(sn),backendId:s.string().optional().describe("Bind the token to this backend."),environmentId:s.string().optional().describe("Scope to a preview environment (omit for production)."),kind:s.enum(["live","test"]).optional().describe("Token kind; defaults from the env scope."),operations:s.array(s.string()).optional().describe("Operations (gateway_verification, metering, health, tunnel)."),...Y},handler:async(t,e)=>t.builderCreateRuntimeToken(e.businessId,{backendId:e.backendId??null,environmentId:e.environmentId??null,kind:e.kind,operations:e.operations},{idempotencyKey:e.idempotencyKey})}},{opKey:"runtime_token.rotate",operationClass:"operate",scope:[on],sideEffect:"write",cli:{group:"backend tokens",command:"rotate",summary:"Rotate a runtime token (returns a fresh FS_RUNTIME_TOKEN once)",args:[qe,{field:"tokenId",kind:"positional",token:"<tokenId>"}],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=e.tokenId,o=await t.builderRotateRuntimeToken(i,n);r({envVar:"FS_RUNTIME_TOKEN",result:o},`Runtime token ${n} rotated`)}},mcp:{tool:"fs_runtime_token_rotate",title:"Rotate a runtime token",description:"Rotate a runtime token: mint a fresh secret carrying the same scope and revoke the old one. Returns the new plaintext token ONCE.",returnsOneTimeSecret:!0,annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!1,openWorldHint:!1},inputSchema:{businessId:s.string().describe(sn),tokenId:s.string().describe("The runtime token id to rotate."),...Y},handler:async(t,e)=>t.builderRotateRuntimeToken(e.businessId,e.tokenId,{idempotencyKey:e.idempotencyKey})}},{opKey:"runtime_token.revoke",operationClass:"operate",scope:[on],sideEffect:"write",cli:{group:"backend tokens",command:"revoke",summary:"Revoke a runtime token. Requires --yes.",destructive:!0,yesMessage:"Pass --yes to confirm runtime token revocation.",args:[qe,{field:"tokenId",kind:"positional",token:"<tokenId>"}],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=e.tokenId;await t.builderRevokeRuntimeToken(i,n),r({businessId:i,revoked:n},`Runtime token ${n} revoked`)}},mcp:{tool:"fs_runtime_token_revoke",title:"Revoke a runtime token",description:"Revoke a runtime token. The backend using it stops verifying.",annotations:{readOnlyHint:!1,destructiveHint:!0,idempotentHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(sn),tokenId:s.string().describe("The runtime token id to revoke.")},handler:async(t,{businessId:e,tokenId:r})=>t.builderRevokeRuntimeToken(e,r)}}];function s_(t,e){N(t,e,xp)}var Co="The business id or slug.",Ip="Scope to a preview environment (omit for production).",Sp={field:"businessId",kind:"positional",token:"<businessIdOrSlug>",describe:Co,resolveBusiness:!0},Ep={field:"env",kind:"flag",token:"--env <environmentId>",describe:"Scope to a preview environment id (omit for production)."};async function wp(t,e){return A(t,e)}var $p=[{opKey:"frontend.deploy",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:"frontend",command:"deploy",summary:"Trigger a frontend build (deploy) for a business's connected repo",idempotent:!0,args:[Sp,Ep,{field:"ref",kind:"flag",token:"--ref <ref>",describe:"Git ref to build (defaults to the env branch / repo default)."},{field:"buildCmd",kind:"flag",token:"--build-cmd <cmd>",describe:"Override the build command."}],handler:async({client:t,args:e,reqOpts:r,emit:i,emitDryRunPreview:n})=>{let o=await t.builderFrontendDeploy(e.businessId,{ref:e.ref,buildCmd:e.buildCmd,environmentId:e.env},r);n(o)||i({result:o},"Frontend build triggered")}},mcp:{tool:"fs_frontend_deploy",title:"Deploy a business frontend",description:"Trigger a Managed Frontend Hosting build for the business's connected repo (production by default; pass environmentId for a preview env). Returns the enqueued build.",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(Co),ref:s.string().optional().describe("Git ref to build (defaults to the env branch / repo default)."),buildCmd:s.string().optional().describe("Override the build command."),environmentId:s.string().optional().describe(Ip),...Y},handler:async(t,e)=>{let r=await wp(t,e.businessId);return t.builderFrontendDeploy(r,{ref:e.ref,buildCmd:e.buildCmd,environmentId:e.environmentId},{idempotencyKey:e.idempotencyKey})}}},{opKey:"frontend.status",operationClass:"operate",scope:["businesses:read"],sideEffect:"read",cli:{group:"frontend",command:"status",summary:"Show the current frontend release, recent releases, and recent builds (incl. failure reasons)",args:[Sp,Ep],handler:async({client:t,args:e,emit:r})=>{let i=await t.builderFrontendStatus(e.businessId,e.env);r(i,"Frontend status")}},mcp:{tool:"fs_frontend_status",title:"Get frontend status",description:"Read a business's current frontend serve state (uiMode, active release hash + producing build, pin flag), the recent SUCCEEDED releases (rollback targets), and the recent builds \u2014 a FAILED build's `error` explains why a deploy didn't go live. Read-only.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(Co),environmentId:s.string().optional().describe(Ip)},handler:async(t,e)=>{let r=await wp(t,e.businessId);return t.builderFrontendStatus(r,e.environmentId)}}},{opKey:"frontend.rollback",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:"frontend",command:"rollback",summary:"Roll the business frontend back to a prior release (re-activate its releaseId)",idempotent:!0,args:[Sp,{field:"releaseId",kind:"flag",token:"--release-id <releaseId>",describe:"The prior release id (manifest hash) to re-activate \u2014 see `frontend status`.",required:!0},Ep],handler:async({client:t,args:e,reqOpts:r,emit:i,emitDryRunPreview:n})=>{let o=await t.builderFrontendRollback(e.businessId,{releaseId:e.releaseId,environmentId:e.env},r);n(o)||i({result:o},"Frontend rolled back")}},mcp:{tool:"fs_frontend_rollback",title:"Roll back a business frontend",description:"Roll a business's frontend back to a prior release by its releaseId (manifest hash, from fs_frontend_status). Flips the live pointer back and pins it. The releaseId must belong to this target's build history.",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(Co),releaseId:s.string().describe("The prior release id (manifest hash) to re-activate."),environmentId:s.string().optional().describe(Ip),...Y},handler:async(t,e)=>{let r=await wp(t,e.businessId);return t.builderFrontendRollback(r,{releaseId:e.releaseId,environmentId:e.environmentId},{idempotencyKey:e.idempotencyKey})}}}];function a_(t,e){N(t,e,$p)}import{existsSync as Op,mkdirSync as eO,readdirSync as tO,readFileSync as nO,writeFileSync as rO}from"node:fs";import{basename as Tp,dirname as dr,join as iO,resolve as Rp}from"node:path";import{createInterface as oO}from"node:readline/promises";import{stdin as u_,stdout as d_}from"node:process";var c_=`/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550
136
+ `).action(async(n,o)=>{let a=r.runLocalManifestBuild??Sr,c=r.readManifestEnvelope??Er,l=await hT({opts:o,runBuild:a,readEnvelope:c}),d=e(),u=await A(d,n),p=await d.previewPlanRelease(u,l.ir,{env:o.env}),m=fT(p.preview,o.plan);L({success:!0,businessId:u,irHash:p.irHash??l.irHash??null,preview:m,nextActions:gT(m)},`Plan release preview for business ${u}`),te()!=="json"&&console.log(mT(m))})}function fT(t,e){if(!e)return t;let r=t.plans.filter(i=>i.planKey===e);if(r.length===0)throw new b(`No plan "${e}" in this manifest. Plans: ${t.plans.map(i=>i.planKey).join(", ")||"(none)"}`,0,{code:"PLAN_NOT_IN_MANIFEST",param:"plan"});return{...t,plans:r,unclassifiedPlanKeys:t.unclassifiedPlanKeys.filter(i=>i===e),affectedSubscribers:hn(r,i=>i.affectedSubscribers),immediateSubscribers:hn(r,i=>i.immediateSubscribers),bridgedSubscribers:hn(r,i=>i.bridgedSubscribers),renewalSubscribers:hn(r,i=>i.renewalSubscribers),unsupportedSubscribers:hn(r,i=>i.unsupportedSubscribers),noticeCount:hn(r,i=>i.noticeCount),blocksPublish:r.some(i=>i.blocksPublish)}}function hn(t,e){return t.reduce((r,i)=>r+e(i),0)}function gT(t){return t.blocksPublish?["A pinned cohort cannot be carried across this change \u2014 publish it under a NEW plan key and move subscribers with `farthershore plan migrate`"]:t.unsupportedSubscribers>0?["Resolve the blocked cohorts before pushing"]:t.noticeCount>0?["Commit and push \u2014 the new version is minted on release and each affected subscriber gets a pricing notice at their renewal"]:["Commit and push business/ changes"]}async function hT(t){let{opts:e,runBuild:r,readEnvelope:i}=t;if(e.ir)try{return await i(e.ir)}catch(a){throw new b(a instanceof Error?a.message:`Manifest IR envelope ${e.ir} could not be read`,0,{code:"MANIFEST_IR_READ_FAILED",param:"ir"})}let n=await oT(q_(aT(),"fs-plan-diff-")),o=q_(n,"business-build.json");try{let a=await r({entry:e.entry,out:o});if(te()!=="json"&&(a.stdout&&process.stdout.write(a.stdout),a.stderr&&process.stderr.write(a.stderr)),a.exitCode!==0)throw new b(`Manifest build failed with exit code ${a.exitCode||1}`,0,{code:"MANIFEST_BUILD_FAILED",details:{success:!1,phase:"local_build",entry:e.entry??"business/",command:a.command,args:a.args,exitCode:a.exitCode,stdout:a.stdout,stderr:a.stderr,nextActions:["Fix your business/ program and run farthershore plan diff again"]}});try{return await i(o)}catch(c){throw new b(c instanceof Error?c.message:"Manifest IR output could not be read",0,{code:"MANIFEST_IR_READ_FAILED"})}}finally{await sT(n,{recursive:!0,force:!0}).catch(()=>{})}}async function bn(t,e,r){let n=await t.listEnvironments(e),a=(Array.isArray(n.data)?n.data:Array.isArray(n.environments)?n.environments:[]).find(c=>c.name.toLowerCase()===r.toLowerCase()||c.id===r);if(!a)throw new Error(`Environment "${r}" not found on business ${e}.`);return a.id}var em=[{opKey:"persona.bootstrap",operationClass:"operate",scope:["businesses:read"],sideEffect:"write",cli:{group:"persona",command:"bootstrap",summary:"Issue a fresh fsk_test_ API key in a test environment",args:[{field:"businessId",kind:"positional",token:"<businessIdOrName>",resolveBusiness:!0},{field:"env",kind:"flag",token:"--env <env>",describe:"Environment name (must be test-strategy)",required:!0},{field:"plan",kind:"flag",token:"--plan <planKey>",describe:"Plan key to assign (e.g. starter)"},{field:"displayName",kind:"flag",token:"--display-name <name>",describe:"Persona display name"}],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=await Qp(t,i,e.env),o=await t.issuePersonaBootstrapKey(i,n,{planKey:e.plan,displayName:e.displayName});r({businessId:i,environmentId:n,result:o},"Persona bootstrapped")}},mcp:{tool:"fs_persona_bootstrap",title:"Bootstrap a test persona",description:"Issue a one-time test bootstrap key for a business environment \u2014 use it to provision a test persona. Returns the key ONCE; store it now.",returnsOneTimeSecret:!0,annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!1,openWorldHint:!1},inputSchema:{businessId:s.string().describe("The business id."),environmentId:s.string().describe("The environment id to scope the persona to.")},handler:async(t,{businessId:e,environmentId:r})=>t.issuePersonaBootstrapKey(e,r)}},{opKey:"persona.read",operationClass:"operate",scope:["businesses:read"],sideEffect:"read",cli:{group:"persona",command:"list",summary:"List personas for a test environment",args:[{field:"businessId",kind:"positional",token:"<businessIdOrName>",resolveBusiness:!0},{field:"env",kind:"flag",token:"--env <env>",describe:"Environment name",required:!0}],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=await Qp(t,i,e.env),o=await t.listPersonas(i,n);r({businessId:i,environmentId:n,result:o},"Personas")}},mcp:{tool:"fs_persona_list",title:"List personas",description:"List a business environment's test personas (id, label, status). Read-only.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe("The business id."),environmentId:s.string().describe("The environment id whose personas to list.")},handler:async(t,{businessId:e,environmentId:r})=>t.listPersonas(e,r)}},{opKey:"persona.revoke",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:"persona",command:"revoke",summary:"Revoke a persona's API key",args:[{field:"businessId",kind:"positional",token:"<businessIdOrName>",resolveBusiness:!0},{field:"personaId",kind:"positional",token:"<personaId>"},{field:"env",kind:"flag",token:"--env <env>",describe:"Environment name",required:!0}],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=e.personaId,o=await Qp(t,i,e.env),a=await t.revokePersona(i,o,n);r({businessId:i,environmentId:o,result:a},`Persona ${n} revoked`)}},mcp:{tool:"fs_persona_revoke",title:"Revoke a persona",description:"Revoke a test persona. Its credentials stop working.",annotations:{readOnlyHint:!1,destructiveHint:!0,idempotentHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe("The business id."),environmentId:s.string().describe("The environment id."),personaId:s.string().describe("The persona id to revoke.")},handler:async(t,{businessId:e,environmentId:r,personaId:i})=>t.revokePersona(e,r,i)}}];function Y_(t,e){C(t,e,em)}async function Qp(t,e,r){try{return await bn(t,e,r)}catch(i){throw new b(i instanceof Error?i.message:`Environment "${r}" not found on business ${e}.`,void 0,{code:"ENV_NOT_FOUND"})}}var tm=[{opKey:"usage.read",operationClass:"operate",scope:["businesses:read"],sideEffect:"read",cli:{group:"usage",command:"summary",summary:"Show usage summary for the last 30 days",args:[{field:"businessId",kind:"positional",token:"<businessIdOrName>",resolveBusiness:!0}],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=await t.managementGetUsage(i);r({businessId:i,summary:n},"Usage summary")}},mcp:{tool:"fs_usage_read",title:"Read usage summary",description:"Read a business's usage summary \u2014 metered request counts and tier utilization. Read-only.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe("The business id whose usage to read.")},handler:async(t,{businessId:e})=>t.managementGetUsage(e)}}];function X_(t,e){C(t,e,tm)}var bT=s.object({provider:s.string().min(1),subject:s.string().min(1),providerOrganizationId:s.string().optional(),email:s.string().optional()}).strict(),vT=s.object({provider:s.string().min(1),sessionId:s.string().optional(),authenticatedAt:s.string().optional(),assuranceLevel:s.string().optional()}).strict(),tt={id:s.string().min(1),businessId:s.string().optional(),organizationId:s.string().optional(),environmentId:s.string().optional(),externalIdentities:s.array(bT),authenticationContext:vT.optional()},_T=s.object({type:s.literal("user"),email:s.string().optional(),...tt}).strict(),yT=s.object({type:s.literal("maker_token"),tokenId:s.string().optional(),...tt}).strict(),kT=s.object({type:s.literal("subscriber_member"),subscriberId:s.string().optional(),membershipId:s.string().optional(),roles:s.array(s.string()).optional(),...tt}).strict(),xT=s.object({type:s.literal("api_key"),keyId:s.string().optional(),subscriberId:s.string().optional(),...tt}).strict(),IT=s.object({type:s.literal("runtime"),tokenId:s.string().optional(),...tt}).strict(),ST=s.object({type:s.literal("persona"),personaId:s.string().optional(),subscriberId:s.string().optional(),...tt}).strict(),ET=s.object({type:s.literal("system"),component:s.string().optional(),ruleId:s.string().optional(),...tt}).strict(),wT=s.object({type:s.literal("agent"),agentId:s.string().optional(),...tt}).strict(),nm=s.discriminatedUnion("type",[_T,yT,kT,xT,IT,ST,ET,wT]);var $T=1;var OT=["core","billing","webhook","evolution","authz","gateway","usage","workflow"],Q_=s.enum(OT),ey=s.object({type:s.string().min(1).max(128),id:s.string().min(1).max(256)}).strict(),GB=s.object({id:s.string().min(1),type:Re,occurredAt:s.string().datetime(),businessId:s.string().min(1),environmentId:s.string().min(1).nullable().optional(),actor:nm,subject:ey,payload:s.record(s.string(),s.unknown()).default({}),source:Q_,correlationId:s.string().min(1),correlationDepth:s.number().int().min(0).default(0),schemaVersion:s.number().int().min(1).default($T)}).strict(),ZB=s.object({type:Re,occurredAt:s.string().datetime().optional(),businessId:s.string().min(1),environmentId:s.string().min(1).nullable().optional(),actor:nm,subject:ey,payload:s.record(s.string(),s.unknown()).optional(),source:Q_,correlationId:s.string().min(1).optional(),correlationDepth:s.number().int().min(0).optional()}).strict();var TT=50,AT=200,YB=s.object({businessId:s.string().min(1),environmentId:s.string().min(1).optional(),type:Re.optional(),subjectType:s.string().min(1).optional(),subjectId:s.string().min(1).optional(),since:s.string().datetime().optional(),until:s.string().datetime().optional(),limit:s.coerce.number().int().min(1).max(AT).default(TT),cursor:s.string().min(1).optional()}).strict();var Ce=["usage","telemetry","denials","lifecycle","consumer_activity","audit"],Xo=s.enum(Ce);var tF=s.object({event_id:s.string().min(1),type:Re,occurred_at:s.string().datetime({offset:!0}),business_id:s.string().min(1).optional(),environment_id:s.string().min(1).optional(),actor_type:s.string().min(1).optional(),actor_id:s.string().min(1).optional(),latency_ms:s.number().nonnegative().finite().optional(),payload:s.string().optional(),schema_version:s.number().int().min(1),upstream_ms:s.number().nonnegative().finite().optional()}).strict(),RT={"subscription.created":"lifecycle","subscription.updated":"lifecycle","subscription.canceled":"lifecycle","payment.succeeded":"lifecycle","payment.failed":"lifecycle","rate_limit.exceeded":"denials","entitlement.changed":"lifecycle","usage.threshold_reached":"usage","usage.recorded":"usage","gateway.request_denied":"denials","change_set.created":"lifecycle","change_set.approved":"lifecycle","change_set.applied":"lifecycle","change_set.rolled_back":"lifecycle","change_set.cancelled":"lifecycle","billing.event_recorded":"lifecycle","authz.decision":"denials","repo.changed":"consumer_activity","automation.rule_fired":"audit","automation.action_succeeded":"audit","automation.action_failed":"audit","automation.action_denied":"denials","automation.notification":"consumer_activity","access_request.created":"consumer_activity","access_request.resolved":"consumer_activity","build.failed":"lifecycle","product.published":"lifecycle","workflow.failed":"lifecycle","pr.review_posted":"consumer_activity"};function ty(t){return RT[t]}var CT=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i,PT=100,NT=50,DT=100,UT=50;var Qo=s.string().regex(CT,"Expected a UUID"),es=s.string().datetime({offset:!0}),rm=s.string().min(1).max(256).regex(/^[^\u0000-\u001f\u007f]+$/,"Control characters are not allowed"),ts=s.object({from:es,to:es}).strict().refine(({from:t,to:e})=>Date.parse(t)<Date.parse(e),"range.from must be before range.to"),im="production",ns=s.object({type:Re.optional(),actorId:rm.optional(),environmentId:s.union([s.literal(im),Qo]).optional()}).strict();function om(t,e){let r=t.filters?.type;r&&ty(r)!==t.domain&&e.addIssue({code:"custom",path:["filters","type"],message:"Event type does not belong to the selected archive domain"})}var ny=s.object({domain:Xo,metric:s.enum(["events","unique_actors"]),interval:s.enum(["hour","day"]),range:ts,filters:ns.optional()}).strict().superRefine(om),zT=s.object({t:es,value:s.number().nonnegative()}).strict(),sF=s.array(zT),ry=s.object({domain:Xo,by:s.enum(["actor_id","type","environment_id"]),k:s.number().int().min(1).max(UT),range:ts,filters:ns.optional()}).strict().superRefine(om),jT=s.object({key:s.string().min(1).max(256),count:s.number().int().nonnegative()}).strict(),aF=s.array(jT),iy=s.object({domain:Xo,range:ts,limit:s.number().int().min(1).max(DT).default(NT),filters:ns.optional()}).strict().superRefine(om),LT=s.object({type:s.string().min(1).max(64),id:rm}).strict(),MT=s.object({id:rm,type:Re,occurredAt:es,businessId:Qo,environmentId:Qo.nullable(),actor:LT.nullable(),payload:s.string().nullable()}).strict(),cF=s.array(MT),BT=s.array(s.number().gt(0).lt(1)).min(1).max(10).refine(t=>new Set(t).size===t.length,"Percentiles must be unique"),oy=s.object({domain:s.literal("usage"),metric:s.union([s.literal("latency_ms"),s.literal("upstream_ms")]),percentiles:BT,range:ts,filters:ns.omit({type:!0}).optional()}).strict(),FT=s.object({percentile:s.number().gt(0).lt(1),value:s.number().nonnegative().nullable()}).strict(),lF=s.array(FT),HT={timeseries:ny,topK:ry,percentiles:oy,eventFeed:iy},VT=Object.keys(HT),uF=s.discriminatedUnion("verb",[s.object({verb:s.literal("timeseries"),query:ny}).strict(),s.object({verb:s.literal("topK"),query:ry}).strict(),s.object({verb:s.literal("percentiles"),query:oy}).strict(),s.object({verb:s.literal("eventFeed"),query:iy}).strict()]),dF=s.object({verb:s.enum(VT),query:s.unknown()}).strict(),pF=s.object({businessIds:s.array(Qo).min(1).max(PT)}).strict().refine(({businessIds:t})=>new Set(t).size===t.length,"Analytics business scope must not contain duplicates");var sy={"1h":3600*1e3,"24h":1440*60*1e3,"7d":10080*60*1e3,"30d":720*60*60*1e3},ay=Object.keys(sy);function nt(t){let e=sy[t];if(e===void 0)throw new Error(`Unknown --range "${t}". Expected one of: ${ay.join(", ")}`);let r=new Date;return{from:new Date(r.getTime()-e).toISOString(),to:r.toISOString()}}function rt(t){return{environmentId:typeof t=="string"&&t.length>0?t:im}}function sm(t){if(!Ce.includes(t))throw new Error(`Unknown --domain "${t}". Expected one of: ${Ce.join(", ")}`);return t}var rs={field:"range",kind:"flag",token:"--range <range>",describe:`Relative window: ${ay.join(" | ")}`,defaultValue:"24h"},is={field:"env",kind:"flag",token:"--env <environmentId>",describe:"Environment id to scope to. Omit for production \u2014 never for 'all environments'."},os={field:"businessId",kind:"positional",token:"<businessIdOrName>",resolveBusiness:!0},ss={businessId:s.string().regex(/^[^/?#\s]+$/,"businessId must not contain '/', '?', '#', or whitespace").describe("The business whose archive to query."),range:s.enum(["1h","24h","7d","30d"]).default("24h").describe("Relative window."),environmentId:s.string().optional().describe("Environment id to scope to. Omit for production. Never returns all environments summed.")},KT=[{opKey:"analytics.timeseries",operationClass:"operate",scope:["businesses:read"],sideEffect:"read",cli:{group:"analytics",command:"timeseries",summary:"Request (or denial) volume over time",args:[os,rs,is,{field:"domain",kind:"flag",token:"--domain <domain>",describe:`Archive domain: ${Ce.join(" | ")}`,defaultValue:"usage"},{field:"interval",kind:"flag",token:"--interval <interval>",describe:"Bucket size: hour | day",defaultValue:"hour"}],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,{result:n}=await t.analyticsQuery(i,{verb:"timeseries",query:{domain:sm(e.domain),metric:"events",interval:e.interval,range:nt(e.range),filters:rt(e.env)}});r({businessId:i,buckets:n},"Timeseries")}},mcp:{tool:"fs_analytics_timeseries",title:"Analytics: volume over time",description:"Event volume bucketed over time for one business, from the event archive. Read-only. Scoped to production unless environmentId is given.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{...ss,domain:s.enum(Ce).default("usage"),interval:s.enum(["hour","day"]).default("hour")},handler:async(t,e)=>t.analyticsQuery(e.businessId,{verb:"timeseries",query:{domain:e.domain??"usage",metric:"events",interval:e.interval??"hour",range:nt(e.range??"24h"),filters:rt(e.environmentId)}})}},{opKey:"analytics.latency",operationClass:"operate",scope:["businesses:read"],sideEffect:"read",cli:{group:"analytics",command:"latency",summary:"Request latency percentiles (p50 / p95 / p99)",args:[os,rs,is],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,{result:n}=await t.analyticsQuery(i,{verb:"percentiles",query:{domain:"usage",metric:"latency_ms",percentiles:[.5,.95,.99],range:nt(e.range),filters:rt(e.env)}});r({businessId:i,percentiles:n},"Latency percentiles")}},mcp:{tool:"fs_analytics_latency",title:"Analytics: latency percentiles",description:"Gateway request latency at p50/p95/p99 for one business. NOTE: this is the WHOLE request including the builder's own backend, so a high number is not necessarily platform overhead. Read-only.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:ss,handler:async(t,e)=>t.analyticsQuery(e.businessId,{verb:"percentiles",query:{domain:"usage",metric:"latency_ms",percentiles:[.5,.95,.99],range:nt(e.range??"24h"),filters:rt(e.environmentId)}})}},{opKey:"analytics.top",operationClass:"operate",scope:["businesses:read"],sideEffect:"read",cli:{group:"analytics",command:"top",summary:"Top callers / event types / environments by volume",args:[os,rs,is,{field:"by",kind:"flag",token:"--by <dimension>",describe:"Break down by: actor_id | type | environment_id",defaultValue:"actor_id"},{field:"domain",kind:"flag",token:"--domain <domain>",describe:`Archive domain: ${Ce.join(" | ")}`,defaultValue:"usage"},{field:"k",kind:"flag",token:"--k <count>",describe:"How many rows (1-50)",defaultValue:"10",parser:t=>Number.parseInt(t,10)}],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,{result:n}=await t.analyticsQuery(i,{verb:"topK",query:{domain:sm(e.domain),by:e.by,k:Number(e.k),range:nt(e.range),filters:rt(e.env)}});r({businessId:i,rows:n},"Top breakdown")}},mcp:{tool:"fs_analytics_top",title:"Analytics: top-K breakdown",description:"Ranked breakdown of archive events by caller, event type, or environment. Read-only.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{...ss,by:s.enum(["actor_id","type","environment_id"]).default("actor_id"),domain:s.enum(Ce).default("usage"),k:s.number().int().min(1).max(50).default(10)},handler:async(t,e)=>t.analyticsQuery(e.businessId,{verb:"topK",query:{domain:e.domain??"usage",by:e.by??"actor_id",k:e.k??10,range:nt(e.range??"24h"),filters:rt(e.environmentId)}})}},{opKey:"analytics.log",operationClass:"operate",scope:["businesses:read"],sideEffect:"read",cli:{group:"analytics",command:"log",summary:"Recent requests \u2014 the live metering signal, newest first",args:[os,rs,is,{field:"domain",kind:"flag",token:"--domain <domain>",describe:`Archive domain: ${Ce.join(" | ")}`,defaultValue:"usage"},{field:"limit",kind:"flag",token:"--limit <count>",describe:"How many rows (1-100)",defaultValue:"25",parser:t=>Number.parseInt(t,10)}],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,{result:n}=await t.analyticsQuery(i,{verb:"eventFeed",query:{domain:sm(e.domain),range:nt(e.range),limit:Number(e.limit),filters:rt(e.env)}});r({businessId:i,events:n},"Recent events")}},mcp:{tool:"fs_analytics_log",title:"Analytics: recent request log",description:"The most recent archived events for one business, newest first. Each row's `payload` carries the request detail (path, statusCode, latencyMs, orgId). Read-only.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{...ss,domain:s.enum(Ce).default("usage"),limit:s.number().int().min(1).max(100).default(25)},handler:async(t,e)=>t.analyticsQuery(e.businessId,{verb:"eventFeed",query:{domain:e.domain??"usage",range:nt(e.range??"24h"),limit:e.limit??25,filters:rt(e.environmentId)}})}}];function cy(t,e){C(t,e,KT)}function ly(t,e){let r=t.command("connect").description("Connection status for GitHub and Stripe (browser-only flows)");r.command("github").description("Print GitHub-connection status").action(async()=>{let n=await e().builderGitHubStatus();L({status:n},"GitHub status")}),r.command("stripe <businessIdOrName>").description("Print Stripe Connect status for a business").action(async i=>{let n=e(),o=await A(n,i),a=await n.businessStripeStatus(o);L({businessId:o,status:a},"Stripe status")})}function GT(t){if(!t||typeof t!="object")return[];let e=t;return Array.isArray(e.data)?e.data:Array.isArray(e.tokens)?e.tokens:Array.isArray(t)?t:[]}var am=[{opKey:"maker_token.read",operationClass:"operate",scope:[],sideEffect:"read",cli:{group:"token",command:"list",summary:"List maker tokens in the current org",args:[],handler:async({client:t,emit:e})=>{let r=GT(await t.managementListMakerTokens());e({count:r.length,tokens:r.map(i=>({id:i.id,name:i.name??null,scopes:i.scopes??[],businessId:i.businessId??null,lastFour:i.lastFour??null,createdAt:i.createdAt??null,revokedAt:i.revokedAt??null}))},`${r.length} token(s)`)}},mcp:{tool:"fs_maker_token_list",title:"List maker tokens",description:"List the workspace's maker tokens (mk_) \u2014 id, label, scopes, last-four, status. Read-only; secrets are never shown. Creating/revoking maker tokens is intentionally not exposed via MCP.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{},handler:async t=>t.managementListMakerTokens()}},{opKey:"maker_token.create",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:"token",command:"create",summary:"Create a new maker token (returns the secret once)",args:[{field:"name",kind:"flag",token:"--name <name>",describe:"Human-friendly token name",required:!0},{field:"scope",kind:"flag",token:"--scope <scope...>",describe:"Scope(s) to attach (e.g. businesses:update businesses:publish)"},{field:"business",kind:"flag",token:"--business <businessId>",describe:"Scope to a specific business"},{field:"restrict",kind:"flag",token:"--restrict <perm...>",describe:"Narrow the token's role bundle to these permissions (e.g. business:read plan:read). Must be within your own permissions."}],handler:async({client:t,args:e,emit:r})=>{let i=await t.managementCreateMakerToken({name:e.name,scopes:e.scope,businessId:e.business,restrictedPermissions:e.restrict});r({result:i},"Token created")}},mcp:null},{opKey:"maker_token.revoke",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:"token",command:"revoke",summary:"Revoke a maker token. Requires --yes.",destructive:!0,yesMessage:"Pass --yes to confirm token revocation.",args:[{field:"tokenId",kind:"positional",token:"<tokenId>"}],handler:async({client:t,args:e,emit:r})=>{let i=e.tokenId;await t.managementRevokeMakerToken(i),r({revoked:i},`Token ${i} revoked`)}},mcp:null},{opKey:"maker_token.rotate",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:"token",command:"rotate",summary:"Rotate a maker token secret (returns the new secret once)",idempotent:!0,args:[{field:"tokenId",kind:"positional",token:"<tokenId>"},{field:"syncToGithub",kind:"flag",token:"--sync-to-github",describe:"Also update the connected GitHub repo FARTHERSHORE_TOKEN secret when this is a platform token"}],handler:async({client:t,args:e,reqOpts:r,emit:i})=>{let n=e.tokenId,o=await t.managementRotateMakerToken(n,{syncToGithub:e.syncToGithub===!0},r);i({result:o},`Token ${n} rotated`)}},mcp:null},{opKey:"maker_token.hard_delete",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:"token",command:"delete",summary:"Permanently delete an already-revoked maker token. Requires --yes.",destructive:!0,yesMessage:"Pass --yes to permanently delete the revoked token row.",args:[{field:"tokenId",kind:"positional",token:"<tokenId>"}],handler:async({client:t,args:e,emit:r})=>{let i=e.tokenId;await t.managementHardDeleteMakerToken(i),r({deleted:i},`Token ${i} permanently deleted`)}},mcp:null}];function uy(t,e){C(t,e,am)}var cm=["gateway_verification","metering","health","tunnel"],ZT="<businessId>",vn="businesses:update",_n="The business id.",it={field:"businessId",kind:"positional",token:ZT};function dy(t){if(!t||typeof t!="object")return[];let e=t;return Array.isArray(e.data)?e.data:Array.isArray(e.backends)?e.backends:Array.isArray(e.tokens)?e.tokens:Array.isArray(t)?t:[]}function WT(t){let e=t.status;if(typeof e=="string"&&e.length>0)return e;let r=typeof t.readinessState=="string"?t.readinessState:null,i=typeof t.provisionStatus=="string"?t.provisionStatus:null;return r??i??"unknown"}function qT(t){return{id:t.id,environmentId:t.environmentId??null,name:t.name,slug:t.slug,transport:t.transportMode,default:t.isDefault??!1,status:WT(t),originUrl:t.originUrl??null,lastSeenAt:t.lastSeenAt??null}}async function lm(t,e,r){if(!r)return null;try{return await bn(t,e,r)}catch(i){throw new b(i instanceof Error?i.message:`Environment "${r}" not found on business ${e}.`,void 0,{code:"ENV_NOT_FOUND"})}}var um=t=>typeof t=="string"&&t.length>0?t.split(",").map(e=>e.trim()).filter(e=>e.length>0):void 0,dm=[{opKey:"backend.read",operationClass:"operate",scope:["businesses:read"],sideEffect:"read",cli:{group:"backend",command:"list",summary:"List backends for a business (id, name, transport, status)",args:[it],handler:async({client:t,args:e,emit:r})=>{let n=dy(await t.builderListBackends(e.businessId)).map(qT);r({count:n.length,backends:n},`${n.length} backend(s)`)}},mcp:{tool:"fs_backend_list",title:"List backends",description:"List a business's backends (origins) \u2014 id, name, slug, transport (direct|tunnel), default flag, and derived status. Read-only.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe("The business id whose backends to list.")},handler:async(t,{businessId:e})=>t.builderListBackends(e)}},{opKey:"backend.create",operationClass:"operate",scope:[vn],sideEffect:"write",cli:{group:"backend",command:"create",summary:"Create a backend (default transport: direct)",idempotent:!0,args:[it,{field:"name",kind:"flag",token:"--name <name>",describe:"Human-friendly backend name",required:!0},{field:"slug",kind:"flag",token:"--slug <slug>",describe:"Stable slug (defaults to a slugified name)"},{field:"env",kind:"flag",token:"--env <environment>",describe:"Scope backend to an environment name or id"},{field:"transport",kind:"flag",token:"--transport <mode>",describe:"Transport mode: direct | tunnel",defaultValue:"direct"},{field:"runner",kind:"flag",token:"--runner <runner>",describe:"embedded | sidecar"},{field:"runtime",kind:"flag",token:"--runtime <runtime>",describe:"Container/runtime descriptor"},{field:"originUrl",kind:"flag",token:"--origin-url <url>",describe:"Builder origin URL (direct)"},{field:"default",kind:"flag",token:"--default",describe:"Mark this backend the business default"}],handler:async({client:t,args:e,reqOpts:r,emit:i,emitDryRunPreview:n})=>{let o=e.businessId,a=await lm(t,o,e.env),c=e.transport==="tunnel"?"tunnel":"direct",l=await t.builderCreateBackend(o,{name:e.name,slug:e.slug,environmentId:a,transportMode:c,runner:e.runner==="embedded"||e.runner==="sidecar"?e.runner:null,runtime:e.runtime??null,originUrl:e.originUrl??null,isDefault:e.default},r);n(l)||i({result:l},"Backend created")}},mcp:{tool:"fs_backend_create",title:"Create a backend",description:"Create a backend (origin) for a business. Pick a transport mode: direct (public HTTPS URL, secured by Ed25519 request signing) or tunnel (private outbound-only cloudflared, secure bring-your-own-backend). Mark it default to route traffic to it.",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!1,openWorldHint:!1},inputSchema:{businessId:s.string().describe("The business id to create the backend in."),name:s.string().describe("Backend name (e.g. 'prod-origin')."),slug:s.string().optional().describe("URL-safe slug; derived from name if omitted."),transportMode:s.enum(["direct","tunnel"]).optional().describe("How the gateway reaches the origin; defaults to direct."),originUrl:s.string().optional().describe("The origin URL (for direct mode)."),isDefault:s.boolean().optional().describe("Route traffic to this backend by default."),...Q},handler:async(t,e)=>t.builderCreateBackend(e.businessId,{name:e.name,slug:e.slug,transportMode:e.transportMode,originUrl:e.originUrl,isDefault:e.isDefault},{idempotencyKey:e.idempotencyKey})}},{opKey:"backend.bind",operationClass:"operate",scope:[vn],sideEffect:"write",cli:{group:"backend",command:"bind",summary:"Bind a logical backend to a direct upstream in one environment",idempotent:!0,args:[it,{field:"backend",kind:"positional",token:"<backend>"},{field:"env",kind:"flag",token:"--env <environment>",describe:"Environment name or id (omit for production)"},{field:"originUrl",kind:"flag",token:"--origin-url <url>",describe:"Concrete direct upstream URL for this environment",required:!0}],handler:async({client:t,args:e,reqOpts:r,emit:i,emitDryRunPreview:n})=>{let o=e.businessId,a=e.backend,c=await lm(t,o,e.env),l=await t.builderBindBackend(o,a,{environmentId:c,originUrl:e.originUrl},r);n(l)||i({result:l},`Backend ${a} bound in ${c??"production"}`)}},mcp:{tool:"fs_backend_bind",title:"Bind a backend upstream",description:"Bind a logical backend id to a concrete direct upstream URL in one environment. Omit environmentId for production.",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(_n),backend:s.string().describe("Logical backend slug."),environmentId:s.string().optional().describe("Preview environment id; omit for production."),originUrl:s.string().url().describe("Concrete direct upstream URL."),...Q},handler:async(t,e)=>t.builderBindBackend(e.businessId,e.backend,{environmentId:e.environmentId??null,originUrl:e.originUrl},{idempotencyKey:e.idempotencyKey})}},{opKey:"backend.delete",operationClass:"operate",scope:[vn],sideEffect:"write",cli:{group:"backend",command:"delete",summary:"Delete a backend (revokes its runtime tokens). Requires --yes.",destructive:!0,yesMessage:"Pass --yes to confirm backend deletion.",args:[it,{field:"backendId",kind:"positional",token:"<backendId>"}],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=e.backendId;await t.builderDeleteBackend(i,n),r({businessId:i,deleted:n},`Backend ${n} deleted`)}},mcp:{tool:"fs_backend_delete",title:"Delete a backend",description:"Delete a backend (origin). Traffic routed to it stops; re-create to restore.",annotations:{readOnlyHint:!1,destructiveHint:!0,idempotentHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(_n),backendId:s.string().describe("The backend id to delete.")},handler:async(t,{businessId:e,backendId:r})=>t.builderDeleteBackend(e,r)}},{opKey:"runtime_token.read",operationClass:"operate",scope:["businesses:read"],sideEffect:"read",cli:{group:"backend tokens",command:"list",summary:"List runtime tokens for a business",args:[it],handler:async({client:t,args:e,emit:r})=>{let i=dy(await t.builderListRuntimeTokens(e.businessId));r({count:i.length,tokens:i},`${i.length} runtime token(s)`)}},mcp:{tool:"fs_runtime_token_list",title:"List runtime tokens",description:"List a business's runtime tokens (fsrt_) \u2014 id, last-four, operations, status. Read-only; secrets are never shown.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(_n)},handler:async(t,{businessId:e})=>t.builderListRuntimeTokens(e)}},{opKey:"runtime_token.mint",operationClass:"operate",scope:[vn],sideEffect:"write",cli:{group:"backend tokens",command:"create",summary:"Create a runtime token (returns FS_RUNTIME_TOKEN once)",idempotent:!0,args:[it,{field:"env",kind:"flag",token:"--env <environment>",describe:"Scope token to an environment name or id"},{field:"backend",kind:"flag",token:"--backend <backendId>",describe:"Bind token to a specific backend"},{field:"kind",kind:"flag",token:"--kind <kind>",describe:"live | test (defaults from env scope)"},{field:"operations",kind:"flag",token:"--operations <list>",describe:`Comma-separated operations: ${cm.join(" | ")}. Default: core's DEFAULT_OPERATIONS. Use tunnel for tunnel backends.`},{field:"meters",kind:"flag",token:"--meters <list>",describe:"Comma-separated allowed meters (default: all business meters)"},{field:"routes",kind:"flag",token:"--routes <list>",describe:"Comma-separated allowed routes"}],handler:async({client:t,args:e,reqOpts:r,emit:i,emitDryRunPreview:n})=>{let o=e.businessId,a=await lm(t,o,e.env),c=e.kind==="test"||e.kind==="live"?e.kind:void 0,l=um(e.operations);if(l){for(let u of l)if(!cm.includes(u))throw new b(`Unknown operation "${u}". Available: ${cm.join(", ")}.`,void 0,{code:"UNKNOWN_RUNTIME_TOKEN_OPERATION"})}let d=await t.builderCreateRuntimeToken(o,{environmentId:a,backendId:e.backend??null,kind:c,operations:l,allowedMeters:um(e.meters),allowedRoutes:um(e.routes)},r);n(d)||i({envVar:"FS_RUNTIME_TOKEN",result:d},"Runtime token created")}},mcp:{tool:"fs_runtime_token_mint",title:"Mint a runtime token",description:"Mint a new runtime token (fsrt_) for a backend. Returns the plaintext token ONCE \u2014 store it now (e.g. as FS_RUNTIME_TOKEN). Operations default to the backend's needs (gateway_verification, metering, health).",returnsOneTimeSecret:!0,annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!1,openWorldHint:!1},inputSchema:{businessId:s.string().describe(_n),backendId:s.string().optional().describe("Bind the token to this backend."),environmentId:s.string().optional().describe("Scope to a preview environment (omit for production)."),kind:s.enum(["live","test"]).optional().describe("Token kind; defaults from the env scope."),operations:s.array(s.string()).optional().describe("Operations (gateway_verification, metering, health, tunnel)."),...Q},handler:async(t,e)=>t.builderCreateRuntimeToken(e.businessId,{backendId:e.backendId??null,environmentId:e.environmentId??null,kind:e.kind,operations:e.operations},{idempotencyKey:e.idempotencyKey})}},{opKey:"runtime_token.rotate",operationClass:"operate",scope:[vn],sideEffect:"write",cli:{group:"backend tokens",command:"rotate",summary:"Rotate a runtime token (returns a fresh FS_RUNTIME_TOKEN once)",args:[it,{field:"tokenId",kind:"positional",token:"<tokenId>"}],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=e.tokenId,o=await t.builderRotateRuntimeToken(i,n);r({envVar:"FS_RUNTIME_TOKEN",result:o},`Runtime token ${n} rotated`)}},mcp:{tool:"fs_runtime_token_rotate",title:"Rotate a runtime token",description:"Rotate a runtime token: mint a fresh secret carrying the same scope and revoke the old one. Returns the new plaintext token ONCE.",returnsOneTimeSecret:!0,annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!1,openWorldHint:!1},inputSchema:{businessId:s.string().describe(_n),tokenId:s.string().describe("The runtime token id to rotate."),...Q},handler:async(t,e)=>t.builderRotateRuntimeToken(e.businessId,e.tokenId,{idempotencyKey:e.idempotencyKey})}},{opKey:"runtime_token.revoke",operationClass:"operate",scope:[vn],sideEffect:"write",cli:{group:"backend tokens",command:"revoke",summary:"Revoke a runtime token. Requires --yes.",destructive:!0,yesMessage:"Pass --yes to confirm runtime token revocation.",args:[it,{field:"tokenId",kind:"positional",token:"<tokenId>"}],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=e.tokenId;await t.builderRevokeRuntimeToken(i,n),r({businessId:i,revoked:n},`Runtime token ${n} revoked`)}},mcp:{tool:"fs_runtime_token_revoke",title:"Revoke a runtime token",description:"Revoke a runtime token. The backend using it stops verifying.",annotations:{readOnlyHint:!1,destructiveHint:!0,idempotentHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(_n),tokenId:s.string().describe("The runtime token id to revoke.")},handler:async(t,{businessId:e,tokenId:r})=>t.builderRevokeRuntimeToken(e,r)}}];function py(t,e){C(t,e,dm)}var my=new Set(["SUCCEEDED","SUCCESS"]),fy=new Set(["FAILED","ERROR","CANCELLED","TIMED_OUT"]),gy="SUPERSEDED";function JT(t){let r=(t?.data??t)?.builds;return Array.isArray(r)?r:[]}var Pe=t=>typeof t=="string"?t:null;async function hy(t,e){let r=e.intervalMs??5e3,i=e.sleep??(u=>new Promise(p=>setTimeout(p,u))),n=e.now??(()=>Date.now()),o=n()+e.timeoutMs,a={status:"UNKNOWN",buildId:e.buildId??null,ref:null,error:null,timedOut:!1},c=e.buildId??null,l=null,d=e.buildId!=null;for(;;){let u=await t.builderFrontendStatus(e.businessId,e.environmentId),p=JT(u),m=(c?p.find(f=>Pe(f.id)===c):void 0)??p[0];if(m){let f=Pe(m.status)??"UNKNOWN",v=Pe(m.id);a={status:f,buildId:v,ref:Pe(m.ref),error:Pe(m.error),timedOut:!1};let w=my.has(f)||fy.has(f)||f===gy;if(d||(d=!0,w&&(l=v)),l!==null&&v===l){if(n()>=o)return{...a,timedOut:!0};await i(Math.min(r,Math.max(0,o-n())));continue}if(l=null,my.has(f)||fy.has(f))return a;if(f===gy){let E=p.find(U=>Pe(U.ref)===Pe(m.ref)&&Pe(U.id)!==Pe(m.id));c=E?Pe(E.id):null}}if(n()>=o)return{...a,timedOut:!0};await i(Math.min(r,Math.max(0,o-n())))}}var pm="The business id or slug.",by="Scope to a preview environment (omit for production).",vy={field:"businessId",kind:"positional",token:"<businessIdOrSlug>",describe:pm,resolveBusiness:!0},_y={field:"env",kind:"flag",token:"--env <environmentId>",describe:"Scope to a preview environment id (omit for production)."};async function yy(t,e){return A(t,e)}var mm=[{opKey:"frontend.status",operationClass:"operate",scope:["businesses:read"],sideEffect:"read",cli:{group:"frontend",command:"status",summary:"Show the current frontend release, recent releases, and recent builds (incl. failure reasons)",args:[vy,_y,{field:"wait",kind:"flag",token:"--wait",describe:"Block until the in-flight build finishes, then report it; exit non-zero if it failed. Use after a push or release instead of polling this command in a loop."},{field:"timeout",kind:"flag",token:"--timeout <seconds>",describe:"How long --wait waits before giving up (default 600)."}],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=e.env;if(!e.wait){r(await t.builderFrontendStatus(i,n),"Frontend status");return}let o=Number(e.timeout??600),a=await hy(t,{businessId:i,environmentId:n,buildId:null,timeoutMs:(Number.isFinite(o)&&o>0?o:600)*1e3});if(a.timedOut)throw new b(`Frontend build did not finish within the timeout (last status: ${a.status})`,0,{code:"BUILD_WAIT_TIMEOUT",details:{build:a}});if(a.status!=="SUCCEEDED"&&a.status!=="SUCCESS")throw new b(`Frontend build ${a.status}${a.error?`: ${a.error}`:""}`,0,{code:"BUILD_FAILED",details:{build:a}});let c=await t.builderFrontendStatus(i,n);r({status:c,build:a},"Frontend build succeeded")}},mcp:{tool:"fs_frontend_status",title:"Get frontend status",description:"Read a business's current frontend serve state (uiMode, active release hash + producing build, pin flag), the recent SUCCEEDED releases (rollback targets), and the recent builds \u2014 a FAILED build's `error` explains why a deploy didn't go live. Read-only.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(pm),environmentId:s.string().optional().describe(by)},handler:async(t,e)=>{let r=await yy(t,e.businessId);return t.builderFrontendStatus(r,e.environmentId)}}},{opKey:"frontend.rollback",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:"frontend",command:"rollback",summary:"Roll the business frontend back to a prior release (re-activate its releaseId)",idempotent:!0,args:[vy,{field:"releaseId",kind:"flag",token:"--release-id <releaseId>",describe:"The prior release id (manifest hash) to re-activate \u2014 see `frontend status`.",required:!0},_y],handler:async({client:t,args:e,reqOpts:r,emit:i,emitDryRunPreview:n})=>{let o=await t.builderFrontendRollback(e.businessId,{releaseId:e.releaseId,environmentId:e.env},r);n(o)||i({result:o},"Frontend rolled back")}},mcp:{tool:"fs_frontend_rollback",title:"Roll back a business frontend",description:"Roll a business's frontend back to a prior release by its releaseId (manifest hash, from fs_frontend_status). Flips the live pointer back and pins it. The releaseId must belong to this target's build history.",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(pm),releaseId:s.string().describe("The prior release id (manifest hash) to re-activate."),environmentId:s.string().optional().describe(by),...Q},handler:async(t,e)=>{let r=await yy(t,e.businessId);return t.builderFrontendRollback(r,{releaseId:e.releaseId,environmentId:e.environmentId},{idempotencyKey:e.idempotencyKey})}}}];function ky(t,e){C(t,e,mm)}function wr(t,e){if(te()==="json"){console.log($f({schema_version:1,ok:!0,data:t}));return}ti(e)}function xy(t,e){t.command("link").argument("[business]","Business id, name, or hostname slug. Omit to show the current link.").option("--env <environment>","Also target an environment, so --env can be omitted too. Stored by NAME (a recreated preview env re-resolves; a stale id would not).").description("Target this directory at a business so later commands can omit it (like `railway link`). Omit the argument to show what is currently targeted.").action(async(r,i)=>{let n=process.cwd();if(!r){let a=R_();if(!a){wr({linked:null},"No business linked here. Run `farthershore link <business>`.");return}let c=St(n)?.environment??null;wr({linked:a.ref,environment:c,source:a.source,directory:n},`Targeting ${a.ref}${c?` (env ${c})`:" (production)"} \u2014 from ${a.source}`);return}let o=await A(e(),r);mf(n,{businessId:o,label:r,...i.env?{environment:i.env}:{}}),wr({linked:o,label:r,environment:i.env??null,directory:n},`Linked ${n} to ${r} (${o})`+(i.env?` in environment ${i.env}`:""))}),t.command("unlink").description("Stop targeting a business from this directory.").action(()=>{let r=process.cwd();if(!ff(r)){let n=St(r);if(n)throw new b(`No link on this directory. It inherits ${n.businessId} from a parent directory \u2014 run \`farthershore unlink\` there to remove it.`,0,{code:"LINK_INHERITED"});wr({unlinked:!1},"Nothing linked here.");return}wr({unlinked:!0,directory:r},`Unlinked ${r}`)})}import{existsSync as fm,mkdirSync as oA,readdirSync as sA,readFileSync as aA,writeFileSync as cA}from"node:fs";import{basename as gm,dirname as $r,join as lA,resolve as hm}from"node:path";import{createInterface as uA}from"node:readline/promises";import{stdin as Ey,stdout as wy}from"node:process";var Iy=`/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550
131
137
  components.css \u2014 styles for the SDK-rendered \`.fs-*\` markup.
132
138
 
133
139
  The @farthershore/farthershore-js components are headless: they emit
@@ -2011,9 +2017,9 @@ img.fs-logo {
2011
2017
  font-size: var(--text-sm);
2012
2018
  line-height: 1.5;
2013
2019
  }
2014
- `;var K$="@farthershore/farthershore-js";function G$(t){let e={...t.packageName?{name:t.packageName}:{},private:!0,type:"module",scripts:{dev:"vite",build:"tsc -b && vite build",preview:"vite preview"},dependencies:{[K$]:t.frontendSdkRange,react:"^19.0.0","react-dom":"^19.0.0"},devDependencies:{"@types/react":"^19.0.0","@types/react-dom":"^19.0.0","@vitejs/plugin-react":"^4.3.4",typescript:"^6.0.2",vite:"^6.0.0"}};return`${JSON.stringify(e,null,2)}
2015
- `}function W$(t){return["<!doctype html>",'<html lang="en">'," <head>",' <meta charset="UTF-8" />',' <meta name="viewport" content="width=device-width, initial-scale=1.0" />',` <title>${t}</title>`," </head>"," <body>",' <div id="root"></div>',' <script type="module" src="/src/App.tsx"></script>'," </body>","</html>",""].join(`
2016
- `)}function q$(){return`// Customer-facing portal \u2014 the editable frontend for your business.
2020
+ `;var YT="@farthershore/farthershore-js";function XT(t){let e={...t.packageName?{name:t.packageName}:{},private:!0,type:"module",scripts:{dev:"vite",build:"tsc -b && vite build",preview:"vite preview"},dependencies:{[YT]:t.frontendSdkRange,react:"^19.0.0","react-dom":"^19.0.0"},devDependencies:{"@types/react":"^19.0.0","@types/react-dom":"^19.0.0","@vitejs/plugin-react":"^4.3.4",typescript:"^6.0.2",vite:"^6.0.0"}};return`${JSON.stringify(e,null,2)}
2021
+ `}function QT(t){return["<!doctype html>",'<html lang="en">'," <head>",' <meta charset="UTF-8" />',' <meta name="viewport" content="width=device-width, initial-scale=1.0" />',` <title>${t}</title>`," </head>"," <body>",' <div id="root"></div>',' <script type="module" src="/src/App.tsx"></script>'," </body>","</html>",""].join(`
2022
+ `)}function eA(){return`// Customer-facing portal \u2014 the editable frontend for your business.
2017
2023
  //
2018
2024
  // PORTAL CUSTOMIZATION = EDIT THIS \`frontend/\` TREE (the fork model). The
2019
2025
  // platform serves a generic managed template by default; once you edit and
@@ -2093,7 +2099,7 @@ createRoot(root).render(
2093
2099
  </FartherShoreRoot>
2094
2100
  </StrictMode>,
2095
2101
  );
2096
- `}function J$(){return`:root {
2102
+ `}function tA(){return`:root {
2097
2103
  color-scheme: light;
2098
2104
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
2099
2105
  color: #18181b;
@@ -2125,28 +2131,28 @@ body {
2125
2131
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
2126
2132
  align-items: start;
2127
2133
  }
2128
- `}function Y$(){return`${JSON.stringify({compilerOptions:{target:"ES2022",useDefineForClassFields:!0,lib:["DOM","DOM.Iterable","ES2022"],allowJs:!1,skipLibCheck:!0,esModuleInterop:!0,allowSyntheticDefaultImports:!0,strict:!0,forceConsistentCasingInFileNames:!0,module:"ESNext",moduleResolution:"Bundler",resolveJsonModule:!0,isolatedModules:!0,noEmit:!0,jsx:"react-jsx",types:["vite/client"]},include:["src"],references:[]},null,2)}
2129
- `}function X$(){return"# Styling\n\nThe `@farthershore/farthershore-js` components are **headless** \u2014 they render\nmarkup with stable `.fs-*` class names and ship no CSS of their own. All of\nthis frontend's styling is plain CSS in `src/`, and it's yours to edit.\n\n## Where the styles live\n\n| File | What it holds |\n| ------------------------ | ----------------------------------------------------------------------------- |\n| `src/styles/components.css` | Styles for the managed components (the `.fs-*` classes) + the `--*` theme-knob tokens. |\n| `src/styles.css` | This page's own layout (`.shell`, `.topbar`, `.grid`). |\n\n`src/App.tsx` imports `components.css` first, then `styles.css`, so your page\nstyles win same-specificity cascade ties.\n\n## The theme knobs\n\nRetheme everything by overriding the `--*` custom properties at the top of\n`components.css`. A few of the knobs:\n\n| Token | Default | Controls |\n| --------------- | --------- | ---------------------------------------- |\n| `--color-brand` | `#4f46e5` | Brand marks (logo dot, focus rings) |\n| `--color-bg` | `#ffffff` | Page background |\n| `--color-ink` | `#171717` | Primary text + primary (CTA) button fill |\n| `--radius` | `14px` | Corner radius |\n| `--font-sans` | Figtree | UI font (`--font-mono` for code) |\n| `--text-*` | 11-40px | Type scale (one token per size) |\n| `--space-1..8` | 4-48px | Spacing ramp |\n\nThere is no built-in theme system - theming is a design decision you make in\nthis CSS, under a selector you own.\n\n## The `.fs-*` class-hook contract\n\nThe `.fs-*` class names the components render are a stable API - they don't\nchange without a major SDK version. Style against them (the rules in\n`components.css` are just the defaults), or hang your own classes on any\ncomponent via its `className` prop.\n\n## The three `fs` touchpoints (everything else is generic)\n\n- `.fs-*` class hooks - the markup the managed components render.\n- `--fs-bar-pct` - usage/quota bars set this inline to a live percentage; the\n width rule in `components.css` reads `var(--fs-bar-pct, 0%)`.\n- `--fs-color-brand` - the one variable the SDK READS from your CSS: the\n favicon generator colors the default tab mark with it. `components.css`\n bridges it to your `--color-brand`.\n\n(Plus `display: contents` on a few a11y gate wrappers - structural, not\nstyling.)\n"}function Q$(){return`import { defineConfig } from "vite";
2134
+ `}function nA(){return`${JSON.stringify({compilerOptions:{target:"ES2022",useDefineForClassFields:!0,lib:["DOM","DOM.Iterable","ES2022"],allowJs:!1,skipLibCheck:!0,esModuleInterop:!0,allowSyntheticDefaultImports:!0,strict:!0,forceConsistentCasingInFileNames:!0,module:"ESNext",moduleResolution:"Bundler",resolveJsonModule:!0,isolatedModules:!0,noEmit:!0,jsx:"react-jsx",types:["vite/client"]},include:["src"],references:[]},null,2)}
2135
+ `}function rA(){return"# Styling\n\nThe `@farthershore/farthershore-js` components are **headless** \u2014 they render\nmarkup with stable `.fs-*` class names and ship no CSS of their own. All of\nthis frontend's styling is plain CSS in `src/`, and it's yours to edit.\n\n## Where the styles live\n\n| File | What it holds |\n| ------------------------ | ----------------------------------------------------------------------------- |\n| `src/styles/components.css` | Styles for the managed components (the `.fs-*` classes) + the `--*` theme-knob tokens. |\n| `src/styles.css` | This page's own layout (`.shell`, `.topbar`, `.grid`). |\n\n`src/App.tsx` imports `components.css` first, then `styles.css`, so your page\nstyles win same-specificity cascade ties.\n\n## The theme knobs\n\nRetheme everything by overriding the `--*` custom properties at the top of\n`components.css`. A few of the knobs:\n\n| Token | Default | Controls |\n| --------------- | --------- | ---------------------------------------- |\n| `--color-brand` | `#4f46e5` | Brand marks (logo dot, focus rings) |\n| `--color-bg` | `#ffffff` | Page background |\n| `--color-ink` | `#171717` | Primary text + primary (CTA) button fill |\n| `--radius` | `14px` | Corner radius |\n| `--font-sans` | Figtree | UI font (`--font-mono` for code) |\n| `--text-*` | 11-40px | Type scale (one token per size) |\n| `--space-1..8` | 4-48px | Spacing ramp |\n\nThere is no built-in theme system - theming is a design decision you make in\nthis CSS, under a selector you own.\n\n## The `.fs-*` class-hook contract\n\nThe `.fs-*` class names the components render are a stable API - they don't\nchange without a major SDK version. Style against them (the rules in\n`components.css` are just the defaults), or hang your own classes on any\ncomponent via its `className` prop.\n\n## The three `fs` touchpoints (everything else is generic)\n\n- `.fs-*` class hooks - the markup the managed components render.\n- `--fs-bar-pct` - usage/quota bars set this inline to a live percentage; the\n width rule in `components.css` reads `var(--fs-bar-pct, 0%)`.\n- `--fs-color-brand` - the one variable the SDK READS from your CSS: the\n favicon generator colors the default tab mark with it. `components.css`\n bridges it to your `--color-brand`.\n\n(Plus `display: contents` on a few a11y gate wrappers - structural, not\nstyling.)\n"}function iA(){return`import { defineConfig } from "vite";
2130
2136
  import react from "@vitejs/plugin-react";
2131
2137
 
2132
2138
  export default defineConfig({
2133
2139
  plugins: [react()],
2134
2140
  });
2135
- `}function l_(t){let e=t.productName??"Farther Shore Business";return[{path:"frontend/package.json",content:G$(t)},{path:"frontend/index.html",content:W$(e)},{path:"frontend/src/App.tsx",content:q$()},{path:"frontend/src/styles.css",content:J$()},{path:"frontend/src/styles/components.css",content:c_},{path:"frontend/STYLING.md",content:X$()},{path:"frontend/tsconfig.json",content:Y$()},{path:"frontend/vite.config.ts",content:Q$()}]}var pr=op,sO="1.1.0",aO="0.21.1";function cO(t){if(!t)throw new b(`--template is required. Choose one of: ${xe.join(", ")}.`,void 0,{code:"INIT_TEMPLATE_REQUIRED"});let e=t.toLowerCase();if(!xe.includes(e))throw new b(`Unknown template "${t}". Choose one of: ${xe.join(", ")}.`,void 0,{code:"INIT_TEMPLATE_UNKNOWN"});return e}var lO="limits: [requestsMeter.perMinute(600)],";function uO(t){let e=t.pricing,r=t.kind==="free",i=[` name: "${dO(t)}",`];r?i.push(" price: fs.free(),"):e.recurring_fee_cents>0&&i.push(` price: fs.money.usd(${e.recurring_fee_cents/100}).${e.billing_interval==="year"?"yearly":"monthly"}(),`);let n=(e.meters??[]).filter(o=>typeof o.dimension=="string").map(o=>`${o.dimension}: { micros: ${o.price_per_unit_micros??0} }`);if(n.length>0&&i.push(` meter: { ${n.join(", ")} },`),(e.grants??[]).length>0){let o=(e.grants??[]).map(Ap).join(", ");i.push(` grants: [exampleRoute, ${o}],`)}else i.push(" grants: [exampleRoute],");return e.trial_days>0&&i.push(` trialDays: ${e.trial_days},`),i.push(` ${lO}`),i}function p_(t){let e=[];e.push('import * as fs from "@farthershore/business";'),e.push(""),e.push("const requestsMeter = fs.requests();"),e.push(""),e.push('const exampleRoute = fs.route("/v1/example", { get: {} });'),e.push(""),e.push(`const ${t.kind}Plan = fs.plan("${t.kind}", {`);for(let r of uO(t))e.push(r);return e.push("});"),e.push(""),e.push("export default fs.business();"),e.push(""),e.join(`
2136
- `)}function dO(t){return t.label.split(" \u2014 ")[0]??t.label}function Ap(t){return Array.isArray(t)?`[${t.map(Ap).join(", ")}]`:t&&typeof t=="object"?`{ ${Object.entries(t).map(([r,i])=>`${/^[A-Za-z_$][\w$]*$/.test(r)?r:JSON.stringify(r)}: ${Ap(i)}`).join(", ")} }`:JSON.stringify(t)}function pO(t,e=pr){let r=dr(e),i=c=>r==="."?c:`${r}/${c}`,n=Tp(r)==="business"?dr(r):r,o=c=>n==="."?c:iO(n,c),a=l_({frontendSdkRange:aO}).map(c=>({path:o(c.path),content:c.content}));return[{path:o(".gitignore"),content:_O()},{path:e,content:p_(t)},{path:i("package.json"),content:bO(e)},{path:i("tsconfig.json"),content:vO()},...a]}function mO(t){let e=dr(t);if(!Op(e))return null;let r=Rp(t),i=[],n=new Set(["node_modules","dist","__tests__","__fixtures__","__mocks__"]),o=a=>{let c;try{c=tO(a,{withFileTypes:!0})}catch{return}for(let l of c){if(l.isSymbolicLink())continue;let d=Rp(a,l.name);if(l.isDirectory()){n.has(l.name)||o(d);continue}l.isFile()&&/\.(?:ts|tsx|mts|cts)$/.test(l.name)&&!/\.d\.[cm]?ts$/.test(l.name)&&!/\.(?:test|spec)\.[cm]?tsx?$/.test(l.name)&&i.push(d)}};o(e),i.sort();for(let a of i)if(a!==r)try{if(fO(nO(a,"utf-8")))return a}catch{}return null}function fO(t){let e=gO(t),r=hO(e);for(let i of e.matchAll(/import\s+\*\s+as\s+([A-Za-z_$][\w$]*)\s+from\s+["']@farthershore\/business["']/g))if(new RegExp(`\\b${i[1]}\\s*\\.\\s*business\\s*\\(`).test(r))return!0;for(let i of e.matchAll(/import\s*\{([^}]*)\}\s*from\s*["']@farthershore\/business["']/gs))for(let n of i[1].split(",")){let o=/^\s*business(?:\s+as\s+([A-Za-z_$][\w$]*))?\s*$/.exec(n);if(!o)continue;let a=o[1]??"business";if(new RegExp(`\\b${a}\\s*\\(`).test(r))return!0}return!1}function gO(t){let e="",r,i=!1;for(let n=0;n<t.length;n+=1){let o=t[n],a=t[n+1];if(r){e+=o,i?i=!1:o==="\\"?i=!0:o===r&&(r=void 0);continue}if(o==="'"||o==='"'||o==="`"){r=o,e+=o;continue}if(o==="/"&&a==="/"){for(;n<t.length&&t[n]!==`
2141
+ `}function Sy(t){let e=t.productName??"Farther Shore Business";return[{path:"frontend/package.json",content:XT(t)},{path:"frontend/index.html",content:QT(e)},{path:"frontend/src/App.tsx",content:eA()},{path:"frontend/src/styles.css",content:tA()},{path:"frontend/src/styles/components.css",content:Iy},{path:"frontend/STYLING.md",content:rA()},{path:"frontend/tsconfig.json",content:nA()},{path:"frontend/vite.config.ts",content:iA()}]}var Or=jp,dA="2.0.0",pA="0.23.3";function mA(t){if(!t)throw new b(`--template is required. Choose one of: ${Ee.join(", ")}.`,void 0,{code:"INIT_TEMPLATE_REQUIRED"});let e=t.toLowerCase();if(!Ee.includes(e))throw new b(`Unknown template "${t}". Choose one of: ${Ee.join(", ")}.`,void 0,{code:"INIT_TEMPLATE_UNKNOWN"});return e}var fA="limits: [requestsMeter.perMinute(600)],";function gA(t){let e=t.pricing,r=t.kind==="free",i=[` name: "${hA(t)}",`];r?i.push(" price: fs.free(),"):e.recurring_fee_cents>0&&i.push(` price: fs.money.usd(${e.recurring_fee_cents/100}).${e.billing_interval==="year"?"yearly":"monthly"}(),`);let n=(e.meters??[]).filter(o=>typeof o.dimension=="string").map(o=>`${o.dimension}: { micros: ${o.price_per_unit_micros??0} }`);if(n.length>0&&i.push(` meter: { ${n.join(", ")} },`),(e.grants??[]).length>0){let o=(e.grants??[]).map(bm).join(", ");i.push(` grants: [exampleRoute, ${o}],`)}else i.push(" grants: [exampleRoute],");return e.trial_days>0&&i.push(` trialDays: ${e.trial_days},`),i.push(` ${fA}`),i}function $y(t){let e=[];e.push('import * as fs from "@farthershore/business";'),e.push(""),e.push("const requestsMeter = fs.requests();"),e.push(""),e.push('const exampleRoute = fs.route("/v1/example", { get: { costs: [requestsMeter.fixed(1)] } });'),e.push(""),e.push(`const ${t.kind}Plan = fs.plan("${t.kind}", {`);for(let r of gA(t))e.push(r);return e.push("});"),e.push(""),e.push("export default fs.business();"),e.push(""),e.join(`
2142
+ `)}function hA(t){return t.label.split(" \u2014 ")[0]??t.label}function bm(t){return Array.isArray(t)?`[${t.map(bm).join(", ")}]`:t&&typeof t=="object"?`{ ${Object.entries(t).map(([r,i])=>`${/^[A-Za-z_$][\w$]*$/.test(r)?r:JSON.stringify(r)}: ${bm(i)}`).join(", ")} }`:JSON.stringify(t)}function bA(t,e=Or){let r=$r(e),i=c=>r==="."?c:`${r}/${c}`,n=gm(r)==="business"?$r(r):r,o=c=>n==="."?c:lA(n,c),a=Sy({frontendSdkRange:pA}).map(c=>({path:o(c.path),content:c.content}));return[{path:o(".gitignore"),content:SA()},{path:e,content:$y(t)},{path:i("package.json"),content:xA(e)},{path:i("tsconfig.json"),content:IA()},...a]}function vA(t){let e=$r(t);if(!fm(e))return null;let r=hm(t),i=[],n=new Set(["node_modules","dist","__tests__","__fixtures__","__mocks__"]),o=a=>{let c;try{c=sA(a,{withFileTypes:!0})}catch{return}for(let l of c){if(l.isSymbolicLink())continue;let d=hm(a,l.name);if(l.isDirectory()){n.has(l.name)||o(d);continue}l.isFile()&&/\.(?:ts|tsx|mts|cts)$/.test(l.name)&&!/\.d\.[cm]?ts$/.test(l.name)&&!/\.(?:test|spec)\.[cm]?tsx?$/.test(l.name)&&i.push(d)}};o(e),i.sort();for(let a of i)if(a!==r)try{if(_A(aA(a,"utf-8")))return a}catch{}return null}function _A(t){let e=yA(t),r=kA(e);for(let i of e.matchAll(/import\s+\*\s+as\s+([A-Za-z_$][\w$]*)\s+from\s+["']@farthershore\/business["']/g))if(new RegExp(`\\b${i[1]}\\s*\\.\\s*business\\s*\\(`).test(r))return!0;for(let i of e.matchAll(/import\s*\{([^}]*)\}\s*from\s*["']@farthershore\/business["']/gs))for(let n of i[1].split(",")){let o=/^\s*business(?:\s+as\s+([A-Za-z_$][\w$]*))?\s*$/.exec(n);if(!o)continue;let a=o[1]??"business";if(new RegExp(`\\b${a}\\s*\\(`).test(r))return!0}return!1}function yA(t){let e="",r,i=!1;for(let n=0;n<t.length;n+=1){let o=t[n],a=t[n+1];if(r){e+=o,i?i=!1:o==="\\"?i=!0:o===r&&(r=void 0);continue}if(o==="'"||o==='"'||o==="`"){r=o,e+=o;continue}if(o==="/"&&a==="/"){for(;n<t.length&&t[n]!==`
2137
2143
  `;)n+=1;e+=`
2138
2144
  `;continue}if(o==="/"&&a==="*"){for(n+=2;n<t.length&&!(t[n]==="*"&&t[n+1]==="/");)e+=t[n]===`
2139
2145
  `?`
2140
- `:" ",n+=1;n+=1;continue}e+=o}return e}function hO(t){let e="",r,i=!1,n=!1;for(let o=0;o<t.length;o+=1){let a=t[o];if(r){e+=a===`
2146
+ `:" ",n+=1;n+=1;continue}e+=o}return e}function kA(t){let e="",r,i=!1,n=!1;for(let o=0;o<t.length;o+=1){let a=t[o];if(r){e+=a===`
2141
2147
  `?`
2142
2148
  `:" ",i?i=!1:a==="\\"?i=!0:a===r&&(r=void 0,n=!0);continue}if(a==="'"||a==='"'||a==="`"){r=a,e+=" ";continue}if(/\s/.test(a)){e+=a;continue}if(/[A-Za-z_$]/.test(a)){let c=a;for(;/[A-Za-z0-9_$]/.test(t[o+1]??"");)c+=t[++o];e+=c,n=!["await","case","delete","in","instanceof","new","return","throw","typeof","void","yield"].includes(c);continue}if(/[0-9]/.test(a)){for(e+=a;/[A-Za-z0-9_.]/.test(t[o+1]??"");)e+=t[++o];n=!0;continue}if(a==="/"&&!n){e+=" ";let c=!1,l=!1;for(;++o<t.length;){let d=t[o];if(e+=d===`
2143
2149
  `?`
2144
- `:" ",l)l=!1;else if(d==="\\")l=!0;else if(d==="[")c=!0;else if(d==="]")c=!1;else if(d==="/"&&!c){for(;/[A-Za-z]/.test(t[o+1]??"");)e+=" ",o+=1;break}}n=!0;continue}e+=a,n=/[)\]}]/.test(a)}return e}function bO(t){let e=Tp(dr(t))==="business"?".":Tp(t);return`${JSON.stringify({private:!0,type:"module",scripts:{build:`farthershore-manifest-build --entry ${e} --out business-build.json`,validate:`farthershore-manifest-build --entry ${e} --out business-build.json`},dependencies:{"@farthershore/business":sO},devDependencies:{typescript:"^6.0.2"}},null,2)}
2145
- `}function vO(){return`${JSON.stringify({compilerOptions:{target:"ES2022",useDefineForClassFields:!0,module:"NodeNext",moduleResolution:"NodeNext",strict:!0,noEmit:!0,skipLibCheck:!0},include:["**/*.ts"]},null,2)}
2146
- `}function _O(){return["# OS",".DS_Store","Thumbs.db","","# Dependencies and local output","business/node_modules/","business/business-build.json","business/manifest-diagnostics.json","frontend/node_modules/","frontend/dist/","business-build.json","manifest-diagnostics.json","","# Local env + tooling",".env",".env.local",".vscode/",".idea/",""].join(`
2147
- `)}function yO(){return mp().map((t,e)=>` ${e+1}) ${t.kind.padEnd(8)} \u2014 ${t.description}`).join(`
2148
- `)}function kO(t){let e=t.pricing,r=(e.meters??[]).map(n=>`${n.dimension} @ ${n.price_per_unit_micros} micros/unit`).join(", "),i=[` recurring_fee_cents ${e.recurring_fee_cents}`,` recurring credit (grant) ${rr(e)}`,` one-time credit (grant) ${qt(e)}`,` trial_days ${e.trial_days}`];return r&&i.push(` meters ${r}`),i.join(`
2149
- `)}async function xO(t){t.log("FartherShore init \u2014 pick a starter plan preset:"),t.log(""),t.log(yO()),t.log("");let e=(await t.ask("Preset (number or name, blank to cancel): ")).trim();if(!e)return null;let r=Number.parseInt(e,10),i=null;if(Number.isInteger(r)&&r>=1&&r<=xe.length?i=xe[r-1]??null:xe.includes(e.toLowerCase())&&(i=e.toLowerCase()),!i)throw new b(`Unknown preset "${e}". Choose one of: ${xe.join(", ")}.`,void 0,{code:"INIT_TEMPLATE_UNKNOWN"});t.log(""),t.log(`Preview \u2014 ${Ro(i).label}:`),t.log(kO(Ro(i))),t.log("");let n=(await t.ask(`Output path (default: ${pr}): `)).trim();return{kind:i,path:n||pr}}function m_(t){t.command("init").description("Scaffold a starter business/index.ts from a named plan preset (free | starter | pro | prepaid | metered)").option("--template <kind>",`Plan preset to scaffold. One of: ${xe.join(" | ")}`).option("--force","Overwrite existing scaffold files (business.ts, routes.ts, package.json, tsconfig.json, frontend/\u2026) if present").option("--path <path>","Output path for the generated business config (default: ./business/index.ts)").addHelpText("after",`
2150
+ `:" ",l)l=!1;else if(d==="\\")l=!0;else if(d==="[")c=!0;else if(d==="]")c=!1;else if(d==="/"&&!c){for(;/[A-Za-z]/.test(t[o+1]??"");)e+=" ",o+=1;break}}n=!0;continue}e+=a,n=/[)\]}]/.test(a)}return e}function xA(t){let e=gm($r(t))==="business"?".":gm(t);return`${JSON.stringify({private:!0,type:"module",scripts:{build:`farthershore-manifest-build --entry ${e} --out business-build.json`,validate:`farthershore-manifest-build --entry ${e} --out business-build.json`},dependencies:{"@farthershore/business":dA},devDependencies:{typescript:"^6.0.2"}},null,2)}
2151
+ `}function IA(){return`${JSON.stringify({compilerOptions:{target:"ES2022",useDefineForClassFields:!0,module:"NodeNext",moduleResolution:"NodeNext",strict:!0,noEmit:!0,skipLibCheck:!0},include:["**/*.ts"]},null,2)}
2152
+ `}function SA(){return["# OS",".DS_Store","Thumbs.db","","# Dependencies and local output","business/node_modules/","business/business-build.json","business/manifest-diagnostics.json","frontend/node_modules/","frontend/dist/","business-build.json","manifest-diagnostics.json","","# Local env + tooling",".env",".env.local",".vscode/",".idea/",""].join(`
2153
+ `)}function EA(){return qp().map((t,e)=>` ${e+1}) ${t.kind.padEnd(8)} \u2014 ${t.description}`).join(`
2154
+ `)}function wA(t){let e=t.pricing,r=(e.meters??[]).map(n=>`${n.dimension} @ ${n.price_per_unit_micros} micros/unit`).join(", "),i=[` recurring_fee_cents ${e.recurring_fee_cents}`,` recurring credit (grant) ${vr(e)}`,` one-time credit (grant) ${cn(e)}`,` trial_days ${e.trial_days}`];return r&&i.push(` meters ${r}`),i.join(`
2155
+ `)}async function $A(t){t.log("FartherShore init \u2014 pick a starter plan preset:"),t.log(""),t.log(EA()),t.log("");let e=(await t.ask("Preset (number or name, blank to cancel): ")).trim();if(!e)return null;let r=Number.parseInt(e,10),i=null;if(Number.isInteger(r)&&r>=1&&r<=Ee.length?i=Ee[r-1]??null:Ee.includes(e.toLowerCase())&&(i=e.toLowerCase()),!i)throw new b(`Unknown preset "${e}". Choose one of: ${Ee.join(", ")}.`,void 0,{code:"INIT_TEMPLATE_UNKNOWN"});t.log(""),t.log(`Preview \u2014 ${Jo(i).label}:`),t.log(wA(Jo(i))),t.log("");let n=(await t.ask(`Output path (default: ${Or}): `)).trim();return{kind:i,path:n||Or}}function Oy(t){t.command("init").description("Scaffold a starter business/index.ts from a named plan preset (free | starter | pro | prepaid | metered)").option("--template <kind>",`Plan preset to scaffold. One of: ${Ee.join(" | ")}`).option("--force","Overwrite existing scaffold files (business.ts, routes.ts, package.json, tsconfig.json, frontend/\u2026) if present").option("--path <path>","Output path for the generated business config (default: ./business/index.ts)").addHelpText("after",`
2150
2156
  Examples:
2151
2157
  farthershore init # interactive (TTY only)
2152
2158
  farthershore init --template free
@@ -2154,41 +2160,36 @@ Examples:
2154
2160
  farthershore init --template metered --format json
2155
2161
 
2156
2162
  Available templates:
2157
- ${mp().map(e=>` ${e.kind.padEnd(8)} ${e.description}`).join(`
2163
+ ${qp().map(e=>` ${e.kind.padEnd(8)} ${e.description}`).join(`
2158
2164
  `)}
2159
- `).action(async e=>{let r,i=e.path;if(e.template)r=cO(e.template);else if(u_.isTTY&&d_.isTTY){let u=oO({input:u_,output:d_});try{let p=await xO({ask:m=>u.question(m),log:m=>{console.log(m)}});if(!p){G("Cancelled.");return}r=p.kind,i=i??p.path}finally{u.close()}}else throw new b(`--template is required when stdin is not a TTY. Choose one of: ${xe.join(", ")}.`,void 0,{code:"INIT_TEMPLATE_REQUIRED"});let n=Ro(r),o=Rp(i??pr);if(Op(o)&&!e.force)throw new b(`${o} already exists. Pass --force to overwrite.`,void 0,{code:"INIT_FILE_EXISTS"});let a=pO(n,o),c=a.map(u=>u.path).filter(u=>Op(u));if(c.length>0&&!e.force)throw new b(`${c[0]} already exists. Pass --force to overwrite.`,void 0,{code:"INIT_FILE_EXISTS"});let l=mO(o);if(l)throw new b(`${l} already declares a business. Folder discovery compiles every module under business/, so scaffolding ${o} beside it would leave two business definitions. Remove or rename ${l} first.`,void 0,{code:"INIT_BUSINESS_EXISTS"});for(let u of a)eO(dr(u.path),{recursive:!0}),rO(u.path,u.content,"utf-8");let d=a.find(u=>u.path===o)?.content??p_(n);j({template:r,path:o,preset:{kind:n.kind,label:n.label},content:d,files:a},`Scaffolded ${o} from preset "${n.label}".`),G(`Next: edit ${i??pr}, then run \`farthershore build\`.`)})}import{existsSync as Cp,lstatSync as DO,mkdirSync as UO,mkdtempSync as zO,readFileSync as jO,rmSync as x_,writeFileSync as LO}from"node:fs";import*as I_ from"node:fs";import{randomUUID as MO}from"node:crypto";import{gunzipSync as FO}from"node:zlib";import{join as gr,relative as BO,resolve as S_}from"node:path";import{mkdirSync as f_,writeFileSync as IO}from"node:fs";import{dirname as SO,posix as g_,resolve as h_,sep as EO}from"node:path";var fr={maxEntries:2e3,maxFileBytes:20*1024*1024,maxPathBytes:512,maxPathComponentBytes:255},mr=512,wO=new Set(["x","g"]),$O=new Set(["0","","5"]),OO=new Set(["1","2"]);function v_(t,e,r=()=>!1){let i=TO(t).filter(a=>!r(a.path)),n=h_(e),o=[];for(let a of i){let c=h_(n,a.path);if(!NO(n,c))throw new Error(`Tar entry escapes destination: ${a.path}`);if("directory"in a){f_(c,{recursive:!0});continue}f_(SO(c),{recursive:!0}),IO(c,a.content,a.mode?{mode:a.mode}:void 0),o.push(a.path)}return o}function TO(t){let e=[],r=0,i=null;for(;r+mr<=t.length;){let n=t.subarray(r,r+mr);if(PO(n))break;let o=Po(n,0,100),a=Po(n,345,155),c=a?`${a}/${o}`:o,l=b_(n,124,12),d=b_(n,100,8),u=Po(n,156,1)||"0",p=r+mr,m=p+l;if(m>t.length)throw new Error(`Tar entry "${c}" is truncated.`);if(r=p+Math.ceil(l/mr)*mr,!RO(c,u,l))continue;let g=AO(c,i);if(!g.path||g.path==="/"||/^\/*$/.test(g.path)){i=g.rootPrefix;continue}i=g.rootPrefix;let k=CO(g.path);if(u==="5"?e.push({path:k,directory:!0}):e.push({path:k,content:Buffer.from(t.subarray(p,m)),mode:Number.isFinite(d)&&d>0?d:void 0}),e.length>fr.maxEntries)throw new Error(`Tar archive exceeds ${fr.maxEntries} entries.`)}return e}function RO(t,e,r){if(wO.has(e))return!1;if(OO.has(e))throw new Error(`Refusing link tar entry: ${t}`);if(!$O.has(e))return!1;if(r>fr.maxFileBytes)throw new Error(`Tar entry exceeds 20 MB file limit: ${t}`);return!0}function AO(t,e){let r=t.replace(/\\/g,"/").replace(/^\.\//,""),[i,...n]=r.split("/"),o=e??i??null;return!o||i!==o?{rootPrefix:o,path:r}:{rootPrefix:o,path:n.join("/")}}function CO(t){let e=g_.normalize(t.replace(/\\/g,"/")).replace(/\/+$/,"");if(e==="."||e.includes("\0")||e.startsWith("../")||e.includes("/../")||g_.isAbsolute(e)||Buffer.byteLength(e,"utf8")>fr.maxPathBytes)throw new Error(`Unsafe tar entry path: ${t}`);if(e.split("/").some(r=>r===""||r==="."||r===".."||Buffer.byteLength(r,"utf8")>fr.maxPathComponentBytes))throw new Error(`Unsafe tar entry path: ${t}`);return e}function Po(t,e,r){let i=t.subarray(e,e+r),n=i.indexOf(0);return i.subarray(0,n===-1?i.length:n).toString("utf8").trim()}function b_(t,e,r){let i=Po(t,e,r).replace(/\0/g,"").trim();return i?Number.parseInt(i,8):0}function PO(t){return t.every(e=>e===0)}function NO(t,e){return e===t||e.startsWith(`${t}${EO}`)}var HO="https://github.com",VO=3e4,__=20*1024*1024,ZO=100*1024*1024,No={renameSync:I_.renameSync},Do={node:{repo:"farther-shore/api-template-node",label:"Node (TypeScript + Express)"}},y_=["Mint a runtime token: farthershore backend tokens create <business> --kind live","Deploy the api/ Docker image anywhere that can serve HTTPS.","Register the origin: farthershore backend create <business> --name api --transport direct --origin-url ... --default"];function E_(t){t.command("create").description("Create local FartherShore project components").command("api").description("Scaffold a starter backend from a public template tarball").option("--node",`${Do.node.label} template (default)`).option("--path <dir>","Managed builder repo root (default: current directory)").option("--force","Overwrite an existing api/ directory if present").option("--ref <branch-or-tag>","Template tag or branch to download instead of main (tags are tried first)").addHelpText("after",`
2165
+ `).action(async e=>{let r,i=e.path;if(e.template)r=mA(e.template);else if(Ey.isTTY&&wy.isTTY){let u=uA({input:Ey,output:wy});try{let p=await $A({ask:m=>u.question(m),log:m=>{console.log(m)}});if(!p){J("Cancelled.");return}r=p.kind,i=i??p.path}finally{u.close()}}else throw new b(`--template is required when stdin is not a TTY. Choose one of: ${Ee.join(", ")}.`,void 0,{code:"INIT_TEMPLATE_REQUIRED"});let n=Jo(r),o=hm(i??Or);if(fm(o)&&!e.force)throw new b(`${o} already exists. Pass --force to overwrite.`,void 0,{code:"INIT_FILE_EXISTS"});let a=bA(n,o),c=a.map(u=>u.path).filter(u=>fm(u));if(c.length>0&&!e.force)throw new b(`${c[0]} already exists. Pass --force to overwrite.`,void 0,{code:"INIT_FILE_EXISTS"});let l=vA(o);if(l)throw new b(`${l} already declares a business. Folder discovery compiles every module under business/, so scaffolding ${o} beside it would leave two business definitions. Remove or rename ${l} first.`,void 0,{code:"INIT_BUSINESS_EXISTS"});for(let u of a)oA($r(u.path),{recursive:!0}),cA(u.path,u.content,"utf-8");let d=a.find(u=>u.path===o)?.content??$y(n);L({template:r,path:o,preset:{kind:n.kind,label:n.label},content:d,files:a},`Scaffolded ${o} from preset "${n.label}".`),J(`Next: edit ${i??Or}, then run \`farthershore build\`.`)})}import{existsSync as vm,lstatSync as MA,mkdirSync as BA,mkdtempSync as FA,readFileSync as HA,rmSync as zy,writeFileSync as VA}from"node:fs";import*as jy from"node:fs";import{randomUUID as KA}from"node:crypto";import{gunzipSync as GA}from"node:zlib";import{join as Rr,relative as ZA,resolve as Ly}from"node:path";import{mkdirSync as Ty,writeFileSync as OA}from"node:fs";import{dirname as TA,posix as Ay,resolve as Ry,sep as AA}from"node:path";var Ar={maxEntries:2e3,maxFileBytes:20*1024*1024,maxPathBytes:512,maxPathComponentBytes:255},Tr=512,RA=new Set(["x","g"]),CA=new Set(["0","","5"]),PA=new Set(["1","2"]);function Py(t,e,r=()=>!1){let i=NA(t).filter(a=>!r(a.path)),n=Ry(e),o=[];for(let a of i){let c=Ry(n,a.path);if(!LA(n,c))throw new Error(`Tar entry escapes destination: ${a.path}`);if("directory"in a){Ty(c,{recursive:!0});continue}Ty(TA(c),{recursive:!0}),OA(c,a.content,a.mode?{mode:a.mode}:void 0),o.push(a.path)}return o}function NA(t){let e=[],r=0,i=null;for(;r+Tr<=t.length;){let n=t.subarray(r,r+Tr);if(jA(n))break;let o=as(n,0,100),a=as(n,345,155),c=a?`${a}/${o}`:o,l=Cy(n,124,12),d=Cy(n,100,8),u=as(n,156,1)||"0",p=r+Tr,m=p+l;if(m>t.length)throw new Error(`Tar entry "${c}" is truncated.`);if(r=p+Math.ceil(l/Tr)*Tr,!DA(c,u,l))continue;let f=UA(c,i);if(!f.path||f.path==="/"||/^\/*$/.test(f.path)){i=f.rootPrefix;continue}i=f.rootPrefix;let v=zA(f.path);if(u==="5"?e.push({path:v,directory:!0}):e.push({path:v,content:Buffer.from(t.subarray(p,m)),mode:Number.isFinite(d)&&d>0?d:void 0}),e.length>Ar.maxEntries)throw new Error(`Tar archive exceeds ${Ar.maxEntries} entries.`)}return e}function DA(t,e,r){if(RA.has(e))return!1;if(PA.has(e))throw new Error(`Refusing link tar entry: ${t}`);if(!CA.has(e))return!1;if(r>Ar.maxFileBytes)throw new Error(`Tar entry exceeds 20 MB file limit: ${t}`);return!0}function UA(t,e){let r=t.replace(/\\/g,"/").replace(/^\.\//,""),[i,...n]=r.split("/"),o=e??i??null;return!o||i!==o?{rootPrefix:o,path:r}:{rootPrefix:o,path:n.join("/")}}function zA(t){let e=Ay.normalize(t.replace(/\\/g,"/")).replace(/\/+$/,"");if(e==="."||e.includes("\0")||e.startsWith("../")||e.includes("/../")||Ay.isAbsolute(e)||Buffer.byteLength(e,"utf8")>Ar.maxPathBytes)throw new Error(`Unsafe tar entry path: ${t}`);if(e.split("/").some(r=>r===""||r==="."||r===".."||Buffer.byteLength(r,"utf8")>Ar.maxPathComponentBytes))throw new Error(`Unsafe tar entry path: ${t}`);return e}function as(t,e,r){let i=t.subarray(e,e+r),n=i.indexOf(0);return i.subarray(0,n===-1?i.length:n).toString("utf8").trim()}function Cy(t,e,r){let i=as(t,e,r).replace(/\0/g,"").trim();return i?Number.parseInt(i,8):0}function jA(t){return t.every(e=>e===0)}function LA(t,e){return e===t||e.startsWith(`${t}${AA}`)}var WA="https://github.com",qA=3e4,Ny=20*1024*1024,JA=100*1024*1024,cs={renameSync:jy.renameSync},ls={node:{repo:"farther-shore/api-template-node",label:"Node (TypeScript + Express)"}},Dy=["Mint a runtime token: farthershore backend tokens create <business> --kind live","Deploy the api/ Docker image anywhere that can serve HTTPS.","Register the origin: farthershore backend create <business> --name api --transport direct --origin-url ... --default"];function My(t){t.command("create").description("Create local FartherShore project components").command("api").description("Scaffold a starter backend from a public template tarball").option("--node",`${ls.node.label} template (default)`).option("--path <dir>","Managed builder repo root (default: current directory)").option("--force","Overwrite an existing api/ directory if present").option("--ref <branch-or-tag>","Template tag or branch to download instead of main (tags are tried first)").addHelpText("after",`
2160
2166
  Languages:
2161
- --node ${Do.node.label} (default)
2167
+ --node ${ls.node.label} (default)
2162
2168
 
2163
2169
  More languages are coming.
2164
- `).action(r=>KO(r))}async function KO(t){let e=GO(t),r=Do[e],i=S_(t.path??process.cwd()),n=gr(i,"api"),o=`${HO}/${r.repo}`;Cp(gr(i,"business"))||De("this doesn't look like a FartherShore managed repo");let a=w_(n);if(a.exists){if(a.isSymlink)throw new b(`${n} is a symlink. Refusing to overwrite it.`,void 0,{code:"CREATE_API_DESTINATION_SYMLINK"});if(!t.force)throw new b(`${n} already exists. Pass --force to overwrite.`,void 0,{code:"CREATE_API_EXISTS"})}let c=await qO(r.repo,t.ref,o),l=XO(c);UO(i,{recursive:!0});let d=zO(gr(i,".farthershore-api-")),u=!1,p,m=!1;try{p=v_(l,d,QO),m=eT(i),YO(d,n,t.force===!0),u=!0}finally{u||x_(d,{recursive:!0,force:!0})}let g=p.map(k=>`api/${k}`);m&&g.push(".gitignore"),j({language:e,templateRepo:r.repo,created:g,nextActions:y_},`Scaffolded ${Do[e].label} backend in ${BO(process.cwd(),n)||n}.`,"create.api");for(let k of y_)G(`Next: ${k}`)}function GO(t){return t.node,"node"}function k_(t,e){let r=e?`refs/tags/${encodeURIComponent(e)}`:"refs/heads/main";return`https://codeload.github.com/${t}/tar.gz/${r}`}function WO(t,e){return`https://codeload.github.com/${t}/tar.gz/refs/heads/${encodeURIComponent(e)}`}async function qO(t,e,r){if(!e)return JO(k_(t),r);let i=await Pp(k_(t,e));if(i.ok)return i.archive;if(i.status!==404)throw Np(r,i.error);let n=await Pp(WO(t,e));if(n.ok)return n.archive;throw n.status===404?new b(`Template ref "${e}" was not found as a tag or branch in ${r}. See available tags at ${r}/tags.`,void 0,{code:"CREATE_API_REF_NOT_FOUND"}):Np(r,n.error)}async function JO(t,e){let r=await Pp(t);if(r.ok)return r.archive;throw Np(e,r.error)}async function Pp(t){let e=new AbortController,r=setTimeout(()=>e.abort(),VO);try{let i=await fetch(t,{signal:e.signal});if(!i.ok)return{ok:!1,status:i.status,error:new Error(`HTTP ${i.status}`)};let n=i.headers.get("content-length");if(n&&Number.parseInt(n,10)>__)throw new b("Template download exceeds 20 MB compressed limit.",void 0,{code:"CREATE_API_ARCHIVE_TOO_LARGE"});let o=Buffer.from(await i.arrayBuffer());if(o.byteLength>__)throw new b("Template download exceeds 20 MB compressed limit.",void 0,{code:"CREATE_API_ARCHIVE_TOO_LARGE"});return{ok:!0,archive:o}}catch(i){if(i instanceof b)throw i;return{ok:!1,error:i}}finally{clearTimeout(r)}}function Np(t,e){let r=e instanceof Error?` (${e.message})`:"";return new b(`Failed to download ${t}${r}. Manual fallback: download the public template from ${t}.`,void 0,{code:"CREATE_API_DOWNLOAD_FAILED"})}function YO(t,e,r){let i=w_(e);if(i.exists){if(i.isSymlink)throw new b(`${e} is a symlink. Refusing to overwrite it.`,void 0,{code:"CREATE_API_DESTINATION_SYMLINK"});if(!r)throw new b(`${e} already exists. Pass --force to overwrite.`,void 0,{code:"CREATE_API_EXISTS"})}let n=i.exists?gr(S_(e,".."),`.farthershore-api-backup-${MO()}`):void 0;if(!n){No.renameSync(t,e);return}No.renameSync(e,n);try{No.renameSync(t,e)}catch(o){try{No.renameSync(n,e)}catch(a){let c=a instanceof Error?` ${a.message}`:"";De(`failed to restore the original api/ directory after install failed.${c}`)}throw o}x_(n,{recursive:!0,force:!0})}function XO(t){try{return FO(t,{maxOutputLength:ZO})}catch(e){let r=e instanceof Error?` (${e.message})`:"";throw new b(`Template archive exceeds 100 MB expanded limit or is invalid${r}.`,void 0,{code:"CREATE_API_ARCHIVE_INVALID"})}}function w_(t){try{return{exists:!0,isSymlink:DO(t).isSymbolicLink()}}catch(e){if(e&&typeof e=="object"&&"code"in e&&e.code==="ENOENT")return{exists:!1,isSymlink:!1};throw e}}function QO(t){return t===".gitignore"?!1:t===".github"||t.startsWith(".github/")||t.startsWith(".git")}function eT(t){let e=gr(t,".gitignore"),i=(Cp(e)?jO(e,"utf8"):"").split(/\r?\n/).filter((o,a,c)=>!(a===c.length-1&&o==="")),n=!1;for(let o of["api/dist","api/.env"])i.includes(o)||(i.push(o),n=!0);return!n&&Cp(e)?!1:(LO(e,`${i.join(`
2170
+ `).action(r=>YA(r))}async function YA(t){let e=XA(t),r=ls[e],i=Ly(t.path??process.cwd()),n=Rr(i,"api"),o=`${WA}/${r.repo}`;vm(Rr(i,"business"))||Be("this doesn't look like a FartherShore managed repo");let a=By(n);if(a.exists){if(a.isSymlink)throw new b(`${n} is a symlink. Refusing to overwrite it.`,void 0,{code:"CREATE_API_DESTINATION_SYMLINK"});if(!t.force)throw new b(`${n} already exists. Pass --force to overwrite.`,void 0,{code:"CREATE_API_EXISTS"})}let c=await eR(r.repo,t.ref,o),l=rR(c);BA(i,{recursive:!0});let d=FA(Rr(i,".farthershore-api-")),u=!1,p,m=!1;try{p=Py(l,d,iR),m=oR(i),nR(d,n,t.force===!0),u=!0}finally{u||zy(d,{recursive:!0,force:!0})}let f=p.map(v=>`api/${v}`);m&&f.push(".gitignore"),L({language:e,templateRepo:r.repo,created:f,nextActions:Dy},`Scaffolded ${ls[e].label} backend in ${ZA(process.cwd(),n)||n}.`,"create.api");for(let v of Dy)J(`Next: ${v}`)}function XA(t){return t.node,"node"}function Uy(t,e){let r=e?`refs/tags/${encodeURIComponent(e)}`:"refs/heads/main";return`https://codeload.github.com/${t}/tar.gz/${r}`}function QA(t,e){return`https://codeload.github.com/${t}/tar.gz/refs/heads/${encodeURIComponent(e)}`}async function eR(t,e,r){if(!e)return tR(Uy(t),r);let i=await _m(Uy(t,e));if(i.ok)return i.archive;if(i.status!==404)throw ym(r,i.error);let n=await _m(QA(t,e));if(n.ok)return n.archive;throw n.status===404?new b(`Template ref "${e}" was not found as a tag or branch in ${r}. See available tags at ${r}/tags.`,void 0,{code:"CREATE_API_REF_NOT_FOUND"}):ym(r,n.error)}async function tR(t,e){let r=await _m(t);if(r.ok)return r.archive;throw ym(e,r.error)}async function _m(t){let e=new AbortController,r=setTimeout(()=>e.abort(),qA);try{let i=await fetch(t,{signal:e.signal});if(!i.ok)return{ok:!1,status:i.status,error:new Error(`HTTP ${i.status}`)};let n=i.headers.get("content-length");if(n&&Number.parseInt(n,10)>Ny)throw new b("Template download exceeds 20 MB compressed limit.",void 0,{code:"CREATE_API_ARCHIVE_TOO_LARGE"});let o=Buffer.from(await i.arrayBuffer());if(o.byteLength>Ny)throw new b("Template download exceeds 20 MB compressed limit.",void 0,{code:"CREATE_API_ARCHIVE_TOO_LARGE"});return{ok:!0,archive:o}}catch(i){if(i instanceof b)throw i;return{ok:!1,error:i}}finally{clearTimeout(r)}}function ym(t,e){let r=e instanceof Error?` (${e.message})`:"";return new b(`Failed to download ${t}${r}. Manual fallback: download the public template from ${t}.`,void 0,{code:"CREATE_API_DOWNLOAD_FAILED"})}function nR(t,e,r){let i=By(e);if(i.exists){if(i.isSymlink)throw new b(`${e} is a symlink. Refusing to overwrite it.`,void 0,{code:"CREATE_API_DESTINATION_SYMLINK"});if(!r)throw new b(`${e} already exists. Pass --force to overwrite.`,void 0,{code:"CREATE_API_EXISTS"})}let n=i.exists?Rr(Ly(e,".."),`.farthershore-api-backup-${KA()}`):void 0;if(!n){cs.renameSync(t,e);return}cs.renameSync(e,n);try{cs.renameSync(t,e)}catch(o){try{cs.renameSync(n,e)}catch(a){let c=a instanceof Error?` ${a.message}`:"";Be(`failed to restore the original api/ directory after install failed.${c}`)}throw o}zy(n,{recursive:!0,force:!0})}function rR(t){try{return GA(t,{maxOutputLength:JA})}catch(e){let r=e instanceof Error?` (${e.message})`:"";throw new b(`Template archive exceeds 100 MB expanded limit or is invalid${r}.`,void 0,{code:"CREATE_API_ARCHIVE_INVALID"})}}function By(t){try{return{exists:!0,isSymlink:MA(t).isSymbolicLink()}}catch(e){if(e&&typeof e=="object"&&"code"in e&&e.code==="ENOENT")return{exists:!1,isSymlink:!1};throw e}}function iR(t){return t===".gitignore"?!1:t===".github"||t.startsWith(".github/")||t.startsWith(".git")}function oR(t){let e=Rr(t,".gitignore"),i=(vm(e)?HA(e,"utf8"):"").split(/\r?\n/).filter((o,a,c)=>!(a===c.length-1&&o==="")),n=!1;for(let o of["api/dist","api/.env"])i.includes(o)||(i.push(o),n=!0);return!n&&vm(e)?!1:(VA(e,`${i.join(`
2165
2171
  `)}
2166
- `,"utf8"),!0)}import{readFileSync as tT,writeFileSync as nT}from"node:fs";var rT=["get","post","put","patch","delete","head","options"],iT=["trace","connect"];function oT(t){let e=t.paths??{},r=[],i=[],n=0,o=0;for(let[c,l]of Object.entries(e)){if(!l||typeof l!="object")continue;let d=[];for(let u of rT)l[u]!==void 0&&(d.push(`${u}: {}`),n+=1);for(let u of iT)l[u]!==void 0&&i.push(`${u.toUpperCase()} ${c}`);d.length!==0&&(o+=1,r.push(`export const importedRoute${o} = fs.route(${JSON.stringify(c)}, { ${d.join(", ")} });`))}return{source:`// Generated by \`farthershore import openapi\` \u2014 a starting point.
2172
+ `,"utf8"),!0)}import{readFileSync as sR,writeFileSync as aR}from"node:fs";var cR=["get","post","put","patch","delete","head","options"],lR=["trace","connect"];function uR(t){let e=t.paths??{},r=[],i=[],n=0,o=0;for(let[c,l]of Object.entries(e)){if(!l||typeof l!="object")continue;let d=[];for(let u of cR)l[u]!==void 0&&(d.push(`${u}: {}`),n+=1);for(let u of lR)l[u]!==void 0&&i.push(`${u.toUpperCase()} ${c}`);d.length!==0&&(o+=1,r.push(`export const importedRoute${o} = fs.route(${JSON.stringify(c)}, { ${d.join(", ")} });`))}return{source:`// Generated by \`farthershore import openapi\` \u2014 a starting point.
2167
2173
  // Enrich each route with metering (reports/costs), audience, and plans.
2168
2174
  import * as fs from "@farthershore/business";
2169
2175
 
2170
2176
  ${r.join(`
2171
2177
  `)}
2172
- `,pathCount:o,operationCount:n,skipped:i}}function $_(t){t.command("import").description("Import external definitions into FartherShore authoring").command("openapi").argument("<spec>","Path to an OpenAPI 3.x JSON document").description("Scaffold a path-first Business SDK route module from an OpenAPI spec").option("--out <file>","Write the generated module to this file (default: print to stdout)").action((r,i)=>{let n;try{n=JSON.parse(tT(r,"utf8"))}catch(d){process.stderr.write(`Failed to read/parse OpenAPI JSON at "${r}": ${d instanceof Error?d.message:String(d)}
2178
+ `,pathCount:o,operationCount:n,skipped:i}}function Fy(t){t.command("import").description("Import external definitions into FartherShore authoring").command("openapi").argument("<spec>","Path to an OpenAPI 3.x JSON document").description("Scaffold a path-first Business SDK route module from an OpenAPI spec").option("--out <file>","Write the generated module to this file (default: print to stdout)").action((r,i)=>{let n;try{n=JSON.parse(sR(r,"utf8"))}catch(d){process.stderr.write(`Failed to read/parse OpenAPI JSON at "${r}": ${d instanceof Error?d.message:String(d)}
2173
2179
  (YAML is not supported yet \u2014 convert to JSON first.)
2174
2180
  `),process.exitCode=1;return}if(!n.paths||Object.keys(n.paths).length===0){process.stderr.write(`No paths found in "${r}" \u2014 nothing to import.
2175
- `),process.exitCode=1;return}let{source:o,pathCount:a,operationCount:c,skipped:l}=oT(n);if(c===0){process.stderr.write(`No supported operations found in "${r}" \u2014 nothing to import.
2181
+ `),process.exitCode=1;return}let{source:o,pathCount:a,operationCount:c,skipped:l}=uR(n);if(c===0){process.stderr.write(`No supported operations found in "${r}" \u2014 nothing to import.
2176
2182
  `+(l.length>0?`Skipped ${l.length} unsupported operation(s): ${l.join(", ")}.
2177
2183
  `:"")),process.exitCode=1;return}l.length>0&&process.stderr.write(`Skipped ${l.length} unsupported operation(s) (FartherShore has no such method): ${l.join(", ")}.
2178
- `),i.out?(nT(i.out,o),process.stdout.write(`Wrote ${a} path(s) / ${c} operation(s) to ${i.out}
2184
+ `),i.out?(aR(i.out,o),process.stdout.write(`Wrote ${a} path(s) / ${c} operation(s) to ${i.out}
2179
2185
  Import the exported route refs and grant them from fs.plan().
2180
- `)):process.stdout.write(o)})}var sT="x-fs-surface",aT="cli",cT=["BusinessApplyWorkflow","RollbackWorkflow","StripeSyncWorkflow","WebhookDispatchWorkflow"];function lT(){let t=process.env.FARTHERSHORE_API_URL;if(!t)throw new b("FARTHERSHORE_API_URL is not set. Point it at the core base URL (e.g. https://core.farthershore.com) before running `farthershore workflows`.",void 0,{code:"ADMIN_API_URL_MISSING"});return t.replace(/\/+$/,"")}function uT(){let t=process.env.FARTHERSHORE_ADMIN_SECRET;if(!t)throw new b("FARTHERSHORE_ADMIN_SECRET is not set. This command authenticates against core's /internal/admin/workflow/* proxy with the same shared secret fs-admin uses.",void 0,{code:"ADMIN_SECRET_MISSING"});return t}async function O_(t){let e=lT(),r=uT(),i=await fetch(`${e}${t}`,{method:"GET",headers:{"content-type":"application/json","x-admin-service-secret":r,"x-admin-actor-id":"farthershore-cli",[sT]:aT}});if(!i.ok){let o=(await i.json().catch(()=>null))?.error;throw new b(o?.message??i.statusText,i.status,{code:o?.code,details:o?.details})}if(i.status!==204)return i.json()}function Up(t){if(t==null)return"\u2014";if(t<1e3)return`${t}ms`;let e=t/1e3;if(e<60)return`${e.toFixed(1)}s`;let r=e/60;return r<60?`${r.toFixed(1)}m`:`${(r/60).toFixed(1)}h`}function T_(t,e=new Date){let r=new Date(t.startedAt).getTime(),i=t.completedAt?new Date(t.completedAt).getTime():t.failedAt?new Date(t.failedAt).getTime():e.getTime();return Math.max(0,i-r)}function Uo(t){switch(t){case"COMPLETED":case"SUCCEEDED":case"CONVERGED":return L.green;case"RUNNING":case"PENDING":case"PAUSED":case"RETRYING":case"WAITING_FOR_APPROVAL":return L.yellow;case"FAILED":case"DIVERGED":case"STALLED":case"REQUIRES_HUMAN_INTERVENTION":case"TIMEOUT":return L.red;case"ROLLED_BACK":case"CANCELLED":case"COMPENSATED":return L.magenta;default:return e=>e}}function T(t,e){return t.length<=e?t.padEnd(e):e<=1?t.slice(0,e):`${t.slice(0,e-1)}\u2026`}var X={id:30,type:24,business:18,status:16,phase:26,started:24,duration:10};function dT(t,e=new Date){let r=L.dim([T("ID",X.id),T("TYPE",X.type),T("BUSINESS",X.business),T("STATUS",X.status),T("PHASE",X.phase),T("STARTED",X.started),T("DURATION",X.duration)].join(" ")),i=L.dim(["-".repeat(X.id),"-".repeat(X.type),"-".repeat(X.business),"-".repeat(X.status),"-".repeat(X.phase),"-".repeat(X.started),"-".repeat(X.duration)].join(" ")),n=t.map(o=>{let a=Up(T_(o,e)),c=Uo(o.status)(T(o.status,X.status));return[T(o.id,X.id),T(o.workflowType,X.type),T(o.businessId??"\u2014",X.business),c,T(o.currentPhase??"\u2014",X.phase),T(o.startedAt,X.started),T(a,X.duration)].join(" ")});return[r,i,...n].join(`
2181
- `)}function Ie(t,e){let r;return e==null||e===""?r=L.dim("(unset)"):typeof e=="object"?r=JSON.stringify(e):typeof e=="string"||typeof e=="number"||typeof e=="boolean"?r=String(e):r=JSON.stringify(e),` ${L.dim(t.padEnd(20))}${r}`}var Oe={stepName:28,phase:26,status:14,attempt:8,duration:10},an={eventType:28,occurredAt:24,payload:60},cn={surface:24,status:14,delta:60};function pT(t){if(t.length===0)return L.dim(" (no steps recorded)");let e=L.dim([T("STEP",Oe.stepName),T("PHASE",Oe.phase),T("STATUS",Oe.status),T("ATTEMPT",Oe.attempt),T("DURATION",Oe.duration)].join(" ")),r=t.map(i=>[T(i.stepName,Oe.stepName),T(i.phase,Oe.phase),Uo(i.status)(T(i.status,Oe.status)),T(String(i.attempt),Oe.attempt),T(Up(i.durationMs),Oe.duration)].join(" "));return[e,...r].join(`
2182
- `)}function mT(t){return Object.keys(t).length===0?"(empty)":JSON.stringify(t)}function fT(t){if(t.length===0)return L.dim(" (no events recorded)");let e=L.dim([T("EVENT",an.eventType),T("OCCURRED AT",an.occurredAt),T("PAYLOAD",an.payload)].join(" ")),r=t.map(i=>[T(i.eventType,an.eventType),T(i.occurredAt,an.occurredAt),T(mT(i.payload),an.payload)].join(" "));return[e,...r].join(`
2183
- `)}function gT(t){if(t.length===0)return L.dim(" (no convergence state recorded)");let e=L.dim([T("SURFACE",cn.surface),T("STATUS",cn.status),T("DELTA",cn.delta)].join(" ")),r=t.map(i=>[T(i.surface,cn.surface),Uo(i.status)(T(i.status,cn.status)),T(i.deltaDescription??"\u2014",cn.delta)].join(" "));return[e,...r].join(`
2184
- `)}function hT(t){let{execution:e,steps:r,events:i,convergence:n}=t,o=[];return o.push(L.bold(`Workflow ${e.id}`)),o.push(Ie("type",e.workflowType)),o.push(Ie("status",Uo(e.status)(e.status))),o.push(Ie("currentPhase",e.currentPhase)),o.push(Ie("startedAt",e.startedAt)),o.push(Ie("completedAt",e.completedAt)),o.push(Ie("triggeredBy",e.triggeredBy)),o.push(Ie("correlationId",e.correlationId)),o.push(Ie("businessId",e.businessId)),o.push(Ie("duration",Up(T_(e)))),o.push(""),o.push(L.bold("Steps")),o.push(pT(r)),o.push(""),o.push(L.bold("Events")),o.push(fT(i)),o.push(""),o.push(L.bold("Convergence")),o.push(gT(n)),e.errorReason&&(o.push(""),o.push(L.bold(L.red("Error"))),o.push(Ie("reason",e.errorReason)),o.push(Ie("classification",e.errorClassification))),o.join(`
2185
- `)}var Dp=["RUNNING","COMPLETED","FAILED","ROLLED_BACK","STALLED","REQUIRES_HUMAN_INTERVENTION","WAITING_FOR_APPROVAL","CANCELLED"];function bT(t){if(!t)return 50;let e=Number.parseInt(t,10);if(Number.isNaN(e)||e<=0)throw new b(`--limit must be a positive integer (got "${t}")`,void 0,{code:"INVALID_LIMIT"});return e}function vT(t){let e=new URLSearchParams;if(t.status){if(!Dp.includes(t.status))throw new b(`--status must be one of: ${Dp.join(", ")} (got "${t.status}")`,void 0,{code:"INVALID_STATUS"});e.set("status",t.status)}t.type&&e.set("workflowType",t.type),t.business&&e.set("businessId",t.business),e.set("limit",String(bT(t.limit)));let r=e.toString();return r?`?${r}`:""}function R_(t){let e=t.command("workflows").description("Inspect durable lifecycle workflow executions (list / show / replay)");e.command("ls").description("List workflow executions as a table").option("--status <status>",`Filter by status (one of: ${Dp.join(", ")})`).option("--type <type>",`Filter by workflow type (e.g. ${cT.join(", ")})`).option("--business <businessId>","Filter by businessId").option("--limit <N>","Maximum number of rows to return (default 50)").action(async r=>{let i=vT(r),n=await O_(`/internal/admin/workflow/executions${i}`);j(n),te()!=="json"&&(console.log(dT(n.items)),console.log(L.dim(`
2186
- ${n.items.length} executions${n.nextCursor?" (more available \u2014 pass --limit to see more)":""}`)))}),e.command("show <workflowExecutionId>").description("Show a single workflow execution: header, steps, events, convergence panel").action(async r=>{let i=await O_(`/internal/admin/workflow/executions/${encodeURIComponent(r)}`);j(i),te()!=="json"&&console.log(hT(i))}),e.command("replay <workflowExecutionId>").description("Replay a workflow execution (or a single step). STUB in Wave 5 \u2014 operator-action endpoints land in a follow-up.").option("--step <stepName>","Replay only the named step rather than the full execution").action((r,i)=>{throw new b("Replay not yet implemented via CLI; use core's /workflow/<id>/rollback for now. Tracked in FAR-<followup>.",501,{code:"NOT_IMPLEMENTED"})})}import{mkdtemp as _T,rm as yT}from"node:fs/promises";import{tmpdir as kT}from"node:os";import{join as zp}from"node:path";function P_(t,e,r={}){t.command("validate").description("Validate the business/ program the way the PR check does, before pushing").option("--entry <path>","Business-as-code folder or file to validate (default: the repo-local SDK resolves it \u2014 normally the business/ folder)").option("--business <id-or-name>","Business id or name \u2014 runs the server dry-run validate for the full verdict (diff + economic change)").option("--env <name>","Environment for the server validate").option("--local-only","Build + determinism only; skip the server dry-run validate").addHelpText("after",`
2187
- Examples:
2188
- farthershore validate # local build + determinism
2189
- farthershore validate --business weather-api # + server validate (full PR verdict)
2190
- farthershore validate --local-only --format json
2191
- `).action(async i=>{let n=i.entry,o=n??"business/",a=r.runLocalManifestBuild??lr,c=r.readManifestEnvelope??ur,l=await _T(zp(kT(),"fs-validate-")),d=zp(l,"build-a.json"),u=zp(l,"build-b.json");try{let p=await a({entry:n,out:d});xT(p),p.exitCode!==0&&C_(p,o);let m=await A_(c,d,o),g=await a({entry:n,out:u});g.exitCode!==0&&C_(g,o);let k=await A_(c,u,o),E=m.irHash??null;(!E||E!==(k.irHash??null))&&IT(m.irHash??null,k.irHash??null,o);let S=null,R=null;if(i.localOnly)R="skipped (--local-only)";else if(!i.business)R="skipped (pass --business <id-or-name> for the full server verdict: diff + economic change)";else{let H=e(),W=await A(H,i.business);S=await H.compileManifest(W,m.ir,{env:i.env}),S.success||ST(S)}j({success:!0,entry:o,irHash:E,deterministic:!0,validate:S?{success:S.success,economicChange:S.economicChange??!1,warnings:S.warnings,lifecyclePlan:S.lifecyclePlan??null,environment:S.environment??null,specHash:S.specHash??null}:null,validateSkipped:R,nextActions:ET(S,R)},S?"Validate passed \u2014 manifest compiles and validates cleanly":"Validate passed \u2014 manifest builds deterministically"),S?.economicChange&&G("This change is economic (plan/pricing) \u2014 it will defer to a release on push."),R&&!i.localOnly&&G(R)}finally{await yT(l,{recursive:!0,force:!0}).catch(()=>{})}})}function xT(t){te()!=="json"&&(t.stdout&&process.stdout.write(t.stdout),t.stderr&&process.stderr.write(t.stderr))}async function A_(t,e,r){try{return await t(e)}catch(i){let n=i instanceof Error?i.message:"Manifest IR output could not be read";throw new b(n,0,{code:"MANIFEST_IR_READ_FAILED",details:{success:!1,phase:"read_manifest_ir",entry:r,errors:[{message:n}],nextActions:["Run farthershore build to see the full build output"]}})}}function C_(t,e){throw new b(`Manifest build failed with exit code ${t.exitCode||1}`,0,{code:"MANIFEST_BUILD_FAILED",details:{success:!1,phase:"local_build",entry:e,command:t.command,args:t.args,exitCode:t.exitCode,signal:t.signal,stdout:t.stdout,stderr:t.stderr,nextActions:["Fix your business/ program and run farthershore validate again"]}})}function IT(t,e,r){throw new b("Manifest build is nondeterministic \u2014 two builds produced different irHash",0,{code:"MANIFEST_NONDETERMINISTIC",details:{success:!1,phase:"determinism",entry:r,irHash:t,irHash2:e,nextActions:["Remove nondeterminism from your business/ program (e.g. Date.now(), Math.random(), unordered iteration)"]}})}function ST(t){throw new b(`Manifest validation failed with ${t.errors.length} error(s)`,422,{code:"MANIFEST_VALIDATION_FAILED",details:{success:!1,phase:"server_validate",irHash:t.irHash??null,errors:t.errors,warnings:t.warnings,economicChange:t.economicChange??!1,nextActions:["Fix the reported errors in your business/ program and run farthershore validate again"]}})}function ET(t,e){return t?["Manifest compiles and validates \u2014 commit and push; the GitHub check will run the same validation"]:e&&e.includes("--business")?["Pass --business <id-or-name> to also run the server validate (semantic diff + economic-change verdict)"]:["Commit and push business/ changes"]}import{spawn as wT}from"node:child_process";import{existsSync as $T,mkdtempSync as OT,writeFileSync as TT}from"node:fs";import{tmpdir as RT}from"node:os";import{join as zo,resolve as AT}from"node:path";var CT="https://core.farthershore.com";function PT(t,e){if(t.mock===!0)return{mock:!0};if(!(t.live===!0||t.coreUrl!=null||e.VITE_FS_CORE_URL!=null||t.clerkPublishableKey!=null||e.VITE_CLERK_PUBLISHABLE_KEY!=null))return{mock:!0};let i=t.coreUrl??e.VITE_FS_CORE_URL??CT,n=t.clerkPublishableKey??e.VITE_CLERK_PUBLISHABLE_KEY,o=t.clerkSignInUrl??e.VITE_CLERK_SIGN_IN_URL,a=t.clerkSatelliteDomain??e.VITE_CLERK_SATELLITE_DOMAIN,c={};return n&&(c.publishableKey=n),o&&(c.signInUrl=o),a&&(c.satelliteDomain=a),{coreUrl:i,...Object.keys(c).length>0?{clerk:c}:{}}}function NT(t){return`<script>window.__FS_CONFIG__ = ${JSON.stringify(t).replace(/</g,"\\u003c")};</script>`}function DT(t){return`import { defineConfig, mergeConfig, loadConfigFromFile } from "vite";
2186
+ `)):process.stdout.write(o)})}var dR="x-fs-surface",pR="cli",mR=["BusinessApplyWorkflow","RollbackWorkflow","StripeSyncWorkflow","WebhookDispatchWorkflow"];function fR(){let t=process.env.FARTHERSHORE_API_URL;if(!t)throw new b("FARTHERSHORE_API_URL is not set. Point it at the core base URL (e.g. https://core.farthershore.com) before running `farthershore workflows`.",void 0,{code:"ADMIN_API_URL_MISSING"});return t.replace(/\/+$/,"")}async function gR(){let t=process.env.FARTHERSHORE_SERVICE_JWT_PRIVATE_KEY_JWK,e=process.env.FARTHERSHORE_SERVICE_JWT_KID;if(!t||!e)throw new b("FARTHERSHORE_SERVICE_JWT_PRIVATE_KEY_JWK and FARTHERSHORE_SERVICE_JWT_KID must be set. This command authenticates against core's /internal/admin/workflow/* proxy with an Ed25519 service JWT (scope internal:admin) \u2014 the same unified service identity fs-admin uses.",void 0,{code:"SERVICE_JWT_KEYS_MISSING"});let r;try{r=JSON.parse(t)}catch{throw new b("FARTHERSHORE_SERVICE_JWT_PRIVATE_KEY_JWK is not valid JSON \u2014 it must be a JSON-encoded Ed25519 private JWK.",void 0,{code:"SERVICE_JWT_KEYS_INVALID"})}return Kb({privateJwk:r,kid:e,sub:"fs-admin",aud:"core",scope:[up.internalAdmin]})}async function Hy(t){let e=fR(),r=await gR(),i=await fetch(`${e}${t}`,{method:"GET",headers:{"content-type":"application/json","x-fs-service-jwt":r,"x-admin-actor-id":"farthershore-cli",[dR]:pR}});if(!i.ok){let o=(await i.json().catch(()=>null))?.error;throw new b(o?.message??i.statusText,i.status,{code:o?.code,details:o?.details})}if(i.status!==204)return i.json()}function xm(t){if(t==null)return"\u2014";if(t<1e3)return`${t}ms`;let e=t/1e3;if(e<60)return`${e.toFixed(1)}s`;let r=e/60;return r<60?`${r.toFixed(1)}m`:`${(r/60).toFixed(1)}h`}function Vy(t,e=new Date){let r=new Date(t.startedAt).getTime(),i=t.completedAt?new Date(t.completedAt).getTime():t.failedAt?new Date(t.failedAt).getTime():e.getTime();return Math.max(0,i-r)}function us(t){switch(t){case"COMPLETED":case"SUCCEEDED":case"CONVERGED":return M.green;case"RUNNING":case"PENDING":case"PAUSED":case"RETRYING":case"WAITING_FOR_APPROVAL":return M.yellow;case"FAILED":case"DIVERGED":case"STALLED":case"REQUIRES_HUMAN_INTERVENTION":case"TIMEOUT":return M.red;case"ROLLED_BACK":case"CANCELLED":case"COMPENSATED":return M.magenta;default:return e=>e}}function R(t,e){return t.length<=e?t.padEnd(e):e<=1?t.slice(0,e):`${t.slice(0,e-1)}\u2026`}var X={id:30,type:24,business:18,status:16,phase:26,started:24,duration:10};function hR(t,e=new Date){let r=M.dim([R("ID",X.id),R("TYPE",X.type),R("BUSINESS",X.business),R("STATUS",X.status),R("PHASE",X.phase),R("STARTED",X.started),R("DURATION",X.duration)].join(" ")),i=M.dim(["-".repeat(X.id),"-".repeat(X.type),"-".repeat(X.business),"-".repeat(X.status),"-".repeat(X.phase),"-".repeat(X.started),"-".repeat(X.duration)].join(" ")),n=t.map(o=>{let a=xm(Vy(o,e)),c=us(o.status)(R(o.status,X.status));return[R(o.id,X.id),R(o.workflowType,X.type),R(o.businessId??"\u2014",X.business),c,R(o.currentPhase??"\u2014",X.phase),R(o.startedAt,X.started),R(a,X.duration)].join(" ")});return[r,i,...n].join(`
2187
+ `)}function we(t,e){let r;return e==null||e===""?r=M.dim("(unset)"):typeof e=="object"?r=JSON.stringify(e):typeof e=="string"||typeof e=="number"||typeof e=="boolean"?r=String(e):r=JSON.stringify(e),` ${M.dim(t.padEnd(20))}${r}`}var Ne={stepName:28,phase:26,status:14,attempt:8,duration:10},yn={eventType:28,occurredAt:24,payload:60},kn={surface:24,status:14,delta:60};function bR(t){if(t.length===0)return M.dim(" (no steps recorded)");let e=M.dim([R("STEP",Ne.stepName),R("PHASE",Ne.phase),R("STATUS",Ne.status),R("ATTEMPT",Ne.attempt),R("DURATION",Ne.duration)].join(" ")),r=t.map(i=>[R(i.stepName,Ne.stepName),R(i.phase,Ne.phase),us(i.status)(R(i.status,Ne.status)),R(String(i.attempt),Ne.attempt),R(xm(i.durationMs),Ne.duration)].join(" "));return[e,...r].join(`
2188
+ `)}function vR(t){return Object.keys(t).length===0?"(empty)":JSON.stringify(t)}function _R(t){if(t.length===0)return M.dim(" (no events recorded)");let e=M.dim([R("EVENT",yn.eventType),R("OCCURRED AT",yn.occurredAt),R("PAYLOAD",yn.payload)].join(" ")),r=t.map(i=>[R(i.eventType,yn.eventType),R(i.occurredAt,yn.occurredAt),R(vR(i.payload),yn.payload)].join(" "));return[e,...r].join(`
2189
+ `)}function yR(t){if(t.length===0)return M.dim(" (no convergence state recorded)");let e=M.dim([R("SURFACE",kn.surface),R("STATUS",kn.status),R("DELTA",kn.delta)].join(" ")),r=t.map(i=>[R(i.surface,kn.surface),us(i.status)(R(i.status,kn.status)),R(i.deltaDescription??"\u2014",kn.delta)].join(" "));return[e,...r].join(`
2190
+ `)}function kR(t){let{execution:e,steps:r,events:i,convergence:n}=t,o=[];return o.push(M.bold(`Workflow ${e.id}`)),o.push(we("type",e.workflowType)),o.push(we("status",us(e.status)(e.status))),o.push(we("currentPhase",e.currentPhase)),o.push(we("startedAt",e.startedAt)),o.push(we("completedAt",e.completedAt)),o.push(we("triggeredBy",e.triggeredBy)),o.push(we("correlationId",e.correlationId)),o.push(we("businessId",e.businessId)),o.push(we("duration",xm(Vy(e)))),o.push(""),o.push(M.bold("Steps")),o.push(bR(r)),o.push(""),o.push(M.bold("Events")),o.push(_R(i)),o.push(""),o.push(M.bold("Convergence")),o.push(yR(n)),e.errorReason&&(o.push(""),o.push(M.bold(M.red("Error"))),o.push(we("reason",e.errorReason)),o.push(we("classification",e.errorClassification))),o.join(`
2191
+ `)}var km=["RUNNING","COMPLETED","FAILED","ROLLED_BACK","STALLED","REQUIRES_HUMAN_INTERVENTION","WAITING_FOR_APPROVAL","CANCELLED"];function xR(t){if(!t)return 50;let e=Number.parseInt(t,10);if(Number.isNaN(e)||e<=0)throw new b(`--limit must be a positive integer (got "${t}")`,void 0,{code:"INVALID_LIMIT"});return e}function IR(t){let e=new URLSearchParams;if(t.status){if(!km.includes(t.status))throw new b(`--status must be one of: ${km.join(", ")} (got "${t.status}")`,void 0,{code:"INVALID_STATUS"});e.set("status",t.status)}t.type&&e.set("workflowType",t.type),t.business&&e.set("businessId",t.business),e.set("limit",String(xR(t.limit)));let r=e.toString();return r?`?${r}`:""}function Ky(t){let e=t.command("workflows").description("Inspect durable lifecycle workflow executions (list / show)");e.command("ls").description("List workflow executions as a table").option("--status <status>",`Filter by status (one of: ${km.join(", ")})`).option("--type <type>",`Filter by workflow type (e.g. ${mR.join(", ")})`).option("--business <businessId>","Filter by businessId").option("--limit <N>","Maximum number of rows to return (default 50)").action(async r=>{let i=IR(r),n=await Hy(`/internal/admin/workflow/executions${i}`);L(n),te()!=="json"&&(console.log(hR(n.items)),console.log(M.dim(`
2192
+ ${n.items.length} executions${n.nextCursor?" (more available \u2014 pass --limit to see more)":""}`)))}),e.command("show <workflowExecutionId>").description("Show a single workflow execution: header, steps, events, convergence panel").action(async r=>{let i=await Hy(`/internal/admin/workflow/executions/${encodeURIComponent(r)}`);L(i),te()!=="json"&&console.log(kR(i))})}import{spawn as SR}from"node:child_process";import{existsSync as ER,mkdtempSync as wR,writeFileSync as $R}from"node:fs";import{tmpdir as OR}from"node:os";import{join as ds,resolve as TR}from"node:path";var AR="https://core.farthershore.com";function RR(t,e){if(t.mock===!0)return{mock:!0};if(!(t.live===!0||t.coreUrl!=null||e.VITE_FS_CORE_URL!=null||t.clerkPublishableKey!=null||e.VITE_CLERK_PUBLISHABLE_KEY!=null))return{mock:!0};let i=t.coreUrl??e.VITE_FS_CORE_URL??AR,n=t.clerkPublishableKey??e.VITE_CLERK_PUBLISHABLE_KEY,o=t.clerkSignInUrl??e.VITE_CLERK_SIGN_IN_URL,a=t.clerkSatelliteDomain??e.VITE_CLERK_SATELLITE_DOMAIN,c={};return n&&(c.publishableKey=n),o&&(c.signInUrl=o),a&&(c.satelliteDomain=a),{coreUrl:i,...Object.keys(c).length>0?{clerk:c}:{}}}function CR(t){return`<script>window.__FS_CONFIG__ = ${JSON.stringify(t).replace(/</g,"\\u003c")};</script>`}function PR(t){return`import { defineConfig, mergeConfig, loadConfigFromFile } from "vite";
2192
2193
 
2193
2194
  // Generated by \`farthershore frontend preview\` \u2014 injects window.__FS_CONFIG__
2194
2195
  // (the edge does this in production). Throwaway; safe to delete.
@@ -2227,7 +2228,7 @@ export default defineConfig(async (configEnv) => {
2227
2228
  ],
2228
2229
  });
2229
2230
  });
2230
- `}function UT(t){let e=OT(zo(RT(),"fs-frontend-preview-")),r=zo(e,"vite.preview.config.mjs");return TT(r,t,"utf-8"),r}function zT(t,e,r={}){let i=r.existsImpl??$T,n=r.writeTempConfig??UT,o=AT(t.dir??"frontend");if(!i(zo(o,"package.json")))throw new b(`No frontend/ project at ${o} (expected ${zo(o,"package.json")}). Run from a business repo root, or pass --dir <path>.`,void 0,{code:"FRONTEND_PREVIEW_NO_PROJECT"});let a=PT(t,e),c=jT(t),l=NT(a),d=DT(l),u=n(d),p=r.mode??"dev",m=p==="preview"?["vite","preview","--config",u]:["vite","--config",u];return t.port&&m.push("--port",t.port),{cwd:o,config:a,configPath:u,command:"npx",args:m,buildArgs:p==="preview"?["vite","build","--config",u]:null,warnings:c}}function jT(t){if(t.mock!==!0)return[];let e=[t.coreUrl?"--core-url":void 0,t.clerkPublishableKey?"--clerk-publishable-key":void 0,t.clerkSignInUrl?"--clerk-sign-in-url":void 0,t.clerkSatelliteDomain?"--clerk-satellite-domain":void 0].filter(r=>r!==void 0);return e.length===0?[]:[`frontend preview: --mock ignores ${e.join(", ")}; injecting { mock: true } only.`]}function N_(t,e={}){let r=t.commands.find(n=>n.name()==="frontend")??t.command("frontend").description("Managed Frontend Hosting: deploy/status/rollback (+ local preview)"),i=(n,o,a)=>r.command(n).description(o).option("--dir <path>","Frontend project directory (default: ./frontend)").option("--mock","Force mock mode (this is already the default when no Core/Clerk config is given)").option("--live","Preview against the real platform (production Core URL) instead of mock mode").option("--core-url <url>","Platform Core base URL to shim (default: VITE_FS_CORE_URL)").option("--clerk-publishable-key <key>","Clerk publishable key for clerk-strategy envs (default: VITE_CLERK_PUBLISHABLE_KEY)").option("--clerk-sign-in-url <url>","Clerk hosted sign-in URL (default: VITE_CLERK_SIGN_IN_URL)").option("--clerk-satellite-domain <domain>","Clerk satellite domain (default: VITE_CLERK_SATELLITE_DOMAIN)").option("--port <port>","Dev server port (passed to vite)").addHelpText("after",`
2231
+ `}function NR(t){let e=wR(ds(OR(),"fs-frontend-preview-")),r=ds(e,"vite.preview.config.mjs");return $R(r,t,"utf-8"),r}function DR(t,e,r={}){let i=r.existsImpl??ER,n=r.writeTempConfig??NR,o=TR(t.dir??"frontend");if(!i(ds(o,"package.json")))throw new b(`No frontend/ project at ${o} (expected ${ds(o,"package.json")}). Run from a business repo root, or pass --dir <path>.`,void 0,{code:"FRONTEND_PREVIEW_NO_PROJECT"});let a=RR(t,e),c=UR(t),l=CR(a),d=PR(l),u=n(d),p=r.mode??"dev",m=p==="preview"?["vite","preview","--config",u]:["vite","--config",u];return t.port&&m.push("--port",t.port),{cwd:o,config:a,configPath:u,command:"npx",args:m,buildArgs:p==="preview"?["vite","build","--config",u]:null,warnings:c}}function UR(t){if(t.mock!==!0)return[];let e=[t.coreUrl?"--core-url":void 0,t.clerkPublishableKey?"--clerk-publishable-key":void 0,t.clerkSignInUrl?"--clerk-sign-in-url":void 0,t.clerkSatelliteDomain?"--clerk-satellite-domain":void 0].filter(r=>r!==void 0);return e.length===0?[]:[`frontend preview: --mock ignores ${e.join(", ")}; injecting { mock: true } only.`]}function Gy(t,e={}){let r=t.commands.find(n=>n.name()==="frontend")??t.command("frontend").description("Managed Frontend Hosting: deploy/status/rollback (+ local preview)"),i=(n,o,a)=>r.command(n).description(o).option("--dir <path>","Frontend project directory (default: ./frontend)").option("--mock","Force mock mode (this is already the default when no Core/Clerk config is given)").option("--live","Preview against the real platform (production Core URL) instead of mock mode").option("--core-url <url>","Platform Core base URL to shim (default: VITE_FS_CORE_URL)").option("--clerk-publishable-key <key>","Clerk publishable key for clerk-strategy envs (default: VITE_CLERK_PUBLISHABLE_KEY)").option("--clerk-sign-in-url <url>","Clerk hosted sign-in URL (default: VITE_CLERK_SIGN_IN_URL)").option("--clerk-satellite-domain <domain>","Clerk satellite domain (default: VITE_CLERK_SATELLITE_DOMAIN)").option("--port <port>","Dev server port (passed to vite)").addHelpText("after",`
2231
2232
  Examples:
2232
2233
  farthershore frontend dev # HOT-RELOADING dev server, mock mode (default)
2233
2234
  farthershore frontend preview # production build served as-is, mock mode
@@ -2239,7 +2240,8 @@ Mock mode (the default with no Core/Clerk config):
2239
2240
  Injects { mock: true } \u2014 every page renders with placeholder data and
2240
2241
  bypassed auth for local inspection. Point at a real platform with
2241
2242
  --live, --core-url, or VITE_FS_CORE_URL.
2242
- `).action(async l=>{let d=zT(l,process.env,{...e,mode:n});for(let k of d.warnings)De(k);let u=d.config.mock===!0,p=u?`${a} ${d.cwd} with window.__FS_CONFIG__ shimmed ({ mock: true }).`:`${a} ${d.cwd} with window.__FS_CONFIG__ shimmed (coreUrl ${d.config.coreUrl}).`;if(j({action:n==="dev"?"frontend_dev":"frontend_preview",dir:d.cwd,mock:u,coreUrl:d.config.coreUrl??null,clerk:d.config.clerk??null,warnings:d.warnings,command:`${d.command} ${d.args.join(" ")}`},p),e.spawnVite===!1||te()==="json")return;u&&G("Mock mode: placeholder data, auth bypassed \u2014 for local page inspection only.");let m=e.spawnImpl??wT,g=(k,E)=>new Promise(S=>{let R=m(k,E,{cwd:d.cwd,stdio:"inherit"});R.on("close",H=>S(H??0)),R.on("error",H=>{Es(`vite failed to start: ${H.message}`),S(1)})});if(d.buildArgs&&(G(`Building production bundle in ${d.cwd}\u2026`),await g(d.command,d.buildArgs)!==0)){Es("vite build failed; not starting the preview server.");return}G(`Starting vite ${n==="dev"?"dev server (hot reload)":"preview server (production bundle)"} in ${d.cwd}. Ctrl-C to stop.`),await g(d.command,d.args)});i("dev","Run the frontend's HOT-RELOADING `vite` dev server with an injected window.__FS_CONFIG__ shim (mock mode by default) \u2014 for active editing.","Developing"),i("preview","Build the frontend and serve the BUSINESSION bundle via `vite preview` with the same shim (mock mode by default) \u2014 final as-shipped inspection.","Previewing")}var jp=[{opKey:"apply_timeline.list",operationClass:"operate",scope:["businesses:read"],sideEffect:"read",cli:{group:"apply-timeline",command:"list",summary:"List a business's Apply Timeline: repo-triggered manifest applies (PRs, pushes, releases), checks, semantic diffs, and apply phases.",args:[{field:"businessId",kind:"positional",token:"<businessIdOrName>",resolveBusiness:!0},{field:"env",kind:"flag",token:"--env <env>",describe:"Environment scope: production, all, or a preview environment name."}],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=await t.listApplyTimeline(i,{env:e.env});r({businessId:i,count:n.data.length,applyTimeline:n.data},`${n.data.length} apply timeline entr(ies)`)}},mcp:null},{opKey:"apply_timeline.read",operationClass:"operate",scope:["businesses:read"],sideEffect:"read",cli:{group:"apply-timeline",command:"inspect",summary:"Inspect one Apply Timeline entry by id, PR number, branch, or commit SHA.",args:[{field:"businessId",kind:"positional",token:"<businessIdOrName>",resolveBusiness:!0},{field:"selector",kind:"positional",token:"<id|pr|branch|sha>"},{field:"env",kind:"flag",token:"--env <env>",describe:"Environment scope: production, all, or a preview environment name."}],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=String(e.selector),o=await t.listApplyTimeline(i,{env:e.env}),a=o.data.find(c=>c.id===n)??o.data.find(c=>c.prNumber!==null&&String(c.prNumber)===n)??o.data.find(c=>c.branch===n)??o.data.find(c=>c.commitSha.startsWith(n));if(!a)throw new b(`Apply timeline entry ${n} was not found.`,404,{code:"APPLY_TIMELINE_ENTRY_NOT_FOUND"});r({businessId:i,applyTimelineEntry:a},`Apply timeline entry ${a.id}: ${a.status}`)}},mcp:null}];function D_(t,e){N(t,e,jp)}var hr="The business id or slug.",br="The subscriber (client org) id \u2014 from `consumer list`.",Lp="The governed ChangeSet id.",jo={field:"businessId",kind:"positional",token:"<businessIdOrSlug>",describe:hr,resolveBusiness:!0},Lo={field:"subscriberId",kind:"positional",token:"<subscriberId>",describe:br},U_={field:"changeSetId",kind:"positional",token:"<changeSetId>",describe:Lp},Mo={field:"env",kind:"flag",token:"--env <env>",describe:"Environment name/id to scope the proposal to."};function LT(t){let e;try{e=JSON.parse(t)}catch{throw new b("--operations must be a JSON array of governed operations.",0,{code:"INVALID_OPERATIONS"})}if(!Array.isArray(e))throw new b("--operations must be a JSON array.",0,{code:"INVALID_OPERATIONS"});return e}async function Fo(t,e){return A(t,e)}var Mp=[{opKey:"change_set.propose",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:"proposal",command:"create",summary:"Propose a governed ChangeSet against a subscriber (agent/builder proposer; a human approves + applies in the portal)",idempotent:!0,args:[jo,Lo,{field:"intent",kind:"flag",token:"--intent <intent>",describe:"Human-readable description of the proposed change.",required:!0},{field:"operations",kind:"flag",token:"--operations <json>",describe:"JSON array of governed operations (e.g. update_role_permissions).",required:!0,parser:t=>LT(t)},Mo],handler:async({client:t,args:e,reqOpts:r,emit:i,emitDryRunPreview:n})=>{let o=e.businessId,a=e.subscriberId,c=await t.proposeConsumerChangeSet(o,a,{intent:e.intent,operations:e.operations,...r.idempotencyKey?{idempotencyKey:r.idempotencyKey}:{}},{env:e.env},r);n(c)||i(c,"ChangeSet proposed")}},mcp:{tool:"fs_proposal_create",title:"Propose a governed ChangeSet",description:"Propose a governed ChangeSet against a subscriber's live RBAC state (Agent Proposal Flow). Creates a DRAFT proposal that a HUMAN in the subscriber org must preview, approve, and apply in the portal \u2014 an agent can propose but never self-approve or apply. Operate-class live-state action; does not edit repo-authored business behavior.",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!0,openWorldHint:!0},inputSchema:{businessId:s.string().describe(hr),subscriberId:s.string().describe(br),intent:s.string().describe("Human-readable description of the proposed change."),operations:s.array(s.record(s.string(),s.unknown())).describe("Governed operations, e.g. [{ type: 'update_role_permissions', schemaVersion: 1, target: { resourceType: 'subscriber_business_role', resourceId: '<roleKey>' }, payload: { permissions: [...] } }]."),env:s.string().optional().describe("Environment name/id to scope the proposal to."),idempotencyKey:s.string().optional().describe("Replay-safe idempotency key for the proposal.")},handler:async(t,e)=>{let r=await Fo(t,e.businessId);return t.proposeConsumerChangeSet(r,e.subscriberId,{intent:e.intent,operations:e.operations,...e.idempotencyKey?{idempotencyKey:e.idempotencyKey}:{}},{env:e.env})}}},{opKey:"change_set.preview",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:"proposal",command:"preview",summary:"Simulate + store a preview on a proposed ChangeSet (rides the propose authority)",args:[jo,Lo,U_,Mo],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=await t.previewConsumerChangeSet(i,e.subscriberId,e.changeSetId,{env:e.env});r(n,"ChangeSet preview stored")}},mcp:{tool:"fs_proposal_preview",title:"Preview a proposed ChangeSet",description:"Simulate the impact of a proposed ChangeSet and store the preview (Agent Proposal Flow). Enforced by the same authority as propose \u2014 there is no separate preview permission. Read-shaped but writes the stored simulation; does not apply the change.",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!0,openWorldHint:!0},inputSchema:{businessId:s.string().describe(hr),subscriberId:s.string().describe(br),changeSetId:s.string().describe(Lp),env:s.string().optional().describe("Environment name/id.")},handler:async(t,e)=>{let r=await Fo(t,e.businessId);return t.previewConsumerChangeSet(r,e.subscriberId,e.changeSetId,{env:e.env})}}},{opKey:"change_set.proposal_list",operationClass:"operate",scope:["businesses:read"],sideEffect:"read",cli:{group:"proposal",command:"list",summary:"List governed ChangeSets proposed against a subscriber",args:[jo,Lo,{field:"status",kind:"flag",token:"--status <status>",describe:"Filter by status (e.g. draft, approval_required)."},Mo],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=await t.listConsumerChangeSets(i,e.subscriberId,{env:e.env,status:e.status});r(n,"Proposed ChangeSets")}},mcp:{tool:"fs_proposal_list",title:"List proposed ChangeSets",description:"List governed ChangeSets proposed against a subscriber (Agent Proposal Flow). Read-only; use it to discover proposal ids + their status before previewing.",annotations:{readOnlyHint:!0,openWorldHint:!0},inputSchema:{businessId:s.string().describe(hr),subscriberId:s.string().describe(br),status:s.string().optional().describe("Filter by status (e.g. draft, approval_required)."),env:s.string().optional().describe("Environment name/id.")},handler:async(t,e)=>{let r=await Fo(t,e.businessId);return t.listConsumerChangeSets(r,e.subscriberId,{env:e.env,status:e.status})}}},{opKey:"change_set.proposal_read",operationClass:"operate",scope:["businesses:read"],sideEffect:"read",cli:{group:"proposal",command:"get",summary:"Read one governed ChangeSet proposed against a subscriber",args:[jo,Lo,U_,Mo],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=await t.getConsumerChangeSet(i,e.subscriberId,e.changeSetId,{env:e.env});r(n,"ChangeSet")}},mcp:{tool:"fs_proposal_get",title:"Read a proposed ChangeSet",description:"Read one governed ChangeSet proposed against a subscriber (Agent Proposal Flow) \u2014 its operations, risk, simulation, approvals, and status. Read-only.",annotations:{readOnlyHint:!0,openWorldHint:!0},inputSchema:{businessId:s.string().describe(hr),subscriberId:s.string().describe(br),changeSetId:s.string().describe(Lp),env:s.string().optional().describe("Environment name/id.")},handler:async(t,e)=>{let r=await Fo(t,e.businessId);return t.getConsumerChangeSet(r,e.subscriberId,e.changeSetId,{env:e.env})}}}];function z_(t,e){N(t,e,Mp)}import{existsSync as Bo,readFileSync as MT}from"node:fs";import{dirname as F_,join as Ho,parse as B_,resolve as Fp}from"node:path";var H_="farther-shore/skills",FT="v1.1.0",j_=["farthershore-overview","farthershore-onboarding","farthershore-sdk-operating-model","farthershore-environments-and-releasing","farthershore-operating-and-escalation"],BT=[{packageName:"@farthershore/business",major:0,minor:1,skills:["farthershore-product-as-code","farthershore-plans-and-billing","farthershore-business-sdk-0-1"]},{packageName:"@farthershore/farthershore-js",major:0,minor:8,skills:["farthershore-frontend-hosting","farthershore-frontend-sdk-0-8"]},{packageName:"@farthershore/backend",major:0,minor:8,skills:["farthershore-backends-and-tokens","farthershore-backend-sdk-0-8"]}];function V_(t){let e=t.match(/(?<major>\d+)\.(?<minor>\d+)\.(?<patch>\d+)/);return e?.groups?{major:Number(e.groups.major),minor:Number(e.groups.minor),patch:Number(e.groups.patch)}:null}function HT(t){let e=Fp(t),r=B_(e).root;for(;;){if(Bo(Ho(e,".git"))||Bo(Ho(e,"AGENTS.md")))return e;if(e===r)return Fp(t);e=F_(e)}}function VT(t){let e=HT(t),r=new Set;for(let o of["business/package.json","frontend/package.json","backend/package.json","package.json"]){let a=Ho(e,o);Bo(a)&&r.add(a)}let i=Fp(t),n=B_(i).root;for(;;){let o=Ho(i,"package.json");if(Bo(o)&&r.add(o),i===e||i===n)break;i=F_(i)}return[...r]}function ZT(t,e){for(let r of["dependencies","devDependencies","peerDependencies","optionalDependencies"]){let i=t[r];if(!i||typeof i!="object"||Array.isArray(i))continue;let n=i[e];if(typeof n=="string")return n}return null}function KT(t=process.cwd()){let e=new Map;for(let r of VT(t)){let i;try{i=JSON.parse(MT(r,"utf8"))}catch{continue}for(let n of["@farthershore/business","@farthershore/farthershore-js","@farthershore/backend"]){if(e.has(n))continue;let o=ZT(i,n);if(!o)continue;let a=V_(o);a&&e.set(n,{packageName:n,requestedRange:o,version:`${a.major}.${a.minor}.${a.patch}`,packageJsonPath:r})}}return[...e.values()]}function GT(t){let e=V_(t.version);return e?BT.find(i=>i.packageName===t.packageName&&i.major===e.major&&i.minor===e.minor)?.skills??null:null}function L_(t){return["npx --yes skills add",H_,"-y","--skill",t.join(" ")].join(" ")}function WT(t){let e=new Set(j_),r=[],i=[];for(let o of t){let a=GT(o);if(!a){i.push({...o,reason:"No compatible Farther Shore skill file is known for this SDK major/minor version."});continue}let c=[...a].sort();r.push({...o,skills:c,command:L_(c)});for(let l of c)e.add(l)}let n=[...e].sort();return{package:H_,release:FT,baseSkills:[...j_].sort(),detected:t,tracks:r,unsupported:i,skills:n,command:L_(n)}}function Bp(t=process.cwd()){return WT(KT(t))}var M_=!1;function Z_(t=process.cwd()){if(M_||process.env.FARTHERSHORE_SKIP_SKILLS_NOTICE==="1")return;let e=Bp(t);if(e.unsupported.length===0)return;M_=!0;let r=e.unsupported.map(i=>`${i.packageName}@${i.requestedRange}`).join(", ");process.stderr.write([`Farther Shore skills: no compatible skill file is known for ${r}.`,"Run `farthershore skills recommend --format json`; the returned tracks are per SDK, so update only the Business or Frontend skill track that matches the SDK you changed.",""].join(`
2243
- `))}function K_(t){t.command("skills").description("Recommend SDK-compatible Farther Shore agent skills").command("recommend").description("Read local Farther Shore SDK package versions and recommend compatible skills").option("--dir <path>","Repository or package directory to inspect",process.cwd()).action(r=>{let i=Bp(r.dir);j({recommendation:i},"Farther Shore skills recommendation"),G(`Package: ${i.package}@${i.release}`),i.detected.length>0?G(`Detected SDKs: ${i.detected.map(n=>`${n.packageName}@${n.requestedRange}`).join(", ")}`):De("No @farthershore SDK package versions found."),i.unsupported.length>0&&De(`Unsupported SDK versions: ${i.unsupported.map(n=>`${n.packageName}@${n.requestedRange}`).join(", ")}`),i.tracks.length>0&&(G(`SDK skill tracks: ${i.tracks.map(n=>`${n.packageName}@${n.requestedRange} -> ${n.skills.join(", ")}`).join("; ")}`),G(`Track installs: ${i.tracks.map(n=>`${n.packageName}: ${n.command}`).join("; ")}`),G("Use a track install when only that SDK changed; use the full install for fresh setup.")),G(`Install: ${i.command}`)})}var dt="The business id or slug.",vr="The webhook endpoint id.",ln="billing:manage",un={field:"businessId",kind:"positional",token:"<businessIdOrSlug>",describe:dt,resolveBusiness:!0},Vo={field:"webhookId",kind:"positional",token:"<webhookId>",describe:vr},G_={field:"events",kind:"flag",token:"--events <events>",describe:"Comma-separated event names, e.g. subscription.created,payment.failed"},W_={field:"limit",kind:"flag",token:"--limit <n>",describe:"Max rows to return."};function q_(t){if(typeof t!="string")return;let e=t.split(",").map(r=>r.trim()).filter(r=>r.length>0);return e.length>0?e:void 0}function J_(t){if(!t||typeof t!="object")return[];let e=t;return Array.isArray(e.data)?e.data:[]}function Y_(t,e){if(!t||typeof t!="object")return e;let r=t;return typeof r.total=="number"?r.total:typeof r.pagination?.total=="number"?r.pagination.total:e}function qT(t){let e=t.enable===!0,r=t.disable===!0;if(e&&r)throw new b("Pass either --enable or --disable, not both.",400,{code:"VALIDATION_ERROR",param:"enabled"});if(e)return!0;if(r)return!1}async function dn(t,e){return A(t,e)}var Hp=[{opKey:"webhook.read",operationClass:"operate",scope:[ln],sideEffect:"read",cli:{group:"webhook",command:"list",summary:"List API-managed webhook endpoints",args:[un,W_],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=await t.managementListWebhooks(i,{limit:e.limit}),o=J_(n);r({businessId:i,count:o.length,total:Y_(n,o.length),webhooks:o},`${o.length} webhook(s)`)}},mcp:{tool:"fs_webhook_list",title:"List webhook endpoints",description:"List API-managed outbound webhook endpoints for a business. Read-only; signing secrets are never returned.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(dt),limit:s.string().optional().describe("Max rows to return.")},handler:async(t,e)=>{let r=await dn(t,e.businessId);return t.managementListWebhooks(r,{limit:e.limit})}}},{opKey:"webhook.create",operationClass:"operate",scope:[ln],sideEffect:"write",cli:{group:"webhook",command:"create",summary:"Create an API-managed webhook endpoint",idempotent:!0,args:[un,{field:"url",kind:"flag",token:"--url <url>",describe:"HTTPS receiver URL.",required:!0},{...G_,required:!0}],handler:async({client:t,args:e,reqOpts:r,emit:i,emitDryRunPreview:n})=>{let o=q_(e.events);if(!o)throw new b("At least one webhook event is required.",400,{code:"VALIDATION_ERROR",param:"events"});let a=await t.managementCreateWebhook(e.businessId,{url:e.url,events:o},r);n(a)||i({businessId:e.businessId,webhook:a.data},"Webhook endpoint created")}},mcp:{tool:"fs_webhook_create",title:"Create webhook endpoint",description:"Create an API-managed outbound webhook endpoint for a business. Returns the signing secret once. If webhooks are declared in business/index.ts, Core returns 409 MANAGED_BY_CODE and the repo must be edited instead.",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!0,openWorldHint:!0},returnsOneTimeSecret:!0,inputSchema:{businessId:s.string().describe(dt),url:s.string().url().describe("HTTPS receiver URL."),events:s.array(s.string()).min(1).describe("Webhook event names to subscribe to."),...Y},handler:async(t,e)=>{let r=await dn(t,e.businessId);return t.managementCreateWebhook(r,{url:e.url,events:e.events},{idempotencyKey:e.idempotencyKey})}}},{opKey:"webhook.update",operationClass:"operate",scope:[ln],sideEffect:"write",cli:{group:"webhook",command:"update",summary:"Update a webhook endpoint's events or enabled state",idempotent:!0,args:[un,Vo,G_,{field:"enable",kind:"flag",token:"--enable",describe:"Enable delivery for this endpoint."},{field:"disable",kind:"flag",token:"--disable",describe:"Disable delivery for this endpoint."}],handler:async({client:t,args:e,reqOpts:r,emit:i,emitDryRunPreview:n})=>{let o=q_(e.events),a=qT(e);if(!o&&a===void 0)throw new b("Pass --events, --enable, or --disable to update a webhook.",400,{code:"VALIDATION_ERROR"});let c=await t.managementUpdateWebhook(e.businessId,e.webhookId,{...o?{events:o}:{},...a!==void 0?{enabled:a}:{}},r);n(c)||i({businessId:e.businessId,webhook:c.data},"Webhook endpoint updated")}},mcp:{tool:"fs_webhook_update",title:"Update webhook endpoint",description:"Update an API-managed webhook endpoint's event list and/or enabled state. URL and secret are immutable; create a new endpoint for those changes.",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(dt),webhookId:s.string().describe(vr),events:s.array(s.string()).min(1).optional().describe("Replacement webhook event list."),enabled:s.boolean().optional().describe("Enable or disable delivery."),...Y},handler:async(t,e)=>{let r=await dn(t,e.businessId);return t.managementUpdateWebhook(r,e.webhookId,{events:e.events,enabled:e.enabled},{idempotencyKey:e.idempotencyKey})}}},{opKey:"webhook.delete",operationClass:"operate",scope:[ln],sideEffect:"write",cli:{group:"webhook",command:"delete",summary:"Delete an API-managed webhook endpoint. Requires --yes.",destructive:!0,yesMessage:"Pass --yes to confirm webhook endpoint deletion.",args:[un,Vo],handler:async({client:t,args:e,emit:r})=>{await t.managementDeleteWebhook(e.businessId,e.webhookId),r({businessId:e.businessId,deleted:e.webhookId},"Webhook endpoint deleted")}},mcp:{tool:"fs_webhook_delete",title:"Delete webhook endpoint",description:"Delete an API-managed outbound webhook endpoint. If webhooks are repo-managed, Core returns 409 MANAGED_BY_CODE.",annotations:{readOnlyHint:!1,destructiveHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(dt),webhookId:s.string().describe(vr)},handler:async(t,e)=>{let r=await dn(t,e.businessId);return t.managementDeleteWebhook(r,e.webhookId)}}},{opKey:"webhook.test",operationClass:"operate",scope:[ln],sideEffect:"write",cli:{group:"webhook",command:"test",summary:"Send a signed test event to a webhook endpoint",args:[un,Vo],handler:async({client:t,args:e,emit:r})=>{let i=await t.managementTestWebhook(e.businessId,e.webhookId);r({businessId:e.businessId,result:i},"Webhook test sent")}},mcp:{tool:"fs_webhook_test",title:"Test webhook endpoint",description:"Send a signed test event to an API-managed webhook endpoint and persist the delivery result.",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!1,openWorldHint:!0},inputSchema:{businessId:s.string().describe(dt),webhookId:s.string().describe(vr)},handler:async(t,e)=>{let r=await dn(t,e.businessId);return t.managementTestWebhook(r,e.webhookId)}}},{opKey:"webhook.delivery.read",operationClass:"operate",scope:[ln],sideEffect:"read",cli:{group:"webhook",command:"deliveries",summary:"List recent delivery attempts for a webhook endpoint",args:[un,Vo,W_],handler:async({client:t,args:e,emit:r})=>{let i=await t.managementListWebhookDeliveries(e.businessId,e.webhookId,{limit:e.limit}),n=J_(i);r({businessId:e.businessId,webhookId:e.webhookId,count:n.length,total:Y_(i,n.length),deliveries:n},`${n.length} delivery attempt(s)`)}},mcp:{tool:"fs_webhook_deliveries",title:"List webhook deliveries",description:"List recent delivery attempts for a webhook endpoint. Payload and response body are intentionally omitted by Core.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(dt),webhookId:s.string().describe(vr),limit:s.string().optional().describe("Max rows to return.")},handler:async(t,e)=>{let r=await dn(t,e.businessId);return t.managementListWebhookDeliveries(r,e.webhookId,{limit:e.limit})}}}];function X_(t,e){N(t,e,Hp)}var pn="The business id or slug.",Je="operator",_r={field:"businessId",kind:"positional",token:"<businessIdOrSlug>",describe:pn,resolveBusiness:!0};async function yr(t,e){return A(t,e)}var Vp=[{opKey:"agents.list",operationClass:"operate",scope:["businesses:read"],sideEffect:"read",cli:{group:"agents",command:"list",summary:"List a business's operating agents + enableable roles",args:[_r],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=await t.builderListAgents(i);r({businessId:i,...n},`${n.agents.length} agent(s) \u2014 enableable roles: ${n.availableRoles.join(", ")}`)}},mcp:{tool:"fs_agents_list",title:"List operating agents",description:"The agent roster for a business: the enabled/disabled Operator plus any roles that can still be enabled. Read-only.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(pn)},handler:async(t,e)=>{let r=await yr(t,e.businessId);return t.builderListAgents(r)}}},{opKey:"agents.status",operationClass:"operate",scope:["businesses:read"],sideEffect:"read",cli:{group:"agents",command:"status",summary:"The Operator's activation state, recent runs, and usage totals",args:[_r],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=await t.builderAgentStatus(i,Je);r({businessId:i,...n},`operator: ${n.enabled?"ENABLED":"disabled"} \u2014 last run ${n.lastRunAt??"never"}; ${n.recentRuns.length} recent run(s); ${n.usage.tokensIn+n.usage.tokensOut} tokens, ${n.usage.actionsCount} action(s) lifetime`)}},mcp:{tool:"fs_agents_status",title:"Get the Operator's status",description:"The Operator's activation state, recent run history (newest-first), and lifetime usage totals (LLM tokens + actions). Read-only.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(pn)},handler:async(t,e)=>{let r=await yr(t,e.businessId);return t.builderAgentStatus(r,Je)}}},{opKey:"agents.runs.show",operationClass:"operate",scope:["businesses:read"],sideEffect:"read",cli:{group:"agents",command:"runs-show",summary:"One run's full paper trail: trace, launches, action receipts",args:[_r,{field:"runId",kind:"positional",token:"<runId>",describe:"The agent run id (from `agents status`)."}],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=await t.builderAgentRunDetail(i,Je,e.runId),o=n.launches?.length??0,a=n.actions?.length??0;r({businessId:i,...n},`run ${n.run?.id}: ${o} launch(es), ${a} action receipt(s)`)}},mcp:{tool:"fs_agents_run_show",title:"Get one agent run's paper trail",description:"One run's full audit view: the orchestrator's trace summary (composed launches, verify flags, catalog changes), the per-launch performance ledger, and every platform-action receipt. Read-only.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(pn),runId:s.string().describe("The agent run id.")},handler:async(t,e)=>{let r=await yr(t,e.businessId);return t.builderAgentRunDetail(r,Je,e.runId)}}},{opKey:"agents.enable",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:"agents",command:"enable",summary:"Turn the Operator on (creates it on first enable)",args:[_r],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=await t.builderConfigureAgent(i,Je,{enabled:!0});r({businessId:i,agent:n},"operator ENABLED \u2014 it runs autonomously on its cadence and posts to the bulletin; usage bills while enabled")}},mcp:{tool:"fs_agents_enable",title:"Enable the Operator",description:"Turn the business's Operator agent on (created on first enable). It runs autonomously on its cadence; agent-work billing accrues while enabled.",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(pn)},handler:async(t,e)=>{let r=await yr(t,e.businessId);return t.builderConfigureAgent(r,Je,{enabled:!0})}}},{opKey:"agents.disable",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:"agents",command:"disable",summary:"Turn the Operator off (stops runs + billing)",args:[_r],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=await t.builderConfigureAgent(i,Je,{enabled:!1});r({businessId:i,agent:n},"operator disabled \u2014 no further runs; billing stops accruing")}},mcp:{tool:"fs_agents_disable",title:"Disable the Operator",description:"Turn the Operator off: the dispatcher stops scheduling runs and agent-work billing stops accruing. Re-enable at any time.",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(pn)},handler:async(t,e)=>{let r=await yr(t,e.businessId);return t.builderConfigureAgent(r,Je,{enabled:!1})}}}];function Q_(t,e){N(t,e,Vp)}var kr="The business id or slug.",Go="The bulletin post id.",Zo={field:"businessId",kind:"positional",token:"<businessIdOrSlug>",describe:kr,resolveBusiness:!0},Zp={field:"postId",kind:"positional",token:"<postId>",describe:Go};async function Ko(t,e){return A(t,e)}var Kp=[{opKey:"bulletin.list",operationClass:"operate",scope:["businesses:read"],sideEffect:"read",cli:{group:"bulletin",command:"list",summary:"List the agents' bulletin feed (trends + change requests)",args:[Zo,{field:"kind",kind:"flag",token:"--kind <kind>",describe:"Filter: trend | insight | change_request"},{field:"status",kind:"flag",token:"--status <status>",describe:"Filter: open | acknowledged | resolved"},{field:"limit",kind:"flag",token:"--limit <n>",describe:"Max rows to return."}],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=await t.builderListBulletin(i,{kind:e.kind,status:e.status,limit:e.limit});r({businessId:i,...n},`${n.items.length} post(s)${n.nextCursor?" (more available)":""}`)}},mcp:{tool:"fs_bulletin_list",title:"List bulletin posts",description:"The agents' bulletin feed for a business: trend/insight posts (aggregated data + deltas) and change_request posts (the coding agent's backlog \u2014 filter --kind change_request --status open). Read-only.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(kr),kind:s.enum(["trend","insight","change_request"]).optional().describe("Filter by post kind."),status:s.enum(["open","acknowledged","resolved"]).optional().describe("Filter by post status."),limit:s.string().optional().describe("Max rows to return.")},handler:async(t,e)=>{let r=await Ko(t,e.businessId);return t.builderListBulletin(r,{kind:e.kind,status:e.status,limit:e.limit})}}},{opKey:"bulletin.read",operationClass:"operate",scope:["businesses:read"],sideEffect:"read",cli:{group:"bulletin",command:"show",summary:"Show one bulletin post (full body + data payload)",args:[Zo,Zp],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=await t.builderGetBulletinPost(i,e.postId);r({businessId:i,post:n},`[${n.kind}] ${n.title} \u2014 ${n.status}${n.changeSetId?` (changeSet ${n.changeSetId})`:""}`)}},mcp:{tool:"fs_bulletin_show",title:"Show a bulletin post",description:"One bulletin post in full: markdown body, the dataJson payload backing the claim, and for change requests the referenced ChangeSet id + proposal. Read-only.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(kr),postId:s.string().describe(Go)},handler:async(t,e)=>{let r=await Ko(t,e.businessId);return t.builderGetBulletinPost(r,e.postId)}}},{opKey:"bulletin.ack",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:"bulletin",command:"ack",summary:"Acknowledge a post (the coding agent picked it up)",args:[Zo,Zp],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=await t.builderSetBulletinStatus(i,e.postId,"acknowledged");r({businessId:i,post:n},`Post acknowledged: ${n.title}`)}},mcp:{tool:"fs_bulletin_ack",title:"Acknowledge a bulletin post",description:"Mark a bulletin post acknowledged \u2014 the hand-off signal that the coding agent (or builder) has picked the item up. Forward-only; idempotent on an already-acknowledged post.",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(kr),postId:s.string().describe(Go)},handler:async(t,e)=>{let r=await Ko(t,e.businessId);return t.builderSetBulletinStatus(r,e.postId,"acknowledged")}}},{opKey:"bulletin.resolve",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:"bulletin",command:"resolve",summary:"Resolve a post (the work landed)",args:[Zo,Zp],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=await t.builderSetBulletinStatus(i,e.postId,"resolved");r({businessId:i,post:n},`Post resolved: ${n.title}`)}},mcp:{tool:"fs_bulletin_resolve",title:"Resolve a bulletin post",description:"Mark a bulletin post resolved \u2014 the referenced work landed (or the trend was addressed). Terminal state.",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(kr),postId:s.string().describe(Go)},handler:async(t,e)=>{let r=await Ko(t,e.businessId);return t.builderSetBulletinStatus(r,e.postId,"resolved")}}}];function ey(t,e){N(t,e,Kp)}var mn="The business id or slug.",qo="The promo code id.",Wp=["percent_off","amount_off","free_months"],xr="promo-code",Ir={field:"businessId",kind:"positional",token:"<businessIdOrSlug>",describe:mn,resolveBusiness:!0},Gp={field:"promoCodeId",kind:"positional",token:"<promoCodeId>",describe:qo},ty={field:"plan",kind:"flag",token:"--plan <planId>",describe:"Limit to a plan id. Repeatable. Omit for all launch plans; use --all-plans on update to clear scoped plans.",parser:(t,e)=>[...e,t],defaultValue:[]};function ny(t){if(typeof t!="string")return;let e=t.trim().toLowerCase();if(Wp.includes(e))return e;throw new b(`Invalid promo code kind "${t}". Use percent_off, amount_off, or free_months.`,400,{code:"INVALID_PROMO_CODE_KIND",param:"kind"})}function fn(t,e){if(e===void 0)return;let r=typeof e=="number"?e:typeof e=="string"&&/^\d+$/.test(e.trim())?Number.parseInt(e,10):Number.NaN;if(!Number.isInteger(r)||r<=0)throw new b(`${t} must be a positive integer.`,400,{code:"INVALID_PROMO_CODE_FIELD",param:t});return r}function Er(t){return typeof t=="string"&&t.length>0?t:void 0}function ry(t,e){let r=fn("percent",t.percent),i=fn("amountCents",t.amountCents);if(r!==void 0&&i!==void 0)throw new b("Pass either --percent or --amount-cents, not both.",400,{code:"CONFLICTING_PROMO_AMOUNT_FLAGS",param:"amount"});if(e==="percent_off"){if(r===void 0)throw new b("percent_off promo codes require --percent.",400,{code:"INVALID_PROMO_CODE_FIELD",param:"percent"});if(r>100)throw new b("--percent must be between 1 and 100.",400,{code:"INVALID_PROMO_CODE_FIELD",param:"percent"});return r}if(e==="amount_off"){if(i===void 0)throw new b("amount_off promo codes require --amount-cents.",400,{code:"INVALID_PROMO_CODE_FIELD",param:"amountCents"});return i}if(e==="free_months"&&(r!==void 0||i!==void 0))throw new b("free_months promo codes do not accept --percent or --amount-cents.",400,{code:"INVALID_PROMO_CODE_FIELD",param:"amount"});return r??i}function iy(t){let e=t.plan??[];if(t.allPlans===!0&&e.length>0)throw new b("Pass either --plan or --all-plans, not both.",400,{code:"CONFLICTING_PROMO_PLAN_FLAGS",param:"plan"});return t.allPlans===!0?[]:e.length>0?e:void 0}function JT(t){let e=ny(t.kind);if(!e)throw new b("Promo code kind is required.",400,{code:"INVALID_PROMO_CODE_FIELD",param:"kind"});let r=fn("durationMonths",t.durationMonths);if(r===void 0)throw new b("--duration-months is required.",400,{code:"INVALID_PROMO_CODE_FIELD",param:"durationMonths"});let i=iy(t);return{code:String(t.code),kind:e,amount:ry(t,e),durationMonths:r,...i!==void 0?{applicablePlanIds:i}:{},maxRedemptions:fn("maxRedemptions",t.maxRedemptions),activeFrom:Er(t.activeFrom),activeUntil:Er(t.activeUntil)}}function YT(t){let e=ny(t.kind),r=fn("durationMonths",t.durationMonths),i=fn("maxRedemptions",t.maxRedemptions),n=iy(t);if(t.code!==void 0||e!==void 0||t.percent!==void 0||t.amountCents!==void 0||r!==void 0||i!==void 0||t.clearMaxRedemptions===!0||t.activeFrom!==void 0||t.activeUntil!==void 0||t.clearActiveFrom===!0||t.clearActiveUntil===!0||n!==void 0){if(e===void 0)throw new b("Promo-code spec updates rotate the Stripe coupon, so pass the complete spec: --kind plus --duration-months and the required amount flag for that kind.",400,{code:"PROMO_CODE_UPDATE_REQUIRES_FULL_SPEC",param:"kind"});if(r===void 0)throw new b("Promo-code spec updates require --duration-months.",400,{code:"PROMO_CODE_UPDATE_REQUIRES_FULL_SPEC",param:"durationMonths"})}let a={},c=Er(t.code);c!==void 0&&(a.code=c),e!==void 0&&(a.kind=e);let l=ry(t,e);if(l!==void 0&&(a.amount=l),r!==void 0&&(a.durationMonths=r),i!==void 0&&(a.maxRedemptions=i),t.clearMaxRedemptions===!0&&(a.maxRedemptions=null),n!==void 0&&(a.applicablePlanIds=n),t.activeFrom!==void 0&&(a.activeFrom=Er(t.activeFrom)??null),t.activeUntil!==void 0&&(a.activeUntil=Er(t.activeUntil)??null),t.clearActiveFrom===!0&&(a.activeFrom=null),t.clearActiveUntil===!0&&(a.activeUntil=null),Object.keys(a).length===0)throw new b("No promo-code fields to update. Pass --code, --kind, amount, duration, plan, status-window, or redemption flags.",400,{code:"PROMO_CODE_UPDATE_NO_FIELDS"});return a}async function Sr(t,e){return A(t,e)}function Wo(t){return{status:t}}var qp=[{opKey:"promo_code.read",operationClass:"operate",scope:["businesses:read"],sideEffect:"read",cli:{group:xr,command:"list",summary:"List API-managed promo codes for checkout",args:[Ir],handler:async({client:t,args:e,emit:r})=>{let i=await t.listPromoCodes(e.businessId);r({businessId:e.businessId,count:i.length,promoCodes:i},`${i.length} promo code(s)`)}},mcp:{tool:"fs_promo_code_list",title:"List promo codes",description:"List API-managed promo codes for a business. Promo codes are checkout operational state, not repo-authored Business SDK state.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(mn)},handler:async(t,e)=>{let r=await Sr(t,e.businessId);return t.listPromoCodes(r)}}},{opKey:"promo_code.create",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:xr,command:"create",summary:"Create an API-managed checkout promo code",args:[Ir,{field:"code",kind:"flag",token:"--code <code>",describe:"Customer-entered promo code.",required:!0},{field:"kind",kind:"flag",token:"--kind <kind>",describe:"percent_off, amount_off, or free_months.",required:!0},{field:"percent",kind:"flag",token:"--percent <n>",describe:"Percent discount for percent_off promos."},{field:"amountCents",kind:"flag",token:"--amount-cents <cents>",describe:"Fixed discount in cents for amount_off promos."},{field:"durationMonths",kind:"flag",token:"--duration-months <n>",describe:"Discount duration in months.",required:!0},{field:"maxRedemptions",kind:"flag",token:"--max-redemptions <n>",describe:"Optional maximum redemption count."},{field:"activeFrom",kind:"flag",token:"--active-from <iso>",describe:"Optional ISO-8601 activation timestamp."},{field:"activeUntil",kind:"flag",token:"--active-until <iso>",describe:"Optional ISO-8601 expiration timestamp."},ty],handler:async({client:t,args:e,emit:r})=>{let i=await t.createPromoCode(e.businessId,JT(e));r({businessId:e.businessId,promoCode:i},"Promo code created")}},mcp:{tool:"fs_promo_code_create",title:"Create promo code",description:"Create an API-managed checkout promo code. Use percent for percent_off, amountCents for amount_off, and no amount for free_months.",annotations:{readOnlyHint:!1,destructiveHint:!1,openWorldHint:!0},inputSchema:{businessId:s.string().describe(mn),code:s.string().min(1).max(64),kind:s.enum(Wp),percent:s.number().int().min(1).max(100).optional(),amountCents:s.number().int().positive().optional(),durationMonths:s.number().int().min(1).max(24),maxRedemptions:s.number().int().positive().optional(),activeFrom:s.string().datetime().optional(),activeUntil:s.string().datetime().optional(),applicablePlanIds:s.array(s.string()).optional()},handler:async(t,e)=>{let r=await Sr(t,e.businessId);return t.createPromoCode(r,{code:e.code,kind:e.kind,amount:e.kind==="percent_off"?e.percent:e.kind==="amount_off"?e.amountCents:void 0,durationMonths:e.durationMonths,maxRedemptions:e.maxRedemptions,activeFrom:e.activeFrom,activeUntil:e.activeUntil,applicablePlanIds:e.applicablePlanIds})}}},{opKey:"promo_code.update",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:xr,command:"update",summary:"Update an API-managed checkout promo code",args:[Ir,Gp,{field:"code",kind:"flag",token:"--code <code>",describe:"Replacement customer-entered promo code."},{field:"kind",kind:"flag",token:"--kind <kind>",describe:"percent_off, amount_off, or free_months."},{field:"percent",kind:"flag",token:"--percent <n>",describe:"Percent discount for percent_off promos."},{field:"amountCents",kind:"flag",token:"--amount-cents <cents>",describe:"Fixed discount in cents for amount_off promos."},{field:"durationMonths",kind:"flag",token:"--duration-months <n>",describe:"Discount duration in months."},{field:"maxRedemptions",kind:"flag",token:"--max-redemptions <n>",describe:"Set maximum redemption count."},{field:"clearMaxRedemptions",kind:"flag",token:"--clear-max-redemptions",describe:"Clear the maximum redemption count."},{field:"activeFrom",kind:"flag",token:"--active-from <iso>",describe:"Set ISO-8601 activation timestamp."},{field:"clearActiveFrom",kind:"flag",token:"--clear-active-from",describe:"Clear activation timestamp."},{field:"activeUntil",kind:"flag",token:"--active-until <iso>",describe:"Set ISO-8601 expiration timestamp."},{field:"clearActiveUntil",kind:"flag",token:"--clear-active-until",describe:"Clear expiration timestamp."},ty,{field:"allPlans",kind:"flag",token:"--all-plans",describe:"Clear plan scoping so the promo applies to all launch plans."}],handler:async({client:t,args:e,emit:r})=>{let i=await t.updatePromoCode(e.businessId,e.promoCodeId,YT(e));r({businessId:e.businessId,promoCode:i},"Promo code updated")}},mcp:{tool:"fs_promo_code_update",title:"Update promo code",description:"Update an API-managed checkout promo code. Spec changes rotate the Stripe coupon/promotion code behind the scenes.",annotations:{readOnlyHint:!1,destructiveHint:!1,openWorldHint:!0},inputSchema:{businessId:s.string().describe(mn),promoCodeId:s.string().describe(qo),code:s.string().min(1).max(64).optional(),kind:s.enum(Wp).optional(),percent:s.number().int().min(1).max(100).optional(),amountCents:s.number().int().positive().optional(),durationMonths:s.number().int().min(1).max(24).optional(),maxRedemptions:s.number().int().positive().nullable().optional(),activeFrom:s.string().datetime().nullable().optional(),activeUntil:s.string().datetime().nullable().optional(),applicablePlanIds:s.array(s.string()).optional()},handler:async(t,e)=>{let r=await Sr(t,e.businessId),i={code:e.code,kind:e.kind,amount:e.kind==="percent_off"?e.percent:e.kind==="amount_off"?e.amountCents:void 0,durationMonths:e.durationMonths,maxRedemptions:e.maxRedemptions,activeFrom:e.activeFrom,activeUntil:e.activeUntil,applicablePlanIds:e.applicablePlanIds};return t.updatePromoCode(r,e.promoCodeId,i)}}},{opKey:"promo_code.archive",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:xr,command:"archive",summary:"Archive a checkout promo code",args:[Ir,Gp],handler:async({client:t,args:e,emit:r})=>{let i=await t.updatePromoCode(e.businessId,e.promoCodeId,Wo("ARCHIVED"));r({businessId:e.businessId,promoCode:i},"Promo code archived")}},mcp:{tool:"fs_promo_code_archive",title:"Archive promo code",description:"Archive an API-managed checkout promo code.",annotations:{readOnlyHint:!1,destructiveHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(mn),promoCodeId:s.string().describe(qo)},handler:async(t,e)=>{let r=await Sr(t,e.businessId);return t.updatePromoCode(r,e.promoCodeId,Wo("ARCHIVED"))}}},{opKey:"promo_code.reactivate",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:xr,command:"reactivate",summary:"Reactivate an archived checkout promo code",args:[Ir,Gp],handler:async({client:t,args:e,emit:r})=>{let i=await t.updatePromoCode(e.businessId,e.promoCodeId,Wo("ACTIVE"));r({businessId:e.businessId,promoCode:i},"Promo code reactivated")}},mcp:{tool:"fs_promo_code_reactivate",title:"Reactivate promo code",description:"Reactivate an archived API-managed checkout promo code.",annotations:{readOnlyHint:!1,destructiveHint:!1,openWorldHint:!1},inputSchema:{businessId:s.string().describe(mn),promoCodeId:s.string().describe(qo)},handler:async(t,e)=>{let r=await Sr(t,e.businessId);return t.updatePromoCode(r,e.promoCodeId,Wo("ACTIVE"))}}}];function oy(t,e){N(t,e,qp)}var wr="The business id or slug.",Xo="The subscriber id from `consumer list`.",Jo={field:"businessId",kind:"positional",token:"<businessIdOrSlug>",describe:wr,resolveBusiness:!0},Jp={field:"subscriberId",kind:"positional",token:"<subscriberId>",describe:Xo},XT={field:"env",kind:"flag",token:"--env <env>",describe:"Environment name for preview-scoped consumers."},sy="The member's external identity id (Clerk userId) within the client org.",QT="Comma-separated business-role keys to set (replaces the current assignment; pass an empty string to clear).",eR={field:"userExternalId",kind:"positional",token:"<userExternalId>",describe:sy};function tR(t){return t.split(",").map(e=>e.trim()).filter(Boolean)}var nR={field:"roles",kind:"flag",token:"--roles <roles>",describe:QT,required:!0,parser:t=>tR(t)};async function Yo(t,e){return A(t,e)}function rR(t){return Array.isArray(t)?t:[]}var Yp=[{opKey:"consumer.read",operationClass:"operate",scope:["businesses:read"],sideEffect:"read",cli:{group:"consumer",command:"list",summary:"List users/consumers for a business",args:[Jo,XT],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=rR(await t.builderListConsumers(i,{env:e.env}));r({businessId:i,count:n.length,consumers:n},`${n.length} consumer(s)`)}},mcp:{tool:"fs_consumer_list",title:"List business consumers",description:"List users/consumers for a business. Read-only; use this to discover subscriber ids before blocking or removing a user.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(wr),env:s.string().optional().describe("Environment name for preview-scoped consumers.")},handler:async(t,e)=>{let r=await Yo(t,e.businessId);return t.builderListConsumers(r,{env:e.env})}}},{opKey:"consumer.block",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:"consumer",command:"block",summary:"Block a user and revoke their active API keys",destructive:!0,yesMessage:"Blocking a user revokes active API keys. Pass --yes to confirm.",args:[Jo,Jp],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=e.subscriberId,o=await t.builderBlockConsumer(i,n);r({businessId:i,subscriberId:n,result:o},`Consumer blocked: ${n}`)}},mcp:{tool:"fs_consumer_block",title:"Block business consumer",description:"Block a user/consumer for a business and revoke their active API keys. Destructive live-state operation; it does not edit repo-authored business behavior.",annotations:{readOnlyHint:!1,destructiveHint:!0,idempotentHint:!0,openWorldHint:!0},inputSchema:{businessId:s.string().describe(wr),subscriberId:s.string().describe(Xo)},handler:async(t,e)=>{let r=await Yo(t,e.businessId);return t.builderBlockConsumer(r,e.subscriberId)}}},{opKey:"consumer.remove",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:"consumer",command:"remove",summary:"Force-remove a user from a business",destructive:!0,yesMessage:"Removing a user tears down subscriptions, edge credentials, and related live state. Pass --yes to confirm.",args:[Jo,Jp],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=e.subscriberId,o=await t.builderRemoveConsumer(i,n);r({businessId:i,subscriberId:n,result:o},`Consumer removed: ${n}`)}},mcp:{tool:"fs_consumer_remove",title:"Remove business consumer",description:"Force-remove a user/consumer from a business, tearing down subscriptions, edge credentials, and related live state. Destructive and irreversible; it does not edit repo-authored business behavior.",annotations:{readOnlyHint:!1,destructiveHint:!0,openWorldHint:!0},inputSchema:{businessId:s.string().describe(wr),subscriberId:s.string().describe(Xo)},handler:async(t,e)=>{let r=await Yo(t,e.businessId);return t.builderRemoveConsumer(r,e.subscriberId)}}},{opKey:"consumer.roles.assign",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:"consumer rbac",command:"assign",summary:"Replace a client-org member's Managed-RBAC business roles (builder support override)",args:[Jo,Jp,eR,nR],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=e.subscriberId,o=e.userExternalId,a=e.roles,c=await t.builderAssignConsumerMemberRoles(i,n,o,a);r({businessId:i,subscriberId:n,membership:c},`Business roles set for ${o}: ${c.businessRoleKeys.length>0?c.businessRoleKeys.join(", "):"(none)"}`)}},mcp:{tool:"fs_consumer_rbac_assign",title:"Assign consumer member business roles",description:"Support override: replace a client-org member's Managed-RBAC business-role assignment on a business (set-replace \u2014 the given list becomes the member's full assignment; an empty list clears it). Role keys must exist in the org's role set. Live-state operation; it does not edit repo-authored business behavior.",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!0,openWorldHint:!0},inputSchema:{businessId:s.string().describe(wr),subscriberId:s.string().describe(Xo),userExternalId:s.string().describe(sy),roles:s.array(s.string()).describe("Business-role keys to set (replaces the current assignment; [] clears it).")},handler:async(t,e)=>{let r=await Yo(t,e.businessId);return t.builderAssignConsumerMemberRoles(r,e.subscriberId,e.userExternalId,e.roles)}}}];function ay(t,e){N(t,e,Yp)}var em="The business id or slug.",tm="Preview environment slug or id (omit for Main).",ly="Variable name, e.g. POSTHOG_TOKEN.",iR=s.enum(["PUBLIC","BUILD","RUNTIME"]),oR="Where the value goes. public = inlined into the frontend BUNDLE (publishable keys: PostHog project key, Stripe pk_, Sentry DSN); build = build environment only, leak-scanned out of the output; runtime = edge only, never reaches the browser.";async function sR(){if(process.stdin.isTTY)throw new b("Pipe the secret value via stdin. Never pass a secret as a command-line flag.",400,{code:"VARIABLE_STDIN_REQUIRED"});let t="";for await(let e of process.stdin)t+=Buffer.isBuffer(e)?e.toString("utf8"):String(e);return t.replace(/\r?\n$/,"")}var aR=sR;async function Qo(t,e,r){return r?rn(t,e,r):void 0}var $r={field:"businessId",kind:"positional",token:"<businessIdOrSlug>",describe:em,resolveBusiness:!0},Xp={field:"name",kind:"positional",token:"<name>",describe:ly},es={field:"env",kind:"flag",token:"--env <slug>",describe:tm},cR={field:"delivery",kind:"flag",token:"--delivery <phase>",describe:"Private delivery boundary: build or runtime. Build values are leak-scanned from artifacts; runtime values are injected only by Gateway.",required:!0};function Qp(t,e){return{businessId:t,operation:e}}function cy(t){return{opKey:t==="set"?"business_variable.create":"business_variable.rotate",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:"variables",command:t,summary:t==="set"?"Create a write-only secret from stdin":"Rotate a write-only secret from stdin",helpTextAfter:`
2243
+ `).action(async l=>{let d=DR(l,process.env,{...e,mode:n});for(let v of d.warnings)Be(v);let u=d.config.mock===!0,p=u?`${a} ${d.cwd} with window.__FS_CONFIG__ shimmed ({ mock: true }).`:`${a} ${d.cwd} with window.__FS_CONFIG__ shimmed (coreUrl ${d.config.coreUrl}).`;if(L({action:n==="dev"?"frontend_dev":"frontend_preview",dir:d.cwd,mock:u,coreUrl:d.config.coreUrl??null,clerk:d.config.clerk??null,warnings:d.warnings,command:`${d.command} ${d.args.join(" ")}`},p),e.spawnVite===!1||te()==="json")return;u&&J("Mock mode: placeholder data, auth bypassed \u2014 for local page inspection only.");let m=e.spawnImpl??SR,f=(v,w)=>new Promise(E=>{let U=m(v,w,{cwd:d.cwd,stdio:"inherit"});U.on("close",H=>E(H??0)),U.on("error",H=>{na(`vite failed to start: ${H.message}`),E(1)})});if(d.buildArgs&&(J(`Building production bundle in ${d.cwd}\u2026`),await f(d.command,d.buildArgs)!==0)){na("vite build failed; not starting the preview server.");return}J(`Starting vite ${n==="dev"?"dev server (hot reload)":"preview server (production bundle)"} in ${d.cwd}. Ctrl-C to stop.`),await f(d.command,d.args)});i("dev","Run the frontend's HOT-RELOADING `vite` dev server with an injected window.__FS_CONFIG__ shim (mock mode by default) \u2014 for active editing.","Developing"),i("preview","Build the frontend and serve the BUSINESSION bundle via `vite preview` with the same shim (mock mode by default) \u2014 final as-shipped inspection.","Previewing")}var Im=[{opKey:"apply_timeline.list",operationClass:"operate",scope:["businesses:read"],sideEffect:"read",cli:{group:"apply-timeline",command:"list",summary:"List a business's Apply Timeline: repo-triggered manifest applies (PRs, pushes, releases), checks, semantic diffs, and apply phases.",args:[{field:"businessId",kind:"positional",token:"<businessIdOrName>",resolveBusiness:!0},{field:"env",kind:"flag",token:"--env <env>",describe:"Environment scope: production, all, or a preview environment name."}],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=await t.listApplyTimeline(i,{env:e.env});r({businessId:i,count:n.data.length,applyTimeline:n.data},`${n.data.length} apply timeline entr(ies)`)}},mcp:null},{opKey:"apply_timeline.read",operationClass:"operate",scope:["businesses:read"],sideEffect:"read",cli:{group:"apply-timeline",command:"inspect",summary:"Inspect one Apply Timeline entry by id, release tag, PR number, branch, or commit SHA.",args:[{field:"businessId",kind:"positional",token:"<businessIdOrName>",resolveBusiness:!0},{field:"selector",kind:"positional",token:"<id|tag|pr|branch|sha>"},{field:"env",kind:"flag",token:"--env <env>",describe:"Environment scope: production, all, or a preview environment name."}],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=String(e.selector),o=await t.listApplyTimeline(i,{env:e.env}),a=o.data.find(c=>c.id===n)??o.data.find(c=>c.releaseTag===n)??o.data.find(c=>c.prNumber!==null&&String(c.prNumber)===n)??o.data.find(c=>c.branch===n)??o.data.find(c=>c.commitSha.startsWith(n));if(!a)throw new b(`Apply timeline entry ${n} was not found.`,404,{code:"APPLY_TIMELINE_ENTRY_NOT_FOUND"});r({businessId:i,applyTimelineEntry:a},`Apply timeline entry ${a.id}: ${a.status}`)}},mcp:null}];function Zy(t,e){C(t,e,Im)}var Cr="The business id or slug.",Pr="The subscriber (client org) id \u2014 from `consumer list`.",Sm="The governed ChangeSet id.",ps={field:"businessId",kind:"positional",token:"<businessIdOrSlug>",describe:Cr,resolveBusiness:!0},ms={field:"subscriberId",kind:"positional",token:"<subscriberId>",describe:Pr},Wy={field:"changeSetId",kind:"positional",token:"<changeSetId>",describe:Sm},fs={field:"env",kind:"flag",token:"--env <env>",describe:"Environment name/id to scope the proposal to."};function zR(t){let e;try{e=JSON.parse(t)}catch{throw new b("--operations must be a JSON array of governed operations.",0,{code:"INVALID_OPERATIONS"})}if(!Array.isArray(e))throw new b("--operations must be a JSON array.",0,{code:"INVALID_OPERATIONS"});return e}async function gs(t,e){return A(t,e)}var Em=[{opKey:"change_set.propose",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:"proposal",command:"create",summary:"Propose a governed ChangeSet against a subscriber (agent/builder proposer; a human approves + applies in the portal)",idempotent:!0,args:[ps,ms,{field:"intent",kind:"flag",token:"--intent <intent>",describe:"Human-readable description of the proposed change.",required:!0},{field:"operations",kind:"flag",token:"--operations <json>",describe:"JSON array of governed operations (e.g. update_role_permissions).",required:!0,parser:t=>zR(t)},fs],handler:async({client:t,args:e,reqOpts:r,emit:i,emitDryRunPreview:n})=>{let o=e.businessId,a=e.subscriberId,c=await t.proposeConsumerChangeSet(o,a,{intent:e.intent,operations:e.operations,...r.idempotencyKey?{idempotencyKey:r.idempotencyKey}:{}},{env:e.env},r);n(c)||i(c,"ChangeSet proposed")}},mcp:{tool:"fs_proposal_create",title:"Propose a governed ChangeSet",description:"Propose a governed ChangeSet against a subscriber's live RBAC state (Agent Proposal Flow). Creates a DRAFT proposal that a HUMAN in the subscriber org must preview, approve, and apply in the portal \u2014 an agent can propose but never self-approve or apply. Operate-class live-state action; does not edit repo-authored business behavior.",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!0,openWorldHint:!0},inputSchema:{businessId:s.string().describe(Cr),subscriberId:s.string().describe(Pr),intent:s.string().describe("Human-readable description of the proposed change."),operations:s.array(s.record(s.string(),s.unknown())).describe("Governed operations, e.g. [{ type: 'update_role_permissions', schemaVersion: 1, target: { resourceType: 'subscriber_business_role', resourceId: '<roleKey>' }, payload: { permissions: [...] } }]."),env:s.string().optional().describe("Environment name/id to scope the proposal to."),idempotencyKey:s.string().optional().describe("Replay-safe idempotency key for the proposal.")},handler:async(t,e)=>{let r=await gs(t,e.businessId);return t.proposeConsumerChangeSet(r,e.subscriberId,{intent:e.intent,operations:e.operations,...e.idempotencyKey?{idempotencyKey:e.idempotencyKey}:{}},{env:e.env})}}},{opKey:"change_set.preview",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:"proposal",command:"preview",summary:"Simulate + store a preview on a proposed ChangeSet (rides the propose authority)",args:[ps,ms,Wy,fs],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=await t.previewConsumerChangeSet(i,e.subscriberId,e.changeSetId,{env:e.env});r(n,"ChangeSet preview stored")}},mcp:{tool:"fs_proposal_preview",title:"Preview a proposed ChangeSet",description:"Simulate the impact of a proposed ChangeSet and store the preview (Agent Proposal Flow). Enforced by the same authority as propose \u2014 there is no separate preview permission. Read-shaped but writes the stored simulation; does not apply the change.",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!0,openWorldHint:!0},inputSchema:{businessId:s.string().describe(Cr),subscriberId:s.string().describe(Pr),changeSetId:s.string().describe(Sm),env:s.string().optional().describe("Environment name/id.")},handler:async(t,e)=>{let r=await gs(t,e.businessId);return t.previewConsumerChangeSet(r,e.subscriberId,e.changeSetId,{env:e.env})}}},{opKey:"change_set.proposal_list",operationClass:"operate",scope:["businesses:read"],sideEffect:"read",cli:{group:"proposal",command:"list",summary:"List governed ChangeSets proposed against a subscriber",args:[ps,ms,{field:"status",kind:"flag",token:"--status <status>",describe:"Filter by status (e.g. draft, approval_required)."},fs],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=await t.listConsumerChangeSets(i,e.subscriberId,{env:e.env,status:e.status});r(n,"Proposed ChangeSets")}},mcp:{tool:"fs_proposal_list",title:"List proposed ChangeSets",description:"List governed ChangeSets proposed against a subscriber (Agent Proposal Flow). Read-only; use it to discover proposal ids + their status before previewing.",annotations:{readOnlyHint:!0,openWorldHint:!0},inputSchema:{businessId:s.string().describe(Cr),subscriberId:s.string().describe(Pr),status:s.string().optional().describe("Filter by status (e.g. draft, approval_required)."),env:s.string().optional().describe("Environment name/id.")},handler:async(t,e)=>{let r=await gs(t,e.businessId);return t.listConsumerChangeSets(r,e.subscriberId,{env:e.env,status:e.status})}}},{opKey:"change_set.proposal_read",operationClass:"operate",scope:["businesses:read"],sideEffect:"read",cli:{group:"proposal",command:"get",summary:"Read one governed ChangeSet proposed against a subscriber",args:[ps,ms,Wy,fs],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=await t.getConsumerChangeSet(i,e.subscriberId,e.changeSetId,{env:e.env});r(n,"ChangeSet")}},mcp:{tool:"fs_proposal_get",title:"Read a proposed ChangeSet",description:"Read one governed ChangeSet proposed against a subscriber (Agent Proposal Flow) \u2014 its operations, risk, simulation, approvals, and status. Read-only.",annotations:{readOnlyHint:!0,openWorldHint:!0},inputSchema:{businessId:s.string().describe(Cr),subscriberId:s.string().describe(Pr),changeSetId:s.string().describe(Sm),env:s.string().optional().describe("Environment name/id.")},handler:async(t,e)=>{let r=await gs(t,e.businessId);return t.getConsumerChangeSet(r,e.subscriberId,e.changeSetId,{env:e.env})}}}];function qy(t,e){C(t,e,Em)}import{existsSync as hs,readFileSync as jR}from"node:fs";import{dirname as Qy,join as bs,parse as ek,resolve as wm}from"node:path";var tk="farther-shore/skills",LR="v1.1.0",Jy=["farthershore-overview","farthershore-onboarding","farthershore-sdk-operating-model","farthershore-environments-and-releasing","farthershore-operating-and-escalation"],MR=[{packageName:"@farthershore/business",major:0,minor:1,skills:["farthershore-product-as-code","farthershore-plans-and-billing","farthershore-business-sdk-0-1"]},{packageName:"@farthershore/farthershore-js",major:0,minor:8,skills:["farthershore-frontend-hosting","farthershore-frontend-sdk-0-8"]},{packageName:"@farthershore/backend",major:0,minor:8,skills:["farthershore-backends-and-tokens","farthershore-backend-sdk-0-8"]}];function nk(t){let e=t.match(/(?<major>\d+)\.(?<minor>\d+)\.(?<patch>\d+)/);return e?.groups?{major:Number(e.groups.major),minor:Number(e.groups.minor),patch:Number(e.groups.patch)}:null}function BR(t){let e=wm(t),r=ek(e).root;for(;;){if(hs(bs(e,".git"))||hs(bs(e,"AGENTS.md")))return e;if(e===r)return wm(t);e=Qy(e)}}function FR(t){let e=BR(t),r=new Set;for(let o of["business/package.json","frontend/package.json","backend/package.json","package.json"]){let a=bs(e,o);hs(a)&&r.add(a)}let i=wm(t),n=ek(i).root;for(;;){let o=bs(i,"package.json");if(hs(o)&&r.add(o),i===e||i===n)break;i=Qy(i)}return[...r]}function HR(t,e){for(let r of["dependencies","devDependencies","peerDependencies","optionalDependencies"]){let i=t[r];if(!i||typeof i!="object"||Array.isArray(i))continue;let n=i[e];if(typeof n=="string")return n}return null}function VR(t=process.cwd()){let e=new Map;for(let r of FR(t)){let i;try{i=JSON.parse(jR(r,"utf8"))}catch{continue}for(let n of["@farthershore/business","@farthershore/farthershore-js","@farthershore/backend"]){if(e.has(n))continue;let o=HR(i,n);if(!o)continue;let a=nk(o);a&&e.set(n,{packageName:n,requestedRange:o,version:`${a.major}.${a.minor}.${a.patch}`,packageJsonPath:r})}}return[...e.values()]}function KR(t){let e=nk(t.version);return e?MR.find(i=>i.packageName===t.packageName&&i.major===e.major&&i.minor===e.minor)?.skills??null:null}function Yy(t){return["npx --yes skills add",tk,"-y","--skill",t.join(" ")].join(" ")}function GR(t){let e=new Set(Jy),r=[],i=[];for(let o of t){let a=KR(o);if(!a){i.push({...o,reason:"No compatible Farther Shore skill file is known for this SDK major/minor version."});continue}let c=[...a].sort();r.push({...o,skills:c,command:Yy(c)});for(let l of c)e.add(l)}let n=[...e].sort();return{package:tk,release:LR,baseSkills:[...Jy].sort(),detected:t,tracks:r,unsupported:i,skills:n,command:Yy(n)}}function $m(t=process.cwd()){return GR(VR(t))}var Xy=!1;function rk(t=process.cwd()){if(Xy||process.env.FARTHERSHORE_SKIP_SKILLS_NOTICE==="1")return;let e=$m(t);if(e.unsupported.length===0)return;Xy=!0;let r=e.unsupported.map(i=>`${i.packageName}@${i.requestedRange}`).join(", ");process.stderr.write([`Farther Shore skills: no compatible skill file is known for ${r}.`,"Run `farthershore skills recommend --format json`; the returned tracks are per SDK, so update only the Business or Frontend skill track that matches the SDK you changed.",""].join(`
2244
+ `))}function ik(t){t.command("skills").description("Recommend SDK-compatible Farther Shore agent skills").command("recommend").description("Read local Farther Shore SDK package versions and recommend compatible skills").option("--dir <path>","Repository or package directory to inspect",process.cwd()).action(r=>{let i=$m(r.dir);L({recommendation:i},"Farther Shore skills recommendation"),J(`Package: ${i.package}@${i.release}`),i.detected.length>0?J(`Detected SDKs: ${i.detected.map(n=>`${n.packageName}@${n.requestedRange}`).join(", ")}`):Be("No @farthershore SDK package versions found."),i.unsupported.length>0&&Be(`Unsupported SDK versions: ${i.unsupported.map(n=>`${n.packageName}@${n.requestedRange}`).join(", ")}`),i.tracks.length>0&&(J(`SDK skill tracks: ${i.tracks.map(n=>`${n.packageName}@${n.requestedRange} -> ${n.skills.join(", ")}`).join("; ")}`),J(`Track installs: ${i.tracks.map(n=>`${n.packageName}: ${n.command}`).join("; ")}`),J("Use a track install when only that SDK changed; use the full install for fresh setup.")),J(`Install: ${i.command}`)})}var yt="The business id or slug.",Nr="The webhook endpoint id.",xn="billing:manage",In={field:"businessId",kind:"positional",token:"<businessIdOrSlug>",describe:yt,resolveBusiness:!0},vs={field:"webhookId",kind:"positional",token:"<webhookId>",describe:Nr},ok={field:"events",kind:"flag",token:"--events <events>",describe:"Comma-separated event names, e.g. subscription.created,payment.failed"},sk={field:"limit",kind:"flag",token:"--limit <n>",describe:"Max rows to return."};function ak(t){if(typeof t!="string")return;let e=t.split(",").map(r=>r.trim()).filter(r=>r.length>0);return e.length>0?e:void 0}function ck(t){if(!t||typeof t!="object")return[];let e=t;return Array.isArray(e.data)?e.data:[]}function lk(t,e){if(!t||typeof t!="object")return e;let r=t;return typeof r.total=="number"?r.total:typeof r.pagination?.total=="number"?r.pagination.total:e}function ZR(t){let e=t.enable===!0,r=t.disable===!0;if(e&&r)throw new b("Pass either --enable or --disable, not both.",400,{code:"VALIDATION_ERROR",param:"enabled"});if(e)return!0;if(r)return!1}async function Sn(t,e){return A(t,e)}var Om=[{opKey:"webhook.read",operationClass:"operate",scope:[xn],sideEffect:"read",cli:{group:"webhook",command:"list",summary:"List API-managed webhook endpoints",args:[In,sk],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=await t.managementListWebhooks(i,{limit:e.limit}),o=ck(n);r({businessId:i,count:o.length,total:lk(n,o.length),webhooks:o},`${o.length} webhook(s)`)}},mcp:{tool:"fs_webhook_list",title:"List webhook endpoints",description:"List API-managed outbound webhook endpoints for a business. Read-only; signing secrets are never returned.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(yt),limit:s.string().optional().describe("Max rows to return.")},handler:async(t,e)=>{let r=await Sn(t,e.businessId);return t.managementListWebhooks(r,{limit:e.limit})}}},{opKey:"webhook.create",operationClass:"operate",scope:[xn],sideEffect:"write",cli:{group:"webhook",command:"create",summary:"Create an API-managed webhook endpoint",idempotent:!0,args:[In,{field:"url",kind:"flag",token:"--url <url>",describe:"HTTPS receiver URL.",required:!0},{...ok,required:!0}],handler:async({client:t,args:e,reqOpts:r,emit:i,emitDryRunPreview:n})=>{let o=ak(e.events);if(!o)throw new b("At least one webhook event is required.",400,{code:"VALIDATION_ERROR",param:"events"});let a=await t.managementCreateWebhook(e.businessId,{url:e.url,events:o},r);n(a)||i({businessId:e.businessId,webhook:a.data},"Webhook endpoint created")}},mcp:{tool:"fs_webhook_create",title:"Create webhook endpoint",description:"Create an API-managed outbound webhook endpoint for a business. Returns the signing secret once. If webhooks are declared in business/index.ts, Core returns 409 MANAGED_BY_CODE and the repo must be edited instead.",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!0,openWorldHint:!0},returnsOneTimeSecret:!0,inputSchema:{businessId:s.string().describe(yt),url:s.string().url().describe("HTTPS receiver URL."),events:s.array(s.string()).min(1).describe("Webhook event names to subscribe to."),...Q},handler:async(t,e)=>{let r=await Sn(t,e.businessId);return t.managementCreateWebhook(r,{url:e.url,events:e.events},{idempotencyKey:e.idempotencyKey})}}},{opKey:"webhook.update",operationClass:"operate",scope:[xn],sideEffect:"write",cli:{group:"webhook",command:"update",summary:"Update a webhook endpoint's events or enabled state",idempotent:!0,args:[In,vs,ok,{field:"enable",kind:"flag",token:"--enable",describe:"Enable delivery for this endpoint."},{field:"disable",kind:"flag",token:"--disable",describe:"Disable delivery for this endpoint."}],handler:async({client:t,args:e,reqOpts:r,emit:i,emitDryRunPreview:n})=>{let o=ak(e.events),a=ZR(e);if(!o&&a===void 0)throw new b("Pass --events, --enable, or --disable to update a webhook.",400,{code:"VALIDATION_ERROR"});let c=await t.managementUpdateWebhook(e.businessId,e.webhookId,{...o?{events:o}:{},...a!==void 0?{enabled:a}:{}},r);n(c)||i({businessId:e.businessId,webhook:c.data},"Webhook endpoint updated")}},mcp:{tool:"fs_webhook_update",title:"Update webhook endpoint",description:"Update an API-managed webhook endpoint's event list and/or enabled state. URL and secret are immutable; create a new endpoint for those changes.",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(yt),webhookId:s.string().describe(Nr),events:s.array(s.string()).min(1).optional().describe("Replacement webhook event list."),enabled:s.boolean().optional().describe("Enable or disable delivery."),...Q},handler:async(t,e)=>{let r=await Sn(t,e.businessId);return t.managementUpdateWebhook(r,e.webhookId,{events:e.events,enabled:e.enabled},{idempotencyKey:e.idempotencyKey})}}},{opKey:"webhook.delete",operationClass:"operate",scope:[xn],sideEffect:"write",cli:{group:"webhook",command:"delete",summary:"Delete an API-managed webhook endpoint. Requires --yes.",destructive:!0,yesMessage:"Pass --yes to confirm webhook endpoint deletion.",args:[In,vs],handler:async({client:t,args:e,emit:r})=>{await t.managementDeleteWebhook(e.businessId,e.webhookId),r({businessId:e.businessId,deleted:e.webhookId},"Webhook endpoint deleted")}},mcp:{tool:"fs_webhook_delete",title:"Delete webhook endpoint",description:"Delete an API-managed outbound webhook endpoint. If webhooks are repo-managed, Core returns 409 MANAGED_BY_CODE.",annotations:{readOnlyHint:!1,destructiveHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(yt),webhookId:s.string().describe(Nr)},handler:async(t,e)=>{let r=await Sn(t,e.businessId);return t.managementDeleteWebhook(r,e.webhookId)}}},{opKey:"webhook.test",operationClass:"operate",scope:[xn],sideEffect:"write",cli:{group:"webhook",command:"test",summary:"Send a signed test event to a webhook endpoint",args:[In,vs],handler:async({client:t,args:e,emit:r})=>{let i=await t.managementTestWebhook(e.businessId,e.webhookId);r({businessId:e.businessId,result:i},"Webhook test sent")}},mcp:{tool:"fs_webhook_test",title:"Test webhook endpoint",description:"Send a signed test event to an API-managed webhook endpoint and persist the delivery result.",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!1,openWorldHint:!0},inputSchema:{businessId:s.string().describe(yt),webhookId:s.string().describe(Nr)},handler:async(t,e)=>{let r=await Sn(t,e.businessId);return t.managementTestWebhook(r,e.webhookId)}}},{opKey:"webhook.delivery.read",operationClass:"operate",scope:[xn],sideEffect:"read",cli:{group:"webhook",command:"deliveries",summary:"List recent delivery attempts for a webhook endpoint",args:[In,vs,sk],handler:async({client:t,args:e,emit:r})=>{let i=await t.managementListWebhookDeliveries(e.businessId,e.webhookId,{limit:e.limit}),n=ck(i);r({businessId:e.businessId,webhookId:e.webhookId,count:n.length,total:lk(i,n.length),deliveries:n},`${n.length} delivery attempt(s)`)}},mcp:{tool:"fs_webhook_deliveries",title:"List webhook deliveries",description:"List recent delivery attempts for a webhook endpoint. Payload and response body are intentionally omitted by Core.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(yt),webhookId:s.string().describe(Nr),limit:s.string().optional().describe("Max rows to return.")},handler:async(t,e)=>{let r=await Sn(t,e.businessId);return t.managementListWebhookDeliveries(r,e.webhookId,{limit:e.limit})}}}];function uk(t,e){C(t,e,Om)}var En="The business id or slug.",ot="operator",Dr={field:"businessId",kind:"positional",token:"<businessIdOrSlug>",describe:En,resolveBusiness:!0};async function Ur(t,e){return A(t,e)}var Tm=[{opKey:"agents.list",operationClass:"operate",scope:["businesses:read"],sideEffect:"read",cli:{group:"agents",command:"list",summary:"List a business's operating agents + enableable roles",args:[Dr],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=await t.builderListAgents(i);r({businessId:i,...n},`${n.agents.length} agent(s) \u2014 enableable roles: ${n.availableRoles.join(", ")}`)}},mcp:{tool:"fs_agents_list",title:"List operating agents",description:"The agent roster for a business: the enabled/disabled Operator plus any roles that can still be enabled. Read-only.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(En)},handler:async(t,e)=>{let r=await Ur(t,e.businessId);return t.builderListAgents(r)}}},{opKey:"agents.status",operationClass:"operate",scope:["businesses:read"],sideEffect:"read",cli:{group:"agents",command:"status",summary:"The Operator's activation state, recent runs, and usage totals",args:[Dr],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=await t.builderAgentStatus(i,ot);r({businessId:i,...n},`operator: ${n.enabled?"ENABLED":"disabled"} \u2014 last run ${n.lastRunAt??"never"}; ${n.recentRuns.length} recent run(s); ${n.usage.tokensIn+n.usage.tokensOut} tokens, ${n.usage.actionsCount} action(s) lifetime`)}},mcp:{tool:"fs_agents_status",title:"Get the Operator's status",description:"The Operator's activation state, recent run history (newest-first), and lifetime usage totals (LLM tokens + actions). Read-only.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(En)},handler:async(t,e)=>{let r=await Ur(t,e.businessId);return t.builderAgentStatus(r,ot)}}},{opKey:"agents.runs.show",operationClass:"operate",scope:["businesses:read"],sideEffect:"read",cli:{group:"agents",command:"runs-show",summary:"One run's full paper trail: trace, launches, action receipts",args:[Dr,{field:"runId",kind:"positional",token:"<runId>",describe:"The agent run id (from `agents status`)."}],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=await t.builderAgentRunDetail(i,ot,e.runId),o=n.launches?.length??0,a=n.actions?.length??0;r({businessId:i,...n},`run ${n.run?.id}: ${o} launch(es), ${a} action receipt(s)`)}},mcp:{tool:"fs_agents_run_show",title:"Get one agent run's paper trail",description:"One run's full audit view: the orchestrator's trace summary (composed launches, verify flags, catalog changes), the per-launch performance ledger, and every platform-action receipt. Read-only.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(En),runId:s.string().describe("The agent run id.")},handler:async(t,e)=>{let r=await Ur(t,e.businessId);return t.builderAgentRunDetail(r,ot,e.runId)}}},{opKey:"agents.enable",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:"agents",command:"enable",summary:"Turn the Operator on (creates it on first enable)",args:[Dr],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=await t.builderConfigureAgent(i,ot,{enabled:!0});r({businessId:i,agent:n},"operator ENABLED \u2014 it runs autonomously on its cadence and posts to the bulletin; usage bills while enabled")}},mcp:{tool:"fs_agents_enable",title:"Enable the Operator",description:"Turn the business's Operator agent on (created on first enable). It runs autonomously on its cadence; agent-work billing accrues while enabled.",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(En)},handler:async(t,e)=>{let r=await Ur(t,e.businessId);return t.builderConfigureAgent(r,ot,{enabled:!0})}}},{opKey:"agents.disable",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:"agents",command:"disable",summary:"Turn the Operator off (stops runs + billing)",args:[Dr],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=await t.builderConfigureAgent(i,ot,{enabled:!1});r({businessId:i,agent:n},"operator disabled \u2014 no further runs; billing stops accruing")}},mcp:{tool:"fs_agents_disable",title:"Disable the Operator",description:"Turn the Operator off: the dispatcher stops scheduling runs and agent-work billing stops accruing. Re-enable at any time.",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(En)},handler:async(t,e)=>{let r=await Ur(t,e.businessId);return t.builderConfigureAgent(r,ot,{enabled:!1})}}}];function dk(t,e){C(t,e,Tm)}var zr="The business id or slug.",ks="The bulletin post id.",_s={field:"businessId",kind:"positional",token:"<businessIdOrSlug>",describe:zr,resolveBusiness:!0},Am={field:"postId",kind:"positional",token:"<postId>",describe:ks};async function ys(t,e){return A(t,e)}var Rm=[{opKey:"bulletin.list",operationClass:"operate",scope:["businesses:read"],sideEffect:"read",cli:{group:"bulletin",command:"list",summary:"List the agents' bulletin feed (trends + change requests)",args:[_s,{field:"kind",kind:"flag",token:"--kind <kind>",describe:"Filter: trend | insight | change_request"},{field:"status",kind:"flag",token:"--status <status>",describe:"Filter: open | acknowledged | resolved"},{field:"limit",kind:"flag",token:"--limit <n>",describe:"Max rows to return."}],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=await t.builderListBulletin(i,{kind:e.kind,status:e.status,limit:e.limit});r({businessId:i,...n},`${n.items.length} post(s)${n.nextCursor?" (more available)":""}`)}},mcp:{tool:"fs_bulletin_list",title:"List bulletin posts",description:"The agents' bulletin feed for a business: trend/insight posts (aggregated data + deltas) and change_request posts (the coding agent's backlog \u2014 filter --kind change_request --status open). Read-only.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(zr),kind:s.enum(["trend","insight","change_request"]).optional().describe("Filter by post kind."),status:s.enum(["open","acknowledged","resolved"]).optional().describe("Filter by post status."),limit:s.string().optional().describe("Max rows to return.")},handler:async(t,e)=>{let r=await ys(t,e.businessId);return t.builderListBulletin(r,{kind:e.kind,status:e.status,limit:e.limit})}}},{opKey:"bulletin.read",operationClass:"operate",scope:["businesses:read"],sideEffect:"read",cli:{group:"bulletin",command:"show",summary:"Show one bulletin post (full body + data payload)",args:[_s,Am],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=await t.builderGetBulletinPost(i,e.postId);r({businessId:i,post:n},`[${n.kind}] ${n.title} \u2014 ${n.status}${n.changeSetId?` (changeSet ${n.changeSetId})`:""}`)}},mcp:{tool:"fs_bulletin_show",title:"Show a bulletin post",description:"One bulletin post in full: markdown body, the dataJson payload backing the claim, and for change requests the referenced ChangeSet id + proposal. Read-only.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(zr),postId:s.string().describe(ks)},handler:async(t,e)=>{let r=await ys(t,e.businessId);return t.builderGetBulletinPost(r,e.postId)}}},{opKey:"bulletin.ack",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:"bulletin",command:"ack",summary:"Acknowledge a post (the coding agent picked it up)",args:[_s,Am],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=await t.builderSetBulletinStatus(i,e.postId,"acknowledged");r({businessId:i,post:n},`Post acknowledged: ${n.title}`)}},mcp:{tool:"fs_bulletin_ack",title:"Acknowledge a bulletin post",description:"Mark a bulletin post acknowledged \u2014 the hand-off signal that the coding agent (or builder) has picked the item up. Forward-only; idempotent on an already-acknowledged post.",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(zr),postId:s.string().describe(ks)},handler:async(t,e)=>{let r=await ys(t,e.businessId);return t.builderSetBulletinStatus(r,e.postId,"acknowledged")}}},{opKey:"bulletin.resolve",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:"bulletin",command:"resolve",summary:"Resolve a post (the work landed)",args:[_s,Am],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=await t.builderSetBulletinStatus(i,e.postId,"resolved");r({businessId:i,post:n},`Post resolved: ${n.title}`)}},mcp:{tool:"fs_bulletin_resolve",title:"Resolve a bulletin post",description:"Mark a bulletin post resolved \u2014 the referenced work landed (or the trend was addressed). Terminal state.",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(zr),postId:s.string().describe(ks)},handler:async(t,e)=>{let r=await ys(t,e.businessId);return t.builderSetBulletinStatus(r,e.postId,"resolved")}}}];function pk(t,e){C(t,e,Rm)}var wn="The business id or slug.",Is="The promo code id.",Pm=["percent_off","amount_off","free_months"],jr="promo-code",Lr={field:"businessId",kind:"positional",token:"<businessIdOrSlug>",describe:wn,resolveBusiness:!0},Cm={field:"promoCodeId",kind:"positional",token:"<promoCodeId>",describe:Is},mk={field:"plan",kind:"flag",token:"--plan <planId>",describe:"Limit to a plan id. Repeatable. Omit for all launch plans; use --all-plans on update to clear scoped plans.",parser:(t,e)=>[...e,t],defaultValue:[]};function fk(t){if(typeof t!="string")return;let e=t.trim().toLowerCase();if(Pm.includes(e))return e;throw new b(`Invalid promo code kind "${t}". Use percent_off, amount_off, or free_months.`,400,{code:"INVALID_PROMO_CODE_KIND",param:"kind"})}function $n(t,e){if(e===void 0)return;let r=typeof e=="number"?e:typeof e=="string"&&/^\d+$/.test(e.trim())?Number.parseInt(e,10):Number.NaN;if(!Number.isInteger(r)||r<=0)throw new b(`${t} must be a positive integer.`,400,{code:"INVALID_PROMO_CODE_FIELD",param:t});return r}function Br(t){return typeof t=="string"&&t.length>0?t:void 0}function gk(t,e){let r=$n("percent",t.percent),i=$n("amountCents",t.amountCents);if(r!==void 0&&i!==void 0)throw new b("Pass either --percent or --amount-cents, not both.",400,{code:"CONFLICTING_PROMO_AMOUNT_FLAGS",param:"amount"});if(e==="percent_off"){if(r===void 0)throw new b("percent_off promo codes require --percent.",400,{code:"INVALID_PROMO_CODE_FIELD",param:"percent"});if(r>100)throw new b("--percent must be between 1 and 100.",400,{code:"INVALID_PROMO_CODE_FIELD",param:"percent"});return r}if(e==="amount_off"){if(i===void 0)throw new b("amount_off promo codes require --amount-cents.",400,{code:"INVALID_PROMO_CODE_FIELD",param:"amountCents"});return i}if(e==="free_months"&&(r!==void 0||i!==void 0))throw new b("free_months promo codes do not accept --percent or --amount-cents.",400,{code:"INVALID_PROMO_CODE_FIELD",param:"amount"});return r??i}function hk(t){let e=t.plan??[];if(t.allPlans===!0&&e.length>0)throw new b("Pass either --plan or --all-plans, not both.",400,{code:"CONFLICTING_PROMO_PLAN_FLAGS",param:"plan"});return t.allPlans===!0?[]:e.length>0?e:void 0}function WR(t){let e=fk(t.kind);if(!e)throw new b("Promo code kind is required.",400,{code:"INVALID_PROMO_CODE_FIELD",param:"kind"});let r=$n("durationMonths",t.durationMonths);if(r===void 0)throw new b("--duration-months is required.",400,{code:"INVALID_PROMO_CODE_FIELD",param:"durationMonths"});let i=hk(t);return{code:String(t.code),kind:e,amount:gk(t,e),durationMonths:r,...i!==void 0?{applicablePlanIds:i}:{},maxRedemptions:$n("maxRedemptions",t.maxRedemptions),activeFrom:Br(t.activeFrom),activeUntil:Br(t.activeUntil)}}function qR(t){let e=fk(t.kind),r=$n("durationMonths",t.durationMonths),i=$n("maxRedemptions",t.maxRedemptions),n=hk(t);if(t.code!==void 0||e!==void 0||t.percent!==void 0||t.amountCents!==void 0||r!==void 0||i!==void 0||t.clearMaxRedemptions===!0||t.activeFrom!==void 0||t.activeUntil!==void 0||t.clearActiveFrom===!0||t.clearActiveUntil===!0||n!==void 0){if(e===void 0)throw new b("Promo-code spec updates rotate the Stripe coupon, so pass the complete spec: --kind plus --duration-months and the required amount flag for that kind.",400,{code:"PROMO_CODE_UPDATE_REQUIRES_FULL_SPEC",param:"kind"});if(r===void 0)throw new b("Promo-code spec updates require --duration-months.",400,{code:"PROMO_CODE_UPDATE_REQUIRES_FULL_SPEC",param:"durationMonths"})}let a={},c=Br(t.code);c!==void 0&&(a.code=c),e!==void 0&&(a.kind=e);let l=gk(t,e);if(l!==void 0&&(a.amount=l),r!==void 0&&(a.durationMonths=r),i!==void 0&&(a.maxRedemptions=i),t.clearMaxRedemptions===!0&&(a.maxRedemptions=null),n!==void 0&&(a.applicablePlanIds=n),t.activeFrom!==void 0&&(a.activeFrom=Br(t.activeFrom)??null),t.activeUntil!==void 0&&(a.activeUntil=Br(t.activeUntil)??null),t.clearActiveFrom===!0&&(a.activeFrom=null),t.clearActiveUntil===!0&&(a.activeUntil=null),Object.keys(a).length===0)throw new b("No promo-code fields to update. Pass --code, --kind, amount, duration, plan, status-window, or redemption flags.",400,{code:"PROMO_CODE_UPDATE_NO_FIELDS"});return a}async function Mr(t,e){return A(t,e)}function xs(t){return{status:t}}var Nm=[{opKey:"promo_code.read",operationClass:"operate",scope:["businesses:read"],sideEffect:"read",cli:{group:jr,command:"list",summary:"List API-managed promo codes for checkout",args:[Lr],handler:async({client:t,args:e,emit:r})=>{let i=await t.listPromoCodes(e.businessId);r({businessId:e.businessId,count:i.length,promoCodes:i},`${i.length} promo code(s)`)}},mcp:{tool:"fs_promo_code_list",title:"List promo codes",description:"List API-managed promo codes for a business. Promo codes are checkout operational state, not repo-authored Business SDK state.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(wn)},handler:async(t,e)=>{let r=await Mr(t,e.businessId);return t.listPromoCodes(r)}}},{opKey:"promo_code.create",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:jr,command:"create",summary:"Create an API-managed checkout promo code",args:[Lr,{field:"code",kind:"flag",token:"--code <code>",describe:"Customer-entered promo code.",required:!0},{field:"kind",kind:"flag",token:"--kind <kind>",describe:"percent_off, amount_off, or free_months.",required:!0},{field:"percent",kind:"flag",token:"--percent <n>",describe:"Percent discount for percent_off promos."},{field:"amountCents",kind:"flag",token:"--amount-cents <cents>",describe:"Fixed discount in cents for amount_off promos."},{field:"durationMonths",kind:"flag",token:"--duration-months <n>",describe:"Discount duration in months.",required:!0},{field:"maxRedemptions",kind:"flag",token:"--max-redemptions <n>",describe:"Optional maximum redemption count."},{field:"activeFrom",kind:"flag",token:"--active-from <iso>",describe:"Optional ISO-8601 activation timestamp."},{field:"activeUntil",kind:"flag",token:"--active-until <iso>",describe:"Optional ISO-8601 expiration timestamp."},mk],handler:async({client:t,args:e,emit:r})=>{let i=await t.createPromoCode(e.businessId,WR(e));r({businessId:e.businessId,promoCode:i},"Promo code created")}},mcp:{tool:"fs_promo_code_create",title:"Create promo code",description:"Create an API-managed checkout promo code. Use percent for percent_off, amountCents for amount_off, and no amount for free_months.",annotations:{readOnlyHint:!1,destructiveHint:!1,openWorldHint:!0},inputSchema:{businessId:s.string().describe(wn),code:s.string().min(1).max(64),kind:s.enum(Pm),percent:s.number().int().min(1).max(100).optional(),amountCents:s.number().int().positive().optional(),durationMonths:s.number().int().min(1).max(24),maxRedemptions:s.number().int().positive().optional(),activeFrom:s.string().datetime().optional(),activeUntil:s.string().datetime().optional(),applicablePlanIds:s.array(s.string()).optional()},handler:async(t,e)=>{let r=await Mr(t,e.businessId);return t.createPromoCode(r,{code:e.code,kind:e.kind,amount:e.kind==="percent_off"?e.percent:e.kind==="amount_off"?e.amountCents:void 0,durationMonths:e.durationMonths,maxRedemptions:e.maxRedemptions,activeFrom:e.activeFrom,activeUntil:e.activeUntil,applicablePlanIds:e.applicablePlanIds})}}},{opKey:"promo_code.update",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:jr,command:"update",summary:"Update an API-managed checkout promo code",args:[Lr,Cm,{field:"code",kind:"flag",token:"--code <code>",describe:"Replacement customer-entered promo code."},{field:"kind",kind:"flag",token:"--kind <kind>",describe:"percent_off, amount_off, or free_months."},{field:"percent",kind:"flag",token:"--percent <n>",describe:"Percent discount for percent_off promos."},{field:"amountCents",kind:"flag",token:"--amount-cents <cents>",describe:"Fixed discount in cents for amount_off promos."},{field:"durationMonths",kind:"flag",token:"--duration-months <n>",describe:"Discount duration in months."},{field:"maxRedemptions",kind:"flag",token:"--max-redemptions <n>",describe:"Set maximum redemption count."},{field:"clearMaxRedemptions",kind:"flag",token:"--clear-max-redemptions",describe:"Clear the maximum redemption count."},{field:"activeFrom",kind:"flag",token:"--active-from <iso>",describe:"Set ISO-8601 activation timestamp."},{field:"clearActiveFrom",kind:"flag",token:"--clear-active-from",describe:"Clear activation timestamp."},{field:"activeUntil",kind:"flag",token:"--active-until <iso>",describe:"Set ISO-8601 expiration timestamp."},{field:"clearActiveUntil",kind:"flag",token:"--clear-active-until",describe:"Clear expiration timestamp."},mk,{field:"allPlans",kind:"flag",token:"--all-plans",describe:"Clear plan scoping so the promo applies to all launch plans."}],handler:async({client:t,args:e,emit:r})=>{let i=await t.updatePromoCode(e.businessId,e.promoCodeId,qR(e));r({businessId:e.businessId,promoCode:i},"Promo code updated")}},mcp:{tool:"fs_promo_code_update",title:"Update promo code",description:"Update an API-managed checkout promo code. Spec changes rotate the Stripe coupon/promotion code behind the scenes.",annotations:{readOnlyHint:!1,destructiveHint:!1,openWorldHint:!0},inputSchema:{businessId:s.string().describe(wn),promoCodeId:s.string().describe(Is),code:s.string().min(1).max(64).optional(),kind:s.enum(Pm).optional(),percent:s.number().int().min(1).max(100).optional(),amountCents:s.number().int().positive().optional(),durationMonths:s.number().int().min(1).max(24).optional(),maxRedemptions:s.number().int().positive().nullable().optional(),activeFrom:s.string().datetime().nullable().optional(),activeUntil:s.string().datetime().nullable().optional(),applicablePlanIds:s.array(s.string()).optional()},handler:async(t,e)=>{let r=await Mr(t,e.businessId),i={code:e.code,kind:e.kind,amount:e.kind==="percent_off"?e.percent:e.kind==="amount_off"?e.amountCents:void 0,durationMonths:e.durationMonths,maxRedemptions:e.maxRedemptions,activeFrom:e.activeFrom,activeUntil:e.activeUntil,applicablePlanIds:e.applicablePlanIds};return t.updatePromoCode(r,e.promoCodeId,i)}}},{opKey:"promo_code.archive",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:jr,command:"archive",summary:"Archive a checkout promo code",args:[Lr,Cm],handler:async({client:t,args:e,emit:r})=>{let i=await t.updatePromoCode(e.businessId,e.promoCodeId,xs("ARCHIVED"));r({businessId:e.businessId,promoCode:i},"Promo code archived")}},mcp:{tool:"fs_promo_code_archive",title:"Archive promo code",description:"Archive an API-managed checkout promo code.",annotations:{readOnlyHint:!1,destructiveHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(wn),promoCodeId:s.string().describe(Is)},handler:async(t,e)=>{let r=await Mr(t,e.businessId);return t.updatePromoCode(r,e.promoCodeId,xs("ARCHIVED"))}}},{opKey:"promo_code.reactivate",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:jr,command:"reactivate",summary:"Reactivate an archived checkout promo code",args:[Lr,Cm],handler:async({client:t,args:e,emit:r})=>{let i=await t.updatePromoCode(e.businessId,e.promoCodeId,xs("ACTIVE"));r({businessId:e.businessId,promoCode:i},"Promo code reactivated")}},mcp:{tool:"fs_promo_code_reactivate",title:"Reactivate promo code",description:"Reactivate an archived API-managed checkout promo code.",annotations:{readOnlyHint:!1,destructiveHint:!1,openWorldHint:!1},inputSchema:{businessId:s.string().describe(wn),promoCodeId:s.string().describe(Is)},handler:async(t,e)=>{let r=await Mr(t,e.businessId);return t.updatePromoCode(r,e.promoCodeId,xs("ACTIVE"))}}}];function bk(t,e){C(t,e,Nm)}var Fr="The business id or slug.",ws="The subscriber id from `consumer list`.",Ss={field:"businessId",kind:"positional",token:"<businessIdOrSlug>",describe:Fr,resolveBusiness:!0},Dm={field:"subscriberId",kind:"positional",token:"<subscriberId>",describe:ws},JR={field:"env",kind:"flag",token:"--env <env>",describe:"Environment name for preview-scoped consumers."},vk="The member's external identity id (Clerk userId) within the client org.",YR="Comma-separated business-role keys to set (replaces the current assignment; pass an empty string to clear).",XR={field:"userExternalId",kind:"positional",token:"<userExternalId>",describe:vk};function QR(t){return t.split(",").map(e=>e.trim()).filter(Boolean)}var eC={field:"roles",kind:"flag",token:"--roles <roles>",describe:YR,required:!0,parser:t=>QR(t)};async function Es(t,e){return A(t,e)}function tC(t){return Array.isArray(t)?t:[]}var Um=[{opKey:"consumer.read",operationClass:"operate",scope:["businesses:read"],sideEffect:"read",cli:{group:"consumer",command:"list",summary:"List users/consumers for a business",args:[Ss,JR],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=tC(await t.builderListConsumers(i,{env:e.env}));r({businessId:i,count:n.length,consumers:n},`${n.length} consumer(s)`)}},mcp:{tool:"fs_consumer_list",title:"List business consumers",description:"List users/consumers for a business. Read-only; use this to discover subscriber ids before blocking or removing a user.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(Fr),env:s.string().optional().describe("Environment name for preview-scoped consumers.")},handler:async(t,e)=>{let r=await Es(t,e.businessId);return t.builderListConsumers(r,{env:e.env})}}},{opKey:"consumer.block",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:"consumer",command:"block",summary:"Block a user and revoke their active API keys",destructive:!0,yesMessage:"Blocking a user revokes active API keys. Pass --yes to confirm.",args:[Ss,Dm],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=e.subscriberId,o=await t.builderBlockConsumer(i,n);r({businessId:i,subscriberId:n,result:o},`Consumer blocked: ${n}`)}},mcp:{tool:"fs_consumer_block",title:"Block business consumer",description:"Block a user/consumer for a business and revoke their active API keys. Destructive live-state operation; it does not edit repo-authored business behavior.",annotations:{readOnlyHint:!1,destructiveHint:!0,idempotentHint:!0,openWorldHint:!0},inputSchema:{businessId:s.string().describe(Fr),subscriberId:s.string().describe(ws)},handler:async(t,e)=>{let r=await Es(t,e.businessId);return t.builderBlockConsumer(r,e.subscriberId)}}},{opKey:"consumer.remove",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:"consumer",command:"remove",summary:"Force-remove a user from a business",destructive:!0,yesMessage:"Removing a user tears down subscriptions, edge credentials, and related live state. Pass --yes to confirm.",args:[Ss,Dm],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=e.subscriberId,o=await t.builderRemoveConsumer(i,n);r({businessId:i,subscriberId:n,result:o},`Consumer removed: ${n}`)}},mcp:{tool:"fs_consumer_remove",title:"Remove business consumer",description:"Force-remove a user/consumer from a business, tearing down subscriptions, edge credentials, and related live state. Destructive and irreversible; it does not edit repo-authored business behavior.",annotations:{readOnlyHint:!1,destructiveHint:!0,openWorldHint:!0},inputSchema:{businessId:s.string().describe(Fr),subscriberId:s.string().describe(ws)},handler:async(t,e)=>{let r=await Es(t,e.businessId);return t.builderRemoveConsumer(r,e.subscriberId)}}},{opKey:"consumer.roles.assign",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:"consumer rbac",command:"assign",summary:"Replace a client-org member's Managed-RBAC business roles (builder support override)",args:[Ss,Dm,XR,eC],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=e.subscriberId,o=e.userExternalId,a=e.roles,c=await t.builderAssignConsumerMemberRoles(i,n,o,a);r({businessId:i,subscriberId:n,membership:c},`Business roles set for ${o}: ${c.businessRoleKeys.length>0?c.businessRoleKeys.join(", "):"(none)"}`)}},mcp:{tool:"fs_consumer_rbac_assign",title:"Assign consumer member business roles",description:"Support override: replace a client-org member's Managed-RBAC business-role assignment on a business (set-replace \u2014 the given list becomes the member's full assignment; an empty list clears it). Role keys must exist in the org's role set. Live-state operation; it does not edit repo-authored business behavior.",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!0,openWorldHint:!0},inputSchema:{businessId:s.string().describe(Fr),subscriberId:s.string().describe(ws),userExternalId:s.string().describe(vk),roles:s.array(s.string()).describe("Business-role keys to set (replaces the current assignment; [] clears it).")},handler:async(t,e)=>{let r=await Es(t,e.businessId);return t.builderAssignConsumerMemberRoles(r,e.subscriberId,e.userExternalId,e.roles)}}}];function _k(t,e){C(t,e,Um)}var Lm="The business id or slug.",Mm="Preview environment slug or id (omit for Main).",kk="Variable name, e.g. POSTHOG_TOKEN.",nC=s.enum(["PUBLIC","BUILD","RUNTIME"]),rC="Where the value goes. public = inlined into the frontend BUNDLE (publishable keys: PostHog project key, Stripe pk_, Sentry DSN); build = build environment only, leak-scanned out of the output; runtime = edge only, never reaches the browser.";async function iC(){if(process.stdin.isTTY)throw new b("Pipe the secret value via stdin. Never pass a secret as a command-line flag.",400,{code:"VARIABLE_STDIN_REQUIRED"});let t="";for await(let e of process.stdin)t+=Buffer.isBuffer(e)?e.toString("utf8"):String(e);return t.replace(/\r?\n$/,"")}var oC=iC;async function $s(t,e,r){return r?bn(t,e,r):void 0}var Hr={field:"businessId",kind:"positional",token:"<businessIdOrSlug>",describe:Lm,resolveBusiness:!0},zm={field:"name",kind:"positional",token:"<name>",describe:kk},Os={field:"env",kind:"flag",token:"--env <slug>",describe:Mm},sC={field:"delivery",kind:"flag",token:"--delivery <phase>",describe:"Private delivery boundary: build or runtime. Build values are leak-scanned from artifacts; runtime values are injected only by Gateway.",required:!0};function jm(t,e){return{businessId:t,operation:e}}function yk(t){return{opKey:t==="set"?"business_variable.create":"business_variable.rotate",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:"variables",command:t,summary:t==="set"?"Create a write-only secret from stdin":"Rotate a write-only secret from stdin",helpTextAfter:`
2244
2245
  Example:
2245
- printf %s "$VALUE" | farthershore variables ${t} my-biz POSTHOG_TOKEN`,idempotent:!0,args:[$r,Xp,cR,es],handler:async({client:e,args:r,reqOpts:i,emit:n})=>{let o=r.businessId,a=await e.builderSetBusinessVariable(o,r.name,{value:await aR(),delivery:iR.parse(String(r.delivery).toUpperCase()),environmentId:await Qo(e,o,r.env)},i);n(Qp(o,a),`Secret ${r.name} ${a.pending?"publication pending":"active"}`)}},mcp:{tool:t==="set"?"fs_variable_set":"fs_variable_rotate",title:t==="set"?"Create a write-only secret":"Rotate a write-only secret",description:"Creates an immutable secret generation. Plaintext is accepted once and never returned.",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(em),name:s.string().describe(ly),value:s.string().min(1).describe("The write-only value."),delivery:s.enum(["PUBLIC","BUILD","RUNTIME"]).describe(oR),environmentId:s.string().optional().describe(tm),...Y},handler:async(e,r)=>e.builderSetBusinessVariable(await A(e,r.businessId),r.name,{value:r.value,delivery:r.delivery,environmentId:r.environmentId},{idempotencyKey:r.idempotencyKey})}}}var nm=[{opKey:"business_variable.read",operationClass:"operate",scope:["businesses:read"],sideEffect:"read",cli:{group:"variables",command:"list",summary:"List secret lifecycle metadata (never values)",args:[$r,es],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=await Qo(t,i,e.env);r({businessId:i,environmentId:n??null,variables:await t.builderBusinessVariables(i,n)},"Write-only secrets")}},mcp:{tool:"fs_variable_list",title:"List write-only secrets",description:"Lists lifecycle and generation metadata. Plaintext is never returned.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(em),environmentId:s.string().optional().describe(tm)},handler:async(t,e)=>t.builderBusinessVariables(await A(t,e.businessId),e.environmentId)}},cy("set"),cy("rotate"),{opKey:"business_variable.revoke",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:"variables",command:"revoke",summary:"Revoke runtime access to a secret. Requires --yes.",destructive:!0,yesMessage:"Revocation removes runtime availability once acknowledged. Pass --yes to confirm.",idempotent:!0,args:[$r,Xp,es],handler:async({client:t,args:e,reqOpts:r,emit:i})=>{let n=e.businessId,o=await t.builderRevokeBusinessVariable(n,e.name,await Qo(t,n,e.env),r);i(Qp(n,o),"Secret revocation submitted")}},mcp:{tool:"fs_variable_revoke",title:"Revoke a write-only secret",description:"Revokes runtime access after explicit confirmation and returns a durable operation.",annotations:{readOnlyHint:!1,destructiveHint:!0,idempotentHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string(),name:s.string(),environmentId:s.string().optional(),confirmation:s.literal("REVOKE"),...Y},handler:async(t,e)=>t.builderRevokeBusinessVariable(await A(t,e.businessId),e.name,e.environmentId,{idempotencyKey:e.idempotencyKey})}},{opKey:"business_variable.delete",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:"variables",command:"rm",summary:"Destroy a revoked secret in Main or preview. Requires --yes.",destructive:!0,yesMessage:"Deletion permanently destroys ciphertext and requires acknowledged revocation first. Pass --yes to confirm.",idempotent:!0,args:[$r,Xp,es],handler:async({client:t,args:e,reqOpts:r,emit:i})=>{let n=e.businessId,o=await t.builderDeleteBusinessVariable(n,e.name,await Qo(t,n,e.env),r);i(Qp(n,o),"Secret deletion submitted")}},mcp:{tool:"fs_variable_rm",title:"Destroy a revoked secret",description:"Permanently destroys ciphertext after acknowledged revocation. Main and preview use the same contract.",annotations:{readOnlyHint:!1,destructiveHint:!0,idempotentHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string(),name:s.string(),environmentId:s.string().optional(),confirmation:s.literal("DELETE"),...Y},handler:async(t,e)=>t.builderDeleteBusinessVariable(await A(t,e.businessId),e.name,e.environmentId,{idempotencyKey:e.idempotencyKey})}},{opKey:"business_variable.operation.read",operationClass:"operate",scope:["businesses:read"],sideEffect:"read",cli:{group:"variables",command:"status",summary:"Read a durable secret mutation operation",args:[$r,{field:"operationId",kind:"positional",token:"<operationId>",describe:"Operation id returned by a mutation."}],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId;r({businessId:i,operation:await t.builderGetBusinessVariableOperation(i,e.operationId)},"Secret mutation status")}},mcp:{tool:"fs_variable_operation_get",title:"Get secret mutation status",description:"Reads publication status and frozen impact metadata.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string(),operationId:s.string()},handler:async(t,e)=>t.builderGetBusinessVariableOperation(await A(t,e.businessId),e.operationId)}}];function uy(t,e){N(t,e,nm)}var dy=[...dp,...jp,...Mp,...Wv,...pp,...xp,...$p,...Hp,...Vp,...Kp,...qp,...Yp,...nm,...bp,...hp,...vp];function py(t){return`${t.cli.group} ${t.cli.command}`}var my=[{key:"github.connect",surface:"dashboard",reason:"GitHub account linking is an OAuth/browser consent flow. The CLI can report status, but it must not perform the account link.",statusCommand:"farthershore connect github --format json"},{key:"stripe.connect",surface:"dashboard",reason:"Stripe Connect onboarding and KYC are Stripe-hosted browser flows. The CLI can report status after the builder completes onboarding.",statusCommand:"farthershore connect stripe <business> --format json"}];function lR(t){return t==="contract"?"repo":t==="dual"?"repo-or-api":"api"}function uR(t){return t.endsWith(".read")||t.endsWith(".list")||t.endsWith(".status")?"read":"write"}function dR(){let t=new Map(dy.map(r=>[r.opKey,r])),e=Tv.map(r=>{let i=t.get(r.key),n=i?.sideEffect??uR(r.key);return{opKey:r.key,class:r.class,canonicalHome:Ov(r.class),authoringPath:lR(r.class),domain:r.domain,sideEffect:n,scope:i?.scope??[],cliCommand:i?`farthershore ${py(i)}`:null,mcpTool:i?.mcp?.tool??null,mcpMayWrite:n==="write"&&(i?.mcp??null)!==null&&$v(r.class)}});return{summary:{operationCount:e.length,cliCommandCount:e.filter(r=>r.cliCommand!==null).length,mcpToolCount:e.filter(r=>r.mcpTool!==null).length,browserOnlyPrerequisiteCount:my.length},invariants:["Contract-class business behavior is authored in business/index.ts and pushed through GitHub.","Operate-class platform actions are performed through Core APIs, CLI commands, or MCP tools.","Dual-class actions reconcile through either repo state or platform operations.","GitHub OAuth and Stripe Connect/KYC are browser-only prerequisites; the CLI reports status only."],classes:Oo,operations:e,browserOnlyPrerequisites:my}}function fy(t){t.command("operations").description("Machine-readable catalog of repo-controlled, API-controlled, and browser-only platform actions").command("list").description("Print the agent operation boundary catalog").action(()=>{j(dR(),"Operation catalog")})}function gy(t,e){zv(t,e),Vv(t,e),D_(t,e),z_(t,e),Zv(t,e),qv(t,e),e_(t,e),t_(t,e),n_(t,e),fy(t),r_(t,e),i_(t,e),s_(t,e),a_(t,e),X_(t,e),Q_(t,e),ey(t,e),oy(t,e),ay(t,e),uy(t,e),m_(t),E_(t),$_(t),Xv(t,e),P_(t,e),K_(t),N_(t),R_(t)}var hR=fR(mR(import.meta.url)),bR=JSON.parse(await pR(gR(hR,"..","package.json"),"utf-8")),Ye=new vm;Ye.name("farthershore").description("FartherShore CLI \u2014 agent-friendly commands for business operations").version(bR.version).option("--token <token>","Override auth token").option("--api-url <url>","Override API base URL").option("--format <format>","Output format. Use --format json for machine-readable agent output").option("--no-input","Never prompt; fail fast in non-interactive (agent) use");Ye.hook("preAction",(t,e)=>{Zm(Ye.opts().format),Dv(vR(e)),Z_()});function vR(t){let e=[],r=t;for(;r&&r.name()&&r.name()!==Ye.name();)e.unshift(r.name()),r=r.parent;return e.join(".")||"unknown"}function _R(){let t=Tm(),e=Ye.opts(),r=Cm(e.token),i=e.apiUrl??process.env.FARTHERSHORE_API_URL??t.apiUrl;return Im({apiUrl:i,token:r})}gy(Ye,_R);Ye.exitOverride();async function yR(){try{await Ye.parseAsync(process.argv)}catch(t){if(t instanceof b)process.exitCode=up(t);else if(t instanceof Error){let e=t.code;e==="commander.helpDisplayed"||e==="commander.version"||t.message!=="(outputHelp)"&&(process.exitCode=up(new b(t.message,0)))}}}yR();
2246
+ printf %s "$VALUE" | farthershore variables ${t} my-biz POSTHOG_TOKEN`,idempotent:!0,args:[Hr,zm,sC,Os],handler:async({client:e,args:r,reqOpts:i,emit:n})=>{let o=r.businessId,a=await e.builderSetBusinessVariable(o,r.name,{value:await oC(),delivery:nC.parse(String(r.delivery).toUpperCase()),environmentId:await $s(e,o,r.env)},i);n(jm(o,a),`Secret ${r.name} ${a.pending?"publication pending":"active"}`)}},mcp:{tool:t==="set"?"fs_variable_set":"fs_variable_rotate",title:t==="set"?"Create a write-only secret":"Rotate a write-only secret",description:"Creates an immutable secret generation. Plaintext is accepted once and never returned.",annotations:{readOnlyHint:!1,destructiveHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(Lm),name:s.string().describe(kk),value:s.string().min(1).describe("The write-only value."),delivery:s.enum(["PUBLIC","BUILD","RUNTIME"]).describe(rC),environmentId:s.string().optional().describe(Mm),...Q},handler:async(e,r)=>e.builderSetBusinessVariable(await A(e,r.businessId),r.name,{value:r.value,delivery:r.delivery,environmentId:r.environmentId},{idempotencyKey:r.idempotencyKey})}}}var Bm=[{opKey:"business_variable.read",operationClass:"operate",scope:["businesses:read"],sideEffect:"read",cli:{group:"variables",command:"list",summary:"List secret lifecycle metadata (never values)",args:[Hr,Os],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId,n=await $s(t,i,e.env);r({businessId:i,environmentId:n??null,variables:await t.builderBusinessVariables(i,n)},"Write-only secrets")}},mcp:{tool:"fs_variable_list",title:"List write-only secrets",description:"Lists lifecycle and generation metadata. Plaintext is never returned.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(Lm),environmentId:s.string().optional().describe(Mm)},handler:async(t,e)=>t.builderBusinessVariables(await A(t,e.businessId),e.environmentId)}},yk("set"),yk("rotate"),{opKey:"business_variable.revoke",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:"variables",command:"revoke",summary:"Revoke runtime access to a secret. Requires --yes.",destructive:!0,yesMessage:"Revocation removes runtime availability once acknowledged. Pass --yes to confirm.",idempotent:!0,args:[Hr,zm,Os],handler:async({client:t,args:e,reqOpts:r,emit:i})=>{let n=e.businessId,o=await t.builderRevokeBusinessVariable(n,e.name,await $s(t,n,e.env),r);i(jm(n,o),"Secret revocation submitted")}},mcp:{tool:"fs_variable_revoke",title:"Revoke a write-only secret",description:"Revokes runtime access after explicit confirmation and returns a durable operation.",annotations:{readOnlyHint:!1,destructiveHint:!0,idempotentHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string(),name:s.string(),environmentId:s.string().optional(),confirmation:s.literal("REVOKE"),...Q},handler:async(t,e)=>t.builderRevokeBusinessVariable(await A(t,e.businessId),e.name,e.environmentId,{idempotencyKey:e.idempotencyKey})}},{opKey:"business_variable.delete",operationClass:"operate",scope:["businesses:update"],sideEffect:"write",cli:{group:"variables",command:"rm",summary:"Destroy a revoked secret in Main or preview. Requires --yes.",destructive:!0,yesMessage:"Deletion permanently destroys ciphertext and requires acknowledged revocation first. Pass --yes to confirm.",idempotent:!0,args:[Hr,zm,Os],handler:async({client:t,args:e,reqOpts:r,emit:i})=>{let n=e.businessId,o=await t.builderDeleteBusinessVariable(n,e.name,await $s(t,n,e.env),r);i(jm(n,o),"Secret deletion submitted")}},mcp:{tool:"fs_variable_rm",title:"Destroy a revoked secret",description:"Permanently destroys ciphertext after acknowledged revocation. Main and preview use the same contract.",annotations:{readOnlyHint:!1,destructiveHint:!0,idempotentHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string(),name:s.string(),environmentId:s.string().optional(),confirmation:s.literal("DELETE"),...Q},handler:async(t,e)=>t.builderDeleteBusinessVariable(await A(t,e.businessId),e.name,e.environmentId,{idempotencyKey:e.idempotencyKey})}},{opKey:"business_variable.operation.read",operationClass:"operate",scope:["businesses:read"],sideEffect:"read",cli:{group:"variables",command:"status",summary:"Read a durable secret mutation operation",args:[Hr,{field:"operationId",kind:"positional",token:"<operationId>",describe:"Operation id returned by a mutation."}],handler:async({client:t,args:e,emit:r})=>{let i=e.businessId;r({businessId:i,operation:await t.builderGetBusinessVariableOperation(i,e.operationId)},"Secret mutation status")}},mcp:{tool:"fs_variable_operation_get",title:"Get secret mutation status",description:"Reads publication status and frozen impact metadata.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string(),operationId:s.string()},handler:async(t,e)=>t.builderGetBusinessVariableOperation(await A(t,e.businessId),e.operationId)}}];function xk(t,e){C(t,e,Bm)}var Ik=[...Zp,...Im,...Em,...B_,...Wp,...dm,...mm,...Om,...Tm,...Rm,...Nm,...Um,...Bm,...tm,...em,...am];function Sk(t){return`${t.cli.group} ${t.cli.command}`}var Ek=[{key:"github.connect",surface:"dashboard",unavailableReason:"browser_only",reason:"GitHub account linking is an OAuth/browser consent flow. The CLI can report status, but it must not perform the account link.",statusCommand:"farthershore connect github --format json"},{key:"stripe.connect",surface:"dashboard",unavailableReason:"browser_only",reason:"Stripe Connect onboarding and KYC are Stripe-hosted browser flows. The CLI can report status after the builder completes onboarding.",statusCommand:"farthershore connect stripe <business> --format json"}];function aC(t){return t==="contract"?"repo":t==="dual"?"repo-or-api":"api"}function cC(t){return t.endsWith(".read")||t.endsWith(".list")||t.endsWith(".status")?"read":"write"}function lC(){let t=new Map(Ik.map(i=>[i.opKey,i])),e=b_.map(i=>{let n=t.get(i.key),o=n?.sideEffect??i.sideEffect??cC(i.key);return{opKey:i.key,class:i.class,canonicalHome:h_(i.class),authoringPath:aC(i.class),domain:i.domain,sideEffect:o,scope:n?.scope??null,cliCommand:n?`farthershore ${Sk(n)}`:null,unavailableReason:i.unavailable?.reason??null,unavailableDetail:i.unavailable?.detail??null,mcpTool:n?.mcp?.tool??null,mcpMayWrite:o==="write"&&(n?.mcp??null)!==null&&g_(i.class)}}),r=e.reduce((i,n)=>(n.unavailableReason===null||(i[n.unavailableReason]=(i[n.unavailableReason]??0)+1),i),{});return{summary:{operationCount:e.length,cliCommandCount:e.filter(i=>i.cliCommand!==null).length,mcpToolCount:e.filter(i=>i.mcpTool!==null).length,browserOnlyPrerequisiteCount:Ek.length,unavailableByReason:r,platformGapCount:e.filter(i=>i.unavailableReason!==null&&Bp[i.unavailableReason].isPlatformGap).length},invariants:["Contract-class business behavior is authored in business/index.ts and pushed through GitHub.","Operate-class platform actions are performed through Core APIs, CLI commands, or MCP tools.","Dual-class actions reconcile through either repo state or platform operations.","GitHub OAuth and Stripe Connect/KYC are browser-only prerequisites; the CLI reports status only.","Every operation without a cliCommand carries a non-null unavailableReason; only reason=not_implemented is a platform gap, and the rest are boundaries to hand off at."],classes:Wo,unavailableReasons:Bp,operations:e,browserOnlyPrerequisites:Ek}}function wk(t){t.command("operations").description("Machine-readable catalog of repo-controlled, API-controlled, and browser-only platform actions").command("list").description("Print the agent operation boundary catalog").action(()=>{L(lC(),"Operation catalog")})}function $k(t,e){w_(t,e),z_(t,e),Zy(t,e),qy(t,e),j_(t,e),F_(t,e),J_(t,e),Y_(t,e),X_(t,e),cy(t,e),wk(t),ly(t,e),uy(t,e),py(t,e),ky(t,e),uk(t,e),dk(t,e),pk(t,e),bk(t,e),_k(t,e),xk(t,e),xy(t,e),Oy(t),My(t),Fy(t),W_(t,e),K_(t,e),ik(t),Gy(t),Ky(t)}var fC=pC(dC(import.meta.url)),gC=JSON.parse(await uC(mC(fC,"..","package.json"),"utf-8")),st=new tf;st.name("farthershore").description("FartherShore CLI \u2014 agent-friendly commands for business operations").version(gC.version).option("--token <token>","Override auth token").option("--api-url <url>","Override API base URL").option("--format <format>","Output format. Use --format json for machine-readable agent output").option("--no-input","Never prompt; fail fast in non-interactive (agent) use").addHelpText("before",["Start here (agents):"," farthershore operations list --format json"," The machine-readable catalog of EVERY platform operation \u2014 for each:"," its class (contract = author in the repo | operate = call it here),"," the scope it needs, and the exact CLI command. Read this first to"," discover what exists rather than guessing at commands.",""," Add --format json to any command for the agent output envelope.",""].join(`
2247
+ `));st.hook("preAction",(t,e)=>{Tf(st.opts().format),S_(hC(e)),rk()});function hC(t){let e=[],r=t;for(;r&&r.name()&&r.name()!==st.name();)e.unshift(r.name()),r=r.parent;return e.join(".")||"unknown"}function bC(){let t=Yr(),e=st.opts(),r=gf(e.token),i=e.apiUrl??process.env.FARTHERSHORE_API_URL??t.apiUrl;return af({apiUrl:i,token:r})}$k(st,bC);st.exitOverride();async function vC(){try{await st.parseAsync(process.argv)}catch(t){if(t instanceof b)process.exitCode=Vp(t);else if(t instanceof Error){let e=t.code;e==="commander.helpDisplayed"||e==="commander.version"||t.message!=="(outputHelp)"&&(process.exitCode=Vp(new b(t.message,0)))}}}vC();