@farthershore/cli 0.35.0 → 0.37.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.
- package/CHANGELOG.md +93 -4
- package/README.md +39 -48
- package/dist/index.js +5225 -566
- package/package.json +5 -8
- package/dist/mcp.js +0 -160
package/dist/mcp.js
DELETED
|
@@ -1,160 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
import { createRequire as __createRequire } from "node:module";const require=__createRequire(import.meta.url);
|
|
3
|
-
var TL=Object.create;var ph=Object.defineProperty;var RL=Object.getOwnPropertyDescriptor;var xL=Object.getOwnPropertyNames;var OL=Object.getPrototypeOf,AL=Object.prototype.hasOwnProperty;var Ma=(t=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(t,{get:(e,n)=>(typeof require<"u"?require:e)[n]}):t)(function(t){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+t+'" is not supported')});var M=(t,e)=>()=>{try{return e||t((e={exports:{}}).exports,e),e.exports}catch(n){throw e=0,n}},Er=(t,e)=>{for(var n in e)ph(t,n,{get:e[n],enumerable:!0})},$L=(t,e,n,i)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of xL(e))!AL.call(t,r)&&r!==n&&ph(t,r,{get:()=>e[r],enumerable:!(i=RL(e,r))||i.enumerable});return t};var fh=(t,e,n)=>(n=t!=null?TL(OL(t)):{},$L(e||!t||!t.__esModule?ph(n,"default",{value:t,enumerable:!0}):n,t));var ll=M(Pe=>{"use strict";Object.defineProperty(Pe,"__esModule",{value:!0});Pe.regexpCode=Pe.getEsmExportName=Pe.getProperty=Pe.safeStringify=Pe.stringify=Pe.strConcat=Pe.addCodeArg=Pe.str=Pe._=Pe.nil=Pe._Code=Pe.Name=Pe.IDENTIFIER=Pe._CodeOrName=void 0;var al=class{};Pe._CodeOrName=al;Pe.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var io=class extends al{constructor(e){if(super(),!Pe.IDENTIFIER.test(e))throw new Error("CodeGen: name must be a valid identifier");this.str=e}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};Pe.Name=io;var Tn=class extends al{constructor(e){super(),this._items=typeof e=="string"?[e]:e}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let e=this._items[0];return e===""||e==='""'}get str(){var e;return(e=this._str)!==null&&e!==void 0?e:this._str=this._items.reduce((n,i)=>`${n}${i}`,"")}get names(){var e;return(e=this._names)!==null&&e!==void 0?e:this._names=this._items.reduce((n,i)=>(i instanceof io&&(n[i.str]=(n[i.str]||0)+1),n),{})}};Pe._Code=Tn;Pe.nil=new Tn("");function _O(t,...e){let n=[t[0]],i=0;for(;i<e.length;)py(n,e[i]),n.push(t[++i]);return new Tn(n)}Pe._=_O;var my=new Tn("+");function vO(t,...e){let n=[cl(t[0])],i=0;for(;i<e.length;)n.push(my),py(n,e[i]),n.push(my,cl(t[++i]));return yB(n),new Tn(n)}Pe.str=vO;function py(t,e){e instanceof Tn?t.push(...e._items):e instanceof io?t.push(e):t.push(SB(e))}Pe.addCodeArg=py;function yB(t){let e=1;for(;e<t.length-1;){if(t[e]===my){let n=kB(t[e-1],t[e+1]);if(n!==void 0){t.splice(e-1,3,n);continue}t[e++]="+"}e++}}function kB(t,e){if(e==='""')return t;if(t==='""')return e;if(typeof t=="string")return e instanceof io||t[t.length-1]!=='"'?void 0:typeof e!="string"?`${t.slice(0,-1)}${e}"`:e[0]==='"'?t.slice(0,-1)+e.slice(1):void 0;if(typeof e=="string"&&e[0]==='"'&&!(t instanceof io))return`"${t}${e.slice(1)}`}function wB(t,e){return e.emptyStr()?t:t.emptyStr()?e:vO`${t}${e}`}Pe.strConcat=wB;function SB(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:cl(Array.isArray(t)?t.join(","):t)}function IB(t){return new Tn(cl(t))}Pe.stringify=IB;function cl(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}Pe.safeStringify=cl;function EB(t){return typeof t=="string"&&Pe.IDENTIFIER.test(t)?new Tn(`.${t}`):_O`[${t}]`}Pe.getProperty=EB;function TB(t){if(typeof t=="string"&&Pe.IDENTIFIER.test(t))return new Tn(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}Pe.getEsmExportName=TB;function RB(t){return new Tn(t.toString())}Pe.regexpCode=RB});var hy=M(rn=>{"use strict";Object.defineProperty(rn,"__esModule",{value:!0});rn.ValueScope=rn.ValueScopeName=rn.Scope=rn.varKinds=rn.UsedValueState=void 0;var nn=ll(),fy=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},Kp;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(Kp||(rn.UsedValueState=Kp={}));rn.varKinds={const:new nn.Name("const"),let:new nn.Name("let"),var:new nn.Name("var")};var Fp=class{constructor({prefixes:e,parent:n}={}){this._names={},this._prefixes=e,this._parent=n}toName(e){return e instanceof nn.Name?e:this.name(e)}name(e){return new nn.Name(this._newName(e))}_newName(e){let n=this._names[e]||this._nameGroup(e);return`${e}${n.index++}`}_nameGroup(e){var n,i;if(!((i=(n=this._parent)===null||n===void 0?void 0:n._prefixes)===null||i===void 0)&&i.has(e)||this._prefixes&&!this._prefixes.has(e))throw new Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};rn.Scope=Fp;var Vp=class extends nn.Name{constructor(e,n){super(n),this.prefix=e}setValue(e,{property:n,itemIndex:i}){this.value=e,this.scopePath=(0,nn._)`.${new nn.Name(n)}[${i}]`}};rn.ValueScopeName=Vp;var xB=(0,nn._)`\n`,gy=class extends Fp{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?xB:nn.nil}}get(){return this._scope}name(e){return new Vp(e,this._newName(e))}value(e,n){var i;if(n.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let r=this.toName(e),{prefix:o}=r,a=(i=n.key)!==null&&i!==void 0?i:n.ref,c=this._values[o];if(c){let d=c.get(a);if(d)return d}else c=this._values[o]=new Map;c.set(a,r);let l=this._scope[o]||(this._scope[o]=[]),u=l.length;return l[u]=n.ref,r.setValue(n,{property:o,itemIndex:u}),r}getValue(e,n){let i=this._values[e];if(i)return i.get(n)}scopeRefs(e,n=this._values){return this._reduceValues(n,i=>{if(i.scopePath===void 0)throw new Error(`CodeGen: name "${i}" has no value`);return(0,nn._)`${e}${i.scopePath}`})}scopeCode(e=this._values,n,i){return this._reduceValues(e,r=>{if(r.value===void 0)throw new Error(`CodeGen: name "${r}" has no value`);return r.value.code},n,i)}_reduceValues(e,n,i={},r){let o=nn.nil;for(let a in e){let c=e[a];if(!c)continue;let l=i[a]=i[a]||new Map;c.forEach(u=>{if(l.has(u))return;l.set(u,Kp.Started);let d=n(u);if(d){let m=this.opts.es5?rn.varKinds.var:rn.varKinds.const;o=(0,nn._)`${o}${m} ${u} = ${d};${this.opts._n}`}else if(d=r?.(u))o=(0,nn._)`${o}${d}${this.opts._n}`;else throw new fy(u);l.set(u,Kp.Completed)})}return o}};rn.ValueScope=gy});var pe=M(be=>{"use strict";Object.defineProperty(be,"__esModule",{value:!0});be.or=be.and=be.not=be.CodeGen=be.operators=be.varKinds=be.ValueScopeName=be.ValueScope=be.Scope=be.Name=be.regexpCode=be.stringify=be.getProperty=be.nil=be.strConcat=be.str=be._=void 0;var Oe=ll(),Vn=hy(),hi=ll();Object.defineProperty(be,"_",{enumerable:!0,get:function(){return hi._}});Object.defineProperty(be,"str",{enumerable:!0,get:function(){return hi.str}});Object.defineProperty(be,"strConcat",{enumerable:!0,get:function(){return hi.strConcat}});Object.defineProperty(be,"nil",{enumerable:!0,get:function(){return hi.nil}});Object.defineProperty(be,"getProperty",{enumerable:!0,get:function(){return hi.getProperty}});Object.defineProperty(be,"stringify",{enumerable:!0,get:function(){return hi.stringify}});Object.defineProperty(be,"regexpCode",{enumerable:!0,get:function(){return hi.regexpCode}});Object.defineProperty(be,"Name",{enumerable:!0,get:function(){return hi.Name}});var Zp=hy();Object.defineProperty(be,"Scope",{enumerable:!0,get:function(){return Zp.Scope}});Object.defineProperty(be,"ValueScope",{enumerable:!0,get:function(){return Zp.ValueScope}});Object.defineProperty(be,"ValueScopeName",{enumerable:!0,get:function(){return Zp.ValueScopeName}});Object.defineProperty(be,"varKinds",{enumerable:!0,get:function(){return Zp.varKinds}});be.operators={GT:new Oe._Code(">"),GTE:new Oe._Code(">="),LT:new Oe._Code("<"),LTE:new Oe._Code("<="),EQ:new Oe._Code("==="),NEQ:new Oe._Code("!=="),NOT:new Oe._Code("!"),OR:new Oe._Code("||"),AND:new Oe._Code("&&"),ADD:new Oe._Code("+")};var Cr=class{optimizeNodes(){return this}optimizeNames(e,n){return this}},by=class extends Cr{constructor(e,n,i){super(),this.varKind=e,this.name=n,this.rhs=i}render({es5:e,_n:n}){let i=e?Vn.varKinds.var:this.varKind,r=this.rhs===void 0?"":` = ${this.rhs}`;return`${i} ${this.name}${r};`+n}optimizeNames(e,n){if(e[this.name.str])return this.rhs&&(this.rhs=Us(this.rhs,e,n)),this}get names(){return this.rhs instanceof Oe._CodeOrName?this.rhs.names:{}}},qp=class extends Cr{constructor(e,n,i){super(),this.lhs=e,this.rhs=n,this.sideEffects=i}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,n){if(!(this.lhs instanceof Oe.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=Us(this.rhs,e,n),this}get names(){let e=this.lhs instanceof Oe.Name?{}:{...this.lhs.names};return Gp(e,this.rhs)}},_y=class extends qp{constructor(e,n,i,r){super(e,i,r),this.op=n}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},vy=class extends Cr{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},yy=class extends Cr{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},ky=class extends Cr{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},wy=class extends Cr{constructor(e){super(),this.code=e}render({_n:e}){return`${this.code};`+e}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(e,n){return this.code=Us(this.code,e,n),this}get names(){return this.code instanceof Oe._CodeOrName?this.code.names:{}}},ul=class extends Cr{constructor(e=[]){super(),this.nodes=e}render(e){return this.nodes.reduce((n,i)=>n+i.render(e),"")}optimizeNodes(){let{nodes:e}=this,n=e.length;for(;n--;){let i=e[n].optimizeNodes();Array.isArray(i)?e.splice(n,1,...i):i?e[n]=i:e.splice(n,1)}return e.length>0?this:void 0}optimizeNames(e,n){let{nodes:i}=this,r=i.length;for(;r--;){let o=i[r];o.optimizeNames(e,n)||(OB(e,o.names),i.splice(r,1))}return i.length>0?this:void 0}get names(){return this.nodes.reduce((e,n)=>ao(e,n.names),{})}},Nr=class extends ul{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},Sy=class extends ul{},Ls=class extends Nr{};Ls.kind="else";var oo=class t extends Nr{constructor(e,n){super(n),this.condition=e}render(e){let n=`if(${this.condition})`+super.render(e);return this.else&&(n+="else "+this.else.render(e)),n}optimizeNodes(){super.optimizeNodes();let e=this.condition;if(e===!0)return this.nodes;let n=this.else;if(n){let i=n.optimizeNodes();n=this.else=Array.isArray(i)?new Ls(i):i}if(n)return e===!1?n instanceof t?n:n.nodes:this.nodes.length?this:new t(yO(e),n instanceof t?[n]:n.nodes);if(!(e===!1||!this.nodes.length))return this}optimizeNames(e,n){var i;if(this.else=(i=this.else)===null||i===void 0?void 0:i.optimizeNames(e,n),!!(super.optimizeNames(e,n)||this.else))return this.condition=Us(this.condition,e,n),this}get names(){let e=super.names;return Gp(e,this.condition),this.else&&ao(e,this.else.names),e}};oo.kind="if";var so=class extends Nr{};so.kind="for";var Iy=class extends so{constructor(e){super(),this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,n){if(super.optimizeNames(e,n))return this.iteration=Us(this.iteration,e,n),this}get names(){return ao(super.names,this.iteration.names)}},Ey=class extends so{constructor(e,n,i,r){super(),this.varKind=e,this.name=n,this.from=i,this.to=r}render(e){let n=e.es5?Vn.varKinds.var:this.varKind,{name:i,from:r,to:o}=this;return`for(${n} ${i}=${r}; ${i}<${o}; ${i}++)`+super.render(e)}get names(){let e=Gp(super.names,this.from);return Gp(e,this.to)}},Hp=class extends so{constructor(e,n,i,r){super(),this.loop=e,this.varKind=n,this.name=i,this.iterable=r}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,n){if(super.optimizeNames(e,n))return this.iterable=Us(this.iterable,e,n),this}get names(){return ao(super.names,this.iterable.names)}},dl=class extends Nr{constructor(e,n,i){super(),this.name=e,this.args=n,this.async=i}render(e){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(e)}};dl.kind="func";var ml=class extends ul{render(e){return"return "+super.render(e)}};ml.kind="return";var Ty=class extends Nr{render(e){let n="try"+super.render(e);return this.catch&&(n+=this.catch.render(e)),this.finally&&(n+=this.finally.render(e)),n}optimizeNodes(){var e,n;return super.optimizeNodes(),(e=this.catch)===null||e===void 0||e.optimizeNodes(),(n=this.finally)===null||n===void 0||n.optimizeNodes(),this}optimizeNames(e,n){var i,r;return super.optimizeNames(e,n),(i=this.catch)===null||i===void 0||i.optimizeNames(e,n),(r=this.finally)===null||r===void 0||r.optimizeNames(e,n),this}get names(){let e=super.names;return this.catch&&ao(e,this.catch.names),this.finally&&ao(e,this.finally.names),e}},pl=class extends Nr{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};pl.kind="catch";var fl=class extends Nr{render(e){return"finally"+super.render(e)}};fl.kind="finally";var Ry=class{constructor(e,n={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...n,_n:n.lines?`
|
|
4
|
-
`:""},this._extScope=e,this._scope=new Vn.Scope({parent:e}),this._nodes=[new Sy]}toString(){return this._root.render(this.opts)}name(e){return this._scope.name(e)}scopeName(e){return this._extScope.name(e)}scopeValue(e,n){let i=this._extScope.value(e,n);return(this._values[i.prefix]||(this._values[i.prefix]=new Set)).add(i),i}getScopeValue(e,n){return this._extScope.getValue(e,n)}scopeRefs(e){return this._extScope.scopeRefs(e,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(e,n,i,r){let o=this._scope.toName(n);return i!==void 0&&r&&(this._constants[o.str]=i),this._leafNode(new by(e,o,i)),o}const(e,n,i){return this._def(Vn.varKinds.const,e,n,i)}let(e,n,i){return this._def(Vn.varKinds.let,e,n,i)}var(e,n,i){return this._def(Vn.varKinds.var,e,n,i)}assign(e,n,i){return this._leafNode(new qp(e,n,i))}add(e,n){return this._leafNode(new _y(e,be.operators.ADD,n))}code(e){return typeof e=="function"?e():e!==Oe.nil&&this._leafNode(new wy(e)),this}object(...e){let n=["{"];for(let[i,r]of e)n.length>1&&n.push(","),n.push(i),(i!==r||this.opts.es5)&&(n.push(":"),(0,Oe.addCodeArg)(n,r));return n.push("}"),new Oe._Code(n)}if(e,n,i){if(this._blockNode(new oo(e)),n&&i)this.code(n).else().code(i).endIf();else if(n)this.code(n).endIf();else if(i)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(e){return this._elseNode(new oo(e))}else(){return this._elseNode(new Ls)}endIf(){return this._endBlockNode(oo,Ls)}_for(e,n){return this._blockNode(e),n&&this.code(n).endFor(),this}for(e,n){return this._for(new Iy(e),n)}forRange(e,n,i,r,o=this.opts.es5?Vn.varKinds.var:Vn.varKinds.let){let a=this._scope.toName(e);return this._for(new Ey(o,a,n,i),()=>r(a))}forOf(e,n,i,r=Vn.varKinds.const){let o=this._scope.toName(e);if(this.opts.es5){let a=n instanceof Oe.Name?n:this.var("_arr",n);return this.forRange("_i",0,(0,Oe._)`${a}.length`,c=>{this.var(o,(0,Oe._)`${a}[${c}]`),i(o)})}return this._for(new Hp("of",r,o,n),()=>i(o))}forIn(e,n,i,r=this.opts.es5?Vn.varKinds.var:Vn.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,Oe._)`Object.keys(${n})`,i);let o=this._scope.toName(e);return this._for(new Hp("in",r,o,n),()=>i(o))}endFor(){return this._endBlockNode(so)}label(e){return this._leafNode(new vy(e))}break(e){return this._leafNode(new yy(e))}return(e){let n=new ml;if(this._blockNode(n),this.code(e),n.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(ml)}try(e,n,i){if(!n&&!i)throw new Error('CodeGen: "try" without "catch" and "finally"');let r=new Ty;if(this._blockNode(r),this.code(e),n){let o=this.name("e");this._currNode=r.catch=new pl(o),n(o)}return i&&(this._currNode=r.finally=new fl,this.code(i)),this._endBlockNode(pl,fl)}throw(e){return this._leafNode(new ky(e))}block(e,n){return this._blockStarts.push(this._nodes.length),e&&this.code(e).endBlock(n),this}endBlock(e){let n=this._blockStarts.pop();if(n===void 0)throw new Error("CodeGen: not in self-balancing block");let i=this._nodes.length-n;if(i<0||e!==void 0&&i!==e)throw new Error(`CodeGen: wrong number of nodes: ${i} vs ${e} expected`);return this._nodes.length=n,this}func(e,n=Oe.nil,i,r){return this._blockNode(new dl(e,n,i)),r&&this.code(r).endFunc(),this}endFunc(){return this._endBlockNode(dl)}optimize(e=1){for(;e-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(e){return this._currNode.nodes.push(e),this}_blockNode(e){this._currNode.nodes.push(e),this._nodes.push(e)}_endBlockNode(e,n){let i=this._currNode;if(i instanceof e||n&&i instanceof n)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${n?`${e.kind}/${n.kind}`:e.kind}"`)}_elseNode(e){let n=this._currNode;if(!(n instanceof oo))throw new Error('CodeGen: "else" without "if"');return this._currNode=n.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let n=this._nodes;n[n.length-1]=e}};be.CodeGen=Ry;function ao(t,e){for(let n in e)t[n]=(t[n]||0)+(e[n]||0);return t}function Gp(t,e){return e instanceof Oe._CodeOrName?ao(t,e.names):t}function Us(t,e,n){if(t instanceof Oe.Name)return i(t);if(!r(t))return t;return new Oe._Code(t._items.reduce((o,a)=>(a instanceof Oe.Name&&(a=i(a)),a instanceof Oe._Code?o.push(...a._items):o.push(a),o),[]));function i(o){let a=n[o.str];return a===void 0||e[o.str]!==1?o:(delete e[o.str],a)}function r(o){return o instanceof Oe._Code&&o._items.some(a=>a instanceof Oe.Name&&e[a.str]===1&&n[a.str]!==void 0)}}function OB(t,e){for(let n in e)t[n]=(t[n]||0)-(e[n]||0)}function yO(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,Oe._)`!${xy(t)}`}be.not=yO;var AB=kO(be.operators.AND);function $B(...t){return t.reduce(AB)}be.and=$B;var CB=kO(be.operators.OR);function NB(...t){return t.reduce(CB)}be.or=NB;function kO(t){return(e,n)=>e===Oe.nil?n:n===Oe.nil?e:(0,Oe._)`${xy(e)} ${t} ${xy(n)}`}function xy(t){return t instanceof Oe.Name?t:(0,Oe._)`(${t})`}});var $e=M(ve=>{"use strict";Object.defineProperty(ve,"__esModule",{value:!0});ve.checkStrictMode=ve.getErrorPath=ve.Type=ve.useFunc=ve.setEvaluated=ve.evaluatedPropsToName=ve.mergeEvaluated=ve.eachItem=ve.unescapeJsonPointer=ve.escapeJsonPointer=ve.escapeFragment=ve.unescapeFragment=ve.schemaRefOrVal=ve.schemaHasRulesButRef=ve.schemaHasRules=ve.checkUnknownRules=ve.alwaysValidSchema=ve.toHash=void 0;var Ge=pe(),PB=ll();function zB(t){let e={};for(let n of t)e[n]=!0;return e}ve.toHash=zB;function DB(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(IO(t,e),!EO(e,t.self.RULES.all))}ve.alwaysValidSchema=DB;function IO(t,e=t.schema){let{opts:n,self:i}=t;if(!n.strictSchema||typeof e=="boolean")return;let r=i.RULES.keywords;for(let o in e)r[o]||xO(t,`unknown keyword: "${o}"`)}ve.checkUnknownRules=IO;function EO(t,e){if(typeof t=="boolean")return!t;for(let n in t)if(e[n])return!0;return!1}ve.schemaHasRules=EO;function LB(t,e){if(typeof t=="boolean")return!t;for(let n in t)if(n!=="$ref"&&e.all[n])return!0;return!1}ve.schemaHasRulesButRef=LB;function UB({topSchemaRef:t,schemaPath:e},n,i,r){if(!r){if(typeof n=="number"||typeof n=="boolean")return n;if(typeof n=="string")return(0,Ge._)`${n}`}return(0,Ge._)`${t}${e}${(0,Ge.getProperty)(i)}`}ve.schemaRefOrVal=UB;function MB(t){return TO(decodeURIComponent(t))}ve.unescapeFragment=MB;function jB(t){return encodeURIComponent(Ay(t))}ve.escapeFragment=jB;function Ay(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}ve.escapeJsonPointer=Ay;function TO(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}ve.unescapeJsonPointer=TO;function BB(t,e){if(Array.isArray(t))for(let n of t)e(n);else e(t)}ve.eachItem=BB;function wO({mergeNames:t,mergeToName:e,mergeValues:n,resultToName:i}){return(r,o,a,c)=>{let l=a===void 0?o:a instanceof Ge.Name?(o instanceof Ge.Name?t(r,o,a):e(r,o,a),a):o instanceof Ge.Name?(e(r,a,o),o):n(o,a);return c===Ge.Name&&!(l instanceof Ge.Name)?i(r,l):l}}ve.mergeEvaluated={props:wO({mergeNames:(t,e,n)=>t.if((0,Ge._)`${n} !== true && ${e} !== undefined`,()=>{t.if((0,Ge._)`${e} === true`,()=>t.assign(n,!0),()=>t.assign(n,(0,Ge._)`${n} || {}`).code((0,Ge._)`Object.assign(${n}, ${e})`))}),mergeToName:(t,e,n)=>t.if((0,Ge._)`${n} !== true`,()=>{e===!0?t.assign(n,!0):(t.assign(n,(0,Ge._)`${n} || {}`),$y(t,n,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:RO}),items:wO({mergeNames:(t,e,n)=>t.if((0,Ge._)`${n} !== true && ${e} !== undefined`,()=>t.assign(n,(0,Ge._)`${e} === true ? true : ${n} > ${e} ? ${n} : ${e}`)),mergeToName:(t,e,n)=>t.if((0,Ge._)`${n} !== true`,()=>t.assign(n,e===!0?!0:(0,Ge._)`${n} > ${e} ? ${n} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function RO(t,e){if(e===!0)return t.var("props",!0);let n=t.var("props",(0,Ge._)`{}`);return e!==void 0&&$y(t,n,e),n}ve.evaluatedPropsToName=RO;function $y(t,e,n){Object.keys(n).forEach(i=>t.assign((0,Ge._)`${e}${(0,Ge.getProperty)(i)}`,!0))}ve.setEvaluated=$y;var SO={};function KB(t,e){return t.scopeValue("func",{ref:e,code:SO[e.code]||(SO[e.code]=new PB._Code(e.code))})}ve.useFunc=KB;var Oy;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(Oy||(ve.Type=Oy={}));function FB(t,e,n){if(t instanceof Ge.Name){let i=e===Oy.Num;return n?i?(0,Ge._)`"[" + ${t} + "]"`:(0,Ge._)`"['" + ${t} + "']"`:i?(0,Ge._)`"/" + ${t}`:(0,Ge._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return n?(0,Ge.getProperty)(t).toString():"/"+Ay(t)}ve.getErrorPath=FB;function xO(t,e,n=t.opts.strictSchema){if(n){if(e=`strict mode: ${e}`,n===!0)throw new Error(e);t.self.logger.warn(e)}}ve.checkStrictMode=xO});var Pr=M(Cy=>{"use strict";Object.defineProperty(Cy,"__esModule",{value:!0});var Ct=pe(),VB={data:new Ct.Name("data"),valCxt:new Ct.Name("valCxt"),instancePath:new Ct.Name("instancePath"),parentData:new Ct.Name("parentData"),parentDataProperty:new Ct.Name("parentDataProperty"),rootData:new Ct.Name("rootData"),dynamicAnchors:new Ct.Name("dynamicAnchors"),vErrors:new Ct.Name("vErrors"),errors:new Ct.Name("errors"),this:new Ct.Name("this"),self:new Ct.Name("self"),scope:new Ct.Name("scope"),json:new Ct.Name("json"),jsonPos:new Ct.Name("jsonPos"),jsonLen:new Ct.Name("jsonLen"),jsonPart:new Ct.Name("jsonPart")};Cy.default=VB});var gl=M(Nt=>{"use strict";Object.defineProperty(Nt,"__esModule",{value:!0});Nt.extendErrors=Nt.resetErrorsCount=Nt.reportExtraError=Nt.reportError=Nt.keyword$DataError=Nt.keywordError=void 0;var Ce=pe(),Wp=$e(),Ft=Pr();Nt.keywordError={message:({keyword:t})=>(0,Ce.str)`must pass "${t}" keyword validation`};Nt.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,Ce.str)`"${t}" keyword must be ${e} ($data)`:(0,Ce.str)`"${t}" keyword is invalid ($data)`};function qB(t,e=Nt.keywordError,n,i){let{it:r}=t,{gen:o,compositeRule:a,allErrors:c}=r,l=$O(t,e,n);i??(a||c)?OO(o,l):AO(r,(0,Ce._)`[${l}]`)}Nt.reportError=qB;function HB(t,e=Nt.keywordError,n){let{it:i}=t,{gen:r,compositeRule:o,allErrors:a}=i,c=$O(t,e,n);OO(r,c),o||a||AO(i,Ft.default.vErrors)}Nt.reportExtraError=HB;function GB(t,e){t.assign(Ft.default.errors,e),t.if((0,Ce._)`${Ft.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,Ce._)`${Ft.default.vErrors}.length`,e),()=>t.assign(Ft.default.vErrors,null)))}Nt.resetErrorsCount=GB;function ZB({gen:t,keyword:e,schemaValue:n,data:i,errsCount:r,it:o}){if(r===void 0)throw new Error("ajv implementation error");let a=t.name("err");t.forRange("i",r,Ft.default.errors,c=>{t.const(a,(0,Ce._)`${Ft.default.vErrors}[${c}]`),t.if((0,Ce._)`${a}.instancePath === undefined`,()=>t.assign((0,Ce._)`${a}.instancePath`,(0,Ce.strConcat)(Ft.default.instancePath,o.errorPath))),t.assign((0,Ce._)`${a}.schemaPath`,(0,Ce.str)`${o.errSchemaPath}/${e}`),o.opts.verbose&&(t.assign((0,Ce._)`${a}.schema`,n),t.assign((0,Ce._)`${a}.data`,i))})}Nt.extendErrors=ZB;function OO(t,e){let n=t.const("err",e);t.if((0,Ce._)`${Ft.default.vErrors} === null`,()=>t.assign(Ft.default.vErrors,(0,Ce._)`[${n}]`),(0,Ce._)`${Ft.default.vErrors}.push(${n})`),t.code((0,Ce._)`${Ft.default.errors}++`)}function AO(t,e){let{gen:n,validateName:i,schemaEnv:r}=t;r.$async?n.throw((0,Ce._)`new ${t.ValidationError}(${e})`):(n.assign((0,Ce._)`${i}.errors`,e),n.return(!1))}var co={keyword:new Ce.Name("keyword"),schemaPath:new Ce.Name("schemaPath"),params:new Ce.Name("params"),propertyName:new Ce.Name("propertyName"),message:new Ce.Name("message"),schema:new Ce.Name("schema"),parentSchema:new Ce.Name("parentSchema")};function $O(t,e,n){let{createErrors:i}=t.it;return i===!1?(0,Ce._)`{}`:WB(t,e,n)}function WB(t,e,n={}){let{gen:i,it:r}=t,o=[JB(r,n),YB(t,n)];return XB(t,e,o),i.object(...o)}function JB({errorPath:t},{instancePath:e}){let n=e?(0,Ce.str)`${t}${(0,Wp.getErrorPath)(e,Wp.Type.Str)}`:t;return[Ft.default.instancePath,(0,Ce.strConcat)(Ft.default.instancePath,n)]}function YB({keyword:t,it:{errSchemaPath:e}},{schemaPath:n,parentSchema:i}){let r=i?e:(0,Ce.str)`${e}/${t}`;return n&&(r=(0,Ce.str)`${r}${(0,Wp.getErrorPath)(n,Wp.Type.Str)}`),[co.schemaPath,r]}function XB(t,{params:e,message:n},i){let{keyword:r,data:o,schemaValue:a,it:c}=t,{opts:l,propertyName:u,topSchemaRef:d,schemaPath:m}=c;i.push([co.keyword,r],[co.params,typeof e=="function"?e(t):e||(0,Ce._)`{}`]),l.messages&&i.push([co.message,typeof n=="function"?n(t):n]),l.verbose&&i.push([co.schema,a],[co.parentSchema,(0,Ce._)`${d}${m}`],[Ft.default.data,o]),u&&i.push([co.propertyName,u])}});var NO=M(Ms=>{"use strict";Object.defineProperty(Ms,"__esModule",{value:!0});Ms.boolOrEmptySchema=Ms.topBoolOrEmptySchema=void 0;var QB=gl(),eK=pe(),tK=Pr(),nK={message:"boolean schema is false"};function rK(t){let{gen:e,schema:n,validateName:i}=t;n===!1?CO(t,!1):typeof n=="object"&&n.$async===!0?e.return(tK.default.data):(e.assign((0,eK._)`${i}.errors`,null),e.return(!0))}Ms.topBoolOrEmptySchema=rK;function iK(t,e){let{gen:n,schema:i}=t;i===!1?(n.var(e,!1),CO(t)):n.var(e,!0)}Ms.boolOrEmptySchema=iK;function CO(t,e){let{gen:n,data:i}=t,r={gen:n,keyword:"false schema",data:i,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:t};(0,QB.reportError)(r,nK,void 0,e)}});var Ny=M(js=>{"use strict";Object.defineProperty(js,"__esModule",{value:!0});js.getRules=js.isJSONType=void 0;var oK=["string","number","integer","boolean","null","object","array"],sK=new Set(oK);function aK(t){return typeof t=="string"&&sK.has(t)}js.isJSONType=aK;function cK(){let t={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...t,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},t.number,t.string,t.array,t.object],post:{rules:[]},all:{},keywords:{}}}js.getRules=cK});var Py=M(bi=>{"use strict";Object.defineProperty(bi,"__esModule",{value:!0});bi.shouldUseRule=bi.shouldUseGroup=bi.schemaHasRulesForType=void 0;function lK({schema:t,self:e},n){let i=e.RULES.types[n];return i&&i!==!0&&PO(t,i)}bi.schemaHasRulesForType=lK;function PO(t,e){return e.rules.some(n=>zO(t,n))}bi.shouldUseGroup=PO;function zO(t,e){var n;return t[e.keyword]!==void 0||((n=e.definition.implements)===null||n===void 0?void 0:n.some(i=>t[i]!==void 0))}bi.shouldUseRule=zO});var hl=M(Pt=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:!0});Pt.reportTypeError=Pt.checkDataTypes=Pt.checkDataType=Pt.coerceAndCheckDataType=Pt.getJSONTypes=Pt.getSchemaTypes=Pt.DataType=void 0;var uK=Ny(),dK=Py(),mK=gl(),me=pe(),DO=$e(),Bs;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(Bs||(Pt.DataType=Bs={}));function pK(t){let e=LO(t.type);if(e.includes("null")){if(t.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!e.length&&t.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');t.nullable===!0&&e.push("null")}return e}Pt.getSchemaTypes=pK;function LO(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(uK.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}Pt.getJSONTypes=LO;function fK(t,e){let{gen:n,data:i,opts:r}=t,o=gK(e,r.coerceTypes),a=e.length>0&&!(o.length===0&&e.length===1&&(0,dK.schemaHasRulesForType)(t,e[0]));if(a){let c=Dy(e,i,r.strictNumbers,Bs.Wrong);n.if(c,()=>{o.length?hK(t,e,o):Ly(t)})}return a}Pt.coerceAndCheckDataType=fK;var UO=new Set(["string","number","integer","boolean","null"]);function gK(t,e){return e?t.filter(n=>UO.has(n)||e==="array"&&n==="array"):[]}function hK(t,e,n){let{gen:i,data:r,opts:o}=t,a=i.let("dataType",(0,me._)`typeof ${r}`),c=i.let("coerced",(0,me._)`undefined`);o.coerceTypes==="array"&&i.if((0,me._)`${a} == 'object' && Array.isArray(${r}) && ${r}.length == 1`,()=>i.assign(r,(0,me._)`${r}[0]`).assign(a,(0,me._)`typeof ${r}`).if(Dy(e,r,o.strictNumbers),()=>i.assign(c,r))),i.if((0,me._)`${c} !== undefined`);for(let u of n)(UO.has(u)||u==="array"&&o.coerceTypes==="array")&&l(u);i.else(),Ly(t),i.endIf(),i.if((0,me._)`${c} !== undefined`,()=>{i.assign(r,c),bK(t,c)});function l(u){switch(u){case"string":i.elseIf((0,me._)`${a} == "number" || ${a} == "boolean"`).assign(c,(0,me._)`"" + ${r}`).elseIf((0,me._)`${r} === null`).assign(c,(0,me._)`""`);return;case"number":i.elseIf((0,me._)`${a} == "boolean" || ${r} === null
|
|
5
|
-
|| (${a} == "string" && ${r} && ${r} == +${r})`).assign(c,(0,me._)`+${r}`);return;case"integer":i.elseIf((0,me._)`${a} === "boolean" || ${r} === null
|
|
6
|
-
|| (${a} === "string" && ${r} && ${r} == +${r} && !(${r} % 1))`).assign(c,(0,me._)`+${r}`);return;case"boolean":i.elseIf((0,me._)`${r} === "false" || ${r} === 0 || ${r} === null`).assign(c,!1).elseIf((0,me._)`${r} === "true" || ${r} === 1`).assign(c,!0);return;case"null":i.elseIf((0,me._)`${r} === "" || ${r} === 0 || ${r} === false`),i.assign(c,null);return;case"array":i.elseIf((0,me._)`${a} === "string" || ${a} === "number"
|
|
7
|
-
|| ${a} === "boolean" || ${r} === null`).assign(c,(0,me._)`[${r}]`)}}}function bK({gen:t,parentData:e,parentDataProperty:n},i){t.if((0,me._)`${e} !== undefined`,()=>t.assign((0,me._)`${e}[${n}]`,i))}function zy(t,e,n,i=Bs.Correct){let r=i===Bs.Correct?me.operators.EQ:me.operators.NEQ,o;switch(t){case"null":return(0,me._)`${e} ${r} null`;case"array":o=(0,me._)`Array.isArray(${e})`;break;case"object":o=(0,me._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":o=a((0,me._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":o=a();break;default:return(0,me._)`typeof ${e} ${r} ${t}`}return i===Bs.Correct?o:(0,me.not)(o);function a(c=me.nil){return(0,me.and)((0,me._)`typeof ${e} == "number"`,c,n?(0,me._)`isFinite(${e})`:me.nil)}}Pt.checkDataType=zy;function Dy(t,e,n,i){if(t.length===1)return zy(t[0],e,n,i);let r,o=(0,DO.toHash)(t);if(o.array&&o.object){let a=(0,me._)`typeof ${e} != "object"`;r=o.null?a:(0,me._)`!${e} || ${a}`,delete o.null,delete o.array,delete o.object}else r=me.nil;o.number&&delete o.integer;for(let a in o)r=(0,me.and)(r,zy(a,e,n,i));return r}Pt.checkDataTypes=Dy;var _K={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,me._)`{type: ${t}}`:(0,me._)`{type: ${e}}`};function Ly(t){let e=vK(t);(0,mK.reportError)(e,_K)}Pt.reportTypeError=Ly;function vK(t){let{gen:e,data:n,schema:i}=t,r=(0,DO.schemaRefOrVal)(t,i,"type");return{gen:e,keyword:"type",data:n,schema:i.type,schemaCode:r,schemaValue:r,parentSchema:i,params:{},it:t}}});var jO=M(Jp=>{"use strict";Object.defineProperty(Jp,"__esModule",{value:!0});Jp.assignDefaults=void 0;var Ks=pe(),yK=$e();function kK(t,e){let{properties:n,items:i}=t.schema;if(e==="object"&&n)for(let r in n)MO(t,r,n[r].default);else e==="array"&&Array.isArray(i)&&i.forEach((r,o)=>MO(t,o,r.default))}Jp.assignDefaults=kK;function MO(t,e,n){let{gen:i,compositeRule:r,data:o,opts:a}=t;if(n===void 0)return;let c=(0,Ks._)`${o}${(0,Ks.getProperty)(e)}`;if(r){(0,yK.checkStrictMode)(t,`default is ignored for: ${c}`);return}let l=(0,Ks._)`${c} === undefined`;a.useDefaults==="empty"&&(l=(0,Ks._)`${l} || ${c} === null || ${c} === ""`),i.if(l,(0,Ks._)`${c} = ${(0,Ks.stringify)(n)}`)}});var Rn=M(qe=>{"use strict";Object.defineProperty(qe,"__esModule",{value:!0});qe.validateUnion=qe.validateArray=qe.usePattern=qe.callValidateCode=qe.schemaProperties=qe.allSchemaProperties=qe.noPropertyInData=qe.propertyInData=qe.isOwnProperty=qe.hasPropFunc=qe.reportMissingProp=qe.checkMissingProp=qe.checkReportMissingProp=void 0;var Xe=pe(),Uy=$e(),_i=Pr(),wK=$e();function SK(t,e){let{gen:n,data:i,it:r}=t;n.if(jy(n,i,e,r.opts.ownProperties),()=>{t.setParams({missingProperty:(0,Xe._)`${e}`},!0),t.error()})}qe.checkReportMissingProp=SK;function IK({gen:t,data:e,it:{opts:n}},i,r){return(0,Xe.or)(...i.map(o=>(0,Xe.and)(jy(t,e,o,n.ownProperties),(0,Xe._)`${r} = ${o}`)))}qe.checkMissingProp=IK;function EK(t,e){t.setParams({missingProperty:e},!0),t.error()}qe.reportMissingProp=EK;function BO(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,Xe._)`Object.prototype.hasOwnProperty`})}qe.hasPropFunc=BO;function My(t,e,n){return(0,Xe._)`${BO(t)}.call(${e}, ${n})`}qe.isOwnProperty=My;function TK(t,e,n,i){let r=(0,Xe._)`${e}${(0,Xe.getProperty)(n)} !== undefined`;return i?(0,Xe._)`${r} && ${My(t,e,n)}`:r}qe.propertyInData=TK;function jy(t,e,n,i){let r=(0,Xe._)`${e}${(0,Xe.getProperty)(n)} === undefined`;return i?(0,Xe.or)(r,(0,Xe.not)(My(t,e,n))):r}qe.noPropertyInData=jy;function KO(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}qe.allSchemaProperties=KO;function RK(t,e){return KO(e).filter(n=>!(0,Uy.alwaysValidSchema)(t,e[n]))}qe.schemaProperties=RK;function xK({schemaCode:t,data:e,it:{gen:n,topSchemaRef:i,schemaPath:r,errorPath:o},it:a},c,l,u){let d=u?(0,Xe._)`${t}, ${e}, ${i}${r}`:e,m=[[_i.default.instancePath,(0,Xe.strConcat)(_i.default.instancePath,o)],[_i.default.parentData,a.parentData],[_i.default.parentDataProperty,a.parentDataProperty],[_i.default.rootData,_i.default.rootData]];a.opts.dynamicRef&&m.push([_i.default.dynamicAnchors,_i.default.dynamicAnchors]);let f=(0,Xe._)`${d}, ${n.object(...m)}`;return l!==Xe.nil?(0,Xe._)`${c}.call(${l}, ${f})`:(0,Xe._)`${c}(${f})`}qe.callValidateCode=xK;var OK=(0,Xe._)`new RegExp`;function AK({gen:t,it:{opts:e}},n){let i=e.unicodeRegExp?"u":"",{regExp:r}=e.code,o=r(n,i);return t.scopeValue("pattern",{key:o.toString(),ref:o,code:(0,Xe._)`${r.code==="new RegExp"?OK:(0,wK.useFunc)(t,r)}(${n}, ${i})`})}qe.usePattern=AK;function $K(t){let{gen:e,data:n,keyword:i,it:r}=t,o=e.name("valid");if(r.allErrors){let c=e.let("valid",!0);return a(()=>e.assign(c,!1)),c}return e.var(o,!0),a(()=>e.break()),o;function a(c){let l=e.const("len",(0,Xe._)`${n}.length`);e.forRange("i",0,l,u=>{t.subschema({keyword:i,dataProp:u,dataPropType:Uy.Type.Num},o),e.if((0,Xe.not)(o),c)})}}qe.validateArray=$K;function CK(t){let{gen:e,schema:n,keyword:i,it:r}=t;if(!Array.isArray(n))throw new Error("ajv implementation error");if(n.some(l=>(0,Uy.alwaysValidSchema)(r,l))&&!r.opts.unevaluated)return;let a=e.let("valid",!1),c=e.name("_valid");e.block(()=>n.forEach((l,u)=>{let d=t.subschema({keyword:i,schemaProp:u,compositeRule:!0},c);e.assign(a,(0,Xe._)`${a} || ${c}`),t.mergeValidEvaluated(d,c)||e.if((0,Xe.not)(a))})),t.result(a,()=>t.reset(),()=>t.error(!0))}qe.validateUnion=CK});var qO=M(dr=>{"use strict";Object.defineProperty(dr,"__esModule",{value:!0});dr.validateKeywordUsage=dr.validSchemaType=dr.funcKeywordCode=dr.macroKeywordCode=void 0;var Vt=pe(),lo=Pr(),NK=Rn(),PK=gl();function zK(t,e){let{gen:n,keyword:i,schema:r,parentSchema:o,it:a}=t,c=e.macro.call(a.self,r,o,a),l=VO(n,i,c);a.opts.validateSchema!==!1&&a.self.validateSchema(c,!0);let u=n.name("valid");t.subschema({schema:c,schemaPath:Vt.nil,errSchemaPath:`${a.errSchemaPath}/${i}`,topSchemaRef:l,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}dr.macroKeywordCode=zK;function DK(t,e){var n;let{gen:i,keyword:r,schema:o,parentSchema:a,$data:c,it:l}=t;UK(l,e);let u=!c&&e.compile?e.compile.call(l.self,o,a,l):e.validate,d=VO(i,r,u),m=i.let("valid");t.block$data(m,f),t.ok((n=e.valid)!==null&&n!==void 0?n:m);function f(){if(e.errors===!1)b(),e.modifying&&FO(t),_(()=>t.error());else{let T=e.async?p():g();e.modifying&&FO(t),_(()=>LK(t,T))}}function p(){let T=i.let("ruleErrs",null);return i.try(()=>b((0,Vt._)`await `),$=>i.assign(m,!1).if((0,Vt._)`${$} instanceof ${l.ValidationError}`,()=>i.assign(T,(0,Vt._)`${$}.errors`),()=>i.throw($))),T}function g(){let T=(0,Vt._)`${d}.errors`;return i.assign(T,null),b(Vt.nil),T}function b(T=e.async?(0,Vt._)`await `:Vt.nil){let $=l.opts.passContext?lo.default.this:lo.default.self,R=!("compile"in e&&!c||e.schema===!1);i.assign(m,(0,Vt._)`${T}${(0,NK.callValidateCode)(t,d,$,R)}`,e.modifying)}function _(T){var $;i.if((0,Vt.not)(($=e.valid)!==null&&$!==void 0?$:m),T)}}dr.funcKeywordCode=DK;function FO(t){let{gen:e,data:n,it:i}=t;e.if(i.parentData,()=>e.assign(n,(0,Vt._)`${i.parentData}[${i.parentDataProperty}]`))}function LK(t,e){let{gen:n}=t;n.if((0,Vt._)`Array.isArray(${e})`,()=>{n.assign(lo.default.vErrors,(0,Vt._)`${lo.default.vErrors} === null ? ${e} : ${lo.default.vErrors}.concat(${e})`).assign(lo.default.errors,(0,Vt._)`${lo.default.vErrors}.length`),(0,PK.extendErrors)(t)},()=>t.error())}function UK({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function VO(t,e,n){if(n===void 0)throw new Error(`keyword "${e}" failed to compile`);return t.scopeValue("keyword",typeof n=="function"?{ref:n}:{ref:n,code:(0,Vt.stringify)(n)})}function MK(t,e,n=!1){return!e.length||e.some(i=>i==="array"?Array.isArray(t):i==="object"?t&&typeof t=="object"&&!Array.isArray(t):typeof t==i||n&&typeof t>"u")}dr.validSchemaType=MK;function jK({schema:t,opts:e,self:n,errSchemaPath:i},r,o){if(Array.isArray(r.keyword)?!r.keyword.includes(o):r.keyword!==o)throw new Error("ajv implementation error");let a=r.dependencies;if(a?.some(c=>!Object.prototype.hasOwnProperty.call(t,c)))throw new Error(`parent schema must have dependencies of ${o}: ${a.join(",")}`);if(r.validateSchema&&!r.validateSchema(t[o])){let l=`keyword "${o}" value is invalid at path "${i}": `+n.errorsText(r.validateSchema.errors);if(e.validateSchema==="log")n.logger.error(l);else throw new Error(l)}}dr.validateKeywordUsage=jK});var GO=M(vi=>{"use strict";Object.defineProperty(vi,"__esModule",{value:!0});vi.extendSubschemaMode=vi.extendSubschemaData=vi.getSubschema=void 0;var mr=pe(),HO=$e();function BK(t,{keyword:e,schemaProp:n,schema:i,schemaPath:r,errSchemaPath:o,topSchemaRef:a}){if(e!==void 0&&i!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(e!==void 0){let c=t.schema[e];return n===void 0?{schema:c,schemaPath:(0,mr._)`${t.schemaPath}${(0,mr.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:c[n],schemaPath:(0,mr._)`${t.schemaPath}${(0,mr.getProperty)(e)}${(0,mr.getProperty)(n)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,HO.escapeFragment)(n)}`}}if(i!==void 0){if(r===void 0||o===void 0||a===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:i,schemaPath:r,topSchemaRef:a,errSchemaPath:o}}throw new Error('either "keyword" or "schema" must be passed')}vi.getSubschema=BK;function KK(t,e,{dataProp:n,dataPropType:i,data:r,dataTypes:o,propertyName:a}){if(r!==void 0&&n!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:c}=e;if(n!==void 0){let{errorPath:u,dataPathArr:d,opts:m}=e,f=c.let("data",(0,mr._)`${e.data}${(0,mr.getProperty)(n)}`,!0);l(f),t.errorPath=(0,mr.str)`${u}${(0,HO.getErrorPath)(n,i,m.jsPropertySyntax)}`,t.parentDataProperty=(0,mr._)`${n}`,t.dataPathArr=[...d,t.parentDataProperty]}if(r!==void 0){let u=r instanceof mr.Name?r:c.let("data",r,!0);l(u),a!==void 0&&(t.propertyName=a)}o&&(t.dataTypes=o);function l(u){t.data=u,t.dataLevel=e.dataLevel+1,t.dataTypes=[],e.definedProperties=new Set,t.parentData=e.data,t.dataNames=[...e.dataNames,u]}}vi.extendSubschemaData=KK;function FK(t,{jtdDiscriminator:e,jtdMetadata:n,compositeRule:i,createErrors:r,allErrors:o}){i!==void 0&&(t.compositeRule=i),r!==void 0&&(t.createErrors=r),o!==void 0&&(t.allErrors=o),t.jtdDiscriminator=e,t.jtdMetadata=n}vi.extendSubschemaMode=FK});var By=M((Cre,ZO)=>{"use strict";ZO.exports=function t(e,n){if(e===n)return!0;if(e&&n&&typeof e=="object"&&typeof n=="object"){if(e.constructor!==n.constructor)return!1;var i,r,o;if(Array.isArray(e)){if(i=e.length,i!=n.length)return!1;for(r=i;r--!==0;)if(!t(e[r],n[r]))return!1;return!0}if(e.constructor===RegExp)return e.source===n.source&&e.flags===n.flags;if(e.valueOf!==Object.prototype.valueOf)return e.valueOf()===n.valueOf();if(e.toString!==Object.prototype.toString)return e.toString()===n.toString();if(o=Object.keys(e),i=o.length,i!==Object.keys(n).length)return!1;for(r=i;r--!==0;)if(!Object.prototype.hasOwnProperty.call(n,o[r]))return!1;for(r=i;r--!==0;){var a=o[r];if(!t(e[a],n[a]))return!1}return!0}return e!==e&&n!==n}});var JO=M((Nre,WO)=>{"use strict";var yi=WO.exports=function(t,e,n){typeof e=="function"&&(n=e,e={}),n=e.cb||n;var i=typeof n=="function"?n:n.pre||function(){},r=n.post||function(){};Yp(e,i,r,t,"",t)};yi.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};yi.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};yi.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};yi.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function Yp(t,e,n,i,r,o,a,c,l,u){if(i&&typeof i=="object"&&!Array.isArray(i)){e(i,r,o,a,c,l,u);for(var d in i){var m=i[d];if(Array.isArray(m)){if(d in yi.arrayKeywords)for(var f=0;f<m.length;f++)Yp(t,e,n,m[f],r+"/"+d+"/"+f,o,r,d,i,f)}else if(d in yi.propsKeywords){if(m&&typeof m=="object")for(var p in m)Yp(t,e,n,m[p],r+"/"+d+"/"+VK(p),o,r,d,i,p)}else(d in yi.keywords||t.allKeys&&!(d in yi.skipKeywords))&&Yp(t,e,n,m,r+"/"+d,o,r,d,i)}n(i,r,o,a,c,l,u)}}function VK(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var bl=M(on=>{"use strict";Object.defineProperty(on,"__esModule",{value:!0});on.getSchemaRefs=on.resolveUrl=on.normalizeId=on._getFullPath=on.getFullPath=on.inlineRef=void 0;var qK=$e(),HK=By(),GK=JO(),ZK=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function WK(t,e=!0){return typeof t=="boolean"?!0:e===!0?!Ky(t):e?YO(t)<=e:!1}on.inlineRef=WK;var JK=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Ky(t){for(let e in t){if(JK.has(e))return!0;let n=t[e];if(Array.isArray(n)&&n.some(Ky)||typeof n=="object"&&Ky(n))return!0}return!1}function YO(t){let e=0;for(let n in t){if(n==="$ref")return 1/0;if(e++,!ZK.has(n)&&(typeof t[n]=="object"&&(0,qK.eachItem)(t[n],i=>e+=YO(i)),e===1/0))return 1/0}return e}function XO(t,e="",n){n!==!1&&(e=Fs(e));let i=t.parse(e);return QO(t,i)}on.getFullPath=XO;function QO(t,e){return t.serialize(e).split("#")[0]+"#"}on._getFullPath=QO;var YK=/#\/?$/;function Fs(t){return t?t.replace(YK,""):""}on.normalizeId=Fs;function XK(t,e,n){return n=Fs(n),t.resolve(e,n)}on.resolveUrl=XK;var QK=/^[a-z_][-a-z0-9._]*$/i;function eF(t,e){if(typeof t=="boolean")return{};let{schemaId:n,uriResolver:i}=this.opts,r=Fs(t[n]||e),o={"":r},a=XO(i,r,!1),c={},l=new Set;return GK(t,{allKeys:!0},(m,f,p,g)=>{if(g===void 0)return;let b=a+f,_=o[g];typeof m[n]=="string"&&(_=T.call(this,m[n])),$.call(this,m.$anchor),$.call(this,m.$dynamicAnchor),o[f]=_;function T(R){let D=this.opts.uriResolver.resolve;if(R=Fs(_?D(_,R):R),l.has(R))throw d(R);l.add(R);let j=this.refs[R];return typeof j=="string"&&(j=this.refs[j]),typeof j=="object"?u(m,j.schema,R):R!==Fs(b)&&(R[0]==="#"?(u(m,c[R],R),c[R]=m):this.refs[R]=b),R}function $(R){if(typeof R=="string"){if(!QK.test(R))throw new Error(`invalid anchor "${R}"`);T.call(this,`#${R}`)}}}),c;function u(m,f,p){if(f!==void 0&&!HK(m,f))throw d(p)}function d(m){return new Error(`reference "${m}" resolves to more than one schema`)}}on.getSchemaRefs=eF});var yl=M(ki=>{"use strict";Object.defineProperty(ki,"__esModule",{value:!0});ki.getData=ki.KeywordCxt=ki.validateFunctionCode=void 0;var iA=NO(),eA=hl(),Vy=Py(),Xp=hl(),tF=jO(),vl=qO(),Fy=GO(),X=pe(),se=Pr(),nF=bl(),zr=$e(),_l=gl();function rF(t){if(aA(t)&&(cA(t),sA(t))){sF(t);return}oA(t,()=>(0,iA.topBoolOrEmptySchema)(t))}ki.validateFunctionCode=rF;function oA({gen:t,validateName:e,schema:n,schemaEnv:i,opts:r},o){r.code.es5?t.func(e,(0,X._)`${se.default.data}, ${se.default.valCxt}`,i.$async,()=>{t.code((0,X._)`"use strict"; ${tA(n,r)}`),oF(t,r),t.code(o)}):t.func(e,(0,X._)`${se.default.data}, ${iF(r)}`,i.$async,()=>t.code(tA(n,r)).code(o))}function iF(t){return(0,X._)`{${se.default.instancePath}="", ${se.default.parentData}, ${se.default.parentDataProperty}, ${se.default.rootData}=${se.default.data}${t.dynamicRef?(0,X._)`, ${se.default.dynamicAnchors}={}`:X.nil}}={}`}function oF(t,e){t.if(se.default.valCxt,()=>{t.var(se.default.instancePath,(0,X._)`${se.default.valCxt}.${se.default.instancePath}`),t.var(se.default.parentData,(0,X._)`${se.default.valCxt}.${se.default.parentData}`),t.var(se.default.parentDataProperty,(0,X._)`${se.default.valCxt}.${se.default.parentDataProperty}`),t.var(se.default.rootData,(0,X._)`${se.default.valCxt}.${se.default.rootData}`),e.dynamicRef&&t.var(se.default.dynamicAnchors,(0,X._)`${se.default.valCxt}.${se.default.dynamicAnchors}`)},()=>{t.var(se.default.instancePath,(0,X._)`""`),t.var(se.default.parentData,(0,X._)`undefined`),t.var(se.default.parentDataProperty,(0,X._)`undefined`),t.var(se.default.rootData,se.default.data),e.dynamicRef&&t.var(se.default.dynamicAnchors,(0,X._)`{}`)})}function sF(t){let{schema:e,opts:n,gen:i}=t;oA(t,()=>{n.$comment&&e.$comment&&uA(t),dF(t),i.let(se.default.vErrors,null),i.let(se.default.errors,0),n.unevaluated&&aF(t),lA(t),fF(t)})}function aF(t){let{gen:e,validateName:n}=t;t.evaluated=e.const("evaluated",(0,X._)`${n}.evaluated`),e.if((0,X._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,X._)`${t.evaluated}.props`,(0,X._)`undefined`)),e.if((0,X._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,X._)`${t.evaluated}.items`,(0,X._)`undefined`))}function tA(t,e){let n=typeof t=="object"&&t[e.schemaId];return n&&(e.code.source||e.code.process)?(0,X._)`/*# sourceURL=${n} */`:X.nil}function cF(t,e){if(aA(t)&&(cA(t),sA(t))){lF(t,e);return}(0,iA.boolOrEmptySchema)(t,e)}function sA({schema:t,self:e}){if(typeof t=="boolean")return!t;for(let n in t)if(e.RULES.all[n])return!0;return!1}function aA(t){return typeof t.schema!="boolean"}function lF(t,e){let{schema:n,gen:i,opts:r}=t;r.$comment&&n.$comment&&uA(t),mF(t),pF(t);let o=i.const("_errs",se.default.errors);lA(t,o),i.var(e,(0,X._)`${o} === ${se.default.errors}`)}function cA(t){(0,zr.checkUnknownRules)(t),uF(t)}function lA(t,e){if(t.opts.jtd)return nA(t,[],!1,e);let n=(0,eA.getSchemaTypes)(t.schema),i=(0,eA.coerceAndCheckDataType)(t,n);nA(t,n,!i,e)}function uF(t){let{schema:e,errSchemaPath:n,opts:i,self:r}=t;e.$ref&&i.ignoreKeywordsWithRef&&(0,zr.schemaHasRulesButRef)(e,r.RULES)&&r.logger.warn(`$ref: keywords ignored in schema at path "${n}"`)}function dF(t){let{schema:e,opts:n}=t;e.default!==void 0&&n.useDefaults&&n.strictSchema&&(0,zr.checkStrictMode)(t,"default is ignored in the schema root")}function mF(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,nF.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function pF(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function uA({gen:t,schemaEnv:e,schema:n,errSchemaPath:i,opts:r}){let o=n.$comment;if(r.$comment===!0)t.code((0,X._)`${se.default.self}.logger.log(${o})`);else if(typeof r.$comment=="function"){let a=(0,X.str)`${i}/$comment`,c=t.scopeValue("root",{ref:e.root});t.code((0,X._)`${se.default.self}.opts.$comment(${o}, ${a}, ${c}.schema)`)}}function fF(t){let{gen:e,schemaEnv:n,validateName:i,ValidationError:r,opts:o}=t;n.$async?e.if((0,X._)`${se.default.errors} === 0`,()=>e.return(se.default.data),()=>e.throw((0,X._)`new ${r}(${se.default.vErrors})`)):(e.assign((0,X._)`${i}.errors`,se.default.vErrors),o.unevaluated&&gF(t),e.return((0,X._)`${se.default.errors} === 0`))}function gF({gen:t,evaluated:e,props:n,items:i}){n instanceof X.Name&&t.assign((0,X._)`${e}.props`,n),i instanceof X.Name&&t.assign((0,X._)`${e}.items`,i)}function nA(t,e,n,i){let{gen:r,schema:o,data:a,allErrors:c,opts:l,self:u}=t,{RULES:d}=u;if(o.$ref&&(l.ignoreKeywordsWithRef||!(0,zr.schemaHasRulesButRef)(o,d))){r.block(()=>mA(t,"$ref",d.all.$ref.definition));return}l.jtd||hF(t,e),r.block(()=>{for(let f of d.rules)m(f);m(d.post)});function m(f){(0,Vy.shouldUseGroup)(o,f)&&(f.type?(r.if((0,Xp.checkDataType)(f.type,a,l.strictNumbers)),rA(t,f),e.length===1&&e[0]===f.type&&n&&(r.else(),(0,Xp.reportTypeError)(t)),r.endIf()):rA(t,f),c||r.if((0,X._)`${se.default.errors} === ${i||0}`))}}function rA(t,e){let{gen:n,schema:i,opts:{useDefaults:r}}=t;r&&(0,tF.assignDefaults)(t,e.type),n.block(()=>{for(let o of e.rules)(0,Vy.shouldUseRule)(i,o)&&mA(t,o.keyword,o.definition,e.type)})}function hF(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(bF(t,e),t.opts.allowUnionTypes||_F(t,e),vF(t,t.dataTypes))}function bF(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(n=>{dA(t.dataTypes,n)||qy(t,`type "${n}" not allowed by context "${t.dataTypes.join(",")}"`)}),kF(t,e)}}function _F(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&qy(t,"use allowUnionTypes to allow union type keyword")}function vF(t,e){let n=t.self.RULES.all;for(let i in n){let r=n[i];if(typeof r=="object"&&(0,Vy.shouldUseRule)(t.schema,r)){let{type:o}=r.definition;o.length&&!o.some(a=>yF(e,a))&&qy(t,`missing type "${o.join(",")}" for keyword "${i}"`)}}}function yF(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function dA(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function kF(t,e){let n=[];for(let i of t.dataTypes)dA(e,i)?n.push(i):e.includes("integer")&&i==="number"&&n.push("integer");t.dataTypes=n}function qy(t,e){let n=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${n}" (strictTypes)`,(0,zr.checkStrictMode)(t,e,t.opts.strictTypes)}var Qp=class{constructor(e,n,i){if((0,vl.validateKeywordUsage)(e,n,i),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=i,this.data=e.data,this.schema=e.schema[i],this.$data=n.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,zr.schemaRefOrVal)(e,this.schema,i,this.$data),this.schemaType=n.schemaType,this.parentSchema=e.schema,this.params={},this.it=e,this.def=n,this.$data)this.schemaCode=e.gen.const("vSchema",pA(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,vl.validSchemaType)(this.schema,n.schemaType,n.allowUndefined))throw new Error(`${i} value must be ${JSON.stringify(n.schemaType)}`);("code"in n?n.trackErrors:n.errors!==!1)&&(this.errsCount=e.gen.const("_errs",se.default.errors))}result(e,n,i){this.failResult((0,X.not)(e),n,i)}failResult(e,n,i){this.gen.if(e),i?i():this.error(),n?(this.gen.else(),n(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(e,n){this.failResult((0,X.not)(e),void 0,n)}fail(e){if(e===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(e),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:n}=this;this.fail((0,X._)`${n} !== undefined && (${(0,X.or)(this.invalid$data(),e)})`)}error(e,n,i){if(n){this.setParams(n),this._error(e,i),this.setParams({});return}this._error(e,i)}_error(e,n){(e?_l.reportExtraError:_l.reportError)(this,this.def.error,n)}$dataError(){(0,_l.reportError)(this,this.def.$dataError||_l.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,_l.resetErrorsCount)(this.gen,this.errsCount)}ok(e){this.allErrors||this.gen.if(e)}setParams(e,n){n?Object.assign(this.params,e):this.params=e}block$data(e,n,i=X.nil){this.gen.block(()=>{this.check$data(e,i),n()})}check$data(e=X.nil,n=X.nil){if(!this.$data)return;let{gen:i,schemaCode:r,schemaType:o,def:a}=this;i.if((0,X.or)((0,X._)`${r} === undefined`,n)),e!==X.nil&&i.assign(e,!0),(o.length||a.validateSchema)&&(i.elseIf(this.invalid$data()),this.$dataError(),e!==X.nil&&i.assign(e,!1)),i.else()}invalid$data(){let{gen:e,schemaCode:n,schemaType:i,def:r,it:o}=this;return(0,X.or)(a(),c());function a(){if(i.length){if(!(n instanceof X.Name))throw new Error("ajv implementation error");let l=Array.isArray(i)?i:[i];return(0,X._)`${(0,Xp.checkDataTypes)(l,n,o.opts.strictNumbers,Xp.DataType.Wrong)}`}return X.nil}function c(){if(r.validateSchema){let l=e.scopeValue("validate$data",{ref:r.validateSchema});return(0,X._)`!${l}(${n})`}return X.nil}}subschema(e,n){let i=(0,Fy.getSubschema)(this.it,e);(0,Fy.extendSubschemaData)(i,this.it,e),(0,Fy.extendSubschemaMode)(i,e);let r={...this.it,...i,items:void 0,props:void 0};return cF(r,n),r}mergeEvaluated(e,n){let{it:i,gen:r}=this;i.opts.unevaluated&&(i.props!==!0&&e.props!==void 0&&(i.props=zr.mergeEvaluated.props(r,e.props,i.props,n)),i.items!==!0&&e.items!==void 0&&(i.items=zr.mergeEvaluated.items(r,e.items,i.items,n)))}mergeValidEvaluated(e,n){let{it:i,gen:r}=this;if(i.opts.unevaluated&&(i.props!==!0||i.items!==!0))return r.if(n,()=>this.mergeEvaluated(e,X.Name)),!0}};ki.KeywordCxt=Qp;function mA(t,e,n,i){let r=new Qp(t,n,e);"code"in n?n.code(r,i):r.$data&&n.validate?(0,vl.funcKeywordCode)(r,n):"macro"in n?(0,vl.macroKeywordCode)(r,n):(n.compile||n.validate)&&(0,vl.funcKeywordCode)(r,n)}var wF=/^\/(?:[^~]|~0|~1)*$/,SF=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function pA(t,{dataLevel:e,dataNames:n,dataPathArr:i}){let r,o;if(t==="")return se.default.rootData;if(t[0]==="/"){if(!wF.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);r=t,o=se.default.rootData}else{let u=SF.exec(t);if(!u)throw new Error(`Invalid JSON-pointer: ${t}`);let d=+u[1];if(r=u[2],r==="#"){if(d>=e)throw new Error(l("property/index",d));return i[e-d]}if(d>e)throw new Error(l("data",d));if(o=n[e-d],!r)return o}let a=o,c=r.split("/");for(let u of c)u&&(o=(0,X._)`${o}${(0,X.getProperty)((0,zr.unescapeJsonPointer)(u))}`,a=(0,X._)`${a} && ${o}`);return a;function l(u,d){return`Cannot access ${u} ${d} levels up, current level is ${e}`}}ki.getData=pA});var ef=M(Gy=>{"use strict";Object.defineProperty(Gy,"__esModule",{value:!0});var Hy=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};Gy.default=Hy});var kl=M(Jy=>{"use strict";Object.defineProperty(Jy,"__esModule",{value:!0});var Zy=bl(),Wy=class extends Error{constructor(e,n,i,r){super(r||`can't resolve reference ${i} from id ${n}`),this.missingRef=(0,Zy.resolveUrl)(e,n,i),this.missingSchema=(0,Zy.normalizeId)((0,Zy.getFullPath)(e,this.missingRef))}};Jy.default=Wy});var nf=M(xn=>{"use strict";Object.defineProperty(xn,"__esModule",{value:!0});xn.resolveSchema=xn.getCompilingSchema=xn.resolveRef=xn.compileSchema=xn.SchemaEnv=void 0;var qn=pe(),IF=ef(),uo=Pr(),Hn=bl(),fA=$e(),EF=yl(),Vs=class{constructor(e){var n;this.refs={},this.dynamicAnchors={};let i;typeof e.schema=="object"&&(i=e.schema),this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=(n=e.baseId)!==null&&n!==void 0?n:(0,Hn.normalizeId)(i?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=i?.$async,this.refs={}}};xn.SchemaEnv=Vs;function Xy(t){let e=gA.call(this,t);if(e)return e;let n=(0,Hn.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:i,lines:r}=this.opts.code,{ownProperties:o}=this.opts,a=new qn.CodeGen(this.scope,{es5:i,lines:r,ownProperties:o}),c;t.$async&&(c=a.scopeValue("Error",{ref:IF.default,code:(0,qn._)`require("ajv/dist/runtime/validation_error").default`}));let l=a.scopeName("validate");t.validateName=l;let u={gen:a,allErrors:this.opts.allErrors,data:uo.default.data,parentData:uo.default.parentData,parentDataProperty:uo.default.parentDataProperty,dataNames:[uo.default.data],dataPathArr:[qn.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:a.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,qn.stringify)(t.schema)}:{ref:t.schema}),validateName:l,ValidationError:c,schema:t.schema,schemaEnv:t,rootId:n,baseId:t.baseId||n,schemaPath:qn.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,qn._)`""`,opts:this.opts,self:this},d;try{this._compilations.add(t),(0,EF.validateFunctionCode)(u),a.optimize(this.opts.code.optimize);let m=a.toString();d=`${a.scopeRefs(uo.default.scope)}return ${m}`,this.opts.code.process&&(d=this.opts.code.process(d,t));let p=new Function(`${uo.default.self}`,`${uo.default.scope}`,d)(this,this.scope.get());if(this.scope.value(l,{ref:p}),p.errors=null,p.schema=t.schema,p.schemaEnv=t,t.$async&&(p.$async=!0),this.opts.code.source===!0&&(p.source={validateName:l,validateCode:m,scopeValues:a._values}),this.opts.unevaluated){let{props:g,items:b}=u;p.evaluated={props:g instanceof qn.Name?void 0:g,items:b instanceof qn.Name?void 0:b,dynamicProps:g instanceof qn.Name,dynamicItems:b instanceof qn.Name},p.source&&(p.source.evaluated=(0,qn.stringify)(p.evaluated))}return t.validate=p,t}catch(m){throw delete t.validate,delete t.validateName,d&&this.logger.error("Error compiling schema, function code:",d),m}finally{this._compilations.delete(t)}}xn.compileSchema=Xy;function TF(t,e,n){var i;n=(0,Hn.resolveUrl)(this.opts.uriResolver,e,n);let r=t.refs[n];if(r)return r;let o=OF.call(this,t,n);if(o===void 0){let a=(i=t.localRefs)===null||i===void 0?void 0:i[n],{schemaId:c}=this.opts;a&&(o=new Vs({schema:a,schemaId:c,root:t,baseId:e}))}if(o!==void 0)return t.refs[n]=RF.call(this,o)}xn.resolveRef=TF;function RF(t){return(0,Hn.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:Xy.call(this,t)}function gA(t){for(let e of this._compilations)if(xF(e,t))return e}xn.getCompilingSchema=gA;function xF(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function OF(t,e){let n;for(;typeof(n=this.refs[e])=="string";)e=n;return n||this.schemas[e]||tf.call(this,t,e)}function tf(t,e){let n=this.opts.uriResolver.parse(e),i=(0,Hn._getFullPath)(this.opts.uriResolver,n),r=(0,Hn.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&i===r)return Yy.call(this,n,t);let o=(0,Hn.normalizeId)(i),a=this.refs[o]||this.schemas[o];if(typeof a=="string"){let c=tf.call(this,t,a);return typeof c?.schema!="object"?void 0:Yy.call(this,n,c)}if(typeof a?.schema=="object"){if(a.validate||Xy.call(this,a),o===(0,Hn.normalizeId)(e)){let{schema:c}=a,{schemaId:l}=this.opts,u=c[l];return u&&(r=(0,Hn.resolveUrl)(this.opts.uriResolver,r,u)),new Vs({schema:c,schemaId:l,root:t,baseId:r})}return Yy.call(this,n,a)}}xn.resolveSchema=tf;var AF=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function Yy(t,{baseId:e,schema:n,root:i}){var r;if(((r=t.fragment)===null||r===void 0?void 0:r[0])!=="/")return;for(let c of t.fragment.slice(1).split("/")){if(typeof n=="boolean")return;let l=n[(0,fA.unescapeFragment)(c)];if(l===void 0)return;n=l;let u=typeof n=="object"&&n[this.opts.schemaId];!AF.has(c)&&u&&(e=(0,Hn.resolveUrl)(this.opts.uriResolver,e,u))}let o;if(typeof n!="boolean"&&n.$ref&&!(0,fA.schemaHasRulesButRef)(n,this.RULES)){let c=(0,Hn.resolveUrl)(this.opts.uriResolver,e,n.$ref);o=tf.call(this,i,c)}let{schemaId:a}=this.opts;if(o=o||new Vs({schema:n,schemaId:a,root:i,baseId:e}),o.schema!==o.root.schema)return o}});var hA=M((Mre,$F)=>{$F.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var ik=M((jre,SA)=>{"use strict";var CF=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),ek=RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u),NF=RegExp.prototype.test.bind(/^\d*$/u),mo=RegExp.prototype.test.bind(/^[\da-f]{2}$/iu),tk=RegExp.prototype.test.bind(/^[\da-z\-._~]$/iu),_A=RegExp.prototype.test.bind(/^[A-Za-z0-9\-._~!$&'()*+,;=:@/]$/u),nk=RegExp.prototype.test.bind(/^[A-Za-z0-9\-._~!$&'()*+,;=:@/?]$/u),PF=RegExp.prototype.test.bind(/^[A-Za-z0-9\-._~!$&'()*+,;=:]$/u),sn=new Array(256);{let t="0123456789ABCDEF";for(let e=0;e<256;e++)sn[e]="%"+t[e>>4]+t[e&15]}function zt(t){return t<2048?sn[192|t>>6]+sn[128|t&63]:t<65536?sn[224|t>>12]+sn[128|t>>6&63]+sn[128|t&63]:sn[240|t>>18]+sn[128|t>>12&63]+sn[128|t>>6&63]+sn[128|t&63]}function zF(t){let e="",n=0,i=0;for(i=0;i<t.length;i++)if(n=t[i].charCodeAt(0),n!==48){if(!(n>=48&&n<=57||n>=65&&n<=70||n>=97&&n<=102))return"";e+=t[i];break}for(i+=1;i<t.length;i++){if(n=t[i].charCodeAt(0),!(n>=48&&n<=57||n>=65&&n<=70||n>=97&&n<=102))return"";e+=t[i]}return e}var DF=RegExp.prototype.test.bind(/^[\dA-Fa-f]{1,4}$/),LF=RegExp.prototype.test.bind(/^[vV][\dA-Fa-f]+\.[A-Za-z\d\-._~!$&'()*+,;=:]+$/),UF=RegExp.prototype.test.bind(/^[A-Za-z\d\-._~]$/),MF=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function jF(t){if(t.length===0)return!1;for(let e=0;e<t.length;e++)if(!UF(t[e])){if(t[e]==="%"&&e+2<t.length&&mo(t.slice(e+1,e+3))){e+=2;continue}return!1}return!0}function bA(t){let e=-1,n=0,i=-1,r=0;for(let c=0;c<t.length;c++)t[c]==="0"?(i===-1&&(i=c),r++,r>n&&(n=r,e=i)):(i=-1,r=0);if(n<2)return t.join(":");let o=t.slice(0,e).join(":"),a=t.slice(e+n).join(":");return o+"::"+a}function BF(t){let e=t.indexOf("::");if(e!==-1&&t.indexOf("::",e+1)!==-1)return;let n=e===-1?t.split(":"):t.slice(0,e).split(":"),i=e===-1?[]:t.slice(e+2).split(":");e!==-1&&(n.length===1&&n[0]===""&&(n.length=0),i.length===1&&i[0]===""&&(i.length=0));let r=n.concat(i),o=0;for(let c=0;c<r.length;c++){let l=r[c];if(l==="")return;if(l.indexOf(".")!==-1){if(c!==r.length-1||e!==-1&&i.length===0||!ek(l))return;o+=2;continue}if(!DF(l))return;r[c]=parseInt(l,16).toString(16),o++}if(e===-1)return o!==8?void 0:bA(r);if(o>=8)return;let a=r.slice(0,n.length);for(let c=o;c<8;c++)a.push("0");for(let c=n.length;c<r.length;c++)a.push(r[c]);return bA(a)}function Qy(t){let e=t[0]==="["&&t[t.length-1]==="]";if((t[0]==="["||t[t.length-1]==="]")&&!e)return{host:t,isIPV6:!1,error:!0};let i=e?t.slice(1,-1):t;if(e&&LF(i))return i=i.toLowerCase(),{host:`[${i}]`,escapedHost:i,isIPV6:!1,isIPVFuture:!0};if(KF(i,":")<2)return{host:t,isIPV6:!1,error:e};let r="",o=i.indexOf("%");if(o!==-1){let c=i.slice(o,o+3).toLowerCase()==="%25"?3:1;if(r=i.slice(o+c),!jF(r))return{host:t,isIPV6:!1,error:!0};i=i.slice(0,o)}let a=BF(i);return a===void 0?{host:t,isIPV6:!1,error:!0}:{host:a+(r?"%"+r:""),escapedHost:a+(r?"%25"+r:""),isIPV6:!0}}function KF(t,e){let n=0;for(let i=0;i<t.length;i++)t[i]===e&&n++;return n}function FF(t){let e=t,n=[],i=-1,r=0;for(;r=e.length;){if(r===1){if(e===".")break;if(e==="/"){n.push("/");break}else{n.push(e);break}}else if(r===2){if(e[0]==="."){if(e[1]===".")break;if(e[1]==="/"){e=e.slice(2);continue}}else if(e[0]==="/"&&(e[1]==="."||e[1]==="/")){n.push("/");break}}else if(r===3&&e==="/.."){n.length!==0&&n.pop(),n.push("/");break}if(e[0]==="."){if(e[1]==="."){if(e[2]==="/"){e=e.slice(3);continue}}else if(e[1]==="/"){e=e.slice(2);continue}}else if(e[0]==="/"&&e[1]==="."){if(e[2]==="/"){e=e.slice(2);continue}else if(e[2]==="."&&e[3]==="/"){e=e.slice(3),n.length!==0&&n.pop();continue}}if((i=e.indexOf("/",1))===-1){n.push(e);break}else n.push(e.slice(0,i)),e=e.slice(i)}return n.join("")}var VF={"@":"%40","/":"%2F","?":"%3F","#":"%23",":":"%3A"},qF=/[@/?#:]/g,HF=/[@/?#]/g;function vA(t,e){let n=e?HF:qF;return n.lastIndex=0,t.replace(n,i=>VF[i])}function yA(t,e=!1){if(t.indexOf("%")===-1)return t;let n="";for(let i=0;i<t.length;i++){if(t[i]==="%"&&i+2<t.length){let r=t.slice(i+1,i+3);if(mo(r)){let o=r.toUpperCase(),a=String.fromCharCode(parseInt(o,16));e&&tk(a)?n+=a:n+="%"+o,i+=2;continue}}n+=t[i]}return n}function GF(t){let e="";for(let n=0;n<t.length;n++){let i=t[n];if(i==="%"&&n+2<t.length){let r=t.slice(n+1,n+3);if(mo(r)){let o=r.toUpperCase(),a=String.fromCharCode(parseInt(o,16));a!=="."&&tk(a)?e+=a:e+="%"+o,n+=2;continue}}if(_A(i))e+=i;else{let r=t.charCodeAt(n);if(r<128)e+=wA(r)?i:sn[r];else if(r<55296||r>57343)e+=zt(r);else if(r<=56319&&n+1<t.length){let o=t.charCodeAt(n+1);o>=56320&&o<=57343?(e+=zt(65536+(r-55296<<10)+(o-56320)),n++):e+=zt(65533)}else e+=zt(65533)}}return e}function ZF(t,e=!1){let n="",i=e&&t[0]!=="/";for(let r=0;r<t.length;r++){let o=t[r];if(o==="%"&&r+2<t.length){let a=t.slice(r+1,r+3);if(mo(a)){n+="%"+a.toUpperCase(),r+=2;continue}}if(o==="/"&&(i=!1),_A(o)&&(o!==":"||!i))n+=o;else{let a=t.charCodeAt(r);if(a<128)n+=sn[a];else if(a<55296||a>57343)n+=zt(a);else if(a<=56319&&r+1<t.length){let c=t.charCodeAt(r+1);c>=56320&&c<=57343?(n+=zt(65536+(a-55296<<10)+(c-56320)),r++):n+=zt(65533)}else n+=zt(65533)}}return n}function rk(t,e){let n="";for(let i=0;i<t.length;i++){let r=t[i];if(r==="%"&&i+2<t.length){let o=t.slice(i+1,i+3);if(mo(o)){n+="%"+o.toUpperCase(),i+=2;continue}}if(e(r))n+=r;else{let o=t.charCodeAt(i);if(o<128)n+=sn[o];else if(o<55296||o>57343)n+=zt(o);else if(o<=56319&&i+1<t.length){let a=t.charCodeAt(i+1);a>=56320&&a<=57343?(n+=zt(65536+(o-55296<<10)+(a-56320)),i++):n+=zt(65533)}else n+=zt(65533)}}return n}function kA(t){return rk(t,PF)}function WF(t){return rk(t,nk)}function JF(t){return rk(t,nk)}function wA(t){return t>=48&&t<=57||t>=65&&t<=90||t>=97&&t<=122||t===42||t===43||t===45||t===46||t===47||t===64||t===95}function YF(t){let e="";for(let n=0;n<t.length;n++){let i=t[n];if(i==="%"&&n+2<t.length){let r=t.slice(n+1,n+3);if(mo(r)){let o=r.toUpperCase(),a=String.fromCharCode(parseInt(o,16));tk(a)?e+=a:e+="%"+o,n+=2;continue}}if(nk(i))e+=i;else{let r=t.charCodeAt(n);if(r<128)e+=wA(r)?i:sn[r];else if(r<55296||r>57343)e+=zt(r);else if(r<=56319&&n+1<t.length){let o=t.charCodeAt(n+1);o>=56320&&o<=57343?(e+=zt(65536+(r-55296<<10)+(o-56320)),n++):e+=zt(65533)}else e+=zt(65533)}}return e}function XF(t){let e="";for(let n=0;n<t.length;n++){if(t[n]==="%"&&n+2<t.length){let i=t.slice(n+1,n+3);if(mo(i)){e+="%"+i.toUpperCase(),n+=2;continue}}e+=escape(t[n])}return e}function QF(t){let e=[];if(t.userinfo!==void 0&&(e.push(kA(t.userinfo)),e.push("@")),t.host!==void 0){let n=t.host;if(!ek(n)){let i=Qy(n);i.isIPV6!==!0&&i.isIPVFuture!==!0&&(n=yA(n,!0),i=Qy(n)),i.isIPV6===!0||i.isIPVFuture===!0?n=`[${i.escapedHost}]`:n=vA(n,!1)}e.push(n)}if(typeof t.port=="number"||typeof t.port=="string"){let n=String(t.port);if(!NF(n))throw new TypeError("URI port is malformed.");e.push(":"),e.push(n)}return e.length?e.join(""):void 0}SA.exports={nonSimpleDomain:MF,recomposeAuthority:QF,reescapeHostDelimiters:vA,normalizePercentEncoding:yA,normalizePathEncoding:GF,serializePathEncoding:ZF,normalizeQueryFragmentEncoding:YF,encodeUserinfo:kA,encodeQuery:WF,encodeFragment:JF,escapePreservingEscapes:XF,removeDotSegments:FF,isIPv4:ek,isUUID:CF,normalizeIPv6:Qy,stringArrayToHexStripped:zF}});var xA=M((Bre,RA)=>{"use strict";var{isUUID:eV}=ik(),tV=/^([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-./:;=@]|%[\da-f]{2})+)$/iu,nV=["http","https","ws","wss","urn","urn:uuid"];function rV(t){return nV.indexOf(t)!==-1}function ok(t){return t.secure===!0?!0:t.secure===!1?!1:t.scheme?t.scheme.length===3&&(t.scheme[0]==="w"||t.scheme[0]==="W")&&(t.scheme[1]==="s"||t.scheme[1]==="S")&&(t.scheme[2]==="s"||t.scheme[2]==="S"):!1}function IA(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function EA(t){let e=String(t.scheme).toLowerCase()==="https";return(t.port===(e?443:80)||t.port==="")&&(t.port=void 0),t.path||(t.path="/"),t}function iV(t){return t.secure=ok(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function oV(t){if((t.port===(ok(t)?443:80)||t.port==="")&&(t.port=void 0),typeof t.secure=="boolean"&&(t.scheme=t.secure?"wss":"ws",t.secure=void 0),t.resourceName){let e=t.resourceName.indexOf("?"),n=e===-1?t.resourceName:t.resourceName.slice(0,e);t.path=n&&n!=="/"?n:void 0,t.query=e===-1?void 0:t.resourceName.slice(e+1),t.resourceName=void 0}return t.fragment=void 0,t}function sV(t,e){if(!t.path)return t.error="URN can not be parsed",t;let n=t.path.match(tV);if(n&&n[0]===t.path){let i=e.scheme||t.scheme||"urn";t.nid=n[1].toLowerCase(),t.nss=n[2];let r=`${i}:${e.nid||t.nid}`,o=sk(r);t.path=void 0,o&&(t=o.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function aV(t,e){if(t.nid===void 0)throw new Error("URN without nid cannot be serialized");let n=e.scheme||t.scheme||"urn",i=t.nid.toLowerCase(),r=`${n}:${e.nid||i}`,o=sk(r);o&&(t=o.serialize(t,e));let a=t,c=t.nss;return a.path=`${i||e.nid}:${c}`,e.skipEscape=!0,a}function cV(t,e){let n=t;return n.uuid=n.nss,n.nss=void 0,!e.tolerant&&(!n.uuid||!eV(n.uuid))&&(n.error=n.error||"UUID is not valid."),n}function lV(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var TA={scheme:"http",domainHost:!0,parse:IA,serialize:EA},uV={scheme:"https",domainHost:TA.domainHost,parse:IA,serialize:EA},rf={scheme:"ws",domainHost:!0,parse:iV,serialize:oV},dV={scheme:"wss",domainHost:rf.domainHost,parse:rf.parse,serialize:rf.serialize},mV={scheme:"urn",parse:sV,serialize:aV,skipNormalize:!0},pV={scheme:"urn:uuid",parse:cV,serialize:lV,skipNormalize:!0},of={http:TA,https:uV,ws:rf,wss:dV,urn:mV,"urn:uuid":pV};Object.setPrototypeOf(of,null);function sk(t){return t&&(of[t]||of[t.toLowerCase()])||void 0}RA.exports={wsIsSecure:ok,SCHEMES:of,isValidSchemeName:rV,getSchemeHandler:sk}});var KA=M((Kre,cf)=>{"use strict";var{normalizeIPv6:NA,removeDotSegments:Sl,recomposeAuthority:fV,normalizePercentEncoding:PA,normalizePathEncoding:gV,serializePathEncoding:OA,normalizeQueryFragmentEncoding:AA,encodeQuery:hV,encodeFragment:bV,reescapeHostDelimiters:_V,isIPv4:zA,nonSimpleDomain:vV}=ik(),{SCHEMES:DA,getSchemeHandler:ak}=xA(),LA=/^[A-Za-z][A-Za-z0-9+.-]*$/u,UA="URI scheme is malformed.";function $A(t){let e=unescape(String(t));if(!LA.test(e))throw new TypeError(UA);return e}function yV(t,e){return typeof t=="string"?t=xV(t,e):typeof t=="object"&&(t=af(po(t,e),e)),t}function kV(t,e,n){let i=n?Object.assign({scheme:"null"},n):{scheme:"null"},{parsed:r,malformedAuthorityOrPort:o,malformedPercentEncoding:a,malformedSchemeSpecific:c,malformedHost:l,malformedScheme:u}=sf(t,i),{parsed:d,malformedAuthorityOrPort:m,malformedPercentEncoding:f,malformedSchemeSpecific:p,malformedHost:g,malformedScheme:b}=sf(e,i);if(o||m||a||f||c||p||l||g||u||b)throw new Error(r.error||d.error||"URI is malformed.");let _=MA(r,d,i,!0),T=ak(n&&n.scheme||_.scheme),$=_.host,R=$!==void 0&&$!==""&&(zA($)||NA($).isIPV6);jA(_,n||{},T,R);let D=$&&$.indexOf("%")!==-1&&!new RegExp("\\P{ASCII}","u").test($);if(_.error&&!D)throw new Error(_.error);return i.skipEscape=!0,po(_,i)}function MA(t,e,n,i){let r={};return i||(t=af(po(t,n),n),e=af(po(e,n),n)),n=n||{},!n.tolerant&&e.scheme?(r.scheme=e.scheme,r.userinfo=e.userinfo,r.host=e.host,r.port=e.port,r.path=Sl(e.path||""),r.query=e.query):(e.userinfo!==void 0||e.host!==void 0||e.port!==void 0?(r.userinfo=e.userinfo,r.host=e.host,r.port=e.port,r.path=Sl(e.path||""),r.query=e.query):(e.path?(e.path[0]==="/"?r.path=Sl(e.path):((t.userinfo!==void 0||t.host!==void 0||t.port!==void 0)&&!t.path?r.path="/"+e.path:t.path?r.path=t.path.slice(0,t.path.lastIndexOf("/")+1)+e.path:r.path=e.path,r.path=Sl(r.path)),r.query=e.query):(r.path=t.path,e.query!==void 0?r.query=e.query:r.query=t.query),r.userinfo=t.userinfo,r.host=t.host,r.port=t.port),r.scheme=t.scheme),r.fragment=e.fragment,r}function wV(t,e,n){let i=CA(t,n),r=CA(e,n);return i!==void 0&&r!==void 0&&i===r}function po(t,e){let n={host:t.host,scheme:t.scheme,userinfo:t.userinfo,port:t.port,path:t.path,query:t.query,nid:t.nid,nss:t.nss,uuid:t.uuid,fragment:t.fragment,reference:t.reference,resourceName:t.resourceName,secure:t.secure,error:""},i=Object.assign({},e),r=[];n.scheme&&(n.scheme=$A(n.scheme));let o=ak(i.scheme||n.scheme);o&&o.serialize&&o.serialize(n,i);let a=n.userinfo!==void 0||n.host!==void 0||n.port!==void 0,c=!i.skipEscape&&n.scheme===void 0&&!a;n.path!==void 0&&(i.skipEscape?n.path=PA(n.path):n.path=OA(n.path,c)),i.reference!=="suffix"&&n.scheme&&(n.scheme=$A(n.scheme),r.push(n.scheme,":"));let l=fV(n);if(l!==void 0&&(i.reference!=="suffix"&&r.push("//"),r.push(l),n.path&&n.path[0]!=="/"&&r.push("/")),n.path!==void 0){let u=n.path;!i.absolutePath&&(!o||!o.absolutePath)&&(u=Sl(u)),c&&(u=OA(u,!0)),l===void 0&&u[0]==="/"&&u[1]==="/"&&(u="/%2F"+u.slice(2)),r.push(u)}return n.query!==void 0&&r.push("?",hV(n.query)),n.fragment!==void 0&&r.push("#",bV(n.fragment)),r.join("")}var SV=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u,IV=/^(?:[^#/:?]+:)?\/\/([^/?#]*)/,EV=/^(?:[^#/:?]+:)?([/\\\t\n\r]*)/;function TV(t,e){if(e[2]!==void 0&&t.path&&t.path[0]!=="/")return'URI path must start with "/" when authority is present.';if(typeof t.port=="number"&&(t.port<0||t.port>65535))return"URI port is malformed."}function wl(t){if(t===void 0)return!1;let e=t.indexOf("%");for(;e!==-1;){if(e+2>=t.length||!/^[\da-f]{2}$/iu.test(t.slice(e+1,e+3)))return!0;e=t.indexOf("%",e+3)}return!1}function ck(t){return t[0]==="["&&t[t.length-1]==="]"}function RV(t){let e=t[4];return wl(t[3])||e!==void 0&&!ck(e)&&wl(e)||wl(t[6])||wl(t[7])||wl(t[8])}function jA(t,e,n,i){if(!e.unicodeSupport&&(!n||!n.unicodeSupport)&&t.host&&!ck(t.host)&&(e.domainHost||n&&n.domainHost)&&i===!1&&vV(t.host))try{t.host=new URL("http://"+t.host).hostname}catch(r){return t.error=t.error||"Host's domain name can not be converted to ASCII: "+r,!0}return!1}function sf(t,e){let n=Object.assign({},e),i={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},r=!1,o=!1,a=!1,c=!1,l=!1,u=!1,d=!1;n.reference==="suffix"&&(n.scheme?t=n.scheme+":"+t:t="//"+t);let m=t.match(IV);m!==null&&m[1].indexOf("\\")!==-1&&(i.error="URI authority must not contain a literal backslash.",r=!0);let f=t.match(EV);if(f!==null){let g=f[1],b=g.replace(/[\t\n\r]/g,"");b.length>=2&&(b.slice(0,2)!=="//"?(i.error=i.error||"URI authority must not contain a literal backslash.",r=!0):g.length!==b.length&&(i.error=i.error||"URI authority introducer must not contain whitespace.",r=!0))}let p=t.match(SV);if(p){if(i.scheme=p[1],i.userinfo=p[3],i.host=p[4],i.port=parseInt(p[5],10),i.path=p[6]||"",i.query=p[7],i.fragment=p[8],i.scheme!==void 0){let _=unescape(i.scheme);LA.test(_)?i.scheme=_.toLowerCase():(i.error=i.error||UA,u=!0)}o=RV(p),o&&(i.error=i.error||"URI contains malformed percent-encoding."),isNaN(i.port)&&(i.port=p[5]);let g=TV(i,p);if(g!==void 0&&(i.error=i.error||g,r=!0),i.host)if(zA(i.host)===!1){let T=ck(i.host),$=i.host.indexOf("[")!==-1||i.host.indexOf("]")!==-1,R=NA(i.host);d=R.isIPV6||R.isIPVFuture===!0,l=$&&(!T||R.error===!0),i.host=d?R.host:R.host.toLowerCase(),l&&(i.error=i.error||"URI host is malformed.",r=!0)}else d=!0;i.scheme===void 0&&i.userinfo===void 0&&i.host===void 0&&i.port===void 0&&i.query===void 0&&!i.path?i.reference="same-document":i.scheme===void 0?i.reference="relative":i.fragment===void 0?i.reference="absolute":i.reference="uri",n.reference&&n.reference!=="suffix"&&n.reference!==i.reference&&(i.error=i.error||"URI is not a "+n.reference+" reference.");let b=ak(n.scheme||i.scheme);if(l||(c=jA(i,n,b,d)),!b||b&&!b.skipNormalize){if(t.indexOf("%")!==-1&&i.host!==void 0&&!l){let _=d?i.host:PA(i.host,!0);i.host=_V(_,d)}i.path&&(i.path=gV(i.path)),i.query&&(i.query=AA(i.query)),i.fragment&&(i.fragment=AA(i.fragment))}b&&b.parse&&(b.parse(i,n),b===DA.urn&&i.nid===void 0&&(a=!0))}else i.error=i.error||"URI can not be parsed.";return{parsed:i,malformedAuthorityOrPort:r,malformedPercentEncoding:o,malformedSchemeSpecific:a,malformedHost:c,malformedScheme:u}}function af(t,e){return sf(t,e).parsed}function xV(t,e){return BA(t,e).normalized}function BA(t,e){let{parsed:n,malformedAuthorityOrPort:i,malformedPercentEncoding:r,malformedSchemeSpecific:o,malformedHost:a,malformedScheme:c}=sf(t,e);return{normalized:i||r||o||a||c?t:po(n,e),malformedAuthorityOrPort:i,malformedPercentEncoding:r,malformedSchemeSpecific:o,malformedHost:a,malformedScheme:c}}function CA(t,e){if(typeof t!="string"&&typeof t!="object")return;let n;try{n=typeof t=="string"?t:po(t,e)}catch{return}let{normalized:i,malformedAuthorityOrPort:r,malformedPercentEncoding:o,malformedSchemeSpecific:a,malformedHost:c,malformedScheme:l}=BA(n,e);return r||o||a||c||l?void 0:i}var lk={SCHEMES:DA,normalize:yV,resolve:kV,resolveComponent:MA,equal:wV,serialize:po,parse:af};cf.exports=lk;cf.exports.default=lk;cf.exports.fastUri=lk});var VA=M(uk=>{"use strict";Object.defineProperty(uk,"__esModule",{value:!0});var FA=KA();FA.code='require("ajv/dist/runtime/uri").default';uk.default=FA});var XA=M(It=>{"use strict";Object.defineProperty(It,"__esModule",{value:!0});It.CodeGen=It.Name=It.nil=It.stringify=It.str=It._=It.KeywordCxt=void 0;var OV=yl();Object.defineProperty(It,"KeywordCxt",{enumerable:!0,get:function(){return OV.KeywordCxt}});var qs=pe();Object.defineProperty(It,"_",{enumerable:!0,get:function(){return qs._}});Object.defineProperty(It,"str",{enumerable:!0,get:function(){return qs.str}});Object.defineProperty(It,"stringify",{enumerable:!0,get:function(){return qs.stringify}});Object.defineProperty(It,"nil",{enumerable:!0,get:function(){return qs.nil}});Object.defineProperty(It,"Name",{enumerable:!0,get:function(){return qs.Name}});Object.defineProperty(It,"CodeGen",{enumerable:!0,get:function(){return qs.CodeGen}});var AV=ef(),WA=kl(),$V=Ny(),Il=nf(),CV=pe(),El=bl(),lf=hl(),mk=$e(),qA=hA(),NV=VA(),JA=(t,e)=>new RegExp(t,e);JA.code="new RegExp";var PV=["removeAdditional","useDefaults","coerceTypes"],zV=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),DV={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},LV={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},HA=200;function UV(t){var e,n,i,r,o,a,c,l,u,d,m,f,p,g,b,_,T,$,R,D,j,pt,Y,Re,oe;let _e=t.strict,ye=(e=t.code)===null||e===void 0?void 0:e.optimize,we=ye===!0||ye===void 0?1:ye||0,Ye=(i=(n=t.code)===null||n===void 0?void 0:n.regExp)!==null&&i!==void 0?i:JA,gt=(r=t.uriResolver)!==null&&r!==void 0?r:NV.default;return{strictSchema:(a=(o=t.strictSchema)!==null&&o!==void 0?o:_e)!==null&&a!==void 0?a:!0,strictNumbers:(l=(c=t.strictNumbers)!==null&&c!==void 0?c:_e)!==null&&l!==void 0?l:!0,strictTypes:(d=(u=t.strictTypes)!==null&&u!==void 0?u:_e)!==null&&d!==void 0?d:"log",strictTuples:(f=(m=t.strictTuples)!==null&&m!==void 0?m:_e)!==null&&f!==void 0?f:"log",strictRequired:(g=(p=t.strictRequired)!==null&&p!==void 0?p:_e)!==null&&g!==void 0?g:!1,code:t.code?{...t.code,optimize:we,regExp:Ye}:{optimize:we,regExp:Ye},loopRequired:(b=t.loopRequired)!==null&&b!==void 0?b:HA,loopEnum:(_=t.loopEnum)!==null&&_!==void 0?_:HA,meta:(T=t.meta)!==null&&T!==void 0?T:!0,messages:($=t.messages)!==null&&$!==void 0?$:!0,inlineRefs:(R=t.inlineRefs)!==null&&R!==void 0?R:!0,schemaId:(D=t.schemaId)!==null&&D!==void 0?D:"$id",addUsedSchema:(j=t.addUsedSchema)!==null&&j!==void 0?j:!0,validateSchema:(pt=t.validateSchema)!==null&&pt!==void 0?pt:!0,validateFormats:(Y=t.validateFormats)!==null&&Y!==void 0?Y:!0,unicodeRegExp:(Re=t.unicodeRegExp)!==null&&Re!==void 0?Re:!0,int32range:(oe=t.int32range)!==null&&oe!==void 0?oe:!0,uriResolver:gt}}var Tl=class{constructor(e={}){this.schemas={},this.refs={},this.formats=Object.create(null),this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...UV(e)};let{es5:n,lines:i}=this.opts.code;this.scope=new CV.ValueScope({scope:{},prefixes:zV,es5:n,lines:i}),this.logger=VV(e.logger);let r=e.validateFormats;e.validateFormats=!1,this.RULES=(0,$V.getRules)(),GA.call(this,DV,e,"NOT SUPPORTED"),GA.call(this,LV,e,"DEPRECATED","warn"),this._metaOpts=KV.call(this),e.formats&&jV.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&BV.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),MV.call(this),e.validateFormats=r}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:n,schemaId:i}=this.opts,r=qA;i==="id"&&(r={...qA},r.id=r.$id,delete r.$id),n&&e&&this.addMetaSchema(r,r[i],!1)}defaultMeta(){let{meta:e,schemaId:n}=this.opts;return this.opts.defaultMeta=typeof e=="object"?e[n]||e:void 0}validate(e,n){let i;if(typeof e=="string"){if(i=this.getSchema(e),!i)throw new Error(`no schema with key or ref "${e}"`)}else i=this.compile(e);let r=i(n);return"$async"in i||(this.errors=i.errors),r}compile(e,n){let i=this._addSchema(e,n);return i.validate||this._compileSchemaEnv(i)}compileAsync(e,n){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:i}=this.opts;return r.call(this,e,n);async function r(d,m){await o.call(this,d.$schema);let f=this._addSchema(d,m);return f.validate||a.call(this,f)}async function o(d){d&&!this.getSchema(d)&&await r.call(this,{$ref:d},!0)}async function a(d){try{return this._compileSchemaEnv(d)}catch(m){if(!(m instanceof WA.default))throw m;return c.call(this,m),await l.call(this,m.missingSchema),a.call(this,d)}}function c({missingSchema:d,missingRef:m}){if(this.refs[d])throw new Error(`AnySchema ${d} is loaded but ${m} cannot be resolved`)}async function l(d){let m=await u.call(this,d);this.refs[d]||await o.call(this,m.$schema),this.refs[d]||this.addSchema(m,d,n)}async function u(d){let m=this._loading[d];if(m)return m;try{return await(this._loading[d]=i(d))}finally{delete this._loading[d]}}}addSchema(e,n,i,r=this.opts.validateSchema){if(Array.isArray(e)){for(let a of e)this.addSchema(a,void 0,i,r);return this}let o;if(typeof e=="object"){let{schemaId:a}=this.opts;if(o=e[a],o!==void 0&&typeof o!="string")throw new Error(`schema ${a} must be string`)}return n=(0,El.normalizeId)(n||o),this._checkUnique(n),this.schemas[n]=this._addSchema(e,i,n,r,!0),this}addMetaSchema(e,n,i=this.opts.validateSchema){return this.addSchema(e,n,!0,i),this}validateSchema(e,n){if(typeof e=="boolean")return!0;let i;if(i=e.$schema,i!==void 0&&typeof i!="string")throw new Error("$schema must be a string");if(i=i||this.opts.defaultMeta||this.defaultMeta(),!i)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let r=this.validate(i,e);if(!r&&n){let o="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(o);else throw new Error(o)}return r}getSchema(e){let n;for(;typeof(n=ZA.call(this,e))=="string";)e=n;if(n===void 0){let{schemaId:i}=this.opts,r=new Il.SchemaEnv({schema:{},schemaId:i});if(n=Il.resolveSchema.call(this,r,e),!n)return;this.refs[e]=n}return n.validate||this._compileSchemaEnv(n)}removeSchema(e){if(e instanceof RegExp)return this._removeAllSchemas(this.schemas,e),this._removeAllSchemas(this.refs,e),this;switch(typeof e){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let n=ZA.call(this,e);return typeof n=="object"&&this._cache.delete(n.schema),delete this.schemas[e],delete this.refs[e],this}case"object":{let n=e;this._cache.delete(n);let i=e[this.opts.schemaId];return i&&(i=(0,El.normalizeId)(i),delete this.schemas[i],delete this.refs[i]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(e){for(let n of e)this.addKeyword(n);return this}addKeyword(e,n){let i;if(typeof e=="string")i=e,typeof n=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),n.keyword=i);else if(typeof e=="object"&&n===void 0){if(n=e,i=n.keyword,Array.isArray(i)&&!i.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(HV.call(this,i,n),!n)return(0,mk.eachItem)(i,o=>dk.call(this,o)),this;ZV.call(this,n);let r={...n,type:(0,lf.getJSONTypes)(n.type),schemaType:(0,lf.getJSONTypes)(n.schemaType)};return(0,mk.eachItem)(i,r.type.length===0?o=>dk.call(this,o,r):o=>r.type.forEach(a=>dk.call(this,o,r,a))),this}getKeyword(e){let n=this.RULES.all[e];return typeof n=="object"?n.definition:!!n}removeKeyword(e){let{RULES:n}=this;delete n.keywords[e],delete n.all[e];for(let i of n.rules){let r=i.rules.findIndex(o=>o.keyword===e);r>=0&&i.rules.splice(r,1)}return this}addFormat(e,n){return typeof n=="string"&&(n=new RegExp(n)),this.formats[e]=n,this}errorsText(e=this.errors,{separator:n=", ",dataVar:i="data"}={}){return!e||e.length===0?"No errors":e.map(r=>`${i}${r.instancePath} ${r.message}`).reduce((r,o)=>r+n+o)}$dataMetaSchema(e,n){let i=this.RULES.all;e=JSON.parse(JSON.stringify(e));for(let r of n){let o=r.split("/").slice(1),a=e;for(let c of o)a=a[c];for(let c in i){let l=i[c];if(typeof l!="object")continue;let{$data:u}=l.definition,d=a[c];u&&d&&(a[c]=YA(d))}}return e}_removeAllSchemas(e,n){for(let i in e){let r=e[i];(!n||n.test(i))&&(typeof r=="string"?delete e[i]:r&&!r.meta&&(this._cache.delete(r.schema),delete e[i]))}}_addSchema(e,n,i,r=this.opts.validateSchema,o=this.opts.addUsedSchema){let a,{schemaId:c}=this.opts;if(typeof e=="object")a=e[c];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof e!="boolean")throw new Error("schema must be object or boolean")}let l=this._cache.get(e);if(l!==void 0)return l;i=(0,El.normalizeId)(a||i);let u=El.getSchemaRefs.call(this,e,i);return l=new Il.SchemaEnv({schema:e,schemaId:c,meta:n,baseId:i,localRefs:u}),this._cache.set(l.schema,l),o&&!i.startsWith("#")&&(i&&this._checkUnique(i),this.refs[i]=l),r&&this.validateSchema(e,!0),l}_checkUnique(e){if(this.schemas[e]||this.refs[e])throw new Error(`schema with key or id "${e}" already exists`)}_compileSchemaEnv(e){if(e.meta?this._compileMetaSchema(e):Il.compileSchema.call(this,e),!e.validate)throw new Error("ajv implementation error");return e.validate}_compileMetaSchema(e){let n=this.opts;this.opts=this._metaOpts;try{Il.compileSchema.call(this,e)}finally{this.opts=n}}};Tl.ValidationError=AV.default;Tl.MissingRefError=WA.default;It.default=Tl;function GA(t,e,n,i="error"){for(let r in t){let o=r;o in e&&this.logger[i](`${n}: option ${r}. ${t[o]}`)}}function ZA(t){return t=(0,El.normalizeId)(t),this.schemas[t]||this.refs[t]}function MV(){let t=this.opts.schemas;if(t)if(Array.isArray(t))this.addSchema(t);else for(let e in t)this.addSchema(t[e],e)}function jV(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function BV(t){if(Array.isArray(t)){this.addVocabulary(t);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let e in t){let n=t[e];n.keyword||(n.keyword=e),this.addKeyword(n)}}function KV(){let t={...this.opts};for(let e of PV)delete t[e];return t}var FV={log(){},warn(){},error(){}};function VV(t){if(t===!1)return FV;if(t===void 0)return console;if(t.log&&t.warn&&t.error)return t;throw new Error("logger must implement log, warn and error methods")}var qV=/^[a-z_$][a-z0-9_$:-]*$/i;function HV(t,e){let{RULES:n}=this;if((0,mk.eachItem)(t,i=>{if(n.keywords[i])throw new Error(`Keyword ${i} is already defined`);if(!qV.test(i))throw new Error(`Keyword ${i} has invalid name`)}),!!e&&e.$data&&!("code"in e||"validate"in e))throw new Error('$data keyword must have "code" or "validate" function')}function dk(t,e,n){var i;let r=e?.post;if(n&&r)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:o}=this,a=r?o.post:o.rules.find(({type:l})=>l===n);if(a||(a={type:n,rules:[]},o.rules.push(a)),o.keywords[t]=!0,!e)return;let c={keyword:t,definition:{...e,type:(0,lf.getJSONTypes)(e.type),schemaType:(0,lf.getJSONTypes)(e.schemaType)}};e.before?GV.call(this,a,c,e.before):a.rules.push(c),o.all[t]=c,(i=e.implements)===null||i===void 0||i.forEach(l=>this.addKeyword(l))}function GV(t,e,n){let i=t.rules.findIndex(r=>r.keyword===n);i>=0?t.rules.splice(i,0,e):(t.rules.push(e),this.logger.warn(`rule ${n} is not defined`))}function ZV(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=YA(e)),t.validateSchema=this.compile(e,!0))}var WV={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function YA(t){return{anyOf:[t,WV]}}});var QA=M(pk=>{"use strict";Object.defineProperty(pk,"__esModule",{value:!0});var JV={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};pk.default=JV});var r$=M(fo=>{"use strict";Object.defineProperty(fo,"__esModule",{value:!0});fo.callRef=fo.getValidate=void 0;var YV=kl(),e$=Rn(),an=pe(),Hs=Pr(),t$=nf(),uf=$e(),XV={keyword:"$ref",schemaType:"string",code(t){let{gen:e,schema:n,it:i}=t,{baseId:r,schemaEnv:o,validateName:a,opts:c,self:l}=i,{root:u}=o;if((n==="#"||n==="#/")&&r===u.baseId)return m();let d=t$.resolveRef.call(l,u,r,n);if(d===void 0)throw new YV.default(i.opts.uriResolver,r,n);if(d instanceof t$.SchemaEnv)return f(d);return p(d);function m(){if(o===u)return df(t,a,o,o.$async);let g=e.scopeValue("root",{ref:u});return df(t,(0,an._)`${g}.validate`,u,u.$async)}function f(g){let b=n$(t,g);df(t,b,g,g.$async)}function p(g){let b=e.scopeValue("schema",c.code.source===!0?{ref:g,code:(0,an.stringify)(g)}:{ref:g}),_=e.name("valid"),T=t.subschema({schema:g,dataTypes:[],schemaPath:an.nil,topSchemaRef:b,errSchemaPath:n},_);t.mergeEvaluated(T),t.ok(_)}}};function n$(t,e){let{gen:n}=t;return e.validate?n.scopeValue("validate",{ref:e.validate}):(0,an._)`${n.scopeValue("wrapper",{ref:e})}.validate`}fo.getValidate=n$;function df(t,e,n,i){let{gen:r,it:o}=t,{allErrors:a,schemaEnv:c,opts:l}=o,u=l.passContext?Hs.default.this:an.nil;i?d():m();function d(){if(!c.$async)throw new Error("async schema referenced by sync schema");let g=r.let("valid");r.try(()=>{r.code((0,an._)`await ${(0,e$.callValidateCode)(t,e,u)}`),p(e),a||r.assign(g,!0)},b=>{r.if((0,an._)`!(${b} instanceof ${o.ValidationError})`,()=>r.throw(b)),f(b),a||r.assign(g,!1)}),t.ok(g)}function m(){t.result((0,e$.callValidateCode)(t,e,u),()=>p(e),()=>f(e))}function f(g){let b=(0,an._)`${g}.errors`;r.assign(Hs.default.vErrors,(0,an._)`${Hs.default.vErrors} === null ? ${b} : ${Hs.default.vErrors}.concat(${b})`),r.assign(Hs.default.errors,(0,an._)`${Hs.default.vErrors}.length`)}function p(g){var b;if(!o.opts.unevaluated)return;let _=(b=n?.validate)===null||b===void 0?void 0:b.evaluated;if(o.props!==!0)if(_&&!_.dynamicProps)_.props!==void 0&&(o.props=uf.mergeEvaluated.props(r,_.props,o.props));else{let T=r.var("props",(0,an._)`${g}.evaluated.props`);o.props=uf.mergeEvaluated.props(r,T,o.props,an.Name)}if(o.items!==!0)if(_&&!_.dynamicItems)_.items!==void 0&&(o.items=uf.mergeEvaluated.items(r,_.items,o.items));else{let T=r.var("items",(0,an._)`${g}.evaluated.items`);o.items=uf.mergeEvaluated.items(r,T,o.items,an.Name)}}}fo.callRef=df;fo.default=XV});var i$=M(fk=>{"use strict";Object.defineProperty(fk,"__esModule",{value:!0});var QV=QA(),e4=r$(),t4=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",QV.default,e4.default];fk.default=t4});var o$=M(gk=>{"use strict";Object.defineProperty(gk,"__esModule",{value:!0});var mf=pe(),wi=mf.operators,pf={maximum:{okStr:"<=",ok:wi.LTE,fail:wi.GT},minimum:{okStr:">=",ok:wi.GTE,fail:wi.LT},exclusiveMaximum:{okStr:"<",ok:wi.LT,fail:wi.GTE},exclusiveMinimum:{okStr:">",ok:wi.GT,fail:wi.LTE}},n4={message:({keyword:t,schemaCode:e})=>(0,mf.str)`must be ${pf[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,mf._)`{comparison: ${pf[t].okStr}, limit: ${e}}`},r4={keyword:Object.keys(pf),type:"number",schemaType:"number",$data:!0,error:n4,code(t){let{keyword:e,data:n,schemaCode:i}=t;t.fail$data((0,mf._)`${n} ${pf[e].fail} ${i} || isNaN(${n})`)}};gk.default=r4});var s$=M(hk=>{"use strict";Object.defineProperty(hk,"__esModule",{value:!0});var Rl=pe(),i4={message:({schemaCode:t})=>(0,Rl.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,Rl._)`{multipleOf: ${t}}`},o4={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:i4,code(t){let{gen:e,data:n,schemaCode:i,it:r}=t,o=r.opts.multipleOfPrecision,a=e.let("res"),c=o?(0,Rl._)`Math.abs(Math.round(${a}) - ${a}) > 1e-${o}`:(0,Rl._)`${a} !== parseInt(${a})`;t.fail$data((0,Rl._)`(${i} === 0 || (${a} = ${n}/${i}, ${c}))`)}};hk.default=o4});var c$=M(bk=>{"use strict";Object.defineProperty(bk,"__esModule",{value:!0});function a$(t){let e=t.length,n=0,i=0,r;for(;i<e;)n++,r=t.charCodeAt(i++),r>=55296&&r<=56319&&i<e&&(r=t.charCodeAt(i),(r&64512)===56320&&i++);return n}bk.default=a$;a$.code='require("ajv/dist/runtime/ucs2length").default'});var l$=M(_k=>{"use strict";Object.defineProperty(_k,"__esModule",{value:!0});var go=pe(),s4=$e(),a4=c$(),c4={message({keyword:t,schemaCode:e}){let n=t==="maxLength"?"more":"fewer";return(0,go.str)`must NOT have ${n} than ${e} characters`},params:({schemaCode:t})=>(0,go._)`{limit: ${t}}`},l4={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:c4,code(t){let{keyword:e,data:n,schemaCode:i,it:r}=t,o=e==="maxLength"?go.operators.GT:go.operators.LT,a=r.opts.unicode===!1?(0,go._)`${n}.length`:(0,go._)`${(0,s4.useFunc)(t.gen,a4.default)}(${n})`;t.fail$data((0,go._)`${a} ${o} ${i}`)}};_k.default=l4});var u$=M(vk=>{"use strict";Object.defineProperty(vk,"__esModule",{value:!0});var u4=Rn(),d4=$e(),Gs=pe(),m4={message:({schemaCode:t})=>(0,Gs.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,Gs._)`{pattern: ${t}}`},p4={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:m4,code(t){let{gen:e,data:n,$data:i,schema:r,schemaCode:o,it:a}=t,c=a.opts.unicodeRegExp?"u":"";if(i){let{regExp:l}=a.opts.code,u=l.code==="new RegExp"?(0,Gs._)`new RegExp`:(0,d4.useFunc)(e,l),d=e.let("valid");e.try(()=>e.assign(d,(0,Gs._)`${u}(${o}, ${c}).test(${n})`),()=>e.assign(d,!1)),t.fail$data((0,Gs._)`!${d}`)}else{let l=(0,u4.usePattern)(t,r);t.fail$data((0,Gs._)`!${l}.test(${n})`)}}};vk.default=p4});var d$=M(yk=>{"use strict";Object.defineProperty(yk,"__esModule",{value:!0});var xl=pe(),f4={message({keyword:t,schemaCode:e}){let n=t==="maxProperties"?"more":"fewer";return(0,xl.str)`must NOT have ${n} than ${e} properties`},params:({schemaCode:t})=>(0,xl._)`{limit: ${t}}`},g4={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:f4,code(t){let{keyword:e,data:n,schemaCode:i}=t,r=e==="maxProperties"?xl.operators.GT:xl.operators.LT;t.fail$data((0,xl._)`Object.keys(${n}).length ${r} ${i}`)}};yk.default=g4});var m$=M(kk=>{"use strict";Object.defineProperty(kk,"__esModule",{value:!0});var Ol=Rn(),Al=pe(),h4=$e(),b4={message:({params:{missingProperty:t}})=>(0,Al.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,Al._)`{missingProperty: ${t}}`},_4={keyword:"required",type:"object",schemaType:"array",$data:!0,error:b4,code(t){let{gen:e,schema:n,schemaCode:i,data:r,$data:o,it:a}=t,{opts:c}=a;if(!o&&n.length===0)return;let l=n.length>=c.loopRequired;if(a.allErrors?u():d(),c.strictRequired){let p=t.parentSchema.properties,{definedProperties:g}=t.it;for(let b of n)if(p?.[b]===void 0&&!g.has(b)){let _=a.schemaEnv.baseId+a.errSchemaPath,T=`required property "${b}" is not defined at "${_}" (strictRequired)`;(0,h4.checkStrictMode)(a,T,a.opts.strictRequired)}}function u(){if(l||o)t.block$data(Al.nil,m);else for(let p of n)(0,Ol.checkReportMissingProp)(t,p)}function d(){let p=e.let("missing");if(l||o){let g=e.let("valid",!0);t.block$data(g,()=>f(p,g)),t.ok(g)}else e.if((0,Ol.checkMissingProp)(t,n,p)),(0,Ol.reportMissingProp)(t,p),e.else()}function m(){e.forOf("prop",i,p=>{t.setParams({missingProperty:p}),e.if((0,Ol.noPropertyInData)(e,r,p,c.ownProperties),()=>t.error())})}function f(p,g){t.setParams({missingProperty:p}),e.forOf(p,i,()=>{e.assign(g,(0,Ol.propertyInData)(e,r,p,c.ownProperties)),e.if((0,Al.not)(g),()=>{t.error(),e.break()})},Al.nil)}}};kk.default=_4});var p$=M(wk=>{"use strict";Object.defineProperty(wk,"__esModule",{value:!0});var $l=pe(),v4={message({keyword:t,schemaCode:e}){let n=t==="maxItems"?"more":"fewer";return(0,$l.str)`must NOT have ${n} than ${e} items`},params:({schemaCode:t})=>(0,$l._)`{limit: ${t}}`},y4={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:v4,code(t){let{keyword:e,data:n,schemaCode:i}=t,r=e==="maxItems"?$l.operators.GT:$l.operators.LT;t.fail$data((0,$l._)`${n}.length ${r} ${i}`)}};wk.default=y4});var ff=M(Sk=>{"use strict";Object.defineProperty(Sk,"__esModule",{value:!0});var f$=By();f$.code='require("ajv/dist/runtime/equal").default';Sk.default=f$});var g$=M(Ek=>{"use strict";Object.defineProperty(Ek,"__esModule",{value:!0});var Ik=hl(),Et=pe(),k4=$e(),w4=ff(),S4={message:({params:{i:t,j:e}})=>(0,Et.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,Et._)`{i: ${t}, j: ${e}}`},I4={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:S4,code(t){let{gen:e,data:n,$data:i,schema:r,parentSchema:o,schemaCode:a,it:c}=t;if(!i&&!r)return;let l=e.let("valid"),u=o.items?(0,Ik.getSchemaTypes)(o.items):[];t.block$data(l,d,(0,Et._)`${a} === false`),t.ok(l);function d(){let g=e.let("i",(0,Et._)`${n}.length`),b=e.let("j");t.setParams({i:g,j:b}),e.assign(l,!0),e.if((0,Et._)`${g} > 1`,()=>(m()?f:p)(g,b))}function m(){return u.length>0&&!u.some(g=>g==="object"||g==="array")}function f(g,b){let _=e.name("item"),T=(0,Ik.checkDataTypes)(u,_,c.opts.strictNumbers,Ik.DataType.Wrong),$=e.const("indices",(0,Et._)`{}`);e.for((0,Et._)`;${g}--;`,()=>{e.let(_,(0,Et._)`${n}[${g}]`),e.if(T,(0,Et._)`continue`),u.length>1&&e.if((0,Et._)`typeof ${_} == "string"`,(0,Et._)`${_} += "_"`),e.if((0,Et._)`typeof ${$}[${_}] == "number"`,()=>{e.assign(b,(0,Et._)`${$}[${_}]`),t.error(),e.assign(l,!1).break()}).code((0,Et._)`${$}[${_}] = ${g}`)})}function p(g,b){let _=(0,k4.useFunc)(e,w4.default),T=e.name("outer");e.label(T).for((0,Et._)`;${g}--;`,()=>e.for((0,Et._)`${b} = ${g}; ${b}--;`,()=>e.if((0,Et._)`${_}(${n}[${g}], ${n}[${b}])`,()=>{t.error(),e.assign(l,!1).break(T)})))}}};Ek.default=I4});var h$=M(Rk=>{"use strict";Object.defineProperty(Rk,"__esModule",{value:!0});var Tk=pe(),E4=$e(),T4=ff(),R4={message:"must be equal to constant",params:({schemaCode:t})=>(0,Tk._)`{allowedValue: ${t}}`},x4={keyword:"const",$data:!0,error:R4,code(t){let{gen:e,data:n,$data:i,schemaCode:r,schema:o}=t;i||o&&typeof o=="object"?t.fail$data((0,Tk._)`!${(0,E4.useFunc)(e,T4.default)}(${n}, ${r})`):t.fail((0,Tk._)`${o} !== ${n}`)}};Rk.default=x4});var b$=M(xk=>{"use strict";Object.defineProperty(xk,"__esModule",{value:!0});var Cl=pe(),O4=$e(),A4=ff(),$4={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,Cl._)`{allowedValues: ${t}}`},C4={keyword:"enum",schemaType:"array",$data:!0,error:$4,code(t){let{gen:e,data:n,$data:i,schema:r,schemaCode:o,it:a}=t;if(!i&&r.length===0)throw new Error("enum must have non-empty array");let c=r.length>=a.opts.loopEnum,l,u=()=>l??(l=(0,O4.useFunc)(e,A4.default)),d;if(c||i)d=e.let("valid"),t.block$data(d,m);else{if(!Array.isArray(r))throw new Error("ajv implementation error");let p=e.const("vSchema",o);d=(0,Cl.or)(...r.map((g,b)=>f(p,b)))}t.pass(d);function m(){e.assign(d,!1),e.forOf("v",o,p=>e.if((0,Cl._)`${u()}(${n}, ${p})`,()=>e.assign(d,!0).break()))}function f(p,g){let b=r[g];return typeof b=="object"&&b!==null?(0,Cl._)`${u()}(${n}, ${p}[${g}])`:(0,Cl._)`${n} === ${b}`}}};xk.default=C4});var _$=M(Ok=>{"use strict";Object.defineProperty(Ok,"__esModule",{value:!0});var N4=o$(),P4=s$(),z4=l$(),D4=u$(),L4=d$(),U4=m$(),M4=p$(),j4=g$(),B4=h$(),K4=b$(),F4=[N4.default,P4.default,z4.default,D4.default,L4.default,U4.default,M4.default,j4.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},B4.default,K4.default];Ok.default=F4});var $k=M(Nl=>{"use strict";Object.defineProperty(Nl,"__esModule",{value:!0});Nl.validateAdditionalItems=void 0;var ho=pe(),Ak=$e(),V4={message:({params:{len:t}})=>(0,ho.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,ho._)`{limit: ${t}}`},q4={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:V4,code(t){let{parentSchema:e,it:n}=t,{items:i}=e;if(!Array.isArray(i)){(0,Ak.checkStrictMode)(n,'"additionalItems" is ignored when "items" is not an array of schemas');return}v$(t,i)}};function v$(t,e){let{gen:n,schema:i,data:r,keyword:o,it:a}=t;a.items=!0;let c=n.const("len",(0,ho._)`${r}.length`);if(i===!1)t.setParams({len:e.length}),t.pass((0,ho._)`${c} <= ${e.length}`);else if(typeof i=="object"&&!(0,Ak.alwaysValidSchema)(a,i)){let u=n.var("valid",(0,ho._)`${c} <= ${e.length}`);n.if((0,ho.not)(u),()=>l(u)),t.ok(u)}function l(u){n.forRange("i",e.length,c,d=>{t.subschema({keyword:o,dataProp:d,dataPropType:Ak.Type.Num},u),a.allErrors||n.if((0,ho.not)(u),()=>n.break())})}}Nl.validateAdditionalItems=v$;Nl.default=q4});var Ck=M(Pl=>{"use strict";Object.defineProperty(Pl,"__esModule",{value:!0});Pl.validateTuple=void 0;var y$=pe(),gf=$e(),H4=Rn(),G4={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:n}=t;if(Array.isArray(e))return k$(t,"additionalItems",e);n.items=!0,!(0,gf.alwaysValidSchema)(n,e)&&t.ok((0,H4.validateArray)(t))}};function k$(t,e,n=t.schema){let{gen:i,parentSchema:r,data:o,keyword:a,it:c}=t;d(r),c.opts.unevaluated&&n.length&&c.items!==!0&&(c.items=gf.mergeEvaluated.items(i,n.length,c.items));let l=i.name("valid"),u=i.const("len",(0,y$._)`${o}.length`);n.forEach((m,f)=>{(0,gf.alwaysValidSchema)(c,m)||(i.if((0,y$._)`${u} > ${f}`,()=>t.subschema({keyword:a,schemaProp:f,dataProp:f},l)),t.ok(l))});function d(m){let{opts:f,errSchemaPath:p}=c,g=n.length,b=g===m.minItems&&(g===m.maxItems||m[e]===!1);if(f.strictTuples&&!b){let _=`"${a}" is ${g}-tuple, but minItems or maxItems/${e} are not specified or different at path "${p}"`;(0,gf.checkStrictMode)(c,_,f.strictTuples)}}}Pl.validateTuple=k$;Pl.default=G4});var w$=M(Nk=>{"use strict";Object.defineProperty(Nk,"__esModule",{value:!0});var Z4=Ck(),W4={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,Z4.validateTuple)(t,"items")};Nk.default=W4});var I$=M(Pk=>{"use strict";Object.defineProperty(Pk,"__esModule",{value:!0});var S$=pe(),J4=$e(),Y4=Rn(),X4=$k(),Q4={message:({params:{len:t}})=>(0,S$.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,S$._)`{limit: ${t}}`},eq={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:Q4,code(t){let{schema:e,parentSchema:n,it:i}=t,{prefixItems:r}=n;i.items=!0,!(0,J4.alwaysValidSchema)(i,e)&&(r?(0,X4.validateAdditionalItems)(t,r):t.ok((0,Y4.validateArray)(t)))}};Pk.default=eq});var E$=M(zk=>{"use strict";Object.defineProperty(zk,"__esModule",{value:!0});var On=pe(),hf=$e(),tq={message:({params:{min:t,max:e}})=>e===void 0?(0,On.str)`must contain at least ${t} valid item(s)`:(0,On.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,On._)`{minContains: ${t}}`:(0,On._)`{minContains: ${t}, maxContains: ${e}}`},nq={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:tq,code(t){let{gen:e,schema:n,parentSchema:i,data:r,it:o}=t,a,c,{minContains:l,maxContains:u}=i;o.opts.next?(a=l===void 0?1:l,c=u):a=1;let d=e.const("len",(0,On._)`${r}.length`);if(t.setParams({min:a,max:c}),c===void 0&&a===0){(0,hf.checkStrictMode)(o,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(c!==void 0&&a>c){(0,hf.checkStrictMode)(o,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,hf.alwaysValidSchema)(o,n)){let b=(0,On._)`${d} >= ${a}`;c!==void 0&&(b=(0,On._)`${b} && ${d} <= ${c}`),t.pass(b);return}o.items=!0;let m=e.name("valid");c===void 0&&a===1?p(m,()=>e.if(m,()=>e.break())):a===0?(e.let(m,!0),c!==void 0&&e.if((0,On._)`${r}.length > 0`,f)):(e.let(m,!1),f()),t.result(m,()=>t.reset());function f(){let b=e.name("_valid"),_=e.let("count",0);p(b,()=>e.if(b,()=>g(_)))}function p(b,_){e.forRange("i",0,d,T=>{t.subschema({keyword:"contains",dataProp:T,dataPropType:hf.Type.Num,compositeRule:!0},b),_()})}function g(b){e.code((0,On._)`${b}++`),c===void 0?e.if((0,On._)`${b} >= ${a}`,()=>e.assign(m,!0).break()):(e.if((0,On._)`${b} > ${c}`,()=>e.assign(m,!1).break()),a===1?e.assign(m,!0):e.if((0,On._)`${b} >= ${a}`,()=>e.assign(m,!0)))}}};zk.default=nq});var x$=M(pr=>{"use strict";Object.defineProperty(pr,"__esModule",{value:!0});pr.validateSchemaDeps=pr.validatePropertyDeps=pr.error=void 0;var Dk=pe(),rq=$e(),zl=Rn();pr.error={message:({params:{property:t,depsCount:e,deps:n}})=>{let i=e===1?"property":"properties";return(0,Dk.str)`must have ${i} ${n} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:n,missingProperty:i}})=>(0,Dk._)`{property: ${t},
|
|
8
|
-
missingProperty: ${i},
|
|
9
|
-
depsCount: ${e},
|
|
10
|
-
deps: ${n}}`};var iq={keyword:"dependencies",type:"object",schemaType:"object",error:pr.error,code(t){let[e,n]=oq(t);T$(t,e),R$(t,n)}};function oq({schema:t}){let e={},n={};for(let i in t){if(i==="__proto__")continue;let r=Array.isArray(t[i])?e:n;r[i]=t[i]}return[e,n]}function T$(t,e=t.schema){let{gen:n,data:i,it:r}=t;if(Object.keys(e).length===0)return;let o=n.let("missing");for(let a in e){let c=e[a];if(c.length===0)continue;let l=(0,zl.propertyInData)(n,i,a,r.opts.ownProperties);t.setParams({property:a,depsCount:c.length,deps:c.join(", ")}),r.allErrors?n.if(l,()=>{for(let u of c)(0,zl.checkReportMissingProp)(t,u)}):(n.if((0,Dk._)`${l} && (${(0,zl.checkMissingProp)(t,c,o)})`),(0,zl.reportMissingProp)(t,o),n.else())}}pr.validatePropertyDeps=T$;function R$(t,e=t.schema){let{gen:n,data:i,keyword:r,it:o}=t,a=n.name("valid");for(let c in e)(0,rq.alwaysValidSchema)(o,e[c])||(n.if((0,zl.propertyInData)(n,i,c,o.opts.ownProperties),()=>{let l=t.subschema({keyword:r,schemaProp:c},a);t.mergeValidEvaluated(l,a)},()=>n.var(a,!0)),t.ok(a))}pr.validateSchemaDeps=R$;pr.default=iq});var A$=M(Lk=>{"use strict";Object.defineProperty(Lk,"__esModule",{value:!0});var O$=pe(),sq=$e(),aq={message:"property name must be valid",params:({params:t})=>(0,O$._)`{propertyName: ${t.propertyName}}`},cq={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:aq,code(t){let{gen:e,schema:n,data:i,it:r}=t;if((0,sq.alwaysValidSchema)(r,n))return;let o=e.name("valid");e.forIn("key",i,a=>{t.setParams({propertyName:a}),t.subschema({keyword:"propertyNames",data:a,dataTypes:["string"],propertyName:a,compositeRule:!0},o),e.if((0,O$.not)(o),()=>{t.error(!0),r.allErrors||e.break()})}),t.ok(o)}};Lk.default=cq});var Mk=M(Uk=>{"use strict";Object.defineProperty(Uk,"__esModule",{value:!0});var bf=Rn(),Gn=pe(),lq=Pr(),_f=$e(),uq={message:"must NOT have additional properties",params:({params:t})=>(0,Gn._)`{additionalProperty: ${t.additionalProperty}}`},dq={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:uq,code(t){let{gen:e,schema:n,parentSchema:i,data:r,errsCount:o,it:a}=t;if(!o)throw new Error("ajv implementation error");let{allErrors:c,opts:l}=a;if(a.props=!0,l.removeAdditional!=="all"&&(0,_f.alwaysValidSchema)(a,n))return;let u=(0,bf.allSchemaProperties)(i.properties),d=(0,bf.allSchemaProperties)(i.patternProperties);m(),t.ok((0,Gn._)`${o} === ${lq.default.errors}`);function m(){e.forIn("key",r,_=>{!u.length&&!d.length?g(_):e.if(f(_),()=>g(_))})}function f(_){let T;if(u.length>8){let $=(0,_f.schemaRefOrVal)(a,i.properties,"properties");T=(0,bf.isOwnProperty)(e,$,_)}else u.length?T=(0,Gn.or)(...u.map($=>(0,Gn._)`${_} === ${$}`)):T=Gn.nil;return d.length&&(T=(0,Gn.or)(T,...d.map($=>(0,Gn._)`${(0,bf.usePattern)(t,$)}.test(${_})`))),(0,Gn.not)(T)}function p(_){e.code((0,Gn._)`delete ${r}[${_}]`)}function g(_){if(l.removeAdditional==="all"||l.removeAdditional&&n===!1){p(_);return}if(n===!1){t.setParams({additionalProperty:_}),t.error(),c||e.break();return}if(typeof n=="object"&&!(0,_f.alwaysValidSchema)(a,n)){let T=e.name("valid");l.removeAdditional==="failing"?(b(_,T,!1),e.if((0,Gn.not)(T),()=>{t.reset(),p(_)})):(b(_,T),c||e.if((0,Gn.not)(T),()=>e.break()))}}function b(_,T,$){let R={keyword:"additionalProperties",dataProp:_,dataPropType:_f.Type.Str};$===!1&&Object.assign(R,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(R,T)}}};Uk.default=dq});var N$=M(Bk=>{"use strict";Object.defineProperty(Bk,"__esModule",{value:!0});var mq=yl(),$$=Rn(),jk=$e(),C$=Mk(),pq={keyword:"properties",type:"object",schemaType:"object",code(t){let{gen:e,schema:n,parentSchema:i,data:r,it:o}=t;o.opts.removeAdditional==="all"&&i.additionalProperties===void 0&&C$.default.code(new mq.KeywordCxt(o,C$.default,"additionalProperties"));let a=(0,$$.allSchemaProperties)(n);for(let m of a)o.definedProperties.add(m);o.opts.unevaluated&&a.length&&o.props!==!0&&(o.props=jk.mergeEvaluated.props(e,(0,jk.toHash)(a),o.props));let c=a.filter(m=>!(0,jk.alwaysValidSchema)(o,n[m]));if(c.length===0)return;let l=e.name("valid");for(let m of c)u(m)?d(m):(e.if((0,$$.propertyInData)(e,r,m,o.opts.ownProperties)),d(m),o.allErrors||e.else().var(l,!0),e.endIf()),t.it.definedProperties.add(m),t.ok(l);function u(m){return o.opts.useDefaults&&!o.compositeRule&&n[m].default!==void 0}function d(m){t.subschema({keyword:"properties",schemaProp:m,dataProp:m},l)}}};Bk.default=pq});var L$=M(Kk=>{"use strict";Object.defineProperty(Kk,"__esModule",{value:!0});var P$=Rn(),vf=pe(),z$=$e(),D$=$e(),fq={keyword:"patternProperties",type:"object",schemaType:"object",code(t){let{gen:e,schema:n,data:i,parentSchema:r,it:o}=t,{opts:a}=o,c=(0,P$.allSchemaProperties)(n),l=c.filter(b=>(0,z$.alwaysValidSchema)(o,n[b]));if(c.length===0||l.length===c.length&&(!o.opts.unevaluated||o.props===!0))return;let u=a.strictSchema&&!a.allowMatchingProperties&&r.properties,d=e.name("valid");o.props!==!0&&!(o.props instanceof vf.Name)&&(o.props=(0,D$.evaluatedPropsToName)(e,o.props));let{props:m}=o;f();function f(){for(let b of c)u&&p(b),o.allErrors?g(b):(e.var(d,!0),g(b),e.if(d))}function p(b){for(let _ in u)new RegExp(b).test(_)&&(0,z$.checkStrictMode)(o,`property ${_} matches pattern ${b} (use allowMatchingProperties)`)}function g(b){e.forIn("key",i,_=>{e.if((0,vf._)`${(0,P$.usePattern)(t,b)}.test(${_})`,()=>{let T=l.includes(b);T||t.subschema({keyword:"patternProperties",schemaProp:b,dataProp:_,dataPropType:D$.Type.Str},d),o.opts.unevaluated&&m!==!0?e.assign((0,vf._)`${m}[${_}]`,!0):!T&&!o.allErrors&&e.if((0,vf.not)(d),()=>e.break())})})}}};Kk.default=fq});var U$=M(Fk=>{"use strict";Object.defineProperty(Fk,"__esModule",{value:!0});var gq=$e(),hq={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:n,it:i}=t;if((0,gq.alwaysValidSchema)(i,n)){t.fail();return}let r=e.name("valid");t.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},r),t.failResult(r,()=>t.reset(),()=>t.error())},error:{message:"must NOT be valid"}};Fk.default=hq});var M$=M(Vk=>{"use strict";Object.defineProperty(Vk,"__esModule",{value:!0});var bq=Rn(),_q={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:bq.validateUnion,error:{message:"must match a schema in anyOf"}};Vk.default=_q});var j$=M(qk=>{"use strict";Object.defineProperty(qk,"__esModule",{value:!0});var yf=pe(),vq=$e(),yq={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,yf._)`{passingSchemas: ${t.passing}}`},kq={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:yq,code(t){let{gen:e,schema:n,parentSchema:i,it:r}=t;if(!Array.isArray(n))throw new Error("ajv implementation error");if(r.opts.discriminator&&i.discriminator)return;let o=n,a=e.let("valid",!1),c=e.let("passing",null),l=e.name("_valid");t.setParams({passing:c}),e.block(u),t.result(a,()=>t.reset(),()=>t.error(!0));function u(){o.forEach((d,m)=>{let f;(0,vq.alwaysValidSchema)(r,d)?e.var(l,!0):f=t.subschema({keyword:"oneOf",schemaProp:m,compositeRule:!0},l),m>0&&e.if((0,yf._)`${l} && ${a}`).assign(a,!1).assign(c,(0,yf._)`[${c}, ${m}]`).else(),e.if(l,()=>{e.assign(a,!0),e.assign(c,m),f&&t.mergeEvaluated(f,yf.Name)})})}}};qk.default=kq});var B$=M(Hk=>{"use strict";Object.defineProperty(Hk,"__esModule",{value:!0});var wq=$e(),Sq={keyword:"allOf",schemaType:"array",code(t){let{gen:e,schema:n,it:i}=t;if(!Array.isArray(n))throw new Error("ajv implementation error");let r=e.name("valid");n.forEach((o,a)=>{if((0,wq.alwaysValidSchema)(i,o))return;let c=t.subschema({keyword:"allOf",schemaProp:a},r);t.ok(r),t.mergeEvaluated(c)})}};Hk.default=Sq});var V$=M(Gk=>{"use strict";Object.defineProperty(Gk,"__esModule",{value:!0});var kf=pe(),F$=$e(),Iq={message:({params:t})=>(0,kf.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,kf._)`{failingKeyword: ${t.ifClause}}`},Eq={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:Iq,code(t){let{gen:e,parentSchema:n,it:i}=t;n.then===void 0&&n.else===void 0&&(0,F$.checkStrictMode)(i,'"if" without "then" and "else" is ignored');let r=K$(i,"then"),o=K$(i,"else");if(!r&&!o)return;let a=e.let("valid",!0),c=e.name("_valid");if(l(),t.reset(),r&&o){let d=e.let("ifClause");t.setParams({ifClause:d}),e.if(c,u("then",d),u("else",d))}else r?e.if(c,u("then")):e.if((0,kf.not)(c),u("else"));t.pass(a,()=>t.error(!0));function l(){let d=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},c);t.mergeEvaluated(d)}function u(d,m){return()=>{let f=t.subschema({keyword:d},c);e.assign(a,c),t.mergeValidEvaluated(f,a),m?e.assign(m,(0,kf._)`${d}`):t.setParams({ifClause:d})}}}};function K$(t,e){let n=t.schema[e];return n!==void 0&&!(0,F$.alwaysValidSchema)(t,n)}Gk.default=Eq});var q$=M(Zk=>{"use strict";Object.defineProperty(Zk,"__esModule",{value:!0});var Tq=$e(),Rq={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:n}){e.if===void 0&&(0,Tq.checkStrictMode)(n,`"${t}" without "if" is ignored`)}};Zk.default=Rq});var H$=M(Wk=>{"use strict";Object.defineProperty(Wk,"__esModule",{value:!0});var xq=$k(),Oq=w$(),Aq=Ck(),$q=I$(),Cq=E$(),Nq=x$(),Pq=A$(),zq=Mk(),Dq=N$(),Lq=L$(),Uq=U$(),Mq=M$(),jq=j$(),Bq=B$(),Kq=V$(),Fq=q$();function Vq(t=!1){let e=[Uq.default,Mq.default,jq.default,Bq.default,Kq.default,Fq.default,Pq.default,zq.default,Nq.default,Dq.default,Lq.default];return t?e.push(Oq.default,$q.default):e.push(xq.default,Aq.default),e.push(Cq.default),e}Wk.default=Vq});var G$=M(Jk=>{"use strict";Object.defineProperty(Jk,"__esModule",{value:!0});var at=pe(),qq={message:({schemaCode:t})=>(0,at.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,at._)`{format: ${t}}`},Hq={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:qq,code(t,e){let{gen:n,data:i,$data:r,schema:o,schemaCode:a,it:c}=t,{opts:l,errSchemaPath:u,schemaEnv:d,self:m}=c;if(!l.validateFormats)return;r?f():p();function f(){let g=n.scopeValue("formats",{ref:m.formats,code:l.code.formats}),b=n.const("fDef",(0,at._)`${g}[${a}]`),_=n.let("fType"),T=n.let("format");n.if((0,at._)`typeof ${b} == "object" && !(${b} instanceof RegExp)`,()=>n.assign(_,(0,at._)`${b}.type || "string"`).assign(T,(0,at._)`${b}.validate`),()=>n.assign(_,(0,at._)`"string"`).assign(T,b)),t.fail$data((0,at.or)($(),R()));function $(){return l.strictSchema===!1?at.nil:(0,at._)`${a} && !${T}`}function R(){let D=d.$async?(0,at._)`(${b}.async ? await ${T}(${i}) : ${T}(${i}))`:(0,at._)`${T}(${i})`,j=(0,at._)`(typeof ${T} == "function" ? ${D} : ${T}.test(${i}))`;return(0,at._)`${T} && ${T} !== true && ${_} === ${e} && !${j}`}}function p(){let g=m.formats[o];if(!g){$();return}if(g===!0)return;let[b,_,T]=R(g);b===e&&t.pass(D());function $(){if(l.strictSchema===!1){m.logger.warn(j());return}throw new Error(j());function j(){return`unknown format "${o}" ignored in schema at path "${u}"`}}function R(j){let pt=j instanceof RegExp?(0,at.regexpCode)(j):l.code.formats?(0,at._)`${l.code.formats}${(0,at.getProperty)(o)}`:void 0,Y=n.scopeValue("formats",{key:o,ref:j,code:pt});return typeof j=="object"&&!(j instanceof RegExp)?[j.type||"string",j.validate,(0,at._)`${Y}.validate`]:["string",j,Y]}function D(){if(typeof g=="object"&&!(g instanceof RegExp)&&g.async){if(!d.$async)throw new Error("async format in sync schema");return(0,at._)`await ${T}(${i})`}return typeof _=="function"?(0,at._)`${T}(${i})`:(0,at._)`${T}.test(${i})`}}}};Jk.default=Hq});var Z$=M(Yk=>{"use strict";Object.defineProperty(Yk,"__esModule",{value:!0});var Gq=G$(),Zq=[Gq.default];Yk.default=Zq});var W$=M(Zs=>{"use strict";Object.defineProperty(Zs,"__esModule",{value:!0});Zs.contentVocabulary=Zs.metadataVocabulary=void 0;Zs.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Zs.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var Y$=M(Xk=>{"use strict";Object.defineProperty(Xk,"__esModule",{value:!0});var Wq=i$(),Jq=_$(),Yq=H$(),Xq=Z$(),J$=W$(),Qq=[Wq.default,Jq.default,(0,Yq.default)(),Xq.default,J$.metadataVocabulary,J$.contentVocabulary];Xk.default=Qq});var Q$=M(wf=>{"use strict";Object.defineProperty(wf,"__esModule",{value:!0});wf.DiscrError=void 0;var X$;(function(t){t.Tag="tag",t.Mapping="mapping"})(X$||(wf.DiscrError=X$={}))});var tC=M(ew=>{"use strict";Object.defineProperty(ew,"__esModule",{value:!0});var Ws=pe(),Qk=Q$(),eC=nf(),eH=kl(),tH=$e(),nH={message:({params:{discrError:t,tagName:e}})=>t===Qk.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:n}})=>(0,Ws._)`{error: ${t}, tag: ${n}, tagValue: ${e}}`},rH={keyword:"discriminator",type:"object",schemaType:"object",error:nH,code(t){let{gen:e,data:n,schema:i,parentSchema:r,it:o}=t,{oneOf:a}=r;if(!o.opts.discriminator)throw new Error("discriminator: requires discriminator option");let c=i.propertyName;if(typeof c!="string")throw new Error("discriminator: requires propertyName");if(i.mapping)throw new Error("discriminator: mapping is not supported");if(!a)throw new Error("discriminator: requires oneOf keyword");let l=e.let("valid",!1),u=e.const("tag",(0,Ws._)`${n}${(0,Ws.getProperty)(c)}`);e.if((0,Ws._)`typeof ${u} == "string"`,()=>d(),()=>t.error(!1,{discrError:Qk.DiscrError.Tag,tag:u,tagName:c})),t.ok(l);function d(){let p=f();e.if(!1);for(let g in p)e.elseIf((0,Ws._)`${u} === ${g}`),e.assign(l,m(p[g]));e.else(),t.error(!1,{discrError:Qk.DiscrError.Mapping,tag:u,tagName:c}),e.endIf()}function m(p){let g=e.name("valid"),b=t.subschema({keyword:"oneOf",schemaProp:p},g);return t.mergeEvaluated(b,Ws.Name),g}function f(){var p;let g={},b=T(r),_=!0;for(let D=0;D<a.length;D++){let j=a[D];if(j?.$ref&&!(0,tH.schemaHasRulesButRef)(j,o.self.RULES)){let Y=j.$ref;if(j=eC.resolveRef.call(o.self,o.schemaEnv.root,o.baseId,Y),j instanceof eC.SchemaEnv&&(j=j.schema),j===void 0)throw new eH.default(o.opts.uriResolver,o.baseId,Y)}let pt=(p=j?.properties)===null||p===void 0?void 0:p[c];if(typeof pt!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${c}"`);_=_&&(b||T(j)),$(pt,D)}if(!_)throw new Error(`discriminator: "${c}" must be required`);return g;function T({required:D}){return Array.isArray(D)&&D.includes(c)}function $(D,j){if(D.const)R(D.const,j);else if(D.enum)for(let pt of D.enum)R(pt,j);else throw new Error(`discriminator: "properties/${c}" must have "const" or "enum"`)}function R(D,j){if(typeof D!="string"||D in g)throw new Error(`discriminator: "${c}" values must be unique strings`);g[D]=j}}}};ew.default=rH});var nC=M((Aie,iH)=>{iH.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var nw=M((Qe,tw)=>{"use strict";Object.defineProperty(Qe,"__esModule",{value:!0});Qe.MissingRefError=Qe.ValidationError=Qe.CodeGen=Qe.Name=Qe.nil=Qe.stringify=Qe.str=Qe._=Qe.KeywordCxt=Qe.Ajv=void 0;var oH=XA(),sH=Y$(),aH=tC(),rC=nC(),cH=["/properties"],Sf="http://json-schema.org/draft-07/schema",Js=class extends oH.default{_addVocabularies(){super._addVocabularies(),sH.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(aH.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(rC,cH):rC;this.addMetaSchema(e,Sf,!1),this.refs["http://json-schema.org/schema"]=Sf}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(Sf)?Sf:void 0)}};Qe.Ajv=Js;tw.exports=Qe=Js;tw.exports.Ajv=Js;Object.defineProperty(Qe,"__esModule",{value:!0});Qe.default=Js;var lH=yl();Object.defineProperty(Qe,"KeywordCxt",{enumerable:!0,get:function(){return lH.KeywordCxt}});var Ys=pe();Object.defineProperty(Qe,"_",{enumerable:!0,get:function(){return Ys._}});Object.defineProperty(Qe,"str",{enumerable:!0,get:function(){return Ys.str}});Object.defineProperty(Qe,"stringify",{enumerable:!0,get:function(){return Ys.stringify}});Object.defineProperty(Qe,"nil",{enumerable:!0,get:function(){return Ys.nil}});Object.defineProperty(Qe,"Name",{enumerable:!0,get:function(){return Ys.Name}});Object.defineProperty(Qe,"CodeGen",{enumerable:!0,get:function(){return Ys.CodeGen}});var uH=ef();Object.defineProperty(Qe,"ValidationError",{enumerable:!0,get:function(){return uH.default}});var dH=kl();Object.defineProperty(Qe,"MissingRefError",{enumerable:!0,get:function(){return dH.default}})});var dC=M(gr=>{"use strict";Object.defineProperty(gr,"__esModule",{value:!0});gr.formatNames=gr.fastFormats=gr.fullFormats=void 0;function fr(t,e){return{validate:t,compare:e}}gr.fullFormats={date:fr(aC,sw),time:fr(iw(!0),aw),"date-time":fr(iC(!0),lC),"iso-time":fr(iw(),cC),"iso-date-time":fr(iC(),uC),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:bH,"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:IH,uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:_H,int32:{type:"number",validate:kH},int64:{type:"number",validate:wH},float:{type:"number",validate:sC},double:{type:"number",validate:sC},password:!0,binary:!0};gr.fastFormats={...gr.fullFormats,date:fr(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,sw),time:fr(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,aw),"date-time":fr(/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,lC),"iso-time":fr(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,cC),"iso-date-time":fr(/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,uC),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i};gr.formatNames=Object.keys(gr.fullFormats);function mH(t){return t%4===0&&(t%100!==0||t%400===0)}var pH=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,fH=[0,31,28,31,30,31,30,31,31,30,31,30,31];function aC(t){let e=pH.exec(t);if(!e)return!1;let n=+e[1],i=+e[2],r=+e[3];return i>=1&&i<=12&&r>=1&&r<=(i===2&&mH(n)?29:fH[i])}function sw(t,e){if(t&&e)return t>e?1:t<e?-1:0}var rw=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function iw(t){return function(n){let i=rw.exec(n);if(!i)return!1;let r=+i[1],o=+i[2],a=+i[3],c=i[4],l=i[5]==="-"?-1:1,u=+(i[6]||0),d=+(i[7]||0);if(u>23||d>59||t&&!c)return!1;if(r<=23&&o<=59&&a<60)return!0;let m=o-d*l,f=r-u*l-(m<0?1:0);return(f===23||f===-1)&&(m===59||m===-1)&&a<61}}function aw(t,e){if(!(t&&e))return;let n=new Date("2020-01-01T"+t).valueOf(),i=new Date("2020-01-01T"+e).valueOf();if(n&&i)return n-i}function cC(t,e){if(!(t&&e))return;let n=rw.exec(t),i=rw.exec(e);if(n&&i)return t=n[1]+n[2]+n[3],e=i[1]+i[2]+i[3],t>e?1:t<e?-1:0}var ow=/t|\s/i;function iC(t){let e=iw(t);return function(i){let r=i.split(ow);return r.length===2&&aC(r[0])&&e(r[1])}}function lC(t,e){if(!(t&&e))return;let n=new Date(t).valueOf(),i=new Date(e).valueOf();if(n&&i)return n-i}function uC(t,e){if(!(t&&e))return;let[n,i]=t.split(ow),[r,o]=e.split(ow),a=sw(n,r);if(a!==void 0)return a||aw(i,o)}var gH=/\/|:/,hH=/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)(?:\?(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i;function bH(t){return gH.test(t)&&hH.test(t)}var oC=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function _H(t){return oC.lastIndex=0,oC.test(t)}var vH=-(2**31),yH=2**31-1;function kH(t){return Number.isInteger(t)&&t<=yH&&t>=vH}function wH(t){return Number.isInteger(t)}function sC(){return!0}var SH=/[^\\]\\Z/;function IH(t){if(SH.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var mC=M(Xs=>{"use strict";Object.defineProperty(Xs,"__esModule",{value:!0});Xs.formatLimitDefinition=void 0;var EH=nw(),Zn=pe(),Si=Zn.operators,If={formatMaximum:{okStr:"<=",ok:Si.LTE,fail:Si.GT},formatMinimum:{okStr:">=",ok:Si.GTE,fail:Si.LT},formatExclusiveMaximum:{okStr:"<",ok:Si.LT,fail:Si.GTE},formatExclusiveMinimum:{okStr:">",ok:Si.GT,fail:Si.LTE}},TH={message:({keyword:t,schemaCode:e})=>(0,Zn.str)`should be ${If[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,Zn._)`{comparison: ${If[t].okStr}, limit: ${e}}`};Xs.formatLimitDefinition={keyword:Object.keys(If),type:"string",schemaType:"string",$data:!0,error:TH,code(t){let{gen:e,data:n,schemaCode:i,keyword:r,it:o}=t,{opts:a,self:c}=o;if(!a.validateFormats)return;let l=new EH.KeywordCxt(o,c.RULES.all.format.definition,"format");l.$data?u():d();function u(){let f=e.scopeValue("formats",{ref:c.formats,code:a.code.formats}),p=e.const("fmt",(0,Zn._)`${f}[${l.schemaCode}]`);t.fail$data((0,Zn.or)((0,Zn._)`typeof ${p} != "object"`,(0,Zn._)`${p} instanceof RegExp`,(0,Zn._)`typeof ${p}.compare != "function"`,m(p)))}function d(){let f=l.schema,p=c.formats[f];if(!p||p===!0)return;if(typeof p!="object"||p instanceof RegExp||typeof p.compare!="function")throw new Error(`"${r}": format "${f}" does not define "compare" function`);let g=e.scopeValue("formats",{key:f,ref:p,code:a.code.formats?(0,Zn._)`${a.code.formats}${(0,Zn.getProperty)(f)}`:void 0});t.fail$data(m(g))}function m(f){return(0,Zn._)`${f}.compare(${n}, ${i}) ${If[r].fail} 0`}},dependencies:["format"]};var RH=t=>(t.addKeyword(Xs.formatLimitDefinition),t);Xs.default=RH});var hC=M((Dl,gC)=>{"use strict";Object.defineProperty(Dl,"__esModule",{value:!0});var Qs=dC(),xH=mC(),cw=pe(),pC=new cw.Name("fullFormats"),OH=new cw.Name("fastFormats"),lw=(t,e={keywords:!0})=>{if(Array.isArray(e))return fC(t,e,Qs.fullFormats,pC),t;let[n,i]=e.mode==="fast"?[Qs.fastFormats,OH]:[Qs.fullFormats,pC],r=e.formats||Qs.formatNames;return fC(t,r,n,i),e.keywords&&(0,xH.default)(t),t};lw.get=(t,e="full")=>{let i=(e==="fast"?Qs.fastFormats:Qs.fullFormats)[t];if(!i)throw new Error(`Unknown format "${t}"`);return i};function fC(t,e,n,i){var r,o;(r=(o=t.opts.code).formats)!==null&&r!==void 0||(o.formats=(0,cw._)`require("ajv-formats/dist/formats").${i}`);for(let a of e)t.addFormat(a,n[a])}gC.exports=Dl=lw;Object.defineProperty(Dl,"__esModule",{value:!0});Dl.default=lw});var cu=M(aI=>{var Pg=class extends Error{constructor(e,n,i){super(i),Error.captureStackTrace(this,this.constructor),this.name=this.constructor.name,this.code=n,this.exitCode=e,this.nestedError=void 0}},sI=class extends Pg{constructor(e){super(1,"commander.invalidArgument",e),Error.captureStackTrace(this,this.constructor),this.name=this.constructor.name}};aI.CommanderError=Pg;aI.InvalidArgumentError=sI});var zg=M(lI=>{var{InvalidArgumentError:PJ}=cu(),cI=class{constructor(e,n){switch(this.description=n||"",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,n){return n===this.defaultValue||!Array.isArray(n)?[e]:n.concat(e)}default(e,n){return this.defaultValue=e,this.defaultValueDescription=n,this}argParser(e){return this.parseArg=e,this}choices(e){return this.argChoices=e.slice(),this.parseArg=(n,i)=>{if(!this.argChoices.includes(n))throw new PJ(`Allowed choices are ${this.argChoices.join(", ")}.`);return this.variadic?this._concatValue(n,i):n},this}argRequired(){return this.required=!0,this}argOptional(){return this.required=!1,this}};function zJ(t){let e=t.name()+(t.variadic===!0?"...":"");return t.required?"<"+e+">":"["+e+"]"}lI.Argument=cI;lI.humanReadableArgName=zJ});var mI=M(dI=>{var{humanReadableArgName:DJ}=zg(),uI=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 n=e.commands.filter(r=>!r._hidden),i=e._getHelpCommand();return i&&!i._hidden&&n.push(i),this.sortSubcommands&&n.sort((r,o)=>r.name().localeCompare(o.name())),n}compareOptions(e,n){let i=r=>r.short?r.short.replace(/^-/,""):r.long.replace(/^--/,"");return i(e).localeCompare(i(n))}visibleOptions(e){let n=e.options.filter(r=>!r.hidden),i=e._getHelpOption();if(i&&!i.hidden){let r=i.short&&e._findOption(i.short),o=i.long&&e._findOption(i.long);!r&&!o?n.push(i):i.long&&!o?n.push(e.createOption(i.long,i.description)):i.short&&!r&&n.push(e.createOption(i.short,i.description))}return this.sortOptions&&n.sort(this.compareOptions),n}visibleGlobalOptions(e){if(!this.showGlobalOptions)return[];let n=[];for(let i=e.parent;i;i=i.parent){let r=i.options.filter(o=>!o.hidden);n.push(...r)}return this.sortOptions&&n.sort(this.compareOptions),n}visibleArguments(e){return e._argsDescription&&e.registeredArguments.forEach(n=>{n.description=n.description||e._argsDescription[n.name()]||""}),e.registeredArguments.find(n=>n.description)?e.registeredArguments:[]}subcommandTerm(e){let n=e.registeredArguments.map(i=>DJ(i)).join(" ");return e._name+(e._aliases[0]?"|"+e._aliases[0]:"")+(e.options.length?" [options]":"")+(n?" "+n:"")}optionTerm(e){return e.flags}argumentTerm(e){return e.name()}longestSubcommandTermLength(e,n){return n.visibleCommands(e).reduce((i,r)=>Math.max(i,this.displayWidth(n.styleSubcommandTerm(n.subcommandTerm(r)))),0)}longestOptionTermLength(e,n){return n.visibleOptions(e).reduce((i,r)=>Math.max(i,this.displayWidth(n.styleOptionTerm(n.optionTerm(r)))),0)}longestGlobalOptionTermLength(e,n){return n.visibleGlobalOptions(e).reduce((i,r)=>Math.max(i,this.displayWidth(n.styleOptionTerm(n.optionTerm(r)))),0)}longestArgumentTermLength(e,n){return n.visibleArguments(e).reduce((i,r)=>Math.max(i,this.displayWidth(n.styleArgumentTerm(n.argumentTerm(r)))),0)}commandUsage(e){let n=e._name;e._aliases[0]&&(n=n+"|"+e._aliases[0]);let i="";for(let r=e.parent;r;r=r.parent)i=r.name()+" "+i;return i+n+" "+e.usage()}commandDescription(e){return e.description()}subcommandDescription(e){return e.summary()||e.description()}optionDescription(e){let n=[];return e.argChoices&&n.push(`choices: ${e.argChoices.map(i=>JSON.stringify(i)).join(", ")}`),e.defaultValue!==void 0&&(e.required||e.optional||e.isBoolean()&&typeof e.defaultValue=="boolean")&&n.push(`default: ${e.defaultValueDescription||JSON.stringify(e.defaultValue)}`),e.presetArg!==void 0&&e.optional&&n.push(`preset: ${JSON.stringify(e.presetArg)}`),e.envVar!==void 0&&n.push(`env: ${e.envVar}`),n.length>0?`${e.description} (${n.join(", ")})`:e.description}argumentDescription(e){let n=[];if(e.argChoices&&n.push(`choices: ${e.argChoices.map(i=>JSON.stringify(i)).join(", ")}`),e.defaultValue!==void 0&&n.push(`default: ${e.defaultValueDescription||JSON.stringify(e.defaultValue)}`),n.length>0){let i=`(${n.join(", ")})`;return e.description?`${e.description} ${i}`:i}return e.description}formatHelp(e,n){let i=n.padWidth(e,n),r=n.helpWidth??80;function o(m,f){return n.formatItem(m,i,f,n)}let a=[`${n.styleTitle("Usage:")} ${n.styleUsage(n.commandUsage(e))}`,""],c=n.commandDescription(e);c.length>0&&(a=a.concat([n.boxWrap(n.styleCommandDescription(c),r),""]));let l=n.visibleArguments(e).map(m=>o(n.styleArgumentTerm(n.argumentTerm(m)),n.styleArgumentDescription(n.argumentDescription(m))));l.length>0&&(a=a.concat([n.styleTitle("Arguments:"),...l,""]));let u=n.visibleOptions(e).map(m=>o(n.styleOptionTerm(n.optionTerm(m)),n.styleOptionDescription(n.optionDescription(m))));if(u.length>0&&(a=a.concat([n.styleTitle("Options:"),...u,""])),n.showGlobalOptions){let m=n.visibleGlobalOptions(e).map(f=>o(n.styleOptionTerm(n.optionTerm(f)),n.styleOptionDescription(n.optionDescription(f))));m.length>0&&(a=a.concat([n.styleTitle("Global Options:"),...m,""]))}let d=n.visibleCommands(e).map(m=>o(n.styleSubcommandTerm(n.subcommandTerm(m)),n.styleSubcommandDescription(n.subcommandDescription(m))));return d.length>0&&(a=a.concat([n.styleTitle("Commands:"),...d,""])),a.join(`
|
|
11
|
-
`)}displayWidth(e){return Oz(e).length}styleTitle(e){return e}styleUsage(e){return e.split(" ").map(n=>n==="[options]"?this.styleOptionText(n):n==="[command]"?this.styleSubcommandText(n):n[0]==="["||n[0]==="<"?this.styleArgumentText(n):this.styleCommandText(n)).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(n=>n==="[options]"?this.styleOptionText(n):n[0]==="["||n[0]==="<"?this.styleArgumentText(n):this.styleSubcommandText(n)).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,n){return Math.max(n.longestOptionTermLength(e,n),n.longestGlobalOptionTermLength(e,n),n.longestSubcommandTermLength(e,n),n.longestArgumentTermLength(e,n))}preformatted(e){return/\n[^\S\r\n]/.test(e)}formatItem(e,n,i,r){let a=" ".repeat(2);if(!i)return a+e;let c=e.padEnd(n+e.length-r.displayWidth(e)),l=2,d=(this.helpWidth??80)-n-l-2,m;return d<this.minWidthToWrap||r.preformatted(i)?m=i:m=r.boxWrap(i,d).replace(/\n/g,`
|
|
12
|
-
`+" ".repeat(n+l)),a+c+" ".repeat(l)+m.replace(/\n/g,`
|
|
13
|
-
${a}`)}boxWrap(e,n){if(n<this.minWidthToWrap)return e;let i=e.split(/\r\n|\n/),r=/[\s]*[^\s]+/g,o=[];return i.forEach(a=>{let c=a.match(r);if(c===null){o.push("");return}let l=[c.shift()],u=this.displayWidth(l[0]);c.forEach(d=>{let m=this.displayWidth(d);if(u+m<=n){l.push(d),u+=m;return}o.push(l.join(""));let f=d.trimStart();l=[f],u=this.displayWidth(f)}),o.push(l.join(""))}),o.join(`
|
|
14
|
-
`)}};function Oz(t){let e=/\x1b\[\d*(;\d*)*m/g;return t.replace(e,"")}dI.Help=uI;dI.stripColor=Oz});var hI=M(gI=>{var{InvalidArgumentError:LJ}=cu(),pI=class{constructor(e,n){this.flags=e,this.description=n||"",this.required=e.includes("<"),this.optional=e.includes("["),this.variadic=/\w\.\.\.[>\]]$/.test(e),this.mandatory=!1;let i=UJ(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,n){return this.defaultValue=e,this.defaultValueDescription=n,this}preset(e){return this.presetArg=e,this}conflicts(e){return this.conflictsWith=this.conflictsWith.concat(e),this}implies(e){let n=e;return typeof e=="string"&&(n={[e]:!0}),this.implied=Object.assign(this.implied||{},n),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,n){return n===this.defaultValue||!Array.isArray(n)?[e]:n.concat(e)}choices(e){return this.argChoices=e.slice(),this.parseArg=(n,i)=>{if(!this.argChoices.includes(n))throw new LJ(`Allowed choices are ${this.argChoices.join(", ")}.`);return this.variadic?this._concatValue(n,i):n},this}name(){return this.long?this.long.replace(/^--/,""):this.short.replace(/^-/,"")}attributeName(){return this.negate?Az(this.name().replace(/^no-/,"")):Az(this.name())}is(e){return this.short===e||this.long===e}isBoolean(){return!this.required&&!this.optional&&!this.negate}},fI=class{constructor(e){this.positiveOptions=new Map,this.negativeOptions=new Map,this.dualOptions=new Set,e.forEach(n=>{n.negate?this.negativeOptions.set(n.attributeName(),n):this.positiveOptions.set(n.attributeName(),n)}),this.negativeOptions.forEach((n,i)=>{this.positiveOptions.has(i)&&this.dualOptions.add(i)})}valueFromOption(e,n){let i=n.attributeName();if(!this.dualOptions.has(i))return!0;let r=this.negativeOptions.get(i).presetArg,o=r!==void 0?r:!1;return n.negate===(o===e)}};function Az(t){return t.split("-").reduce((e,n)=>e+n[0].toUpperCase()+n.slice(1))}function UJ(t){let e,n,i=/^-[^-]$/,r=/^--[^-]/,o=t.split(/[ |,]+/).concat("guard");if(i.test(o[0])&&(e=o.shift()),r.test(o[0])&&(n=o.shift()),!e&&i.test(o[0])&&(e=o.shift()),!e&&r.test(o[0])&&(e=n,n=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}
|
|
15
|
-
- a short flag is a single dash and a single character
|
|
16
|
-
- either use a single dash and a single character (for a short flag)
|
|
17
|
-
- or use a double dash for a long option (and can have two, like '--ws, --workspace')`):i.test(a)?new Error(`${c}
|
|
18
|
-
- too many short flags`):r.test(a)?new Error(`${c}
|
|
19
|
-
- too many long flags`):new Error(`${c}
|
|
20
|
-
- unrecognised flag format`)}if(e===void 0&&n===void 0)throw new Error(`option creation failed due to no flags found in '${t}'.`);return{shortFlag:e,longFlag:n}}gI.Option=pI;gI.DualOptions=fI});var Cz=M($z=>{function MJ(t,e){if(Math.abs(t.length-e.length)>3)return Math.max(t.length,e.length);let n=[];for(let i=0;i<=t.length;i++)n[i]=[i];for(let i=0;i<=e.length;i++)n[0][i]=i;for(let i=1;i<=e.length;i++)for(let r=1;r<=t.length;r++){let o=1;t[r-1]===e[i-1]?o=0:o=1,n[r][i]=Math.min(n[r-1][i]+1,n[r][i-1]+1,n[r-1][i-1]+o),r>1&&i>1&&t[r-1]===e[i-2]&&t[r-2]===e[i-1]&&(n[r][i]=Math.min(n[r][i],n[r-2][i-2]+1))}return n[t.length][e.length]}function jJ(t,e){if(!e||e.length===0)return"";e=Array.from(new Set(e));let n=t.startsWith("--");n&&(t=t.slice(2),e=e.map(a=>a.slice(2)));let i=[],r=3,o=.4;return e.forEach(a=>{if(a.length<=1)return;let c=MJ(t,a),l=Math.max(t.length,a.length);(l-c)/l>o&&(c<r?(r=c,i=[a]):c===r&&i.push(a))}),i.sort((a,c)=>a.localeCompare(c)),n&&(i=i.map(a=>`--${a}`)),i.length>1?`
|
|
21
|
-
(Did you mean one of ${i.join(", ")}?)`:i.length===1?`
|
|
22
|
-
(Did you mean ${i[0]}?)`:""}$z.suggestSimilar=jJ});var Dz=M(kI=>{var BJ=Ma("node:events").EventEmitter,bI=Ma("node:child_process"),qr=Ma("node:path"),Dg=Ma("node:fs"),Le=Ma("node:process"),{Argument:KJ,humanReadableArgName:FJ}=zg(),{CommanderError:_I}=cu(),{Help:VJ,stripColor:qJ}=mI(),{Option:Nz,DualOptions:HJ}=hI(),{suggestSimilar:Pz}=Cz(),vI=class t extends BJ{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:n=>Le.stdout.write(n),writeErr:n=>Le.stderr.write(n),outputError:(n,i)=>i(n),getOutHelpWidth:()=>Le.stdout.isTTY?Le.stdout.columns:void 0,getErrHelpWidth:()=>Le.stderr.isTTY?Le.stderr.columns:void 0,getOutHasColors:()=>yI()??(Le.stdout.isTTY&&Le.stdout.hasColors?.()),getErrHasColors:()=>yI()??(Le.stderr.isTTY&&Le.stderr.hasColors?.()),stripColor:n=>qJ(n)},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 n=this;n;n=n.parent)e.push(n);return e}command(e,n,i){let r=n,o=i;typeof r=="object"&&r!==null&&(o=r,r=null),o=o||{};let[,a,c]=e.match(/([^ ]+) *(.*)/),l=this.createCommand(a);return r&&(l.description(r),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),r?this:l}createCommand(e){return new t(e)}createHelp(){return Object.assign(new VJ,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,n){if(!e._name)throw new Error(`Command passed to .addCommand() must have a name
|
|
23
|
-
- specify the name in Command constructor or using .name()`);return n=n||{},n.isDefault&&(this._defaultCommandName=e._name),(n.noHelp||n.hidden)&&(e._hidden=!0),this._registerCommand(e),e.parent=this,e._checkForBrokenPassThrough(),this}createArgument(e,n){return new KJ(e,n)}argument(e,n,i,r){let o=this.createArgument(e,n);return typeof i=="function"?o.default(r).argParser(i):o.default(i),this.addArgument(o),this}arguments(e){return e.trim().split(/ +/).forEach(n=>{this.argument(n)}),this}addArgument(e){let n=this.registeredArguments.slice(-1)[0];if(n&&n.variadic)throw new Error(`only the last argument can be variadic '${n.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,n){if(typeof e=="boolean")return this._addImplicitHelpCommand=e,this;e=e??"help [command]";let[,i,r]=e.match(/([^ ]+) *(.*)/),o=n??"display help for command",a=this.createCommand(i);return a.helpOption(!1),r&&a.arguments(r),o&&a.description(o),this._addImplicitHelpCommand=!0,this._helpCommand=a,this}addHelpCommand(e,n){return typeof e!="object"?(this.helpCommand(e,n),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,n){let i=["preSubcommand","preAction","postAction"];if(!i.includes(e))throw new Error(`Unexpected value for event passed to hook : '${e}'.
|
|
24
|
-
Expecting one of '${i.join("', '")}'`);return this._lifeCycleHooks[e]?this._lifeCycleHooks[e].push(n):this._lifeCycleHooks[e]=[n],this}exitOverride(e){return e?this._exitCallback=e:this._exitCallback=n=>{if(n.code!=="commander.executeSubCommandAsync")throw n},this}_exit(e,n,i){this._exitCallback&&this._exitCallback(new _I(e,n,i)),Le.exit(e)}action(e){let n=i=>{let r=this.registeredArguments.length,o=i.slice(0,r);return this._storeOptionsAsProperties?o[r]=this:o[r]=this.opts(),o.push(this),e.apply(this,o)};return this._actionHandler=n,this}createOption(e,n){return new Nz(e,n)}_callParseArg(e,n,i,r){try{return e.parseArg(n,i)}catch(o){if(o.code==="commander.invalidArgument"){let a=`${r} ${o.message}`;this.error(a,{exitCode:o.exitCode,code:o.code})}throw o}}_registerOption(e){let n=e.short&&this._findOption(e.short)||e.long&&this._findOption(e.long);if(n){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}'
|
|
25
|
-
- already used by option '${n.flags}'`)}this.options.push(e)}_registerCommand(e){let n=r=>[r.name()].concat(r.aliases()),i=n(e).find(r=>this._findCommand(r));if(i){let r=n(this._findCommand(i)).join("|"),o=n(e).join("|");throw new Error(`cannot add command '${o}' as already have command '${r}'`)}this.commands.push(e)}addOption(e){this._registerOption(e);let n=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 r=(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:"+n,o=>{let a=`error: option '${e.flags}' argument '${o}' is invalid.`;r(o,a,"cli")}),e.envVar&&this.on("optionEnv:"+n,o=>{let a=`error: option '${e.flags}' value '${o}' from env '${e.envVar}' is invalid.`;r(o,a,"env")}),this}_optionEx(e,n,i,r,o){if(typeof n=="object"&&n instanceof Nz)throw new Error("To add an Option object use addOption() instead of option() or requiredOption()");let a=this.createOption(n,i);if(a.makeOptionMandatory(!!e.mandatory),typeof r=="function")a.default(o).argParser(r);else if(r instanceof RegExp){let c=r;r=(l,u)=>{let d=c.exec(l);return d?d[0]:u},a.default(o).argParser(r)}else a.default(r);return this.addOption(a)}option(e,n,i,r){return this._optionEx({},e,n,i,r)}requiredOption(e,n,i,r){return this._optionEx({mandatory:!0},e,n,i,r)}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,n){return this.setOptionValueWithSource(e,n,void 0)}setOptionValueWithSource(e,n,i){return this._storeOptionsAsProperties?this[e]=n:this._optionValues[e]=n,this._optionValueSources[e]=i,this}getOptionValueSource(e){return this._optionValueSources[e]}getOptionValueSourceWithGlobals(e){let n;return this._getCommandAndAncestors().forEach(i=>{i.getOptionValueSource(e)!==void 0&&(n=i.getOptionValueSource(e))}),n}_prepareUserArgs(e,n){if(e!==void 0&&!Array.isArray(e))throw new Error("first parameter to parse must be array or undefined");if(n=n||{},e===void 0&&n.from===void 0){Le.versions?.electron&&(n.from="electron");let r=Le.execArgv??[];(r.includes("-e")||r.includes("--eval")||r.includes("-p")||r.includes("--print"))&&(n.from="eval")}e===void 0&&(e=Le.argv),this.rawArgs=e.slice();let i;switch(n.from){case void 0:case"node":this._scriptPath=e[1],i=e.slice(2);break;case"electron":Le.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: '${n.from}' }`)}return!this._name&&this._scriptPath&&this.nameFromFilename(this._scriptPath),this._name=this._name||"program",i}parse(e,n){this._prepareForParse();let i=this._prepareUserArgs(e,n);return this._parseCommand([],i),this}async parseAsync(e,n){this._prepareForParse();let i=this._prepareUserArgs(e,n);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.
|
|
26
|
-
- 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,n,i){if(Dg.existsSync(e))return;let r=n?`searched for local subcommand relative to directory '${n}'`:"no directory for search for local subcommand, use .executableDir() to supply a custom directory",o=`'${e}' does not exist
|
|
27
|
-
- if '${i}' is not meant to be an executable command, remove description parameter from '.command()' and use '.description()' instead
|
|
28
|
-
- if the default executable name is not suitable, use the executableFile option to supply a custom name or path
|
|
29
|
-
- ${r}`;throw new Error(o)}_executeSubCommand(e,n){n=n.slice();let i=!1,r=[".js",".ts",".tsx",".mjs",".cjs"];function o(d,m){let f=qr.resolve(d,m);if(Dg.existsSync(f))return f;if(r.includes(qr.extname(m)))return;let p=r.find(g=>Dg.existsSync(`${f}${g}`));if(p)return`${f}${p}`}this._checkForMissingMandatoryOptions(),this._checkForConflictingOptions();let a=e._executableFile||`${this._name}-${e._name}`,c=this._executableDir||"";if(this._scriptPath){let d;try{d=Dg.realpathSync(this._scriptPath)}catch{d=this._scriptPath}c=qr.resolve(qr.dirname(d),c)}if(c){let d=o(c,a);if(!d&&!e._executableFile&&this._scriptPath){let m=qr.basename(this._scriptPath,qr.extname(this._scriptPath));m!==this._name&&(d=o(c,`${m}-${e._name}`))}a=d||a}i=r.includes(qr.extname(a));let l;Le.platform!=="win32"?i?(n.unshift(a),n=zz(Le.execArgv).concat(n),l=bI.spawn(Le.argv[0],n,{stdio:"inherit"})):l=bI.spawn(a,n,{stdio:"inherit"}):(this._checkForMissingExecutable(a,c,e._name),n.unshift(a),n=zz(Le.execArgv).concat(n),l=bI.spawn(Le.execPath,n,{stdio:"inherit"})),l.killed||["SIGUSR1","SIGUSR2","SIGTERM","SIGINT","SIGHUP"].forEach(m=>{Le.on(m,()=>{l.killed===!1&&l.exitCode===null&&l.kill(m)})});let u=this._exitCallback;l.on("close",d=>{d=d??1,u?u(new _I(d,"commander.executeSubCommandAsync","(close)")):Le.exit(d)}),l.on("error",d=>{if(d.code==="ENOENT")this._checkForMissingExecutable(a,c,e._name);else if(d.code==="EACCES")throw new Error(`'${a}' not executable`);if(!u)Le.exit(1);else{let m=new _I(1,"commander.executeSubCommandAsync","(error)");m.nestedError=d,u(m)}}),this.runningCommand=l}_dispatchSubcommand(e,n,i){let r=this._findCommand(e);r||this.help({error:!0}),r._prepareForParse();let o;return o=this._chainOrCallSubCommandHook(o,r,"preSubcommand"),o=this._chainOrCall(o,()=>{if(r._executableHandler)this._executeSubCommand(r,n.concat(i));else return r._parseCommand(n,i)}),o}_dispatchHelpCommand(e){e||this.help();let n=this._findCommand(e);return n&&!n._executableHandler&&n.help(),this._dispatchSubcommand(e,[],[this._getHelpOption()?.long??this._getHelpOption()?.short??"--help"])}_checkNumberOfArguments(){this.registeredArguments.forEach((e,n)=>{e.required&&this.args[n]==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,r,o)=>{let a=r;if(r!==null&&i.parseArg){let c=`error: command-argument value '${r}' is invalid for argument '${i.name()}'.`;a=this._callParseArg(i,r,o,c)}return a};this._checkNumberOfArguments();let n=[];this.registeredArguments.forEach((i,r)=>{let o=i.defaultValue;i.variadic?r<this.args.length?(o=this.args.slice(r),i.parseArg&&(o=o.reduce((a,c)=>e(i,c,a),i.defaultValue))):o===void 0&&(o=[]):r<this.args.length&&(o=this.args[r],i.parseArg&&(o=e(i,o,i.defaultValue))),n[r]=o}),this.processedArgs=n}_chainOrCall(e,n){return e&&e.then&&typeof e.then=="function"?e.then(()=>n()):n()}_chainOrCallHooks(e,n){let i=e,r=[];return this._getCommandAndAncestors().reverse().filter(o=>o._lifeCycleHooks[n]!==void 0).forEach(o=>{o._lifeCycleHooks[n].forEach(a=>{r.push({hookedCommand:o,callback:a})})}),n==="postAction"&&r.reverse(),r.forEach(o=>{i=this._chainOrCall(i,()=>o.callback(o.hookedCommand,this))}),i}_chainOrCallSubCommandHook(e,n,i){let r=e;return this._lifeCycleHooks[i]!==void 0&&this._lifeCycleHooks[i].forEach(o=>{r=this._chainOrCall(r,()=>o(this,n))}),r}_parseCommand(e,n){let i=this.parseOptions(n);if(this._parseOptionsEnv(),this._parseOptionsImplied(),e=e.concat(i.operands),n=i.unknown,this.args=e.concat(n),e&&this._findCommand(e[0]))return this._dispatchSubcommand(e[0],e.slice(1),n);if(this._getHelpCommand()&&e[0]===this._getHelpCommand().name())return this._dispatchHelpCommand(e[1]);if(this._defaultCommandName)return this._outputHelpIfRequested(n),this._dispatchSubcommand(this._defaultCommandName,e,n);this.commands.length&&this.args.length===0&&!this._actionHandler&&!this._defaultCommandName&&this.help({error:!0}),this._outputHelpIfRequested(i.unknown),this._checkForMissingMandatoryOptions(),this._checkForConflictingOptions();let r=()=>{i.unknown.length>0&&this.unknownOption(i.unknown[0])},o=`command:${this.name()}`;if(this._actionHandler){r(),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,n)})),a=this._chainOrCallHooks(a,"postAction"),a}if(this.parent&&this.parent.listenerCount(o))r(),this._processArguments(),this.parent.emit(o,e,n);else if(e.length){if(this._findCommand("*"))return this._dispatchSubcommand("*",e,n);this.listenerCount("command:*")?this.emit("command:*",e,n):this.commands.length?this.unknownCommand():(r(),this._processArguments())}else this.commands.length?(r(),this.help({error:!0})):(r(),this._processArguments())}_findCommand(e){if(e)return this.commands.find(n=>n._name===e||n._aliases.includes(e))}_findOption(e){return this.options.find(n=>n.is(e))}_checkForMissingMandatoryOptions(){this._getCommandAndAncestors().forEach(e=>{e.options.forEach(n=>{n.mandatory&&e.getOptionValue(n.attributeName())===void 0&&e.missingMandatoryOptionValue(n)})})}_checkForConflictingLocalOptions(){let e=this.options.filter(i=>{let r=i.attributeName();return this.getOptionValue(r)===void 0?!1:this.getOptionValueSource(r)!=="default"});e.filter(i=>i.conflictsWith.length>0).forEach(i=>{let r=e.find(o=>i.conflictsWith.includes(o.attributeName()));r&&this._conflictingOption(i,r)})}_checkForConflictingOptions(){this._getCommandAndAncestors().forEach(e=>{e._checkForConflictingLocalOptions()})}parseOptions(e){let n=[],i=[],r=n,o=e.slice();function a(l){return l.length>1&&l[0]==="-"}let c=null;for(;o.length;){let l=o.shift();if(l==="--"){r===i&&r.push(l),r.push(...o);break}if(c&&!a(l)){this.emit(`option:${c.name()}`,l);continue}if(c=null,a(l)){let u=this._findOption(l);if(u){if(u.required){let d=o.shift();d===void 0&&this.optionMissingArgument(u),this.emit(`option:${u.name()}`,d)}else if(u.optional){let d=null;o.length>0&&!a(o[0])&&(d=o.shift()),this.emit(`option:${u.name()}`,d)}else this.emit(`option:${u.name()}`);c=u.variadic?u:null;continue}}if(l.length>2&&l[0]==="-"&&l[1]!=="-"){let u=this._findOption(`-${l[1]}`);if(u){u.required||u.optional&&this._combineFlagAndOptionalValue?this.emit(`option:${u.name()}`,l.slice(2)):(this.emit(`option:${u.name()}`),o.unshift(`-${l.slice(2)}`));continue}}if(/^--[^=]+=/.test(l)){let u=l.indexOf("="),d=this._findOption(l.slice(0,u));if(d&&(d.required||d.optional)){this.emit(`option:${d.name()}`,l.slice(u+1));continue}}if(a(l)&&(r=i),(this._enablePositionalOptions||this._passThroughOptions)&&n.length===0&&i.length===0){if(this._findCommand(l)){n.push(l),o.length>0&&i.push(...o);break}else if(this._getHelpCommand()&&l===this._getHelpCommand().name()){n.push(l),o.length>0&&n.push(...o);break}else if(this._defaultCommandName){i.push(l),o.length>0&&i.push(...o);break}}if(this._passThroughOptions){r.push(l),o.length>0&&r.push(...o);break}r.push(l)}return{operands:n,unknown:i}}opts(){if(this._storeOptionsAsProperties){let e={},n=this.options.length;for(let i=0;i<n;i++){let r=this.options[i].attributeName();e[r]=r===this._versionOptionName?this._version:this[r]}return e}return this._optionValues}optsWithGlobals(){return this._getCommandAndAncestors().reduce((e,n)=>Object.assign(e,n.opts()),{})}error(e,n){this._outputConfiguration.outputError(`${e}
|
|
30
|
-
`,this._outputConfiguration.writeErr),typeof this._showHelpAfterError=="string"?this._outputConfiguration.writeErr(`${this._showHelpAfterError}
|
|
31
|
-
`):this._showHelpAfterError&&(this._outputConfiguration.writeErr(`
|
|
32
|
-
`),this.outputHelp({error:!0}));let i=n||{},r=i.exitCode||1,o=i.code||"commander.error";this._exit(r,o,e)}_parseOptionsEnv(){this.options.forEach(e=>{if(e.envVar&&e.envVar in Le.env){let n=e.attributeName();(this.getOptionValue(n)===void 0||["default","config","env"].includes(this.getOptionValueSource(n)))&&(e.required||e.optional?this.emit(`optionEnv:${e.name()}`,Le.env[e.envVar]):this.emit(`optionEnv:${e.name()}`))}})}_parseOptionsImplied(){let e=new HJ(this.options),n=i=>this.getOptionValue(i)!==void 0&&!["default","implied"].includes(this.getOptionValueSource(i));this.options.filter(i=>i.implied!==void 0&&n(i.attributeName())&&e.valueFromOption(this.getOptionValue(i.attributeName()),i)).forEach(i=>{Object.keys(i.implied).filter(r=>!n(r)).forEach(r=>{this.setOptionValueWithSource(r,i.implied[r],"implied")})})}missingArgument(e){let n=`error: missing required argument '${e}'`;this.error(n,{code:"commander.missingArgument"})}optionMissingArgument(e){let n=`error: option '${e.flags}' argument missing`;this.error(n,{code:"commander.optionMissingArgument"})}missingMandatoryOptionValue(e){let n=`error: required option '${e.flags}' not specified`;this.error(n,{code:"commander.missingMandatoryOptionValue"})}_conflictingOption(e,n){let i=a=>{let c=a.attributeName(),l=this.getOptionValue(c),u=this.options.find(m=>m.negate&&c===m.attributeName()),d=this.options.find(m=>!m.negate&&c===m.attributeName());return u&&(u.presetArg===void 0&&l===!1||u.presetArg!==void 0&&l===u.presetArg)?u:d||a},r=a=>{let c=i(a),l=c.attributeName();return this.getOptionValueSource(l)==="env"?`environment variable '${c.envVar}'`:`option '${c.flags}'`},o=`error: ${r(e)} cannot be used with ${r(n)}`;this.error(o,{code:"commander.conflictingOption"})}unknownOption(e){if(this._allowUnknownOption)return;let n="";if(e.startsWith("--")&&this._showSuggestionAfterError){let r=[],o=this;do{let a=o.createHelp().visibleOptions(o).filter(c=>c.long).map(c=>c.long);r=r.concat(a),o=o.parent}while(o&&!o._enablePositionalOptions);n=Pz(e,r)}let i=`error: unknown option '${e}'${n}`;this.error(i,{code:"commander.unknownOption"})}_excessArguments(e){if(this._allowExcessArguments)return;let n=this.registeredArguments.length,i=n===1?"":"s",o=`error: too many arguments${this.parent?` for '${this.name()}'`:""}. Expected ${n} argument${i} but got ${e.length}.`;this.error(o,{code:"commander.excessArguments"})}unknownCommand(){let e=this.args[0],n="";if(this._showSuggestionAfterError){let r=[];this.createHelp().visibleCommands(this).forEach(o=>{r.push(o.name()),o.alias()&&r.push(o.alias())}),n=Pz(e,r)}let i=`error: unknown command '${e}'${n}`;this.error(i,{code:"commander.unknownCommand"})}version(e,n,i){if(e===void 0)return this._version;this._version=e,n=n||"-V, --version",i=i||"output the version number";let r=this.createOption(n,i);return this._versionOptionName=r.attributeName(),this._registerOption(r),this.on("option:"+r.name(),()=>{this._outputConfiguration.writeOut(`${e}
|
|
33
|
-
`),this._exit(0,"commander.version",e)}),this}description(e,n){return e===void 0&&n===void 0?this._description:(this._description=e,n&&(this._argsDescription=n),this)}summary(e){return e===void 0?this._summary:(this._summary=e,this)}alias(e){if(e===void 0)return this._aliases[0];let n=this;if(this.commands.length!==0&&this.commands[this.commands.length-1]._executableHandler&&(n=this.commands[this.commands.length-1]),e===n._name)throw new Error("Command alias can't be the same as its name");let i=this.parent?._findCommand(e);if(i){let r=[i.name()].concat(i.aliases()).join("|");throw new Error(`cannot add alias '${e}' to command '${this.name()}' as already have command '${r}'`)}return n._aliases.push(e),this}aliases(e){return e===void 0?this._aliases:(e.forEach(n=>this.alias(n)),this)}usage(e){if(e===void 0){if(this._usage)return this._usage;let n=this.registeredArguments.map(i=>FJ(i));return[].concat(this.options.length||this._helpOption!==null?"[options]":[],this.commands.length?"[command]":[],this.registeredArguments.length?n:[]).join(" ")}return this._usage=e,this}name(e){return e===void 0?this._name:(this._name=e,this)}nameFromFilename(e){return this._name=qr.basename(e,qr.extname(e)),this}executableDir(e){return e===void 0?this._executableDir:(this._executableDir=e,this)}helpInformation(e){let n=this.createHelp(),i=this._getOutputContext(e);n.prepareContext({error:i.error,helpWidth:i.helpWidth,outputHasColors:i.hasColors});let r=n.formatHelp(this,n);return i.hasColors?r:this._outputConfiguration.stripColor(r)}_getOutputContext(e){e=e||{};let n=!!e.error,i,r,o;return n?(i=c=>this._outputConfiguration.writeErr(c),r=this._outputConfiguration.getErrHasColors(),o=this._outputConfiguration.getErrHelpWidth()):(i=c=>this._outputConfiguration.writeOut(c),r=this._outputConfiguration.getOutHasColors(),o=this._outputConfiguration.getOutHelpWidth()),{error:n,write:c=>(r||(c=this._outputConfiguration.stripColor(c)),i(c)),hasColors:r,helpWidth:o}}outputHelp(e){let n;typeof e=="function"&&(n=e,e=void 0);let i=this._getOutputContext(e),r={error:i.error,write:i.write,command:this};this._getCommandAndAncestors().reverse().forEach(a=>a.emit("beforeAllHelp",r)),this.emit("beforeHelp",r);let o=this.helpInformation({error:i.error});if(n&&(o=n(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",r),this._getCommandAndAncestors().forEach(a=>a.emit("afterAllHelp",r))}helpOption(e,n){return typeof e=="boolean"?(e?this._helpOption=this._helpOption??void 0:this._helpOption=null,this):(e=e??"-h, --help",n=n??"display help for command",this._helpOption=this.createOption(e,n),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 n=Number(Le.exitCode??0);n===0&&e&&typeof e!="function"&&e.error&&(n=1),this._exit(n,"commander.help","(outputHelp)")}addHelpText(e,n){let i=["beforeAll","before","after","afterAll"];if(!i.includes(e))throw new Error(`Unexpected value for position to addHelpText.
|
|
34
|
-
Expecting one of '${i.join("', '")}'`);let r=`${e}Help`;return this.on(r,o=>{let a;typeof n=="function"?a=n({error:o.error,command:o.command}):a=n,a&&o.write(`${a}
|
|
35
|
-
`)}),this}_outputHelpIfRequested(e){let n=this._getHelpOption();n&&e.find(r=>n.is(r))&&(this.outputHelp(),this._exit(0,"commander.helpDisplayed","(outputHelp)"))}};function zz(t){return t.map(e=>{if(!e.startsWith("--inspect"))return e;let n,i="127.0.0.1",r="9229",o;return(o=e.match(/^(--inspect(-brk)?)$/))!==null?n=o[1]:(o=e.match(/^(--inspect(-brk|-port)?)=([^:]+)$/))!==null?(n=o[1],/^\d+$/.test(o[3])?r=o[3]:i=o[3]):(o=e.match(/^(--inspect(-brk|-port)?)=([^:]+):(\d+)$/))!==null&&(n=o[1],i=o[3],r=o[4]),n&&r!=="0"?`${n}=${i}:${parseInt(r)+1}`:e})}function yI(){if(Le.env.NO_COLOR||Le.env.FORCE_COLOR==="0"||Le.env.FORCE_COLOR==="false")return!1;if(Le.env.FORCE_COLOR||Le.env.CLICOLOR_FORCE!==void 0)return!0}kI.Command=vI;kI.useColor=yI});var jz=M(zn=>{var{Argument:Lz}=zg(),{Command:wI}=Dz(),{CommanderError:GJ,InvalidArgumentError:Uz}=cu(),{Help:ZJ}=mI(),{Option:Mz}=hI();zn.program=new wI;zn.createCommand=t=>new wI(t);zn.createOption=(t,e)=>new Mz(t,e);zn.createArgument=(t,e)=>new Lz(t,e);zn.Command=wI;zn.Option=Mz;zn.Argument=Lz;zn.Help=ZJ;zn.CommanderError=GJ;zn.InvalidArgumentError=Uz;zn.InvalidOptionArgumentError=Uz});import Ox from"node:process";var s={};Er(s,{$brand:()=>hh,$input:()=>Cb,$output:()=>$b,NEVER:()=>gh,TimePrecision:()=>Pb,ZodAny:()=>Z_,ZodArray:()=>X_,ZodBase64:()=>ep,ZodBase64URL:()=>tp,ZodBigInt:()=>ps,ZodBigIntFormat:()=>ip,ZodBoolean:()=>ms,ZodCIDRv4:()=>Xm,ZodCIDRv6:()=>Qm,ZodCUID:()=>qm,ZodCUID2:()=>Hm,ZodCatch:()=>_v,ZodCodec:()=>zc,ZodCustom:()=>Dc,ZodCustomStringFormat:()=>us,ZodDate:()=>Ac,ZodDefault:()=>mv,ZodDiscriminatedUnion:()=>ev,ZodE164:()=>np,ZodEmail:()=>Km,ZodEmoji:()=>Fm,ZodEnum:()=>cs,ZodError:()=>ZM,ZodExactOptional:()=>lv,ZodFile:()=>av,ZodFirstPartyTypeKind:()=>$v,ZodFunction:()=>xv,ZodGUID:()=>Ec,ZodIPv4:()=>Jm,ZodIPv6:()=>Ym,ZodISODate:()=>Dm,ZodISODateTime:()=>zm,ZodISODuration:()=>Um,ZodISOTime:()=>Lm,ZodIntersection:()=>tv,ZodIssueCode:()=>JM,ZodJWT:()=>rp,ZodKSUID:()=>Wm,ZodLazy:()=>Ev,ZodLiteral:()=>sv,ZodMAC:()=>V_,ZodMap:()=>iv,ZodNaN:()=>yv,ZodNanoID:()=>Vm,ZodNever:()=>J_,ZodNonOptional:()=>ap,ZodNull:()=>G_,ZodNullable:()=>dv,ZodNumber:()=>ds,ZodNumberFormat:()=>eo,ZodObject:()=>$c,ZodOptional:()=>gs,ZodPipe:()=>Pc,ZodPrefault:()=>fv,ZodPreprocess:()=>kv,ZodPromise:()=>Rv,ZodReadonly:()=>wv,ZodRealError:()=>tn,ZodRecord:()=>as,ZodSet:()=>ov,ZodString:()=>ls,ZodStringFormat:()=>Ke,ZodSuccess:()=>bv,ZodSymbol:()=>q_,ZodTemplateLiteral:()=>Iv,ZodTransform:()=>cv,ZodTuple:()=>nv,ZodType:()=>le,ZodULID:()=>Gm,ZodURL:()=>xc,ZodUUID:()=>cr,ZodUndefined:()=>H_,ZodUnion:()=>Cc,ZodUnknown:()=>W_,ZodVoid:()=>Y_,ZodXID:()=>Zm,ZodXor:()=>Q_,_ZodString:()=>Bm,_default:()=>pv,_function:()=>tx,any:()=>DR,array:()=>ge,base64:()=>vR,base64url:()=>yR,bigint:()=>$R,boolean:()=>st,catch:()=>vv,check:()=>nx,cidrv4:()=>bR,cidrv6:()=>_R,clone:()=>_t,codec:()=>YR,coerce:()=>Cv,config:()=>rt,core:()=>Mn,cuid:()=>lR,cuid2:()=>uR,custom:()=>cp,date:()=>UR,decode:()=>L_,decodeAsync:()=>M_,describe:()=>rx,discriminatedUnion:()=>Nc,e164:()=>kR,email:()=>QT,emoji:()=>aR,encode:()=>D_,encodeAsync:()=>U_,endsWith:()=>Qo,enum:()=>kt,exactOptional:()=>uv,file:()=>GR,flattenError:()=>Ga,float32:()=>RR,float64:()=>xR,formatError:()=>Za,fromJSONSchema:()=>lx,function:()=>tx,getErrorMap:()=>XM,globalRegistry:()=>vt,gt:()=>sr,gte:()=>Mt,guid:()=>eR,hash:()=>TR,hex:()=>ER,hostname:()=>IR,httpUrl:()=>sR,includes:()=>Yo,instanceof:()=>ox,int:()=>Mm,int32:()=>OR,int64:()=>CR,intersection:()=>fs,invertCodec:()=>XR,ipv4:()=>fR,ipv6:()=>hR,iso:()=>ci,json:()=>ax,jwt:()=>wR,keyof:()=>MR,ksuid:()=>pR,lazy:()=>Tv,length:()=>Yi,literal:()=>W,locales:()=>qo,looseObject:()=>yt,looseRecord:()=>FR,lowercase:()=>Wo,lt:()=>or,lte:()=>un,mac:()=>gR,map:()=>VR,maxLength:()=>Ji,maxSize:()=>ii,meta:()=>ix,mime:()=>es,minLength:()=>Rr,minSize:()=>ar,multipleOf:()=>ri,nan:()=>JR,nanoid:()=>cR,nativeEnum:()=>HR,negative:()=>vm,never:()=>op,nonnegative:()=>km,nonoptional:()=>hv,nonpositive:()=>ym,normalize:()=>ts,null:()=>Oc,nullable:()=>Tc,nullish:()=>ZR,number:()=>Ne,object:()=>q,optional:()=>He,overwrite:()=>Un,parse:()=>C_,parseAsync:()=>N_,partialRecord:()=>KR,pipe:()=>jm,positive:()=>_m,prefault:()=>gv,preprocess:()=>Lc,prettifyError:()=>xh,promise:()=>ex,property:()=>wm,readonly:()=>Sv,record:()=>je,refine:()=>Ov,regex:()=>Zo,regexes:()=>en,registry:()=>Jd,safeDecode:()=>B_,safeDecodeAsync:()=>F_,safeEncode:()=>j_,safeEncodeAsync:()=>K_,safeParse:()=>P_,safeParseAsync:()=>z_,set:()=>qR,setErrorMap:()=>YM,size:()=>Wi,slugify:()=>os,startsWith:()=>Xo,strictObject:()=>jR,string:()=>k,stringFormat:()=>SR,stringbool:()=>sx,success:()=>WR,superRefine:()=>Av,symbol:()=>PR,templateLiteral:()=>QR,toJSONSchema:()=>Qi,toLowerCase:()=>rs,toUpperCase:()=>is,transform:()=>sp,treeifyError:()=>Rh,trim:()=>ns,tuple:()=>rv,uint32:()=>AR,uint64:()=>NR,ulid:()=>dR,undefined:()=>zR,union:()=>Ve,unknown:()=>Fe,uppercase:()=>Jo,url:()=>oR,util:()=>A,uuid:()=>tR,uuidv4:()=>nR,uuidv6:()=>rR,uuidv7:()=>iR,void:()=>LR,xid:()=>mR,xor:()=>BR});var Mn={};Er(Mn,{$ZodAny:()=>gd,$ZodArray:()=>yd,$ZodAsyncError:()=>Ln,$ZodBase64:()=>od,$ZodBase64URL:()=>sd,$ZodBigInt:()=>Qa,$ZodBigIntFormat:()=>dd,$ZodBoolean:()=>Bo,$ZodCIDRv4:()=>rd,$ZodCIDRv6:()=>id,$ZodCUID:()=>Wu,$ZodCUID2:()=>Ju,$ZodCatch:()=>Ud,$ZodCheck:()=>Be,$ZodCheckBigIntFormat:()=>sb,$ZodCheckEndsWith:()=>_b,$ZodCheckGreaterThan:()=>Uu,$ZodCheckIncludes:()=>hb,$ZodCheckLengthEquals:()=>mb,$ZodCheckLessThan:()=>Lu,$ZodCheckLowerCase:()=>fb,$ZodCheckMaxLength:()=>ub,$ZodCheckMaxSize:()=>ab,$ZodCheckMimeType:()=>yb,$ZodCheckMinLength:()=>db,$ZodCheckMinSize:()=>cb,$ZodCheckMultipleOf:()=>ib,$ZodCheckNumberFormat:()=>ob,$ZodCheckOverwrite:()=>kb,$ZodCheckProperty:()=>vb,$ZodCheckRegex:()=>pb,$ZodCheckSizeEquals:()=>lb,$ZodCheckStartsWith:()=>bb,$ZodCheckStringFormat:()=>jo,$ZodCheckUpperCase:()=>gb,$ZodCodec:()=>Fo,$ZodCustom:()=>qd,$ZodCustomStringFormat:()=>ld,$ZodDate:()=>vd,$ZodDefault:()=>Pd,$ZodDiscriminatedUnion:()=>Sd,$ZodE164:()=>ad,$ZodEmail:()=>qu,$ZodEmoji:()=>Gu,$ZodEncodeError:()=>Wr,$ZodEnum:()=>xd,$ZodError:()=>Ha,$ZodExactOptional:()=>Cd,$ZodFile:()=>Ad,$ZodFunction:()=>Kd,$ZodGUID:()=>Fu,$ZodIPv4:()=>ed,$ZodIPv6:()=>td,$ZodISODate:()=>Eb,$ZodISODateTime:()=>Ib,$ZodISODuration:()=>Rb,$ZodISOTime:()=>Tb,$ZodIntersection:()=>Id,$ZodJWT:()=>cd,$ZodKSUID:()=>Qu,$ZodLazy:()=>Vd,$ZodLiteral:()=>Od,$ZodMAC:()=>nd,$ZodMap:()=>Td,$ZodNaN:()=>Md,$ZodNanoID:()=>Zu,$ZodNever:()=>bd,$ZodNonOptional:()=>Dd,$ZodNull:()=>fd,$ZodNullable:()=>Nd,$ZodNumber:()=>Xa,$ZodNumberFormat:()=>ud,$ZodObject:()=>kd,$ZodObjectJIT:()=>Ob,$ZodOptional:()=>tc,$ZodPipe:()=>nc,$ZodPrefault:()=>zd,$ZodPreprocess:()=>Ab,$ZodPromise:()=>Fd,$ZodReadonly:()=>jd,$ZodRealError:()=>Qt,$ZodRecord:()=>Ed,$ZodRegistry:()=>Wd,$ZodSet:()=>Rd,$ZodString:()=>ni,$ZodStringFormat:()=>Me,$ZodSuccess:()=>Ld,$ZodSymbol:()=>md,$ZodTemplateLiteral:()=>Bd,$ZodTransform:()=>$d,$ZodTuple:()=>ec,$ZodType:()=>ie,$ZodULID:()=>Yu,$ZodURL:()=>Hu,$ZodUUID:()=>Vu,$ZodUndefined:()=>pd,$ZodUnion:()=>Ko,$ZodUnknown:()=>hd,$ZodVoid:()=>_d,$ZodXID:()=>Xu,$ZodXor:()=>wd,$brand:()=>hh,$constructor:()=>h,$input:()=>Cb,$output:()=>$b,Doc:()=>Ya,JSONSchema:()=>JT,JSONSchemaGenerator:()=>Nm,NEVER:()=>gh,TimePrecision:()=>Pb,_any:()=>mm,_array:()=>Fb,_base64:()=>yc,_base64url:()=>kc,_bigint:()=>sm,_boolean:()=>om,_catch:()=>jM,_check:()=>WT,_cidrv4:()=>_c,_cidrv6:()=>vc,_coercedBigint:()=>Bb,_coercedBoolean:()=>jb,_coercedDate:()=>Kb,_coercedNumber:()=>Mb,_coercedString:()=>Nb,_cuid:()=>dc,_cuid2:()=>mc,_custom:()=>Im,_date:()=>hm,_decode:()=>xu,_decodeAsync:()=>Au,_default:()=>LM,_discriminatedUnion:()=>EM,_e164:()=>wc,_email:()=>ic,_emoji:()=>lc,_encode:()=>Ru,_encodeAsync:()=>Ou,_endsWith:()=>Qo,_enum:()=>$M,_file:()=>Sm,_float32:()=>tm,_float64:()=>nm,_gt:()=>sr,_gte:()=>Mt,_guid:()=>Ho,_includes:()=>Yo,_int:()=>em,_int32:()=>rm,_int64:()=>am,_intersection:()=>TM,_ipv4:()=>hc,_ipv6:()=>bc,_isoDate:()=>Db,_isoDateTime:()=>zb,_isoDuration:()=>Ub,_isoTime:()=>Lb,_jwt:()=>Sc,_ksuid:()=>gc,_lazy:()=>VM,_length:()=>Yi,_literal:()=>NM,_lowercase:()=>Wo,_lt:()=>or,_lte:()=>un,_mac:()=>Xd,_map:()=>OM,_max:()=>un,_maxLength:()=>Ji,_maxSize:()=>ii,_mime:()=>es,_min:()=>Mt,_minLength:()=>Rr,_minSize:()=>ar,_multipleOf:()=>ri,_nan:()=>bm,_nanoid:()=>uc,_nativeEnum:()=>CM,_negative:()=>vm,_never:()=>fm,_nonnegative:()=>km,_nonoptional:()=>UM,_nonpositive:()=>ym,_normalize:()=>ts,_null:()=>dm,_nullable:()=>DM,_number:()=>Qd,_optional:()=>zM,_overwrite:()=>Un,_parse:()=>Do,_parseAsync:()=>Lo,_pipe:()=>BM,_positive:()=>_m,_promise:()=>qM,_property:()=>wm,_readonly:()=>KM,_record:()=>xM,_refine:()=>Em,_regex:()=>Zo,_safeDecode:()=>Cu,_safeDecodeAsync:()=>Pu,_safeEncode:()=>$u,_safeEncodeAsync:()=>Nu,_safeParse:()=>Uo,_safeParseAsync:()=>Mo,_set:()=>AM,_size:()=>Wi,_slugify:()=>os,_startsWith:()=>Xo,_string:()=>Yd,_stringFormat:()=>Xi,_stringbool:()=>Om,_success:()=>MM,_superRefine:()=>Tm,_symbol:()=>lm,_templateLiteral:()=>FM,_toLowerCase:()=>rs,_toUpperCase:()=>is,_transform:()=>PM,_trim:()=>ns,_tuple:()=>RM,_uint32:()=>im,_uint64:()=>cm,_ulid:()=>pc,_undefined:()=>um,_union:()=>SM,_unknown:()=>pm,_uppercase:()=>Jo,_url:()=>Go,_uuid:()=>oc,_uuidv4:()=>sc,_uuidv6:()=>ac,_uuidv7:()=>cc,_void:()=>gm,_xid:()=>fc,_xor:()=>IM,clone:()=>_t,config:()=>rt,createStandardJSONSchemaMethod:()=>ss,createToJSONSchemaMethod:()=>Vb,decode:()=>_E,decodeAsync:()=>yE,describe:()=>Rm,encode:()=>bE,encodeAsync:()=>vE,extractDefs:()=>si,finalize:()=>ai,flattenError:()=>Ga,formatError:()=>Za,globalConfig:()=>Vi,globalRegistry:()=>vt,initializeContext:()=>oi,isValidBase64:()=>xb,isValidBase64URL:()=>qE,isValidJWT:()=>HE,locales:()=>qo,meta:()=>xm,parse:()=>Hi,parseAsync:()=>Gi,prettifyError:()=>xh,process:()=>Ue,regexes:()=>en,registry:()=>Jd,safeDecode:()=>wE,safeDecodeAsync:()=>IE,safeEncode:()=>kE,safeEncodeAsync:()=>SE,safeParse:()=>ei,safeParseAsync:()=>ti,toDotPath:()=>hE,toJSONSchema:()=>Qi,treeifyError:()=>Rh,util:()=>A,version:()=>wb});var oE,gh=Object.freeze({status:"aborted"});function h(t,e,n){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 u=a.prototype,d=Object.keys(u);for(let m=0;m<d.length;m++){let f=d[m];f in c||(c[f]=u[f].bind(c))}}let r=n?.Parent??Object;class o extends r{}Object.defineProperty(o,"name",{value:t});function a(c){var l;let u=n?.Parent?new o:this;i(u,c),(l=u._zod).deferred??(l.deferred=[]);for(let d of u._zod.deferred)d();return u}return Object.defineProperty(a,"init",{value:i}),Object.defineProperty(a,Symbol.hasInstance,{value:c=>n?.Parent&&c instanceof n.Parent?!0:c?._zod?.traits?.has(t)}),Object.defineProperty(a,"name",{value:t}),a}var hh=Symbol("zod_brand"),Ln=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},Wr=class extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name="ZodEncodeError"}};(oE=globalThis).__zod_globalConfig??(oE.__zod_globalConfig={});var Vi=globalThis.__zod_globalConfig;function rt(t){return t&&Object.assign(Vi,t),Vi}var A={};Er(A,{BIGINT_FORMAT_RANGES:()=>Eh,Class:()=>_h,NUMBER_FORMAT_RANGES:()=>Ih,aborted:()=>Qr,allowsEval:()=>kh,assert:()=>DL,assertEqual:()=>CL,assertIs:()=>PL,assertNever:()=>zL,assertNotEqual:()=>NL,assignProp:()=>Yr,base64ToUint8Array:()=>pE,base64urlToUint8Array:()=>GL,cached:()=>Po,captureStackTrace:()=>Eu,cleanEnum:()=>HL,cleanRegex:()=>Ka,clone:()=>_t,cloneDef:()=>UL,createTransparentProxy:()=>VL,defineLazy:()=>de,esc:()=>Iu,escapeRegex:()=>wn,explicitlyAborted:()=>Th,extend:()=>lE,finalizeIssue:()=>Ut,floatSafeRemainder:()=>vh,getElementAtPath:()=>ML,getEnumValues:()=>Ba,getLengthableOrigin:()=>qa,getParsedType:()=>FL,getSizableOrigin:()=>Va,hexToUint8Array:()=>WL,isObject:()=>qi,isPlainObject:()=>Xr,issue:()=>zo,joinValues:()=>v,jsonStringifyReplacer:()=>No,merge:()=>qL,mergeDefs:()=>Tr,normalizeParams:()=>P,nullish:()=>Jr,numKeys:()=>KL,objectClone:()=>LL,omit:()=>cE,optionalKeys:()=>Sh,parsedType:()=>O,partial:()=>dE,pick:()=>aE,prefixIssues:()=>Xt,primitiveTypes:()=>wh,promiseAllObject:()=>jL,propertyKeyTypes:()=>Fa,randomString:()=>BL,required:()=>mE,safeExtend:()=>uE,shallowClone:()=>Tu,slugify:()=>yh,stringifyPrimitive:()=>x,uint8ArrayToBase64:()=>fE,uint8ArrayToBase64url:()=>ZL,uint8ArrayToHex:()=>JL,unwrapMessage:()=>ja});function CL(t){return t}function NL(t){return t}function PL(t){}function zL(t){throw new Error("Unexpected value in exhaustive check")}function DL(t){}function Ba(t){let e=Object.values(t).filter(i=>typeof i=="number");return Object.entries(t).filter(([i,r])=>e.indexOf(+i)===-1).map(([i,r])=>r)}function v(t,e="|"){return t.map(n=>x(n)).join(e)}function No(t,e){return typeof e=="bigint"?e.toString():e}function Po(t){return{get value(){{let n=t();return Object.defineProperty(this,"value",{value:n}),n}throw new Error("cached value already set")}}}function Jr(t){return t==null}function Ka(t){let e=t.startsWith("^")?1:0,n=t.endsWith("$")?t.length-1:t.length;return t.slice(e,n)}function vh(t,e){let n=t/e,i=Math.round(n),r=Number.EPSILON*Math.max(Math.abs(n),1);return Math.abs(n-i)<r?0:n-i}var sE=Symbol("evaluating");function de(t,e,n){let i;Object.defineProperty(t,e,{get(){if(i!==sE)return i===void 0&&(i=sE,i=n()),i},set(r){Object.defineProperty(t,e,{value:r})},configurable:!0})}function LL(t){return Object.create(Object.getPrototypeOf(t),Object.getOwnPropertyDescriptors(t))}function Yr(t,e,n){Object.defineProperty(t,e,{value:n,writable:!0,enumerable:!0,configurable:!0})}function Tr(...t){let e={};for(let n of t){let i=Object.getOwnPropertyDescriptors(n);Object.assign(e,i)}return Object.defineProperties({},e)}function UL(t){return Tr(t._zod.def)}function ML(t,e){return e?e.reduce((n,i)=>n?.[i],t):t}function jL(t){let e=Object.keys(t),n=e.map(i=>t[i]);return Promise.all(n).then(i=>{let r={};for(let o=0;o<e.length;o++)r[e[o]]=i[o];return r})}function BL(t=10){let e="abcdefghijklmnopqrstuvwxyz",n="";for(let i=0;i<t;i++)n+=e[Math.floor(Math.random()*e.length)];return n}function Iu(t){return JSON.stringify(t)}function yh(t){return t.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}var Eu="captureStackTrace"in Error?Error.captureStackTrace:(...t)=>{};function qi(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}var kh=Po(()=>{if(Vi.jitless||typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let t=Function;return new t(""),!0}catch{return!1}});function Xr(t){if(qi(t)===!1)return!1;let e=t.constructor;if(e===void 0||typeof e!="function")return!0;let n=e.prototype;return!(qi(n)===!1||Object.prototype.hasOwnProperty.call(n,"isPrototypeOf")===!1)}function Tu(t){return Xr(t)?{...t}:Array.isArray(t)?[...t]:t instanceof Map?new Map(t):t instanceof Set?new Set(t):t}function KL(t){let e=0;for(let n in t)Object.prototype.hasOwnProperty.call(t,n)&&e++;return e}var FL=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}`)}},Fa=new Set(["string","number","symbol"]),wh=new Set(["string","number","bigint","boolean","symbol","undefined"]);function wn(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function _t(t,e,n){let i=new t._zod.constr(e??t._zod.def);return(!e||n?.parent)&&(i._zod.parent=t),i}function P(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 VL(t){let e;return new Proxy({},{get(n,i,r){return e??(e=t()),Reflect.get(e,i,r)},set(n,i,r,o){return e??(e=t()),Reflect.set(e,i,r,o)},has(n,i){return e??(e=t()),Reflect.has(e,i)},deleteProperty(n,i){return e??(e=t()),Reflect.deleteProperty(e,i)},ownKeys(n){return e??(e=t()),Reflect.ownKeys(e)},getOwnPropertyDescriptor(n,i){return e??(e=t()),Reflect.getOwnPropertyDescriptor(e,i)},defineProperty(n,i,r){return e??(e=t()),Reflect.defineProperty(e,i,r)}})}function x(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function Sh(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}var Ih={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]},Eh={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function aE(t,e){let n=t._zod.def,i=n.checks;if(i&&i.length>0)throw new Error(".pick() cannot be used on object schemas containing refinements");let o=Tr(t._zod.def,{get shape(){let a={};for(let c in e){if(!(c in n.shape))throw new Error(`Unrecognized key: "${c}"`);e[c]&&(a[c]=n.shape[c])}return Yr(this,"shape",a),a},checks:[]});return _t(t,o)}function cE(t,e){let n=t._zod.def,i=n.checks;if(i&&i.length>0)throw new Error(".omit() cannot be used on object schemas containing refinements");let o=Tr(t._zod.def,{get shape(){let a={...t._zod.def.shape};for(let c in e){if(!(c in n.shape))throw new Error(`Unrecognized key: "${c}"`);e[c]&&delete a[c]}return Yr(this,"shape",a),a},checks:[]});return _t(t,o)}function lE(t,e){if(!Xr(e))throw new Error("Invalid input to extend: expected a plain object");let n=t._zod.def.checks;if(n&&n.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 r=Tr(t._zod.def,{get shape(){let o={...t._zod.def.shape,...e};return Yr(this,"shape",o),o}});return _t(t,r)}function uE(t,e){if(!Xr(e))throw new Error("Invalid input to safeExtend: expected a plain object");let n=Tr(t._zod.def,{get shape(){let i={...t._zod.def.shape,...e};return Yr(this,"shape",i),i}});return _t(t,n)}function qL(t,e){if(t._zod.def.checks?.length)throw new Error(".merge() cannot be used on object schemas containing refinements. Use .safeExtend() instead.");let n=Tr(t._zod.def,{get shape(){let i={...t._zod.def.shape,...e._zod.def.shape};return Yr(this,"shape",i),i},get catchall(){return e._zod.def.catchall},checks:e._zod.def.checks??[]});return _t(t,n)}function dE(t,e,n){let r=e._zod.def.checks;if(r&&r.length>0)throw new Error(".partial() cannot be used on object schemas containing refinements");let a=Tr(e._zod.def,{get shape(){let c=e._zod.def.shape,l={...c};if(n)for(let u in n){if(!(u in c))throw new Error(`Unrecognized key: "${u}"`);n[u]&&(l[u]=t?new t({type:"optional",innerType:c[u]}):c[u])}else for(let u in c)l[u]=t?new t({type:"optional",innerType:c[u]}):c[u];return Yr(this,"shape",l),l},checks:[]});return _t(e,a)}function mE(t,e,n){let i=Tr(e._zod.def,{get shape(){let r=e._zod.def.shape,o={...r};if(n)for(let a in n){if(!(a in o))throw new Error(`Unrecognized key: "${a}"`);n[a]&&(o[a]=new t({type:"nonoptional",innerType:r[a]}))}else for(let a in r)o[a]=new t({type:"nonoptional",innerType:r[a]});return Yr(this,"shape",o),o}});return _t(e,i)}function Qr(t,e=0){if(t.aborted===!0)return!0;for(let n=e;n<t.issues.length;n++)if(t.issues[n]?.continue!==!0)return!0;return!1}function Th(t,e=0){if(t.aborted===!0)return!0;for(let n=e;n<t.issues.length;n++)if(t.issues[n]?.continue===!1)return!0;return!1}function Xt(t,e){return e.map(n=>{var i;return(i=n).path??(i.path=[]),n.path.unshift(t),n})}function ja(t){return typeof t=="string"?t:t?.message}function Ut(t,e,n){let i=t.message?t.message:ja(t.inst?._zod.def?.error?.(t))??ja(e?.error?.(t))??ja(n.customError?.(t))??ja(n.localeError?.(t))??"Invalid input",{inst:r,continue:o,input:a,...c}=t;return c.path??(c.path=[]),c.message=i,e?.reportInput&&(c.input=a),c}function Va(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function qa(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function O(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 n=t;if(n&&Object.getPrototypeOf(n)!==Object.prototype&&"constructor"in n&&n.constructor)return n.constructor.name}}return e}function zo(...t){let[e,n,i]=t;return typeof e=="string"?{message:e,code:"custom",input:n,inst:i}:{...e}}function HL(t){return Object.entries(t).filter(([e,n])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}function pE(t){let e=atob(t),n=new Uint8Array(e.length);for(let i=0;i<e.length;i++)n[i]=e.charCodeAt(i);return n}function fE(t){let e="";for(let n=0;n<t.length;n++)e+=String.fromCharCode(t[n]);return btoa(e)}function GL(t){let e=t.replace(/-/g,"+").replace(/_/g,"/"),n="=".repeat((4-e.length%4)%4);return pE(e+n)}function ZL(t){return fE(t).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}function WL(t){let e=t.replace(/^0x/,"");if(e.length%2!==0)throw new Error("Invalid hex string length");let n=new Uint8Array(e.length/2);for(let i=0;i<e.length;i+=2)n[i/2]=Number.parseInt(e.slice(i,i+2),16);return n}function JL(t){return Array.from(t).map(e=>e.toString(16).padStart(2,"0")).join("")}var _h=class{constructor(...e){}};var gE=(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,No,2),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},Ha=h("$ZodError",gE),Qt=h("$ZodError",gE,{Parent:Error});function Ga(t,e=n=>n.message){let n={},i=[];for(let r of t.issues)r.path.length>0?(n[r.path[0]]=n[r.path[0]]||[],n[r.path[0]].push(e(r))):i.push(e(r));return{formErrors:i,fieldErrors:n}}function Za(t,e=n=>n.message){let n={_errors:[]},i=(r,o=[])=>{for(let a of r.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)n._errors.push(e(a));else{let l=n,u=0;for(;u<c.length;){let d=c[u];u===c.length-1?(l[d]=l[d]||{_errors:[]},l[d]._errors.push(e(a))):l[d]=l[d]||{_errors:[]},l=l[d],u++}}}};return i(t),n}function Rh(t,e=n=>n.message){let n={errors:[]},i=(r,o=[])=>{var a,c;for(let l of r.issues)if(l.code==="invalid_union"&&l.errors.length)l.errors.map(u=>i({issues:u},[...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 u=[...o,...l.path];if(u.length===0){n.errors.push(e(l));continue}let d=n,m=0;for(;m<u.length;){let f=u[m],p=m===u.length-1;typeof f=="string"?(d.properties??(d.properties={}),(a=d.properties)[f]??(a[f]={errors:[]}),d=d.properties[f]):(d.items??(d.items=[]),(c=d.items)[f]??(c[f]={errors:[]}),d=d.items[f]),p&&d.errors.push(e(l)),m++}}};return i(t),n}function hE(t){let e=[],n=t.map(i=>typeof i=="object"?i.key:i);for(let i of n)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 xh(t){let e=[],n=[...t.issues].sort((i,r)=>(i.path??[]).length-(r.path??[]).length);for(let i of n)e.push(`\u2716 ${i.message}`),i.path?.length&&e.push(` \u2192 at ${hE(i.path)}`);return e.join(`
|
|
36
|
-
`)}var Do=t=>(e,n,i,r)=>{let o=i?{...i,async:!1}:{async:!1},a=e._zod.run({value:n,issues:[]},o);if(a instanceof Promise)throw new Ln;if(a.issues.length){let c=new(r?.Err??t)(a.issues.map(l=>Ut(l,o,rt())));throw Eu(c,r?.callee),c}return a.value},Hi=Do(Qt),Lo=t=>async(e,n,i,r)=>{let o=i?{...i,async:!0}:{async:!0},a=e._zod.run({value:n,issues:[]},o);if(a instanceof Promise&&(a=await a),a.issues.length){let c=new(r?.Err??t)(a.issues.map(l=>Ut(l,o,rt())));throw Eu(c,r?.callee),c}return a.value},Gi=Lo(Qt),Uo=t=>(e,n,i)=>{let r=i?{...i,async:!1}:{async:!1},o=e._zod.run({value:n,issues:[]},r);if(o instanceof Promise)throw new Ln;return o.issues.length?{success:!1,error:new(t??Ha)(o.issues.map(a=>Ut(a,r,rt())))}:{success:!0,data:o.value}},ei=Uo(Qt),Mo=t=>async(e,n,i)=>{let r=i?{...i,async:!0}:{async:!0},o=e._zod.run({value:n,issues:[]},r);return o instanceof Promise&&(o=await o),o.issues.length?{success:!1,error:new t(o.issues.map(a=>Ut(a,r,rt())))}:{success:!0,data:o.value}},ti=Mo(Qt),Ru=t=>(e,n,i)=>{let r=i?{...i,direction:"backward"}:{direction:"backward"};return Do(t)(e,n,r)},bE=Ru(Qt),xu=t=>(e,n,i)=>Do(t)(e,n,i),_E=xu(Qt),Ou=t=>async(e,n,i)=>{let r=i?{...i,direction:"backward"}:{direction:"backward"};return Lo(t)(e,n,r)},vE=Ou(Qt),Au=t=>async(e,n,i)=>Lo(t)(e,n,i),yE=Au(Qt),$u=t=>(e,n,i)=>{let r=i?{...i,direction:"backward"}:{direction:"backward"};return Uo(t)(e,n,r)},kE=$u(Qt),Cu=t=>(e,n,i)=>Uo(t)(e,n,i),wE=Cu(Qt),Nu=t=>async(e,n,i)=>{let r=i?{...i,direction:"backward"}:{direction:"backward"};return Mo(t)(e,n,r)},SE=Nu(Qt),Pu=t=>async(e,n,i)=>Mo(t)(e,n,i),IE=Pu(Qt);var en={};Er(en,{base64:()=>Vh,base64url:()=>zu,bigint:()=>Yh,boolean:()=>Qh,browserEmail:()=>oU,cidrv4:()=>Kh,cidrv6:()=>Fh,cuid:()=>Oh,cuid2:()=>Ah,date:()=>Gh,datetime:()=>Wh,domain:()=>cU,duration:()=>zh,e164:()=>Hh,email:()=>Lh,emoji:()=>Uh,extendedDuration:()=>XL,guid:()=>Dh,hex:()=>lU,hostname:()=>aU,html5Email:()=>nU,httpProtocol:()=>qh,idnEmail:()=>iU,integer:()=>Xh,ipv4:()=>Mh,ipv6:()=>jh,ksuid:()=>Nh,lowercase:()=>nb,mac:()=>Bh,md5_base64:()=>dU,md5_base64url:()=>mU,md5_hex:()=>uU,nanoid:()=>Ph,null:()=>eb,number:()=>Du,rfc5322Email:()=>rU,sha1_base64:()=>fU,sha1_base64url:()=>gU,sha1_hex:()=>pU,sha256_base64:()=>bU,sha256_base64url:()=>_U,sha256_hex:()=>hU,sha384_base64:()=>yU,sha384_base64url:()=>kU,sha384_hex:()=>vU,sha512_base64:()=>SU,sha512_base64url:()=>IU,sha512_hex:()=>wU,string:()=>Jh,time:()=>Zh,ulid:()=>$h,undefined:()=>tb,unicodeEmail:()=>EE,uppercase:()=>rb,uuid:()=>Zi,uuid4:()=>QL,uuid6:()=>eU,uuid7:()=>tU,xid:()=>Ch});var Oh=/^[cC][0-9a-z]{6,}$/,Ah=/^[0-9a-z]+$/,$h=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Ch=/^[0-9a-vA-V]{20}$/,Nh=/^[A-Za-z0-9]{27}$/,Ph=/^[a-zA-Z0-9_-]{21}$/,zh=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,XL=/^[-+]?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)?)??$/,Dh=/^([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})$/,Zi=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)$/,QL=Zi(4),eU=Zi(6),tU=Zi(7),Lh=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,nU=/^[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])?)*$/,rU=/^(([^<>()\[\]\\.,;:\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,}))$/,EE=/^[^\s@"]{1,64}@[^\s@]{1,255}$/u,iU=EE,oU=/^[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])?)*$/,sU="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function Uh(){return new RegExp(sU,"u")}var Mh=/^(?:(?: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])$/,jh=/^(([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}|:))$/,Bh=t=>{let e=wn(t??":");return new RegExp(`^(?:[0-9A-F]{2}${e}){5}[0-9A-F]{2}$|^(?:[0-9a-f]{2}${e}){5}[0-9a-f]{2}$`)},Kh=/^((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])$/,Fh=/^(([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])$/,Vh=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,zu=/^[A-Za-z0-9_-]*$/,aU=/^(?=.{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])?)*\.?$/,cU=/^([a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,}$/,qh=/^https?$/,Hh=/^\+[1-9]\d{6,14}$/,TE="(?:(?:\\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])))",Gh=new RegExp(`^${TE}$`);function RE(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 Zh(t){return new RegExp(`^${RE(t)}$`)}function Wh(t){let e=RE({precision:t.precision}),n=["Z"];t.local&&n.push(""),t.offset&&n.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");let i=`${e}(?:${n.join("|")})`;return new RegExp(`^${TE}T(?:${i})$`)}var Jh=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)},Yh=/^-?\d+n?$/,Xh=/^-?\d+$/,Du=/^-?\d+(?:\.\d+)?$/,Qh=/^(?:true|false)$/i,eb=/^null$/i;var tb=/^undefined$/i;var nb=/^[^A-Z]*$/,rb=/^[^a-z]*$/,lU=/^[0-9a-fA-F]*$/;function Wa(t,e){return new RegExp(`^[A-Za-z0-9+/]{${t}}${e}$`)}function Ja(t){return new RegExp(`^[A-Za-z0-9_-]{${t}}$`)}var uU=/^[0-9a-fA-F]{32}$/,dU=Wa(22,"=="),mU=Ja(22),pU=/^[0-9a-fA-F]{40}$/,fU=Wa(27,"="),gU=Ja(27),hU=/^[0-9a-fA-F]{64}$/,bU=Wa(43,"="),_U=Ja(43),vU=/^[0-9a-fA-F]{96}$/,yU=Wa(64,""),kU=Ja(64),wU=/^[0-9a-fA-F]{128}$/,SU=Wa(86,"=="),IU=Ja(86);var Be=h("$ZodCheck",(t,e)=>{var n;t._zod??(t._zod={}),t._zod.def=e,(n=t._zod).onattach??(n.onattach=[])}),OE={number:"number",bigint:"bigint",object:"date"},Lu=h("$ZodCheckLessThan",(t,e)=>{Be.init(t,e);let n=OE[typeof e.value];t._zod.onattach.push(i=>{let r=i._zod.bag,o=(e.inclusive?r.maximum:r.exclusiveMaximum)??Number.POSITIVE_INFINITY;e.value<o&&(e.inclusive?r.maximum=e.value:r.exclusiveMaximum=e.value)}),t._zod.check=i=>{(e.inclusive?i.value<=e.value:i.value<e.value)||i.issues.push({origin:n,code:"too_big",maximum:typeof e.value=="object"?e.value.getTime():e.value,input:i.value,inclusive:e.inclusive,inst:t,continue:!e.abort})}}),Uu=h("$ZodCheckGreaterThan",(t,e)=>{Be.init(t,e);let n=OE[typeof e.value];t._zod.onattach.push(i=>{let r=i._zod.bag,o=(e.inclusive?r.minimum:r.exclusiveMinimum)??Number.NEGATIVE_INFINITY;e.value>o&&(e.inclusive?r.minimum=e.value:r.exclusiveMinimum=e.value)}),t._zod.check=i=>{(e.inclusive?i.value>=e.value:i.value>e.value)||i.issues.push({origin:n,code:"too_small",minimum:typeof e.value=="object"?e.value.getTime():e.value,input:i.value,inclusive:e.inclusive,inst:t,continue:!e.abort})}}),ib=h("$ZodCheckMultipleOf",(t,e)=>{Be.init(t,e),t._zod.onattach.push(n=>{var i;(i=n._zod.bag).multipleOf??(i.multipleOf=e.value)}),t._zod.check=n=>{if(typeof n.value!=typeof e.value)throw new Error("Cannot mix number and bigint in multiple_of check.");(typeof n.value=="bigint"?n.value%e.value===BigInt(0):vh(n.value,e.value)===0)||n.issues.push({origin:typeof n.value,code:"not_multiple_of",divisor:e.value,input:n.value,inst:t,continue:!e.abort})}}),ob=h("$ZodCheckNumberFormat",(t,e)=>{Be.init(t,e),e.format=e.format||"float64";let n=e.format?.includes("int"),i=n?"int":"number",[r,o]=Ih[e.format];t._zod.onattach.push(a=>{let c=a._zod.bag;c.format=e.format,c.minimum=r,c.maximum=o,n&&(c.pattern=Xh)}),t._zod.check=a=>{let c=a.value;if(n){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<r&&a.issues.push({origin:"number",input:c,code:"too_small",minimum:r,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})}}),sb=h("$ZodCheckBigIntFormat",(t,e)=>{Be.init(t,e);let[n,i]=Eh[e.format];t._zod.onattach.push(r=>{let o=r._zod.bag;o.format=e.format,o.minimum=n,o.maximum=i}),t._zod.check=r=>{let o=r.value;o<n&&r.issues.push({origin:"bigint",input:o,code:"too_small",minimum:n,inclusive:!0,inst:t,continue:!e.abort}),o>i&&r.issues.push({origin:"bigint",input:o,code:"too_big",maximum:i,inclusive:!0,inst:t,continue:!e.abort})}}),ab=h("$ZodCheckMaxSize",(t,e)=>{var n;Be.init(t,e),(n=t._zod.def).when??(n.when=i=>{let r=i.value;return!Jr(r)&&r.size!==void 0}),t._zod.onattach.push(i=>{let r=i._zod.bag.maximum??Number.POSITIVE_INFINITY;e.maximum<r&&(i._zod.bag.maximum=e.maximum)}),t._zod.check=i=>{let r=i.value;r.size<=e.maximum||i.issues.push({origin:Va(r),code:"too_big",maximum:e.maximum,inclusive:!0,input:r,inst:t,continue:!e.abort})}}),cb=h("$ZodCheckMinSize",(t,e)=>{var n;Be.init(t,e),(n=t._zod.def).when??(n.when=i=>{let r=i.value;return!Jr(r)&&r.size!==void 0}),t._zod.onattach.push(i=>{let r=i._zod.bag.minimum??Number.NEGATIVE_INFINITY;e.minimum>r&&(i._zod.bag.minimum=e.minimum)}),t._zod.check=i=>{let r=i.value;r.size>=e.minimum||i.issues.push({origin:Va(r),code:"too_small",minimum:e.minimum,inclusive:!0,input:r,inst:t,continue:!e.abort})}}),lb=h("$ZodCheckSizeEquals",(t,e)=>{var n;Be.init(t,e),(n=t._zod.def).when??(n.when=i=>{let r=i.value;return!Jr(r)&&r.size!==void 0}),t._zod.onattach.push(i=>{let r=i._zod.bag;r.minimum=e.size,r.maximum=e.size,r.size=e.size}),t._zod.check=i=>{let r=i.value,o=r.size;if(o===e.size)return;let a=o>e.size;i.issues.push({origin:Va(r),...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})}}),ub=h("$ZodCheckMaxLength",(t,e)=>{var n;Be.init(t,e),(n=t._zod.def).when??(n.when=i=>{let r=i.value;return!Jr(r)&&r.length!==void 0}),t._zod.onattach.push(i=>{let r=i._zod.bag.maximum??Number.POSITIVE_INFINITY;e.maximum<r&&(i._zod.bag.maximum=e.maximum)}),t._zod.check=i=>{let r=i.value;if(r.length<=e.maximum)return;let a=qa(r);i.issues.push({origin:a,code:"too_big",maximum:e.maximum,inclusive:!0,input:r,inst:t,continue:!e.abort})}}),db=h("$ZodCheckMinLength",(t,e)=>{var n;Be.init(t,e),(n=t._zod.def).when??(n.when=i=>{let r=i.value;return!Jr(r)&&r.length!==void 0}),t._zod.onattach.push(i=>{let r=i._zod.bag.minimum??Number.NEGATIVE_INFINITY;e.minimum>r&&(i._zod.bag.minimum=e.minimum)}),t._zod.check=i=>{let r=i.value;if(r.length>=e.minimum)return;let a=qa(r);i.issues.push({origin:a,code:"too_small",minimum:e.minimum,inclusive:!0,input:r,inst:t,continue:!e.abort})}}),mb=h("$ZodCheckLengthEquals",(t,e)=>{var n;Be.init(t,e),(n=t._zod.def).when??(n.when=i=>{let r=i.value;return!Jr(r)&&r.length!==void 0}),t._zod.onattach.push(i=>{let r=i._zod.bag;r.minimum=e.length,r.maximum=e.length,r.length=e.length}),t._zod.check=i=>{let r=i.value,o=r.length;if(o===e.length)return;let a=qa(r),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})}}),jo=h("$ZodCheckStringFormat",(t,e)=>{var n,i;Be.init(t,e),t._zod.onattach.push(r=>{let o=r._zod.bag;o.format=e.format,e.pattern&&(o.patterns??(o.patterns=new Set),o.patterns.add(e.pattern))}),e.pattern?(n=t._zod).check??(n.check=r=>{e.pattern.lastIndex=0,!e.pattern.test(r.value)&&r.issues.push({origin:"string",code:"invalid_format",format:e.format,input:r.value,...e.pattern?{pattern:e.pattern.toString()}:{},inst:t,continue:!e.abort})}):(i=t._zod).check??(i.check=()=>{})}),pb=h("$ZodCheckRegex",(t,e)=>{jo.init(t,e),t._zod.check=n=>{e.pattern.lastIndex=0,!e.pattern.test(n.value)&&n.issues.push({origin:"string",code:"invalid_format",format:"regex",input:n.value,pattern:e.pattern.toString(),inst:t,continue:!e.abort})}}),fb=h("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=nb),jo.init(t,e)}),gb=h("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=rb),jo.init(t,e)}),hb=h("$ZodCheckIncludes",(t,e)=>{Be.init(t,e);let n=wn(e.includes),i=new RegExp(typeof e.position=="number"?`^.{${e.position}}${n}`:n);e.pattern=i,t._zod.onattach.push(r=>{let o=r._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(i)}),t._zod.check=r=>{r.value.includes(e.includes,e.position)||r.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:e.includes,input:r.value,inst:t,continue:!e.abort})}}),bb=h("$ZodCheckStartsWith",(t,e)=>{Be.init(t,e);let n=new RegExp(`^${wn(e.prefix)}.*`);e.pattern??(e.pattern=n),t._zod.onattach.push(i=>{let r=i._zod.bag;r.patterns??(r.patterns=new Set),r.patterns.add(n)}),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})}}),_b=h("$ZodCheckEndsWith",(t,e)=>{Be.init(t,e);let n=new RegExp(`.*${wn(e.suffix)}$`);e.pattern??(e.pattern=n),t._zod.onattach.push(i=>{let r=i._zod.bag;r.patterns??(r.patterns=new Set),r.patterns.add(n)}),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 xE(t,e,n){t.issues.length&&e.issues.push(...Xt(n,t.issues))}var vb=h("$ZodCheckProperty",(t,e)=>{Be.init(t,e),t._zod.check=n=>{let i=e.schema._zod.run({value:n.value[e.property],issues:[]},{});if(i instanceof Promise)return i.then(r=>xE(r,n,e.property));xE(i,n,e.property)}}),yb=h("$ZodCheckMimeType",(t,e)=>{Be.init(t,e);let n=new Set(e.mime);t._zod.onattach.push(i=>{i._zod.bag.mime=e.mime}),t._zod.check=i=>{n.has(i.value.type)||i.issues.push({code:"invalid_value",values:e.mime,input:i.value.type,inst:t,continue:!e.abort})}}),kb=h("$ZodCheckOverwrite",(t,e)=>{Be.init(t,e),t._zod.check=n=>{n.value=e.tx(n.value)}});var Ya=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(`
|
|
37
|
-
`).filter(a=>a),r=Math.min(...i.map(a=>a.length-a.trimStart().length)),o=i.map(a=>a.slice(r)).map(a=>" ".repeat(this.indent*2)+a);for(let a of o)this.content.push(a)}compile(){let e=Function,n=this?.args,r=[...(this?.content??[""]).map(o=>` ${o}`)];return new e(...n,r.join(`
|
|
38
|
-
`))}};var wb={major:4,minor:4,patch:3};var ie=h("$ZodType",(t,e)=>{var n;t??(t={}),t._zod.def=e,t._zod.bag=t._zod.bag||{},t._zod.version=wb;let i=[...t._zod.def.checks??[]];t._zod.traits.has("$ZodCheck")&&i.unshift(t);for(let r of i)for(let o of r._zod.onattach)o(t);if(i.length===0)(n=t._zod).deferred??(n.deferred=[]),t._zod.deferred?.push(()=>{t._zod.run=t._zod.parse});else{let r=(a,c,l)=>{let u=Qr(a),d;for(let m of c){if(m._zod.def.when){if(Th(a)||!m._zod.def.when(a))continue}else if(u)continue;let f=a.issues.length,p=m._zod.check(a);if(p instanceof Promise&&l?.async===!1)throw new Ln;if(d||p instanceof Promise)d=(d??Promise.resolve()).then(async()=>{await p,a.issues.length!==f&&(u||(u=Qr(a,f)))});else{if(a.issues.length===f)continue;u||(u=Qr(a,f))}}return d?d.then(()=>a):a},o=(a,c,l)=>{if(Qr(a))return a.aborted=!0,a;let u=r(c,i,l);if(u instanceof Promise){if(l.async===!1)throw new Ln;return u.then(d=>t._zod.parse(d,l))}return t._zod.parse(u,l)};t._zod.run=(a,c)=>{if(c.skipChecks)return t._zod.parse(a,c);if(c.direction==="backward"){let u=t._zod.parse({value:a.value,issues:[]},{...c,skipChecks:!0});return u instanceof Promise?u.then(d=>o(d,a,c)):o(u,a,c)}let l=t._zod.parse(a,c);if(l instanceof Promise){if(c.async===!1)throw new Ln;return l.then(u=>r(u,i,c))}return r(l,i,c)}}de(t,"~standard",()=>({validate:r=>{try{let o=ei(t,r);return o.success?{value:o.data}:{issues:o.error?.issues}}catch{return ti(t,r).then(a=>a.success?{value:a.data}:{issues:a.error?.issues})}},vendor:"zod",version:1}))}),ni=h("$ZodString",(t,e)=>{ie.init(t,e),t._zod.pattern=[...t?._zod.bag?.patterns??[]].pop()??Jh(t._zod.bag),t._zod.parse=(n,i)=>{if(e.coerce)try{n.value=String(n.value)}catch{}return typeof n.value=="string"||n.issues.push({expected:"string",code:"invalid_type",input:n.value,inst:t}),n}}),Me=h("$ZodStringFormat",(t,e)=>{jo.init(t,e),ni.init(t,e)}),Fu=h("$ZodGUID",(t,e)=>{e.pattern??(e.pattern=Dh),Me.init(t,e)}),Vu=h("$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=Zi(i))}else e.pattern??(e.pattern=Zi());Me.init(t,e)}),qu=h("$ZodEmail",(t,e)=>{e.pattern??(e.pattern=Lh),Me.init(t,e)}),Hu=h("$ZodURL",(t,e)=>{Me.init(t,e),t._zod.check=n=>{try{let i=n.value.trim();if(!e.normalize&&e.protocol?.source===qh.source&&!/^https?:\/\//i.test(i)){n.issues.push({code:"invalid_format",format:"url",note:"Invalid URL format",input:n.value,inst:t,continue:!e.abort});return}let r=new URL(i);e.hostname&&(e.hostname.lastIndex=0,e.hostname.test(r.hostname)||n.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:e.hostname.source,input:n.value,inst:t,continue:!e.abort})),e.protocol&&(e.protocol.lastIndex=0,e.protocol.test(r.protocol.endsWith(":")?r.protocol.slice(0,-1):r.protocol)||n.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:e.protocol.source,input:n.value,inst:t,continue:!e.abort})),e.normalize?n.value=r.href:n.value=i;return}catch{n.issues.push({code:"invalid_format",format:"url",input:n.value,inst:t,continue:!e.abort})}}}),Gu=h("$ZodEmoji",(t,e)=>{e.pattern??(e.pattern=Uh()),Me.init(t,e)}),Zu=h("$ZodNanoID",(t,e)=>{e.pattern??(e.pattern=Ph),Me.init(t,e)}),Wu=h("$ZodCUID",(t,e)=>{e.pattern??(e.pattern=Oh),Me.init(t,e)}),Ju=h("$ZodCUID2",(t,e)=>{e.pattern??(e.pattern=Ah),Me.init(t,e)}),Yu=h("$ZodULID",(t,e)=>{e.pattern??(e.pattern=$h),Me.init(t,e)}),Xu=h("$ZodXID",(t,e)=>{e.pattern??(e.pattern=Ch),Me.init(t,e)}),Qu=h("$ZodKSUID",(t,e)=>{e.pattern??(e.pattern=Nh),Me.init(t,e)}),Ib=h("$ZodISODateTime",(t,e)=>{e.pattern??(e.pattern=Wh(e)),Me.init(t,e)}),Eb=h("$ZodISODate",(t,e)=>{e.pattern??(e.pattern=Gh),Me.init(t,e)}),Tb=h("$ZodISOTime",(t,e)=>{e.pattern??(e.pattern=Zh(e)),Me.init(t,e)}),Rb=h("$ZodISODuration",(t,e)=>{e.pattern??(e.pattern=zh),Me.init(t,e)}),ed=h("$ZodIPv4",(t,e)=>{e.pattern??(e.pattern=Mh),Me.init(t,e),t._zod.bag.format="ipv4"}),td=h("$ZodIPv6",(t,e)=>{e.pattern??(e.pattern=jh),Me.init(t,e),t._zod.bag.format="ipv6",t._zod.check=n=>{try{new URL(`http://[${n.value}]`)}catch{n.issues.push({code:"invalid_format",format:"ipv6",input:n.value,inst:t,continue:!e.abort})}}}),nd=h("$ZodMAC",(t,e)=>{e.pattern??(e.pattern=Bh(e.delimiter)),Me.init(t,e),t._zod.bag.format="mac"}),rd=h("$ZodCIDRv4",(t,e)=>{e.pattern??(e.pattern=Kh),Me.init(t,e)}),id=h("$ZodCIDRv6",(t,e)=>{e.pattern??(e.pattern=Fh),Me.init(t,e),t._zod.check=n=>{let i=n.value.split("/");try{if(i.length!==2)throw new Error;let[r,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://[${r}]`)}catch{n.issues.push({code:"invalid_format",format:"cidrv6",input:n.value,inst:t,continue:!e.abort})}}});function xb(t){if(t==="")return!0;if(/\s/.test(t)||t.length%4!==0)return!1;try{return atob(t),!0}catch{return!1}}var od=h("$ZodBase64",(t,e)=>{e.pattern??(e.pattern=Vh),Me.init(t,e),t._zod.bag.contentEncoding="base64",t._zod.check=n=>{xb(n.value)||n.issues.push({code:"invalid_format",format:"base64",input:n.value,inst:t,continue:!e.abort})}});function qE(t){if(!zu.test(t))return!1;let e=t.replace(/[-_]/g,i=>i==="-"?"+":"/"),n=e.padEnd(Math.ceil(e.length/4)*4,"=");return xb(n)}var sd=h("$ZodBase64URL",(t,e)=>{e.pattern??(e.pattern=zu),Me.init(t,e),t._zod.bag.contentEncoding="base64url",t._zod.check=n=>{qE(n.value)||n.issues.push({code:"invalid_format",format:"base64url",input:n.value,inst:t,continue:!e.abort})}}),ad=h("$ZodE164",(t,e)=>{e.pattern??(e.pattern=Hh),Me.init(t,e)});function HE(t,e=null){try{let n=t.split(".");if(n.length!==3)return!1;let[i]=n;if(!i)return!1;let r=JSON.parse(atob(i));return!("typ"in r&&r?.typ!=="JWT"||!r.alg||e&&(!("alg"in r)||r.alg!==e))}catch{return!1}}var cd=h("$ZodJWT",(t,e)=>{Me.init(t,e),t._zod.check=n=>{HE(n.value,e.alg)||n.issues.push({code:"invalid_format",format:"jwt",input:n.value,inst:t,continue:!e.abort})}}),ld=h("$ZodCustomStringFormat",(t,e)=>{Me.init(t,e),t._zod.check=n=>{e.fn(n.value)||n.issues.push({code:"invalid_format",format:e.format,input:n.value,inst:t,continue:!e.abort})}}),Xa=h("$ZodNumber",(t,e)=>{ie.init(t,e),t._zod.pattern=t._zod.bag.pattern??Du,t._zod.parse=(n,i)=>{if(e.coerce)try{n.value=Number(n.value)}catch{}let r=n.value;if(typeof r=="number"&&!Number.isNaN(r)&&Number.isFinite(r))return n;let o=typeof r=="number"?Number.isNaN(r)?"NaN":Number.isFinite(r)?void 0:"Infinity":void 0;return n.issues.push({expected:"number",code:"invalid_type",input:r,inst:t,...o?{received:o}:{}}),n}}),ud=h("$ZodNumberFormat",(t,e)=>{ob.init(t,e),Xa.init(t,e)}),Bo=h("$ZodBoolean",(t,e)=>{ie.init(t,e),t._zod.pattern=Qh,t._zod.parse=(n,i)=>{if(e.coerce)try{n.value=!!n.value}catch{}let r=n.value;return typeof r=="boolean"||n.issues.push({expected:"boolean",code:"invalid_type",input:r,inst:t}),n}}),Qa=h("$ZodBigInt",(t,e)=>{ie.init(t,e),t._zod.pattern=Yh,t._zod.parse=(n,i)=>{if(e.coerce)try{n.value=BigInt(n.value)}catch{}return typeof n.value=="bigint"||n.issues.push({expected:"bigint",code:"invalid_type",input:n.value,inst:t}),n}}),dd=h("$ZodBigIntFormat",(t,e)=>{sb.init(t,e),Qa.init(t,e)}),md=h("$ZodSymbol",(t,e)=>{ie.init(t,e),t._zod.parse=(n,i)=>{let r=n.value;return typeof r=="symbol"||n.issues.push({expected:"symbol",code:"invalid_type",input:r,inst:t}),n}}),pd=h("$ZodUndefined",(t,e)=>{ie.init(t,e),t._zod.pattern=tb,t._zod.values=new Set([void 0]),t._zod.parse=(n,i)=>{let r=n.value;return typeof r>"u"||n.issues.push({expected:"undefined",code:"invalid_type",input:r,inst:t}),n}}),fd=h("$ZodNull",(t,e)=>{ie.init(t,e),t._zod.pattern=eb,t._zod.values=new Set([null]),t._zod.parse=(n,i)=>{let r=n.value;return r===null||n.issues.push({expected:"null",code:"invalid_type",input:r,inst:t}),n}}),gd=h("$ZodAny",(t,e)=>{ie.init(t,e),t._zod.parse=n=>n}),hd=h("$ZodUnknown",(t,e)=>{ie.init(t,e),t._zod.parse=n=>n}),bd=h("$ZodNever",(t,e)=>{ie.init(t,e),t._zod.parse=(n,i)=>(n.issues.push({expected:"never",code:"invalid_type",input:n.value,inst:t}),n)}),_d=h("$ZodVoid",(t,e)=>{ie.init(t,e),t._zod.parse=(n,i)=>{let r=n.value;return typeof r>"u"||n.issues.push({expected:"void",code:"invalid_type",input:r,inst:t}),n}}),vd=h("$ZodDate",(t,e)=>{ie.init(t,e),t._zod.parse=(n,i)=>{if(e.coerce)try{n.value=new Date(n.value)}catch{}let r=n.value,o=r instanceof Date;return o&&!Number.isNaN(r.getTime())||n.issues.push({expected:"date",code:"invalid_type",input:r,...o?{received:"Invalid Date"}:{},inst:t}),n}});function $E(t,e,n){t.issues.length&&e.issues.push(...Xt(n,t.issues)),e.value[n]=t.value}var yd=h("$ZodArray",(t,e)=>{ie.init(t,e),t._zod.parse=(n,i)=>{let r=n.value;if(!Array.isArray(r))return n.issues.push({expected:"array",code:"invalid_type",input:r,inst:t}),n;n.value=Array(r.length);let o=[];for(let a=0;a<r.length;a++){let c=r[a],l=e.element._zod.run({value:c,issues:[]},i);l instanceof Promise?o.push(l.then(u=>$E(u,n,a))):$E(l,n,a)}return o.length?Promise.all(o).then(()=>n):n}});function Ku(t,e,n,i,r,o){let a=n in i;if(t.issues.length){if(r&&o&&!a)return;e.issues.push(...Xt(n,t.issues))}if(!a&&!r){t.issues.length||e.issues.push({code:"invalid_type",expected:"nonoptional",input:void 0,path:[n]});return}t.value===void 0?a&&(e.value[n]=void 0):e.value[n]=t.value}function GE(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 n=Sh(t.shape);return{...t,keys:e,keySet:new Set(e),numKeys:e.length,optionalKeys:new Set(n)}}function ZE(t,e,n,i,r,o){let a=[],c=r.keySet,l=r.catchall._zod,u=l.def.type,d=l.optin==="optional",m=l.optout==="optional";for(let f in e){if(f==="__proto__"||c.has(f))continue;if(u==="never"){a.push(f);continue}let p=l.run({value:e[f],issues:[]},i);p instanceof Promise?t.push(p.then(g=>Ku(g,n,f,e,d,m))):Ku(p,n,f,e,d,m)}return a.length&&n.issues.push({code:"unrecognized_keys",keys:a,input:e,inst:o}),t.length?Promise.all(t).then(()=>n):n}var kd=h("$ZodObject",(t,e)=>{if(ie.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=Po(()=>GE(e));de(t._zod,"propValues",()=>{let c=e.shape,l={};for(let u in c){let d=c[u]._zod;if(d.values){l[u]??(l[u]=new Set);for(let m of d.values)l[u].add(m)}}return l});let r=qi,o=e.catchall,a;t._zod.parse=(c,l)=>{a??(a=i.value);let u=c.value;if(!r(u))return c.issues.push({expected:"object",code:"invalid_type",input:u,inst:t}),c;c.value={};let d=[],m=a.shape;for(let f of a.keys){let p=m[f],g=p._zod.optin==="optional",b=p._zod.optout==="optional",_=p._zod.run({value:u[f],issues:[]},l);_ instanceof Promise?d.push(_.then(T=>Ku(T,c,f,u,g,b))):Ku(_,c,f,u,g,b)}return o?ZE(d,u,c,l,i.value,t):d.length?Promise.all(d).then(()=>c):c}}),Ob=h("$ZodObjectJIT",(t,e)=>{kd.init(t,e);let n=t._zod.parse,i=Po(()=>GE(e)),r=f=>{let p=new Ya(["shape","payload","ctx"]),g=i.value,b=R=>{let D=Iu(R);return`shape[${D}]._zod.run({ value: input[${D}], issues: [] }, ctx)`};p.write("const input = payload.value;");let _=Object.create(null),T=0;for(let R of g.keys)_[R]=`key_${T++}`;p.write("const newResult = {};");for(let R of g.keys){let D=_[R],j=Iu(R),pt=f[R],Y=pt?._zod?.optin==="optional",Re=pt?._zod?.optout==="optional";p.write(`const ${D} = ${b(R)};`),Y&&Re?p.write(`
|
|
39
|
-
if (${D}.issues.length) {
|
|
40
|
-
if (${j} in input) {
|
|
41
|
-
payload.issues = payload.issues.concat(${D}.issues.map(iss => ({
|
|
42
|
-
...iss,
|
|
43
|
-
path: iss.path ? [${j}, ...iss.path] : [${j}]
|
|
44
|
-
})));
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
if (${D}.value === undefined) {
|
|
49
|
-
if (${j} in input) {
|
|
50
|
-
newResult[${j}] = undefined;
|
|
51
|
-
}
|
|
52
|
-
} else {
|
|
53
|
-
newResult[${j}] = ${D}.value;
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
`):Y?p.write(`
|
|
57
|
-
if (${D}.issues.length) {
|
|
58
|
-
payload.issues = payload.issues.concat(${D}.issues.map(iss => ({
|
|
59
|
-
...iss,
|
|
60
|
-
path: iss.path ? [${j}, ...iss.path] : [${j}]
|
|
61
|
-
})));
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
if (${D}.value === undefined) {
|
|
65
|
-
if (${j} in input) {
|
|
66
|
-
newResult[${j}] = undefined;
|
|
67
|
-
}
|
|
68
|
-
} else {
|
|
69
|
-
newResult[${j}] = ${D}.value;
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
`):p.write(`
|
|
73
|
-
const ${D}_present = ${j} in input;
|
|
74
|
-
if (${D}.issues.length) {
|
|
75
|
-
payload.issues = payload.issues.concat(${D}.issues.map(iss => ({
|
|
76
|
-
...iss,
|
|
77
|
-
path: iss.path ? [${j}, ...iss.path] : [${j}]
|
|
78
|
-
})));
|
|
79
|
-
}
|
|
80
|
-
if (!${D}_present && !${D}.issues.length) {
|
|
81
|
-
payload.issues.push({
|
|
82
|
-
code: "invalid_type",
|
|
83
|
-
expected: "nonoptional",
|
|
84
|
-
input: undefined,
|
|
85
|
-
path: [${j}]
|
|
86
|
-
});
|
|
87
|
-
}
|
|
88
|
-
|
|
89
|
-
if (${D}_present) {
|
|
90
|
-
if (${D}.value === undefined) {
|
|
91
|
-
newResult[${j}] = undefined;
|
|
92
|
-
} else {
|
|
93
|
-
newResult[${j}] = ${D}.value;
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
`)}p.write("payload.value = newResult;"),p.write("return payload;");let $=p.compile();return(R,D)=>$(f,R,D)},o,a=qi,c=!Vi.jitless,u=c&&kh.value,d=e.catchall,m;t._zod.parse=(f,p)=>{m??(m=i.value);let g=f.value;return a(g)?c&&u&&p?.async===!1&&p.jitless!==!0?(o||(o=r(e.shape)),f=o(f,p),d?ZE([],g,f,p,m,t):f):n(f,p):(f.issues.push({expected:"object",code:"invalid_type",input:g,inst:t}),f)}});function CE(t,e,n,i){for(let o of t)if(o.issues.length===0)return e.value=o.value,e;let r=t.filter(o=>!Qr(o));return r.length===1?(e.value=r[0].value,r[0]):(e.issues.push({code:"invalid_union",input:e.value,inst:n,errors:t.map(o=>o.issues.map(a=>Ut(a,i,rt())))}),e)}var Ko=h("$ZodUnion",(t,e)=>{ie.init(t,e),de(t._zod,"optin",()=>e.options.some(i=>i._zod.optin==="optional")?"optional":void 0),de(t._zod,"optout",()=>e.options.some(i=>i._zod.optout==="optional")?"optional":void 0),de(t._zod,"values",()=>{if(e.options.every(i=>i._zod.values))return new Set(e.options.flatMap(i=>Array.from(i._zod.values)))}),de(t._zod,"pattern",()=>{if(e.options.every(i=>i._zod.pattern)){let i=e.options.map(r=>r._zod.pattern);return new RegExp(`^(${i.map(r=>Ka(r.source)).join("|")})$`)}});let n=e.options.length===1?e.options[0]._zod.run:null;t._zod.parse=(i,r)=>{if(n)return n(i,r);let o=!1,a=[];for(let c of e.options){let l=c._zod.run({value:i.value,issues:[]},r);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=>CE(c,i,t,r)):CE(a,i,t,r)}});function NE(t,e,n,i){let r=t.filter(o=>o.issues.length===0);return r.length===1?(e.value=r[0].value,e):(r.length===0?e.issues.push({code:"invalid_union",input:e.value,inst:n,errors:t.map(o=>o.issues.map(a=>Ut(a,i,rt())))}):e.issues.push({code:"invalid_union",input:e.value,inst:n,errors:[],inclusive:!1}),e)}var wd=h("$ZodXor",(t,e)=>{Ko.init(t,e),e.inclusive=!1;let n=e.options.length===1?e.options[0]._zod.run:null;t._zod.parse=(i,r)=>{if(n)return n(i,r);let o=!1,a=[];for(let c of e.options){let l=c._zod.run({value:i.value,issues:[]},r);l instanceof Promise?(a.push(l),o=!0):a.push(l)}return o?Promise.all(a).then(c=>NE(c,i,t,r)):NE(a,i,t,r)}}),Sd=h("$ZodDiscriminatedUnion",(t,e)=>{e.inclusive=!1,Ko.init(t,e);let n=t._zod.parse;de(t._zod,"propValues",()=>{let r={};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)){r[c]||(r[c]=new Set);for(let u of l)r[c].add(u)}}return r});let i=Po(()=>{let r=e.options,o=new Map;for(let a of r){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=(r,o)=>{let a=r.value;if(!qi(a))return r.issues.push({code:"invalid_type",expected:"object",input:a,inst:t}),r;let c=i.value.get(a?.[e.discriminator]);return c?c._zod.run(r,o):e.unionFallback||o.direction==="backward"?n(r,o):(r.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}),r)}}),Id=h("$ZodIntersection",(t,e)=>{ie.init(t,e),t._zod.parse=(n,i)=>{let r=n.value,o=e.left._zod.run({value:r,issues:[]},i),a=e.right._zod.run({value:r,issues:[]},i);return o instanceof Promise||a instanceof Promise?Promise.all([o,a]).then(([l,u])=>PE(n,l,u)):PE(n,o,a)}});function Sb(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(Xr(t)&&Xr(e)){let n=Object.keys(e),i=Object.keys(t).filter(o=>n.indexOf(o)!==-1),r={...t,...e};for(let o of i){let a=Sb(t[o],e[o]);if(!a.valid)return{valid:!1,mergeErrorPath:[o,...a.mergeErrorPath]};r[o]=a.data}return{valid:!0,data:r}}if(Array.isArray(t)&&Array.isArray(e)){if(t.length!==e.length)return{valid:!1,mergeErrorPath:[]};let n=[];for(let i=0;i<t.length;i++){let r=t[i],o=e[i],a=Sb(r,o);if(!a.valid)return{valid:!1,mergeErrorPath:[i,...a.mergeErrorPath]};n.push(a.data)}return{valid:!0,data:n}}return{valid:!1,mergeErrorPath:[]}}function PE(t,e,n){let i=new Map,r;for(let c of e.issues)if(c.code==="unrecognized_keys"){r??(r=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 n.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&&r&&t.issues.push({...r,keys:o}),Qr(t))return t;let a=Sb(e.value,n.value);if(!a.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(a.mergeErrorPath)}`);return t.value=a.data,t}var ec=h("$ZodTuple",(t,e)=>{ie.init(t,e);let n=e.items;t._zod.parse=(i,r)=>{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=zE(n,"optin"),l=zE(n,"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>n.length&&i.issues.push({code:"too_big",maximum:n.length,inclusive:!0,input:o,inst:t,origin:"array"})}let u=new Array(n.length);for(let d=0;d<n.length;d++){let m=n[d]._zod.run({value:o[d],issues:[]},r);m instanceof Promise?a.push(m.then(f=>{u[d]=f})):u[d]=m}if(e.rest){let d=n.length-1,m=o.slice(n.length);for(let f of m){d++;let p=e.rest._zod.run({value:f,issues:[]},r);p instanceof Promise?a.push(p.then(g=>DE(g,i,d))):DE(p,i,d)}}return a.length?Promise.all(a).then(()=>LE(u,i,n,o,l)):LE(u,i,n,o,l)}});function zE(t,e){for(let n=t.length-1;n>=0;n--)if(t[n]._zod[e]!=="optional")return n+1;return 0}function DE(t,e,n){t.issues.length&&e.issues.push(...Xt(n,t.issues)),e.value[n]=t.value}function LE(t,e,n,i,r){for(let o=0;o<n.length;o++){let a=t[o],c=o<i.length;if(a.issues.length){if(!c&&o>=r){e.value.length=o;break}e.issues.push(...Xt(o,a.issues))}e.value[o]=a.value}for(let o=e.value.length-1;o>=i.length&&(n[o]._zod.optout==="optional"&&e.value[o]===void 0);o--)e.value.length=o;return e}var Ed=h("$ZodRecord",(t,e)=>{ie.init(t,e),t._zod.parse=(n,i)=>{let r=n.value;if(!Xr(r))return n.issues.push({expected:"record",code:"invalid_type",input:r,inst:t}),n;let o=[],a=e.keyType._zod.values;if(a){n.value={};let c=new Set;for(let u of a)if(typeof u=="string"||typeof u=="number"||typeof u=="symbol"){c.add(typeof u=="number"?u.toString():u);let d=e.keyType._zod.run({value:u,issues:[]},i);if(d instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(d.issues.length){n.issues.push({code:"invalid_key",origin:"record",issues:d.issues.map(p=>Ut(p,i,rt())),input:u,path:[u],inst:t});continue}let m=d.value,f=e.valueType._zod.run({value:r[u],issues:[]},i);f instanceof Promise?o.push(f.then(p=>{p.issues.length&&n.issues.push(...Xt(u,p.issues)),n.value[m]=p.value})):(f.issues.length&&n.issues.push(...Xt(u,f.issues)),n.value[m]=f.value)}let l;for(let u in r)c.has(u)||(l=l??[],l.push(u));l&&l.length>0&&n.issues.push({code:"unrecognized_keys",input:r,inst:t,keys:l})}else{n.value={};for(let c of Reflect.ownKeys(r)){if(c==="__proto__"||!Object.prototype.propertyIsEnumerable.call(r,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"&&Du.test(c)&&l.issues.length){let m=e.keyType._zod.run({value:Number(c),issues:[]},i);if(m instanceof Promise)throw new Error("Async schemas not supported in object keys currently");m.issues.length===0&&(l=m)}if(l.issues.length){e.mode==="loose"?n.value[c]=r[c]:n.issues.push({code:"invalid_key",origin:"record",issues:l.issues.map(m=>Ut(m,i,rt())),input:c,path:[c],inst:t});continue}let d=e.valueType._zod.run({value:r[c],issues:[]},i);d instanceof Promise?o.push(d.then(m=>{m.issues.length&&n.issues.push(...Xt(c,m.issues)),n.value[l.value]=m.value})):(d.issues.length&&n.issues.push(...Xt(c,d.issues)),n.value[l.value]=d.value)}}return o.length?Promise.all(o).then(()=>n):n}}),Td=h("$ZodMap",(t,e)=>{ie.init(t,e),t._zod.parse=(n,i)=>{let r=n.value;if(!(r instanceof Map))return n.issues.push({expected:"map",code:"invalid_type",input:r,inst:t}),n;let o=[];n.value=new Map;for(let[a,c]of r){let l=e.keyType._zod.run({value:a,issues:[]},i),u=e.valueType._zod.run({value:c,issues:[]},i);l instanceof Promise||u instanceof Promise?o.push(Promise.all([l,u]).then(([d,m])=>{UE(d,m,n,a,r,t,i)})):UE(l,u,n,a,r,t,i)}return o.length?Promise.all(o).then(()=>n):n}});function UE(t,e,n,i,r,o,a){t.issues.length&&(Fa.has(typeof i)?n.issues.push(...Xt(i,t.issues)):n.issues.push({code:"invalid_key",origin:"map",input:r,inst:o,issues:t.issues.map(c=>Ut(c,a,rt()))})),e.issues.length&&(Fa.has(typeof i)?n.issues.push(...Xt(i,e.issues)):n.issues.push({origin:"map",code:"invalid_element",input:r,inst:o,key:i,issues:e.issues.map(c=>Ut(c,a,rt()))})),n.value.set(t.value,e.value)}var Rd=h("$ZodSet",(t,e)=>{ie.init(t,e),t._zod.parse=(n,i)=>{let r=n.value;if(!(r instanceof Set))return n.issues.push({input:r,inst:t,expected:"set",code:"invalid_type"}),n;let o=[];n.value=new Set;for(let a of r){let c=e.valueType._zod.run({value:a,issues:[]},i);c instanceof Promise?o.push(c.then(l=>ME(l,n))):ME(c,n)}return o.length?Promise.all(o).then(()=>n):n}});function ME(t,e){t.issues.length&&e.issues.push(...t.issues),e.value.add(t.value)}var xd=h("$ZodEnum",(t,e)=>{ie.init(t,e);let n=Ba(e.entries),i=new Set(n);t._zod.values=i,t._zod.pattern=new RegExp(`^(${n.filter(r=>Fa.has(typeof r)).map(r=>typeof r=="string"?wn(r):r.toString()).join("|")})$`),t._zod.parse=(r,o)=>{let a=r.value;return i.has(a)||r.issues.push({code:"invalid_value",values:n,input:a,inst:t}),r}}),Od=h("$ZodLiteral",(t,e)=>{if(ie.init(t,e),e.values.length===0)throw new Error("Cannot create literal schema with no valid values");let n=new Set(e.values);t._zod.values=n,t._zod.pattern=new RegExp(`^(${e.values.map(i=>typeof i=="string"?wn(i):i?wn(i.toString()):String(i)).join("|")})$`),t._zod.parse=(i,r)=>{let o=i.value;return n.has(o)||i.issues.push({code:"invalid_value",values:e.values,input:o,inst:t}),i}}),Ad=h("$ZodFile",(t,e)=>{ie.init(t,e),t._zod.parse=(n,i)=>{let r=n.value;return r instanceof File||n.issues.push({expected:"file",code:"invalid_type",input:r,inst:t}),n}}),$d=h("$ZodTransform",(t,e)=>{ie.init(t,e),t._zod.optin="optional",t._zod.parse=(n,i)=>{if(i.direction==="backward")throw new Wr(t.constructor.name);let r=e.transform(n.value,n);if(i.async)return(r instanceof Promise?r:Promise.resolve(r)).then(a=>(n.value=a,n.fallback=!0,n));if(r instanceof Promise)throw new Ln;return n.value=r,n.fallback=!0,n}});function jE(t,e){return e===void 0&&(t.issues.length||t.fallback)?{issues:[],value:void 0}:t}var tc=h("$ZodOptional",(t,e)=>{ie.init(t,e),t._zod.optin="optional",t._zod.optout="optional",de(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,void 0]):void 0),de(t._zod,"pattern",()=>{let n=e.innerType._zod.pattern;return n?new RegExp(`^(${Ka(n.source)})?$`):void 0}),t._zod.parse=(n,i)=>{if(e.innerType._zod.optin==="optional"){let r=n.value,o=e.innerType._zod.run(n,i);return o instanceof Promise?o.then(a=>jE(a,r)):jE(o,r)}return n.value===void 0?n:e.innerType._zod.run(n,i)}}),Cd=h("$ZodExactOptional",(t,e)=>{tc.init(t,e),de(t._zod,"values",()=>e.innerType._zod.values),de(t._zod,"pattern",()=>e.innerType._zod.pattern),t._zod.parse=(n,i)=>e.innerType._zod.run(n,i)}),Nd=h("$ZodNullable",(t,e)=>{ie.init(t,e),de(t._zod,"optin",()=>e.innerType._zod.optin),de(t._zod,"optout",()=>e.innerType._zod.optout),de(t._zod,"pattern",()=>{let n=e.innerType._zod.pattern;return n?new RegExp(`^(${Ka(n.source)}|null)$`):void 0}),de(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,null]):void 0),t._zod.parse=(n,i)=>n.value===null?n:e.innerType._zod.run(n,i)}),Pd=h("$ZodDefault",(t,e)=>{ie.init(t,e),t._zod.optin="optional",de(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(n,i)=>{if(i.direction==="backward")return e.innerType._zod.run(n,i);if(n.value===void 0)return n.value=e.defaultValue,n;let r=e.innerType._zod.run(n,i);return r instanceof Promise?r.then(o=>BE(o,e)):BE(r,e)}});function BE(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}var zd=h("$ZodPrefault",(t,e)=>{ie.init(t,e),t._zod.optin="optional",de(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(n,i)=>(i.direction==="backward"||n.value===void 0&&(n.value=e.defaultValue),e.innerType._zod.run(n,i))}),Dd=h("$ZodNonOptional",(t,e)=>{ie.init(t,e),de(t._zod,"values",()=>{let n=e.innerType._zod.values;return n?new Set([...n].filter(i=>i!==void 0)):void 0}),t._zod.parse=(n,i)=>{let r=e.innerType._zod.run(n,i);return r instanceof Promise?r.then(o=>KE(o,t)):KE(r,t)}});function KE(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 Ld=h("$ZodSuccess",(t,e)=>{ie.init(t,e),t._zod.parse=(n,i)=>{if(i.direction==="backward")throw new Wr("ZodSuccess");let r=e.innerType._zod.run(n,i);return r instanceof Promise?r.then(o=>(n.value=o.issues.length===0,n)):(n.value=r.issues.length===0,n)}}),Ud=h("$ZodCatch",(t,e)=>{ie.init(t,e),t._zod.optin="optional",de(t._zod,"optout",()=>e.innerType._zod.optout),de(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(n,i)=>{if(i.direction==="backward")return e.innerType._zod.run(n,i);let r=e.innerType._zod.run(n,i);return r instanceof Promise?r.then(o=>(n.value=o.value,o.issues.length&&(n.value=e.catchValue({...n,error:{issues:o.issues.map(a=>Ut(a,i,rt()))},input:n.value}),n.issues=[],n.fallback=!0),n)):(n.value=r.value,r.issues.length&&(n.value=e.catchValue({...n,error:{issues:r.issues.map(o=>Ut(o,i,rt()))},input:n.value}),n.issues=[],n.fallback=!0),n)}}),Md=h("$ZodNaN",(t,e)=>{ie.init(t,e),t._zod.parse=(n,i)=>((typeof n.value!="number"||!Number.isNaN(n.value))&&n.issues.push({input:n.value,inst:t,expected:"nan",code:"invalid_type"}),n)}),nc=h("$ZodPipe",(t,e)=>{ie.init(t,e),de(t._zod,"values",()=>e.in._zod.values),de(t._zod,"optin",()=>e.in._zod.optin),de(t._zod,"optout",()=>e.out._zod.optout),de(t._zod,"propValues",()=>e.in._zod.propValues),t._zod.parse=(n,i)=>{if(i.direction==="backward"){let o=e.out._zod.run(n,i);return o instanceof Promise?o.then(a=>Mu(a,e.in,i)):Mu(o,e.in,i)}let r=e.in._zod.run(n,i);return r instanceof Promise?r.then(o=>Mu(o,e.out,i)):Mu(r,e.out,i)}});function Mu(t,e,n){return t.issues.length?(t.aborted=!0,t):e._zod.run({value:t.value,issues:t.issues,fallback:t.fallback},n)}var Fo=h("$ZodCodec",(t,e)=>{ie.init(t,e),de(t._zod,"values",()=>e.in._zod.values),de(t._zod,"optin",()=>e.in._zod.optin),de(t._zod,"optout",()=>e.out._zod.optout),de(t._zod,"propValues",()=>e.in._zod.propValues),t._zod.parse=(n,i)=>{if((i.direction||"forward")==="forward"){let o=e.in._zod.run(n,i);return o instanceof Promise?o.then(a=>ju(a,e,i)):ju(o,e,i)}else{let o=e.out._zod.run(n,i);return o instanceof Promise?o.then(a=>ju(a,e,i)):ju(o,e,i)}}});function ju(t,e,n){if(t.issues.length)return t.aborted=!0,t;if((n.direction||"forward")==="forward"){let r=e.transform(t.value,t);return r instanceof Promise?r.then(o=>Bu(t,o,e.out,n)):Bu(t,r,e.out,n)}else{let r=e.reverseTransform(t.value,t);return r instanceof Promise?r.then(o=>Bu(t,o,e.in,n)):Bu(t,r,e.in,n)}}function Bu(t,e,n,i){return t.issues.length?(t.aborted=!0,t):n._zod.run({value:e,issues:t.issues},i)}var Ab=h("$ZodPreprocess",(t,e)=>{nc.init(t,e)}),jd=h("$ZodReadonly",(t,e)=>{ie.init(t,e),de(t._zod,"propValues",()=>e.innerType._zod.propValues),de(t._zod,"values",()=>e.innerType._zod.values),de(t._zod,"optin",()=>e.innerType?._zod?.optin),de(t._zod,"optout",()=>e.innerType?._zod?.optout),t._zod.parse=(n,i)=>{if(i.direction==="backward")return e.innerType._zod.run(n,i);let r=e.innerType._zod.run(n,i);return r instanceof Promise?r.then(FE):FE(r)}});function FE(t){return t.value=Object.freeze(t.value),t}var Bd=h("$ZodTemplateLiteral",(t,e)=>{ie.init(t,e);let n=[];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 r=i._zod.pattern instanceof RegExp?i._zod.pattern.source:i._zod.pattern;if(!r)throw new Error(`Invalid template literal part: ${i._zod.traits}`);let o=r.startsWith("^")?1:0,a=r.endsWith("$")?r.length-1:r.length;n.push(r.slice(o,a))}else if(i===null||wh.has(typeof i))n.push(wn(`${i}`));else throw new Error(`Invalid template literal part: ${i}`);t._zod.pattern=new RegExp(`^${n.join("")}$`),t._zod.parse=(i,r)=>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)}),Kd=h("$ZodFunction",(t,e)=>(ie.init(t,e),t._def=e,t._zod.def=e,t.implement=n=>{if(typeof n!="function")throw new Error("implement() must be called with a function");return function(...i){let r=t._def.input?Hi(t._def.input,i):i,o=Reflect.apply(n,this,r);return t._def.output?Hi(t._def.output,o):o}},t.implementAsync=n=>{if(typeof n!="function")throw new Error("implementAsync() must be called with a function");return async function(...i){let r=t._def.input?await Gi(t._def.input,i):i,o=await Reflect.apply(n,this,r);return t._def.output?await Gi(t._def.output,o):o}},t._zod.parse=(n,i)=>typeof n.value!="function"?(n.issues.push({code:"invalid_type",expected:"function",input:n.value,inst:t}),n):(t._def.output&&t._def.output._zod.def.type==="promise"?n.value=t.implementAsync(n.value):n.value=t.implement(n.value),n),t.input=(...n)=>{let i=t.constructor;return Array.isArray(n[0])?new i({type:"function",input:new ec({type:"tuple",items:n[0],rest:n[1]}),output:t._def.output}):new i({type:"function",input:n[0],output:t._def.output})},t.output=n=>{let i=t.constructor;return new i({type:"function",input:t._def.input,output:n})},t)),Fd=h("$ZodPromise",(t,e)=>{ie.init(t,e),t._zod.parse=(n,i)=>Promise.resolve(n.value).then(r=>e.innerType._zod.run({value:r,issues:[]},i))}),Vd=h("$ZodLazy",(t,e)=>{ie.init(t,e),de(t._zod,"innerType",()=>{let n=e;return n._cachedInner||(n._cachedInner=e.getter()),n._cachedInner}),de(t._zod,"pattern",()=>t._zod.innerType?._zod?.pattern),de(t._zod,"propValues",()=>t._zod.innerType?._zod?.propValues),de(t._zod,"optin",()=>t._zod.innerType?._zod?.optin??void 0),de(t._zod,"optout",()=>t._zod.innerType?._zod?.optout??void 0),t._zod.parse=(n,i)=>t._zod.innerType._zod.run(n,i)}),qd=h("$ZodCustom",(t,e)=>{Be.init(t,e),ie.init(t,e),t._zod.parse=(n,i)=>n,t._zod.check=n=>{let i=n.value,r=e.fn(i);if(r instanceof Promise)return r.then(o=>VE(o,n,i,t));VE(r,n,i,t)}});function VE(t,e,n,i){if(!t){let r={code:"custom",input:n,inst:i,path:[...i._zod.def.path??[]],continue:!i._zod.def.abort};i._zod.def.params&&(r.params=i._zod.def.params),e.issues.push(zo(r))}}var qo={};Er(qo,{ar:()=>WE,az:()=>JE,be:()=>XE,bg:()=>QE,ca:()=>eT,cs:()=>tT,da:()=>nT,de:()=>rT,el:()=>iT,en:()=>Hd,eo:()=>oT,es:()=>sT,fa:()=>aT,fi:()=>cT,fr:()=>lT,frCA:()=>uT,he:()=>dT,hr:()=>mT,hu:()=>pT,hy:()=>gT,id:()=>hT,is:()=>bT,it:()=>_T,ja:()=>vT,ka:()=>yT,kh:()=>kT,km:()=>Gd,ko:()=>wT,lt:()=>IT,mk:()=>ET,ms:()=>TT,nl:()=>RT,no:()=>xT,ota:()=>OT,pl:()=>$T,ps:()=>AT,pt:()=>CT,ro:()=>NT,ru:()=>zT,sl:()=>DT,sv:()=>LT,ta:()=>UT,th:()=>MT,tr:()=>jT,ua:()=>BT,uk:()=>Zd,ur:()=>KT,uz:()=>FT,vi:()=>VT,yo:()=>GT,zhCN:()=>qT,zhTW:()=>HT});var TU=()=>{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(r){return t[r]??null}let n={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 r=>{switch(r.code){case"invalid_type":{let o=i[r.expected]??r.expected,a=O(r.input),c=i[a]??a;return/^[A-Z]/.test(r.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 ${r.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 r.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 ${x(r.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: ${v(r.values,"|")}`;case"too_big":{let o=r.inclusive?"<=":"<",a=e(r.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 ${r.origin??"\u0627\u0644\u0642\u064A\u0645\u0629"} ${o} ${r.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 ${r.origin??"\u0627\u0644\u0642\u064A\u0645\u0629"} ${o} ${r.maximum.toString()}`}case"too_small":{let o=r.inclusive?">=":">",a=e(r.origin);return a?`\u0623\u0635\u063A\u0631 \u0645\u0646 \u0627\u0644\u0644\u0627\u0632\u0645: \u064A\u0641\u062A\u0631\u0636 \u0644\u0640 ${r.origin} \u0623\u0646 \u064A\u0643\u0648\u0646 ${o} ${r.minimum.toString()} ${a.unit}`:`\u0623\u0635\u063A\u0631 \u0645\u0646 \u0627\u0644\u0644\u0627\u0632\u0645: \u064A\u0641\u062A\u0631\u0636 \u0644\u0640 ${r.origin} \u0623\u0646 \u064A\u0643\u0648\u0646 ${o} ${r.minimum.toString()}`}case"invalid_format":{let o=r;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 "${r.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}`:`${n[o.format]??r.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 ${r.divisor}`;case"unrecognized_keys":return`\u0645\u0639\u0631\u0641${r.keys.length>1?"\u0627\u062A":""} \u063A\u0631\u064A\u0628${r.keys.length>1?"\u0629":""}: ${v(r.keys,"\u060C ")}`;case"invalid_key":return`\u0645\u0639\u0631\u0641 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644 \u0641\u064A ${r.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 ${r.origin}`;default:return"\u0645\u062F\u062E\u0644 \u063A\u064A\u0631 \u0645\u0642\u0628\u0648\u0644"}}};function WE(){return{localeError:TU()}}var RU=()=>{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(r){return t[r]??null}let n={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 r=>{switch(r.code){case"invalid_type":{let o=i[r.expected]??r.expected,a=O(r.input),c=i[a]??a;return/^[A-Z]/.test(r.expected)?`Yanl\u0131\u015F d\u0259y\u0259r: g\xF6zl\u0259nil\u0259n instanceof ${r.expected}, daxil olan ${c}`:`Yanl\u0131\u015F d\u0259y\u0259r: g\xF6zl\u0259nil\u0259n ${o}, daxil olan ${c}`}case"invalid_value":return r.values.length===1?`Yanl\u0131\u015F d\u0259y\u0259r: g\xF6zl\u0259nil\u0259n ${x(r.values[0])}`:`Yanl\u0131\u015F se\xE7im: a\u015Fa\u011F\u0131dak\u0131lardan biri olmal\u0131d\u0131r: ${v(r.values,"|")}`;case"too_big":{let o=r.inclusive?"<=":"<",a=e(r.origin);return a?`\xC7ox b\xF6y\xFCk: g\xF6zl\u0259nil\u0259n ${r.origin??"d\u0259y\u0259r"} ${o}${r.maximum.toString()} ${a.unit??"element"}`:`\xC7ox b\xF6y\xFCk: g\xF6zl\u0259nil\u0259n ${r.origin??"d\u0259y\u0259r"} ${o}${r.maximum.toString()}`}case"too_small":{let o=r.inclusive?">=":">",a=e(r.origin);return a?`\xC7ox ki\xE7ik: g\xF6zl\u0259nil\u0259n ${r.origin} ${o}${r.minimum.toString()} ${a.unit}`:`\xC7ox ki\xE7ik: g\xF6zl\u0259nil\u0259n ${r.origin} ${o}${r.minimum.toString()}`}case"invalid_format":{let o=r;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 ${n[o.format]??r.format}`}case"not_multiple_of":return`Yanl\u0131\u015F \u0259d\u0259d: ${r.divisor} il\u0259 b\xF6l\xFCn\u0259 bil\u0259n olmal\u0131d\u0131r`;case"unrecognized_keys":return`Tan\u0131nmayan a\xE7ar${r.keys.length>1?"lar":""}: ${v(r.keys,", ")}`;case"invalid_key":return`${r.origin} daxilind\u0259 yanl\u0131\u015F a\xE7ar`;case"invalid_union":return"Yanl\u0131\u015F d\u0259y\u0259r";case"invalid_element":return`${r.origin} daxilind\u0259 yanl\u0131\u015F d\u0259y\u0259r`;default:return"Yanl\u0131\u015F d\u0259y\u0259r"}}};function JE(){return{localeError:RU()}}function YE(t,e,n,i){let r=Math.abs(t),o=r%10,a=r%100;return a>=11&&a<=19?i:o===1?e:o>=2&&o<=4?n:i}var xU=()=>{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(r){return t[r]??null}let n={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 r=>{switch(r.code){case"invalid_type":{let o=i[r.expected]??r.expected,a=O(r.input),c=i[a]??a;return/^[A-Z]/.test(r.expected)?`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u045E\u0432\u043E\u0434: \u0447\u0430\u043A\u0430\u045E\u0441\u044F instanceof ${r.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 r.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 ${x(r.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 ${v(r.values,"|")}`;case"too_big":{let o=r.inclusive?"<=":"<",a=e(r.origin);if(a){let c=Number(r.maximum),l=YE(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 ${r.origin??"\u0437\u043D\u0430\u0447\u044D\u043D\u043D\u0435"} \u043F\u0430\u0432\u0456\u043D\u043D\u0430 ${a.verb} ${o}${r.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 ${r.origin??"\u0437\u043D\u0430\u0447\u044D\u043D\u043D\u0435"} \u043F\u0430\u0432\u0456\u043D\u043D\u0430 \u0431\u044B\u0446\u044C ${o}${r.maximum.toString()}`}case"too_small":{let o=r.inclusive?">=":">",a=e(r.origin);if(a){let c=Number(r.minimum),l=YE(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 ${r.origin} \u043F\u0430\u0432\u0456\u043D\u043D\u0430 ${a.verb} ${o}${r.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 ${r.origin} \u043F\u0430\u0432\u0456\u043D\u043D\u0430 \u0431\u044B\u0446\u044C ${o}${r.minimum.toString()}`}case"invalid_format":{let o=r;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 ${n[o.format]??r.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 ${r.divisor}`;case"unrecognized_keys":return`\u041D\u0435\u0440\u0430\u0441\u043F\u0430\u0437\u043D\u0430\u043D\u044B ${r.keys.length>1?"\u043A\u043B\u044E\u0447\u044B":"\u043A\u043B\u044E\u0447"}: ${v(r.keys,", ")}`;case"invalid_key":return`\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u043A\u043B\u044E\u0447 \u0443 ${r.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 ${r.origin}`;default:return"\u041D\u044F\u043F\u0440\u0430\u0432\u0456\u043B\u044C\u043D\u044B \u045E\u0432\u043E\u0434"}}};function XE(){return{localeError:xU()}}var OU=()=>{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(r){return t[r]??null}let n={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 r=>{switch(r.code){case"invalid_type":{let o=i[r.expected]??r.expected,a=O(r.input),c=i[a]??a;return/^[A-Z]/.test(r.expected)?`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u0432\u0445\u043E\u0434: \u043E\u0447\u0430\u043A\u0432\u0430\u043D instanceof ${r.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 r.values.length===1?`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u0432\u0445\u043E\u0434: \u043E\u0447\u0430\u043A\u0432\u0430\u043D ${x(r.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 ${v(r.values,"|")}`;case"too_big":{let o=r.inclusive?"<=":"<",a=e(r.origin);return a?`\u0422\u0432\u044A\u0440\u0434\u0435 \u0433\u043E\u043B\u044F\u043C\u043E: \u043E\u0447\u0430\u043A\u0432\u0430 \u0441\u0435 ${r.origin??"\u0441\u0442\u043E\u0439\u043D\u043E\u0441\u0442"} \u0434\u0430 \u0441\u044A\u0434\u044A\u0440\u0436\u0430 ${o}${r.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 ${r.origin??"\u0441\u0442\u043E\u0439\u043D\u043E\u0441\u0442"} \u0434\u0430 \u0431\u044A\u0434\u0435 ${o}${r.maximum.toString()}`}case"too_small":{let o=r.inclusive?">=":">",a=e(r.origin);return a?`\u0422\u0432\u044A\u0440\u0434\u0435 \u043C\u0430\u043B\u043A\u043E: \u043E\u0447\u0430\u043A\u0432\u0430 \u0441\u0435 ${r.origin} \u0434\u0430 \u0441\u044A\u0434\u044A\u0440\u0436\u0430 ${o}${r.minimum.toString()} ${a.unit}`:`\u0422\u0432\u044A\u0440\u0434\u0435 \u043C\u0430\u043B\u043A\u043E: \u043E\u0447\u0430\u043A\u0432\u0430 \u0441\u0435 ${r.origin} \u0434\u0430 \u0431\u044A\u0434\u0435 ${o}${r.minimum.toString()}`}case"invalid_format":{let o=r;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} ${n[o.format]??r.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 ${r.divisor}`;case"unrecognized_keys":return`\u041D\u0435\u0440\u0430\u0437\u043F\u043E\u0437\u043D\u0430\u0442${r.keys.length>1?"\u0438":""} \u043A\u043B\u044E\u0447${r.keys.length>1?"\u043E\u0432\u0435":""}: ${v(r.keys,", ")}`;case"invalid_key":return`\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u043A\u043B\u044E\u0447 \u0432 ${r.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 ${r.origin}`;default:return"\u041D\u0435\u0432\u0430\u043B\u0438\u0434\u0435\u043D \u0432\u0445\u043E\u0434"}}};function QE(){return{localeError:OU()}}var AU=()=>{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(r){return t[r]??null}let n={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 r=>{switch(r.code){case"invalid_type":{let o=i[r.expected]??r.expected,a=O(r.input),c=i[a]??a;return/^[A-Z]/.test(r.expected)?`Tipus inv\xE0lid: s'esperava instanceof ${r.expected}, s'ha rebut ${c}`:`Tipus inv\xE0lid: s'esperava ${o}, s'ha rebut ${c}`}case"invalid_value":return r.values.length===1?`Valor inv\xE0lid: s'esperava ${x(r.values[0])}`:`Opci\xF3 inv\xE0lida: s'esperava una de ${v(r.values," o ")}`;case"too_big":{let o=r.inclusive?"com a m\xE0xim":"menys de",a=e(r.origin);return a?`Massa gran: s'esperava que ${r.origin??"el valor"} contingu\xE9s ${o} ${r.maximum.toString()} ${a.unit??"elements"}`:`Massa gran: s'esperava que ${r.origin??"el valor"} fos ${o} ${r.maximum.toString()}`}case"too_small":{let o=r.inclusive?"com a m\xEDnim":"m\xE9s de",a=e(r.origin);return a?`Massa petit: s'esperava que ${r.origin} contingu\xE9s ${o} ${r.minimum.toString()} ${a.unit}`:`Massa petit: s'esperava que ${r.origin} fos ${o} ${r.minimum.toString()}`}case"invalid_format":{let o=r;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 ${n[o.format]??r.format}`}case"not_multiple_of":return`N\xFAmero inv\xE0lid: ha de ser m\xFAltiple de ${r.divisor}`;case"unrecognized_keys":return`Clau${r.keys.length>1?"s":""} no reconeguda${r.keys.length>1?"s":""}: ${v(r.keys,", ")}`;case"invalid_key":return`Clau inv\xE0lida a ${r.origin}`;case"invalid_union":return"Entrada inv\xE0lida";case"invalid_element":return`Element inv\xE0lid a ${r.origin}`;default:return"Entrada inv\xE0lida"}}};function eT(){return{localeError:AU()}}var $U=()=>{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(r){return t[r]??null}let n={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 r=>{switch(r.code){case"invalid_type":{let o=i[r.expected]??r.expected,a=O(r.input),c=i[a]??a;return/^[A-Z]/.test(r.expected)?`Neplatn\xFD vstup: o\u010Dek\xE1v\xE1no instanceof ${r.expected}, obdr\u017Eeno ${c}`:`Neplatn\xFD vstup: o\u010Dek\xE1v\xE1no ${o}, obdr\u017Eeno ${c}`}case"invalid_value":return r.values.length===1?`Neplatn\xFD vstup: o\u010Dek\xE1v\xE1no ${x(r.values[0])}`:`Neplatn\xE1 mo\u017Enost: o\u010Dek\xE1v\xE1na jedna z hodnot ${v(r.values,"|")}`;case"too_big":{let o=r.inclusive?"<=":"<",a=e(r.origin);return a?`Hodnota je p\u0159\xEDli\u0161 velk\xE1: ${r.origin??"hodnota"} mus\xED m\xEDt ${o}${r.maximum.toString()} ${a.unit??"prvk\u016F"}`:`Hodnota je p\u0159\xEDli\u0161 velk\xE1: ${r.origin??"hodnota"} mus\xED b\xFDt ${o}${r.maximum.toString()}`}case"too_small":{let o=r.inclusive?">=":">",a=e(r.origin);return a?`Hodnota je p\u0159\xEDli\u0161 mal\xE1: ${r.origin??"hodnota"} mus\xED m\xEDt ${o}${r.minimum.toString()} ${a.unit??"prvk\u016F"}`:`Hodnota je p\u0159\xEDli\u0161 mal\xE1: ${r.origin??"hodnota"} mus\xED b\xFDt ${o}${r.minimum.toString()}`}case"invalid_format":{let o=r;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 ${n[o.format]??r.format}`}case"not_multiple_of":return`Neplatn\xE9 \u010D\xEDslo: mus\xED b\xFDt n\xE1sobkem ${r.divisor}`;case"unrecognized_keys":return`Nezn\xE1m\xE9 kl\xED\u010De: ${v(r.keys,", ")}`;case"invalid_key":return`Neplatn\xFD kl\xED\u010D v ${r.origin}`;case"invalid_union":return"Neplatn\xFD vstup";case"invalid_element":return`Neplatn\xE1 hodnota v ${r.origin}`;default:return"Neplatn\xFD vstup"}}};function tT(){return{localeError:$U()}}var CU=()=>{let t={string:{unit:"tegn",verb:"havde"},file:{unit:"bytes",verb:"havde"},array:{unit:"elementer",verb:"indeholdt"},set:{unit:"elementer",verb:"indeholdt"}};function e(r){return t[r]??null}let n={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 r=>{switch(r.code){case"invalid_type":{let o=i[r.expected]??r.expected,a=O(r.input),c=i[a]??a;return/^[A-Z]/.test(r.expected)?`Ugyldigt input: forventede instanceof ${r.expected}, fik ${c}`:`Ugyldigt input: forventede ${o}, fik ${c}`}case"invalid_value":return r.values.length===1?`Ugyldig v\xE6rdi: forventede ${x(r.values[0])}`:`Ugyldigt valg: forventede en af f\xF8lgende ${v(r.values,"|")}`;case"too_big":{let o=r.inclusive?"<=":"<",a=e(r.origin),c=i[r.origin]??r.origin;return a?`For stor: forventede ${c??"value"} ${a.verb} ${o} ${r.maximum.toString()} ${a.unit??"elementer"}`:`For stor: forventede ${c??"value"} havde ${o} ${r.maximum.toString()}`}case"too_small":{let o=r.inclusive?">=":">",a=e(r.origin),c=i[r.origin]??r.origin;return a?`For lille: forventede ${c} ${a.verb} ${o} ${r.minimum.toString()} ${a.unit}`:`For lille: forventede ${c} havde ${o} ${r.minimum.toString()}`}case"invalid_format":{let o=r;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 ${n[o.format]??r.format}`}case"not_multiple_of":return`Ugyldigt tal: skal v\xE6re deleligt med ${r.divisor}`;case"unrecognized_keys":return`${r.keys.length>1?"Ukendte n\xF8gler":"Ukendt n\xF8gle"}: ${v(r.keys,", ")}`;case"invalid_key":return`Ugyldig n\xF8gle i ${r.origin}`;case"invalid_union":return"Ugyldigt input: matcher ingen af de tilladte typer";case"invalid_element":return`Ugyldig v\xE6rdi i ${r.origin}`;default:return"Ugyldigt input"}}};function nT(){return{localeError:CU()}}var NU=()=>{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(r){return t[r]??null}let n={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 r=>{switch(r.code){case"invalid_type":{let o=i[r.expected]??r.expected,a=O(r.input),c=i[a]??a;return/^[A-Z]/.test(r.expected)?`Ung\xFCltige Eingabe: erwartet instanceof ${r.expected}, erhalten ${c}`:`Ung\xFCltige Eingabe: erwartet ${o}, erhalten ${c}`}case"invalid_value":return r.values.length===1?`Ung\xFCltige Eingabe: erwartet ${x(r.values[0])}`:`Ung\xFCltige Option: erwartet eine von ${v(r.values,"|")}`;case"too_big":{let o=r.inclusive?"<=":"<",a=e(r.origin);return a?`Zu gro\xDF: erwartet, dass ${r.origin??"Wert"} ${o}${r.maximum.toString()} ${a.unit??"Elemente"} hat`:`Zu gro\xDF: erwartet, dass ${r.origin??"Wert"} ${o}${r.maximum.toString()} ist`}case"too_small":{let o=r.inclusive?">=":">",a=e(r.origin);return a?`Zu klein: erwartet, dass ${r.origin} ${o}${r.minimum.toString()} ${a.unit} hat`:`Zu klein: erwartet, dass ${r.origin} ${o}${r.minimum.toString()} ist`}case"invalid_format":{let o=r;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: ${n[o.format]??r.format}`}case"not_multiple_of":return`Ung\xFCltige Zahl: muss ein Vielfaches von ${r.divisor} sein`;case"unrecognized_keys":return`${r.keys.length>1?"Unbekannte Schl\xFCssel":"Unbekannter Schl\xFCssel"}: ${v(r.keys,", ")}`;case"invalid_key":return`Ung\xFCltiger Schl\xFCssel in ${r.origin}`;case"invalid_union":return"Ung\xFCltige Eingabe";case"invalid_element":return`Ung\xFCltiger Wert in ${r.origin}`;default:return"Ung\xFCltige Eingabe"}}};function rT(){return{localeError:NU()}}var PU=()=>{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(r){return t[r]??null}let n={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 r=>{switch(r.code){case"invalid_type":{let o=i[r.expected]??r.expected,a=O(r.input),c=i[a]??a;return typeof r.expected=="string"&&/^[A-Z]/.test(r.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 ${r.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 r.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 ${x(r.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 ${v(r.values,"|")}`;case"too_big":{let o=r.inclusive?"<=":"<",a=e(r.origin);return a?`\u03A0\u03BF\u03BB\u03CD \u03BC\u03B5\u03B3\u03AC\u03BB\u03BF: \u03B1\u03BD\u03B1\u03BC\u03B5\u03BD\u03CC\u03C4\u03B1\u03BD ${r.origin??"\u03C4\u03B9\u03BC\u03AE"} \u03BD\u03B1 \u03AD\u03C7\u03B5\u03B9 ${o}${r.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 ${r.origin??"\u03C4\u03B9\u03BC\u03AE"} \u03BD\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9 ${o}${r.maximum.toString()}`}case"too_small":{let o=r.inclusive?">=":">",a=e(r.origin);return a?`\u03A0\u03BF\u03BB\u03CD \u03BC\u03B9\u03BA\u03C1\u03CC: \u03B1\u03BD\u03B1\u03BC\u03B5\u03BD\u03CC\u03C4\u03B1\u03BD ${r.origin} \u03BD\u03B1 \u03AD\u03C7\u03B5\u03B9 ${o}${r.minimum.toString()} ${a.unit}`:`\u03A0\u03BF\u03BB\u03CD \u03BC\u03B9\u03BA\u03C1\u03CC: \u03B1\u03BD\u03B1\u03BC\u03B5\u03BD\u03CC\u03C4\u03B1\u03BD ${r.origin} \u03BD\u03B1 \u03B5\u03AF\u03BD\u03B1\u03B9 ${o}${r.minimum.toString()}`}case"invalid_format":{let o=r;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: ${n[o.format]??r.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 ${r.divisor}`;case"unrecognized_keys":return`\u0386\u03B3\u03BD\u03C9\u03C3\u03C4${r.keys.length>1?"\u03B1":"\u03BF"} \u03BA\u03BB\u03B5\u03B9\u03B4${r.keys.length>1?"\u03B9\u03AC":"\u03AF"}: ${v(r.keys,", ")}`;case"invalid_key":return`\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03BF \u03BA\u03BB\u03B5\u03B9\u03B4\u03AF \u03C3\u03C4\u03BF ${r.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 ${r.origin}`;default:return"\u039C\u03B7 \u03AD\u03B3\u03BA\u03C5\u03C1\u03B7 \u03B5\u03AF\u03C3\u03BF\u03B4\u03BF\u03C2"}}};function iT(){return{localeError:PU()}}var zU=()=>{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(r){return t[r]??null}let n={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 r=>{switch(r.code){case"invalid_type":{let o=i[r.expected]??r.expected,a=O(r.input),c=i[a]??a;return`Invalid input: expected ${o}, received ${c}`}case"invalid_value":return r.values.length===1?`Invalid input: expected ${x(r.values[0])}`:`Invalid option: expected one of ${v(r.values,"|")}`;case"too_big":{let o=r.inclusive?"<=":"<",a=e(r.origin);return a?`Too big: expected ${r.origin??"value"} to have ${o}${r.maximum.toString()} ${a.unit??"elements"}`:`Too big: expected ${r.origin??"value"} to be ${o}${r.maximum.toString()}`}case"too_small":{let o=r.inclusive?">=":">",a=e(r.origin);return a?`Too small: expected ${r.origin} to have ${o}${r.minimum.toString()} ${a.unit}`:`Too small: expected ${r.origin} to be ${o}${r.minimum.toString()}`}case"invalid_format":{let o=r;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 ${n[o.format]??r.format}`}case"not_multiple_of":return`Invalid number: must be a multiple of ${r.divisor}`;case"unrecognized_keys":return`Unrecognized key${r.keys.length>1?"s":""}: ${v(r.keys,", ")}`;case"invalid_key":return`Invalid key in ${r.origin}`;case"invalid_union":return r.options&&Array.isArray(r.options)&&r.options.length>0?`Invalid discriminator value. Expected ${r.options.map(a=>`'${a}'`).join(" | ")}`:"Invalid input";case"invalid_element":return`Invalid value in ${r.origin}`;default:return"Invalid input"}}};function Hd(){return{localeError:zU()}}var DU=()=>{let t={string:{unit:"karaktrojn",verb:"havi"},file:{unit:"bajtojn",verb:"havi"},array:{unit:"elementojn",verb:"havi"},set:{unit:"elementojn",verb:"havi"}};function e(r){return t[r]??null}let n={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 r=>{switch(r.code){case"invalid_type":{let o=i[r.expected]??r.expected,a=O(r.input),c=i[a]??a;return/^[A-Z]/.test(r.expected)?`Nevalida enigo: atendi\u011Dis instanceof ${r.expected}, ricevi\u011Dis ${c}`:`Nevalida enigo: atendi\u011Dis ${o}, ricevi\u011Dis ${c}`}case"invalid_value":return r.values.length===1?`Nevalida enigo: atendi\u011Dis ${x(r.values[0])}`:`Nevalida opcio: atendi\u011Dis unu el ${v(r.values,"|")}`;case"too_big":{let o=r.inclusive?"<=":"<",a=e(r.origin);return a?`Tro granda: atendi\u011Dis ke ${r.origin??"valoro"} havu ${o}${r.maximum.toString()} ${a.unit??"elementojn"}`:`Tro granda: atendi\u011Dis ke ${r.origin??"valoro"} havu ${o}${r.maximum.toString()}`}case"too_small":{let o=r.inclusive?">=":">",a=e(r.origin);return a?`Tro malgranda: atendi\u011Dis ke ${r.origin} havu ${o}${r.minimum.toString()} ${a.unit}`:`Tro malgranda: atendi\u011Dis ke ${r.origin} estu ${o}${r.minimum.toString()}`}case"invalid_format":{let o=r;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 ${n[o.format]??r.format}`}case"not_multiple_of":return`Nevalida nombro: devas esti oblo de ${r.divisor}`;case"unrecognized_keys":return`Nekonata${r.keys.length>1?"j":""} \u015Dlosilo${r.keys.length>1?"j":""}: ${v(r.keys,", ")}`;case"invalid_key":return`Nevalida \u015Dlosilo en ${r.origin}`;case"invalid_union":return"Nevalida enigo";case"invalid_element":return`Nevalida valoro en ${r.origin}`;default:return"Nevalida enigo"}}};function oT(){return{localeError:DU()}}var LU=()=>{let t={string:{unit:"caracteres",verb:"tener"},file:{unit:"bytes",verb:"tener"},array:{unit:"elementos",verb:"tener"},set:{unit:"elementos",verb:"tener"}};function e(r){return t[r]??null}let n={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 r=>{switch(r.code){case"invalid_type":{let o=i[r.expected]??r.expected,a=O(r.input),c=i[a]??a;return/^[A-Z]/.test(r.expected)?`Entrada inv\xE1lida: se esperaba instanceof ${r.expected}, recibido ${c}`:`Entrada inv\xE1lida: se esperaba ${o}, recibido ${c}`}case"invalid_value":return r.values.length===1?`Entrada inv\xE1lida: se esperaba ${x(r.values[0])}`:`Opci\xF3n inv\xE1lida: se esperaba una de ${v(r.values,"|")}`;case"too_big":{let o=r.inclusive?"<=":"<",a=e(r.origin),c=i[r.origin]??r.origin;return a?`Demasiado grande: se esperaba que ${c??"valor"} tuviera ${o}${r.maximum.toString()} ${a.unit??"elementos"}`:`Demasiado grande: se esperaba que ${c??"valor"} fuera ${o}${r.maximum.toString()}`}case"too_small":{let o=r.inclusive?">=":">",a=e(r.origin),c=i[r.origin]??r.origin;return a?`Demasiado peque\xF1o: se esperaba que ${c} tuviera ${o}${r.minimum.toString()} ${a.unit}`:`Demasiado peque\xF1o: se esperaba que ${c} fuera ${o}${r.minimum.toString()}`}case"invalid_format":{let o=r;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 ${n[o.format]??r.format}`}case"not_multiple_of":return`N\xFAmero inv\xE1lido: debe ser m\xFAltiplo de ${r.divisor}`;case"unrecognized_keys":return`Llave${r.keys.length>1?"s":""} desconocida${r.keys.length>1?"s":""}: ${v(r.keys,", ")}`;case"invalid_key":return`Llave inv\xE1lida en ${i[r.origin]??r.origin}`;case"invalid_union":return"Entrada inv\xE1lida";case"invalid_element":return`Valor inv\xE1lido en ${i[r.origin]??r.origin}`;default:return"Entrada inv\xE1lida"}}};function sT(){return{localeError:LU()}}var UU=()=>{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(r){return t[r]??null}let n={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 r=>{switch(r.code){case"invalid_type":{let o=i[r.expected]??r.expected,a=O(r.input),c=i[a]??a;return/^[A-Z]/.test(r.expected)?`\u0648\u0631\u0648\u062F\u06CC \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0645\u06CC\u200C\u0628\u0627\u06CC\u0633\u062A instanceof ${r.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 r.values.length===1?`\u0648\u0631\u0648\u062F\u06CC \u0646\u0627\u0645\u0639\u062A\u0628\u0631: \u0645\u06CC\u200C\u0628\u0627\u06CC\u0633\u062A ${x(r.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 ${v(r.values,"|")} \u0645\u06CC\u200C\u0628\u0648\u062F`;case"too_big":{let o=r.inclusive?"<=":"<",a=e(r.origin);return a?`\u062E\u06CC\u0644\u06CC \u0628\u0632\u0631\u06AF: ${r.origin??"\u0645\u0642\u062F\u0627\u0631"} \u0628\u0627\u06CC\u062F ${o}${r.maximum.toString()} ${a.unit??"\u0639\u0646\u0635\u0631"} \u0628\u0627\u0634\u062F`:`\u062E\u06CC\u0644\u06CC \u0628\u0632\u0631\u06AF: ${r.origin??"\u0645\u0642\u062F\u0627\u0631"} \u0628\u0627\u06CC\u062F ${o}${r.maximum.toString()} \u0628\u0627\u0634\u062F`}case"too_small":{let o=r.inclusive?">=":">",a=e(r.origin);return a?`\u062E\u06CC\u0644\u06CC \u06A9\u0648\u0686\u06A9: ${r.origin} \u0628\u0627\u06CC\u062F ${o}${r.minimum.toString()} ${a.unit} \u0628\u0627\u0634\u062F`:`\u062E\u06CC\u0644\u06CC \u06A9\u0648\u0686\u06A9: ${r.origin} \u0628\u0627\u06CC\u062F ${o}${r.minimum.toString()} \u0628\u0627\u0634\u062F`}case"invalid_format":{let o=r;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`:`${n[o.format]??r.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 ${r.divisor} \u0628\u0627\u0634\u062F`;case"unrecognized_keys":return`\u06A9\u0644\u06CC\u062F${r.keys.length>1?"\u0647\u0627\u06CC":""} \u0646\u0627\u0634\u0646\u0627\u0633: ${v(r.keys,", ")}`;case"invalid_key":return`\u06A9\u0644\u06CC\u062F \u0646\u0627\u0634\u0646\u0627\u0633 \u062F\u0631 ${r.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 ${r.origin}`;default:return"\u0648\u0631\u0648\u062F\u06CC \u0646\u0627\u0645\u0639\u062A\u0628\u0631"}}};function aT(){return{localeError:UU()}}var MU=()=>{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(r){return t[r]??null}let n={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 r=>{switch(r.code){case"invalid_type":{let o=i[r.expected]??r.expected,a=O(r.input),c=i[a]??a;return/^[A-Z]/.test(r.expected)?`Virheellinen tyyppi: odotettiin instanceof ${r.expected}, oli ${c}`:`Virheellinen tyyppi: odotettiin ${o}, oli ${c}`}case"invalid_value":return r.values.length===1?`Virheellinen sy\xF6te: t\xE4ytyy olla ${x(r.values[0])}`:`Virheellinen valinta: t\xE4ytyy olla yksi seuraavista: ${v(r.values,"|")}`;case"too_big":{let o=r.inclusive?"<=":"<",a=e(r.origin);return a?`Liian suuri: ${a.subject} t\xE4ytyy olla ${o}${r.maximum.toString()} ${a.unit}`.trim():`Liian suuri: arvon t\xE4ytyy olla ${o}${r.maximum.toString()}`}case"too_small":{let o=r.inclusive?">=":">",a=e(r.origin);return a?`Liian pieni: ${a.subject} t\xE4ytyy olla ${o}${r.minimum.toString()} ${a.unit}`.trim():`Liian pieni: arvon t\xE4ytyy olla ${o}${r.minimum.toString()}`}case"invalid_format":{let o=r;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 ${n[o.format]??r.format}`}case"not_multiple_of":return`Virheellinen luku: t\xE4ytyy olla luvun ${r.divisor} monikerta`;case"unrecognized_keys":return`${r.keys.length>1?"Tuntemattomat avaimet":"Tuntematon avain"}: ${v(r.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 cT(){return{localeError:MU()}}var jU=()=>{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(r){return t[r]??null}let n={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 r=>{switch(r.code){case"invalid_type":{let o=i[r.expected]??r.expected,a=O(r.input),c=i[a]??a;return/^[A-Z]/.test(r.expected)?`Entr\xE9e invalide : instanceof ${r.expected} attendu, ${c} re\xE7u`:`Entr\xE9e invalide : ${o} attendu, ${c} re\xE7u`}case"invalid_value":return r.values.length===1?`Entr\xE9e invalide : ${x(r.values[0])} attendu`:`Option invalide : une valeur parmi ${v(r.values,"|")} attendue`;case"too_big":{let o=r.inclusive?"<=":"<",a=e(r.origin);return a?`Trop grand : ${i[r.origin]??"valeur"} doit ${a.verb} ${o}${r.maximum.toString()} ${a.unit??"\xE9l\xE9ment(s)"}`:`Trop grand : ${i[r.origin]??"valeur"} doit \xEAtre ${o}${r.maximum.toString()}`}case"too_small":{let o=r.inclusive?">=":">",a=e(r.origin);return a?`Trop petit : ${i[r.origin]??"valeur"} doit ${a.verb} ${o}${r.minimum.toString()} ${a.unit}`:`Trop petit : ${i[r.origin]??"valeur"} doit \xEAtre ${o}${r.minimum.toString()}`}case"invalid_format":{let o=r;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}`:`${n[o.format]??r.format} invalide`}case"not_multiple_of":return`Nombre invalide : doit \xEAtre un multiple de ${r.divisor}`;case"unrecognized_keys":return`Cl\xE9${r.keys.length>1?"s":""} non reconnue${r.keys.length>1?"s":""} : ${v(r.keys,", ")}`;case"invalid_key":return`Cl\xE9 invalide dans ${r.origin}`;case"invalid_union":return"Entr\xE9e invalide";case"invalid_element":return`Valeur invalide dans ${r.origin}`;default:return"Entr\xE9e invalide"}}};function lT(){return{localeError:jU()}}var BU=()=>{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(r){return t[r]??null}let n={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 r=>{switch(r.code){case"invalid_type":{let o=i[r.expected]??r.expected,a=O(r.input),c=i[a]??a;return/^[A-Z]/.test(r.expected)?`Entr\xE9e invalide : attendu instanceof ${r.expected}, re\xE7u ${c}`:`Entr\xE9e invalide : attendu ${o}, re\xE7u ${c}`}case"invalid_value":return r.values.length===1?`Entr\xE9e invalide : attendu ${x(r.values[0])}`:`Option invalide : attendu l'une des valeurs suivantes ${v(r.values,"|")}`;case"too_big":{let o=r.inclusive?"\u2264":"<",a=e(r.origin);return a?`Trop grand : attendu que ${r.origin??"la valeur"} ait ${o}${r.maximum.toString()} ${a.unit}`:`Trop grand : attendu que ${r.origin??"la valeur"} soit ${o}${r.maximum.toString()}`}case"too_small":{let o=r.inclusive?"\u2265":">",a=e(r.origin);return a?`Trop petit : attendu que ${r.origin} ait ${o}${r.minimum.toString()} ${a.unit}`:`Trop petit : attendu que ${r.origin} soit ${o}${r.minimum.toString()}`}case"invalid_format":{let o=r;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}`:`${n[o.format]??r.format} invalide`}case"not_multiple_of":return`Nombre invalide : doit \xEAtre un multiple de ${r.divisor}`;case"unrecognized_keys":return`Cl\xE9${r.keys.length>1?"s":""} non reconnue${r.keys.length>1?"s":""} : ${v(r.keys,", ")}`;case"invalid_key":return`Cl\xE9 invalide dans ${r.origin}`;case"invalid_union":return"Entr\xE9e invalide";case"invalid_element":return`Valeur invalide dans ${r.origin}`;default:return"Entr\xE9e invalide"}}};function uT(){return{localeError:BU()}}var KU=()=>{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"}},n=u=>u?t[u]:void 0,i=u=>{let d=n(u);return d?d.label:u??t.unknown.label},r=u=>`\u05D4${i(u)}`,o=u=>(n(u)?.gender??"m")==="f"?"\u05E6\u05E8\u05D9\u05DB\u05D4 \u05DC\u05D4\u05D9\u05D5\u05EA":"\u05E6\u05E8\u05D9\u05DA \u05DC\u05D4\u05D9\u05D5\u05EA",a=u=>u?e[u]??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 u=>{switch(u.code){case"invalid_type":{let d=u.expected,m=l[d??""]??i(d),f=O(u.input),p=l[f]??t[f]?.label??f;return/^[A-Z]/.test(u.expected)?`\u05E7\u05DC\u05D8 \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF: \u05E6\u05E8\u05D9\u05DA \u05DC\u05D4\u05D9\u05D5\u05EA instanceof ${u.expected}, \u05D4\u05EA\u05E7\u05D1\u05DC ${p}`:`\u05E7\u05DC\u05D8 \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF: \u05E6\u05E8\u05D9\u05DA \u05DC\u05D4\u05D9\u05D5\u05EA ${m}, \u05D4\u05EA\u05E7\u05D1\u05DC ${p}`}case"invalid_value":{if(u.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 ${x(u.values[0])}`;let d=u.values.map(p=>x(p));if(u.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 ${d[0]} \u05D0\u05D5 ${d[1]}`;let m=d[d.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 ${d.slice(0,-1).join(", ")} \u05D0\u05D5 ${m}`}case"too_big":{let d=a(u.origin),m=r(u.origin??"value");if(u.origin==="string")return`${d?.longLabel??"\u05D0\u05E8\u05D5\u05DA"} \u05DE\u05D3\u05D9: ${m} \u05E6\u05E8\u05D9\u05DB\u05D4 \u05DC\u05D4\u05DB\u05D9\u05DC ${u.maximum.toString()} ${d?.unit??""} ${u.inclusive?"\u05D0\u05D5 \u05E4\u05D7\u05D5\u05EA":"\u05DC\u05DB\u05DC \u05D4\u05D9\u05D5\u05EA\u05E8"}`.trim();if(u.origin==="number"){let g=u.inclusive?`\u05E7\u05D8\u05DF \u05D0\u05D5 \u05E9\u05D5\u05D5\u05D4 \u05DC-${u.maximum}`:`\u05E7\u05D8\u05DF \u05DE-${u.maximum}`;return`\u05D2\u05D3\u05D5\u05DC \u05DE\u05D3\u05D9: ${m} \u05E6\u05E8\u05D9\u05DA \u05DC\u05D4\u05D9\u05D5\u05EA ${g}`}if(u.origin==="array"||u.origin==="set"){let g=u.origin==="set"?"\u05E6\u05E8\u05D9\u05DB\u05D4":"\u05E6\u05E8\u05D9\u05DA",b=u.inclusive?`${u.maximum} ${d?.unit??""} \u05D0\u05D5 \u05E4\u05D7\u05D5\u05EA`:`\u05E4\u05D7\u05D5\u05EA \u05DE-${u.maximum} ${d?.unit??""}`;return`\u05D2\u05D3\u05D5\u05DC \u05DE\u05D3\u05D9: ${m} ${g} \u05DC\u05D4\u05DB\u05D9\u05DC ${b}`.trim()}let f=u.inclusive?"<=":"<",p=o(u.origin??"value");return d?.unit?`${d.longLabel} \u05DE\u05D3\u05D9: ${m} ${p} ${f}${u.maximum.toString()} ${d.unit}`:`${d?.longLabel??"\u05D2\u05D3\u05D5\u05DC"} \u05DE\u05D3\u05D9: ${m} ${p} ${f}${u.maximum.toString()}`}case"too_small":{let d=a(u.origin),m=r(u.origin??"value");if(u.origin==="string")return`${d?.shortLabel??"\u05E7\u05E6\u05E8"} \u05DE\u05D3\u05D9: ${m} \u05E6\u05E8\u05D9\u05DB\u05D4 \u05DC\u05D4\u05DB\u05D9\u05DC ${u.minimum.toString()} ${d?.unit??""} ${u.inclusive?"\u05D0\u05D5 \u05D9\u05D5\u05EA\u05E8":"\u05DC\u05E4\u05D7\u05D5\u05EA"}`.trim();if(u.origin==="number"){let g=u.inclusive?`\u05D2\u05D3\u05D5\u05DC \u05D0\u05D5 \u05E9\u05D5\u05D5\u05D4 \u05DC-${u.minimum}`:`\u05D2\u05D3\u05D5\u05DC \u05DE-${u.minimum}`;return`\u05E7\u05D8\u05DF \u05DE\u05D3\u05D9: ${m} \u05E6\u05E8\u05D9\u05DA \u05DC\u05D4\u05D9\u05D5\u05EA ${g}`}if(u.origin==="array"||u.origin==="set"){let g=u.origin==="set"?"\u05E6\u05E8\u05D9\u05DB\u05D4":"\u05E6\u05E8\u05D9\u05DA";if(u.minimum===1&&u.inclusive){let _=(u.origin==="set","\u05DC\u05E4\u05D7\u05D5\u05EA \u05E4\u05E8\u05D9\u05D8 \u05D0\u05D7\u05D3");return`\u05E7\u05D8\u05DF \u05DE\u05D3\u05D9: ${m} ${g} \u05DC\u05D4\u05DB\u05D9\u05DC ${_}`}let b=u.inclusive?`${u.minimum} ${d?.unit??""} \u05D0\u05D5 \u05D9\u05D5\u05EA\u05E8`:`\u05D9\u05D5\u05EA\u05E8 \u05DE-${u.minimum} ${d?.unit??""}`;return`\u05E7\u05D8\u05DF \u05DE\u05D3\u05D9: ${m} ${g} \u05DC\u05D4\u05DB\u05D9\u05DC ${b}`.trim()}let f=u.inclusive?">=":">",p=o(u.origin??"value");return d?.unit?`${d.shortLabel} \u05DE\u05D3\u05D9: ${m} ${p} ${f}${u.minimum.toString()} ${d.unit}`:`${d?.shortLabel??"\u05E7\u05D8\u05DF"} \u05DE\u05D3\u05D9: ${m} ${p} ${f}${u.minimum.toString()}`}case"invalid_format":{let d=u;if(d.format==="starts_with")return`\u05D4\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA \u05D7\u05D9\u05D9\u05D1\u05EA \u05DC\u05D4\u05EA\u05D7\u05D9\u05DC \u05D1 "${d.prefix}"`;if(d.format==="ends_with")return`\u05D4\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA \u05D7\u05D9\u05D9\u05D1\u05EA \u05DC\u05D4\u05E1\u05EA\u05D9\u05D9\u05DD \u05D1 "${d.suffix}"`;if(d.format==="includes")return`\u05D4\u05DE\u05D7\u05E8\u05D5\u05D6\u05EA \u05D7\u05D9\u05D9\u05D1\u05EA \u05DC\u05DB\u05DC\u05D5\u05DC "${d.includes}"`;if(d.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 ${d.pattern}`;let m=c[d.format],f=m?.label??d.format,g=(m?.gender??"m")==="f"?"\u05EA\u05E7\u05D9\u05E0\u05D4":"\u05EA\u05E7\u05D9\u05DF";return`${f} \u05DC\u05D0 ${g}`}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 ${u.divisor}`;case"unrecognized_keys":return`\u05DE\u05E4\u05EA\u05D7${u.keys.length>1?"\u05D5\u05EA":""} \u05DC\u05D0 \u05DE\u05D6\u05D5\u05D4${u.keys.length>1?"\u05D9\u05DD":"\u05D4"}: ${v(u.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${r(u.origin??"array")}`;default:return"\u05E7\u05DC\u05D8 \u05DC\u05D0 \u05EA\u05E7\u05D9\u05DF"}}};function dT(){return{localeError:KU()}}var FU=()=>{let t={string:{unit:"znakova",verb:"imati"},file:{unit:"bajtova",verb:"imati"},array:{unit:"stavki",verb:"imati"},set:{unit:"stavki",verb:"imati"}};function e(r){return t[r]??null}let n={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 r=>{switch(r.code){case"invalid_type":{let o=i[r.expected]??r.expected,a=O(r.input),c=i[a]??a;return/^[A-Z]/.test(r.expected)?`Neispravan unos: o\u010Dekuje se instanceof ${r.expected}, a primljeno je ${c}`:`Neispravan unos: o\u010Dekuje se ${o}, a primljeno je ${c}`}case"invalid_value":return r.values.length===1?`Neispravna vrijednost: o\u010Dekivano ${x(r.values[0])}`:`Neispravna opcija: o\u010Dekivano jedno od ${v(r.values,"|")}`;case"too_big":{let o=r.inclusive?"<=":"<",a=e(r.origin),c=i[r.origin]??r.origin;return a?`Preveliko: o\u010Dekivano da ${c??"vrijednost"} ima ${o}${r.maximum.toString()} ${a.unit??"elemenata"}`:`Preveliko: o\u010Dekivano da ${c??"vrijednost"} bude ${o}${r.maximum.toString()}`}case"too_small":{let o=r.inclusive?">=":">",a=e(r.origin),c=i[r.origin]??r.origin;return a?`Premalo: o\u010Dekivano da ${c} ima ${o}${r.minimum.toString()} ${a.unit}`:`Premalo: o\u010Dekivano da ${c} bude ${o}${r.minimum.toString()}`}case"invalid_format":{let o=r;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 ${n[o.format]??r.format}`}case"not_multiple_of":return`Neispravan broj: mora biti vi\u0161ekratnik od ${r.divisor}`;case"unrecognized_keys":return`Neprepoznat${r.keys.length>1?"i klju\u010Devi":" klju\u010D"}: ${v(r.keys,", ")}`;case"invalid_key":return`Neispravan klju\u010D u ${i[r.origin]??r.origin}`;case"invalid_union":return"Neispravan unos";case"invalid_element":return`Neispravna vrijednost u ${i[r.origin]??r.origin}`;default:return"Neispravan unos"}}};function mT(){return{localeError:FU()}}var VU=()=>{let t={string:{unit:"karakter",verb:"legyen"},file:{unit:"byte",verb:"legyen"},array:{unit:"elem",verb:"legyen"},set:{unit:"elem",verb:"legyen"}};function e(r){return t[r]??null}let n={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 r=>{switch(r.code){case"invalid_type":{let o=i[r.expected]??r.expected,a=O(r.input),c=i[a]??a;return/^[A-Z]/.test(r.expected)?`\xC9rv\xE9nytelen bemenet: a v\xE1rt \xE9rt\xE9k instanceof ${r.expected}, a kapott \xE9rt\xE9k ${c}`:`\xC9rv\xE9nytelen bemenet: a v\xE1rt \xE9rt\xE9k ${o}, a kapott \xE9rt\xE9k ${c}`}case"invalid_value":return r.values.length===1?`\xC9rv\xE9nytelen bemenet: a v\xE1rt \xE9rt\xE9k ${x(r.values[0])}`:`\xC9rv\xE9nytelen opci\xF3: valamelyik \xE9rt\xE9k v\xE1rt ${v(r.values,"|")}`;case"too_big":{let o=r.inclusive?"<=":"<",a=e(r.origin);return a?`T\xFAl nagy: ${r.origin??"\xE9rt\xE9k"} m\xE9rete t\xFAl nagy ${o}${r.maximum.toString()} ${a.unit??"elem"}`:`T\xFAl nagy: a bemeneti \xE9rt\xE9k ${r.origin??"\xE9rt\xE9k"} t\xFAl nagy: ${o}${r.maximum.toString()}`}case"too_small":{let o=r.inclusive?">=":">",a=e(r.origin);return a?`T\xFAl kicsi: a bemeneti \xE9rt\xE9k ${r.origin} m\xE9rete t\xFAl kicsi ${o}${r.minimum.toString()} ${a.unit}`:`T\xFAl kicsi: a bemeneti \xE9rt\xE9k ${r.origin} t\xFAl kicsi ${o}${r.minimum.toString()}`}case"invalid_format":{let o=r;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 ${n[o.format]??r.format}`}case"not_multiple_of":return`\xC9rv\xE9nytelen sz\xE1m: ${r.divisor} t\xF6bbsz\xF6r\xF6s\xE9nek kell lennie`;case"unrecognized_keys":return`Ismeretlen kulcs${r.keys.length>1?"s":""}: ${v(r.keys,", ")}`;case"invalid_key":return`\xC9rv\xE9nytelen kulcs ${r.origin}`;case"invalid_union":return"\xC9rv\xE9nytelen bemenet";case"invalid_element":return`\xC9rv\xE9nytelen \xE9rt\xE9k: ${r.origin}`;default:return"\xC9rv\xE9nytelen bemenet"}}};function pT(){return{localeError:VU()}}function fT(t,e,n){return Math.abs(t)===1?e:n}function Vo(t){if(!t)return"";let e=["\u0561","\u0565","\u0568","\u056B","\u0578","\u0578\u0582","\u0585"],n=t[t.length-1];return t+(e.includes(n)?"\u0576":"\u0568")}var qU=()=>{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(r){return t[r]??null}let n={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 r=>{switch(r.code){case"invalid_type":{let o=i[r.expected]??r.expected,a=O(r.input),c=i[a]??a;return/^[A-Z]/.test(r.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 ${r.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 r.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 ${x(r.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 ${v(r.values,"|")}`;case"too_big":{let o=r.inclusive?"<=":"<",a=e(r.origin);if(a){let c=Number(r.maximum),l=fT(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 ${Vo(r.origin??"\u0561\u0580\u056A\u0565\u0584")} \u056F\u0578\u0582\u0576\u0565\u0576\u0561 ${o}${r.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 ${Vo(r.origin??"\u0561\u0580\u056A\u0565\u0584")} \u056C\u056B\u0576\u056B ${o}${r.maximum.toString()}`}case"too_small":{let o=r.inclusive?">=":">",a=e(r.origin);if(a){let c=Number(r.minimum),l=fT(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 ${Vo(r.origin)} \u056F\u0578\u0582\u0576\u0565\u0576\u0561 ${o}${r.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 ${Vo(r.origin)} \u056C\u056B\u0576\u056B ${o}${r.minimum.toString()}`}case"invalid_format":{let o=r;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 ${n[o.format]??r.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 ${r.divisor}-\u056B`;case"unrecognized_keys":return`\u0549\u0573\u0561\u0576\u0561\u0579\u057E\u0561\u056E \u0562\u0561\u0576\u0561\u056C\u056B${r.keys.length>1?"\u0576\u0565\u0580":""}. ${v(r.keys,", ")}`;case"invalid_key":return`\u054D\u056D\u0561\u056C \u0562\u0561\u0576\u0561\u056C\u056B ${Vo(r.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 ${Vo(r.origin)}-\u0578\u0582\u0574`;default:return"\u054D\u056D\u0561\u056C \u0574\u0578\u0582\u057F\u0584\u0561\u0563\u0580\u0578\u0582\u0574"}}};function gT(){return{localeError:qU()}}var HU=()=>{let t={string:{unit:"karakter",verb:"memiliki"},file:{unit:"byte",verb:"memiliki"},array:{unit:"item",verb:"memiliki"},set:{unit:"item",verb:"memiliki"}};function e(r){return t[r]??null}let n={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 r=>{switch(r.code){case"invalid_type":{let o=i[r.expected]??r.expected,a=O(r.input),c=i[a]??a;return/^[A-Z]/.test(r.expected)?`Input tidak valid: diharapkan instanceof ${r.expected}, diterima ${c}`:`Input tidak valid: diharapkan ${o}, diterima ${c}`}case"invalid_value":return r.values.length===1?`Input tidak valid: diharapkan ${x(r.values[0])}`:`Pilihan tidak valid: diharapkan salah satu dari ${v(r.values,"|")}`;case"too_big":{let o=r.inclusive?"<=":"<",a=e(r.origin);return a?`Terlalu besar: diharapkan ${r.origin??"value"} memiliki ${o}${r.maximum.toString()} ${a.unit??"elemen"}`:`Terlalu besar: diharapkan ${r.origin??"value"} menjadi ${o}${r.maximum.toString()}`}case"too_small":{let o=r.inclusive?">=":">",a=e(r.origin);return a?`Terlalu kecil: diharapkan ${r.origin} memiliki ${o}${r.minimum.toString()} ${a.unit}`:`Terlalu kecil: diharapkan ${r.origin} menjadi ${o}${r.minimum.toString()}`}case"invalid_format":{let o=r;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}`:`${n[o.format]??r.format} tidak valid`}case"not_multiple_of":return`Angka tidak valid: harus kelipatan dari ${r.divisor}`;case"unrecognized_keys":return`Kunci tidak dikenali ${r.keys.length>1?"s":""}: ${v(r.keys,", ")}`;case"invalid_key":return`Kunci tidak valid di ${r.origin}`;case"invalid_union":return"Input tidak valid";case"invalid_element":return`Nilai tidak valid di ${r.origin}`;default:return"Input tidak valid"}}};function hT(){return{localeError:HU()}}var GU=()=>{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(r){return t[r]??null}let n={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 r=>{switch(r.code){case"invalid_type":{let o=i[r.expected]??r.expected,a=O(r.input),c=i[a]??a;return/^[A-Z]/.test(r.expected)?`Rangt gildi: \xDE\xFA sl\xF3st inn ${c} \xFEar sem \xE1 a\xF0 vera instanceof ${r.expected}`:`Rangt gildi: \xDE\xFA sl\xF3st inn ${c} \xFEar sem \xE1 a\xF0 vera ${o}`}case"invalid_value":return r.values.length===1?`Rangt gildi: gert r\xE1\xF0 fyrir ${x(r.values[0])}`:`\xD3gilt val: m\xE1 vera eitt af eftirfarandi ${v(r.values,"|")}`;case"too_big":{let o=r.inclusive?"<=":"<",a=e(r.origin);return a?`Of st\xF3rt: gert er r\xE1\xF0 fyrir a\xF0 ${r.origin??"gildi"} hafi ${o}${r.maximum.toString()} ${a.unit??"hluti"}`:`Of st\xF3rt: gert er r\xE1\xF0 fyrir a\xF0 ${r.origin??"gildi"} s\xE9 ${o}${r.maximum.toString()}`}case"too_small":{let o=r.inclusive?">=":">",a=e(r.origin);return a?`Of l\xEDti\xF0: gert er r\xE1\xF0 fyrir a\xF0 ${r.origin} hafi ${o}${r.minimum.toString()} ${a.unit}`:`Of l\xEDti\xF0: gert er r\xE1\xF0 fyrir a\xF0 ${r.origin} s\xE9 ${o}${r.minimum.toString()}`}case"invalid_format":{let o=r;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 ${n[o.format]??r.format}`}case"not_multiple_of":return`R\xF6ng tala: ver\xF0ur a\xF0 vera margfeldi af ${r.divisor}`;case"unrecognized_keys":return`\xD3\xFEekkt ${r.keys.length>1?"ir lyklar":"ur lykill"}: ${v(r.keys,", ")}`;case"invalid_key":return`Rangur lykill \xED ${r.origin}`;case"invalid_union":return"Rangt gildi";case"invalid_element":return`Rangt gildi \xED ${r.origin}`;default:return"Rangt gildi"}}};function bT(){return{localeError:GU()}}var ZU=()=>{let t={string:{unit:"caratteri",verb:"avere"},file:{unit:"byte",verb:"avere"},array:{unit:"elementi",verb:"avere"},set:{unit:"elementi",verb:"avere"}};function e(r){return t[r]??null}let n={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 r=>{switch(r.code){case"invalid_type":{let o=i[r.expected]??r.expected,a=O(r.input),c=i[a]??a;return/^[A-Z]/.test(r.expected)?`Input non valido: atteso instanceof ${r.expected}, ricevuto ${c}`:`Input non valido: atteso ${o}, ricevuto ${c}`}case"invalid_value":return r.values.length===1?`Input non valido: atteso ${x(r.values[0])}`:`Opzione non valida: atteso uno tra ${v(r.values,"|")}`;case"too_big":{let o=r.inclusive?"<=":"<",a=e(r.origin);return a?`Troppo grande: ${r.origin??"valore"} deve avere ${o}${r.maximum.toString()} ${a.unit??"elementi"}`:`Troppo grande: ${r.origin??"valore"} deve essere ${o}${r.maximum.toString()}`}case"too_small":{let o=r.inclusive?">=":">",a=e(r.origin);return a?`Troppo piccolo: ${r.origin} deve avere ${o}${r.minimum.toString()} ${a.unit}`:`Troppo piccolo: ${r.origin} deve essere ${o}${r.minimum.toString()}`}case"invalid_format":{let o=r;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: ${n[o.format]??r.format}`}case"not_multiple_of":return`Numero non valido: deve essere un multiplo di ${r.divisor}`;case"unrecognized_keys":return`Chiav${r.keys.length>1?"i":"e"} non riconosciut${r.keys.length>1?"e":"a"}: ${v(r.keys,", ")}`;case"invalid_key":return`Chiave non valida in ${r.origin}`;case"invalid_union":return"Input non valido";case"invalid_element":return`Valore non valido in ${r.origin}`;default:return"Input non valido"}}};function _T(){return{localeError:ZU()}}var WU=()=>{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(r){return t[r]??null}let n={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 r=>{switch(r.code){case"invalid_type":{let o=i[r.expected]??r.expected,a=O(r.input),c=i[a]??a;return/^[A-Z]/.test(r.expected)?`\u7121\u52B9\u306A\u5165\u529B: instanceof ${r.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 r.values.length===1?`\u7121\u52B9\u306A\u5165\u529B: ${x(r.values[0])}\u304C\u671F\u5F85\u3055\u308C\u307E\u3057\u305F`:`\u7121\u52B9\u306A\u9078\u629E: ${v(r.values,"\u3001")}\u306E\u3044\u305A\u308C\u304B\u3067\u3042\u308B\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`;case"too_big":{let o=r.inclusive?"\u4EE5\u4E0B\u3067\u3042\u308B":"\u3088\u308A\u5C0F\u3055\u3044",a=e(r.origin);return a?`\u5927\u304D\u3059\u304E\u308B\u5024: ${r.origin??"\u5024"}\u306F${r.maximum.toString()}${a.unit??"\u8981\u7D20"}${o}\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`:`\u5927\u304D\u3059\u304E\u308B\u5024: ${r.origin??"\u5024"}\u306F${r.maximum.toString()}${o}\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`}case"too_small":{let o=r.inclusive?"\u4EE5\u4E0A\u3067\u3042\u308B":"\u3088\u308A\u5927\u304D\u3044",a=e(r.origin);return a?`\u5C0F\u3055\u3059\u304E\u308B\u5024: ${r.origin}\u306F${r.minimum.toString()}${a.unit}${o}\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`:`\u5C0F\u3055\u3059\u304E\u308B\u5024: ${r.origin}\u306F${r.minimum.toString()}${o}\u5FC5\u8981\u304C\u3042\u308A\u307E\u3059`}case"invalid_format":{let o=r;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${n[o.format]??r.format}`}case"not_multiple_of":return`\u7121\u52B9\u306A\u6570\u5024: ${r.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${r.keys.length>1?"\u7FA4":""}: ${v(r.keys,"\u3001")}`;case"invalid_key":return`${r.origin}\u5185\u306E\u7121\u52B9\u306A\u30AD\u30FC`;case"invalid_union":return"\u7121\u52B9\u306A\u5165\u529B";case"invalid_element":return`${r.origin}\u5185\u306E\u7121\u52B9\u306A\u5024`;default:return"\u7121\u52B9\u306A\u5165\u529B"}}};function vT(){return{localeError:WU()}}var JU=()=>{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(r){return t[r]??null}let n={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 r=>{switch(r.code){case"invalid_type":{let o=i[r.expected]??r.expected,a=O(r.input),c=i[a]??a;return/^[A-Z]/.test(r.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 ${r.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 r.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 ${x(r.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 ${v(r.values,"|")}-\u10D3\u10D0\u10DC`;case"too_big":{let o=r.inclusive?"<=":"<",a=e(r.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 ${r.origin??"\u10DB\u10DC\u10D8\u10E8\u10D5\u10DC\u10D4\u10DA\u10DD\u10D1\u10D0"} ${a.verb} ${o}${r.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 ${r.origin??"\u10DB\u10DC\u10D8\u10E8\u10D5\u10DC\u10D4\u10DA\u10DD\u10D1\u10D0"} \u10D8\u10E7\u10DD\u10E1 ${o}${r.maximum.toString()}`}case"too_small":{let o=r.inclusive?">=":">",a=e(r.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 ${r.origin} ${a.verb} ${o}${r.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 ${r.origin} \u10D8\u10E7\u10DD\u10E1 ${o}${r.minimum.toString()}`}case"invalid_format":{let o=r;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 ${n[o.format]??r.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 ${r.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${r.keys.length>1?"\u10D4\u10D1\u10D8":"\u10D8"}: ${v(r.keys,", ")}`;case"invalid_key":return`\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10D2\u10D0\u10E1\u10D0\u10E6\u10D4\u10D1\u10D8 ${r.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 ${r.origin}-\u10E8\u10D8`;default:return"\u10D0\u10E0\u10D0\u10E1\u10EC\u10DD\u10E0\u10D8 \u10E8\u10D4\u10E7\u10D5\u10D0\u10DC\u10D0"}}};function yT(){return{localeError:JU()}}var YU=()=>{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(r){return t[r]??null}let n={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 r=>{switch(r.code){case"invalid_type":{let o=i[r.expected]??r.expected,a=O(r.input),c=i[a]??a;return/^[A-Z]/.test(r.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 ${r.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 r.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 ${x(r.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 ${v(r.values,"|")}`;case"too_big":{let o=r.inclusive?"<=":"<",a=e(r.origin);return a?`\u1792\u17C6\u1796\u17C1\u1780\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1780\u17B6\u179A ${r.origin??"\u178F\u1798\u17D2\u179B\u17C3"} ${o} ${r.maximum.toString()} ${a.unit??"\u1792\u17B6\u178F\u17BB"}`:`\u1792\u17C6\u1796\u17C1\u1780\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1780\u17B6\u179A ${r.origin??"\u178F\u1798\u17D2\u179B\u17C3"} ${o} ${r.maximum.toString()}`}case"too_small":{let o=r.inclusive?">=":">",a=e(r.origin);return a?`\u178F\u17BC\u1785\u1796\u17C1\u1780\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1780\u17B6\u179A ${r.origin} ${o} ${r.minimum.toString()} ${a.unit}`:`\u178F\u17BC\u1785\u1796\u17C1\u1780\u17D6 \u178F\u17D2\u179A\u17BC\u179C\u1780\u17B6\u179A ${r.origin} ${o} ${r.minimum.toString()}`}case"invalid_format":{let o=r;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 ${n[o.format]??r.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 ${r.divisor}`;case"unrecognized_keys":return`\u179A\u1780\u1783\u17BE\u1789\u179F\u17C4\u1798\u17B7\u1793\u179F\u17D2\u1782\u17B6\u179B\u17CB\u17D6 ${v(r.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 ${r.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 ${r.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 Gd(){return{localeError:YU()}}function kT(){return Gd()}var XU=()=>{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(r){return t[r]??null}let n={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 r=>{switch(r.code){case"invalid_type":{let o=i[r.expected]??r.expected,a=O(r.input),c=i[a]??a;return/^[A-Z]/.test(r.expected)?`\uC798\uBABB\uB41C \uC785\uB825: \uC608\uC0C1 \uD0C0\uC785\uC740 instanceof ${r.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 r.values.length===1?`\uC798\uBABB\uB41C \uC785\uB825: \uAC12\uC740 ${x(r.values[0])} \uC774\uC5B4\uC57C \uD569\uB2C8\uB2E4`:`\uC798\uBABB\uB41C \uC635\uC158: ${v(r.values,"\uB610\uB294 ")} \uC911 \uD558\uB098\uC5EC\uC57C \uD569\uB2C8\uB2E4`;case"too_big":{let o=r.inclusive?"\uC774\uD558":"\uBBF8\uB9CC",a=o==="\uBBF8\uB9CC"?"\uC774\uC5B4\uC57C \uD569\uB2C8\uB2E4":"\uC5EC\uC57C \uD569\uB2C8\uB2E4",c=e(r.origin),l=c?.unit??"\uC694\uC18C";return c?`${r.origin??"\uAC12"}\uC774 \uB108\uBB34 \uD07D\uB2C8\uB2E4: ${r.maximum.toString()}${l} ${o}${a}`:`${r.origin??"\uAC12"}\uC774 \uB108\uBB34 \uD07D\uB2C8\uB2E4: ${r.maximum.toString()} ${o}${a}`}case"too_small":{let o=r.inclusive?"\uC774\uC0C1":"\uCD08\uACFC",a=o==="\uC774\uC0C1"?"\uC774\uC5B4\uC57C \uD569\uB2C8\uB2E4":"\uC5EC\uC57C \uD569\uB2C8\uB2E4",c=e(r.origin),l=c?.unit??"\uC694\uC18C";return c?`${r.origin??"\uAC12"}\uC774 \uB108\uBB34 \uC791\uC2B5\uB2C8\uB2E4: ${r.minimum.toString()}${l} ${o}${a}`:`${r.origin??"\uAC12"}\uC774 \uB108\uBB34 \uC791\uC2B5\uB2C8\uB2E4: ${r.minimum.toString()} ${o}${a}`}case"invalid_format":{let o=r;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 ${n[o.format]??r.format}`}case"not_multiple_of":return`\uC798\uBABB\uB41C \uC22B\uC790: ${r.divisor}\uC758 \uBC30\uC218\uC5EC\uC57C \uD569\uB2C8\uB2E4`;case"unrecognized_keys":return`\uC778\uC2DD\uD560 \uC218 \uC5C6\uB294 \uD0A4: ${v(r.keys,", ")}`;case"invalid_key":return`\uC798\uBABB\uB41C \uD0A4: ${r.origin}`;case"invalid_union":return"\uC798\uBABB\uB41C \uC785\uB825";case"invalid_element":return`\uC798\uBABB\uB41C \uAC12: ${r.origin}`;default:return"\uC798\uBABB\uB41C \uC785\uB825"}}};function wT(){return{localeError:XU()}}var rc=t=>t.charAt(0).toUpperCase()+t.slice(1);function ST(t){let e=Math.abs(t),n=e%10,i=e%100;return i>=11&&i<=19||n===0?"many":n===1?"one":"few"}var QU=()=>{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(r,o,a,c){let l=t[r]??null;return l===null?l:{unit:l.unit[o],verb:l.verb[c][a?"inclusive":"notInclusive"]}}let n={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 r=>{switch(r.code){case"invalid_type":{let o=i[r.expected]??r.expected,a=O(r.input),c=i[a]??a;return/^[A-Z]/.test(r.expected)?`Gautas tipas ${c}, o tik\u0117tasi - instanceof ${r.expected}`:`Gautas tipas ${c}, o tik\u0117tasi - ${o}`}case"invalid_value":return r.values.length===1?`Privalo b\u016Bti ${x(r.values[0])}`:`Privalo b\u016Bti vienas i\u0161 ${v(r.values,"|")} pasirinkim\u0173`;case"too_big":{let o=i[r.origin]??r.origin,a=e(r.origin,ST(Number(r.maximum)),r.inclusive??!1,"smaller");if(a?.verb)return`${rc(o??r.origin??"reik\u0161m\u0117")} ${a.verb} ${r.maximum.toString()} ${a.unit??"element\u0173"}`;let c=r.inclusive?"ne didesnis kaip":"ma\u017Eesnis kaip";return`${rc(o??r.origin??"reik\u0161m\u0117")} turi b\u016Bti ${c} ${r.maximum.toString()} ${a?.unit}`}case"too_small":{let o=i[r.origin]??r.origin,a=e(r.origin,ST(Number(r.minimum)),r.inclusive??!1,"bigger");if(a?.verb)return`${rc(o??r.origin??"reik\u0161m\u0117")} ${a.verb} ${r.minimum.toString()} ${a.unit??"element\u0173"}`;let c=r.inclusive?"ne ma\u017Eesnis kaip":"didesnis kaip";return`${rc(o??r.origin??"reik\u0161m\u0117")} turi b\u016Bti ${c} ${r.minimum.toString()} ${a?.unit}`}case"invalid_format":{let o=r;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 ${n[o.format]??r.format}`}case"not_multiple_of":return`Skai\u010Dius privalo b\u016Bti ${r.divisor} kartotinis.`;case"unrecognized_keys":return`Neatpa\u017Eint${r.keys.length>1?"i":"as"} rakt${r.keys.length>1?"ai":"as"}: ${v(r.keys,", ")}`;case"invalid_key":return"Rastas klaidingas raktas";case"invalid_union":return"Klaidinga \u012Fvestis";case"invalid_element":{let o=i[r.origin]??r.origin;return`${rc(o??r.origin??"reik\u0161m\u0117")} turi klaiding\u0105 \u012Fvest\u012F`}default:return"Klaidinga \u012Fvestis"}}};function IT(){return{localeError:QU()}}var eM=()=>{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(r){return t[r]??null}let n={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 r=>{switch(r.code){case"invalid_type":{let o=i[r.expected]??r.expected,a=O(r.input),c=i[a]??a;return/^[A-Z]/.test(r.expected)?`\u0413\u0440\u0435\u0448\u0435\u043D \u0432\u043D\u0435\u0441: \u0441\u0435 \u043E\u0447\u0435\u043A\u0443\u0432\u0430 instanceof ${r.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 r.values.length===1?`Invalid input: expected ${x(r.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 ${v(r.values,"|")}`;case"too_big":{let o=r.inclusive?"<=":"<",a=e(r.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 ${r.origin??"\u0432\u0440\u0435\u0434\u043D\u043E\u0441\u0442\u0430"} \u0434\u0430 \u0438\u043C\u0430 ${o}${r.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 ${r.origin??"\u0432\u0440\u0435\u0434\u043D\u043E\u0441\u0442\u0430"} \u0434\u0430 \u0431\u0438\u0434\u0435 ${o}${r.maximum.toString()}`}case"too_small":{let o=r.inclusive?">=":">",a=e(r.origin);return a?`\u041F\u0440\u0435\u043C\u043D\u043E\u0433\u0443 \u043C\u0430\u043B: \u0441\u0435 \u043E\u0447\u0435\u043A\u0443\u0432\u0430 ${r.origin} \u0434\u0430 \u0438\u043C\u0430 ${o}${r.minimum.toString()} ${a.unit}`:`\u041F\u0440\u0435\u043C\u043D\u043E\u0433\u0443 \u043C\u0430\u043B: \u0441\u0435 \u043E\u0447\u0435\u043A\u0443\u0432\u0430 ${r.origin} \u0434\u0430 \u0431\u0438\u0434\u0435 ${o}${r.minimum.toString()}`}case"invalid_format":{let o=r;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 ${n[o.format]??r.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 ${r.divisor}`;case"unrecognized_keys":return`${r.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"}: ${v(r.keys,", ")}`;case"invalid_key":return`\u0413\u0440\u0435\u0448\u0435\u043D \u043A\u043B\u0443\u0447 \u0432\u043E ${r.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 ${r.origin}`;default:return"\u0413\u0440\u0435\u0448\u0435\u043D \u0432\u043D\u0435\u0441"}}};function ET(){return{localeError:eM()}}var tM=()=>{let t={string:{unit:"aksara",verb:"mempunyai"},file:{unit:"bait",verb:"mempunyai"},array:{unit:"elemen",verb:"mempunyai"},set:{unit:"elemen",verb:"mempunyai"}};function e(r){return t[r]??null}let n={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 r=>{switch(r.code){case"invalid_type":{let o=i[r.expected]??r.expected,a=O(r.input),c=i[a]??a;return/^[A-Z]/.test(r.expected)?`Input tidak sah: dijangka instanceof ${r.expected}, diterima ${c}`:`Input tidak sah: dijangka ${o}, diterima ${c}`}case"invalid_value":return r.values.length===1?`Input tidak sah: dijangka ${x(r.values[0])}`:`Pilihan tidak sah: dijangka salah satu daripada ${v(r.values,"|")}`;case"too_big":{let o=r.inclusive?"<=":"<",a=e(r.origin);return a?`Terlalu besar: dijangka ${r.origin??"nilai"} ${a.verb} ${o}${r.maximum.toString()} ${a.unit??"elemen"}`:`Terlalu besar: dijangka ${r.origin??"nilai"} adalah ${o}${r.maximum.toString()}`}case"too_small":{let o=r.inclusive?">=":">",a=e(r.origin);return a?`Terlalu kecil: dijangka ${r.origin} ${a.verb} ${o}${r.minimum.toString()} ${a.unit}`:`Terlalu kecil: dijangka ${r.origin} adalah ${o}${r.minimum.toString()}`}case"invalid_format":{let o=r;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}`:`${n[o.format]??r.format} tidak sah`}case"not_multiple_of":return`Nombor tidak sah: perlu gandaan ${r.divisor}`;case"unrecognized_keys":return`Kunci tidak dikenali: ${v(r.keys,", ")}`;case"invalid_key":return`Kunci tidak sah dalam ${r.origin}`;case"invalid_union":return"Input tidak sah";case"invalid_element":return`Nilai tidak sah dalam ${r.origin}`;default:return"Input tidak sah"}}};function TT(){return{localeError:tM()}}var nM=()=>{let t={string:{unit:"tekens",verb:"heeft"},file:{unit:"bytes",verb:"heeft"},array:{unit:"elementen",verb:"heeft"},set:{unit:"elementen",verb:"heeft"}};function e(r){return t[r]??null}let n={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 r=>{switch(r.code){case"invalid_type":{let o=i[r.expected]??r.expected,a=O(r.input),c=i[a]??a;return/^[A-Z]/.test(r.expected)?`Ongeldige invoer: verwacht instanceof ${r.expected}, ontving ${c}`:`Ongeldige invoer: verwacht ${o}, ontving ${c}`}case"invalid_value":return r.values.length===1?`Ongeldige invoer: verwacht ${x(r.values[0])}`:`Ongeldige optie: verwacht \xE9\xE9n van ${v(r.values,"|")}`;case"too_big":{let o=r.inclusive?"<=":"<",a=e(r.origin),c=r.origin==="date"?"laat":r.origin==="string"?"lang":"groot";return a?`Te ${c}: verwacht dat ${r.origin??"waarde"} ${o}${r.maximum.toString()} ${a.unit??"elementen"} ${a.verb}`:`Te ${c}: verwacht dat ${r.origin??"waarde"} ${o}${r.maximum.toString()} is`}case"too_small":{let o=r.inclusive?">=":">",a=e(r.origin),c=r.origin==="date"?"vroeg":r.origin==="string"?"kort":"klein";return a?`Te ${c}: verwacht dat ${r.origin} ${o}${r.minimum.toString()} ${a.unit} ${a.verb}`:`Te ${c}: verwacht dat ${r.origin} ${o}${r.minimum.toString()} is`}case"invalid_format":{let o=r;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: ${n[o.format]??r.format}`}case"not_multiple_of":return`Ongeldig getal: moet een veelvoud van ${r.divisor} zijn`;case"unrecognized_keys":return`Onbekende key${r.keys.length>1?"s":""}: ${v(r.keys,", ")}`;case"invalid_key":return`Ongeldige key in ${r.origin}`;case"invalid_union":return"Ongeldige invoer";case"invalid_element":return`Ongeldige waarde in ${r.origin}`;default:return"Ongeldige invoer"}}};function RT(){return{localeError:nM()}}var rM=()=>{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(r){return t[r]??null}let n={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 r=>{switch(r.code){case"invalid_type":{let o=i[r.expected]??r.expected,a=O(r.input),c=i[a]??a;return/^[A-Z]/.test(r.expected)?`Ugyldig input: forventet instanceof ${r.expected}, fikk ${c}`:`Ugyldig input: forventet ${o}, fikk ${c}`}case"invalid_value":return r.values.length===1?`Ugyldig verdi: forventet ${x(r.values[0])}`:`Ugyldig valg: forventet en av ${v(r.values,"|")}`;case"too_big":{let o=r.inclusive?"<=":"<",a=e(r.origin);return a?`For stor(t): forventet ${r.origin??"value"} til \xE5 ha ${o}${r.maximum.toString()} ${a.unit??"elementer"}`:`For stor(t): forventet ${r.origin??"value"} til \xE5 ha ${o}${r.maximum.toString()}`}case"too_small":{let o=r.inclusive?">=":">",a=e(r.origin);return a?`For lite(n): forventet ${r.origin} til \xE5 ha ${o}${r.minimum.toString()} ${a.unit}`:`For lite(n): forventet ${r.origin} til \xE5 ha ${o}${r.minimum.toString()}`}case"invalid_format":{let o=r;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 ${n[o.format]??r.format}`}case"not_multiple_of":return`Ugyldig tall: m\xE5 v\xE6re et multiplum av ${r.divisor}`;case"unrecognized_keys":return`${r.keys.length>1?"Ukjente n\xF8kler":"Ukjent n\xF8kkel"}: ${v(r.keys,", ")}`;case"invalid_key":return`Ugyldig n\xF8kkel i ${r.origin}`;case"invalid_union":return"Ugyldig input";case"invalid_element":return`Ugyldig verdi i ${r.origin}`;default:return"Ugyldig input"}}};function xT(){return{localeError:rM()}}var iM=()=>{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(r){return t[r]??null}let n={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 r=>{switch(r.code){case"invalid_type":{let o=i[r.expected]??r.expected,a=O(r.input),c=i[a]??a;return/^[A-Z]/.test(r.expected)?`F\xE2sit giren: umulan instanceof ${r.expected}, al\u0131nan ${c}`:`F\xE2sit giren: umulan ${o}, al\u0131nan ${c}`}case"invalid_value":return r.values.length===1?`F\xE2sit giren: umulan ${x(r.values[0])}`:`F\xE2sit tercih: m\xFBteberler ${v(r.values,"|")}`;case"too_big":{let o=r.inclusive?"<=":"<",a=e(r.origin);return a?`Fazla b\xFCy\xFCk: ${r.origin??"value"}, ${o}${r.maximum.toString()} ${a.unit??"elements"} sahip olmal\u0131yd\u0131.`:`Fazla b\xFCy\xFCk: ${r.origin??"value"}, ${o}${r.maximum.toString()} olmal\u0131yd\u0131.`}case"too_small":{let o=r.inclusive?">=":">",a=e(r.origin);return a?`Fazla k\xFC\xE7\xFCk: ${r.origin}, ${o}${r.minimum.toString()} ${a.unit} sahip olmal\u0131yd\u0131.`:`Fazla k\xFC\xE7\xFCk: ${r.origin}, ${o}${r.minimum.toString()} olmal\u0131yd\u0131.`}case"invalid_format":{let o=r;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 ${n[o.format]??r.format}`}case"not_multiple_of":return`F\xE2sit say\u0131: ${r.divisor} kat\u0131 olmal\u0131yd\u0131.`;case"unrecognized_keys":return`Tan\u0131nmayan anahtar ${r.keys.length>1?"s":""}: ${v(r.keys,", ")}`;case"invalid_key":return`${r.origin} i\xE7in tan\u0131nmayan anahtar var.`;case"invalid_union":return"Giren tan\u0131namad\u0131.";case"invalid_element":return`${r.origin} i\xE7in tan\u0131nmayan k\u0131ymet var.`;default:return"K\u0131ymet tan\u0131namad\u0131."}}};function OT(){return{localeError:iM()}}var oM=()=>{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(r){return t[r]??null}let n={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 r=>{switch(r.code){case"invalid_type":{let o=i[r.expected]??r.expected,a=O(r.input),c=i[a]??a;return/^[A-Z]/.test(r.expected)?`\u0646\u0627\u0633\u0645 \u0648\u0631\u0648\u062F\u064A: \u0628\u0627\u06CC\u062F instanceof ${r.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 r.values.length===1?`\u0646\u0627\u0633\u0645 \u0648\u0631\u0648\u062F\u064A: \u0628\u0627\u06CC\u062F ${x(r.values[0])} \u0648\u0627\u06CC`:`\u0646\u0627\u0633\u0645 \u0627\u0646\u062A\u062E\u0627\u0628: \u0628\u0627\u06CC\u062F \u06CC\u0648 \u0644\u0647 ${v(r.values,"|")} \u0685\u062E\u0647 \u0648\u0627\u06CC`;case"too_big":{let o=r.inclusive?"<=":"<",a=e(r.origin);return a?`\u0689\u06CC\u0631 \u0644\u0648\u06CC: ${r.origin??"\u0627\u0631\u0632\u069A\u062A"} \u0628\u0627\u06CC\u062F ${o}${r.maximum.toString()} ${a.unit??"\u0639\u0646\u0635\u0631\u0648\u0646\u0647"} \u0648\u0644\u0631\u064A`:`\u0689\u06CC\u0631 \u0644\u0648\u06CC: ${r.origin??"\u0627\u0631\u0632\u069A\u062A"} \u0628\u0627\u06CC\u062F ${o}${r.maximum.toString()} \u0648\u064A`}case"too_small":{let o=r.inclusive?">=":">",a=e(r.origin);return a?`\u0689\u06CC\u0631 \u06A9\u0648\u0686\u0646\u06CC: ${r.origin} \u0628\u0627\u06CC\u062F ${o}${r.minimum.toString()} ${a.unit} \u0648\u0644\u0631\u064A`:`\u0689\u06CC\u0631 \u06A9\u0648\u0686\u0646\u06CC: ${r.origin} \u0628\u0627\u06CC\u062F ${o}${r.minimum.toString()} \u0648\u064A`}case"invalid_format":{let o=r;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`:`${n[o.format]??r.format} \u0646\u0627\u0633\u0645 \u062F\u06CC`}case"not_multiple_of":return`\u0646\u0627\u0633\u0645 \u0639\u062F\u062F: \u0628\u0627\u06CC\u062F \u062F ${r.divisor} \u0645\u0636\u0631\u0628 \u0648\u064A`;case"unrecognized_keys":return`\u0646\u0627\u0633\u0645 ${r.keys.length>1?"\u06A9\u0644\u06CC\u0689\u0648\u0646\u0647":"\u06A9\u0644\u06CC\u0689"}: ${v(r.keys,", ")}`;case"invalid_key":return`\u0646\u0627\u0633\u0645 \u06A9\u0644\u06CC\u0689 \u067E\u0647 ${r.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 ${r.origin} \u06A9\u06D0`;default:return"\u0646\u0627\u0633\u0645\u0647 \u0648\u0631\u0648\u062F\u064A"}}};function AT(){return{localeError:oM()}}var sM=()=>{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(r){return t[r]??null}let n={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 r=>{switch(r.code){case"invalid_type":{let o=i[r.expected]??r.expected,a=O(r.input),c=i[a]??a;return/^[A-Z]/.test(r.expected)?`Nieprawid\u0142owe dane wej\u015Bciowe: oczekiwano instanceof ${r.expected}, otrzymano ${c}`:`Nieprawid\u0142owe dane wej\u015Bciowe: oczekiwano ${o}, otrzymano ${c}`}case"invalid_value":return r.values.length===1?`Nieprawid\u0142owe dane wej\u015Bciowe: oczekiwano ${x(r.values[0])}`:`Nieprawid\u0142owa opcja: oczekiwano jednej z warto\u015Bci ${v(r.values,"|")}`;case"too_big":{let o=r.inclusive?"<=":"<",a=e(r.origin);return a?`Za du\u017Ca warto\u015B\u0107: oczekiwano, \u017Ce ${r.origin??"warto\u015B\u0107"} b\u0119dzie mie\u0107 ${o}${r.maximum.toString()} ${a.unit??"element\xF3w"}`:`Zbyt du\u017C(y/a/e): oczekiwano, \u017Ce ${r.origin??"warto\u015B\u0107"} b\u0119dzie wynosi\u0107 ${o}${r.maximum.toString()}`}case"too_small":{let o=r.inclusive?">=":">",a=e(r.origin);return a?`Za ma\u0142a warto\u015B\u0107: oczekiwano, \u017Ce ${r.origin??"warto\u015B\u0107"} b\u0119dzie mie\u0107 ${o}${r.minimum.toString()} ${a.unit??"element\xF3w"}`:`Zbyt ma\u0142(y/a/e): oczekiwano, \u017Ce ${r.origin??"warto\u015B\u0107"} b\u0119dzie wynosi\u0107 ${o}${r.minimum.toString()}`}case"invalid_format":{let o=r;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) ${n[o.format]??r.format}`}case"not_multiple_of":return`Nieprawid\u0142owa liczba: musi by\u0107 wielokrotno\u015Bci\u0105 ${r.divisor}`;case"unrecognized_keys":return`Nierozpoznane klucze${r.keys.length>1?"s":""}: ${v(r.keys,", ")}`;case"invalid_key":return`Nieprawid\u0142owy klucz w ${r.origin}`;case"invalid_union":return"Nieprawid\u0142owe dane wej\u015Bciowe";case"invalid_element":return`Nieprawid\u0142owa warto\u015B\u0107 w ${r.origin}`;default:return"Nieprawid\u0142owe dane wej\u015Bciowe"}}};function $T(){return{localeError:sM()}}var aM=()=>{let t={string:{unit:"caracteres",verb:"ter"},file:{unit:"bytes",verb:"ter"},array:{unit:"itens",verb:"ter"},set:{unit:"itens",verb:"ter"}};function e(r){return t[r]??null}let n={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 r=>{switch(r.code){case"invalid_type":{let o=i[r.expected]??r.expected,a=O(r.input),c=i[a]??a;return/^[A-Z]/.test(r.expected)?`Tipo inv\xE1lido: esperado instanceof ${r.expected}, recebido ${c}`:`Tipo inv\xE1lido: esperado ${o}, recebido ${c}`}case"invalid_value":return r.values.length===1?`Entrada inv\xE1lida: esperado ${x(r.values[0])}`:`Op\xE7\xE3o inv\xE1lida: esperada uma das ${v(r.values,"|")}`;case"too_big":{let o=r.inclusive?"<=":"<",a=e(r.origin);return a?`Muito grande: esperado que ${r.origin??"valor"} tivesse ${o}${r.maximum.toString()} ${a.unit??"elementos"}`:`Muito grande: esperado que ${r.origin??"valor"} fosse ${o}${r.maximum.toString()}`}case"too_small":{let o=r.inclusive?">=":">",a=e(r.origin);return a?`Muito pequeno: esperado que ${r.origin} tivesse ${o}${r.minimum.toString()} ${a.unit}`:`Muito pequeno: esperado que ${r.origin} fosse ${o}${r.minimum.toString()}`}case"invalid_format":{let o=r;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}`:`${n[o.format]??r.format} inv\xE1lido`}case"not_multiple_of":return`N\xFAmero inv\xE1lido: deve ser m\xFAltiplo de ${r.divisor}`;case"unrecognized_keys":return`Chave${r.keys.length>1?"s":""} desconhecida${r.keys.length>1?"s":""}: ${v(r.keys,", ")}`;case"invalid_key":return`Chave inv\xE1lida em ${r.origin}`;case"invalid_union":return"Entrada inv\xE1lida";case"invalid_element":return`Valor inv\xE1lido em ${r.origin}`;default:return"Campo inv\xE1lido"}}};function CT(){return{localeError:aM()}}var cM=()=>{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(r){return t[r]??null}let n={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 r=>{switch(r.code){case"invalid_type":{let o=i[r.expected]??r.expected,a=O(r.input),c=i[a]??a;return`Intrare invalid\u0103: a\u0219teptat ${o}, primit ${c}`}case"invalid_value":return r.values.length===1?`Intrare invalid\u0103: a\u0219teptat ${x(r.values[0])}`:`Op\u021Biune invalid\u0103: a\u0219teptat una dintre ${v(r.values,"|")}`;case"too_big":{let o=r.inclusive?"<=":"<",a=e(r.origin);return a?`Prea mare: a\u0219teptat ca ${r.origin??"valoarea"} ${a.verb} ${o}${r.maximum.toString()} ${a.unit??"elemente"}`:`Prea mare: a\u0219teptat ca ${r.origin??"valoarea"} s\u0103 fie ${o}${r.maximum.toString()}`}case"too_small":{let o=r.inclusive?">=":">",a=e(r.origin);return a?`Prea mic: a\u0219teptat ca ${r.origin} ${a.verb} ${o}${r.minimum.toString()} ${a.unit}`:`Prea mic: a\u0219teptat ca ${r.origin} s\u0103 fie ${o}${r.minimum.toString()}`}case"invalid_format":{let o=r;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: ${n[o.format]??r.format}`}case"not_multiple_of":return`Num\u0103r invalid: trebuie s\u0103 fie multiplu de ${r.divisor}`;case"unrecognized_keys":return`Chei nerecunoscute: ${v(r.keys,", ")}`;case"invalid_key":return`Cheie invalid\u0103 \xEEn ${r.origin}`;case"invalid_union":return"Intrare invalid\u0103";case"invalid_element":return`Valoare invalid\u0103 \xEEn ${r.origin}`;default:return"Intrare invalid\u0103"}}};function NT(){return{localeError:cM()}}function PT(t,e,n,i){let r=Math.abs(t),o=r%10,a=r%100;return a>=11&&a<=19?i:o===1?e:o>=2&&o<=4?n:i}var lM=()=>{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(r){return t[r]??null}let n={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 r=>{switch(r.code){case"invalid_type":{let o=i[r.expected]??r.expected,a=O(r.input),c=i[a]??a;return/^[A-Z]/.test(r.expected)?`\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u0432\u0432\u043E\u0434: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C instanceof ${r.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 r.values.length===1?`\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u0432\u0432\u043E\u0434: \u043E\u0436\u0438\u0434\u0430\u043B\u043E\u0441\u044C ${x(r.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 ${v(r.values,"|")}`;case"too_big":{let o=r.inclusive?"<=":"<",a=e(r.origin);if(a){let c=Number(r.maximum),l=PT(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 ${r.origin??"\u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435"} \u0431\u0443\u0434\u0435\u0442 \u0438\u043C\u0435\u0442\u044C ${o}${r.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 ${r.origin??"\u0437\u043D\u0430\u0447\u0435\u043D\u0438\u0435"} \u0431\u0443\u0434\u0435\u0442 ${o}${r.maximum.toString()}`}case"too_small":{let o=r.inclusive?">=":">",a=e(r.origin);if(a){let c=Number(r.minimum),l=PT(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 ${r.origin} \u0431\u0443\u0434\u0435\u0442 \u0438\u043C\u0435\u0442\u044C ${o}${r.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 ${r.origin} \u0431\u0443\u0434\u0435\u0442 ${o}${r.minimum.toString()}`}case"invalid_format":{let o=r;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 ${n[o.format]??r.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 ${r.divisor}`;case"unrecognized_keys":return`\u041D\u0435\u0440\u0430\u0441\u043F\u043E\u0437\u043D\u0430\u043D\u043D${r.keys.length>1?"\u044B\u0435":"\u044B\u0439"} \u043A\u043B\u044E\u0447${r.keys.length>1?"\u0438":""}: ${v(r.keys,", ")}`;case"invalid_key":return`\u041D\u0435\u0432\u0435\u0440\u043D\u044B\u0439 \u043A\u043B\u044E\u0447 \u0432 ${r.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 ${r.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 zT(){return{localeError:lM()}}var uM=()=>{let t={string:{unit:"znakov",verb:"imeti"},file:{unit:"bajtov",verb:"imeti"},array:{unit:"elementov",verb:"imeti"},set:{unit:"elementov",verb:"imeti"}};function e(r){return t[r]??null}let n={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 r=>{switch(r.code){case"invalid_type":{let o=i[r.expected]??r.expected,a=O(r.input),c=i[a]??a;return/^[A-Z]/.test(r.expected)?`Neveljaven vnos: pri\u010Dakovano instanceof ${r.expected}, prejeto ${c}`:`Neveljaven vnos: pri\u010Dakovano ${o}, prejeto ${c}`}case"invalid_value":return r.values.length===1?`Neveljaven vnos: pri\u010Dakovano ${x(r.values[0])}`:`Neveljavna mo\u017Enost: pri\u010Dakovano eno izmed ${v(r.values,"|")}`;case"too_big":{let o=r.inclusive?"<=":"<",a=e(r.origin);return a?`Preveliko: pri\u010Dakovano, da bo ${r.origin??"vrednost"} imelo ${o}${r.maximum.toString()} ${a.unit??"elementov"}`:`Preveliko: pri\u010Dakovano, da bo ${r.origin??"vrednost"} ${o}${r.maximum.toString()}`}case"too_small":{let o=r.inclusive?">=":">",a=e(r.origin);return a?`Premajhno: pri\u010Dakovano, da bo ${r.origin} imelo ${o}${r.minimum.toString()} ${a.unit}`:`Premajhno: pri\u010Dakovano, da bo ${r.origin} ${o}${r.minimum.toString()}`}case"invalid_format":{let o=r;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 ${n[o.format]??r.format}`}case"not_multiple_of":return`Neveljavno \u0161tevilo: mora biti ve\u010Dkratnik ${r.divisor}`;case"unrecognized_keys":return`Neprepoznan${r.keys.length>1?"i klju\u010Di":" klju\u010D"}: ${v(r.keys,", ")}`;case"invalid_key":return`Neveljaven klju\u010D v ${r.origin}`;case"invalid_union":return"Neveljaven vnos";case"invalid_element":return`Neveljavna vrednost v ${r.origin}`;default:return"Neveljaven vnos"}}};function DT(){return{localeError:uM()}}var dM=()=>{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(r){return t[r]??null}let n={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 r=>{switch(r.code){case"invalid_type":{let o=i[r.expected]??r.expected,a=O(r.input),c=i[a]??a;return/^[A-Z]/.test(r.expected)?`Ogiltig inmatning: f\xF6rv\xE4ntat instanceof ${r.expected}, fick ${c}`:`Ogiltig inmatning: f\xF6rv\xE4ntat ${o}, fick ${c}`}case"invalid_value":return r.values.length===1?`Ogiltig inmatning: f\xF6rv\xE4ntat ${x(r.values[0])}`:`Ogiltigt val: f\xF6rv\xE4ntade en av ${v(r.values,"|")}`;case"too_big":{let o=r.inclusive?"<=":"<",a=e(r.origin);return a?`F\xF6r stor(t): f\xF6rv\xE4ntade ${r.origin??"v\xE4rdet"} att ha ${o}${r.maximum.toString()} ${a.unit??"element"}`:`F\xF6r stor(t): f\xF6rv\xE4ntat ${r.origin??"v\xE4rdet"} att ha ${o}${r.maximum.toString()}`}case"too_small":{let o=r.inclusive?">=":">",a=e(r.origin);return a?`F\xF6r lite(t): f\xF6rv\xE4ntade ${r.origin??"v\xE4rdet"} att ha ${o}${r.minimum.toString()} ${a.unit}`:`F\xF6r lite(t): f\xF6rv\xE4ntade ${r.origin??"v\xE4rdet"} att ha ${o}${r.minimum.toString()}`}case"invalid_format":{let o=r;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) ${n[o.format]??r.format}`}case"not_multiple_of":return`Ogiltigt tal: m\xE5ste vara en multipel av ${r.divisor}`;case"unrecognized_keys":return`${r.keys.length>1?"Ok\xE4nda nycklar":"Ok\xE4nd nyckel"}: ${v(r.keys,", ")}`;case"invalid_key":return`Ogiltig nyckel i ${r.origin??"v\xE4rdet"}`;case"invalid_union":return"Ogiltig input";case"invalid_element":return`Ogiltigt v\xE4rde i ${r.origin??"v\xE4rdet"}`;default:return"Ogiltig input"}}};function LT(){return{localeError:dM()}}var mM=()=>{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(r){return t[r]??null}let n={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 r=>{switch(r.code){case"invalid_type":{let o=i[r.expected]??r.expected,a=O(r.input),c=i[a]??a;return/^[A-Z]/.test(r.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 ${r.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 r.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 ${x(r.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 ${v(r.values,"|")} \u0B87\u0BB2\u0BCD \u0B92\u0BA9\u0BCD\u0BB1\u0BC1`;case"too_big":{let o=r.inclusive?"<=":"<",a=e(r.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 ${r.origin??"\u0BAE\u0BA4\u0BBF\u0BAA\u0BCD\u0BAA\u0BC1"} ${o}${r.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 ${r.origin??"\u0BAE\u0BA4\u0BBF\u0BAA\u0BCD\u0BAA\u0BC1"} ${o}${r.maximum.toString()} \u0B86\u0B95 \u0B87\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`}case"too_small":{let o=r.inclusive?">=":">",a=e(r.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 ${r.origin} ${o}${r.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 ${r.origin} ${o}${r.minimum.toString()} \u0B86\u0B95 \u0B87\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD`}case"invalid_format":{let o=r;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 ${n[o.format]??r.format}`}case"not_multiple_of":return`\u0BA4\u0BB5\u0BB1\u0BBE\u0BA9 \u0B8E\u0BA3\u0BCD: ${r.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${r.keys.length>1?"\u0B95\u0BB3\u0BCD":""}: ${v(r.keys,", ")}`;case"invalid_key":return`${r.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`${r.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 UT(){return{localeError:mM()}}var pM=()=>{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(r){return t[r]??null}let n={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 r=>{switch(r.code){case"invalid_type":{let o=i[r.expected]??r.expected,a=O(r.input),c=i[a]??a;return/^[A-Z]/.test(r.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 ${r.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 r.values.length===1?`\u0E04\u0E48\u0E32\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07: \u0E04\u0E27\u0E23\u0E40\u0E1B\u0E47\u0E19 ${x(r.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 ${v(r.values,"|")}`;case"too_big":{let o=r.inclusive?"\u0E44\u0E21\u0E48\u0E40\u0E01\u0E34\u0E19":"\u0E19\u0E49\u0E2D\u0E22\u0E01\u0E27\u0E48\u0E32",a=e(r.origin);return a?`\u0E40\u0E01\u0E34\u0E19\u0E01\u0E33\u0E2B\u0E19\u0E14: ${r.origin??"\u0E04\u0E48\u0E32"} \u0E04\u0E27\u0E23\u0E21\u0E35${o} ${r.maximum.toString()} ${a.unit??"\u0E23\u0E32\u0E22\u0E01\u0E32\u0E23"}`:`\u0E40\u0E01\u0E34\u0E19\u0E01\u0E33\u0E2B\u0E19\u0E14: ${r.origin??"\u0E04\u0E48\u0E32"} \u0E04\u0E27\u0E23\u0E21\u0E35${o} ${r.maximum.toString()}`}case"too_small":{let o=r.inclusive?"\u0E2D\u0E22\u0E48\u0E32\u0E07\u0E19\u0E49\u0E2D\u0E22":"\u0E21\u0E32\u0E01\u0E01\u0E27\u0E48\u0E32",a=e(r.origin);return a?`\u0E19\u0E49\u0E2D\u0E22\u0E01\u0E27\u0E48\u0E32\u0E01\u0E33\u0E2B\u0E19\u0E14: ${r.origin} \u0E04\u0E27\u0E23\u0E21\u0E35${o} ${r.minimum.toString()} ${a.unit}`:`\u0E19\u0E49\u0E2D\u0E22\u0E01\u0E27\u0E48\u0E32\u0E01\u0E33\u0E2B\u0E19\u0E14: ${r.origin} \u0E04\u0E27\u0E23\u0E21\u0E35${o} ${r.minimum.toString()}`}case"invalid_format":{let o=r;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: ${n[o.format]??r.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 ${r.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: ${v(r.keys,", ")}`;case"invalid_key":return`\u0E04\u0E35\u0E22\u0E4C\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07\u0E43\u0E19 ${r.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 ${r.origin}`;default:return"\u0E02\u0E49\u0E2D\u0E21\u0E39\u0E25\u0E44\u0E21\u0E48\u0E16\u0E39\u0E01\u0E15\u0E49\u0E2D\u0E07"}}};function MT(){return{localeError:pM()}}var fM=()=>{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(r){return t[r]??null}let n={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 r=>{switch(r.code){case"invalid_type":{let o=i[r.expected]??r.expected,a=O(r.input),c=i[a]??a;return/^[A-Z]/.test(r.expected)?`Ge\xE7ersiz de\u011Fer: beklenen instanceof ${r.expected}, al\u0131nan ${c}`:`Ge\xE7ersiz de\u011Fer: beklenen ${o}, al\u0131nan ${c}`}case"invalid_value":return r.values.length===1?`Ge\xE7ersiz de\u011Fer: beklenen ${x(r.values[0])}`:`Ge\xE7ersiz se\xE7enek: a\u015Fa\u011F\u0131dakilerden biri olmal\u0131: ${v(r.values,"|")}`;case"too_big":{let o=r.inclusive?"<=":"<",a=e(r.origin);return a?`\xC7ok b\xFCy\xFCk: beklenen ${r.origin??"de\u011Fer"} ${o}${r.maximum.toString()} ${a.unit??"\xF6\u011Fe"}`:`\xC7ok b\xFCy\xFCk: beklenen ${r.origin??"de\u011Fer"} ${o}${r.maximum.toString()}`}case"too_small":{let o=r.inclusive?">=":">",a=e(r.origin);return a?`\xC7ok k\xFC\xE7\xFCk: beklenen ${r.origin} ${o}${r.minimum.toString()} ${a.unit}`:`\xC7ok k\xFC\xE7\xFCk: beklenen ${r.origin} ${o}${r.minimum.toString()}`}case"invalid_format":{let o=r;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 ${n[o.format]??r.format}`}case"not_multiple_of":return`Ge\xE7ersiz say\u0131: ${r.divisor} ile tam b\xF6l\xFCnebilmeli`;case"unrecognized_keys":return`Tan\u0131nmayan anahtar${r.keys.length>1?"lar":""}: ${v(r.keys,", ")}`;case"invalid_key":return`${r.origin} i\xE7inde ge\xE7ersiz anahtar`;case"invalid_union":return"Ge\xE7ersiz de\u011Fer";case"invalid_element":return`${r.origin} i\xE7inde ge\xE7ersiz de\u011Fer`;default:return"Ge\xE7ersiz de\u011Fer"}}};function jT(){return{localeError:fM()}}var gM=()=>{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(r){return t[r]??null}let n={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 r=>{switch(r.code){case"invalid_type":{let o=i[r.expected]??r.expected,a=O(r.input),c=i[a]??a;return/^[A-Z]/.test(r.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 ${r.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 r.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 ${x(r.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 ${v(r.values,"|")}`;case"too_big":{let o=r.inclusive?"<=":"<",a=e(r.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 ${r.origin??"\u0437\u043D\u0430\u0447\u0435\u043D\u043D\u044F"} ${a.verb} ${o}${r.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 ${r.origin??"\u0437\u043D\u0430\u0447\u0435\u043D\u043D\u044F"} \u0431\u0443\u0434\u0435 ${o}${r.maximum.toString()}`}case"too_small":{let o=r.inclusive?">=":">",a=e(r.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 ${r.origin} ${a.verb} ${o}${r.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 ${r.origin} \u0431\u0443\u0434\u0435 ${o}${r.minimum.toString()}`}case"invalid_format":{let o=r;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 ${n[o.format]??r.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 ${r.divisor}`;case"unrecognized_keys":return`\u041D\u0435\u0440\u043E\u0437\u043F\u0456\u0437\u043D\u0430\u043D\u0438\u0439 \u043A\u043B\u044E\u0447${r.keys.length>1?"\u0456":""}: ${v(r.keys,", ")}`;case"invalid_key":return`\u041D\u0435\u043F\u0440\u0430\u0432\u0438\u043B\u044C\u043D\u0438\u0439 \u043A\u043B\u044E\u0447 \u0443 ${r.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 ${r.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 Zd(){return{localeError:gM()}}function BT(){return Zd()}var hM=()=>{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(r){return t[r]??null}let n={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 r=>{switch(r.code){case"invalid_type":{let o=i[r.expected]??r.expected,a=O(r.input),c=i[a]??a;return/^[A-Z]/.test(r.expected)?`\u063A\u0644\u0637 \u0627\u0646 \u067E\u0679: instanceof ${r.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 r.values.length===1?`\u063A\u0644\u0637 \u0627\u0646 \u067E\u0679: ${x(r.values[0])} \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u0627`:`\u063A\u0644\u0637 \u0622\u067E\u0634\u0646: ${v(r.values,"|")} \u0645\u06CC\u06BA \u0633\u06D2 \u0627\u06CC\u06A9 \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u0627`;case"too_big":{let o=r.inclusive?"<=":"<",a=e(r.origin);return a?`\u0628\u06C1\u062A \u0628\u0691\u0627: ${r.origin??"\u0648\u06CC\u0644\u06CC\u0648"} \u06A9\u06D2 ${o}${r.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: ${r.origin??"\u0648\u06CC\u0644\u06CC\u0648"} \u06A9\u0627 ${o}${r.maximum.toString()} \u06C1\u0648\u0646\u0627 \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u0627`}case"too_small":{let o=r.inclusive?">=":">",a=e(r.origin);return a?`\u0628\u06C1\u062A \u0686\u06BE\u0648\u0679\u0627: ${r.origin} \u06A9\u06D2 ${o}${r.minimum.toString()} ${a.unit} \u06C1\u0648\u0646\u06D2 \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u06D2`:`\u0628\u06C1\u062A \u0686\u06BE\u0648\u0679\u0627: ${r.origin} \u06A9\u0627 ${o}${r.minimum.toString()} \u06C1\u0648\u0646\u0627 \u0645\u062A\u0648\u0642\u0639 \u062A\u06BE\u0627`}case"invalid_format":{let o=r;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 ${n[o.format]??r.format}`}case"not_multiple_of":return`\u063A\u0644\u0637 \u0646\u0645\u0628\u0631: ${r.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${r.keys.length>1?"\u0632":""}: ${v(r.keys,"\u060C ")}`;case"invalid_key":return`${r.origin} \u0645\u06CC\u06BA \u063A\u0644\u0637 \u06A9\u06CC`;case"invalid_union":return"\u063A\u0644\u0637 \u0627\u0646 \u067E\u0679";case"invalid_element":return`${r.origin} \u0645\u06CC\u06BA \u063A\u0644\u0637 \u0648\u06CC\u0644\u06CC\u0648`;default:return"\u063A\u0644\u0637 \u0627\u0646 \u067E\u0679"}}};function KT(){return{localeError:hM()}}var bM=()=>{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(r){return t[r]??null}let n={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 r=>{switch(r.code){case"invalid_type":{let o=i[r.expected]??r.expected,a=O(r.input),c=i[a]??a;return/^[A-Z]/.test(r.expected)?`Noto\u2018g\u2018ri kirish: kutilgan instanceof ${r.expected}, qabul qilingan ${c}`:`Noto\u2018g\u2018ri kirish: kutilgan ${o}, qabul qilingan ${c}`}case"invalid_value":return r.values.length===1?`Noto\u2018g\u2018ri kirish: kutilgan ${x(r.values[0])}`:`Noto\u2018g\u2018ri variant: quyidagilardan biri kutilgan ${v(r.values,"|")}`;case"too_big":{let o=r.inclusive?"<=":"<",a=e(r.origin);return a?`Juda katta: kutilgan ${r.origin??"qiymat"} ${o}${r.maximum.toString()} ${a.unit} ${a.verb}`:`Juda katta: kutilgan ${r.origin??"qiymat"} ${o}${r.maximum.toString()}`}case"too_small":{let o=r.inclusive?">=":">",a=e(r.origin);return a?`Juda kichik: kutilgan ${r.origin} ${o}${r.minimum.toString()} ${a.unit} ${a.verb}`:`Juda kichik: kutilgan ${r.origin} ${o}${r.minimum.toString()}`}case"invalid_format":{let o=r;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 ${n[o.format]??r.format}`}case"not_multiple_of":return`Noto\u2018g\u2018ri raqam: ${r.divisor} ning karralisi bo\u2018lishi kerak`;case"unrecognized_keys":return`Noma\u2019lum kalit${r.keys.length>1?"lar":""}: ${v(r.keys,", ")}`;case"invalid_key":return`${r.origin} dagi kalit noto\u2018g\u2018ri`;case"invalid_union":return"Noto\u2018g\u2018ri kirish";case"invalid_element":return`${r.origin} da noto\u2018g\u2018ri qiymat`;default:return"Noto\u2018g\u2018ri kirish"}}};function FT(){return{localeError:bM()}}var _M=()=>{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(r){return t[r]??null}let n={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 r=>{switch(r.code){case"invalid_type":{let o=i[r.expected]??r.expected,a=O(r.input),c=i[a]??a;return/^[A-Z]/.test(r.expected)?`\u0110\u1EA7u v\xE0o kh\xF4ng h\u1EE3p l\u1EC7: mong \u0111\u1EE3i instanceof ${r.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 r.values.length===1?`\u0110\u1EA7u v\xE0o kh\xF4ng h\u1EE3p l\u1EC7: mong \u0111\u1EE3i ${x(r.values[0])}`:`T\xF9y ch\u1ECDn kh\xF4ng h\u1EE3p l\u1EC7: mong \u0111\u1EE3i m\u1ED9t trong c\xE1c gi\xE1 tr\u1ECB ${v(r.values,"|")}`;case"too_big":{let o=r.inclusive?"<=":"<",a=e(r.origin);return a?`Qu\xE1 l\u1EDBn: mong \u0111\u1EE3i ${r.origin??"gi\xE1 tr\u1ECB"} ${a.verb} ${o}${r.maximum.toString()} ${a.unit??"ph\u1EA7n t\u1EED"}`:`Qu\xE1 l\u1EDBn: mong \u0111\u1EE3i ${r.origin??"gi\xE1 tr\u1ECB"} ${o}${r.maximum.toString()}`}case"too_small":{let o=r.inclusive?">=":">",a=e(r.origin);return a?`Qu\xE1 nh\u1ECF: mong \u0111\u1EE3i ${r.origin} ${a.verb} ${o}${r.minimum.toString()} ${a.unit}`:`Qu\xE1 nh\u1ECF: mong \u0111\u1EE3i ${r.origin} ${o}${r.minimum.toString()}`}case"invalid_format":{let o=r;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}`:`${n[o.format]??r.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 ${r.divisor}`;case"unrecognized_keys":return`Kh\xF3a kh\xF4ng \u0111\u01B0\u1EE3c nh\u1EADn d\u1EA1ng: ${v(r.keys,", ")}`;case"invalid_key":return`Kh\xF3a kh\xF4ng h\u1EE3p l\u1EC7 trong ${r.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 ${r.origin}`;default:return"\u0110\u1EA7u v\xE0o kh\xF4ng h\u1EE3p l\u1EC7"}}};function VT(){return{localeError:_M()}}var vM=()=>{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(r){return t[r]??null}let n={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 r=>{switch(r.code){case"invalid_type":{let o=i[r.expected]??r.expected,a=O(r.input),c=i[a]??a;return/^[A-Z]/.test(r.expected)?`\u65E0\u6548\u8F93\u5165\uFF1A\u671F\u671B instanceof ${r.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 r.values.length===1?`\u65E0\u6548\u8F93\u5165\uFF1A\u671F\u671B ${x(r.values[0])}`:`\u65E0\u6548\u9009\u9879\uFF1A\u671F\u671B\u4EE5\u4E0B\u4E4B\u4E00 ${v(r.values,"|")}`;case"too_big":{let o=r.inclusive?"<=":"<",a=e(r.origin);return a?`\u6570\u503C\u8FC7\u5927\uFF1A\u671F\u671B ${r.origin??"\u503C"} ${o}${r.maximum.toString()} ${a.unit??"\u4E2A\u5143\u7D20"}`:`\u6570\u503C\u8FC7\u5927\uFF1A\u671F\u671B ${r.origin??"\u503C"} ${o}${r.maximum.toString()}`}case"too_small":{let o=r.inclusive?">=":">",a=e(r.origin);return a?`\u6570\u503C\u8FC7\u5C0F\uFF1A\u671F\u671B ${r.origin} ${o}${r.minimum.toString()} ${a.unit}`:`\u6570\u503C\u8FC7\u5C0F\uFF1A\u671F\u671B ${r.origin} ${o}${r.minimum.toString()}`}case"invalid_format":{let o=r;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${n[o.format]??r.format}`}case"not_multiple_of":return`\u65E0\u6548\u6570\u5B57\uFF1A\u5FC5\u987B\u662F ${r.divisor} \u7684\u500D\u6570`;case"unrecognized_keys":return`\u51FA\u73B0\u672A\u77E5\u7684\u952E(key): ${v(r.keys,", ")}`;case"invalid_key":return`${r.origin} \u4E2D\u7684\u952E(key)\u65E0\u6548`;case"invalid_union":return"\u65E0\u6548\u8F93\u5165";case"invalid_element":return`${r.origin} \u4E2D\u5305\u542B\u65E0\u6548\u503C(value)`;default:return"\u65E0\u6548\u8F93\u5165"}}};function qT(){return{localeError:vM()}}var yM=()=>{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(r){return t[r]??null}let n={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 r=>{switch(r.code){case"invalid_type":{let o=i[r.expected]??r.expected,a=O(r.input),c=i[a]??a;return/^[A-Z]/.test(r.expected)?`\u7121\u6548\u7684\u8F38\u5165\u503C\uFF1A\u9810\u671F\u70BA instanceof ${r.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 r.values.length===1?`\u7121\u6548\u7684\u8F38\u5165\u503C\uFF1A\u9810\u671F\u70BA ${x(r.values[0])}`:`\u7121\u6548\u7684\u9078\u9805\uFF1A\u9810\u671F\u70BA\u4EE5\u4E0B\u5176\u4E2D\u4E4B\u4E00 ${v(r.values,"|")}`;case"too_big":{let o=r.inclusive?"<=":"<",a=e(r.origin);return a?`\u6578\u503C\u904E\u5927\uFF1A\u9810\u671F ${r.origin??"\u503C"} \u61C9\u70BA ${o}${r.maximum.toString()} ${a.unit??"\u500B\u5143\u7D20"}`:`\u6578\u503C\u904E\u5927\uFF1A\u9810\u671F ${r.origin??"\u503C"} \u61C9\u70BA ${o}${r.maximum.toString()}`}case"too_small":{let o=r.inclusive?">=":">",a=e(r.origin);return a?`\u6578\u503C\u904E\u5C0F\uFF1A\u9810\u671F ${r.origin} \u61C9\u70BA ${o}${r.minimum.toString()} ${a.unit}`:`\u6578\u503C\u904E\u5C0F\uFF1A\u9810\u671F ${r.origin} \u61C9\u70BA ${o}${r.minimum.toString()}`}case"invalid_format":{let o=r;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 ${n[o.format]??r.format}`}case"not_multiple_of":return`\u7121\u6548\u7684\u6578\u5B57\uFF1A\u5FC5\u9808\u70BA ${r.divisor} \u7684\u500D\u6578`;case"unrecognized_keys":return`\u7121\u6CD5\u8B58\u5225\u7684\u9375\u503C${r.keys.length>1?"\u5011":""}\uFF1A${v(r.keys,"\u3001")}`;case"invalid_key":return`${r.origin} \u4E2D\u6709\u7121\u6548\u7684\u9375\u503C`;case"invalid_union":return"\u7121\u6548\u7684\u8F38\u5165\u503C";case"invalid_element":return`${r.origin} \u4E2D\u6709\u7121\u6548\u7684\u503C`;default:return"\u7121\u6548\u7684\u8F38\u5165\u503C"}}};function HT(){return{localeError:yM()}}var kM=()=>{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(r){return t[r]??null}let n={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 r=>{switch(r.code){case"invalid_type":{let o=i[r.expected]??r.expected,a=O(r.input),c=i[a]??a;return/^[A-Z]/.test(r.expected)?`\xCCb\xE1w\u1ECDl\xE9 a\u1E63\xEC\u1E63e: a n\xED l\xE1ti fi instanceof ${r.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 r.values.length===1?`\xCCb\xE1w\u1ECDl\xE9 a\u1E63\xEC\u1E63e: a n\xED l\xE1ti fi ${x(r.values[0])}`:`\xC0\u1E63\xE0y\xE0n a\u1E63\xEC\u1E63e: yan \u1ECD\u0300kan l\xE1ra ${v(r.values,"|")}`;case"too_big":{let o=r.inclusive?"<=":"<",a=e(r.origin);return a?`T\xF3 p\u1ECD\u0300 j\xF9: a n\xED l\xE1ti j\u1EB9\u0301 p\xE9 ${r.origin??"iye"} ${a.verb} ${o}${r.maximum} ${a.unit}`:`T\xF3 p\u1ECD\u0300 j\xF9: a n\xED l\xE1ti j\u1EB9\u0301 ${o}${r.maximum}`}case"too_small":{let o=r.inclusive?">=":">",a=e(r.origin);return a?`K\xE9r\xE9 ju: a n\xED l\xE1ti j\u1EB9\u0301 p\xE9 ${r.origin} ${a.verb} ${o}${r.minimum} ${a.unit}`:`K\xE9r\xE9 ju: a n\xED l\xE1ti j\u1EB9\u0301 ${o}${r.minimum}`}case"invalid_format":{let o=r;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: ${n[o.format]??r.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 ${r.divisor}`;case"unrecognized_keys":return`B\u1ECDt\xECn\xEC \xE0\xECm\u1ECD\u0300: ${v(r.keys,", ")}`;case"invalid_key":return`B\u1ECDt\xECn\xEC a\u1E63\xEC\u1E63e n\xEDn\xFA ${r.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 ${r.origin}`;default:return"\xCCb\xE1w\u1ECDl\xE9 a\u1E63\xEC\u1E63e"}}};function GT(){return{localeError:kM()}}var ZT,$b=Symbol("ZodOutput"),Cb=Symbol("ZodInput"),Wd=class{constructor(){this._map=new WeakMap,this._idmap=new Map}add(e,...n){let i=n[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 n=this._map.get(e);return n&&typeof n=="object"&&"id"in n&&this._idmap.delete(n.id),this._map.delete(e),this}get(e){let n=e._zod.parent;if(n){let i={...this.get(n)??{}};delete i.id;let r={...i,...this._map.get(e)};return Object.keys(r).length?r:void 0}return this._map.get(e)}has(e){return this._map.has(e)}};function Jd(){return new Wd}(ZT=globalThis).__zod_globalRegistry??(ZT.__zod_globalRegistry=Jd());var vt=globalThis.__zod_globalRegistry;function Yd(t,e){return new t({type:"string",...P(e)})}function Nb(t,e){return new t({type:"string",coerce:!0,...P(e)})}function ic(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...P(e)})}function Ho(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...P(e)})}function oc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...P(e)})}function sc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...P(e)})}function ac(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...P(e)})}function cc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...P(e)})}function Go(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...P(e)})}function lc(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...P(e)})}function uc(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...P(e)})}function dc(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...P(e)})}function mc(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...P(e)})}function pc(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...P(e)})}function fc(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...P(e)})}function gc(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...P(e)})}function hc(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...P(e)})}function bc(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...P(e)})}function Xd(t,e){return new t({type:"string",format:"mac",check:"string_format",abort:!1,...P(e)})}function _c(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...P(e)})}function vc(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...P(e)})}function yc(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...P(e)})}function kc(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...P(e)})}function wc(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...P(e)})}function Sc(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...P(e)})}var Pb={Any:null,Minute:-1,Second:0,Millisecond:3,Microsecond:6};function zb(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...P(e)})}function Db(t,e){return new t({type:"string",format:"date",check:"string_format",...P(e)})}function Lb(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...P(e)})}function Ub(t,e){return new t({type:"string",format:"duration",check:"string_format",...P(e)})}function Qd(t,e){return new t({type:"number",checks:[],...P(e)})}function Mb(t,e){return new t({type:"number",coerce:!0,checks:[],...P(e)})}function em(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...P(e)})}function tm(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"float32",...P(e)})}function nm(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"float64",...P(e)})}function rm(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"int32",...P(e)})}function im(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"uint32",...P(e)})}function om(t,e){return new t({type:"boolean",...P(e)})}function jb(t,e){return new t({type:"boolean",coerce:!0,...P(e)})}function sm(t,e){return new t({type:"bigint",...P(e)})}function Bb(t,e){return new t({type:"bigint",coerce:!0,...P(e)})}function am(t,e){return new t({type:"bigint",check:"bigint_format",abort:!1,format:"int64",...P(e)})}function cm(t,e){return new t({type:"bigint",check:"bigint_format",abort:!1,format:"uint64",...P(e)})}function lm(t,e){return new t({type:"symbol",...P(e)})}function um(t,e){return new t({type:"undefined",...P(e)})}function dm(t,e){return new t({type:"null",...P(e)})}function mm(t){return new t({type:"any"})}function pm(t){return new t({type:"unknown"})}function fm(t,e){return new t({type:"never",...P(e)})}function gm(t,e){return new t({type:"void",...P(e)})}function hm(t,e){return new t({type:"date",...P(e)})}function Kb(t,e){return new t({type:"date",coerce:!0,...P(e)})}function bm(t,e){return new t({type:"nan",...P(e)})}function or(t,e){return new Lu({check:"less_than",...P(e),value:t,inclusive:!1})}function un(t,e){return new Lu({check:"less_than",...P(e),value:t,inclusive:!0})}function sr(t,e){return new Uu({check:"greater_than",...P(e),value:t,inclusive:!1})}function Mt(t,e){return new Uu({check:"greater_than",...P(e),value:t,inclusive:!0})}function _m(t){return sr(0,t)}function vm(t){return or(0,t)}function ym(t){return un(0,t)}function km(t){return Mt(0,t)}function ri(t,e){return new ib({check:"multiple_of",...P(e),value:t})}function ii(t,e){return new ab({check:"max_size",...P(e),maximum:t})}function ar(t,e){return new cb({check:"min_size",...P(e),minimum:t})}function Wi(t,e){return new lb({check:"size_equals",...P(e),size:t})}function Ji(t,e){return new ub({check:"max_length",...P(e),maximum:t})}function Rr(t,e){return new db({check:"min_length",...P(e),minimum:t})}function Yi(t,e){return new mb({check:"length_equals",...P(e),length:t})}function Zo(t,e){return new pb({check:"string_format",format:"regex",...P(e),pattern:t})}function Wo(t){return new fb({check:"string_format",format:"lowercase",...P(t)})}function Jo(t){return new gb({check:"string_format",format:"uppercase",...P(t)})}function Yo(t,e){return new hb({check:"string_format",format:"includes",...P(e),includes:t})}function Xo(t,e){return new bb({check:"string_format",format:"starts_with",...P(e),prefix:t})}function Qo(t,e){return new _b({check:"string_format",format:"ends_with",...P(e),suffix:t})}function wm(t,e,n){return new vb({check:"property",property:t,schema:e,...P(n)})}function es(t,e){return new yb({check:"mime_type",mime:t,...P(e)})}function Un(t){return new kb({check:"overwrite",tx:t})}function ts(t){return Un(e=>e.normalize(t))}function ns(){return Un(t=>t.trim())}function rs(){return Un(t=>t.toLowerCase())}function is(){return Un(t=>t.toUpperCase())}function os(){return Un(t=>yh(t))}function Fb(t,e,n){return new t({type:"array",element:e,...P(n)})}function SM(t,e,n){return new t({type:"union",options:e,...P(n)})}function IM(t,e,n){return new t({type:"union",options:e,inclusive:!1,...P(n)})}function EM(t,e,n,i){return new t({type:"union",options:n,discriminator:e,...P(i)})}function TM(t,e,n){return new t({type:"intersection",left:e,right:n})}function RM(t,e,n,i){let r=n instanceof ie,o=r?i:n,a=r?n:null;return new t({type:"tuple",items:e,rest:a,...P(o)})}function xM(t,e,n,i){return new t({type:"record",keyType:e,valueType:n,...P(i)})}function OM(t,e,n,i){return new t({type:"map",keyType:e,valueType:n,...P(i)})}function AM(t,e,n){return new t({type:"set",valueType:e,...P(n)})}function $M(t,e,n){let i=Array.isArray(e)?Object.fromEntries(e.map(r=>[r,r])):e;return new t({type:"enum",entries:i,...P(n)})}function CM(t,e,n){return new t({type:"enum",entries:e,...P(n)})}function NM(t,e,n){return new t({type:"literal",values:Array.isArray(e)?e:[e],...P(n)})}function Sm(t,e){return new t({type:"file",...P(e)})}function PM(t,e){return new t({type:"transform",transform:e})}function zM(t,e){return new t({type:"optional",innerType:e})}function DM(t,e){return new t({type:"nullable",innerType:e})}function LM(t,e,n){return new t({type:"default",innerType:e,get defaultValue(){return typeof n=="function"?n():Tu(n)}})}function UM(t,e,n){return new t({type:"nonoptional",innerType:e,...P(n)})}function MM(t,e){return new t({type:"success",innerType:e})}function jM(t,e,n){return new t({type:"catch",innerType:e,catchValue:typeof n=="function"?n:()=>n})}function BM(t,e,n){return new t({type:"pipe",in:e,out:n})}function KM(t,e){return new t({type:"readonly",innerType:e})}function FM(t,e,n){return new t({type:"template_literal",parts:e,...P(n)})}function VM(t,e){return new t({type:"lazy",getter:e})}function qM(t,e){return new t({type:"promise",innerType:e})}function Im(t,e,n){let i=P(n);return i.abort??(i.abort=!0),new t({type:"custom",check:"custom",fn:e,...i})}function Em(t,e,n){return new t({type:"custom",check:"custom",fn:e,...P(n)})}function Tm(t,e){let n=WT(i=>(i.addIssue=r=>{if(typeof r=="string")i.issues.push(zo(r,i.value,n._zod.def));else{let o=r;o.fatal&&(o.continue=!1),o.code??(o.code="custom"),o.input??(o.input=i.value),o.inst??(o.inst=n),o.continue??(o.continue=!n._zod.def.abort),i.issues.push(zo(o))}},t(i.value,i)),e);return n}function WT(t,e){let n=new Be({check:"custom",...P(e)});return n._zod.check=t,n}function Rm(t){let e=new Be({check:"describe"});return e._zod.onattach=[n=>{let i=vt.get(n)??{};vt.add(n,{...i,description:t})}],e._zod.check=()=>{},e}function xm(t){let e=new Be({check:"meta"});return e._zod.onattach=[n=>{let i=vt.get(n)??{};vt.add(n,{...i,...t})}],e._zod.check=()=>{},e}function Om(t,e){let n=P(e),i=n.truthy??["true","1","yes","on","y","enabled"],r=n.falsy??["false","0","no","off","n","disabled"];n.case!=="sensitive"&&(i=i.map(p=>typeof p=="string"?p.toLowerCase():p),r=r.map(p=>typeof p=="string"?p.toLowerCase():p));let o=new Set(i),a=new Set(r),c=t.Codec??Fo,l=t.Boolean??Bo,u=t.String??ni,d=new u({type:"string",error:n.error}),m=new l({type:"boolean",error:n.error}),f=new c({type:"pipe",in:d,out:m,transform:((p,g)=>{let b=p;return n.case!=="sensitive"&&(b=b.toLowerCase()),o.has(b)?!0:a.has(b)?!1:(g.issues.push({code:"invalid_value",expected:"stringbool",values:[...o,...a],input:g.value,inst:f,continue:!1}),{})}),reverseTransform:((p,g)=>p===!0?i[0]||"true":r[0]||"false"),error:n.error});return f}function Xi(t,e,n,i={}){let r=P(i),o={...P(i),check:"string_format",type:"string",format:e,fn:typeof n=="function"?n:c=>n.test(c),...r};return n instanceof RegExp&&(o.pattern=n),new t(o)}function oi(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??vt,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 Ue(t,e,n={path:[],schemaPath:[]}){var i;let r=t._zod.def,o=e.seen.get(t);if(o)return o.count++,n.schemaPath.includes(t)&&(o.cycle=n.path),o.schema;let a={schema:{},count:1,cycle:void 0,path:n.path};e.seen.set(t,a);let c=t._zod.toJSONSchema?.();if(c)a.schema=c;else{let d={...n,schemaPath:[...n.schemaPath,t],path:n.path};if(t._zod.processJSONSchema)t._zod.processJSONSchema(e,a.schema,d);else{let f=a.schema,p=e.processors[r.type];if(!p)throw new Error(`[toJSONSchema]: Non-representable type encountered: ${r.type}`);p(t,e,f,d)}let m=t._zod.parent;m&&(a.ref||(a.ref=m),Ue(m,e,d),e.seen.get(m).isParent=!0)}let l=e.metadataRegistry.get(t);return l&&Object.assign(a.schema,l),e.io==="input"&&jt(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 si(t,e){let n=t.seen.get(e);if(!n)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 r=a=>{let c=t.target==="draft-2020-12"?"$defs":"definitions";if(t.external){let m=t.external.registry.get(a[0])?.id,f=t.external.uri??(g=>g);if(m)return{ref:f(m)};let p=a[1].defId??a[1].schema.id??`schema${t.counter++}`;return a[1].defId=p,{defId:p,ref:`${f("__shared")}#/${c}/${p}`}}if(a[1]===n)return{ref:"#"};let u=`#/${c}/`,d=a[1].schema.id??`__schema${t.counter++}`;return{defId:d,ref:u+d}},o=a=>{if(a[1].schema.$ref)return;let c=a[1],{ref:l,defId:u}=r(a);c.def={...c.schema},u&&(c.defId=u);let d=c.schema;for(let m in d)delete d[m];d.$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>
|
|
98
|
-
|
|
99
|
-
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 u=t.external.registry.get(a[0])?.id;if(e!==a[0]&&u){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 ai(t,e){let n=t.seen.get(e);if(!n)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 u=l.def??l.schema,d={...u},m=l.ref;if(l.ref=null,m){i(m);let p=t.seen.get(m),g=p.schema;if(g.$ref&&(t.target==="draft-07"||t.target==="draft-04"||t.target==="openapi-3.0")?(u.allOf=u.allOf??[],u.allOf.push(g)):Object.assign(u,g),Object.assign(u,d),c._zod.parent===m)for(let _ in u)_==="$ref"||_==="allOf"||_ in d||delete u[_];if(g.$ref&&p.def)for(let _ in u)_==="$ref"||_==="allOf"||_ in p.def&&JSON.stringify(u[_])===JSON.stringify(p.def[_])&&delete u[_]}let f=c._zod.parent;if(f&&f!==m){i(f);let p=t.seen.get(f);if(p?.schema.$ref&&(u.$ref=p.schema.$ref,p.def))for(let g in u)g==="$ref"||g==="allOf"||g in p.def&&JSON.stringify(u[g])===JSON.stringify(p.def[g])&&delete u[g]}t.override({zodSchema:c,jsonSchema:u,path:l.path??[]})};for(let c of[...t.seen.entries()].reverse())i(c[0]);let r={};if(t.target==="draft-2020-12"?r.$schema="https://json-schema.org/draft/2020-12/schema":t.target==="draft-07"?r.$schema="http://json-schema.org/draft-07/schema#":t.target==="draft-04"?r.$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");r.$id=t.external.uri(c)}Object.assign(r,n.def??n.schema);let o=t.metadataRegistry.get(e)?.id;o!==void 0&&r.id===o&&delete r.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"?r.$defs=a:r.definitions=a);try{let c=JSON.parse(JSON.stringify(r));return Object.defineProperty(c,"~standard",{value:{...e["~standard"],jsonSchema:{input:ss(e,"input",t.processors),output:ss(e,"output",t.processors)}},enumerable:!1,writable:!1}),c}catch{throw new Error("Error converting schema to JSON.")}}function jt(t,e){let n=e??{seen:new Set};if(n.seen.has(t))return!1;n.seen.add(t);let i=t._zod.def;if(i.type==="transform")return!0;if(i.type==="array")return jt(i.element,n);if(i.type==="set")return jt(i.valueType,n);if(i.type==="lazy")return jt(i.getter(),n);if(i.type==="promise"||i.type==="optional"||i.type==="nonoptional"||i.type==="nullable"||i.type==="readonly"||i.type==="default"||i.type==="prefault")return jt(i.innerType,n);if(i.type==="intersection")return jt(i.left,n)||jt(i.right,n);if(i.type==="record"||i.type==="map")return jt(i.keyType,n)||jt(i.valueType,n);if(i.type==="pipe")return t._zod.traits.has("$ZodCodec")?!0:jt(i.in,n)||jt(i.out,n);if(i.type==="object"){for(let r in i.shape)if(jt(i.shape[r],n))return!0;return!1}if(i.type==="union"){for(let r of i.options)if(jt(r,n))return!0;return!1}if(i.type==="tuple"){for(let r of i.items)if(jt(r,n))return!0;return!!(i.rest&&jt(i.rest,n))}return!1}var Vb=(t,e={})=>n=>{let i=oi({...n,processors:e});return Ue(t,i),si(i,t),ai(i,t)},ss=(t,e,n={})=>i=>{let{libraryOptions:r,target:o}=i??{},a=oi({...r??{},target:o,io:e,processors:n});return Ue(t,a),si(a,t),ai(a,t)};var HM={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},qb=(t,e,n,i)=>{let r=n;r.type="string";let{minimum:o,maximum:a,format:c,patterns:l,contentEncoding:u}=t._zod.bag;if(typeof o=="number"&&(r.minLength=o),typeof a=="number"&&(r.maxLength=a),c&&(r.format=HM[c]??c,r.format===""&&delete r.format,c==="time"&&delete r.format),u&&(r.contentEncoding=u),l&&l.size>0){let d=[...l];d.length===1?r.pattern=d[0].source:d.length>1&&(r.allOf=[...d.map(m=>({...e.target==="draft-07"||e.target==="draft-04"||e.target==="openapi-3.0"?{type:"string"}:{},pattern:m.source}))])}},Hb=(t,e,n,i)=>{let r=n,{minimum:o,maximum:a,format:c,multipleOf:l,exclusiveMaximum:u,exclusiveMinimum:d}=t._zod.bag;typeof c=="string"&&c.includes("int")?r.type="integer":r.type="number";let m=typeof d=="number"&&d>=(o??Number.NEGATIVE_INFINITY),f=typeof u=="number"&&u<=(a??Number.POSITIVE_INFINITY),p=e.target==="draft-04"||e.target==="openapi-3.0";m?p?(r.minimum=d,r.exclusiveMinimum=!0):r.exclusiveMinimum=d:typeof o=="number"&&(r.minimum=o),f?p?(r.maximum=u,r.exclusiveMaximum=!0):r.exclusiveMaximum=u:typeof a=="number"&&(r.maximum=a),typeof l=="number"&&(r.multipleOf=l)},Gb=(t,e,n,i)=>{n.type="boolean"},Zb=(t,e,n,i)=>{if(e.unrepresentable==="throw")throw new Error("BigInt cannot be represented in JSON Schema")},Wb=(t,e,n,i)=>{if(e.unrepresentable==="throw")throw new Error("Symbols cannot be represented in JSON Schema")},Jb=(t,e,n,i)=>{e.target==="openapi-3.0"?(n.type="string",n.nullable=!0,n.enum=[null]):n.type="null"},Yb=(t,e,n,i)=>{if(e.unrepresentable==="throw")throw new Error("Undefined cannot be represented in JSON Schema")},Xb=(t,e,n,i)=>{if(e.unrepresentable==="throw")throw new Error("Void cannot be represented in JSON Schema")},Qb=(t,e,n,i)=>{n.not={}},e_=(t,e,n,i)=>{},t_=(t,e,n,i)=>{},n_=(t,e,n,i)=>{if(e.unrepresentable==="throw")throw new Error("Date cannot be represented in JSON Schema")},r_=(t,e,n,i)=>{let r=t._zod.def,o=Ba(r.entries);o.every(a=>typeof a=="number")&&(n.type="number"),o.every(a=>typeof a=="string")&&(n.type="string"),n.enum=o},i_=(t,e,n,i)=>{let r=t._zod.def,o=[];for(let a of r.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];n.type=a===null?"null":typeof a,e.target==="draft-04"||e.target==="openapi-3.0"?n.enum=[a]:n.const=a}else o.every(a=>typeof a=="number")&&(n.type="number"),o.every(a=>typeof a=="string")&&(n.type="string"),o.every(a=>typeof a=="boolean")&&(n.type="boolean"),o.every(a=>a===null)&&(n.type="null"),n.enum=o},o_=(t,e,n,i)=>{if(e.unrepresentable==="throw")throw new Error("NaN cannot be represented in JSON Schema")},s_=(t,e,n,i)=>{let r=n,o=t._zod.pattern;if(!o)throw new Error("Pattern not found in template literal");r.type="string",r.pattern=o.source},a_=(t,e,n,i)=>{let r=n,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(r,o)):(Object.assign(r,o),r.anyOf=l.map(u=>({contentMediaType:u}))):Object.assign(r,o)},c_=(t,e,n,i)=>{n.type="boolean"},l_=(t,e,n,i)=>{if(e.unrepresentable==="throw")throw new Error("Custom types cannot be represented in JSON Schema")},u_=(t,e,n,i)=>{if(e.unrepresentable==="throw")throw new Error("Function types cannot be represented in JSON Schema")},d_=(t,e,n,i)=>{if(e.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema")},m_=(t,e,n,i)=>{if(e.unrepresentable==="throw")throw new Error("Map cannot be represented in JSON Schema")},p_=(t,e,n,i)=>{if(e.unrepresentable==="throw")throw new Error("Set cannot be represented in JSON Schema")},f_=(t,e,n,i)=>{let r=n,o=t._zod.def,{minimum:a,maximum:c}=t._zod.bag;typeof a=="number"&&(r.minItems=a),typeof c=="number"&&(r.maxItems=c),r.type="array",r.items=Ue(o.element,e,{...i,path:[...i.path,"items"]})},g_=(t,e,n,i)=>{let r=n,o=t._zod.def;r.type="object",r.properties={};let a=o.shape;for(let u in a)r.properties[u]=Ue(a[u],e,{...i,path:[...i.path,"properties",u]});let c=new Set(Object.keys(a)),l=new Set([...c].filter(u=>{let d=o.shape[u]._zod;return e.io==="input"?d.optin===void 0:d.optout===void 0}));l.size>0&&(r.required=Array.from(l)),o.catchall?._zod.def.type==="never"?r.additionalProperties=!1:o.catchall?o.catchall&&(r.additionalProperties=Ue(o.catchall,e,{...i,path:[...i.path,"additionalProperties"]})):e.io==="output"&&(r.additionalProperties=!1)},$m=(t,e,n,i)=>{let r=t._zod.def,o=r.inclusive===!1,a=r.options.map((c,l)=>Ue(c,e,{...i,path:[...i.path,o?"oneOf":"anyOf",l]}));o?n.oneOf=a:n.anyOf=a},h_=(t,e,n,i)=>{let r=t._zod.def,o=Ue(r.left,e,{...i,path:[...i.path,"allOf",0]}),a=Ue(r.right,e,{...i,path:[...i.path,"allOf",1]}),c=u=>"allOf"in u&&Object.keys(u).length===1,l=[...c(o)?o.allOf:[o],...c(a)?a.allOf:[a]];n.allOf=l},b_=(t,e,n,i)=>{let r=n,o=t._zod.def;r.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((f,p)=>Ue(f,e,{...i,path:[...i.path,a,p]})),u=o.rest?Ue(o.rest,e,{...i,path:[...i.path,c,...e.target==="openapi-3.0"?[o.items.length]:[]]}):null;e.target==="draft-2020-12"?(r.prefixItems=l,u&&(r.items=u)):e.target==="openapi-3.0"?(r.items={anyOf:l},u&&r.items.anyOf.push(u),r.minItems=l.length,u||(r.maxItems=l.length)):(r.items=l,u&&(r.additionalItems=u));let{minimum:d,maximum:m}=t._zod.bag;typeof d=="number"&&(r.minItems=d),typeof m=="number"&&(r.maxItems=m)},__=(t,e,n,i)=>{let r=n,o=t._zod.def;r.type="object";let a=o.keyType,l=a._zod.bag?.patterns;if(o.mode==="loose"&&l&&l.size>0){let d=Ue(o.valueType,e,{...i,path:[...i.path,"patternProperties","*"]});r.patternProperties={};for(let m of l)r.patternProperties[m.source]=d}else(e.target==="draft-07"||e.target==="draft-2020-12")&&(r.propertyNames=Ue(o.keyType,e,{...i,path:[...i.path,"propertyNames"]})),r.additionalProperties=Ue(o.valueType,e,{...i,path:[...i.path,"additionalProperties"]});let u=a._zod.values;if(u){let d=[...u].filter(m=>typeof m=="string"||typeof m=="number");d.length>0&&(r.required=d)}},v_=(t,e,n,i)=>{let r=t._zod.def,o=Ue(r.innerType,e,i),a=e.seen.get(t);e.target==="openapi-3.0"?(a.ref=r.innerType,n.nullable=!0):n.anyOf=[o,{type:"null"}]},y_=(t,e,n,i)=>{let r=t._zod.def;Ue(r.innerType,e,i);let o=e.seen.get(t);o.ref=r.innerType},k_=(t,e,n,i)=>{let r=t._zod.def;Ue(r.innerType,e,i);let o=e.seen.get(t);o.ref=r.innerType,n.default=JSON.parse(JSON.stringify(r.defaultValue))},w_=(t,e,n,i)=>{let r=t._zod.def;Ue(r.innerType,e,i);let o=e.seen.get(t);o.ref=r.innerType,e.io==="input"&&(n._prefault=JSON.parse(JSON.stringify(r.defaultValue)))},S_=(t,e,n,i)=>{let r=t._zod.def;Ue(r.innerType,e,i);let o=e.seen.get(t);o.ref=r.innerType;let a;try{a=r.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}n.default=a},I_=(t,e,n,i)=>{let r=t._zod.def,o=r.in._zod.traits.has("$ZodTransform"),a=e.io==="input"?o?r.out:r.in:r.out;Ue(a,e,i);let c=e.seen.get(t);c.ref=a},E_=(t,e,n,i)=>{let r=t._zod.def;Ue(r.innerType,e,i);let o=e.seen.get(t);o.ref=r.innerType,n.readOnly=!0},T_=(t,e,n,i)=>{let r=t._zod.def;Ue(r.innerType,e,i);let o=e.seen.get(t);o.ref=r.innerType},Cm=(t,e,n,i)=>{let r=t._zod.def;Ue(r.innerType,e,i);let o=e.seen.get(t);o.ref=r.innerType},R_=(t,e,n,i)=>{let r=t._zod.innerType;Ue(r,e,i);let o=e.seen.get(t);o.ref=r},Am={string:qb,number:Hb,boolean:Gb,bigint:Zb,symbol:Wb,null:Jb,undefined:Yb,void:Xb,never:Qb,any:e_,unknown:t_,date:n_,enum:r_,literal:i_,nan:o_,template_literal:s_,file:a_,success:c_,custom:l_,function:u_,transform:d_,map:m_,set:p_,array:f_,object:g_,union:$m,intersection:h_,tuple:b_,record:__,nullable:v_,nonoptional:y_,default:k_,prefault:w_,catch:S_,pipe:I_,readonly:E_,promise:T_,optional:Cm,lazy:R_};function Qi(t,e){if("_idmap"in t){let i=t,r=oi({...e,processors:Am}),o={};for(let l of i._idmap.entries()){let[u,d]=l;Ue(d,r)}let a={},c={registry:i,uri:e?.uri,defs:o};r.external=c;for(let l of i._idmap.entries()){let[u,d]=l;si(r,d),a[u]=ai(r,d)}if(Object.keys(o).length>0){let l=r.target==="draft-2020-12"?"$defs":"definitions";a.__shared={[l]:o}}return{schemas:a}}let n=oi({...e,processors:Am});return Ue(t,n),si(n,t),ai(n,t)}var Nm=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 n=e?.target??"draft-2020-12";n==="draft-4"&&(n="draft-04"),n==="draft-7"&&(n="draft-07"),this.ctx=oi({processors:Am,target:n,...e?.metadata&&{metadata:e.metadata},...e?.unrepresentable&&{unrepresentable:e.unrepresentable},...e?.override&&{override:e.override},...e?.io&&{io:e.io}})}process(e,n={path:[],schemaPath:[]}){return Ue(e,this.ctx,n)}emit(e,n){n&&(n.cycles&&(this.ctx.cycles=n.cycles),n.reused&&(this.ctx.reused=n.reused),n.external&&(this.ctx.external=n.external)),si(this.ctx,e);let i=ai(this.ctx,e),{"~standard":r,...o}=i;return o}};var JT={};var Ic={};Er(Ic,{ZodAny:()=>Z_,ZodArray:()=>X_,ZodBase64:()=>ep,ZodBase64URL:()=>tp,ZodBigInt:()=>ps,ZodBigIntFormat:()=>ip,ZodBoolean:()=>ms,ZodCIDRv4:()=>Xm,ZodCIDRv6:()=>Qm,ZodCUID:()=>qm,ZodCUID2:()=>Hm,ZodCatch:()=>_v,ZodCodec:()=>zc,ZodCustom:()=>Dc,ZodCustomStringFormat:()=>us,ZodDate:()=>Ac,ZodDefault:()=>mv,ZodDiscriminatedUnion:()=>ev,ZodE164:()=>np,ZodEmail:()=>Km,ZodEmoji:()=>Fm,ZodEnum:()=>cs,ZodExactOptional:()=>lv,ZodFile:()=>av,ZodFunction:()=>xv,ZodGUID:()=>Ec,ZodIPv4:()=>Jm,ZodIPv6:()=>Ym,ZodIntersection:()=>tv,ZodJWT:()=>rp,ZodKSUID:()=>Wm,ZodLazy:()=>Ev,ZodLiteral:()=>sv,ZodMAC:()=>V_,ZodMap:()=>iv,ZodNaN:()=>yv,ZodNanoID:()=>Vm,ZodNever:()=>J_,ZodNonOptional:()=>ap,ZodNull:()=>G_,ZodNullable:()=>dv,ZodNumber:()=>ds,ZodNumberFormat:()=>eo,ZodObject:()=>$c,ZodOptional:()=>gs,ZodPipe:()=>Pc,ZodPrefault:()=>fv,ZodPreprocess:()=>kv,ZodPromise:()=>Rv,ZodReadonly:()=>wv,ZodRecord:()=>as,ZodSet:()=>ov,ZodString:()=>ls,ZodStringFormat:()=>Ke,ZodSuccess:()=>bv,ZodSymbol:()=>q_,ZodTemplateLiteral:()=>Iv,ZodTransform:()=>cv,ZodTuple:()=>nv,ZodType:()=>le,ZodULID:()=>Gm,ZodURL:()=>xc,ZodUUID:()=>cr,ZodUndefined:()=>H_,ZodUnion:()=>Cc,ZodUnknown:()=>W_,ZodVoid:()=>Y_,ZodXID:()=>Zm,ZodXor:()=>Q_,_ZodString:()=>Bm,_default:()=>pv,_function:()=>tx,any:()=>DR,array:()=>ge,base64:()=>vR,base64url:()=>yR,bigint:()=>$R,boolean:()=>st,catch:()=>vv,check:()=>nx,cidrv4:()=>bR,cidrv6:()=>_R,codec:()=>YR,cuid:()=>lR,cuid2:()=>uR,custom:()=>cp,date:()=>UR,describe:()=>rx,discriminatedUnion:()=>Nc,e164:()=>kR,email:()=>QT,emoji:()=>aR,enum:()=>kt,exactOptional:()=>uv,file:()=>GR,float32:()=>RR,float64:()=>xR,function:()=>tx,guid:()=>eR,hash:()=>TR,hex:()=>ER,hostname:()=>IR,httpUrl:()=>sR,instanceof:()=>ox,int:()=>Mm,int32:()=>OR,int64:()=>CR,intersection:()=>fs,invertCodec:()=>XR,ipv4:()=>fR,ipv6:()=>hR,json:()=>ax,jwt:()=>wR,keyof:()=>MR,ksuid:()=>pR,lazy:()=>Tv,literal:()=>W,looseObject:()=>yt,looseRecord:()=>FR,mac:()=>gR,map:()=>VR,meta:()=>ix,nan:()=>JR,nanoid:()=>cR,nativeEnum:()=>HR,never:()=>op,nonoptional:()=>hv,null:()=>Oc,nullable:()=>Tc,nullish:()=>ZR,number:()=>Ne,object:()=>q,optional:()=>He,partialRecord:()=>KR,pipe:()=>jm,prefault:()=>gv,preprocess:()=>Lc,promise:()=>ex,readonly:()=>Sv,record:()=>je,refine:()=>Ov,set:()=>qR,strictObject:()=>jR,string:()=>k,stringFormat:()=>SR,stringbool:()=>sx,success:()=>WR,superRefine:()=>Av,symbol:()=>PR,templateLiteral:()=>QR,transform:()=>sp,tuple:()=>rv,uint32:()=>AR,uint64:()=>NR,ulid:()=>dR,undefined:()=>zR,union:()=>Ve,unknown:()=>Fe,url:()=>oR,uuid:()=>tR,uuidv4:()=>nR,uuidv6:()=>rR,uuidv7:()=>iR,void:()=>LR,xid:()=>mR,xor:()=>BR});var Pm={};Er(Pm,{endsWith:()=>Qo,gt:()=>sr,gte:()=>Mt,includes:()=>Yo,length:()=>Yi,lowercase:()=>Wo,lt:()=>or,lte:()=>un,maxLength:()=>Ji,maxSize:()=>ii,mime:()=>es,minLength:()=>Rr,minSize:()=>ar,multipleOf:()=>ri,negative:()=>vm,nonnegative:()=>km,nonpositive:()=>ym,normalize:()=>ts,overwrite:()=>Un,positive:()=>_m,property:()=>wm,regex:()=>Zo,size:()=>Wi,slugify:()=>os,startsWith:()=>Xo,toLowerCase:()=>rs,toUpperCase:()=>is,trim:()=>ns,uppercase:()=>Jo});var ci={};Er(ci,{ZodISODate:()=>Dm,ZodISODateTime:()=>zm,ZodISODuration:()=>Um,ZodISOTime:()=>Lm,date:()=>O_,datetime:()=>x_,duration:()=>$_,time:()=>A_});var zm=h("ZodISODateTime",(t,e)=>{Ib.init(t,e),Ke.init(t,e)});function x_(t){return zb(zm,t)}var Dm=h("ZodISODate",(t,e)=>{Eb.init(t,e),Ke.init(t,e)});function O_(t){return Db(Dm,t)}var Lm=h("ZodISOTime",(t,e)=>{Tb.init(t,e),Ke.init(t,e)});function A_(t){return Lb(Lm,t)}var Um=h("ZodISODuration",(t,e)=>{Rb.init(t,e),Ke.init(t,e)});function $_(t){return Ub(Um,t)}var YT=(t,e)=>{Ha.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:n=>Za(t,n)},flatten:{value:n=>Ga(t,n)},addIssue:{value:n=>{t.issues.push(n),t.message=JSON.stringify(t.issues,No,2)}},addIssues:{value:n=>{t.issues.push(...n),t.message=JSON.stringify(t.issues,No,2)}},isEmpty:{get(){return t.issues.length===0}}})},ZM=h("ZodError",YT),tn=h("ZodError",YT,{Parent:Error});var C_=Do(tn),N_=Lo(tn),P_=Uo(tn),z_=Mo(tn),D_=Ru(tn),L_=xu(tn),U_=Ou(tn),M_=Au(tn),j_=$u(tn),B_=Cu(tn),K_=Nu(tn),F_=Pu(tn);var XT=new WeakMap;function Rc(t,e,n){let i=Object.getPrototypeOf(t),r=XT.get(i);if(r||(r=new Set,XT.set(i,r)),!r.has(e)){r.add(e);for(let o in n){let a=n[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 le=h("ZodType",(t,e)=>(ie.init(t,e),Object.assign(t["~standard"],{jsonSchema:{input:ss(t,"input"),output:ss(t,"output")}}),t.toJSONSchema=Vb(t,{}),t.def=e,t.type=e.type,Object.defineProperty(t,"_def",{value:e}),t.parse=(n,i)=>C_(t,n,i,{callee:t.parse}),t.safeParse=(n,i)=>P_(t,n,i),t.parseAsync=async(n,i)=>N_(t,n,i,{callee:t.parseAsync}),t.safeParseAsync=async(n,i)=>z_(t,n,i),t.spa=t.safeParseAsync,t.encode=(n,i)=>D_(t,n,i),t.decode=(n,i)=>L_(t,n,i),t.encodeAsync=async(n,i)=>U_(t,n,i),t.decodeAsync=async(n,i)=>M_(t,n,i),t.safeEncode=(n,i)=>j_(t,n,i),t.safeDecode=(n,i)=>B_(t,n,i),t.safeEncodeAsync=async(n,i)=>K_(t,n,i),t.safeDecodeAsync=async(n,i)=>F_(t,n,i),Rc(t,"ZodType",{check(...n){let i=this.def;return this.clone(A.mergeDefs(i,{checks:[...i.checks??[],...n.map(r=>typeof r=="function"?{_zod:{check:r,def:{check:"custom"},onattach:[]}}:r)]}),{parent:!0})},with(...n){return this.check(...n)},clone(n,i){return _t(this,n,i)},brand(){return this},register(n,i){return n.add(this,i),this},refine(n,i){return this.check(Ov(n,i))},superRefine(n,i){return this.check(Av(n,i))},overwrite(n){return this.check(Un(n))},optional(){return He(this)},exactOptional(){return uv(this)},nullable(){return Tc(this)},nullish(){return He(Tc(this))},nonoptional(n){return hv(this,n)},array(){return ge(this)},or(n){return Ve([this,n])},and(n){return fs(this,n)},transform(n){return jm(this,sp(n))},default(n){return pv(this,n)},prefault(n){return gv(this,n)},catch(n){return vv(this,n)},pipe(n){return jm(this,n)},readonly(){return Sv(this)},describe(n){let i=this.clone();return vt.add(i,{description:n}),i},meta(...n){if(n.length===0)return vt.get(this);let i=this.clone();return vt.add(i,n[0]),i},isOptional(){return this.safeParse(void 0).success},isNullable(){return this.safeParse(null).success},apply(n){return n(this)}}),Object.defineProperty(t,"description",{get(){return vt.get(t)?.description},configurable:!0}),t)),Bm=h("_ZodString",(t,e)=>{ni.init(t,e),le.init(t,e),t._zod.processJSONSchema=(i,r,o)=>qb(t,i,r,o);let n=t._zod.bag;t.format=n.format??null,t.minLength=n.minimum??null,t.maxLength=n.maximum??null,Rc(t,"_ZodString",{regex(...i){return this.check(Zo(...i))},includes(...i){return this.check(Yo(...i))},startsWith(...i){return this.check(Xo(...i))},endsWith(...i){return this.check(Qo(...i))},min(...i){return this.check(Rr(...i))},max(...i){return this.check(Ji(...i))},length(...i){return this.check(Yi(...i))},nonempty(...i){return this.check(Rr(1,...i))},lowercase(i){return this.check(Wo(i))},uppercase(i){return this.check(Jo(i))},trim(){return this.check(ns())},normalize(...i){return this.check(ts(...i))},toLowerCase(){return this.check(rs())},toUpperCase(){return this.check(is())},slugify(){return this.check(os())}})}),ls=h("ZodString",(t,e)=>{ni.init(t,e),Bm.init(t,e),t.email=n=>t.check(ic(Km,n)),t.url=n=>t.check(Go(xc,n)),t.jwt=n=>t.check(Sc(rp,n)),t.emoji=n=>t.check(lc(Fm,n)),t.guid=n=>t.check(Ho(Ec,n)),t.uuid=n=>t.check(oc(cr,n)),t.uuidv4=n=>t.check(sc(cr,n)),t.uuidv6=n=>t.check(ac(cr,n)),t.uuidv7=n=>t.check(cc(cr,n)),t.nanoid=n=>t.check(uc(Vm,n)),t.guid=n=>t.check(Ho(Ec,n)),t.cuid=n=>t.check(dc(qm,n)),t.cuid2=n=>t.check(mc(Hm,n)),t.ulid=n=>t.check(pc(Gm,n)),t.base64=n=>t.check(yc(ep,n)),t.base64url=n=>t.check(kc(tp,n)),t.xid=n=>t.check(fc(Zm,n)),t.ksuid=n=>t.check(gc(Wm,n)),t.ipv4=n=>t.check(hc(Jm,n)),t.ipv6=n=>t.check(bc(Ym,n)),t.cidrv4=n=>t.check(_c(Xm,n)),t.cidrv6=n=>t.check(vc(Qm,n)),t.e164=n=>t.check(wc(np,n)),t.datetime=n=>t.check(x_(n)),t.date=n=>t.check(O_(n)),t.time=n=>t.check(A_(n)),t.duration=n=>t.check($_(n))});function k(t){return Yd(ls,t)}var Ke=h("ZodStringFormat",(t,e)=>{Me.init(t,e),Bm.init(t,e)}),Km=h("ZodEmail",(t,e)=>{qu.init(t,e),Ke.init(t,e)});function QT(t){return ic(Km,t)}var Ec=h("ZodGUID",(t,e)=>{Fu.init(t,e),Ke.init(t,e)});function eR(t){return Ho(Ec,t)}var cr=h("ZodUUID",(t,e)=>{Vu.init(t,e),Ke.init(t,e)});function tR(t){return oc(cr,t)}function nR(t){return sc(cr,t)}function rR(t){return ac(cr,t)}function iR(t){return cc(cr,t)}var xc=h("ZodURL",(t,e)=>{Hu.init(t,e),Ke.init(t,e)});function oR(t){return Go(xc,t)}function sR(t){return Go(xc,{protocol:en.httpProtocol,hostname:en.domain,...A.normalizeParams(t)})}var Fm=h("ZodEmoji",(t,e)=>{Gu.init(t,e),Ke.init(t,e)});function aR(t){return lc(Fm,t)}var Vm=h("ZodNanoID",(t,e)=>{Zu.init(t,e),Ke.init(t,e)});function cR(t){return uc(Vm,t)}var qm=h("ZodCUID",(t,e)=>{Wu.init(t,e),Ke.init(t,e)});function lR(t){return dc(qm,t)}var Hm=h("ZodCUID2",(t,e)=>{Ju.init(t,e),Ke.init(t,e)});function uR(t){return mc(Hm,t)}var Gm=h("ZodULID",(t,e)=>{Yu.init(t,e),Ke.init(t,e)});function dR(t){return pc(Gm,t)}var Zm=h("ZodXID",(t,e)=>{Xu.init(t,e),Ke.init(t,e)});function mR(t){return fc(Zm,t)}var Wm=h("ZodKSUID",(t,e)=>{Qu.init(t,e),Ke.init(t,e)});function pR(t){return gc(Wm,t)}var Jm=h("ZodIPv4",(t,e)=>{ed.init(t,e),Ke.init(t,e)});function fR(t){return hc(Jm,t)}var V_=h("ZodMAC",(t,e)=>{nd.init(t,e),Ke.init(t,e)});function gR(t){return Xd(V_,t)}var Ym=h("ZodIPv6",(t,e)=>{td.init(t,e),Ke.init(t,e)});function hR(t){return bc(Ym,t)}var Xm=h("ZodCIDRv4",(t,e)=>{rd.init(t,e),Ke.init(t,e)});function bR(t){return _c(Xm,t)}var Qm=h("ZodCIDRv6",(t,e)=>{id.init(t,e),Ke.init(t,e)});function _R(t){return vc(Qm,t)}var ep=h("ZodBase64",(t,e)=>{od.init(t,e),Ke.init(t,e)});function vR(t){return yc(ep,t)}var tp=h("ZodBase64URL",(t,e)=>{sd.init(t,e),Ke.init(t,e)});function yR(t){return kc(tp,t)}var np=h("ZodE164",(t,e)=>{ad.init(t,e),Ke.init(t,e)});function kR(t){return wc(np,t)}var rp=h("ZodJWT",(t,e)=>{cd.init(t,e),Ke.init(t,e)});function wR(t){return Sc(rp,t)}var us=h("ZodCustomStringFormat",(t,e)=>{ld.init(t,e),Ke.init(t,e)});function SR(t,e,n={}){return Xi(us,t,e,n)}function IR(t){return Xi(us,"hostname",en.hostname,t)}function ER(t){return Xi(us,"hex",en.hex,t)}function TR(t,e){let n=e?.enc??"hex",i=`${t}_${n}`,r=en[i];if(!r)throw new Error(`Unrecognized hash format: ${i}`);return Xi(us,i,r,e)}var ds=h("ZodNumber",(t,e)=>{Xa.init(t,e),le.init(t,e),t._zod.processJSONSchema=(i,r,o)=>Hb(t,i,r,o),Rc(t,"ZodNumber",{gt(i,r){return this.check(sr(i,r))},gte(i,r){return this.check(Mt(i,r))},min(i,r){return this.check(Mt(i,r))},lt(i,r){return this.check(or(i,r))},lte(i,r){return this.check(un(i,r))},max(i,r){return this.check(un(i,r))},int(i){return this.check(Mm(i))},safe(i){return this.check(Mm(i))},positive(i){return this.check(sr(0,i))},nonnegative(i){return this.check(Mt(0,i))},negative(i){return this.check(or(0,i))},nonpositive(i){return this.check(un(0,i))},multipleOf(i,r){return this.check(ri(i,r))},step(i,r){return this.check(ri(i,r))},finite(){return this}});let n=t._zod.bag;t.minValue=Math.max(n.minimum??Number.NEGATIVE_INFINITY,n.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,t.maxValue=Math.min(n.maximum??Number.POSITIVE_INFINITY,n.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,t.isInt=(n.format??"").includes("int")||Number.isSafeInteger(n.multipleOf??.5),t.isFinite=!0,t.format=n.format??null});function Ne(t){return Qd(ds,t)}var eo=h("ZodNumberFormat",(t,e)=>{ud.init(t,e),ds.init(t,e)});function Mm(t){return em(eo,t)}function RR(t){return tm(eo,t)}function xR(t){return nm(eo,t)}function OR(t){return rm(eo,t)}function AR(t){return im(eo,t)}var ms=h("ZodBoolean",(t,e)=>{Bo.init(t,e),le.init(t,e),t._zod.processJSONSchema=(n,i,r)=>Gb(t,n,i,r)});function st(t){return om(ms,t)}var ps=h("ZodBigInt",(t,e)=>{Qa.init(t,e),le.init(t,e),t._zod.processJSONSchema=(i,r,o)=>Zb(t,i,r,o),t.gte=(i,r)=>t.check(Mt(i,r)),t.min=(i,r)=>t.check(Mt(i,r)),t.gt=(i,r)=>t.check(sr(i,r)),t.gte=(i,r)=>t.check(Mt(i,r)),t.min=(i,r)=>t.check(Mt(i,r)),t.lt=(i,r)=>t.check(or(i,r)),t.lte=(i,r)=>t.check(un(i,r)),t.max=(i,r)=>t.check(un(i,r)),t.positive=i=>t.check(sr(BigInt(0),i)),t.negative=i=>t.check(or(BigInt(0),i)),t.nonpositive=i=>t.check(un(BigInt(0),i)),t.nonnegative=i=>t.check(Mt(BigInt(0),i)),t.multipleOf=(i,r)=>t.check(ri(i,r));let n=t._zod.bag;t.minValue=n.minimum??null,t.maxValue=n.maximum??null,t.format=n.format??null});function $R(t){return sm(ps,t)}var ip=h("ZodBigIntFormat",(t,e)=>{dd.init(t,e),ps.init(t,e)});function CR(t){return am(ip,t)}function NR(t){return cm(ip,t)}var q_=h("ZodSymbol",(t,e)=>{md.init(t,e),le.init(t,e),t._zod.processJSONSchema=(n,i,r)=>Wb(t,n,i,r)});function PR(t){return lm(q_,t)}var H_=h("ZodUndefined",(t,e)=>{pd.init(t,e),le.init(t,e),t._zod.processJSONSchema=(n,i,r)=>Yb(t,n,i,r)});function zR(t){return um(H_,t)}var G_=h("ZodNull",(t,e)=>{fd.init(t,e),le.init(t,e),t._zod.processJSONSchema=(n,i,r)=>Jb(t,n,i,r)});function Oc(t){return dm(G_,t)}var Z_=h("ZodAny",(t,e)=>{gd.init(t,e),le.init(t,e),t._zod.processJSONSchema=(n,i,r)=>e_(t,n,i,r)});function DR(){return mm(Z_)}var W_=h("ZodUnknown",(t,e)=>{hd.init(t,e),le.init(t,e),t._zod.processJSONSchema=(n,i,r)=>t_(t,n,i,r)});function Fe(){return pm(W_)}var J_=h("ZodNever",(t,e)=>{bd.init(t,e),le.init(t,e),t._zod.processJSONSchema=(n,i,r)=>Qb(t,n,i,r)});function op(t){return fm(J_,t)}var Y_=h("ZodVoid",(t,e)=>{_d.init(t,e),le.init(t,e),t._zod.processJSONSchema=(n,i,r)=>Xb(t,n,i,r)});function LR(t){return gm(Y_,t)}var Ac=h("ZodDate",(t,e)=>{vd.init(t,e),le.init(t,e),t._zod.processJSONSchema=(i,r,o)=>n_(t,i,r,o),t.min=(i,r)=>t.check(Mt(i,r)),t.max=(i,r)=>t.check(un(i,r));let n=t._zod.bag;t.minDate=n.minimum?new Date(n.minimum):null,t.maxDate=n.maximum?new Date(n.maximum):null});function UR(t){return hm(Ac,t)}var X_=h("ZodArray",(t,e)=>{yd.init(t,e),le.init(t,e),t._zod.processJSONSchema=(n,i,r)=>f_(t,n,i,r),t.element=e.element,Rc(t,"ZodArray",{min(n,i){return this.check(Rr(n,i))},nonempty(n){return this.check(Rr(1,n))},max(n,i){return this.check(Ji(n,i))},length(n,i){return this.check(Yi(n,i))},unwrap(){return this.element}})});function ge(t,e){return Fb(X_,t,e)}function MR(t){let e=t._zod.def.shape;return kt(Object.keys(e))}var $c=h("ZodObject",(t,e)=>{Ob.init(t,e),le.init(t,e),t._zod.processJSONSchema=(n,i,r)=>g_(t,n,i,r),A.defineLazy(t,"shape",()=>e.shape),Rc(t,"ZodObject",{keyof(){return kt(Object.keys(this._zod.def.shape))},catchall(n){return this.clone({...this._zod.def,catchall:n})},passthrough(){return this.clone({...this._zod.def,catchall:Fe()})},loose(){return this.clone({...this._zod.def,catchall:Fe()})},strict(){return this.clone({...this._zod.def,catchall:op()})},strip(){return this.clone({...this._zod.def,catchall:void 0})},extend(n){return A.extend(this,n)},safeExtend(n){return A.safeExtend(this,n)},merge(n){return A.merge(this,n)},pick(n){return A.pick(this,n)},omit(n){return A.omit(this,n)},partial(...n){return A.partial(gs,this,n[0])},required(...n){return A.required(ap,this,n[0])}})});function q(t,e){let n={type:"object",shape:t??{},...A.normalizeParams(e)};return new $c(n)}function jR(t,e){return new $c({type:"object",shape:t,catchall:op(),...A.normalizeParams(e)})}function yt(t,e){return new $c({type:"object",shape:t,catchall:Fe(),...A.normalizeParams(e)})}var Cc=h("ZodUnion",(t,e)=>{Ko.init(t,e),le.init(t,e),t._zod.processJSONSchema=(n,i,r)=>$m(t,n,i,r),t.options=e.options});function Ve(t,e){return new Cc({type:"union",options:t,...A.normalizeParams(e)})}var Q_=h("ZodXor",(t,e)=>{Cc.init(t,e),wd.init(t,e),t._zod.processJSONSchema=(n,i,r)=>$m(t,n,i,r),t.options=e.options});function BR(t,e){return new Q_({type:"union",options:t,inclusive:!1,...A.normalizeParams(e)})}var ev=h("ZodDiscriminatedUnion",(t,e)=>{Cc.init(t,e),Sd.init(t,e)});function Nc(t,e,n){return new ev({type:"union",options:e,discriminator:t,...A.normalizeParams(n)})}var tv=h("ZodIntersection",(t,e)=>{Id.init(t,e),le.init(t,e),t._zod.processJSONSchema=(n,i,r)=>h_(t,n,i,r)});function fs(t,e){return new tv({type:"intersection",left:t,right:e})}var nv=h("ZodTuple",(t,e)=>{ec.init(t,e),le.init(t,e),t._zod.processJSONSchema=(n,i,r)=>b_(t,n,i,r),t.rest=n=>t.clone({...t._zod.def,rest:n})});function rv(t,e,n){let i=e instanceof ie,r=i?n:e,o=i?e:null;return new nv({type:"tuple",items:t,rest:o,...A.normalizeParams(r)})}var as=h("ZodRecord",(t,e)=>{Ed.init(t,e),le.init(t,e),t._zod.processJSONSchema=(n,i,r)=>__(t,n,i,r),t.keyType=e.keyType,t.valueType=e.valueType});function je(t,e,n){return!e||!e._zod?new as({type:"record",keyType:k(),valueType:t,...A.normalizeParams(e)}):new as({type:"record",keyType:t,valueType:e,...A.normalizeParams(n)})}function KR(t,e,n){let i=_t(t);return i._zod.values=void 0,new as({type:"record",keyType:i,valueType:e,...A.normalizeParams(n)})}function FR(t,e,n){return new as({type:"record",keyType:t,valueType:e,mode:"loose",...A.normalizeParams(n)})}var iv=h("ZodMap",(t,e)=>{Td.init(t,e),le.init(t,e),t._zod.processJSONSchema=(n,i,r)=>m_(t,n,i,r),t.keyType=e.keyType,t.valueType=e.valueType,t.min=(...n)=>t.check(ar(...n)),t.nonempty=n=>t.check(ar(1,n)),t.max=(...n)=>t.check(ii(...n)),t.size=(...n)=>t.check(Wi(...n))});function VR(t,e,n){return new iv({type:"map",keyType:t,valueType:e,...A.normalizeParams(n)})}var ov=h("ZodSet",(t,e)=>{Rd.init(t,e),le.init(t,e),t._zod.processJSONSchema=(n,i,r)=>p_(t,n,i,r),t.min=(...n)=>t.check(ar(...n)),t.nonempty=n=>t.check(ar(1,n)),t.max=(...n)=>t.check(ii(...n)),t.size=(...n)=>t.check(Wi(...n))});function qR(t,e){return new ov({type:"set",valueType:t,...A.normalizeParams(e)})}var cs=h("ZodEnum",(t,e)=>{xd.init(t,e),le.init(t,e),t._zod.processJSONSchema=(i,r,o)=>r_(t,i,r,o),t.enum=e.entries,t.options=Object.values(e.entries);let n=new Set(Object.keys(e.entries));t.extract=(i,r)=>{let o={};for(let a of i)if(n.has(a))o[a]=e.entries[a];else throw new Error(`Key ${a} not found in enum`);return new cs({...e,checks:[],...A.normalizeParams(r),entries:o})},t.exclude=(i,r)=>{let o={...e.entries};for(let a of i)if(n.has(a))delete o[a];else throw new Error(`Key ${a} not found in enum`);return new cs({...e,checks:[],...A.normalizeParams(r),entries:o})}});function kt(t,e){let n=Array.isArray(t)?Object.fromEntries(t.map(i=>[i,i])):t;return new cs({type:"enum",entries:n,...A.normalizeParams(e)})}function HR(t,e){return new cs({type:"enum",entries:t,...A.normalizeParams(e)})}var sv=h("ZodLiteral",(t,e)=>{Od.init(t,e),le.init(t,e),t._zod.processJSONSchema=(n,i,r)=>i_(t,n,i,r),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 W(t,e){return new sv({type:"literal",values:Array.isArray(t)?t:[t],...A.normalizeParams(e)})}var av=h("ZodFile",(t,e)=>{Ad.init(t,e),le.init(t,e),t._zod.processJSONSchema=(n,i,r)=>a_(t,n,i,r),t.min=(n,i)=>t.check(ar(n,i)),t.max=(n,i)=>t.check(ii(n,i)),t.mime=(n,i)=>t.check(es(Array.isArray(n)?n:[n],i))});function GR(t){return Sm(av,t)}var cv=h("ZodTransform",(t,e)=>{$d.init(t,e),le.init(t,e),t._zod.processJSONSchema=(n,i,r)=>d_(t,n,i,r),t._zod.parse=(n,i)=>{if(i.direction==="backward")throw new Wr(t.constructor.name);n.addIssue=o=>{if(typeof o=="string")n.issues.push(A.issue(o,n.value,e));else{let a=o;a.fatal&&(a.continue=!1),a.code??(a.code="custom"),a.input??(a.input=n.value),a.inst??(a.inst=t),n.issues.push(A.issue(a))}};let r=e.transform(n.value,n);return r instanceof Promise?r.then(o=>(n.value=o,n.fallback=!0,n)):(n.value=r,n.fallback=!0,n)}});function sp(t){return new cv({type:"transform",transform:t})}var gs=h("ZodOptional",(t,e)=>{tc.init(t,e),le.init(t,e),t._zod.processJSONSchema=(n,i,r)=>Cm(t,n,i,r),t.unwrap=()=>t._zod.def.innerType});function He(t){return new gs({type:"optional",innerType:t})}var lv=h("ZodExactOptional",(t,e)=>{Cd.init(t,e),le.init(t,e),t._zod.processJSONSchema=(n,i,r)=>Cm(t,n,i,r),t.unwrap=()=>t._zod.def.innerType});function uv(t){return new lv({type:"optional",innerType:t})}var dv=h("ZodNullable",(t,e)=>{Nd.init(t,e),le.init(t,e),t._zod.processJSONSchema=(n,i,r)=>v_(t,n,i,r),t.unwrap=()=>t._zod.def.innerType});function Tc(t){return new dv({type:"nullable",innerType:t})}function ZR(t){return He(Tc(t))}var mv=h("ZodDefault",(t,e)=>{Pd.init(t,e),le.init(t,e),t._zod.processJSONSchema=(n,i,r)=>k_(t,n,i,r),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});function pv(t,e){return new mv({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():A.shallowClone(e)}})}var fv=h("ZodPrefault",(t,e)=>{zd.init(t,e),le.init(t,e),t._zod.processJSONSchema=(n,i,r)=>w_(t,n,i,r),t.unwrap=()=>t._zod.def.innerType});function gv(t,e){return new fv({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():A.shallowClone(e)}})}var ap=h("ZodNonOptional",(t,e)=>{Dd.init(t,e),le.init(t,e),t._zod.processJSONSchema=(n,i,r)=>y_(t,n,i,r),t.unwrap=()=>t._zod.def.innerType});function hv(t,e){return new ap({type:"nonoptional",innerType:t,...A.normalizeParams(e)})}var bv=h("ZodSuccess",(t,e)=>{Ld.init(t,e),le.init(t,e),t._zod.processJSONSchema=(n,i,r)=>c_(t,n,i,r),t.unwrap=()=>t._zod.def.innerType});function WR(t){return new bv({type:"success",innerType:t})}var _v=h("ZodCatch",(t,e)=>{Ud.init(t,e),le.init(t,e),t._zod.processJSONSchema=(n,i,r)=>S_(t,n,i,r),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});function vv(t,e){return new _v({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}var yv=h("ZodNaN",(t,e)=>{Md.init(t,e),le.init(t,e),t._zod.processJSONSchema=(n,i,r)=>o_(t,n,i,r)});function JR(t){return bm(yv,t)}var Pc=h("ZodPipe",(t,e)=>{nc.init(t,e),le.init(t,e),t._zod.processJSONSchema=(n,i,r)=>I_(t,n,i,r),t.in=e.in,t.out=e.out});function jm(t,e){return new Pc({type:"pipe",in:t,out:e})}var zc=h("ZodCodec",(t,e)=>{Pc.init(t,e),Fo.init(t,e)});function YR(t,e,n){return new zc({type:"pipe",in:t,out:e,transform:n.decode,reverseTransform:n.encode})}function XR(t){let e=t._zod.def;return new zc({type:"pipe",in:e.out,out:e.in,transform:e.reverseTransform,reverseTransform:e.transform})}var kv=h("ZodPreprocess",(t,e)=>{Pc.init(t,e),Ab.init(t,e)}),wv=h("ZodReadonly",(t,e)=>{jd.init(t,e),le.init(t,e),t._zod.processJSONSchema=(n,i,r)=>E_(t,n,i,r),t.unwrap=()=>t._zod.def.innerType});function Sv(t){return new wv({type:"readonly",innerType:t})}var Iv=h("ZodTemplateLiteral",(t,e)=>{Bd.init(t,e),le.init(t,e),t._zod.processJSONSchema=(n,i,r)=>s_(t,n,i,r)});function QR(t,e){return new Iv({type:"template_literal",parts:t,...A.normalizeParams(e)})}var Ev=h("ZodLazy",(t,e)=>{Vd.init(t,e),le.init(t,e),t._zod.processJSONSchema=(n,i,r)=>R_(t,n,i,r),t.unwrap=()=>t._zod.def.getter()});function Tv(t){return new Ev({type:"lazy",getter:t})}var Rv=h("ZodPromise",(t,e)=>{Fd.init(t,e),le.init(t,e),t._zod.processJSONSchema=(n,i,r)=>T_(t,n,i,r),t.unwrap=()=>t._zod.def.innerType});function ex(t){return new Rv({type:"promise",innerType:t})}var xv=h("ZodFunction",(t,e)=>{Kd.init(t,e),le.init(t,e),t._zod.processJSONSchema=(n,i,r)=>u_(t,n,i,r)});function tx(t){return new xv({type:"function",input:Array.isArray(t?.input)?rv(t?.input):t?.input??ge(Fe()),output:t?.output??Fe()})}var Dc=h("ZodCustom",(t,e)=>{qd.init(t,e),le.init(t,e),t._zod.processJSONSchema=(n,i,r)=>l_(t,n,i,r)});function nx(t){let e=new Be({check:"custom"});return e._zod.check=t,e}function cp(t,e){return Im(Dc,t??(()=>!0),e)}function Ov(t,e={}){return Em(Dc,t,e)}function Av(t,e){return Tm(t,e)}var rx=Rm,ix=xm;function ox(t,e={}){let n=new Dc({type:"custom",check:"custom",fn:i=>i instanceof t,abort:!0,...A.normalizeParams(e)});return n._zod.bag.Class=t,n._zod.check=i=>{i.value instanceof t||i.issues.push({code:"invalid_type",expected:t.name,input:i.value,inst:n,path:[...n._zod.def.path??[]]})},n}var sx=(...t)=>Om({Codec:zc,Boolean:ms,String:ls},...t);function ax(t){let e=Tv(()=>Ve([k(t),Ne(),st(),Oc(),ge(e),je(k(),e)]));return e}function Lc(t,e){return new kv({type:"pipe",in:sp(t),out:e})}var JM={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 YM(t){rt({customError:t})}function XM(){return rt().customError}var $v;$v||($v={});var B={...Ic,...Pm,iso:ci},QM=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 ej(t,e){let n=t.$schema;return n==="https://json-schema.org/draft/2020-12/schema"?"draft-2020-12":n==="http://json-schema.org/draft-07/schema#"?"draft-7":n==="http://json-schema.org/draft-04/schema#"?"draft-4":e??"draft-2020-12"}function tj(t,e){if(!t.startsWith("#"))throw new Error("External $ref is not supported, only local refs (#/...) are allowed");let n=t.slice(1).split("/").filter(Boolean);if(n.length===0)return e.rootSchema;let i=e.version==="draft-2020-12"?"$defs":"definitions";if(n[0]===i){let r=n[1];if(!r||!e.defs[r])throw new Error(`Reference not found: ${t}`);return e.defs[r]}throw new Error(`Reference not found: ${t}`)}function cx(t,e){if(t.not!==void 0){if(typeof t.not=="object"&&Object.keys(t.not).length===0)return B.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 r=t.$ref;if(e.refs.has(r))return e.refs.get(r);if(e.processing.has(r))return B.lazy(()=>{if(!e.refs.has(r))throw new Error(`Circular reference not resolved: ${r}`);return e.refs.get(r)});e.processing.add(r);let o=tj(r,e),a=At(o,e);return e.refs.set(r,a),e.processing.delete(r),a}if(t.enum!==void 0){let r=t.enum;if(e.version==="openapi-3.0"&&t.nullable===!0&&r.length===1&&r[0]===null)return B.null();if(r.length===0)return B.never();if(r.length===1)return B.literal(r[0]);if(r.every(a=>typeof a=="string"))return B.enum(r);let o=r.map(a=>B.literal(a));return o.length<2?o[0]:B.union([o[0],o[1],...o.slice(2)])}if(t.const!==void 0)return B.literal(t.const);let n=t.type;if(Array.isArray(n)){let r=n.map(o=>{let a={...t,type:o};return cx(a,e)});return r.length===0?B.never():r.length===1?r[0]:B.union(r)}if(!n)return B.any();let i;switch(n){case"string":{let r=B.string();if(t.format){let o=t.format;o==="email"?r=r.check(B.email()):o==="uri"||o==="uri-reference"?r=r.check(B.url()):o==="uuid"||o==="guid"?r=r.check(B.uuid()):o==="date-time"?r=r.check(B.iso.datetime()):o==="date"?r=r.check(B.iso.date()):o==="time"?r=r.check(B.iso.time()):o==="duration"?r=r.check(B.iso.duration()):o==="ipv4"?r=r.check(B.ipv4()):o==="ipv6"?r=r.check(B.ipv6()):o==="mac"?r=r.check(B.mac()):o==="cidr"?r=r.check(B.cidrv4()):o==="cidr-v6"?r=r.check(B.cidrv6()):o==="base64"?r=r.check(B.base64()):o==="base64url"?r=r.check(B.base64url()):o==="e164"?r=r.check(B.e164()):o==="jwt"?r=r.check(B.jwt()):o==="emoji"?r=r.check(B.emoji()):o==="nanoid"?r=r.check(B.nanoid()):o==="cuid"?r=r.check(B.cuid()):o==="cuid2"?r=r.check(B.cuid2()):o==="ulid"?r=r.check(B.ulid()):o==="xid"?r=r.check(B.xid()):o==="ksuid"&&(r=r.check(B.ksuid()))}typeof t.minLength=="number"&&(r=r.min(t.minLength)),typeof t.maxLength=="number"&&(r=r.max(t.maxLength)),t.pattern&&(r=r.regex(new RegExp(t.pattern))),i=r;break}case"number":case"integer":{let r=n==="integer"?B.number().int():B.number();typeof t.minimum=="number"&&(r=r.min(t.minimum)),typeof t.maximum=="number"&&(r=r.max(t.maximum)),typeof t.exclusiveMinimum=="number"?r=r.gt(t.exclusiveMinimum):t.exclusiveMinimum===!0&&typeof t.minimum=="number"&&(r=r.gt(t.minimum)),typeof t.exclusiveMaximum=="number"?r=r.lt(t.exclusiveMaximum):t.exclusiveMaximum===!0&&typeof t.maximum=="number"&&(r=r.lt(t.maximum)),typeof t.multipleOf=="number"&&(r=r.multipleOf(t.multipleOf)),i=r;break}case"boolean":{i=B.boolean();break}case"null":{i=B.null();break}case"object":{let r={},o=t.properties||{},a=new Set(t.required||[]);for(let[l,u]of Object.entries(o)){let d=At(u,e);r[l]=a.has(l)?d:d.optional()}if(t.propertyNames){let l=At(t.propertyNames,e),u=t.additionalProperties&&typeof t.additionalProperties=="object"?At(t.additionalProperties,e):B.any();if(Object.keys(r).length===0){i=B.record(l,u);break}let d=B.object(r).passthrough(),m=B.looseRecord(l,u);i=B.intersection(d,m);break}if(t.patternProperties){let l=t.patternProperties,u=Object.keys(l),d=[];for(let f of u){let p=At(l[f],e),g=B.string().regex(new RegExp(f));d.push(B.looseRecord(g,p))}let m=[];if(Object.keys(r).length>0&&m.push(B.object(r).passthrough()),m.push(...d),m.length===0)i=B.object({}).passthrough();else if(m.length===1)i=m[0];else{let f=B.intersection(m[0],m[1]);for(let p=2;p<m.length;p++)f=B.intersection(f,m[p]);i=f}break}let c=B.object(r);t.additionalProperties===!1?i=c.strict():typeof t.additionalProperties=="object"?i=c.catchall(At(t.additionalProperties,e)):i=c.passthrough();break}case"array":{let r=t.prefixItems,o=t.items;if(r&&Array.isArray(r)){let a=r.map(l=>At(l,e)),c=o&&typeof o=="object"&&!Array.isArray(o)?At(o,e):void 0;c?i=B.tuple(a).rest(c):i=B.tuple(a),typeof t.minItems=="number"&&(i=i.check(B.minLength(t.minItems))),typeof t.maxItems=="number"&&(i=i.check(B.maxLength(t.maxItems)))}else if(Array.isArray(o)){let a=o.map(l=>At(l,e)),c=t.additionalItems&&typeof t.additionalItems=="object"?At(t.additionalItems,e):void 0;c?i=B.tuple(a).rest(c):i=B.tuple(a),typeof t.minItems=="number"&&(i=i.check(B.minLength(t.minItems))),typeof t.maxItems=="number"&&(i=i.check(B.maxLength(t.maxItems)))}else if(o!==void 0){let a=At(o,e),c=B.array(a);typeof t.minItems=="number"&&(c=c.min(t.minItems)),typeof t.maxItems=="number"&&(c=c.max(t.maxItems)),i=c}else i=B.array(B.any());break}default:throw new Error(`Unsupported type: ${n}`)}return i}function At(t,e){if(typeof t=="boolean")return t?B.any():B.never();let n=cx(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(u=>At(u,e)),l=B.union(c);n=i?B.intersection(n,l):l}if(t.oneOf&&Array.isArray(t.oneOf)){let c=t.oneOf.map(u=>At(u,e)),l=B.xor(c);n=i?B.intersection(n,l):l}if(t.allOf&&Array.isArray(t.allOf))if(t.allOf.length===0)n=i?n:B.any();else{let c=i?n:At(t.allOf[0],e),l=i?0:1;for(let u=l;u<t.allOf.length;u++)c=B.intersection(c,At(t.allOf[u],e));n=c}t.nullable===!0&&e.version==="openapi-3.0"&&(n=B.nullable(n)),t.readOnly===!0&&(n=B.readonly(n)),t.default!==void 0&&(n=n.default(t.default));let r={},o=["$id","id","$comment","$anchor","$vocabulary","$dynamicRef","$dynamicAnchor"];for(let c of o)c in t&&(r[c]=t[c]);let a=["contentEncoding","contentMediaType","contentSchema"];for(let c of a)c in t&&(r[c]=t[c]);for(let c of Object.keys(t))QM.has(c)||(r[c]=t[c]);return Object.keys(r).length>0&&e.registry.add(n,r),t.description&&(n=n.describe(t.description)),n}function lx(t,e){if(typeof t=="boolean")return t?B.any():B.never();let n;try{n=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=ej(n,e?.defaultTarget),r=n.$defs||n.definitions||{},o={version:i,defs:r,refs:new Map,processing:new Set,rootSchema:n,registry:e?.registry??vt};return At(n,o)}var Cv={};Er(Cv,{bigint:()=>oj,boolean:()=>ij,date:()=>sj,number:()=>rj,string:()=>nj});function nj(t){return Nb(ls,t)}function rj(t){return Mb(ds,t)}function ij(t){return jb(ms,t)}function oj(t){return Bb(ps,t)}function sj(t){return Kb(Ac,t)}rt(Hd());var Pv="2025-11-25";var ux=[Pv,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],li="io.modelcontextprotocol/related-task",up="2.0",ft=cp(t=>t!==null&&(typeof t=="object"||typeof t=="function")),dx=Ve([k(),Ne().int()]),mx=k(),HQ=yt({ttl:Ne().optional(),pollInterval:Ne().optional()}),aj=q({ttl:Ne().optional()}),cj=q({taskId:k()}),zv=yt({progressToken:dx.optional(),[li]:cj.optional()}),dn=q({_meta:zv.optional()}),Uc=dn.extend({task:aj.optional()}),px=t=>Uc.safeParse(t).success,wt=q({method:k(),params:dn.loose().optional()}),Sn=q({_meta:zv.optional()}),In=q({method:k(),params:Sn.loose().optional()}),St=yt({_meta:zv.optional()}),dp=Ve([k(),Ne().int()]),fx=q({jsonrpc:W(up),id:dp,...wt.shape}).strict(),Dv=t=>fx.safeParse(t).success,gx=q({jsonrpc:W(up),...In.shape}).strict(),hx=t=>gx.safeParse(t).success,Lv=q({jsonrpc:W(up),id:dp,result:St}).strict(),Mc=t=>Lv.safeParse(t).success;var Q;(function(t){t[t.ConnectionClosed=-32e3]="ConnectionClosed",t[t.RequestTimeout=-32001]="RequestTimeout",t[t.ParseError=-32700]="ParseError",t[t.InvalidRequest=-32600]="InvalidRequest",t[t.MethodNotFound=-32601]="MethodNotFound",t[t.InvalidParams=-32602]="InvalidParams",t[t.InternalError=-32603]="InternalError",t[t.UrlElicitationRequired=-32042]="UrlElicitationRequired"})(Q||(Q={}));var Uv=q({jsonrpc:W(up),id:dp.optional(),error:q({code:Ne().int(),message:k(),data:Fe().optional()})}).strict();var bx=t=>Uv.safeParse(t).success;var _x=Ve([fx,gx,Lv,Uv]),GQ=Ve([Lv,Uv]),mp=St.strict(),lj=Sn.extend({requestId:dp.optional(),reason:k().optional()}),pp=In.extend({method:W("notifications/cancelled"),params:lj}),uj=q({src:k(),mimeType:k().optional(),sizes:ge(k()).optional(),theme:kt(["light","dark"]).optional()}),jc=q({icons:ge(uj).optional()}),hs=q({name:k(),title:k().optional()}),vx=hs.extend({...hs.shape,...jc.shape,version:k(),websiteUrl:k().optional(),description:k().optional()}),dj=fs(q({applyDefaults:st().optional()}),je(k(),Fe())),mj=Lc(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,fs(q({form:dj.optional(),url:ft.optional()}),je(k(),Fe()).optional())),pj=yt({list:ft.optional(),cancel:ft.optional(),requests:yt({sampling:yt({createMessage:ft.optional()}).optional(),elicitation:yt({create:ft.optional()}).optional()}).optional()}),fj=yt({list:ft.optional(),cancel:ft.optional(),requests:yt({tools:yt({call:ft.optional()}).optional()}).optional()}),gj=q({experimental:je(k(),ft).optional(),sampling:q({context:ft.optional(),tools:ft.optional()}).optional(),elicitation:mj.optional(),roots:q({listChanged:st().optional()}).optional(),tasks:pj.optional(),extensions:je(k(),ft).optional()}),hj=dn.extend({protocolVersion:k(),capabilities:gj,clientInfo:vx}),Mv=wt.extend({method:W("initialize"),params:hj});var bj=q({experimental:je(k(),ft).optional(),logging:ft.optional(),completions:ft.optional(),prompts:q({listChanged:st().optional()}).optional(),resources:q({subscribe:st().optional(),listChanged:st().optional()}).optional(),tools:q({listChanged:st().optional()}).optional(),tasks:fj.optional(),extensions:je(k(),ft).optional()}),_j=St.extend({protocolVersion:k(),capabilities:bj,serverInfo:vx,instructions:k().optional()}),jv=In.extend({method:W("notifications/initialized"),params:Sn.optional()});var fp=wt.extend({method:W("ping"),params:dn.optional()}),vj=q({progress:Ne(),total:He(Ne()),message:He(k())}),yj=q({...Sn.shape,...vj.shape,progressToken:dx}),gp=In.extend({method:W("notifications/progress"),params:yj}),kj=dn.extend({cursor:mx.optional()}),Bc=wt.extend({params:kj.optional()}),Kc=St.extend({nextCursor:mx.optional()}),wj=kt(["working","input_required","completed","failed","cancelled"]),Fc=q({taskId:k(),status:wj,ttl:Ve([Ne(),Oc()]),createdAt:k(),lastUpdatedAt:k(),pollInterval:He(Ne()),statusMessage:He(k())}),bs=St.extend({task:Fc}),Sj=Sn.merge(Fc),Vc=In.extend({method:W("notifications/tasks/status"),params:Sj}),hp=wt.extend({method:W("tasks/get"),params:dn.extend({taskId:k()})}),bp=St.merge(Fc),_p=wt.extend({method:W("tasks/result"),params:dn.extend({taskId:k()})}),ZQ=St.loose(),vp=Bc.extend({method:W("tasks/list")}),yp=Kc.extend({tasks:ge(Fc)}),kp=wt.extend({method:W("tasks/cancel"),params:dn.extend({taskId:k()})}),yx=St.merge(Fc),kx=q({uri:k(),mimeType:He(k()),_meta:je(k(),Fe()).optional()}),wx=kx.extend({text:k()}),Bv=k().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),Sx=kx.extend({blob:Bv}),qc=kt(["user","assistant"]),_s=q({audience:ge(qc).optional(),priority:Ne().min(0).max(1).optional(),lastModified:ci.datetime({offset:!0}).optional()}),Ix=q({...hs.shape,...jc.shape,uri:k(),description:He(k()),mimeType:He(k()),size:He(Ne()),annotations:_s.optional(),_meta:He(yt({}))}),Ij=q({...hs.shape,...jc.shape,uriTemplate:k(),description:He(k()),mimeType:He(k()),annotations:_s.optional(),_meta:He(yt({}))}),wp=Bc.extend({method:W("resources/list")}),Ej=Kc.extend({resources:ge(Ix)}),Sp=Bc.extend({method:W("resources/templates/list")}),Tj=Kc.extend({resourceTemplates:ge(Ij)}),Kv=dn.extend({uri:k()}),Rj=Kv,Ip=wt.extend({method:W("resources/read"),params:Rj}),xj=St.extend({contents:ge(Ve([wx,Sx]))}),Oj=In.extend({method:W("notifications/resources/list_changed"),params:Sn.optional()}),Aj=Kv,$j=wt.extend({method:W("resources/subscribe"),params:Aj}),Cj=Kv,Nj=wt.extend({method:W("resources/unsubscribe"),params:Cj}),Pj=Sn.extend({uri:k()}),zj=In.extend({method:W("notifications/resources/updated"),params:Pj}),Dj=q({name:k(),description:He(k()),required:He(st())}),Lj=q({...hs.shape,...jc.shape,description:He(k()),arguments:He(ge(Dj)),_meta:He(yt({}))}),Ep=Bc.extend({method:W("prompts/list")}),Uj=Kc.extend({prompts:ge(Lj)}),Mj=dn.extend({name:k(),arguments:je(k(),k()).optional()}),Tp=wt.extend({method:W("prompts/get"),params:Mj}),Fv=q({type:W("text"),text:k(),annotations:_s.optional(),_meta:je(k(),Fe()).optional()}),Vv=q({type:W("image"),data:Bv,mimeType:k(),annotations:_s.optional(),_meta:je(k(),Fe()).optional()}),qv=q({type:W("audio"),data:Bv,mimeType:k(),annotations:_s.optional(),_meta:je(k(),Fe()).optional()}),jj=q({type:W("tool_use"),name:k(),id:k(),input:je(k(),Fe()),_meta:je(k(),Fe()).optional()}),Bj=q({type:W("resource"),resource:Ve([wx,Sx]),annotations:_s.optional(),_meta:je(k(),Fe()).optional()}),Kj=Ix.extend({type:W("resource_link")}),Hv=Ve([Fv,Vv,qv,Kj,Bj]),Fj=q({role:qc,content:Hv}),Vj=St.extend({description:k().optional(),messages:ge(Fj)}),qj=In.extend({method:W("notifications/prompts/list_changed"),params:Sn.optional()}),Hj=q({title:k().optional(),readOnlyHint:st().optional(),destructiveHint:st().optional(),idempotentHint:st().optional(),openWorldHint:st().optional()}),Gj=q({taskSupport:kt(["required","optional","forbidden"]).optional()}),Ex=q({...hs.shape,...jc.shape,description:k().optional(),inputSchema:q({type:W("object"),properties:je(k(),ft).optional(),required:ge(k()).optional()}).catchall(Fe()),outputSchema:q({type:W("object"),properties:je(k(),ft).optional(),required:ge(k()).optional()}).catchall(Fe()).optional(),annotations:Hj.optional(),execution:Gj.optional(),_meta:je(k(),Fe()).optional()}),Rp=Bc.extend({method:W("tools/list")}),Zj=Kc.extend({tools:ge(Ex)}),xp=St.extend({content:ge(Hv).default([]),structuredContent:je(k(),Fe()).optional(),isError:st().optional()}),WQ=xp.or(St.extend({toolResult:Fe()})),Wj=Uc.extend({name:k(),arguments:je(k(),Fe()).optional()}),vs=wt.extend({method:W("tools/call"),params:Wj}),Jj=In.extend({method:W("notifications/tools/list_changed"),params:Sn.optional()}),JQ=q({autoRefresh:st().default(!0),debounceMs:Ne().int().nonnegative().default(300)}),Hc=kt(["debug","info","notice","warning","error","critical","alert","emergency"]),Yj=dn.extend({level:Hc}),Gv=wt.extend({method:W("logging/setLevel"),params:Yj}),Xj=Sn.extend({level:Hc,logger:k().optional(),data:Fe()}),Qj=In.extend({method:W("notifications/message"),params:Xj}),e1=q({name:k().optional()}),t1=q({hints:ge(e1).optional(),costPriority:Ne().min(0).max(1).optional(),speedPriority:Ne().min(0).max(1).optional(),intelligencePriority:Ne().min(0).max(1).optional()}),n1=q({mode:kt(["auto","required","none"]).optional()}),r1=q({type:W("tool_result"),toolUseId:k().describe("The unique identifier for the corresponding tool call."),content:ge(Hv).default([]),structuredContent:q({}).loose().optional(),isError:st().optional(),_meta:je(k(),Fe()).optional()}),i1=Nc("type",[Fv,Vv,qv]),lp=Nc("type",[Fv,Vv,qv,jj,r1]),o1=q({role:qc,content:Ve([lp,ge(lp)]),_meta:je(k(),Fe()).optional()}),s1=Uc.extend({messages:ge(o1),modelPreferences:t1.optional(),systemPrompt:k().optional(),includeContext:kt(["none","thisServer","allServers"]).optional(),temperature:Ne().optional(),maxTokens:Ne().int(),stopSequences:ge(k()).optional(),metadata:ft.optional(),tools:ge(Ex).optional(),toolChoice:n1.optional()}),a1=wt.extend({method:W("sampling/createMessage"),params:s1}),Gc=St.extend({model:k(),stopReason:He(kt(["endTurn","stopSequence","maxTokens"]).or(k())),role:qc,content:i1}),Zv=St.extend({model:k(),stopReason:He(kt(["endTurn","stopSequence","maxTokens","toolUse"]).or(k())),role:qc,content:Ve([lp,ge(lp)])}),c1=q({type:W("boolean"),title:k().optional(),description:k().optional(),default:st().optional()}),l1=q({type:W("string"),title:k().optional(),description:k().optional(),minLength:Ne().optional(),maxLength:Ne().optional(),format:kt(["email","uri","date","date-time"]).optional(),default:k().optional()}),u1=q({type:kt(["number","integer"]),title:k().optional(),description:k().optional(),minimum:Ne().optional(),maximum:Ne().optional(),default:Ne().optional()}),d1=q({type:W("string"),title:k().optional(),description:k().optional(),enum:ge(k()),default:k().optional()}),m1=q({type:W("string"),title:k().optional(),description:k().optional(),oneOf:ge(q({const:k(),title:k()})),default:k().optional()}),p1=q({type:W("string"),title:k().optional(),description:k().optional(),enum:ge(k()),enumNames:ge(k()).optional(),default:k().optional()}),f1=Ve([d1,m1]),g1=q({type:W("array"),title:k().optional(),description:k().optional(),minItems:Ne().optional(),maxItems:Ne().optional(),items:q({type:W("string"),enum:ge(k())}),default:ge(k()).optional()}),h1=q({type:W("array"),title:k().optional(),description:k().optional(),minItems:Ne().optional(),maxItems:Ne().optional(),items:q({anyOf:ge(q({const:k(),title:k()}))}),default:ge(k()).optional()}),b1=Ve([g1,h1]),_1=Ve([p1,f1,b1]),v1=Ve([_1,c1,l1,u1]),y1=Uc.extend({mode:W("form").optional(),message:k(),requestedSchema:q({type:W("object"),properties:je(k(),v1),required:ge(k()).optional()})}),k1=Uc.extend({mode:W("url"),message:k(),elicitationId:k(),url:k().url()}),w1=Ve([y1,k1]),S1=wt.extend({method:W("elicitation/create"),params:w1}),I1=Sn.extend({elicitationId:k()}),E1=In.extend({method:W("notifications/elicitation/complete"),params:I1}),ys=St.extend({action:kt(["accept","decline","cancel"]),content:Lc(t=>t===null?void 0:t,je(k(),Ve([k(),Ne(),st(),ge(k())])).optional())}),T1=q({type:W("ref/resource"),uri:k()});var R1=q({type:W("ref/prompt"),name:k()}),x1=dn.extend({ref:Ve([R1,T1]),argument:q({name:k(),value:k()}),context:q({arguments:je(k(),k()).optional()}).optional()}),Op=wt.extend({method:W("completion/complete"),params:x1});function Tx(t){if(t.params.ref.type!=="ref/prompt")throw new TypeError(`Expected CompleteRequestPrompt, but got ${t.params.ref.type}`)}function Rx(t){if(t.params.ref.type!=="ref/resource")throw new TypeError(`Expected CompleteRequestResourceTemplate, but got ${t.params.ref.type}`)}var O1=St.extend({completion:yt({values:ge(k()).max(100),total:He(Ne().int()),hasMore:He(st())})}),A1=q({uri:k().startsWith("file://"),name:k().optional(),_meta:je(k(),Fe()).optional()}),$1=wt.extend({method:W("roots/list"),params:dn.optional()}),Wv=St.extend({roots:ge(A1)}),C1=In.extend({method:W("notifications/roots/list_changed"),params:Sn.optional()}),YQ=Ve([fp,Mv,Op,Gv,Tp,Ep,wp,Sp,Ip,$j,Nj,vs,Rp,hp,_p,vp,kp]),XQ=Ve([pp,gp,jv,C1,Vc]),QQ=Ve([mp,Gc,Zv,ys,Wv,bp,yp,bs]),e7=Ve([fp,a1,S1,$1,hp,_p,vp,kp]),t7=Ve([pp,gp,Qj,zj,Oj,Jj,qj,Vc,E1]),n7=Ve([mp,_j,O1,Vj,Uj,Ej,Tj,xj,xp,Zj,bp,yp,bs]),J=class t extends Error{constructor(e,n,i){super(`MCP error ${e}: ${n}`),this.code=e,this.data=i,this.name="McpError"}static fromError(e,n,i){if(e===Q.UrlElicitationRequired&&i){let r=i;if(r.elicitations)return new Nv(r.elicitations,n)}return new t(e,n,i)}},Nv=class extends J{constructor(e,n=`URL elicitation${e.length>1?"s":""} required`){super(Q.UrlElicitationRequired,n,{elicitations:e})}get elicitations(){return this.data?.elicitations??[]}};var N1=10*1024*1024,Ap=class{constructor(e){this._maxBufferSize=e?.maxBufferSize??N1}append(e){if((this._buffer?.length??0)+e.length>this._maxBufferSize)throw this.clear(),new Error(`ReadBuffer exceeded maximum size of ${this._maxBufferSize} bytes`);this._buffer=this._buffer?Buffer.concat([this._buffer,e]):e}readMessage(){if(!this._buffer)return null;let e=this._buffer.indexOf(`
|
|
100
|
-
`);if(e===-1)return null;let n=this._buffer.toString("utf8",0,e).replace(/\r$/,"");return this._buffer=this._buffer.subarray(e+1),P1(n)}clear(){this._buffer=void 0}};function P1(t){return _x.parse(JSON.parse(t))}function xx(t){return JSON.stringify(t)+`
|
|
101
|
-
`}var $p=class{constructor(e=Ox.stdin,n=Ox.stdout,i){this._stdin=e,this._stdout=n,this._started=!1,this._ondata=r=>{try{this._readBuffer.append(r),this.processReadBuffer()}catch(o){this.onerror?.(o),this.close().catch(()=>{})}},this._onerror=r=>{this.onerror?.(r)},this._readBuffer=new Ap({maxBufferSize:i?.maxBufferSize})}async start(){if(this._started)throw new Error("StdioServerTransport already started! If using Server class, note that connect() calls start() automatically.");this._started=!0,this._stdin.on("data",this._ondata),this._stdin.on("error",this._onerror)}processReadBuffer(){for(;;)try{let e=this._readBuffer.readMessage();if(e===null)break;this.onmessage?.(e)}catch(e){this.onerror?.(e)}}async close(){this._stdin.off("data",this._ondata),this._stdin.off("error",this._onerror),this._stdin.listenerCount("data")===0&&this._stdin.pause(),this._readBuffer.clear(),this.onclose?.()}send(e){return new Promise(n=>{let i=xx(e);this._stdout.write(i)?n():this._stdout.once("drain",n)})}};var Se;(function(t){t.assertEqual=r=>{};function e(r){}t.assertIs=e;function n(r){throw new Error}t.assertNever=n,t.arrayToEnum=r=>{let o={};for(let a of r)o[a]=a;return o},t.getValidEnumValues=r=>{let o=t.objectKeys(r).filter(c=>typeof r[r[c]]!="number"),a={};for(let c of o)a[c]=r[c];return t.objectValues(a)},t.objectValues=r=>t.objectKeys(r).map(function(o){return r[o]}),t.objectKeys=typeof Object.keys=="function"?r=>Object.keys(r):r=>{let o=[];for(let a in r)Object.prototype.hasOwnProperty.call(r,a)&&o.push(a);return o},t.find=(r,o)=>{for(let a of r)if(o(a))return a},t.isInteger=typeof Number.isInteger=="function"?r=>Number.isInteger(r):r=>typeof r=="number"&&Number.isFinite(r)&&Math.floor(r)===r;function i(r,o=" | "){return r.map(a=>typeof a=="string"?`'${a}'`:a).join(o)}t.joinValues=i,t.jsonStringifyReplacer=(r,o)=>typeof o=="bigint"?o.toString():o})(Se||(Se={}));var Ax;(function(t){t.mergeShapes=(e,n)=>({...e,...n})})(Ax||(Ax={}));var H=Se.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),xr=t=>{switch(typeof t){case"undefined":return H.undefined;case"string":return H.string;case"number":return Number.isNaN(t)?H.nan:H.number;case"boolean":return H.boolean;case"function":return H.function;case"bigint":return H.bigint;case"symbol":return H.symbol;case"object":return Array.isArray(t)?H.array:t===null?H.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?H.promise:typeof Map<"u"&&t instanceof Map?H.map:typeof Set<"u"&&t instanceof Set?H.set:typeof Date<"u"&&t instanceof Date?H.date:H.object;default:return H.unknown}};var C=Se.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]);var mn=class t extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=i=>{this.issues=[...this.issues,i]},this.addIssues=(i=[])=>{this.issues=[...this.issues,...i]};let n=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,n):this.__proto__=n,this.name="ZodError",this.issues=e}format(e){let n=e||function(o){return o.message},i={_errors:[]},r=o=>{for(let a of o.issues)if(a.code==="invalid_union")a.unionErrors.map(r);else if(a.code==="invalid_return_type")r(a.returnTypeError);else if(a.code==="invalid_arguments")r(a.argumentsError);else if(a.path.length===0)i._errors.push(n(a));else{let c=i,l=0;for(;l<a.path.length;){let u=a.path[l];l===a.path.length-1?(c[u]=c[u]||{_errors:[]},c[u]._errors.push(n(a))):c[u]=c[u]||{_errors:[]},c=c[u],l++}}};return r(this),i}static assert(e){if(!(e instanceof t))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,Se.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=n=>n.message){let n=Object.create(null),i=[];for(let r of this.issues)if(r.path.length>0){let o=r.path[0];n[o]=n[o]||[],n[o].push(e(r))}else i.push(e(r));return{formErrors:i,fieldErrors:n}}get formErrors(){return this.flatten()}};mn.create=t=>new mn(t);var z1=(t,e)=>{let n;switch(t.code){case C.invalid_type:t.received===H.undefined?n="Required":n=`Expected ${t.expected}, received ${t.received}`;break;case C.invalid_literal:n=`Invalid literal value, expected ${JSON.stringify(t.expected,Se.jsonStringifyReplacer)}`;break;case C.unrecognized_keys:n=`Unrecognized key(s) in object: ${Se.joinValues(t.keys,", ")}`;break;case C.invalid_union:n="Invalid input";break;case C.invalid_union_discriminator:n=`Invalid discriminator value. Expected ${Se.joinValues(t.options)}`;break;case C.invalid_enum_value:n=`Invalid enum value. Expected ${Se.joinValues(t.options)}, received '${t.received}'`;break;case C.invalid_arguments:n="Invalid function arguments";break;case C.invalid_return_type:n="Invalid function return type";break;case C.invalid_date:n="Invalid date";break;case C.invalid_string:typeof t.validation=="object"?"includes"in t.validation?(n=`Invalid input: must include "${t.validation.includes}"`,typeof t.validation.position=="number"&&(n=`${n} at one or more positions greater than or equal to ${t.validation.position}`)):"startsWith"in t.validation?n=`Invalid input: must start with "${t.validation.startsWith}"`:"endsWith"in t.validation?n=`Invalid input: must end with "${t.validation.endsWith}"`:Se.assertNever(t.validation):t.validation!=="regex"?n=`Invalid ${t.validation}`:n="Invalid";break;case C.too_small:t.type==="array"?n=`Array must contain ${t.exact?"exactly":t.inclusive?"at least":"more than"} ${t.minimum} element(s)`:t.type==="string"?n=`String must contain ${t.exact?"exactly":t.inclusive?"at least":"over"} ${t.minimum} character(s)`:t.type==="number"?n=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="bigint"?n=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="date"?n=`Date must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(t.minimum))}`:n="Invalid input";break;case C.too_big:t.type==="array"?n=`Array must contain ${t.exact?"exactly":t.inclusive?"at most":"less than"} ${t.maximum} element(s)`:t.type==="string"?n=`String must contain ${t.exact?"exactly":t.inclusive?"at most":"under"} ${t.maximum} character(s)`:t.type==="number"?n=`Number must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="bigint"?n=`BigInt must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="date"?n=`Date must be ${t.exact?"exactly":t.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(t.maximum))}`:n="Invalid input";break;case C.custom:n="Invalid input";break;case C.invalid_intersection_types:n="Intersection results could not be merged";break;case C.not_multiple_of:n=`Number must be a multiple of ${t.multipleOf}`;break;case C.not_finite:n="Number must be finite";break;default:n=e.defaultError,Se.assertNever(t)}return{message:n}},ui=z1;var D1=ui;function Zc(){return D1}var Cp=t=>{let{data:e,path:n,errorMaps:i,issueData:r}=t,o=[...n,...r.path||[]],a={...r,path:o};if(r.message!==void 0)return{...r,path:o,message:r.message};let c="",l=i.filter(u=>!!u).slice().reverse();for(let u of l)c=u(a,{data:e,defaultError:c}).message;return{...r,path:o,message:c}};function K(t,e){let n=Zc(),i=Cp({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,n,n===ui?void 0:ui].filter(r=>!!r)});t.common.issues.push(i)}var $t=class t{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,n){let i=[];for(let r of n){if(r.status==="aborted")return te;r.status==="dirty"&&e.dirty(),i.push(r.value)}return{status:e.value,value:i}}static async mergeObjectAsync(e,n){let i=[];for(let r of n){let o=await r.key,a=await r.value;i.push({key:o,value:a})}return t.mergeObjectSync(e,i)}static mergeObjectSync(e,n){let i={};for(let r of n){let{key:o,value:a}=r;if(o.status==="aborted"||a.status==="aborted")return te;o.status==="dirty"&&e.dirty(),a.status==="dirty"&&e.dirty(),o.value!=="__proto__"&&(typeof a.value<"u"||r.alwaysSet)&&(i[o.value]=a.value)}return{status:e.value,value:i}}},te=Object.freeze({status:"aborted"}),ks=t=>({status:"dirty",value:t}),Bt=t=>({status:"valid",value:t}),Jv=t=>t.status==="aborted",Yv=t=>t.status==="dirty",to=t=>t.status==="valid",Wc=t=>typeof Promise<"u"&&t instanceof Promise;var Z;(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(Z||(Z={}));var En=class{constructor(e,n,i,r){this._cachedPath=[],this.parent=e,this.data=n,this._path=i,this._key=r}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},$x=(t,e)=>{if(to(e))return{success:!0,data:e.value};if(!t.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let n=new mn(t.common.issues);return this._error=n,this._error}}};function ue(t){if(!t)return{};let{errorMap:e,invalid_type_error:n,required_error:i,description:r}=t;if(e&&(n||i))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:r}:{errorMap:(a,c)=>{let{message:l}=t;return a.code==="invalid_enum_value"?{message:l??c.defaultError}:typeof c.data>"u"?{message:l??i??c.defaultError}:a.code!=="invalid_type"?{message:c.defaultError}:{message:l??n??c.defaultError}},description:r}}var he=class{get description(){return this._def.description}_getType(e){return xr(e.data)}_getOrReturnCtx(e,n){return n||{common:e.parent.common,data:e.data,parsedType:xr(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new $t,ctx:{common:e.parent.common,data:e.data,parsedType:xr(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let n=this._parse(e);if(Wc(n))throw new Error("Synchronous parse encountered promise.");return n}_parseAsync(e){let n=this._parse(e);return Promise.resolve(n)}parse(e,n){let i=this.safeParse(e,n);if(i.success)return i.data;throw i.error}safeParse(e,n){let i={common:{issues:[],async:n?.async??!1,contextualErrorMap:n?.errorMap},path:n?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:xr(e)},r=this._parseSync({data:e,path:i.path,parent:i});return $x(i,r)}"~validate"(e){let n={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:xr(e)};if(!this["~standard"].async)try{let i=this._parseSync({data:e,path:[],parent:n});return to(i)?{value:i.value}:{issues:n.common.issues}}catch(i){i?.message?.toLowerCase()?.includes("encountered")&&(this["~standard"].async=!0),n.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:n}).then(i=>to(i)?{value:i.value}:{issues:n.common.issues})}async parseAsync(e,n){let i=await this.safeParseAsync(e,n);if(i.success)return i.data;throw i.error}async safeParseAsync(e,n){let i={common:{issues:[],contextualErrorMap:n?.errorMap,async:!0},path:n?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:xr(e)},r=this._parse({data:e,path:i.path,parent:i}),o=await(Wc(r)?r:Promise.resolve(r));return $x(i,o)}refine(e,n){let i=r=>typeof n=="string"||typeof n>"u"?{message:n}:typeof n=="function"?n(r):n;return this._refinement((r,o)=>{let a=e(r),c=()=>o.addIssue({code:C.custom,...i(r)});return typeof Promise<"u"&&a instanceof Promise?a.then(l=>l?!0:(c(),!1)):a?!0:(c(),!1)})}refinement(e,n){return this._refinement((i,r)=>e(i)?!0:(r.addIssue(typeof n=="function"?n(i,r):n),!1))}_refinement(e){return new Bn({schema:this,typeName:z.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:n=>this["~validate"](n)}}optional(){return jn.create(this,this._def)}nullable(){return $r.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return mi.create(this)}promise(){return no.create(this,this._def)}or(e){return Ts.create([this,e],this._def)}and(e){return Rs.create(this,e,this._def)}transform(e){return new Bn({...ue(this._def),schema:this,typeName:z.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let n=typeof e=="function"?e:()=>e;return new Cs({...ue(this._def),innerType:this,defaultValue:n,typeName:z.ZodDefault})}brand(){return new Np({typeName:z.ZodBranded,type:this,...ue(this._def)})}catch(e){let n=typeof e=="function"?e:()=>e;return new Ns({...ue(this._def),innerType:this,catchValue:n,typeName:z.ZodCatch})}describe(e){let n=this.constructor;return new n({...this._def,description:e})}pipe(e){return Pp.create(this,e)}readonly(){return Ps.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},L1=/^c[^\s-]{8,}$/i,U1=/^[0-9a-z]+$/,M1=/^[0-9A-HJKMNP-TV-Z]{26}$/i,j1=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,B1=/^[a-z0-9_-]{21}$/i,K1=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,F1=/^[-+]?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)?)??$/,V1=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,q1="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",Xv,H1=/^(?:(?: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])$/,G1=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,Z1=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,W1=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,J1=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,Y1=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,Cx="((\\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])))",X1=new RegExp(`^${Cx}$`);function Nx(t){let e="[0-5]\\d";t.precision?e=`${e}\\.\\d{${t.precision}}`:t.precision==null&&(e=`${e}(\\.\\d+)?`);let n=t.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${e})${n}`}function Q1(t){return new RegExp(`^${Nx(t)}$`)}function eB(t){let e=`${Cx}T${Nx(t)}`,n=[];return n.push(t.local?"Z?":"Z"),t.offset&&n.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${n.join("|")})`,new RegExp(`^${e}$`)}function tB(t,e){return!!((e==="v4"||!e)&&H1.test(t)||(e==="v6"||!e)&&Z1.test(t))}function nB(t,e){if(!K1.test(t))return!1;try{let[n]=t.split(".");if(!n)return!1;let i=n.replace(/-/g,"+").replace(/_/g,"/").padEnd(n.length+(4-n.length%4)%4,"="),r=JSON.parse(atob(i));return!(typeof r!="object"||r===null||"typ"in r&&r?.typ!=="JWT"||!r.alg||e&&r.alg!==e)}catch{return!1}}function rB(t,e){return!!((e==="v4"||!e)&&G1.test(t)||(e==="v6"||!e)&&W1.test(t))}var Ss=class t extends he{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==H.string){let o=this._getOrReturnCtx(e);return K(o,{code:C.invalid_type,expected:H.string,received:o.parsedType}),te}let i=new $t,r;for(let o of this._def.checks)if(o.kind==="min")e.data.length<o.value&&(r=this._getOrReturnCtx(e,r),K(r,{code:C.too_small,minimum:o.value,type:"string",inclusive:!0,exact:!1,message:o.message}),i.dirty());else if(o.kind==="max")e.data.length>o.value&&(r=this._getOrReturnCtx(e,r),K(r,{code:C.too_big,maximum:o.value,type:"string",inclusive:!0,exact:!1,message:o.message}),i.dirty());else if(o.kind==="length"){let a=e.data.length>o.value,c=e.data.length<o.value;(a||c)&&(r=this._getOrReturnCtx(e,r),a?K(r,{code:C.too_big,maximum:o.value,type:"string",inclusive:!0,exact:!0,message:o.message}):c&&K(r,{code:C.too_small,minimum:o.value,type:"string",inclusive:!0,exact:!0,message:o.message}),i.dirty())}else if(o.kind==="email")V1.test(e.data)||(r=this._getOrReturnCtx(e,r),K(r,{validation:"email",code:C.invalid_string,message:o.message}),i.dirty());else if(o.kind==="emoji")Xv||(Xv=new RegExp(q1,"u")),Xv.test(e.data)||(r=this._getOrReturnCtx(e,r),K(r,{validation:"emoji",code:C.invalid_string,message:o.message}),i.dirty());else if(o.kind==="uuid")j1.test(e.data)||(r=this._getOrReturnCtx(e,r),K(r,{validation:"uuid",code:C.invalid_string,message:o.message}),i.dirty());else if(o.kind==="nanoid")B1.test(e.data)||(r=this._getOrReturnCtx(e,r),K(r,{validation:"nanoid",code:C.invalid_string,message:o.message}),i.dirty());else if(o.kind==="cuid")L1.test(e.data)||(r=this._getOrReturnCtx(e,r),K(r,{validation:"cuid",code:C.invalid_string,message:o.message}),i.dirty());else if(o.kind==="cuid2")U1.test(e.data)||(r=this._getOrReturnCtx(e,r),K(r,{validation:"cuid2",code:C.invalid_string,message:o.message}),i.dirty());else if(o.kind==="ulid")M1.test(e.data)||(r=this._getOrReturnCtx(e,r),K(r,{validation:"ulid",code:C.invalid_string,message:o.message}),i.dirty());else if(o.kind==="url")try{new URL(e.data)}catch{r=this._getOrReturnCtx(e,r),K(r,{validation:"url",code:C.invalid_string,message:o.message}),i.dirty()}else o.kind==="regex"?(o.regex.lastIndex=0,o.regex.test(e.data)||(r=this._getOrReturnCtx(e,r),K(r,{validation:"regex",code:C.invalid_string,message:o.message}),i.dirty())):o.kind==="trim"?e.data=e.data.trim():o.kind==="includes"?e.data.includes(o.value,o.position)||(r=this._getOrReturnCtx(e,r),K(r,{code:C.invalid_string,validation:{includes:o.value,position:o.position},message:o.message}),i.dirty()):o.kind==="toLowerCase"?e.data=e.data.toLowerCase():o.kind==="toUpperCase"?e.data=e.data.toUpperCase():o.kind==="startsWith"?e.data.startsWith(o.value)||(r=this._getOrReturnCtx(e,r),K(r,{code:C.invalid_string,validation:{startsWith:o.value},message:o.message}),i.dirty()):o.kind==="endsWith"?e.data.endsWith(o.value)||(r=this._getOrReturnCtx(e,r),K(r,{code:C.invalid_string,validation:{endsWith:o.value},message:o.message}),i.dirty()):o.kind==="datetime"?eB(o).test(e.data)||(r=this._getOrReturnCtx(e,r),K(r,{code:C.invalid_string,validation:"datetime",message:o.message}),i.dirty()):o.kind==="date"?X1.test(e.data)||(r=this._getOrReturnCtx(e,r),K(r,{code:C.invalid_string,validation:"date",message:o.message}),i.dirty()):o.kind==="time"?Q1(o).test(e.data)||(r=this._getOrReturnCtx(e,r),K(r,{code:C.invalid_string,validation:"time",message:o.message}),i.dirty()):o.kind==="duration"?F1.test(e.data)||(r=this._getOrReturnCtx(e,r),K(r,{validation:"duration",code:C.invalid_string,message:o.message}),i.dirty()):o.kind==="ip"?tB(e.data,o.version)||(r=this._getOrReturnCtx(e,r),K(r,{validation:"ip",code:C.invalid_string,message:o.message}),i.dirty()):o.kind==="jwt"?nB(e.data,o.alg)||(r=this._getOrReturnCtx(e,r),K(r,{validation:"jwt",code:C.invalid_string,message:o.message}),i.dirty()):o.kind==="cidr"?rB(e.data,o.version)||(r=this._getOrReturnCtx(e,r),K(r,{validation:"cidr",code:C.invalid_string,message:o.message}),i.dirty()):o.kind==="base64"?J1.test(e.data)||(r=this._getOrReturnCtx(e,r),K(r,{validation:"base64",code:C.invalid_string,message:o.message}),i.dirty()):o.kind==="base64url"?Y1.test(e.data)||(r=this._getOrReturnCtx(e,r),K(r,{validation:"base64url",code:C.invalid_string,message:o.message}),i.dirty()):Se.assertNever(o);return{status:i.value,value:e.data}}_regex(e,n,i){return this.refinement(r=>e.test(r),{validation:n,code:C.invalid_string,...Z.errToObj(i)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...Z.errToObj(e)})}url(e){return this._addCheck({kind:"url",...Z.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...Z.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...Z.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...Z.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...Z.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...Z.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...Z.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...Z.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...Z.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...Z.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...Z.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...Z.errToObj(e)})}datetime(e){return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof e?.precision>"u"?null:e?.precision,offset:e?.offset??!1,local:e?.local??!1,...Z.errToObj(e?.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof e?.precision>"u"?null:e?.precision,...Z.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...Z.errToObj(e)})}regex(e,n){return this._addCheck({kind:"regex",regex:e,...Z.errToObj(n)})}includes(e,n){return this._addCheck({kind:"includes",value:e,position:n?.position,...Z.errToObj(n?.message)})}startsWith(e,n){return this._addCheck({kind:"startsWith",value:e,...Z.errToObj(n)})}endsWith(e,n){return this._addCheck({kind:"endsWith",value:e,...Z.errToObj(n)})}min(e,n){return this._addCheck({kind:"min",value:e,...Z.errToObj(n)})}max(e,n){return this._addCheck({kind:"max",value:e,...Z.errToObj(n)})}length(e,n){return this._addCheck({kind:"length",value:e,...Z.errToObj(n)})}nonempty(e){return this.min(1,Z.errToObj(e))}trim(){return new t({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isCIDR(){return!!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return!!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(let n of this._def.checks)n.kind==="min"&&(e===null||n.value>e)&&(e=n.value);return e}get maxLength(){let e=null;for(let n of this._def.checks)n.kind==="max"&&(e===null||n.value<e)&&(e=n.value);return e}};Ss.create=t=>new Ss({checks:[],typeName:z.ZodString,coerce:t?.coerce??!1,...ue(t)});function iB(t,e){let n=(t.toString().split(".")[1]||"").length,i=(e.toString().split(".")[1]||"").length,r=n>i?n:i,o=Number.parseInt(t.toFixed(r).replace(".","")),a=Number.parseInt(e.toFixed(r).replace(".",""));return o%a/10**r}var Jc=class t extends he{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==H.number){let o=this._getOrReturnCtx(e);return K(o,{code:C.invalid_type,expected:H.number,received:o.parsedType}),te}let i,r=new $t;for(let o of this._def.checks)o.kind==="int"?Se.isInteger(e.data)||(i=this._getOrReturnCtx(e,i),K(i,{code:C.invalid_type,expected:"integer",received:"float",message:o.message}),r.dirty()):o.kind==="min"?(o.inclusive?e.data<o.value:e.data<=o.value)&&(i=this._getOrReturnCtx(e,i),K(i,{code:C.too_small,minimum:o.value,type:"number",inclusive:o.inclusive,exact:!1,message:o.message}),r.dirty()):o.kind==="max"?(o.inclusive?e.data>o.value:e.data>=o.value)&&(i=this._getOrReturnCtx(e,i),K(i,{code:C.too_big,maximum:o.value,type:"number",inclusive:o.inclusive,exact:!1,message:o.message}),r.dirty()):o.kind==="multipleOf"?iB(e.data,o.value)!==0&&(i=this._getOrReturnCtx(e,i),K(i,{code:C.not_multiple_of,multipleOf:o.value,message:o.message}),r.dirty()):o.kind==="finite"?Number.isFinite(e.data)||(i=this._getOrReturnCtx(e,i),K(i,{code:C.not_finite,message:o.message}),r.dirty()):Se.assertNever(o);return{status:r.value,value:e.data}}gte(e,n){return this.setLimit("min",e,!0,Z.toString(n))}gt(e,n){return this.setLimit("min",e,!1,Z.toString(n))}lte(e,n){return this.setLimit("max",e,!0,Z.toString(n))}lt(e,n){return this.setLimit("max",e,!1,Z.toString(n))}setLimit(e,n,i,r){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:n,inclusive:i,message:Z.toString(r)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:Z.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:Z.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:Z.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:Z.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:Z.toString(e)})}multipleOf(e,n){return this._addCheck({kind:"multipleOf",value:e,message:Z.toString(n)})}finite(e){return this._addCheck({kind:"finite",message:Z.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:Z.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:Z.toString(e)})}get minValue(){let e=null;for(let n of this._def.checks)n.kind==="min"&&(e===null||n.value>e)&&(e=n.value);return e}get maxValue(){let e=null;for(let n of this._def.checks)n.kind==="max"&&(e===null||n.value<e)&&(e=n.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind==="int"||e.kind==="multipleOf"&&Se.isInteger(e.value))}get isFinite(){let e=null,n=null;for(let i of this._def.checks){if(i.kind==="finite"||i.kind==="int"||i.kind==="multipleOf")return!0;i.kind==="min"?(n===null||i.value>n)&&(n=i.value):i.kind==="max"&&(e===null||i.value<e)&&(e=i.value)}return Number.isFinite(n)&&Number.isFinite(e)}};Jc.create=t=>new Jc({checks:[],typeName:z.ZodNumber,coerce:t?.coerce||!1,...ue(t)});var Yc=class t extends he{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==H.bigint)return this._getInvalidInput(e);let i,r=new $t;for(let o of this._def.checks)o.kind==="min"?(o.inclusive?e.data<o.value:e.data<=o.value)&&(i=this._getOrReturnCtx(e,i),K(i,{code:C.too_small,type:"bigint",minimum:o.value,inclusive:o.inclusive,message:o.message}),r.dirty()):o.kind==="max"?(o.inclusive?e.data>o.value:e.data>=o.value)&&(i=this._getOrReturnCtx(e,i),K(i,{code:C.too_big,type:"bigint",maximum:o.value,inclusive:o.inclusive,message:o.message}),r.dirty()):o.kind==="multipleOf"?e.data%o.value!==BigInt(0)&&(i=this._getOrReturnCtx(e,i),K(i,{code:C.not_multiple_of,multipleOf:o.value,message:o.message}),r.dirty()):Se.assertNever(o);return{status:r.value,value:e.data}}_getInvalidInput(e){let n=this._getOrReturnCtx(e);return K(n,{code:C.invalid_type,expected:H.bigint,received:n.parsedType}),te}gte(e,n){return this.setLimit("min",e,!0,Z.toString(n))}gt(e,n){return this.setLimit("min",e,!1,Z.toString(n))}lte(e,n){return this.setLimit("max",e,!0,Z.toString(n))}lt(e,n){return this.setLimit("max",e,!1,Z.toString(n))}setLimit(e,n,i,r){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:n,inclusive:i,message:Z.toString(r)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:Z.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:Z.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:Z.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:Z.toString(e)})}multipleOf(e,n){return this._addCheck({kind:"multipleOf",value:e,message:Z.toString(n)})}get minValue(){let e=null;for(let n of this._def.checks)n.kind==="min"&&(e===null||n.value>e)&&(e=n.value);return e}get maxValue(){let e=null;for(let n of this._def.checks)n.kind==="max"&&(e===null||n.value<e)&&(e=n.value);return e}};Yc.create=t=>new Yc({checks:[],typeName:z.ZodBigInt,coerce:t?.coerce??!1,...ue(t)});var Xc=class extends he{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==H.boolean){let i=this._getOrReturnCtx(e);return K(i,{code:C.invalid_type,expected:H.boolean,received:i.parsedType}),te}return Bt(e.data)}};Xc.create=t=>new Xc({typeName:z.ZodBoolean,coerce:t?.coerce||!1,...ue(t)});var Qc=class t extends he{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==H.date){let o=this._getOrReturnCtx(e);return K(o,{code:C.invalid_type,expected:H.date,received:o.parsedType}),te}if(Number.isNaN(e.data.getTime())){let o=this._getOrReturnCtx(e);return K(o,{code:C.invalid_date}),te}let i=new $t,r;for(let o of this._def.checks)o.kind==="min"?e.data.getTime()<o.value&&(r=this._getOrReturnCtx(e,r),K(r,{code:C.too_small,message:o.message,inclusive:!0,exact:!1,minimum:o.value,type:"date"}),i.dirty()):o.kind==="max"?e.data.getTime()>o.value&&(r=this._getOrReturnCtx(e,r),K(r,{code:C.too_big,message:o.message,inclusive:!0,exact:!1,maximum:o.value,type:"date"}),i.dirty()):Se.assertNever(o);return{status:i.value,value:new Date(e.data.getTime())}}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}min(e,n){return this._addCheck({kind:"min",value:e.getTime(),message:Z.toString(n)})}max(e,n){return this._addCheck({kind:"max",value:e.getTime(),message:Z.toString(n)})}get minDate(){let e=null;for(let n of this._def.checks)n.kind==="min"&&(e===null||n.value>e)&&(e=n.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(let n of this._def.checks)n.kind==="max"&&(e===null||n.value<e)&&(e=n.value);return e!=null?new Date(e):null}};Qc.create=t=>new Qc({checks:[],coerce:t?.coerce||!1,typeName:z.ZodDate,...ue(t)});var el=class extends he{_parse(e){if(this._getType(e)!==H.symbol){let i=this._getOrReturnCtx(e);return K(i,{code:C.invalid_type,expected:H.symbol,received:i.parsedType}),te}return Bt(e.data)}};el.create=t=>new el({typeName:z.ZodSymbol,...ue(t)});var Is=class extends he{_parse(e){if(this._getType(e)!==H.undefined){let i=this._getOrReturnCtx(e);return K(i,{code:C.invalid_type,expected:H.undefined,received:i.parsedType}),te}return Bt(e.data)}};Is.create=t=>new Is({typeName:z.ZodUndefined,...ue(t)});var Es=class extends he{_parse(e){if(this._getType(e)!==H.null){let i=this._getOrReturnCtx(e);return K(i,{code:C.invalid_type,expected:H.null,received:i.parsedType}),te}return Bt(e.data)}};Es.create=t=>new Es({typeName:z.ZodNull,...ue(t)});var tl=class extends he{constructor(){super(...arguments),this._any=!0}_parse(e){return Bt(e.data)}};tl.create=t=>new tl({typeName:z.ZodAny,...ue(t)});var di=class extends he{constructor(){super(...arguments),this._unknown=!0}_parse(e){return Bt(e.data)}};di.create=t=>new di({typeName:z.ZodUnknown,...ue(t)});var lr=class extends he{_parse(e){let n=this._getOrReturnCtx(e);return K(n,{code:C.invalid_type,expected:H.never,received:n.parsedType}),te}};lr.create=t=>new lr({typeName:z.ZodNever,...ue(t)});var nl=class extends he{_parse(e){if(this._getType(e)!==H.undefined){let i=this._getOrReturnCtx(e);return K(i,{code:C.invalid_type,expected:H.void,received:i.parsedType}),te}return Bt(e.data)}};nl.create=t=>new nl({typeName:z.ZodVoid,...ue(t)});var mi=class t extends he{_parse(e){let{ctx:n,status:i}=this._processInputParams(e),r=this._def;if(n.parsedType!==H.array)return K(n,{code:C.invalid_type,expected:H.array,received:n.parsedType}),te;if(r.exactLength!==null){let a=n.data.length>r.exactLength.value,c=n.data.length<r.exactLength.value;(a||c)&&(K(n,{code:a?C.too_big:C.too_small,minimum:c?r.exactLength.value:void 0,maximum:a?r.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:r.exactLength.message}),i.dirty())}if(r.minLength!==null&&n.data.length<r.minLength.value&&(K(n,{code:C.too_small,minimum:r.minLength.value,type:"array",inclusive:!0,exact:!1,message:r.minLength.message}),i.dirty()),r.maxLength!==null&&n.data.length>r.maxLength.value&&(K(n,{code:C.too_big,maximum:r.maxLength.value,type:"array",inclusive:!0,exact:!1,message:r.maxLength.message}),i.dirty()),n.common.async)return Promise.all([...n.data].map((a,c)=>r.type._parseAsync(new En(n,a,n.path,c)))).then(a=>$t.mergeArray(i,a));let o=[...n.data].map((a,c)=>r.type._parseSync(new En(n,a,n.path,c)));return $t.mergeArray(i,o)}get element(){return this._def.type}min(e,n){return new t({...this._def,minLength:{value:e,message:Z.toString(n)}})}max(e,n){return new t({...this._def,maxLength:{value:e,message:Z.toString(n)}})}length(e,n){return new t({...this._def,exactLength:{value:e,message:Z.toString(n)}})}nonempty(e){return this.min(1,e)}};mi.create=(t,e)=>new mi({type:t,minLength:null,maxLength:null,exactLength:null,typeName:z.ZodArray,...ue(e)});function ws(t){if(t instanceof pn){let e={};for(let n in t.shape){let i=t.shape[n];e[n]=jn.create(ws(i))}return new pn({...t._def,shape:()=>e})}else return t instanceof mi?new mi({...t._def,type:ws(t.element)}):t instanceof jn?jn.create(ws(t.unwrap())):t instanceof $r?$r.create(ws(t.unwrap())):t instanceof Ar?Ar.create(t.items.map(e=>ws(e))):t}var pn=class t extends he{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let e=this._def.shape(),n=Se.objectKeys(e);return this._cached={shape:e,keys:n},this._cached}_parse(e){if(this._getType(e)!==H.object){let u=this._getOrReturnCtx(e);return K(u,{code:C.invalid_type,expected:H.object,received:u.parsedType}),te}let{status:i,ctx:r}=this._processInputParams(e),{shape:o,keys:a}=this._getCached(),c=[];if(!(this._def.catchall instanceof lr&&this._def.unknownKeys==="strip"))for(let u in r.data)a.includes(u)||c.push(u);let l=[];for(let u of a){let d=o[u],m=r.data[u];l.push({key:{status:"valid",value:u},value:d._parse(new En(r,m,r.path,u)),alwaysSet:u in r.data})}if(this._def.catchall instanceof lr){let u=this._def.unknownKeys;if(u==="passthrough")for(let d of c)l.push({key:{status:"valid",value:d},value:{status:"valid",value:r.data[d]}});else if(u==="strict")c.length>0&&(K(r,{code:C.unrecognized_keys,keys:c}),i.dirty());else if(u!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let u=this._def.catchall;for(let d of c){let m=r.data[d];l.push({key:{status:"valid",value:d},value:u._parse(new En(r,m,r.path,d)),alwaysSet:d in r.data})}}return r.common.async?Promise.resolve().then(async()=>{let u=[];for(let d of l){let m=await d.key,f=await d.value;u.push({key:m,value:f,alwaysSet:d.alwaysSet})}return u}).then(u=>$t.mergeObjectSync(i,u)):$t.mergeObjectSync(i,l)}get shape(){return this._def.shape()}strict(e){return Z.errToObj,new t({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(n,i)=>{let r=this._def.errorMap?.(n,i).message??i.defaultError;return n.code==="unrecognized_keys"?{message:Z.errToObj(e).message??r}:{message:r}}}:{}})}strip(){return new t({...this._def,unknownKeys:"strip"})}passthrough(){return new t({...this._def,unknownKeys:"passthrough"})}extend(e){return new t({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new t({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:z.ZodObject})}setKey(e,n){return this.augment({[e]:n})}catchall(e){return new t({...this._def,catchall:e})}pick(e){let n={};for(let i of Se.objectKeys(e))e[i]&&this.shape[i]&&(n[i]=this.shape[i]);return new t({...this._def,shape:()=>n})}omit(e){let n={};for(let i of Se.objectKeys(this.shape))e[i]||(n[i]=this.shape[i]);return new t({...this._def,shape:()=>n})}deepPartial(){return ws(this)}partial(e){let n={};for(let i of Se.objectKeys(this.shape)){let r=this.shape[i];e&&!e[i]?n[i]=r:n[i]=r.optional()}return new t({...this._def,shape:()=>n})}required(e){let n={};for(let i of Se.objectKeys(this.shape))if(e&&!e[i])n[i]=this.shape[i];else{let o=this.shape[i];for(;o instanceof jn;)o=o._def.innerType;n[i]=o}return new t({...this._def,shape:()=>n})}keyof(){return Px(Se.objectKeys(this.shape))}};pn.create=(t,e)=>new pn({shape:()=>t,unknownKeys:"strip",catchall:lr.create(),typeName:z.ZodObject,...ue(e)});pn.strictCreate=(t,e)=>new pn({shape:()=>t,unknownKeys:"strict",catchall:lr.create(),typeName:z.ZodObject,...ue(e)});pn.lazycreate=(t,e)=>new pn({shape:t,unknownKeys:"strip",catchall:lr.create(),typeName:z.ZodObject,...ue(e)});var Ts=class extends he{_parse(e){let{ctx:n}=this._processInputParams(e),i=this._def.options;function r(o){for(let c of o)if(c.result.status==="valid")return c.result;for(let c of o)if(c.result.status==="dirty")return n.common.issues.push(...c.ctx.common.issues),c.result;let a=o.map(c=>new mn(c.ctx.common.issues));return K(n,{code:C.invalid_union,unionErrors:a}),te}if(n.common.async)return Promise.all(i.map(async o=>{let a={...n,common:{...n.common,issues:[]},parent:null};return{result:await o._parseAsync({data:n.data,path:n.path,parent:a}),ctx:a}})).then(r);{let o,a=[];for(let l of i){let u={...n,common:{...n.common,issues:[]},parent:null},d=l._parseSync({data:n.data,path:n.path,parent:u});if(d.status==="valid")return d;d.status==="dirty"&&!o&&(o={result:d,ctx:u}),u.common.issues.length&&a.push(u.common.issues)}if(o)return n.common.issues.push(...o.ctx.common.issues),o.result;let c=a.map(l=>new mn(l));return K(n,{code:C.invalid_union,unionErrors:c}),te}}get options(){return this._def.options}};Ts.create=(t,e)=>new Ts({options:t,typeName:z.ZodUnion,...ue(e)});var Or=t=>t instanceof xs?Or(t.schema):t instanceof Bn?Or(t.innerType()):t instanceof Os?[t.value]:t instanceof As?t.options:t instanceof $s?Se.objectValues(t.enum):t instanceof Cs?Or(t._def.innerType):t instanceof Is?[void 0]:t instanceof Es?[null]:t instanceof jn?[void 0,...Or(t.unwrap())]:t instanceof $r?[null,...Or(t.unwrap())]:t instanceof Np||t instanceof Ps?Or(t.unwrap()):t instanceof Ns?Or(t._def.innerType):[],Qv=class t extends he{_parse(e){let{ctx:n}=this._processInputParams(e);if(n.parsedType!==H.object)return K(n,{code:C.invalid_type,expected:H.object,received:n.parsedType}),te;let i=this.discriminator,r=n.data[i],o=this.optionsMap.get(r);return o?n.common.async?o._parseAsync({data:n.data,path:n.path,parent:n}):o._parseSync({data:n.data,path:n.path,parent:n}):(K(n,{code:C.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[i]}),te)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,n,i){let r=new Map;for(let o of n){let a=Or(o.shape[e]);if(!a.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let c of a){if(r.has(c))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(c)}`);r.set(c,o)}}return new t({typeName:z.ZodDiscriminatedUnion,discriminator:e,options:n,optionsMap:r,...ue(i)})}};function ey(t,e){let n=xr(t),i=xr(e);if(t===e)return{valid:!0,data:t};if(n===H.object&&i===H.object){let r=Se.objectKeys(e),o=Se.objectKeys(t).filter(c=>r.indexOf(c)!==-1),a={...t,...e};for(let c of o){let l=ey(t[c],e[c]);if(!l.valid)return{valid:!1};a[c]=l.data}return{valid:!0,data:a}}else if(n===H.array&&i===H.array){if(t.length!==e.length)return{valid:!1};let r=[];for(let o=0;o<t.length;o++){let a=t[o],c=e[o],l=ey(a,c);if(!l.valid)return{valid:!1};r.push(l.data)}return{valid:!0,data:r}}else return n===H.date&&i===H.date&&+t==+e?{valid:!0,data:t}:{valid:!1}}var Rs=class extends he{_parse(e){let{status:n,ctx:i}=this._processInputParams(e),r=(o,a)=>{if(Jv(o)||Jv(a))return te;let c=ey(o.value,a.value);return c.valid?((Yv(o)||Yv(a))&&n.dirty(),{status:n.value,value:c.data}):(K(i,{code:C.invalid_intersection_types}),te)};return i.common.async?Promise.all([this._def.left._parseAsync({data:i.data,path:i.path,parent:i}),this._def.right._parseAsync({data:i.data,path:i.path,parent:i})]).then(([o,a])=>r(o,a)):r(this._def.left._parseSync({data:i.data,path:i.path,parent:i}),this._def.right._parseSync({data:i.data,path:i.path,parent:i}))}};Rs.create=(t,e,n)=>new Rs({left:t,right:e,typeName:z.ZodIntersection,...ue(n)});var Ar=class t extends he{_parse(e){let{status:n,ctx:i}=this._processInputParams(e);if(i.parsedType!==H.array)return K(i,{code:C.invalid_type,expected:H.array,received:i.parsedType}),te;if(i.data.length<this._def.items.length)return K(i,{code:C.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),te;!this._def.rest&&i.data.length>this._def.items.length&&(K(i,{code:C.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),n.dirty());let o=[...i.data].map((a,c)=>{let l=this._def.items[c]||this._def.rest;return l?l._parse(new En(i,a,i.path,c)):null}).filter(a=>!!a);return i.common.async?Promise.all(o).then(a=>$t.mergeArray(n,a)):$t.mergeArray(n,o)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};Ar.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new Ar({items:t,typeName:z.ZodTuple,rest:null,...ue(e)})};var ty=class t extends he{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:n,ctx:i}=this._processInputParams(e);if(i.parsedType!==H.object)return K(i,{code:C.invalid_type,expected:H.object,received:i.parsedType}),te;let r=[],o=this._def.keyType,a=this._def.valueType;for(let c in i.data)r.push({key:o._parse(new En(i,c,i.path,c)),value:a._parse(new En(i,i.data[c],i.path,c)),alwaysSet:c in i.data});return i.common.async?$t.mergeObjectAsync(n,r):$t.mergeObjectSync(n,r)}get element(){return this._def.valueType}static create(e,n,i){return n instanceof he?new t({keyType:e,valueType:n,typeName:z.ZodRecord,...ue(i)}):new t({keyType:Ss.create(),valueType:e,typeName:z.ZodRecord,...ue(n)})}},rl=class extends he{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:n,ctx:i}=this._processInputParams(e);if(i.parsedType!==H.map)return K(i,{code:C.invalid_type,expected:H.map,received:i.parsedType}),te;let r=this._def.keyType,o=this._def.valueType,a=[...i.data.entries()].map(([c,l],u)=>({key:r._parse(new En(i,c,i.path,[u,"key"])),value:o._parse(new En(i,l,i.path,[u,"value"]))}));if(i.common.async){let c=new Map;return Promise.resolve().then(async()=>{for(let l of a){let u=await l.key,d=await l.value;if(u.status==="aborted"||d.status==="aborted")return te;(u.status==="dirty"||d.status==="dirty")&&n.dirty(),c.set(u.value,d.value)}return{status:n.value,value:c}})}else{let c=new Map;for(let l of a){let u=l.key,d=l.value;if(u.status==="aborted"||d.status==="aborted")return te;(u.status==="dirty"||d.status==="dirty")&&n.dirty(),c.set(u.value,d.value)}return{status:n.value,value:c}}}};rl.create=(t,e,n)=>new rl({valueType:e,keyType:t,typeName:z.ZodMap,...ue(n)});var il=class t extends he{_parse(e){let{status:n,ctx:i}=this._processInputParams(e);if(i.parsedType!==H.set)return K(i,{code:C.invalid_type,expected:H.set,received:i.parsedType}),te;let r=this._def;r.minSize!==null&&i.data.size<r.minSize.value&&(K(i,{code:C.too_small,minimum:r.minSize.value,type:"set",inclusive:!0,exact:!1,message:r.minSize.message}),n.dirty()),r.maxSize!==null&&i.data.size>r.maxSize.value&&(K(i,{code:C.too_big,maximum:r.maxSize.value,type:"set",inclusive:!0,exact:!1,message:r.maxSize.message}),n.dirty());let o=this._def.valueType;function a(l){let u=new Set;for(let d of l){if(d.status==="aborted")return te;d.status==="dirty"&&n.dirty(),u.add(d.value)}return{status:n.value,value:u}}let c=[...i.data.values()].map((l,u)=>o._parse(new En(i,l,i.path,u)));return i.common.async?Promise.all(c).then(l=>a(l)):a(c)}min(e,n){return new t({...this._def,minSize:{value:e,message:Z.toString(n)}})}max(e,n){return new t({...this._def,maxSize:{value:e,message:Z.toString(n)}})}size(e,n){return this.min(e,n).max(e,n)}nonempty(e){return this.min(1,e)}};il.create=(t,e)=>new il({valueType:t,minSize:null,maxSize:null,typeName:z.ZodSet,...ue(e)});var ny=class t extends he{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:n}=this._processInputParams(e);if(n.parsedType!==H.function)return K(n,{code:C.invalid_type,expected:H.function,received:n.parsedType}),te;function i(c,l){return Cp({data:c,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,Zc(),ui].filter(u=>!!u),issueData:{code:C.invalid_arguments,argumentsError:l}})}function r(c,l){return Cp({data:c,path:n.path,errorMaps:[n.common.contextualErrorMap,n.schemaErrorMap,Zc(),ui].filter(u=>!!u),issueData:{code:C.invalid_return_type,returnTypeError:l}})}let o={errorMap:n.common.contextualErrorMap},a=n.data;if(this._def.returns instanceof no){let c=this;return Bt(async function(...l){let u=new mn([]),d=await c._def.args.parseAsync(l,o).catch(p=>{throw u.addIssue(i(l,p)),u}),m=await Reflect.apply(a,this,d);return await c._def.returns._def.type.parseAsync(m,o).catch(p=>{throw u.addIssue(r(m,p)),u})})}else{let c=this;return Bt(function(...l){let u=c._def.args.safeParse(l,o);if(!u.success)throw new mn([i(l,u.error)]);let d=Reflect.apply(a,this,u.data),m=c._def.returns.safeParse(d,o);if(!m.success)throw new mn([r(d,m.error)]);return m.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new t({...this._def,args:Ar.create(e).rest(di.create())})}returns(e){return new t({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,n,i){return new t({args:e||Ar.create([]).rest(di.create()),returns:n||di.create(),typeName:z.ZodFunction,...ue(i)})}},xs=class extends he{get schema(){return this._def.getter()}_parse(e){let{ctx:n}=this._processInputParams(e);return this._def.getter()._parse({data:n.data,path:n.path,parent:n})}};xs.create=(t,e)=>new xs({getter:t,typeName:z.ZodLazy,...ue(e)});var Os=class extends he{_parse(e){if(e.data!==this._def.value){let n=this._getOrReturnCtx(e);return K(n,{received:n.data,code:C.invalid_literal,expected:this._def.value}),te}return{status:"valid",value:e.data}}get value(){return this._def.value}};Os.create=(t,e)=>new Os({value:t,typeName:z.ZodLiteral,...ue(e)});function Px(t,e){return new As({values:t,typeName:z.ZodEnum,...ue(e)})}var As=class t extends he{_parse(e){if(typeof e.data!="string"){let n=this._getOrReturnCtx(e),i=this._def.values;return K(n,{expected:Se.joinValues(i),received:n.parsedType,code:C.invalid_type}),te}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){let n=this._getOrReturnCtx(e),i=this._def.values;return K(n,{received:n.data,code:C.invalid_enum_value,options:i}),te}return Bt(e.data)}get options(){return this._def.values}get enum(){let e={};for(let n of this._def.values)e[n]=n;return e}get Values(){let e={};for(let n of this._def.values)e[n]=n;return e}get Enum(){let e={};for(let n of this._def.values)e[n]=n;return e}extract(e,n=this._def){return t.create(e,{...this._def,...n})}exclude(e,n=this._def){return t.create(this.options.filter(i=>!e.includes(i)),{...this._def,...n})}};As.create=Px;var $s=class extends he{_parse(e){let n=Se.getValidEnumValues(this._def.values),i=this._getOrReturnCtx(e);if(i.parsedType!==H.string&&i.parsedType!==H.number){let r=Se.objectValues(n);return K(i,{expected:Se.joinValues(r),received:i.parsedType,code:C.invalid_type}),te}if(this._cache||(this._cache=new Set(Se.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let r=Se.objectValues(n);return K(i,{received:i.data,code:C.invalid_enum_value,options:r}),te}return Bt(e.data)}get enum(){return this._def.values}};$s.create=(t,e)=>new $s({values:t,typeName:z.ZodNativeEnum,...ue(e)});var no=class extends he{unwrap(){return this._def.type}_parse(e){let{ctx:n}=this._processInputParams(e);if(n.parsedType!==H.promise&&n.common.async===!1)return K(n,{code:C.invalid_type,expected:H.promise,received:n.parsedType}),te;let i=n.parsedType===H.promise?n.data:Promise.resolve(n.data);return Bt(i.then(r=>this._def.type.parseAsync(r,{path:n.path,errorMap:n.common.contextualErrorMap})))}};no.create=(t,e)=>new no({type:t,typeName:z.ZodPromise,...ue(e)});var Bn=class extends he{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===z.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:n,ctx:i}=this._processInputParams(e),r=this._def.effect||null,o={addIssue:a=>{K(i,a),a.fatal?n.abort():n.dirty()},get path(){return i.path}};if(o.addIssue=o.addIssue.bind(o),r.type==="preprocess"){let a=r.transform(i.data,o);if(i.common.async)return Promise.resolve(a).then(async c=>{if(n.value==="aborted")return te;let l=await this._def.schema._parseAsync({data:c,path:i.path,parent:i});return l.status==="aborted"?te:l.status==="dirty"?ks(l.value):n.value==="dirty"?ks(l.value):l});{if(n.value==="aborted")return te;let c=this._def.schema._parseSync({data:a,path:i.path,parent:i});return c.status==="aborted"?te:c.status==="dirty"?ks(c.value):n.value==="dirty"?ks(c.value):c}}if(r.type==="refinement"){let a=c=>{let l=r.refinement(c,o);if(i.common.async)return Promise.resolve(l);if(l instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return c};if(i.common.async===!1){let c=this._def.schema._parseSync({data:i.data,path:i.path,parent:i});return c.status==="aborted"?te:(c.status==="dirty"&&n.dirty(),a(c.value),{status:n.value,value:c.value})}else return this._def.schema._parseAsync({data:i.data,path:i.path,parent:i}).then(c=>c.status==="aborted"?te:(c.status==="dirty"&&n.dirty(),a(c.value).then(()=>({status:n.value,value:c.value}))))}if(r.type==="transform")if(i.common.async===!1){let a=this._def.schema._parseSync({data:i.data,path:i.path,parent:i});if(!to(a))return te;let c=r.transform(a.value,o);if(c instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:n.value,value:c}}else return this._def.schema._parseAsync({data:i.data,path:i.path,parent:i}).then(a=>to(a)?Promise.resolve(r.transform(a.value,o)).then(c=>({status:n.value,value:c})):te);Se.assertNever(r)}};Bn.create=(t,e,n)=>new Bn({schema:t,typeName:z.ZodEffects,effect:e,...ue(n)});Bn.createWithPreprocess=(t,e,n)=>new Bn({schema:e,effect:{type:"preprocess",transform:t},typeName:z.ZodEffects,...ue(n)});var jn=class extends he{_parse(e){return this._getType(e)===H.undefined?Bt(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};jn.create=(t,e)=>new jn({innerType:t,typeName:z.ZodOptional,...ue(e)});var $r=class extends he{_parse(e){return this._getType(e)===H.null?Bt(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};$r.create=(t,e)=>new $r({innerType:t,typeName:z.ZodNullable,...ue(e)});var Cs=class extends he{_parse(e){let{ctx:n}=this._processInputParams(e),i=n.data;return n.parsedType===H.undefined&&(i=this._def.defaultValue()),this._def.innerType._parse({data:i,path:n.path,parent:n})}removeDefault(){return this._def.innerType}};Cs.create=(t,e)=>new Cs({innerType:t,typeName:z.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...ue(e)});var Ns=class extends he{_parse(e){let{ctx:n}=this._processInputParams(e),i={...n,common:{...n.common,issues:[]}},r=this._def.innerType._parse({data:i.data,path:i.path,parent:{...i}});return Wc(r)?r.then(o=>({status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new mn(i.common.issues)},input:i.data})})):{status:"valid",value:r.status==="valid"?r.value:this._def.catchValue({get error(){return new mn(i.common.issues)},input:i.data})}}removeCatch(){return this._def.innerType}};Ns.create=(t,e)=>new Ns({innerType:t,typeName:z.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...ue(e)});var ol=class extends he{_parse(e){if(this._getType(e)!==H.nan){let i=this._getOrReturnCtx(e);return K(i,{code:C.invalid_type,expected:H.nan,received:i.parsedType}),te}return{status:"valid",value:e.data}}};ol.create=t=>new ol({typeName:z.ZodNaN,...ue(t)});var Np=class extends he{_parse(e){let{ctx:n}=this._processInputParams(e),i=n.data;return this._def.type._parse({data:i,path:n.path,parent:n})}unwrap(){return this._def.type}},Pp=class t extends he{_parse(e){let{status:n,ctx:i}=this._processInputParams(e);if(i.common.async)return(async()=>{let o=await this._def.in._parseAsync({data:i.data,path:i.path,parent:i});return o.status==="aborted"?te:o.status==="dirty"?(n.dirty(),ks(o.value)):this._def.out._parseAsync({data:o.value,path:i.path,parent:i})})();{let r=this._def.in._parseSync({data:i.data,path:i.path,parent:i});return r.status==="aborted"?te:r.status==="dirty"?(n.dirty(),{status:"dirty",value:r.value}):this._def.out._parseSync({data:r.value,path:i.path,parent:i})}}static create(e,n){return new t({in:e,out:n,typeName:z.ZodPipeline})}},Ps=class extends he{_parse(e){let n=this._def.innerType._parse(e),i=r=>(to(r)&&(r.value=Object.freeze(r.value)),r);return Wc(n)?n.then(r=>i(r)):i(n)}unwrap(){return this._def.innerType}};Ps.create=(t,e)=>new Ps({innerType:t,typeName:z.ZodReadonly,...ue(e)});var T7={object:pn.lazycreate},z;(function(t){t.ZodString="ZodString",t.ZodNumber="ZodNumber",t.ZodNaN="ZodNaN",t.ZodBigInt="ZodBigInt",t.ZodBoolean="ZodBoolean",t.ZodDate="ZodDate",t.ZodSymbol="ZodSymbol",t.ZodUndefined="ZodUndefined",t.ZodNull="ZodNull",t.ZodAny="ZodAny",t.ZodUnknown="ZodUnknown",t.ZodNever="ZodNever",t.ZodVoid="ZodVoid",t.ZodArray="ZodArray",t.ZodObject="ZodObject",t.ZodUnion="ZodUnion",t.ZodDiscriminatedUnion="ZodDiscriminatedUnion",t.ZodIntersection="ZodIntersection",t.ZodTuple="ZodTuple",t.ZodRecord="ZodRecord",t.ZodMap="ZodMap",t.ZodSet="ZodSet",t.ZodFunction="ZodFunction",t.ZodLazy="ZodLazy",t.ZodLiteral="ZodLiteral",t.ZodEnum="ZodEnum",t.ZodEffects="ZodEffects",t.ZodNativeEnum="ZodNativeEnum",t.ZodOptional="ZodOptional",t.ZodNullable="ZodNullable",t.ZodDefault="ZodDefault",t.ZodCatch="ZodCatch",t.ZodPromise="ZodPromise",t.ZodBranded="ZodBranded",t.ZodPipeline="ZodPipeline",t.ZodReadonly="ZodReadonly"})(z||(z={}));var R7=Ss.create,x7=Jc.create,O7=ol.create,A7=Yc.create,$7=Xc.create,C7=Qc.create,N7=el.create,P7=Is.create,z7=Es.create,D7=tl.create,L7=di.create,U7=lr.create,M7=nl.create,j7=mi.create,zx=pn.create,B7=pn.strictCreate,K7=Ts.create,F7=Qv.create,V7=Rs.create,q7=Ar.create,H7=ty.create,G7=rl.create,Z7=il.create,W7=ny.create,J7=xs.create,Y7=Os.create,X7=As.create,Q7=$s.create,eee=no.create,tee=Bn.create,nee=jn.create,ree=$r.create,iee=Bn.createWithPreprocess,oee=Pp.create;var sB=h("ZodMiniType",(t,e)=>{if(!t._zod)throw new Error("Uninitialized schema in ZodMiniType.");ie.init(t,e),t.def=e,t.type=e.type,t.parse=(n,i)=>Hi(t,n,i,{callee:t.parse}),t.safeParse=(n,i)=>ei(t,n,i),t.parseAsync=async(n,i)=>Gi(t,n,i,{callee:t.parseAsync}),t.safeParseAsync=async(n,i)=>ti(t,n,i),t.check=(...n)=>t.clone({...e,checks:[...e.checks??[],...n.map(i=>typeof i=="function"?{_zod:{check:i,def:{check:"custom"},onattach:[]}}:i)]},{parent:!0}),t.with=t.check,t.clone=(n,i)=>_t(t,n,i),t.brand=()=>t,t.register=((n,i)=>(n.add(t,i),t)),t.apply=n=>n(t)});var aB=h("ZodMiniObject",(t,e)=>{kd.init(t,e),sB.init(t,e),de(t,"shape",()=>e.shape)});function ry(t,e){let n={type:"object",shape:t??{},...P(e)};return new aB(n)}function ur(t){return!!t._zod}function ro(t){let e=Object.values(t);if(e.length===0)return ry({});let n=e.every(ur),i=e.every(r=>!ur(r));if(n)return ry(t);if(i)return zx(t);throw new Error("Mixed Zod versions detected in object shape.")}function pi(t,e){return ur(t)?ei(t,e):t.safeParse(e)}async function zp(t,e){return ur(t)?await ti(t,e):await t.safeParseAsync(e)}function fi(t){if(!t)return;let e;if(ur(t)?e=t._zod?.def?.shape:e=t.shape,!!e){if(typeof e=="function")try{return e()}catch{return}return e}}function zs(t){if(t){if(typeof t=="object"){let e=t,n=t;if(!e._def&&!n._zod){let i=Object.values(t);if(i.length>0&&i.every(r=>typeof r=="object"&&r!==null&&(r._def!==void 0||r._zod!==void 0||typeof r.parse=="function")))return ro(t)}}if(ur(t)){let n=t._zod?.def;if(n&&(n.type==="object"||n.shape!==void 0))return t}else if(t.shape!==void 0)return t}}function lB(t){return t.length===0?"object root":t.reduce((e,n,i)=>i===0?String(n):typeof n=="number"?`${e}[${n}]`:`${e}.${n}`,"")}function Dp(t){if(t&&typeof t=="object"){if("issues"in t&&Array.isArray(t.issues)&&t.issues.length>0)return t.issues.map(e=>e.path?.length?`${e.message} at ${lB(e.path)}`:e.message).join(`
|
|
102
|
-
`);if("message"in t&&typeof t.message=="string")return t.message;try{return JSON.stringify(t)}catch{return String(t)}}return String(t)}function Dx(t){return t.description}function Lx(t){if(ur(t))return t._zod?.def?.type==="optional";let e=t;return typeof t.isOptional=="function"?t.isOptional():e._def?.typeName==="ZodOptional"}function Ds(t){if(ur(t)){let o=t._zod?.def;if(o){if(o.value!==void 0)return o.value;if(Array.isArray(o.values)&&o.values.length>0)return o.values[0]}}let n=t._def;if(n){if(n.value!==void 0)return n.value;if(Array.isArray(n.values)&&n.values.length>0)return n.values[0]}let i=t.value;if(i!==void 0)return i}function gi(t){return t==="completed"||t==="failed"||t==="cancelled"}var Mx=Symbol("Let zodToJsonSchema decide on which parser to use");var Ux={name:void 0,$refStrategy:"root",basePath:["#"],effectStrategy:"input",pipeStrategy:"all",dateStrategy:"format:date-time",mapStrategy:"entries",removeAdditionalStrategy:"passthrough",allowedAdditionalProperties:!0,rejectedAdditionalProperties:!1,definitionPath:"definitions",target:"jsonSchema7",strictUnions:!1,definitions:{},errorMessages:!1,markdownDescription:!1,patternStrategy:"escape",applyRegexFlags:!1,emailStrategy:"format:email",base64Strategy:"contentEncoding:base64",nameStrategy:"ref",openAiAnyTypeName:"OpenAiAnyType"},jx=t=>typeof t=="string"?{...Ux,name:t}:{...Ux,...t};var Bx=t=>{let e=jx(t),n=e.name!==void 0?[...e.basePath,e.definitionPath,e.name]:e.basePath;return{...e,flags:{hasReferencedOpenAiAnyType:!1},currentPath:n,propertyPath:void 0,seen:new Map(Object.entries(e.definitions).map(([i,r])=>[r._def,{def:r._def,path:[...e.basePath,e.definitionPath,i],jsonSchema:void 0}]))}};function iy(t,e,n,i){i?.errorMessages&&n&&(t.errorMessage={...t.errorMessage,[e]:n})}function xe(t,e,n,i,r){t[e]=n,iy(t,e,i,r)}var Lp=(t,e)=>{let n=0;for(;n<t.length&&n<e.length&&t[n]===e[n];n++);return[(t.length-n).toString(),...e.slice(n)].join("/")};function et(t){if(t.target!=="openAi")return{};let e=[...t.basePath,t.definitionPath,t.openAiAnyTypeName];return t.flags.hasReferencedOpenAiAnyType=!0,{$ref:t.$refStrategy==="relative"?Lp(e,t.currentPath):e.join("/")}}function Kx(t,e){let n={type:"array"};return t.type?._def&&t.type?._def?.typeName!==z.ZodAny&&(n.items=ne(t.type._def,{...e,currentPath:[...e.currentPath,"items"]})),t.minLength&&xe(n,"minItems",t.minLength.value,t.minLength.message,e),t.maxLength&&xe(n,"maxItems",t.maxLength.value,t.maxLength.message,e),t.exactLength&&(xe(n,"minItems",t.exactLength.value,t.exactLength.message,e),xe(n,"maxItems",t.exactLength.value,t.exactLength.message,e)),n}function Fx(t,e){let n={type:"integer",format:"int64"};if(!t.checks)return n;for(let i of t.checks)switch(i.kind){case"min":e.target==="jsonSchema7"?i.inclusive?xe(n,"minimum",i.value,i.message,e):xe(n,"exclusiveMinimum",i.value,i.message,e):(i.inclusive||(n.exclusiveMinimum=!0),xe(n,"minimum",i.value,i.message,e));break;case"max":e.target==="jsonSchema7"?i.inclusive?xe(n,"maximum",i.value,i.message,e):xe(n,"exclusiveMaximum",i.value,i.message,e):(i.inclusive||(n.exclusiveMaximum=!0),xe(n,"maximum",i.value,i.message,e));break;case"multipleOf":xe(n,"multipleOf",i.value,i.message,e);break}return n}function Vx(){return{type:"boolean"}}function Up(t,e){return ne(t.type._def,e)}var qx=(t,e)=>ne(t.innerType._def,e);function oy(t,e,n){let i=n??e.dateStrategy;if(Array.isArray(i))return{anyOf:i.map((r,o)=>oy(t,e,r))};switch(i){case"string":case"format:date-time":return{type:"string",format:"date-time"};case"format:date":return{type:"string",format:"date"};case"integer":return uB(t,e)}}var uB=(t,e)=>{let n={type:"integer",format:"unix-time"};if(e.target==="openApi3")return n;for(let i of t.checks)switch(i.kind){case"min":xe(n,"minimum",i.value,i.message,e);break;case"max":xe(n,"maximum",i.value,i.message,e);break}return n};function Hx(t,e){return{...ne(t.innerType._def,e),default:t.defaultValue()}}function Gx(t,e){return e.effectStrategy==="input"?ne(t.schema._def,e):et(e)}function Zx(t){return{type:"string",enum:Array.from(t.values)}}var dB=t=>"type"in t&&t.type==="string"?!1:"allOf"in t;function Wx(t,e){let n=[ne(t.left._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),ne(t.right._def,{...e,currentPath:[...e.currentPath,"allOf","1"]})].filter(o=>!!o),i=e.target==="jsonSchema2019-09"?{unevaluatedProperties:!1}:void 0,r=[];return n.forEach(o=>{if(dB(o))r.push(...o.allOf),o.unevaluatedProperties===void 0&&(i=void 0);else{let a=o;if("additionalProperties"in o&&o.additionalProperties===!1){let{additionalProperties:c,...l}=o;a=l}else i=void 0;r.push(a)}}),r.length?{allOf:r,...i}:void 0}function Jx(t,e){let n=typeof t.value;return n!=="bigint"&&n!=="number"&&n!=="boolean"&&n!=="string"?{type:Array.isArray(t.value)?"array":"object"}:e.target==="openApi3"?{type:n==="bigint"?"integer":n,enum:[t.value]}:{type:n==="bigint"?"integer":n,const:t.value}}var sy,Kn={cuid:/^[cC][^\s-]{8,}$/,cuid2:/^[0-9a-z]+$/,ulid:/^[0-9A-HJKMNP-TV-Z]{26}$/,email:/^(?!\.)(?!.*\.\.)([a-zA-Z0-9_'+\-\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\-]*\.)+[a-zA-Z]{2,}$/,emoji:()=>(sy===void 0&&(sy=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),sy),uuid:/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/,ipv4:/^(?:(?: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])$/,ipv4Cidr:/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,ipv6:/^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/,ipv6Cidr:/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,base64:/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,base64url:/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,nanoid:/^[a-zA-Z0-9_-]{21}$/,jwt:/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/};function Mp(t,e){let n={type:"string"};if(t.checks)for(let i of t.checks)switch(i.kind){case"min":xe(n,"minLength",typeof n.minLength=="number"?Math.max(n.minLength,i.value):i.value,i.message,e);break;case"max":xe(n,"maxLength",typeof n.maxLength=="number"?Math.min(n.maxLength,i.value):i.value,i.message,e);break;case"email":switch(e.emailStrategy){case"format:email":Fn(n,"email",i.message,e);break;case"format:idn-email":Fn(n,"idn-email",i.message,e);break;case"pattern:zod":Kt(n,Kn.email,i.message,e);break}break;case"url":Fn(n,"uri",i.message,e);break;case"uuid":Fn(n,"uuid",i.message,e);break;case"regex":Kt(n,i.regex,i.message,e);break;case"cuid":Kt(n,Kn.cuid,i.message,e);break;case"cuid2":Kt(n,Kn.cuid2,i.message,e);break;case"startsWith":Kt(n,RegExp(`^${ay(i.value,e)}`),i.message,e);break;case"endsWith":Kt(n,RegExp(`${ay(i.value,e)}$`),i.message,e);break;case"datetime":Fn(n,"date-time",i.message,e);break;case"date":Fn(n,"date",i.message,e);break;case"time":Fn(n,"time",i.message,e);break;case"duration":Fn(n,"duration",i.message,e);break;case"length":xe(n,"minLength",typeof n.minLength=="number"?Math.max(n.minLength,i.value):i.value,i.message,e),xe(n,"maxLength",typeof n.maxLength=="number"?Math.min(n.maxLength,i.value):i.value,i.message,e);break;case"includes":{Kt(n,RegExp(ay(i.value,e)),i.message,e);break}case"ip":{i.version!=="v6"&&Fn(n,"ipv4",i.message,e),i.version!=="v4"&&Fn(n,"ipv6",i.message,e);break}case"base64url":Kt(n,Kn.base64url,i.message,e);break;case"jwt":Kt(n,Kn.jwt,i.message,e);break;case"cidr":{i.version!=="v6"&&Kt(n,Kn.ipv4Cidr,i.message,e),i.version!=="v4"&&Kt(n,Kn.ipv6Cidr,i.message,e);break}case"emoji":Kt(n,Kn.emoji(),i.message,e);break;case"ulid":{Kt(n,Kn.ulid,i.message,e);break}case"base64":{switch(e.base64Strategy){case"format:binary":{Fn(n,"binary",i.message,e);break}case"contentEncoding:base64":{xe(n,"contentEncoding","base64",i.message,e);break}case"pattern:zod":{Kt(n,Kn.base64,i.message,e);break}}break}case"nanoid":Kt(n,Kn.nanoid,i.message,e);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return n}function ay(t,e){return e.patternStrategy==="escape"?pB(t):t}var mB=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function pB(t){let e="";for(let n=0;n<t.length;n++)mB.has(t[n])||(e+="\\"),e+=t[n];return e}function Fn(t,e,n,i){t.format||t.anyOf?.some(r=>r.format)?(t.anyOf||(t.anyOf=[]),t.format&&(t.anyOf.push({format:t.format,...t.errorMessage&&i.errorMessages&&{errorMessage:{format:t.errorMessage.format}}}),delete t.format,t.errorMessage&&(delete t.errorMessage.format,Object.keys(t.errorMessage).length===0&&delete t.errorMessage)),t.anyOf.push({format:e,...n&&i.errorMessages&&{errorMessage:{format:n}}})):xe(t,"format",e,n,i)}function Kt(t,e,n,i){t.pattern||t.allOf?.some(r=>r.pattern)?(t.allOf||(t.allOf=[]),t.pattern&&(t.allOf.push({pattern:t.pattern,...t.errorMessage&&i.errorMessages&&{errorMessage:{pattern:t.errorMessage.pattern}}}),delete t.pattern,t.errorMessage&&(delete t.errorMessage.pattern,Object.keys(t.errorMessage).length===0&&delete t.errorMessage)),t.allOf.push({pattern:Yx(e,i),...n&&i.errorMessages&&{errorMessage:{pattern:n}}})):xe(t,"pattern",Yx(e,i),n,i)}function Yx(t,e){if(!e.applyRegexFlags||!t.flags)return t.source;let n={i:t.flags.includes("i"),m:t.flags.includes("m"),s:t.flags.includes("s")},i=n.i?t.source.toLowerCase():t.source,r="",o=!1,a=!1,c=!1;for(let l=0;l<i.length;l++){if(o){r+=i[l],o=!1;continue}if(n.i){if(a){if(i[l].match(/[a-z]/)){c?(r+=i[l],r+=`${i[l-2]}-${i[l]}`.toUpperCase(),c=!1):i[l+1]==="-"&&i[l+2]?.match(/[a-z]/)?(r+=i[l],c=!0):r+=`${i[l]}${i[l].toUpperCase()}`;continue}}else if(i[l].match(/[a-z]/)){r+=`[${i[l]}${i[l].toUpperCase()}]`;continue}}if(n.m){if(i[l]==="^"){r+=`(^|(?<=[\r
|
|
103
|
-
]))`;continue}else if(i[l]==="$"){r+=`($|(?=[\r
|
|
104
|
-
]))`;continue}}if(n.s&&i[l]==="."){r+=a?`${i[l]}\r
|
|
105
|
-
`:`[${i[l]}\r
|
|
106
|
-
]`;continue}r+=i[l],i[l]==="\\"?o=!0:a&&i[l]==="]"?a=!1:!a&&i[l]==="["&&(a=!0)}try{new RegExp(r)}catch{return console.warn(`Could not convert regex pattern at ${e.currentPath.join("/")} to a flag-independent form! Falling back to the flag-ignorant source`),t.source}return r}function jp(t,e){if(e.target==="openAi"&&console.warn("Warning: OpenAI may not support records in schemas! Try an array of key-value pairs instead."),e.target==="openApi3"&&t.keyType?._def.typeName===z.ZodEnum)return{type:"object",required:t.keyType._def.values,properties:t.keyType._def.values.reduce((i,r)=>({...i,[r]:ne(t.valueType._def,{...e,currentPath:[...e.currentPath,"properties",r]})??et(e)}),{}),additionalProperties:e.rejectedAdditionalProperties};let n={type:"object",additionalProperties:ne(t.valueType._def,{...e,currentPath:[...e.currentPath,"additionalProperties"]})??e.allowedAdditionalProperties};if(e.target==="openApi3")return n;if(t.keyType?._def.typeName===z.ZodString&&t.keyType._def.checks?.length){let{type:i,...r}=Mp(t.keyType._def,e);return{...n,propertyNames:r}}else{if(t.keyType?._def.typeName===z.ZodEnum)return{...n,propertyNames:{enum:t.keyType._def.values}};if(t.keyType?._def.typeName===z.ZodBranded&&t.keyType._def.type._def.typeName===z.ZodString&&t.keyType._def.type._def.checks?.length){let{type:i,...r}=Up(t.keyType._def,e);return{...n,propertyNames:r}}}return n}function Xx(t,e){if(e.mapStrategy==="record")return jp(t,e);let n=ne(t.keyType._def,{...e,currentPath:[...e.currentPath,"items","items","0"]})||et(e),i=ne(t.valueType._def,{...e,currentPath:[...e.currentPath,"items","items","1"]})||et(e);return{type:"array",maxItems:125,items:{type:"array",items:[n,i],minItems:2,maxItems:2}}}function Qx(t){let e=t.values,i=Object.keys(t.values).filter(o=>typeof e[e[o]]!="number").map(o=>e[o]),r=Array.from(new Set(i.map(o=>typeof o)));return{type:r.length===1?r[0]==="string"?"string":"number":["string","number"],enum:i}}function eO(t){return t.target==="openAi"?void 0:{not:et({...t,currentPath:[...t.currentPath,"not"]})}}function tO(t){return t.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}var sl={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function rO(t,e){if(e.target==="openApi3")return nO(t,e);let n=t.options instanceof Map?Array.from(t.options.values()):t.options;if(n.every(i=>i._def.typeName in sl&&(!i._def.checks||!i._def.checks.length))){let i=n.reduce((r,o)=>{let a=sl[o._def.typeName];return a&&!r.includes(a)?[...r,a]:r},[]);return{type:i.length>1?i:i[0]}}else if(n.every(i=>i._def.typeName==="ZodLiteral"&&!i.description)){let i=n.reduce((r,o)=>{let a=typeof o._def.value;switch(a){case"string":case"number":case"boolean":return[...r,a];case"bigint":return[...r,"integer"];case"object":if(o._def.value===null)return[...r,"null"];default:return r}},[]);if(i.length===n.length){let r=i.filter((o,a,c)=>c.indexOf(o)===a);return{type:r.length>1?r:r[0],enum:n.reduce((o,a)=>o.includes(a._def.value)?o:[...o,a._def.value],[])}}}else if(n.every(i=>i._def.typeName==="ZodEnum"))return{type:"string",enum:n.reduce((i,r)=>[...i,...r._def.values.filter(o=>!i.includes(o))],[])};return nO(t,e)}var nO=(t,e)=>{let n=(t.options instanceof Map?Array.from(t.options.values()):t.options).map((i,r)=>ne(i._def,{...e,currentPath:[...e.currentPath,"anyOf",`${r}`]})).filter(i=>!!i&&(!e.strictUnions||typeof i=="object"&&Object.keys(i).length>0));return n.length?{anyOf:n}:void 0};function iO(t,e){if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes(t.innerType._def.typeName)&&(!t.innerType._def.checks||!t.innerType._def.checks.length))return e.target==="openApi3"?{type:sl[t.innerType._def.typeName],nullable:!0}:{type:[sl[t.innerType._def.typeName],"null"]};if(e.target==="openApi3"){let i=ne(t.innerType._def,{...e,currentPath:[...e.currentPath]});return i&&"$ref"in i?{allOf:[i],nullable:!0}:i&&{...i,nullable:!0}}let n=ne(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","0"]});return n&&{anyOf:[n,{type:"null"}]}}function oO(t,e){let n={type:"number"};if(!t.checks)return n;for(let i of t.checks)switch(i.kind){case"int":n.type="integer",iy(n,"type",i.message,e);break;case"min":e.target==="jsonSchema7"?i.inclusive?xe(n,"minimum",i.value,i.message,e):xe(n,"exclusiveMinimum",i.value,i.message,e):(i.inclusive||(n.exclusiveMinimum=!0),xe(n,"minimum",i.value,i.message,e));break;case"max":e.target==="jsonSchema7"?i.inclusive?xe(n,"maximum",i.value,i.message,e):xe(n,"exclusiveMaximum",i.value,i.message,e):(i.inclusive||(n.exclusiveMaximum=!0),xe(n,"maximum",i.value,i.message,e));break;case"multipleOf":xe(n,"multipleOf",i.value,i.message,e);break}return n}function sO(t,e){let n=e.target==="openAi",i={type:"object",properties:{}},r=[],o=t.shape();for(let c in o){let l=o[c];if(l===void 0||l._def===void 0)continue;let u=gB(l);u&&n&&(l._def.typeName==="ZodOptional"&&(l=l._def.innerType),l.isNullable()||(l=l.nullable()),u=!1);let d=ne(l._def,{...e,currentPath:[...e.currentPath,"properties",c],propertyPath:[...e.currentPath,"properties",c]});d!==void 0&&(i.properties[c]=d,u||r.push(c))}r.length&&(i.required=r);let a=fB(t,e);return a!==void 0&&(i.additionalProperties=a),i}function fB(t,e){if(t.catchall._def.typeName!=="ZodNever")return ne(t.catchall._def,{...e,currentPath:[...e.currentPath,"additionalProperties"]});switch(t.unknownKeys){case"passthrough":return e.allowedAdditionalProperties;case"strict":return e.rejectedAdditionalProperties;case"strip":return e.removeAdditionalStrategy==="strict"?e.allowedAdditionalProperties:e.rejectedAdditionalProperties}}function gB(t){try{return t.isOptional()}catch{return!0}}var aO=(t,e)=>{if(e.currentPath.toString()===e.propertyPath?.toString())return ne(t.innerType._def,e);let n=ne(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","1"]});return n?{anyOf:[{not:et(e)},n]}:et(e)};var cO=(t,e)=>{if(e.pipeStrategy==="input")return ne(t.in._def,e);if(e.pipeStrategy==="output")return ne(t.out._def,e);let n=ne(t.in._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),i=ne(t.out._def,{...e,currentPath:[...e.currentPath,"allOf",n?"1":"0"]});return{allOf:[n,i].filter(r=>r!==void 0)}};function lO(t,e){return ne(t.type._def,e)}function uO(t,e){let i={type:"array",uniqueItems:!0,items:ne(t.valueType._def,{...e,currentPath:[...e.currentPath,"items"]})};return t.minSize&&xe(i,"minItems",t.minSize.value,t.minSize.message,e),t.maxSize&&xe(i,"maxItems",t.maxSize.value,t.maxSize.message,e),i}function dO(t,e){return t.rest?{type:"array",minItems:t.items.length,items:t.items.map((n,i)=>ne(n._def,{...e,currentPath:[...e.currentPath,"items",`${i}`]})).reduce((n,i)=>i===void 0?n:[...n,i],[]),additionalItems:ne(t.rest._def,{...e,currentPath:[...e.currentPath,"additionalItems"]})}:{type:"array",minItems:t.items.length,maxItems:t.items.length,items:t.items.map((n,i)=>ne(n._def,{...e,currentPath:[...e.currentPath,"items",`${i}`]})).reduce((n,i)=>i===void 0?n:[...n,i],[])}}function mO(t){return{not:et(t)}}function pO(t){return et(t)}var fO=(t,e)=>ne(t.innerType._def,e);var gO=(t,e,n)=>{switch(e){case z.ZodString:return Mp(t,n);case z.ZodNumber:return oO(t,n);case z.ZodObject:return sO(t,n);case z.ZodBigInt:return Fx(t,n);case z.ZodBoolean:return Vx();case z.ZodDate:return oy(t,n);case z.ZodUndefined:return mO(n);case z.ZodNull:return tO(n);case z.ZodArray:return Kx(t,n);case z.ZodUnion:case z.ZodDiscriminatedUnion:return rO(t,n);case z.ZodIntersection:return Wx(t,n);case z.ZodTuple:return dO(t,n);case z.ZodRecord:return jp(t,n);case z.ZodLiteral:return Jx(t,n);case z.ZodEnum:return Zx(t);case z.ZodNativeEnum:return Qx(t);case z.ZodNullable:return iO(t,n);case z.ZodOptional:return aO(t,n);case z.ZodMap:return Xx(t,n);case z.ZodSet:return uO(t,n);case z.ZodLazy:return()=>t.getter()._def;case z.ZodPromise:return lO(t,n);case z.ZodNaN:case z.ZodNever:return eO(n);case z.ZodEffects:return Gx(t,n);case z.ZodAny:return et(n);case z.ZodUnknown:return pO(n);case z.ZodDefault:return Hx(t,n);case z.ZodBranded:return Up(t,n);case z.ZodReadonly:return fO(t,n);case z.ZodCatch:return qx(t,n);case z.ZodPipeline:return cO(t,n);case z.ZodFunction:case z.ZodVoid:case z.ZodSymbol:return;default:return(i=>{})(e)}};function ne(t,e,n=!1){let i=e.seen.get(t);if(e.override){let c=e.override?.(t,e,i,n);if(c!==Mx)return c}if(i&&!n){let c=hB(i,e);if(c!==void 0)return c}let r={def:t,path:e.currentPath,jsonSchema:void 0};e.seen.set(t,r);let o=gO(t,t.typeName,e),a=typeof o=="function"?ne(o(),e):o;if(a&&bB(t,e,a),e.postProcess){let c=e.postProcess(a,t,e);return r.jsonSchema=a,c}return r.jsonSchema=a,a}var hB=(t,e)=>{switch(e.$refStrategy){case"root":return{$ref:t.path.join("/")};case"relative":return{$ref:Lp(e.currentPath,t.path)};case"none":case"seen":return t.path.length<e.currentPath.length&&t.path.every((n,i)=>e.currentPath[i]===n)?(console.warn(`Recursive reference detected at ${e.currentPath.join("/")}! Defaulting to any`),et(e)):e.$refStrategy==="seen"?et(e):void 0}},bB=(t,e,n)=>(t.description&&(n.description=t.description,e.markdownDescription&&(n.markdownDescription=t.description)),n);var cy=(t,e)=>{let n=Bx(e),i=typeof e=="object"&&e.definitions?Object.entries(e.definitions).reduce((l,[u,d])=>({...l,[u]:ne(d._def,{...n,currentPath:[...n.basePath,n.definitionPath,u]},!0)??et(n)}),{}):void 0,r=typeof e=="string"?e:e?.nameStrategy==="title"?void 0:e?.name,o=ne(t._def,r===void 0?n:{...n,currentPath:[...n.basePath,n.definitionPath,r]},!1)??et(n),a=typeof e=="object"&&e.name!==void 0&&e.nameStrategy==="title"?e.name:void 0;a!==void 0&&(o.title=a),n.flags.hasReferencedOpenAiAnyType&&(i||(i={}),i[n.openAiAnyTypeName]||(i[n.openAiAnyTypeName]={type:["string","number","integer","boolean","array","null"],items:{$ref:n.$refStrategy==="relative"?"1":[...n.basePath,n.definitionPath,n.openAiAnyTypeName].join("/")}}));let c=r===void 0?i?{...o,[n.definitionPath]:i}:o:{$ref:[...n.$refStrategy==="relative"?[]:n.basePath,n.definitionPath,r].join("/"),[n.definitionPath]:{...i,[r]:o}};return n.target==="jsonSchema7"?c.$schema="http://json-schema.org/draft-07/schema#":(n.target==="jsonSchema2019-09"||n.target==="openAi")&&(c.$schema="https://json-schema.org/draft/2019-09/schema#"),n.target==="openAi"&&("anyOf"in c||"oneOf"in c||"allOf"in c||"type"in c&&Array.isArray(c.type))&&console.warn("Warning: OpenAI may not support schemas with unions as roots! Try wrapping it in an object property."),c};function _B(t){return!t||t==="jsonSchema7"||t==="draft-7"?"draft-7":t==="jsonSchema2019-09"||t==="draft-2020-12"?"draft-2020-12":"draft-7"}function ly(t,e){return ur(t)?Qi(t,{target:_B(e?.target),io:e?.pipeStrategy??"input"}):cy(t,{strictUnions:e?.strictUnions??!0,pipeStrategy:e?.pipeStrategy??"input"})}function uy(t){let n=fi(t)?.method;if(!n)throw new Error("Schema is missing a method literal");let i=Ds(n);if(typeof i!="string")throw new Error("Schema method literal must be a string");return i}function dy(t,e){let n=pi(t,e);if(!n.success)throw n.error;return n.data}var vB=6e4,Bp=class{constructor(e){this._options=e,this._requestMessageId=0,this._requestHandlers=new Map,this._requestHandlerAbortControllers=new Map,this._notificationHandlers=new Map,this._responseHandlers=new Map,this._progressHandlers=new Map,this._timeoutInfo=new Map,this._pendingDebouncedNotifications=new Set,this._taskProgressTokens=new Map,this._requestResolvers=new Map,this.setNotificationHandler(pp,n=>{this._oncancel(n)}),this.setNotificationHandler(gp,n=>{this._onprogress(n)}),this.setRequestHandler(fp,n=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(hp,async(n,i)=>{let r=await this._taskStore.getTask(n.params.taskId,i.sessionId);if(!r)throw new J(Q.InvalidParams,"Failed to retrieve task: Task not found");return{...r}}),this.setRequestHandler(_p,async(n,i)=>{let r=async()=>{let o=n.params.taskId;if(this._taskMessageQueue){let c;for(;c=await this._taskMessageQueue.dequeue(o,i.sessionId);){if(c.type==="response"||c.type==="error"){let l=c.message,u=l.id,d=this._requestResolvers.get(u);if(d)if(this._requestResolvers.delete(u),c.type==="response")d(l);else{let m=l,f=new J(m.error.code,m.error.message,m.error.data);d(f)}else{let m=c.type==="response"?"Response":"Error";this._onerror(new Error(`${m} handler missing for request ${u}`))}continue}await this._transport?.send(c.message,{relatedRequestId:i.requestId})}}let a=await this._taskStore.getTask(o,i.sessionId);if(!a)throw new J(Q.InvalidParams,`Task not found: ${o}`);if(!gi(a.status))return await this._waitForTaskUpdate(o,i.signal),await r();if(gi(a.status)){let c=await this._taskStore.getTaskResult(o,i.sessionId);return this._clearTaskQueue(o),{...c,_meta:{...c._meta,[li]:{taskId:o}}}}return await r()};return await r()}),this.setRequestHandler(vp,async(n,i)=>{try{let{tasks:r,nextCursor:o}=await this._taskStore.listTasks(n.params?.cursor,i.sessionId);return{tasks:r,nextCursor:o,_meta:{}}}catch(r){throw new J(Q.InvalidParams,`Failed to list tasks: ${r instanceof Error?r.message:String(r)}`)}}),this.setRequestHandler(kp,async(n,i)=>{try{let r=await this._taskStore.getTask(n.params.taskId,i.sessionId);if(!r)throw new J(Q.InvalidParams,`Task not found: ${n.params.taskId}`);if(gi(r.status))throw new J(Q.InvalidParams,`Cannot cancel task in terminal status: ${r.status}`);await this._taskStore.updateTaskStatus(n.params.taskId,"cancelled","Client cancelled task execution.",i.sessionId),this._clearTaskQueue(n.params.taskId);let o=await this._taskStore.getTask(n.params.taskId,i.sessionId);if(!o)throw new J(Q.InvalidParams,`Task not found after cancellation: ${n.params.taskId}`);return{_meta:{},...o}}catch(r){throw r instanceof J?r:new J(Q.InvalidRequest,`Failed to cancel task: ${r instanceof Error?r.message:String(r)}`)}}))}async _oncancel(e){if(!e.params.requestId)return;this._requestHandlerAbortControllers.get(e.params.requestId)?.abort(e.params.reason)}_setupTimeout(e,n,i,r,o=!1){this._timeoutInfo.set(e,{timeoutId:setTimeout(r,n),startTime:Date.now(),timeout:n,maxTotalTimeout:i,resetTimeoutOnProgress:o,onTimeout:r})}_resetTimeout(e){let n=this._timeoutInfo.get(e);if(!n)return!1;let i=Date.now()-n.startTime;if(n.maxTotalTimeout&&i>=n.maxTotalTimeout)throw this._timeoutInfo.delete(e),J.fromError(Q.RequestTimeout,"Maximum total timeout exceeded",{maxTotalTimeout:n.maxTotalTimeout,totalElapsed:i});return clearTimeout(n.timeoutId),n.timeoutId=setTimeout(n.onTimeout,n.timeout),!0}_cleanupTimeout(e){let n=this._timeoutInfo.get(e);n&&(clearTimeout(n.timeoutId),this._timeoutInfo.delete(e))}async connect(e){if(this._transport)throw new Error("Already connected to a transport. Call close() before connecting to a new transport, or use a separate Protocol instance per connection.");this._transport=e;let n=this.transport?.onclose;this._transport.onclose=()=>{n?.(),this._onclose()};let i=this.transport?.onerror;this._transport.onerror=o=>{i?.(o),this._onerror(o)};let r=this._transport?.onmessage;this._transport.onmessage=(o,a)=>{r?.(o,a),Mc(o)||bx(o)?this._onresponse(o):Dv(o)?this._onrequest(o,a):hx(o)?this._onnotification(o):this._onerror(new Error(`Unknown message type: ${JSON.stringify(o)}`))},await this._transport.start()}_onclose(){let e=this._responseHandlers;this._responseHandlers=new Map,this._progressHandlers.clear(),this._taskProgressTokens.clear(),this._pendingDebouncedNotifications.clear();for(let i of this._timeoutInfo.values())clearTimeout(i.timeoutId);this._timeoutInfo.clear();for(let i of this._requestHandlerAbortControllers.values())i.abort();this._requestHandlerAbortControllers.clear();let n=J.fromError(Q.ConnectionClosed,"Connection closed");this._transport=void 0,this.onclose?.();for(let i of e.values())i(n)}_onerror(e){this.onerror?.(e)}_onnotification(e){let n=this._notificationHandlers.get(e.method)??this.fallbackNotificationHandler;n!==void 0&&Promise.resolve().then(()=>n(e)).catch(i=>this._onerror(new Error(`Uncaught error in notification handler: ${i}`)))}_onrequest(e,n){let i=this._requestHandlers.get(e.method)??this.fallbackRequestHandler,r=this._transport,o=e.params?._meta?.[li]?.taskId;if(i===void 0){let d={jsonrpc:"2.0",id:e.id,error:{code:Q.MethodNotFound,message:"Method not found"}};o&&this._taskMessageQueue?this._enqueueTaskMessage(o,{type:"error",message:d,timestamp:Date.now()},r?.sessionId).catch(m=>this._onerror(new Error(`Failed to enqueue error response: ${m}`))):r?.send(d).catch(m=>this._onerror(new Error(`Failed to send an error response: ${m}`)));return}let a=new AbortController;this._requestHandlerAbortControllers.set(e.id,a);let c=px(e.params)?e.params.task:void 0,l=this._taskStore?this.requestTaskStore(e,r?.sessionId):void 0,u={signal:a.signal,sessionId:r?.sessionId,_meta:e.params?._meta,sendNotification:async d=>{if(a.signal.aborted)return;let m={relatedRequestId:e.id};o&&(m.relatedTask={taskId:o}),await this.notification(d,m)},sendRequest:async(d,m,f)=>{if(a.signal.aborted)throw new J(Q.ConnectionClosed,"Request was cancelled");let p={...f,relatedRequestId:e.id};o&&!p.relatedTask&&(p.relatedTask={taskId:o});let g=p.relatedTask?.taskId??o;return g&&l&&await l.updateTaskStatus(g,"input_required"),await this.request(d,m,p)},authInfo:n?.authInfo,requestId:e.id,requestInfo:n?.requestInfo,taskId:o,taskStore:l,taskRequestedTtl:c?.ttl,closeSSEStream:n?.closeSSEStream,closeStandaloneSSEStream:n?.closeStandaloneSSEStream};Promise.resolve().then(()=>{c&&this.assertTaskHandlerCapability(e.method)}).then(()=>i(e,u)).then(async d=>{if(a.signal.aborted)return;let m={result:d,jsonrpc:"2.0",id:e.id};o&&this._taskMessageQueue?await this._enqueueTaskMessage(o,{type:"response",message:m,timestamp:Date.now()},r?.sessionId):await r?.send(m)},async d=>{if(a.signal.aborted)return;let m={jsonrpc:"2.0",id:e.id,error:{code:Number.isSafeInteger(d.code)?d.code:Q.InternalError,message:d.message??"Internal error",...d.data!==void 0&&{data:d.data}}};o&&this._taskMessageQueue?await this._enqueueTaskMessage(o,{type:"error",message:m,timestamp:Date.now()},r?.sessionId):await r?.send(m)}).catch(d=>this._onerror(new Error(`Failed to send response: ${d}`))).finally(()=>{this._requestHandlerAbortControllers.get(e.id)===a&&this._requestHandlerAbortControllers.delete(e.id)})}_onprogress(e){let{progressToken:n,...i}=e.params,r=Number(n),o=this._progressHandlers.get(r);if(!o){this._onerror(new Error(`Received a progress notification for an unknown token: ${JSON.stringify(e)}`));return}let a=this._responseHandlers.get(r),c=this._timeoutInfo.get(r);if(c&&a&&c.resetTimeoutOnProgress)try{this._resetTimeout(r)}catch(l){this._responseHandlers.delete(r),this._progressHandlers.delete(r),this._cleanupTimeout(r),a(l);return}o(i)}_onresponse(e){let n=Number(e.id),i=this._requestResolvers.get(n);if(i){if(this._requestResolvers.delete(n),Mc(e))i(e);else{let a=new J(e.error.code,e.error.message,e.error.data);i(a)}return}let r=this._responseHandlers.get(n);if(r===void 0){this._onerror(new Error(`Received a response for an unknown message ID: ${JSON.stringify(e)}`));return}this._responseHandlers.delete(n),this._cleanupTimeout(n);let o=!1;if(Mc(e)&&e.result&&typeof e.result=="object"){let a=e.result;if(a.task&&typeof a.task=="object"){let c=a.task;typeof c.taskId=="string"&&(o=!0,this._taskProgressTokens.set(c.taskId,n))}}if(o||this._progressHandlers.delete(n),Mc(e))r(e);else{let a=J.fromError(e.error.code,e.error.message,e.error.data);r(a)}}get transport(){return this._transport}async close(){await this._transport?.close()}async*requestStream(e,n,i){let{task:r}=i??{};if(!r){try{yield{type:"result",result:await this.request(e,n,i)}}catch(a){yield{type:"error",error:a instanceof J?a:new J(Q.InternalError,String(a))}}return}let o;try{let a=await this.request(e,bs,i);if(a.task)o=a.task.taskId,yield{type:"taskCreated",task:a.task};else throw new J(Q.InternalError,"Task creation did not return a task");for(;;){let c=await this.getTask({taskId:o},i);if(yield{type:"taskStatus",task:c},gi(c.status)){c.status==="completed"?yield{type:"result",result:await this.getTaskResult({taskId:o},n,i)}:c.status==="failed"?yield{type:"error",error:new J(Q.InternalError,`Task ${o} failed`)}:c.status==="cancelled"&&(yield{type:"error",error:new J(Q.InternalError,`Task ${o} was cancelled`)});return}if(c.status==="input_required"){yield{type:"result",result:await this.getTaskResult({taskId:o},n,i)};return}let l=c.pollInterval??this._options?.defaultTaskPollInterval??1e3;await new Promise(u=>setTimeout(u,l)),i?.signal?.throwIfAborted()}}catch(a){yield{type:"error",error:a instanceof J?a:new J(Q.InternalError,String(a))}}}request(e,n,i){let{relatedRequestId:r,resumptionToken:o,onresumptiontoken:a,task:c,relatedTask:l}=i??{};return new Promise((u,d)=>{let m=$=>{d($)};if(!this._transport){m(new Error("Not connected"));return}if(this._options?.enforceStrictCapabilities===!0)try{this.assertCapabilityForMethod(e.method),c&&this.assertTaskCapability(e.method)}catch($){m($);return}i?.signal?.throwIfAborted();let f=this._requestMessageId++,p={...e,jsonrpc:"2.0",id:f};i?.onprogress&&(this._progressHandlers.set(f,i.onprogress),p.params={...e.params,_meta:{...e.params?._meta||{},progressToken:f}}),c&&(p.params={...p.params,task:c}),l&&(p.params={...p.params,_meta:{...p.params?._meta||{},[li]:l}});let g=$=>{this._responseHandlers.delete(f),this._progressHandlers.delete(f),this._cleanupTimeout(f),this._transport?.send({jsonrpc:"2.0",method:"notifications/cancelled",params:{requestId:f,reason:String($)}},{relatedRequestId:r,resumptionToken:o,onresumptiontoken:a}).catch(D=>this._onerror(new Error(`Failed to send cancellation: ${D}`)));let R=$ instanceof J?$:new J(Q.RequestTimeout,String($));d(R)};this._responseHandlers.set(f,$=>{if(!i?.signal?.aborted){if($ instanceof Error)return d($);try{let R=pi(n,$.result);R.success?u(R.data):d(R.error)}catch(R){d(R)}}}),i?.signal?.addEventListener("abort",()=>{g(i?.signal?.reason)});let b=i?.timeout??vB,_=()=>g(J.fromError(Q.RequestTimeout,"Request timed out",{timeout:b}));this._setupTimeout(f,b,i?.maxTotalTimeout,_,i?.resetTimeoutOnProgress??!1);let T=l?.taskId;if(T){let $=R=>{let D=this._responseHandlers.get(f);D?D(R):this._onerror(new Error(`Response handler missing for side-channeled request ${f}`))};this._requestResolvers.set(f,$),this._enqueueTaskMessage(T,{type:"request",message:p,timestamp:Date.now()}).catch(R=>{this._cleanupTimeout(f),d(R)})}else this._transport.send(p,{relatedRequestId:r,resumptionToken:o,onresumptiontoken:a}).catch($=>{this._cleanupTimeout(f),d($)})})}async getTask(e,n){return this.request({method:"tasks/get",params:e},bp,n)}async getTaskResult(e,n,i){return this.request({method:"tasks/result",params:e},n,i)}async listTasks(e,n){return this.request({method:"tasks/list",params:e},yp,n)}async cancelTask(e,n){return this.request({method:"tasks/cancel",params:e},yx,n)}async notification(e,n){if(!this._transport)throw new Error("Not connected");this.assertNotificationCapability(e.method);let i=n?.relatedTask?.taskId;if(i){let c={...e,jsonrpc:"2.0",params:{...e.params,_meta:{...e.params?._meta||{},[li]:n.relatedTask}}};await this._enqueueTaskMessage(i,{type:"notification",message:c,timestamp:Date.now()});return}if((this._options?.debouncedNotificationMethods??[]).includes(e.method)&&!e.params&&!n?.relatedRequestId&&!n?.relatedTask){if(this._pendingDebouncedNotifications.has(e.method))return;this._pendingDebouncedNotifications.add(e.method),Promise.resolve().then(()=>{if(this._pendingDebouncedNotifications.delete(e.method),!this._transport)return;let c={...e,jsonrpc:"2.0"};n?.relatedTask&&(c={...c,params:{...c.params,_meta:{...c.params?._meta||{},[li]:n.relatedTask}}}),this._transport?.send(c,n).catch(l=>this._onerror(l))});return}let a={...e,jsonrpc:"2.0"};n?.relatedTask&&(a={...a,params:{...a.params,_meta:{...a.params?._meta||{},[li]:n.relatedTask}}}),await this._transport.send(a,n)}setRequestHandler(e,n){let i=uy(e);this.assertRequestHandlerCapability(i),this._requestHandlers.set(i,(r,o)=>{let a=dy(e,r);return Promise.resolve(n(a,o))})}removeRequestHandler(e){this._requestHandlers.delete(e)}assertCanSetRequestHandler(e){if(this._requestHandlers.has(e))throw new Error(`A request handler for ${e} already exists, which would be overridden`)}setNotificationHandler(e,n){let i=uy(e);this._notificationHandlers.set(i,r=>{let o=dy(e,r);return Promise.resolve(n(o))})}removeNotificationHandler(e){this._notificationHandlers.delete(e)}_cleanupTaskProgressHandler(e){let n=this._taskProgressTokens.get(e);n!==void 0&&(this._progressHandlers.delete(n),this._taskProgressTokens.delete(e))}async _enqueueTaskMessage(e,n,i){if(!this._taskStore||!this._taskMessageQueue)throw new Error("Cannot enqueue task message: taskStore and taskMessageQueue are not configured");let r=this._options?.maxTaskQueueSize;await this._taskMessageQueue.enqueue(e,n,i,r)}async _clearTaskQueue(e,n){if(this._taskMessageQueue){let i=await this._taskMessageQueue.dequeueAll(e,n);for(let r of i)if(r.type==="request"&&Dv(r.message)){let o=r.message.id,a=this._requestResolvers.get(o);a?(a(new J(Q.InternalError,"Task cancelled or completed")),this._requestResolvers.delete(o)):this._onerror(new Error(`Resolver missing for request ${o} during task ${e} cleanup`))}}}async _waitForTaskUpdate(e,n){let i=this._options?.defaultTaskPollInterval??1e3;try{let r=await this._taskStore?.getTask(e);r?.pollInterval&&(i=r.pollInterval)}catch{}return new Promise((r,o)=>{if(n.aborted){o(new J(Q.InvalidRequest,"Request cancelled"));return}let a=setTimeout(r,i);n.addEventListener("abort",()=>{clearTimeout(a),o(new J(Q.InvalidRequest,"Request cancelled"))},{once:!0})})}requestTaskStore(e,n){let i=this._taskStore;if(!i)throw new Error("No task store configured");return{createTask:async r=>{if(!e)throw new Error("No request provided");return await i.createTask(r,e.id,{method:e.method,params:e.params},n)},getTask:async r=>{let o=await i.getTask(r,n);if(!o)throw new J(Q.InvalidParams,"Failed to retrieve task: Task not found");return o},storeTaskResult:async(r,o,a)=>{await i.storeTaskResult(r,o,a,n);let c=await i.getTask(r,n);if(c){let l=Vc.parse({method:"notifications/tasks/status",params:c});await this.notification(l),gi(c.status)&&this._cleanupTaskProgressHandler(r)}},getTaskResult:r=>i.getTaskResult(r,n),updateTaskStatus:async(r,o,a)=>{let c=await i.getTask(r,n);if(!c)throw new J(Q.InvalidParams,`Task "${r}" not found - it may have been cleaned up`);if(gi(c.status))throw new J(Q.InvalidParams,`Cannot update task "${r}" from terminal status "${c.status}" to "${o}". Terminal states (completed, failed, cancelled) cannot transition to other states.`);await i.updateTaskStatus(r,o,a,n);let l=await i.getTask(r,n);if(l){let u=Vc.parse({method:"notifications/tasks/status",params:l});await this.notification(u),gi(l.status)&&this._cleanupTaskProgressHandler(r)}},listTasks:r=>i.listTasks(r,n)}}};function hO(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function bO(t,e){let n={...t};for(let i in e){let r=i,o=e[r];if(o===void 0)continue;let a=n[r];hO(a)&&hO(o)?n[r]={...a,...o}:n[r]=o}return n}var bC=fh(nw(),1),_C=fh(hC(),1);function AH(){let t=new bC.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,_C.default)(t),t}var Ef=class{constructor(e){this._ajv=e??AH()}getValidator(e){let n="$id"in e&&typeof e.$id=="string"?this._ajv.getSchema(e.$id)??this._ajv.compile(e):this._ajv.compile(e);return i=>n(i)?{valid:!0,data:i,errorMessage:void 0}:{valid:!1,data:void 0,errorMessage:this._ajv.errorsText(n.errors)}}};var Tf=class{constructor(e){this._server=e}requestStream(e,n,i){return this._server.requestStream(e,n,i)}createMessageStream(e,n){let i=this._server.getClientCapabilities();if((e.tools||e.toolChoice)&&!i?.sampling?.tools)throw new Error("Client does not support sampling tools capability.");if(e.messages.length>0){let r=e.messages[e.messages.length-1],o=Array.isArray(r.content)?r.content:[r.content],a=o.some(d=>d.type==="tool_result"),c=e.messages.length>1?e.messages[e.messages.length-2]:void 0,l=c?Array.isArray(c.content)?c.content:[c.content]:[],u=l.some(d=>d.type==="tool_use");if(a){if(o.some(d=>d.type!=="tool_result"))throw new Error("The last message must contain only tool_result content if any is present");if(!u)throw new Error("tool_result blocks are not matching any tool_use from the previous message")}if(u){let d=new Set(l.filter(f=>f.type==="tool_use").map(f=>f.id)),m=new Set(o.filter(f=>f.type==="tool_result").map(f=>f.toolUseId));if(d.size!==m.size||![...d].every(f=>m.has(f)))throw new Error("ids of tool_result blocks and tool_use blocks from previous message do not match")}}return this.requestStream({method:"sampling/createMessage",params:e},Gc,n)}elicitInputStream(e,n){let i=this._server.getClientCapabilities(),r=e.mode??"form";switch(r){case"url":{if(!i?.elicitation?.url)throw new Error("Client does not support url elicitation.");break}case"form":{if(!i?.elicitation?.form)throw new Error("Client does not support form elicitation.");break}}let o=r==="form"&&e.mode===void 0?{...e,mode:"form"}:e;return this.requestStream({method:"elicitation/create",params:o},ys,n)}async getTask(e,n){return this._server.getTask({taskId:e},n)}async getTaskResult(e,n,i){return this._server.getTaskResult({taskId:e},n,i)}async listTasks(e,n){return this._server.listTasks(e?{cursor:e}:void 0,n)}async cancelTask(e,n){return this._server.cancelTask({taskId:e},n)}};function vC(t,e,n){if(!t)throw new Error(`${n} does not support task creation (required for ${e})`);switch(e){case"tools/call":if(!t.tools?.call)throw new Error(`${n} does not support task creation for tools/call (required for ${e})`);break;default:break}}function yC(t,e,n){if(!t)throw new Error(`${n} does not support task creation (required for ${e})`);switch(e){case"sampling/createMessage":if(!t.sampling?.createMessage)throw new Error(`${n} does not support task creation for sampling/createMessage (required for ${e})`);break;case"elicitation/create":if(!t.elicitation?.create)throw new Error(`${n} does not support task creation for elicitation/create (required for ${e})`);break;default:break}}var Rf=class extends Bp{constructor(e,n){super(n),this._serverInfo=e,this._loggingLevels=new Map,this.LOG_LEVEL_SEVERITY=new Map(Hc.options.map((i,r)=>[i,r])),this.isMessageIgnored=(i,r)=>{let o=this._loggingLevels.get(r);return o?this.LOG_LEVEL_SEVERITY.get(i)<this.LOG_LEVEL_SEVERITY.get(o):!1},this._capabilities=n?.capabilities??{},this._instructions=n?.instructions,this._jsonSchemaValidator=n?.jsonSchemaValidator??new Ef,this.setRequestHandler(Mv,i=>this._oninitialize(i)),this.setNotificationHandler(jv,()=>this.oninitialized?.()),this._capabilities.logging&&this.setRequestHandler(Gv,async(i,r)=>{let o=r.sessionId||r.requestInfo?.headers["mcp-session-id"]||void 0,{level:a}=i.params,c=Hc.safeParse(a);return c.success&&this._loggingLevels.set(o,c.data),{}})}get experimental(){return this._experimental||(this._experimental={tasks:new Tf(this)}),this._experimental}registerCapabilities(e){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=bO(this._capabilities,e)}setRequestHandler(e,n){let r=fi(e)?.method;if(!r)throw new Error("Schema is missing a method literal");let o=Ds(r);if(typeof o!="string")throw new Error("Schema method literal must be a string");if(o==="tools/call"){let c=async(l,u)=>{let d=pi(vs,l);if(!d.success){let g=d.error instanceof Error?d.error.message:String(d.error);throw new J(Q.InvalidParams,`Invalid tools/call request: ${g}`)}let{params:m}=d.data,f=await Promise.resolve(n(l,u));if(m.task){let g=pi(bs,f);if(!g.success){let b=g.error instanceof Error?g.error.message:String(g.error);throw new J(Q.InvalidParams,`Invalid task creation result: ${b}`)}return g.data}let p=pi(xp,f);if(!p.success){let g=p.error instanceof Error?p.error.message:String(p.error);throw new J(Q.InvalidParams,`Invalid tools/call result: ${g}`)}return p.data};return super.setRequestHandler(e,c)}return super.setRequestHandler(e,n)}assertCapabilityForMethod(e){switch(e){case"sampling/createMessage":if(!this._clientCapabilities?.sampling)throw new Error(`Client does not support sampling (required for ${e})`);break;case"elicitation/create":if(!this._clientCapabilities?.elicitation)throw new Error(`Client does not support elicitation (required for ${e})`);break;case"roots/list":if(!this._clientCapabilities?.roots)throw new Error(`Client does not support listing roots (required for ${e})`);break;case"ping":break}}assertNotificationCapability(e){switch(e){case"notifications/message":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${e})`);break;case"notifications/resources/updated":case"notifications/resources/list_changed":if(!this._capabilities.resources)throw new Error(`Server does not support notifying about resources (required for ${e})`);break;case"notifications/tools/list_changed":if(!this._capabilities.tools)throw new Error(`Server does not support notifying of tool list changes (required for ${e})`);break;case"notifications/prompts/list_changed":if(!this._capabilities.prompts)throw new Error(`Server does not support notifying of prompt list changes (required for ${e})`);break;case"notifications/elicitation/complete":if(!this._clientCapabilities?.elicitation?.url)throw new Error(`Client does not support URL elicitation (required for ${e})`);break;case"notifications/cancelled":break;case"notifications/progress":break}}assertRequestHandlerCapability(e){if(this._capabilities)switch(e){case"completion/complete":if(!this._capabilities.completions)throw new Error(`Server does not support completions (required for ${e})`);break;case"logging/setLevel":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${e})`);break;case"prompts/get":case"prompts/list":if(!this._capabilities.prompts)throw new Error(`Server does not support prompts (required for ${e})`);break;case"resources/list":case"resources/templates/list":case"resources/read":if(!this._capabilities.resources)throw new Error(`Server does not support resources (required for ${e})`);break;case"tools/call":case"tools/list":if(!this._capabilities.tools)throw new Error(`Server does not support tools (required for ${e})`);break;case"tasks/get":case"tasks/list":case"tasks/result":case"tasks/cancel":if(!this._capabilities.tasks)throw new Error(`Server does not support tasks capability (required for ${e})`);break;case"ping":case"initialize":break}}assertTaskCapability(e){yC(this._clientCapabilities?.tasks?.requests,e,"Client")}assertTaskHandlerCapability(e){this._capabilities&&vC(this._capabilities.tasks?.requests,e,"Server")}async _oninitialize(e){let n=e.params.protocolVersion;return this._clientCapabilities=e.params.capabilities,this._clientVersion=e.params.clientInfo,{protocolVersion:ux.includes(n)?n:Pv,capabilities:this.getCapabilities(),serverInfo:this._serverInfo,...this._instructions&&{instructions:this._instructions}}}getClientCapabilities(){return this._clientCapabilities}getClientVersion(){return this._clientVersion}getCapabilities(){return this._capabilities}async ping(){return this.request({method:"ping"},mp)}async createMessage(e,n){if((e.tools||e.toolChoice)&&!this._clientCapabilities?.sampling?.tools)throw new Error("Client does not support sampling tools capability.");if(e.messages.length>0){let i=e.messages[e.messages.length-1],r=Array.isArray(i.content)?i.content:[i.content],o=r.some(u=>u.type==="tool_result"),a=e.messages.length>1?e.messages[e.messages.length-2]:void 0,c=a?Array.isArray(a.content)?a.content:[a.content]:[],l=c.some(u=>u.type==="tool_use");if(o){if(r.some(u=>u.type!=="tool_result"))throw new Error("The last message must contain only tool_result content if any is present");if(!l)throw new Error("tool_result blocks are not matching any tool_use from the previous message")}if(l){let u=new Set(c.filter(m=>m.type==="tool_use").map(m=>m.id)),d=new Set(r.filter(m=>m.type==="tool_result").map(m=>m.toolUseId));if(u.size!==d.size||![...u].every(m=>d.has(m)))throw new Error("ids of tool_result blocks and tool_use blocks from previous message do not match")}}return e.tools?this.request({method:"sampling/createMessage",params:e},Zv,n):this.request({method:"sampling/createMessage",params:e},Gc,n)}async elicitInput(e,n){switch(e.mode??"form"){case"url":{if(!this._clientCapabilities?.elicitation?.url)throw new Error("Client does not support url elicitation.");let r=e;return this.request({method:"elicitation/create",params:r},ys,n)}case"form":{if(!this._clientCapabilities?.elicitation?.form)throw new Error("Client does not support form elicitation.");let r=e.mode==="form"?e:{...e,mode:"form"},o=await this.request({method:"elicitation/create",params:r},ys,n);if(o.action==="accept"&&o.content&&r.requestedSchema)try{let c=this._jsonSchemaValidator.getValidator(r.requestedSchema)(o.content);if(!c.valid)throw new J(Q.InvalidParams,`Elicitation response content does not match requested schema: ${c.errorMessage}`)}catch(a){throw a instanceof J?a:new J(Q.InternalError,`Error validating elicitation response: ${a instanceof Error?a.message:String(a)}`)}return o}}}createElicitationCompletionNotifier(e,n){if(!this._clientCapabilities?.elicitation?.url)throw new Error("Client does not support URL elicitation (required for notifications/elicitation/complete)");return()=>this.notification({method:"notifications/elicitation/complete",params:{elicitationId:e}},n)}async listRoots(e,n){return this.request({method:"roots/list",params:e},Wv,n)}async sendLoggingMessage(e,n){if(this._capabilities.logging&&!this.isMessageIgnored(e.level,n))return this.notification({method:"notifications/message",params:e})}async sendResourceUpdated(e){return this.notification({method:"notifications/resources/updated",params:e})}async sendResourceListChanged(){return this.notification({method:"notifications/resources/list_changed"})}async sendToolListChanged(){return this.notification({method:"notifications/tools/list_changed"})}async sendPromptListChanged(){return this.notification({method:"notifications/prompts/list_changed"})}};var wC=Symbol.for("mcp.completable");function uw(t){return!!t&&typeof t=="object"&&wC in t}function SC(t){return t[wC]?.complete}var kC;(function(t){t.Completable="McpCompletable"})(kC||(kC={}));var $H=/^[A-Za-z0-9._-]{1,128}$/;function CH(t){let e=[];if(t.length===0)return{isValid:!1,warnings:["Tool name cannot be empty"]};if(t.length>128)return{isValid:!1,warnings:[`Tool name exceeds maximum length of 128 characters (current: ${t.length})`]};if(t.includes(" ")&&e.push("Tool name contains spaces, which may cause parsing issues"),t.includes(",")&&e.push("Tool name contains commas, which may cause parsing issues"),(t.startsWith("-")||t.endsWith("-"))&&e.push("Tool name starts or ends with a dash, which may cause parsing issues in some contexts"),(t.startsWith(".")||t.endsWith("."))&&e.push("Tool name starts or ends with a dot, which may cause parsing issues in some contexts"),!$H.test(t)){let n=t.split("").filter(i=>!/[A-Za-z0-9._-]/.test(i)).filter((i,r,o)=>o.indexOf(i)===r);return e.push(`Tool name contains invalid characters: ${n.map(i=>`"${i}"`).join(", ")}`,"Allowed characters are: A-Z, a-z, 0-9, underscore (_), dash (-), and dot (.)"),{isValid:!1,warnings:e}}return{isValid:!0,warnings:e}}function NH(t,e){if(e.length>0){console.warn(`Tool name validation warning for "${t}":`);for(let n of e)console.warn(` - ${n}`);console.warn("Tool registration will proceed, but this may cause compatibility issues."),console.warn("Consider updating the tool name to conform to the MCP tool naming standard."),console.warn("See SEP: Specify Format for Tool Names (https://github.com/modelcontextprotocol/modelcontextprotocol/issues/986) for more details.")}}function dw(t){let e=CH(t);return NH(t,e.warnings),e.isValid}var xf=class{constructor(e){this._mcpServer=e}registerToolTask(e,n,i){let r={taskSupport:"required",...n.execution};if(r.taskSupport==="forbidden")throw new Error(`Cannot register task-based tool '${e}' with taskSupport 'forbidden'. Use registerTool() instead.`);return this._mcpServer._createRegisteredTool(e,n.title,n.description,n.inputSchema,n.outputSchema,n.annotations,r,n._meta,i)}};var Of=class{constructor(e,n){this._registeredResources={},this._registeredResourceTemplates={},this._registeredTools={},this._registeredPrompts={},this._toolHandlersInitialized=!1,this._completionHandlerInitialized=!1,this._resourceHandlersInitialized=!1,this._promptHandlersInitialized=!1,this.server=new Rf(e,n)}get experimental(){return this._experimental||(this._experimental={tasks:new xf(this)}),this._experimental}async connect(e){return await this.server.connect(e)}async close(){await this.server.close()}setToolRequestHandlers(){this._toolHandlersInitialized||(this.server.assertCanSetRequestHandler(Ii(Rp)),this.server.assertCanSetRequestHandler(Ii(vs)),this.server.registerCapabilities({tools:{listChanged:!0}}),this.server.setRequestHandler(Rp,()=>({tools:Object.entries(this._registeredTools).filter(([,e])=>e.enabled).map(([e,n])=>{let i={name:e,title:n.title,description:n.description,inputSchema:(()=>{let r=zs(n.inputSchema);return r?ly(r,{strictUnions:!0,pipeStrategy:"input"}):PH})(),annotations:n.annotations,execution:n.execution,_meta:n._meta};if(n.outputSchema){let r=zs(n.outputSchema);r&&(i.outputSchema=ly(r,{strictUnions:!0,pipeStrategy:"output"}))}return i})})),this.server.setRequestHandler(vs,async(e,n)=>{try{let i=this._registeredTools[e.params.name];if(!i)throw new J(Q.InvalidParams,`Tool ${e.params.name} not found`);if(!i.enabled)throw new J(Q.InvalidParams,`Tool ${e.params.name} disabled`);let r=!!e.params.task,o=i.execution?.taskSupport,a="createTask"in i.handler;if((o==="required"||o==="optional")&&!a)throw new J(Q.InternalError,`Tool ${e.params.name} has taskSupport '${o}' but was not registered with registerToolTask`);if(o==="required"&&!r)throw new J(Q.MethodNotFound,`Tool ${e.params.name} requires task augmentation (taskSupport: 'required')`);if(o==="optional"&&!r&&a)return await this.handleAutomaticTaskPolling(i,e,n);let c=await this.validateToolInput(i,e.params.arguments,e.params.name),l=await this.executeToolHandler(i,c,n);return r||await this.validateToolOutput(i,l,e.params.name),l}catch(i){if(i instanceof J&&i.code===Q.UrlElicitationRequired)throw i;return this.createToolError(i instanceof Error?i.message:String(i))}}),this._toolHandlersInitialized=!0)}createToolError(e){return{content:[{type:"text",text:e}],isError:!0}}async validateToolInput(e,n,i){if(!e.inputSchema)return;let o=zs(e.inputSchema)??e.inputSchema,a=await zp(o,n);if(!a.success){let c="error"in a?a.error:"Unknown error",l=Dp(c);throw new J(Q.InvalidParams,`Input validation error: Invalid arguments for tool ${i}: ${l}`)}return a.data}async validateToolOutput(e,n,i){if(!e.outputSchema||!("content"in n)||n.isError)return;if(!n.structuredContent)throw new J(Q.InvalidParams,`Output validation error: Tool ${i} has an output schema but no structured content was provided`);let r=zs(e.outputSchema),o=await zp(r,n.structuredContent);if(!o.success){let a="error"in o?o.error:"Unknown error",c=Dp(a);throw new J(Q.InvalidParams,`Output validation error: Invalid structured content for tool ${i}: ${c}`)}}async executeToolHandler(e,n,i){let r=e.handler;if("createTask"in r){if(!i.taskStore)throw new Error("No task store provided.");let a={...i,taskStore:i.taskStore};if(e.inputSchema){let c=r;return await Promise.resolve(c.createTask(n,a))}else{let c=r;return await Promise.resolve(c.createTask(a))}}if(e.inputSchema){let a=r;return await Promise.resolve(a(n,i))}else{let a=r;return await Promise.resolve(a(i))}}async handleAutomaticTaskPolling(e,n,i){if(!i.taskStore)throw new Error("No task store provided for task-capable tool.");let r=await this.validateToolInput(e,n.params.arguments,n.params.name),o=e.handler,a={...i,taskStore:i.taskStore},c=r?await Promise.resolve(o.createTask(r,a)):await Promise.resolve(o.createTask(a)),l=c.task.taskId,u=c.task,d=u.pollInterval??5e3;for(;u.status!=="completed"&&u.status!=="failed"&&u.status!=="cancelled";){await new Promise(f=>setTimeout(f,d));let m=await i.taskStore.getTask(l);if(!m)throw new J(Q.InternalError,`Task ${l} not found during polling`);u=m}return await i.taskStore.getTaskResult(l)}setCompletionRequestHandler(){this._completionHandlerInitialized||(this.server.assertCanSetRequestHandler(Ii(Op)),this.server.registerCapabilities({completions:{}}),this.server.setRequestHandler(Op,async e=>{switch(e.params.ref.type){case"ref/prompt":return Tx(e),this.handlePromptCompletion(e,e.params.ref);case"ref/resource":return Rx(e),this.handleResourceCompletion(e,e.params.ref);default:throw new J(Q.InvalidParams,`Invalid completion reference: ${e.params.ref}`)}}),this._completionHandlerInitialized=!0)}async handlePromptCompletion(e,n){let i=this._registeredPrompts[n.name];if(!i)throw new J(Q.InvalidParams,`Prompt ${n.name} not found`);if(!i.enabled)throw new J(Q.InvalidParams,`Prompt ${n.name} disabled`);if(!i.argsSchema)return Ll;let o=fi(i.argsSchema)?.[e.params.argument.name];if(!uw(o))return Ll;let a=SC(o);if(!a)return Ll;let c=await a(e.params.argument.value,e.params.context);return EC(c)}async handleResourceCompletion(e,n){let i=Object.values(this._registeredResourceTemplates).find(a=>a.resourceTemplate.uriTemplate.toString()===n.uri);if(!i){if(this._registeredResources[n.uri])return Ll;throw new J(Q.InvalidParams,`Resource template ${e.params.ref.uri} not found`)}let r=i.resourceTemplate.completeCallback(e.params.argument.name);if(!r)return Ll;let o=await r(e.params.argument.value,e.params.context);return EC(o)}setResourceRequestHandlers(){this._resourceHandlersInitialized||(this.server.assertCanSetRequestHandler(Ii(wp)),this.server.assertCanSetRequestHandler(Ii(Sp)),this.server.assertCanSetRequestHandler(Ii(Ip)),this.server.registerCapabilities({resources:{listChanged:!0}}),this.server.setRequestHandler(wp,async(e,n)=>{let i=Object.entries(this._registeredResources).filter(([o,a])=>a.enabled).map(([o,a])=>({uri:o,name:a.name,...a.metadata})),r=[];for(let o of Object.values(this._registeredResourceTemplates)){if(!o.resourceTemplate.listCallback)continue;let a=await o.resourceTemplate.listCallback(n);for(let c of a.resources)r.push({...o.metadata,...c})}return{resources:[...i,...r]}}),this.server.setRequestHandler(Sp,async()=>({resourceTemplates:Object.entries(this._registeredResourceTemplates).map(([n,i])=>({name:n,uriTemplate:i.resourceTemplate.uriTemplate.toString(),...i.metadata}))})),this.server.setRequestHandler(Ip,async(e,n)=>{let i=new URL(e.params.uri),r=this._registeredResources[i.toString()];if(r){if(!r.enabled)throw new J(Q.InvalidParams,`Resource ${i} disabled`);return r.readCallback(i,n)}for(let o of Object.values(this._registeredResourceTemplates)){let a=o.resourceTemplate.uriTemplate.match(i.toString());if(a)return o.readCallback(i,a,n)}throw new J(Q.InvalidParams,`Resource ${i} not found`)}),this._resourceHandlersInitialized=!0)}setPromptRequestHandlers(){this._promptHandlersInitialized||(this.server.assertCanSetRequestHandler(Ii(Ep)),this.server.assertCanSetRequestHandler(Ii(Tp)),this.server.registerCapabilities({prompts:{listChanged:!0}}),this.server.setRequestHandler(Ep,()=>({prompts:Object.entries(this._registeredPrompts).filter(([,e])=>e.enabled).map(([e,n])=>({name:e,title:n.title,description:n.description,arguments:n.argsSchema?zH(n.argsSchema):void 0}))})),this.server.setRequestHandler(Tp,async(e,n)=>{let i=this._registeredPrompts[e.params.name];if(!i)throw new J(Q.InvalidParams,`Prompt ${e.params.name} not found`);if(!i.enabled)throw new J(Q.InvalidParams,`Prompt ${e.params.name} disabled`);if(i.argsSchema){let r=zs(i.argsSchema),o=await zp(r,e.params.arguments);if(!o.success){let l="error"in o?o.error:"Unknown error",u=Dp(l);throw new J(Q.InvalidParams,`Invalid arguments for prompt ${e.params.name}: ${u}`)}let a=o.data,c=i.callback;return await Promise.resolve(c(a,n))}else{let r=i.callback;return await Promise.resolve(r(n))}}),this._promptHandlersInitialized=!0)}resource(e,n,...i){let r;typeof i[0]=="object"&&(r=i.shift());let o=i[0];if(typeof n=="string"){if(this._registeredResources[n])throw new Error(`Resource ${n} is already registered`);let a=this._createRegisteredResource(e,void 0,n,r,o);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),a}else{if(this._registeredResourceTemplates[e])throw new Error(`Resource template ${e} is already registered`);let a=this._createRegisteredResourceTemplate(e,void 0,n,r,o);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),a}}registerResource(e,n,i,r){if(typeof n=="string"){if(this._registeredResources[n])throw new Error(`Resource ${n} is already registered`);let o=this._createRegisteredResource(e,i.title,n,i,r);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),o}else{if(this._registeredResourceTemplates[e])throw new Error(`Resource template ${e} is already registered`);let o=this._createRegisteredResourceTemplate(e,i.title,n,i,r);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),o}}_createRegisteredResource(e,n,i,r,o){let a={name:e,title:n,metadata:r,readCallback:o,enabled:!0,disable:()=>a.update({enabled:!1}),enable:()=>a.update({enabled:!0}),remove:()=>a.update({uri:null}),update:c=>{typeof c.uri<"u"&&c.uri!==i&&(delete this._registeredResources[i],c.uri&&(this._registeredResources[c.uri]=a)),typeof c.name<"u"&&(a.name=c.name),typeof c.title<"u"&&(a.title=c.title),typeof c.metadata<"u"&&(a.metadata=c.metadata),typeof c.callback<"u"&&(a.readCallback=c.callback),typeof c.enabled<"u"&&(a.enabled=c.enabled),this.sendResourceListChanged()}};return this._registeredResources[i]=a,a}_createRegisteredResourceTemplate(e,n,i,r,o){let a={resourceTemplate:i,title:n,metadata:r,readCallback:o,enabled:!0,disable:()=>a.update({enabled:!1}),enable:()=>a.update({enabled:!0}),remove:()=>a.update({name:null}),update:u=>{typeof u.name<"u"&&u.name!==e&&(delete this._registeredResourceTemplates[e],u.name&&(this._registeredResourceTemplates[u.name]=a)),typeof u.title<"u"&&(a.title=u.title),typeof u.template<"u"&&(a.resourceTemplate=u.template),typeof u.metadata<"u"&&(a.metadata=u.metadata),typeof u.callback<"u"&&(a.readCallback=u.callback),typeof u.enabled<"u"&&(a.enabled=u.enabled),this.sendResourceListChanged()}};this._registeredResourceTemplates[e]=a;let c=i.uriTemplate.variableNames;return Array.isArray(c)&&c.some(u=>!!i.completeCallback(u))&&this.setCompletionRequestHandler(),a}_createRegisteredPrompt(e,n,i,r,o){let a={title:n,description:i,argsSchema:r===void 0?void 0:ro(r),callback:o,enabled:!0,disable:()=>a.update({enabled:!1}),enable:()=>a.update({enabled:!0}),remove:()=>a.update({name:null}),update:c=>{typeof c.name<"u"&&c.name!==e&&(delete this._registeredPrompts[e],c.name&&(this._registeredPrompts[c.name]=a)),typeof c.title<"u"&&(a.title=c.title),typeof c.description<"u"&&(a.description=c.description),typeof c.argsSchema<"u"&&(a.argsSchema=ro(c.argsSchema)),typeof c.callback<"u"&&(a.callback=c.callback),typeof c.enabled<"u"&&(a.enabled=c.enabled),this.sendPromptListChanged()}};return this._registeredPrompts[e]=a,r&&Object.values(r).some(l=>{let u=l instanceof gs?l._def?.innerType:l;return uw(u)})&&this.setCompletionRequestHandler(),a}_createRegisteredTool(e,n,i,r,o,a,c,l,u){dw(e);let d={title:n,description:i,inputSchema:IC(r),outputSchema:IC(o),annotations:a,execution:c,_meta:l,handler:u,enabled:!0,disable:()=>d.update({enabled:!1}),enable:()=>d.update({enabled:!0}),remove:()=>d.update({name:null}),update:m=>{typeof m.name<"u"&&m.name!==e&&(typeof m.name=="string"&&dw(m.name),delete this._registeredTools[e],m.name&&(this._registeredTools[m.name]=d)),typeof m.title<"u"&&(d.title=m.title),typeof m.description<"u"&&(d.description=m.description),typeof m.paramsSchema<"u"&&(d.inputSchema=ro(m.paramsSchema)),typeof m.outputSchema<"u"&&(d.outputSchema=ro(m.outputSchema)),typeof m.callback<"u"&&(d.handler=m.callback),typeof m.annotations<"u"&&(d.annotations=m.annotations),typeof m._meta<"u"&&(d._meta=m._meta),typeof m.enabled<"u"&&(d.enabled=m.enabled),this.sendToolListChanged()}};return this._registeredTools[e]=d,this.setToolRequestHandlers(),this.sendToolListChanged(),d}tool(e,...n){if(this._registeredTools[e])throw new Error(`Tool ${e} is already registered`);let i,r,o,a;if(typeof n[0]=="string"&&(i=n.shift()),n.length>1){let l=n[0];if(mw(l))r=n.shift(),n.length>1&&typeof n[0]=="object"&&n[0]!==null&&!mw(n[0])&&(a=n.shift());else if(typeof l=="object"&&l!==null){if(Object.values(l).some(u=>typeof u=="object"&&u!==null))throw new Error(`Tool ${e} expected a Zod schema or ToolAnnotations, but received an unrecognized object`);a=n.shift()}}let c=n[0];return this._createRegisteredTool(e,void 0,i,r,o,a,{taskSupport:"forbidden"},void 0,c)}registerTool(e,n,i){if(this._registeredTools[e])throw new Error(`Tool ${e} is already registered`);let{title:r,description:o,inputSchema:a,outputSchema:c,annotations:l,_meta:u}=n;return this._createRegisteredTool(e,r,o,a,c,l,{taskSupport:"forbidden"},u,i)}prompt(e,...n){if(this._registeredPrompts[e])throw new Error(`Prompt ${e} is already registered`);let i;typeof n[0]=="string"&&(i=n.shift());let r;n.length>1&&(r=n.shift());let o=n[0],a=this._createRegisteredPrompt(e,void 0,i,r,o);return this.setPromptRequestHandlers(),this.sendPromptListChanged(),a}registerPrompt(e,n,i){if(this._registeredPrompts[e])throw new Error(`Prompt ${e} is already registered`);let{title:r,description:o,argsSchema:a}=n,c=this._createRegisteredPrompt(e,r,o,a,i);return this.setPromptRequestHandlers(),this.sendPromptListChanged(),c}isConnected(){return this.server.transport!==void 0}async sendLoggingMessage(e,n){return this.server.sendLoggingMessage(e,n)}sendResourceListChanged(){this.isConnected()&&this.server.sendResourceListChanged()}sendToolListChanged(){this.isConnected()&&this.server.sendToolListChanged()}sendPromptListChanged(){this.isConnected()&&this.server.sendPromptListChanged()}};var PH={type:"object",properties:{}};function TC(t){return t!==null&&typeof t=="object"&&"parse"in t&&typeof t.parse=="function"&&"safeParse"in t&&typeof t.safeParse=="function"}function RC(t){return"_def"in t||"_zod"in t||TC(t)}function mw(t){return typeof t!="object"||t===null||RC(t)?!1:Object.keys(t).length===0?!0:Object.values(t).some(TC)}function IC(t){if(t){if(mw(t))return ro(t);if(!RC(t))throw new Error("inputSchema must be a Zod schema or raw shape, received an unrecognized object");return t}}function zH(t){let e=fi(t);return e?Object.entries(e).map(([n,i])=>{let r=Dx(i),o=Lx(i);return{name:n,description:r,required:!o}}):[]}function Ii(t){let n=fi(t)?.method;if(!n)throw new Error("Schema is missing a method literal");let i=Ds(n);if(typeof i=="string")return i;throw new Error("Schema method literal must be a string")}function EC(t){return{completion:{values:t.slice(0,100),total:t.length,hasMore:t.length>100}}}var Ll={completion:{values:[],hasMore:!1}};var Ul=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(),actor:s.object({kind:s.enum(["member","service_account"])}).strict().optional()}).strict(),xC=s.enum(["SUM","COUNT","MAX","UNIQUE_COUNT","LATEST"]),OC=s.object({d:s.number().int().nonnegative(),w:s.number().int().positive(),c:s.number().nonnegative(),agg:xC.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:Ul.optional()}),DH=s.object({kind:s.literal("credential_validity")}),LH=s.object({kind:s.literal("track_only_bypass")}),UH=s.object({kind:s.literal("lifecycle_block"),blockOn:s.array(s.string()).default(["SUSPENDED","CANCELLED","INACTIVE"]),code:s.string().default("subscription_inactive")}),MH=s.object({kind:s.literal("scope"),requireExplicit:s.boolean().default(!0)}),jH=s.object({kind:s.literal("permission"),mode:s.enum(["grace","closed"]).optional()}),BH=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`"}),KH=s.enum(["fixed_window","sliding_window","token_bucket"]),FH=OC.extend({kind:s.literal("rate_limit"),m:s.literal("e").default("e"),strategy:KH.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"]}))}),VH=s.enum(["fixed_window","sliding_window"]),qH=OC.extend({kind:s.literal("quota"),ovr:s.literal("BLOCK"),strategy:VH.default("fixed_window")}),HH=s.object({kind:s.literal("monetary_reservation"),ovr:s.enum(["BLOCK","ALLOW_AND_BILL"])}),GH=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)}),ZH=s.object({kind:s.literal("resource_limit"),resource:s.string().min(1).max(120),limit:s.number().int().nonnegative()}),WH=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)}),JH=s.enum(["plan","manual","provider"]),pw=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:Ul.optional()}).refine(AC,{message:"capacity requires at least one ceiling (maxInputTokens / maxOutputTokens / maxContextTokens / maxPayloadBytes)"});function AC(t){return t.maxInputTokens!==void 0||t.maxOutputTokens!==void 0||t.maxContextTokens!==void 0||t.maxPayloadBytes!==void 0}var YH=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:Ul.optional(),provenance:JH.optional()}).refine(AC,{message:"capacity requires at least one ceiling (maxInputTokens / maxOutputTokens / maxContextTokens / maxPayloadBytes)"}),fw=s.discriminatedUnion("kind",[DH,LH,UH,MH,jH,BH,FH,qH,HH,ZH,GH,WH,YH]);var XH="{__fs_rest}";function QH(t){if(t.startsWith(":"))return t.slice(1);if(t.startsWith("{")&&t.endsWith("}")||t.startsWith("[")&&t.endsWith("]"))return t.slice(1,-1)}function gw(t,e){let n=e.split("/").map((i,r)=>r===0?i:i==="**"||i===XH?"**":i==="*"||QH(i)!==void 0?"*":i).join("/");return`${t.toUpperCase()} ${n}`}function Ml(t){return t.actionId??gw(t.method,t.path)}var ce=s.string().min(1).max(128).refine(t=>t===t.trim(),"must not have outer whitespace"),ee=s.string().min(1).max(256).refine(t=>t===t.trim(),"must not have outer whitespace");var eG=/^(?:GET|POST|PUT|PATCH|DELETE|HEAD|OPTIONS) \/\S*$/,tG=/^[a-z0-9_.-]+$/;function nG(t){return eG.test(t)||tG.test(t)}var ea=ce.refine(nG,'served route key must be "<METHOD> <path>" (gateway route id) or an explicit action id'),ht=s.string().regex(/^sha256_[0-9a-f]{64}$/),jl=s.string().regex(/^cps_sha256_[0-9a-f]{64}$/),qt=s.string().regex(/^crv_sha256_[0-9a-f]{64}$/),Ei=s.string().regex(/^(?:prod|env:[A-Za-z0-9._-]+)$/);var Ti=s.string().datetime({offset:!0});function An(t,e){return t<e?-1:t>e?1:0}function ut(t){for(let e=1;e<t.length;e+=1)if(An(t[e-1],t[e])>=0)return!1;return!0}function G(t,e,n=[],i){let r=i??(/^[A-Z][A-Z0-9_]+$/.test(e)?e:void 0);t.addIssue({code:s.ZodIssueCode.custom,message:e,path:n,...r===void 0?{}:{params:{code:r}}})}var Bl=["customer_operation","control_plane","admin_internal","background_job","webhook","healthcheck","unclassified"],voe=new Set(Bl);var Af=s.object({trafficClass:s.enum(Bl),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 rG=Object.freeze(["__proto__","constructor","prototype","__defineGetter__","__defineSetter__","__lookupGetter__","__lookupSetter__","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]),iG=new Set(rG),$f="meter name is reserved";function $C(t){return iG.has(t)}function Wn(t){return t.refine(e=>!$C(e),$f)}function hw(t){return t===null||typeof t!="object"||Array.isArray(t)?[]:Object.keys(t).filter($C)}function ta(t){return s.unknown().superRefine((e,n)=>{for(let i of hw(e))n.addIssue({code:s.ZodIssueCode.custom,path:[i],message:$f})}).pipe(t)}function dt(t,e=s.string()){return ta(s.record(e,t))}var Kl=/^[a-z0-9_]+$/,Fl=64,CC=Wn(s.string().min(1).max(Fl).regex(Kl,"Meter key must be lowercase alphanumeric with underscores")),Cf=dt(CC,CC);function oG(t){return t.displayKey??t.key}function Nf(t){let e=[],n=t.flatMap((o,a)=>typeof o.key=="string"?[{index:a,key:o.key,displayKey:typeof o.displayKey=="string"?o.displayKey:void 0}]:[]),i=new Map;for(let o of n){if(i.has(o.key)){e.push({index:o.index,field:"key",message:`meter identity "${o.key}" is declared by more than one meter`});continue}i.set(o.key,o.index)}let r=new Map;for(let o of n){let a=oG(o),c=r.get(a);if(c!==void 0&&c!==o.key){e.push({index:o.index,field:"displayKey",message:`meter display key "${a}" is used by both meter "${c}" and meter "${o.key}"; display keys must be unique`});continue}r.set(a,o.key)}for(let o of n)o.displayKey===void 0||o.displayKey===o.key||i.has(o.displayKey)&&e.push({index:o.index,field:"displayKey",message:`meter "${o.key}" has display key "${o.displayKey}", which is the identity of meter "${o.displayKey}"; a display key may not equal another meter's identity`});return e}var sG=64,aG=s.number().int().nonnegative().max(sG-1),NC=dt(aG).superRefine((t,e)=>{let n=new Map;for(let[i,r]of Object.entries(t)){let o=n.get(r);o!==void 0&&e.addIssue({code:s.ZodIssueCode.custom,path:[i],message:`ordinal ${r} names both "${o}" and "${i}"`}),n.set(r,i)}});var cG=s.enum(["overlay_capacity","non_additive","no_rating","not_applicable"]),lG=s.custom(t=>typeof t=="string"&&/^(member|service):.+$/.test(t)),uG=s.object({limitId:s.string().min(1),actorKey:lG.optional(),scope:s.enum(["org","member","service_account"]),quantity:s.string().min(1),limitUnits:s.number().int().nonnegative().optional(),limitCents:s.number().int().nonnegative().optional(),effectiveCapacity:s.number().nonnegative().optional(),mode:s.enum(["block","notify"]),agg:s.enum(["SUM","COUNT","MAX","UNIQUE_COUNT","LATEST"]).optional(),strategy:s.enum(["fixed_window","sliding_window","token_bucket"]).optional(),cfg:s.union([s.object({bucketCapacity:s.number().positive(),refillRatePerSecond:s.number().positive()}).strict(),s.object({windowSeconds:s.number().positive(),capacity:s.number().nonnegative()}).strict()]).optional(),notifyAtPct:s.number().positive().max(1).optional(),periodSeconds:s.number().int().positive(),periodStartMs:s.number().int(),periodSource:s.enum(["billing_cycle","synthetic_30d"]).optional(),status:s.enum(["active","dormant"]).optional(),dormantReason:cG.optional(),derivedFromRoleKey:s.string().optional()}).superRefine((t,e)=>{let n=t.cfg,i=n?Object.keys(n).sort().join(","):null;switch(t.strategy){case void 0:case"fixed_window":n!==void 0&&e.addIssue({code:"custom",path:["cfg"],message:"fixed_window usage limits must not carry cfg"});break;case"token_bucket":i!=="bucketCapacity,refillRatePerSecond"&&e.addIssue({code:"custom",path:["cfg"],message:"token_bucket usage limits require cfg { bucketCapacity, refillRatePerSecond }"});break;case"sliding_window":i!=="capacity,windowSeconds"&&e.addIssue({code:"custom",path:["cfg"],message:"sliding_window usage limits require cfg { windowSeconds, capacity }"});break}t.status==="dormant"||t.dormantReason||((t.scope==="member"||t.scope==="service_account")&&!t.actorKey&&e.addIssue({code:"custom",path:["actorKey"],message:"active actor-scoped usage limits require actorKey"}),typeof t.effectiveCapacity!="number"&&typeof t.limitUnits!="number"&&typeof t.limitCents!="number"&&e.addIssue({code:"custom",path:["effectiveCapacity"],message:"active usage limits require a capacity"}),t.mode==="notify"&&(t.effectiveCapacity===0||t.limitUnits===0||t.limitCents===0)&&e.addIssue({code:"custom",path:[t.effectiveCapacity===0?"effectiveCapacity":t.limitUnits===0?"limitUnits":"limitCents"],message:"zero-value usage limits must use block mode"}))}),dG={scope:["org","member","service_account"],mode:["block","notify"],status:["active","dormant"],dormantReason:["overlay_capacity","non_additive","no_rating","not_applicable"],periodSource:["billing_cycle","synthetic_30d"]};function zC(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function mG(t){if(!zC(t))return!1;for(let[e,n]of Object.entries(dG)){let i=t[e];if(typeof i=="string"&&!n.includes(i))return!0}return!1}function pG(t){if(!zC(t))return{reason:"malformed"};if(t.status==="dormant"||typeof t.dormantReason=="string")return null;let e={reason:"malformed"};return typeof t.limitId=="string"&&t.limitId.length>0&&(e.limitId=t.limitId),typeof t.actorKey=="string"&&/^(member|service):.+$/.test(t.actorKey)&&(e.actorKey=t.actorKey),(t.scope==="org"||t.scope==="member"||t.scope==="service_account")&&(e.scope=t.scope),typeof t.quantity=="string"&&t.quantity.length>0&&(e.quantity=t.quantity),e}function fG(t){if(!t)return{};let e=[],n=[];for(let i of t){let r=uG.safeParse(i);if(r.success){e.push(r.data);continue}if(mG(i))continue;let o=pG(i);o&&n.push(o)}return{usageLimits:e,...n.length>0?{usageLimitParseFailures:n}:{}}}var Koe=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),environmentEpoch:s.number().int().positive(),projectedAtGeneration:s.number().int().positive(),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(),permissions:s.array(s.string()).readonly().optional(),deniedPermissions:s.array(s.string()).readonly().optional(),unassignedPermissionDecision:s.enum(["allow","deny"]).optional(),roles:s.array(s.string()).readonly().optional(),entitlement:s.record(s.string(),s.unknown()).nullable().optional()});var PC=s.object({unit:s.enum(["requests","tokens","computeMs","dollars"]),window:s.enum(["second","minute","hour","day","week","month"]),capacity:s.number()}),gG=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()}),Foe=s.object({id:s.string().min(1),authHeader:s.string().optional(),pricing:ta(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(PC).readonly().optional(),userLimits:s.array(PC).readonly().optional(),environmentId:s.string().optional(),contextTokenSecret:s.string().nullable().optional(),businessRbacEnabled:s.literal(!0).optional(),productPermissions:s.array(s.string().min(1)).readonly().optional(),timeoutMs:s.number().positive().optional(),idleTimeoutMs:s.number().positive().optional(),backends:s.array(gG).min(1),defaultBackendId:s.string().optional(),verificationRequired:s.boolean().optional(),portalHostname:s.string().min(1).optional(),portalOriginId:s.uuid().optional(),portalOriginTenureId:s.uuid().optional(),allowedOrigins:s.array(s.string()).optional(),publicRoutesCompiledPlanId:s.string().min(1).optional(),meterAliases:Cf.optional()}).superRefine((t,e)=>{let n=t.backends.map(i=>i.id);new Set(n).size!==n.length&&e.addIssue({code:s.ZodIssueCode.custom,path:["backends"],message:"tenant backend ids must be unique"}),t.defaultBackendId&&!n.includes(t.defaultBackendId)&&e.addIssue({code:s.ZodIssueCode.custom,path:["defaultBackendId"],message:"default backend id must reference a declared backend"})});var hG=s.object({perRequestMinUnitsByDim:dt(s.number()).optional(),perDimUnitCostMicros:dt(s.number()).optional()}),bG=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(),dt(s.number())).optional()}),_G=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()}),vG=s.object({routeId:s.string().min(1),method:s.string(),path:s.string(),meters:s.array(s.string()).optional(),usagePolicy:Af.optional(),policyResolutionMode:s.literal("policy").optional()}),Voe=s.object({v:s.number(),sub:s.string(),compiledPlanId:s.string().min(1),planType:s.string(),ts:s.number(),constraints:s.array(fw),cv:s.number(),policyResolutionMode:s.literal("policy").optional(),dm:NC,dmv:s.number().optional(),floor:hG.nullable().optional(),displayDims:s.array(s.number()).optional(),meterSemantics:dt(_G).optional(),rp:dt(bG).optional(),fr:s.array(vG).optional(),sig:s.string().min(1),sigKid:s.string().optional(),environmentId:s.string().optional()}).passthrough();var bw=s.object({commercialReleaseVersionId:qt,commercialReleaseSequenceNumber:s.number().int().positive().safe()}).strict(),_w=s.object({version:s.literal(1),state:s.enum(["exact","unbound","unavailable"])}).strict(),qoe=s.object({subscriptionId:s.string().min(1),environmentEpoch:s.number().int().positive(),projectedAtGeneration:s.number().int().positive(),revision:s.string().regex(/^[1-9][0-9]*$/),usageStateGeneration:s.string().regex(/^[1-9][0-9]*$/),activePeriodId:s.string().optional(),activePeriodStartMs:s.number().int().nonnegative().optional(),usageIngestBillingCycle:s.object({billingCycleId:s.string().min(1),billingCycleStartMs:s.number().int().nonnegative(),billingCycleEndMs:s.number().int().positive(),subscriptionPeriodId:s.string().min(1)}).strict().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(),fundingProjection:s.object({availableNanos:s.string().regex(/^(0|[1-9][0-9]*)$/),periodStartMs:s.number(),periodEndMs:s.number(),policy:s.enum(["block","allow"]),epoch:s.number(),emergencyReserveCeilingNanos:s.string().regex(/^(0|[1-9][0-9]*)$/),capacityAuthoritative:s.boolean().optional()}).optional(),commercialAdmission:s.object({ratingContextVersionId:s.string().min(1),economicAgreementId:s.string().min(1).optional()}).optional(),commercialReleaseBinding:bw.optional(),commercialReleaseBindingStatus:_w.optional(),dedicatedShard:s.enum(["ACTIVE","DRAINING"]).optional(),usageLimits:s.array(s.unknown()).optional(),usageLimitStatus:s.literal("overflow").optional(),usageLimitGeneration:s.number().int().nonnegative().optional(),generation:s.number(),updatedAt:s.string()}).superRefine((t,e)=>{t.commercialReleaseBindingStatus?.state==="exact"&&!t.commercialReleaseBinding&&e.addIssue({code:s.ZodIssueCode.custom,path:["commercialReleaseBinding"],message:"exact commercial release status requires an exact binding"})}).transform(t=>{let e=fG(t.usageLimits),{usageLimits:n,...i}=t;return{...i,...e}});var yG=["DRAFT","ACTIVE"],Zoe=s.enum(yG),kG=["ONBOARDING","ACTIVE","SUSPENDED"],DC=s.enum(kG),wG=["ACTIVE","REVOKED","EXPIRED"],Woe=s.enum(wG),SG=["BLOCK","ALLOW_AND_BILL"],LC=s.enum(SG),IG=["ACTIVE","ARCHIVED"],Joe=s.enum(IG),EG=["ACTIVE","PHASING_OUT","SUPERSEDED","ARCHIVED"],Yoe=s.enum(EG);var nse=s.object({componentKey:s.string(),requiredPermission:s.string().nullable(),gateMode:s.string().nullable()});var UC=["input","output","total","cached_read_input","cache_creation_input","context","max_output","estimated_output","actual_output","streaming_output"];var TG="FS_RUNTIME_TOKEN";var RG={payload:"x-fs-metering",signature:"x-fs-metering-sig",token:"x-fs-metering-token"};var ose={environmentVariable:TG,presentation:RG.token,storage:"sha256-hash-only"};var MC={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 sse=10*1024*1024,xG=["text/event-stream","application/octet-stream","multipart/form-data"],ase=new Set(xG);var OG=["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"],use=s.enum(OG);var vw=["BRANCH_PREFIX","PULL_REQUEST","DISABLED"];var AG=2147483647,$G="^[a-z0-9_]{1,64}$",CG=["ORG","MEMBER","SERVICE_ACCOUNT"];var gse=s.enum(CG),hse=s.enum(["BLOCK","NOTIFY"]),NG=s.string().regex(new RegExp($G),"quantity must be a lowercase meter key"),BC=s.number().int().nonnegative().max(AG),Lf=s.number().min(.01).max(1);function KC(t,e){t.quantity==="spend"&&t.limitCents===void 0&&e.addIssue({code:"custom",path:["limitCents"],message:"spend limits must use limitCents"}),t.quantity!=="spend"&&t.limitUnits===void 0&&e.addIssue({code:"custom",path:["limitUnits"],message:"meter limits must use limitUnits"})}function Sw(t,e){t.mode==="NOTIFY"&&t.notifyAtPct==null&&e.addIssue({code:"custom",path:["notifyAtPct"],message:"notifyAtPct is required for NOTIFY limits"}),t.mode==="BLOCK"&&t.notifyAtPct!=null&&e.addIssue({code:"custom",path:["notifyAtPct"],message:"notifyAtPct is only valid for NOTIFY limits"}),t.mode==="NOTIFY"&&(t.limitUnits===0||t.limitCents===0)&&e.addIssue({code:"custom",path:[t.limitUnits===0?"limitUnits":"limitCents"],message:"zero-value usage limits must use BLOCK mode"})}var Jn={limitUnits:BC,limitCents:s.never().optional()},Yn={limitUnits:s.never().optional(),limitCents:BC},ww={limitUnits:s.never().optional(),limitCents:s.never().optional()},Pf={scope:s.literal("ORG"),subjectId:s.never().optional()},zf={scope:s.literal("MEMBER"),subjectId:s.string().min(1).max(128)},Df={scope:s.literal("SERVICE_ACCOUNT"),subjectId:s.string().min(1).max(128)},Ri={mode:s.literal("BLOCK"),notifyAtPct:s.never().optional()},xi={mode:s.literal("NOTIFY"),notifyAtPct:Lf};function Dt(t){return s.object({quantity:NG,...t}).strict()}var bse=s.union([Dt({...Jn,...Ri}),Dt({...Jn,...xi}),Dt({...Yn,...Ri}),Dt({...Yn,...xi})]).superRefine((t,e)=>{KC(t,e),Sw(t,e)}),_se=s.union([Dt({...Pf,...Jn,...Ri}),Dt({...Pf,...Jn,...xi}),Dt({...Pf,...Yn,...Ri}),Dt({...Pf,...Yn,...xi}),Dt({...zf,...Jn,...Ri}),Dt({...zf,...Jn,...xi}),Dt({...zf,...Yn,...Ri}),Dt({...zf,...Yn,...xi}),Dt({...Df,...Jn,...Ri}),Dt({...Df,...Jn,...xi}),Dt({...Df,...Yn,...Ri}),Dt({...Df,...Yn,...xi})]).superRefine((t,e)=>{KC(t,e),Sw(t,e)}),jC={mode:s.never().optional(),notifyAtPct:Lf.nullable().optional()},PG={...ww,mode:s.never().optional(),notifyAtPct:Lf.nullable()},yw={mode:s.literal("BLOCK"),notifyAtPct:s.null().optional()},kw={mode:s.literal("NOTIFY"),notifyAtPct:Lf};function Dr(t){return s.object(t).strict()}var vse=s.union([Dr({...Jn,...jC}),Dr({...Yn,...jC}),Dr(PG),Dr({...Jn,...yw}),Dr({...Yn,...yw}),Dr({...ww,...yw}),Dr({...Jn,...kw}),Dr({...Yn,...kw}),Dr({...ww,...kw})]).superRefine((t,e)=>{Sw(t,e)});var zG=s.object({id:s.string(),name:s.string(),displayName:s.string().nullable(),description:s.string().nullable(),iconUrl:s.string().nullable(),logoUrl:s.string().nullable(),portalHostname:s.string().nullable()}).strict(),wse=s.object({organization:s.object({slug:s.string(),name:s.string()}).strict(),businesses:s.array(zG)}).strict();var DG=s.object({d:s.number(),w:s.number(),capacity:s.number(),remaining:s.number(),windowStart:s.number(),windowEnd:s.number(),refundedTotal:s.number().optional()}),LG=s.record(s.string(),DG),UG=s.object({allocations:s.array(s.number()),expiresAt:s.number()}),MG=s.record(s.string(),UG),jG=s.discriminatedUnion("state",[s.object({state:s.literal("pending"),event:s.record(s.string(),s.unknown()),storedAt:s.number(),attempts:s.number(),expiresAt:s.number(),nextAttemptAt:s.number().optional()}),s.object({state:s.literal("acked"),expiresAt:s.number()})]),BG=s.record(s.string(),jG),KG=s.object({record:s.record(s.string(),s.unknown()),storedAt:s.number(),expiresAt:s.number()}),FG=s.record(s.string(),KG),VG=s.object({storageKey:s.string(),windowKey:s.string(),windowStart:s.number(),dimension:s.number(),amount:s.number()}),qG=s.object({granted:s.array(s.number()),deductedWindows:s.array(VG).optional(),settled:s.array(s.number()),expiresAt:s.number()}),HG=s.record(s.string(),s.record(s.string(),qG)),GG=s.record(s.string(),s.bigint()),Rse=s.object({subscriptionId:s.string(),handoffToken:s.string(),usageStateGeneration:s.string().regex(/^[1-9][0-9]*$/u).optional(),targetShardId:s.string(),policyVersion:s.number(),entitlementVersion:s.number().nullable(),windowStates:LG,activeLeases:MG,totalsByDimension:GG.optional(),billingCycleId:s.string().nullable().optional(),billingCycleStartMs:s.number().optional(),pendingEmissions:BG.optional(),pendingEmissionSaturatedAt:s.number().optional(),pendingThresholds:FG.optional(),reapedLeaseTombstoneBuckets:HG.optional()});function Oi(t){return Iw(t)}function Iw(t){if(t===null)return"null";if(t===!0)return"true";if(t===!1)return"false";if(typeof t=="number"){if(!Number.isFinite(t))throw new Error(`canonicalize: non-finite number (${t}) is not valid JSON`);return JSON.stringify(t)}if(typeof t=="string")return JSON.stringify(t);if(Array.isArray(t))return t.length===0?"[]":`[${t.map(Iw).join(",")}]`;if(typeof t=="object"){let e=t,n=Object.keys(e).sort();if(n.length===0)return"{}";let i=[];for(let r of n){let o=e[r];o!==void 0&&i.push(`${JSON.stringify(r)}:${Iw(o)}`)}return`{${i.join(",")}}`}throw new Error(`canonicalize: unsupported value type (${typeof t}); only JSON-serializable values are allowed`)}var FC=new Set(["read","export","download"]);var Ew={subscription:["read","cancel","restore","change_plan"],usage:["read","export"],invoice:["read","pay","download"],team:["read","invite","remove_member","change_role","manage_rbac","assign_product_role"],apikey:["read","create","rotate","revoke"],service_account:["read","create","update","rotate","revoke"],usage_limit:["read","create","update","delete"],audit_log:["read"]},Nse=Object.keys(Ew),Pse=Object.fromEntries(Object.entries(Ew).map(([t,e])=>[t,{read:e.filter(n=>FC.has(n)),write:e.filter(n=>!FC.has(n))}]));function bo(t){if(t==="*")return{subject:"*",verb:"*"};let e=t.indexOf(":");if(e<=0||e===t.length-1)return null;let n=t.slice(0,e),i=t.slice(e+1);return n.length===0||i.length===0?null:{subject:n,verb:i}}function VC(t,e){if(e.includes("*")||e.includes(t))return!0;let n=bo(t);if(n===null)return!1;if(n.subject!=="*"&&e.includes(`${n.subject}:*`))return!0;if(n.verb==="*"&&n.subject!=="*"){let i=`${n.subject}:`;return e.some(r=>r.startsWith(i))}return!1}function qC(t,e){if(e.includes("*")||e.includes(t))return!0;let n=bo(t);return n===null?!1:n.verb!=="*"&&n.subject!=="*"&&e.includes(`${n.subject}:*`)}var Ht={SUBSCRIPTION:"subscription",APIKEY:"apikey",USAGE:"usage",INVOICE:"invoice",TEAM:"team",AUDIT_LOG:"audit_log",SERVICE_ACCOUNT:"service_account",CHANGE_SET:"change_set",NOTIFICATION:"notification",USAGE_LIMIT:"usage_limit"},ZG=["read","cancel","restore","change_plan"],WG=["read","create","rotate","revoke"],JG=["read","export"],YG=["read","pay","download"],XG=["read","invite","remove_member","change_role","manage_rbac","assign_product_role"],QG=["read"],e6=["read","create","update","rotate","revoke"],t6=["read","propose","approve","apply","rollback","cancel"],n6=["read","manage"],r6=["read","create","update","delete"],HC={[Ht.SUBSCRIPTION]:ZG,[Ht.APIKEY]:WG,[Ht.USAGE]:JG,[Ht.INVOICE]:YG,[Ht.TEAM]:XG,[Ht.AUDIT_LOG]:QG,[Ht.SERVICE_ACCOUNT]:e6,[Ht.CHANGE_SET]:t6,[Ht.NOTIFICATION]:n6,[Ht.USAGE_LIMIT]:r6};var Mse=Object.values(HC).reduce((t,e)=>t+e.length,0);var i6=[Ht.CHANGE_SET,Ht.SERVICE_ACCOUNT],jse=Object.entries(HC).filter(([,t])=>t.includes("read")).filter(([t])=>!i6.includes(t)).map(([t])=>({resource:t,verb:"read"})),Bse=[{resource:Ht.SUBSCRIPTION,verb:"cancel"},{resource:Ht.TEAM,verb:"remove_member"},{resource:Ht.USAGE_LIMIT,verb:"delete"}];var Lr=/^[a-z][a-z0-9_]{1,31}$/;var o6={gatewayProjectRead:"gateway:project:read",gatewayResourceWrite:"gateway:resource:write",usageWrite:"usage:write",usageMeterHandoff:"usage-meter:handoff",usageMeterSnapshot:"usage-meter:snapshot",usageMeterCancel:"usage-meter:cancel",usageMeterReset:"usage-meter:reset",usageMeterStateRead:"usage-meter:state:read",usageMeterSequenceSeal:"usage-meter:sequence:seal",usageMeterSequenceAcknowledge:"usage-meter:sequence:acknowledge",authzDeniedWrite:"authz-denied:write",reservationAuthorize:"reservation:authorize",reservationFinalize:"reservation:finalize",internalCronRun:"internal:cron:run",workflowExecute:"workflow:execute",workflowCreate:"workflow:create",workflowStatusRead:"workflow:status:read",workflowTerminate:"workflow:terminate",personaManage:"persona:manage",proxyTrust:"proxy:trust",internalAdmin:"internal:admin",agentDispatch:"agent:dispatch",buildDispatch:"build:dispatch",internalNotify:"internal:notify",analyticsQuery:"analytics:query",manifestReaderRead:"manifest-reader:read"},sae=Object.values(o6);var Uf=256,s6=s.enum(["create","delete"]),a6=s.enum(["RESERVED","COMMITTED","RELEASED","DENIED"]),c6=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(Uf).optional()}).strict();var lae=c6.extend({statusCode:s.number().int().min(100).max(599)}).strict(),uae=s.object({mutationId:s.string().min(1).max(200),resource:s.string().min(1).max(120),effect:s6,state:a6,count:s.number().int().nonnegative(),limit:s.number().int().nonnegative().nullable(),replayed:s.boolean()}).strict(),dae=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 l6=["managed_frontend","custom_frontend","embedded_sdk","public_api","cli","agent","webhook","admin","internal"],ZC=s.enum(l6),GC=s.string().min(1).max(128),u6=s.object({d:s.number().int().nonnegative(),w:s.number().int().positive(),rem:s.number(),cap:s.number()}).strict(),WC=s.object({v:s.literal(1),entV:s.number().int().nonnegative().optional(),entHash:GC.optional(),featureGrant:s.boolean().optional(),gates:s.array(GC).max(16).optional(),limits:s.array(u6).max(16).optional()}).strict();import{createHash as m6}from"node:crypto";var Xn=s.enum(["immediate","period_end"]),Ai=s.object({default:Xn.default("period_end"),when:s.object({price_increase:Xn.optional(),price_decrease:Xn.optional(),route_grant_added:Xn.optional(),route_grant_removed:Xn.optional(),limit_increased:Xn.optional(),limit_reduced:Xn.optional(),credit_increased:Xn.optional(),credit_reduced:Xn.optional(),rating_changed:Xn.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 n of["route_grant_removed","limit_reduced","credit_reduced"])(t.when[n]??t.default)==="immediate"&&!t.allowImmediateEntitlementReduction&&e.addIssue({code:"custom",path:["when",n],message:`${n} cannot switch immediately without allowImmediateEntitlementReduction: true`})}),d6=Ai.parse({});var YC=s.enum(["compiled_plan_set","entitlement","routes","route_grants","frontend_integrations","measurement_schema","admission_descriptor","commercial_policy","rating_context"]),Iae=s.object({kind:YC,schemaVersion:s.number().int().positive(),contentHash:ht}).strict();function Ur(t){return s.object({kind:s.literal(t),schemaVersion:s.number().int().positive(),contentHash:ht}).strict()}var p6=s.object({ratingContextVersionId:ee,descriptorSetHash:ht,artifact:Ur("admission_descriptor"),routeKeys:s.array(ea).min(1)}).strict().superRefine((t,e)=>{t.descriptorSetHash!==t.artifact.contentHash&&G(e,"descriptorSetHash must equal artifact.contentHash",["descriptorSetHash"]),ut(t.routeKeys)||G(e,"routeKeys must be sorted and unique",["routeKeys"])}),f6=s.object({compiledPlanId:ee,compiledPlanHash:ht,entitlement:Ur("entitlement"),routes:Ur("routes"),routeGrants:Ur("route_grants"),frontendIntegrations:Ur("frontend_integrations"),measurementSchema:Ur("measurement_schema"),admissionDescriptorSets:s.array(p6),commercialPolicy:Ur("commercial_policy")}).strict().superRefine((t,e)=>{let n=t.admissionDescriptorSets.map(i=>i.ratingContextVersionId);ut(n)||G(e,"admission descriptor sets must be sorted and unique by rating context",["admissionDescriptorSets"])}),g6=s.object({ratingContextVersionId:ee,artifact:Ur("rating_context")}).strict(),h6=s.object({policy:Ai.nullable(),applyLimitUpgradesInstantly:s.boolean()}).strict(),b6=s.object({schemaVersion:s.literal(1),businessId:ee,environmentScope:Ei,compiledPlanSet:s.object({compiledPlanSetId:jl,artifact:Ur("compiled_plan_set"),members:s.array(f6).min(1)}).strict(),ratingContexts:s.array(g6),compatibility:s.object({kvKeySchemaVersion:s.number().int().positive(),entitlementSchemaVersion:s.number().int().positive(),usageEventSchemaVersion:s.number().int().positive(),gatewayCommercialSchemaVersion:s.number().int().positive(),ratingEngineVersion:ee}).strict(),subscriberMove:h6.optional()}).strict().superRefine((t,e)=>{t.compiledPlanSet.compiledPlanSetId!==`cps_${t.compiledPlanSet.artifact.contentHash}`&&G(e,"compiledPlanSetId must bind the compiled-plan-set artifact",["compiledPlanSet","compiledPlanSetId"]);let n=t.compiledPlanSet.members.map(o=>o.compiledPlanId);ut(n)||G(e,"compiled plan members must be sorted and unique",["compiledPlanSet","members"]);let i=t.ratingContexts.map(o=>o.ratingContextVersionId);ut(i)||G(e,"rating contexts must be sorted and unique",["ratingContexts"]);let r=new Set(i);for(let[o,a]of t.compiledPlanSet.members.entries())for(let[c,l]of a.admissionDescriptorSets.entries())r.has(l.ratingContextVersionId)||G(e,"descriptor references an unknown rating context",["compiledPlanSet","members",o,"admissionDescriptorSets",c,"ratingContextVersionId"])}),_6="COMMERCIAL_RELEASE_MANIFEST_HASH_MISMATCH",v6=`farthershore:commercial-release-manifest:v1
|
|
107
|
-
`;function y6(t){return`sha256_${m6("sha256").update(v6,"utf8").update(Oi(t),"utf8").digest("hex")}`}var k6=s.object({commercialReleaseVersionId:qt,manifestHash:ht,manifestBody:b6}).strict().superRefine((t,e)=>{let n=y6(t.manifestBody);t.manifestHash!==n&&G(e,_6,["manifestHash"]),t.commercialReleaseVersionId!==`crv_${t.manifestHash}`&&G(e,"commercial release id must bind the manifest hash",["commercialReleaseVersionId"])}).readonly(),Tw=s.enum(["PUBLISH","ROLLBACK"]),Rw=BigInt(Number.MAX_SAFE_INTEGER),XC=s.string().regex(/^[1-9][0-9]*$/).superRefine((t,e)=>{/^[1-9][0-9]*$/.test(t)&&BigInt(t)>Rw&&G(e,"sequenceNumber must not exceed Number.MAX_SAFE_INTEGER")}),w6=s.object({kind:YC,schemaVersion:s.number().int().positive(),contentHash:ht,payload:s.unknown()}).strict(),JC=s.object({sequenceNumber:XC,action:Tw,effectiveAt:Ti,release:k6,artifacts:s.array(w6)}).strict(),Eae=s.object({current:JC.nullable(),retained:s.array(JC)}).strict();var Tae=s.object({id:ee,businessId:ee,environmentScope:Ei,sequenceNumber:XC,action:Tw,fromReleaseVersionId:qt.nullable(),toReleaseVersionId:qt,compiledPlanSetId:jl,releaseManifestHash:ht,effectiveAt:Ti,reason:s.string().min(1).max(1024).optional(),actorType:ce,actorId:ee}).strict().superRefine((t,e)=>{t.action==="ROLLBACK"&&t.fromReleaseVersionId===null&&G(e,"rollback requires fromReleaseVersionId",["fromReleaseVersionId"]),t.fromReleaseVersionId!==null&&t.fromReleaseVersionId===t.toReleaseVersionId&&G(e,"source and target releases must differ",["toReleaseVersionId"])}).readonly(),S6=s.object({pointerSchemaVersion:s.literal(1),businessId:ee,environmentScope:Ei,sequenceNumber:s.number().int().positive().safe(),action:Tw,fromReleaseVersionId:qt.nullable(),toReleaseVersionId:qt,compiledPlanSetId:jl,releaseManifestHash:ht,releaseLogId:ee}).strict(),I6=S6.extend({candidateContentHash:ht}),Rae=I6.extend({promotedContentHash:ht}),xae=s.object({pointerSchemaVersion:s.literal(1),businessId:ee,environmentScope:Ei,sequenceNumber:s.number().int().positive().safe(),releaseVersionId:qt,candidateContentHash:ht,reason:ce}).strict();var Oae=Object.freeze({VERIFIED_ACTIVE:"verified-active",VERIFIED_STALE_BOUNDED:"verified-stale-bounded",UNPROVABLE_CLOSED:"unprovable-closed"}),Aae=s.object({businessId:ee,environmentScope:Ei,releaseVersionId:qt,ratingContextVersionId:ee,ratingContextHash:ht,compiledPlanId:ee,routeKey:ea,descriptorSetHash:ht,compiledPlanSetId:jl,releaseManifestHash:ht,declaredBounds:dt(s.string().regex(/^[1-9][0-9]*$/),ce).optional()}).strict().readonly(),E6=s.union([s.object({leaseEpoch:s.number().int().nonnegative().safe(),leaseId:ee,intraLeaseCounter:s.number().int().nonnegative().safe()}).strict(),s.object({mode:s.literal("unfenced")}).strict()]),xw=s.object({subjectId:ee,compiledPlanId:ee,commercialReleaseVersionId:qt,ratingContextVersionId:ee,economicAgreementId:ee.optional(),routeKey:ea,descriptorSetHash:ht,commercialSequence:E6}).strict();var jf=1,Mr=1;var it=s.string().max(78).regex(/^(0|[1-9][0-9]*)$/),hr=s.string().max(78).regex(/^[1-9][0-9]*$/),na=s.object({authorityVersion:s.literal(jf),businessId:s.string().trim().min(1).max(512),environmentId:s.string().trim().min(1).max(512).nullable(),topologyVersion:it,partitionKey:s.string().trim().min(1).max(512),subscriptionId:s.string().trim().min(1).max(512),subscriptionPeriodId:s.string().trim().min(1).max(512),billingCycleId:s.string().trim().min(1).max(512),billingCycleStartMs:it,billingCycleEndMs:hr,epoch:it,sequence:hr}).strict(),QC=s.object({start:hr,end:hr}).strict().superRefine((t,e)=>{BigInt(t.end)<BigInt(t.start)&&e.addIssue({code:s.ZodIssueCode.custom,path:["end"],message:"range end must be greater than or equal to start"})}),eN=256,Ow=s.string().regex(/^sha256_[a-f0-9]{64}$/),tN=s.object({version:s.literal(Mr),pageSize:s.literal(eN),pageCount:it,rangeCount:it,rootHash:Ow}).strict().superRefine((t,e)=>{let n=BigInt(t.pageCount),i=BigInt(t.rangeCount);n===0n!=(i===0n)&&e.addIssue({code:s.ZodIssueCode.custom,path:["pageCount"],message:"pageCount and rangeCount must both be zero or both be nonzero"}),n>0n&&(i>n*BigInt(t.pageSize)||i<=(n-1n)*BigInt(t.pageSize))&&e.addIssue({code:s.ZodIssueCode.custom,path:["rangeCount"],message:"rangeCount must fill every page except possibly the last"})}),Nae=s.object({version:s.literal(Mr),pageIndex:it,ranges:s.array(QC).min(1).max(eN),pageHash:Ow,durable:s.literal(!0)}).strict().superRefine((t,e)=>{T6(t.ranges,t.ranges.at(-1)?.end??"0",e,["ranges"])});function T6(t,e,n,i){let r=0n,o=BigInt(e);for(let[a,c]of t.entries()){let l=BigInt(c.start),u=BigInt(c.end);(l<=r||u>o)&&n.addIssue({code:s.ZodIssueCode.custom,path:[...i,a],message:"ranges must be ordered, disjoint, and within the authority high-water mark"}),r=u}}var nN=s.object({eventId:s.string().trim().min(1),...na.shape,durable:s.literal(!0)}).strict(),R6=1,rN=na.omit({sequence:!0}).shape,x6=s.object({leaseVersion:s.literal(R6),leaseId:s.string().trim().min(1).max(512),leaseEpoch:hr,...rN,lo:hr,hi:hr,drawnThrough:it,absoluteExpiresAt:it}).strict().superRefine((t,e)=>{BigInt(t.hi)<=BigInt(t.lo)&&e.addIssue({code:s.ZodIssueCode.custom,path:["hi"],message:"lease hi must be greater than lo"});let n=BigInt(t.drawnThrough);(n+1n<BigInt(t.lo)||n>=BigInt(t.hi))&&e.addIssue({code:s.ZodIssueCode.custom,path:["drawnThrough"],message:"drawnThrough must be within [lo-1, hi)"})}),Pae=s.object({...rN,leaseId:s.string().trim().min(1).max(512),width:s.number().int().positive().max(256)}).strict(),zae=s.object({version:s.literal(Mr),lease:x6,durable:s.literal(!0)}).strict(),Dae=s.object({version:s.literal(Mr),shardId:s.string().min(1),receipts:s.array(nN).min(1).max(100)}).strict(),Lae=s.object({version:s.literal(Mr),shardId:s.string().min(1).optional(),receipts:s.array(s.unknown()).min(1).max(100)}).strict(),Uae=s.object({version:s.literal(Mr),compacted:s.number().int().nonnegative(),durable:s.literal(!0),rejected:s.array(s.object({eventId:s.string(),partitionKey:s.string(),reason:s.enum(["malformed","refused"])}).strict())}).strict(),O6=s.object({authorityVersion:s.literal(jf),businessId:s.string().trim().min(1).max(512),environmentId:s.string().trim().min(1).max(512).nullable(),topologyVersion:it,partitionKey:s.string().trim().min(1).max(512),subscriptionId:s.string().trim().min(1).max(512),subscriptionPeriodId:s.string().trim().min(1).max(512),billingCycleId:s.string().trim().min(1).max(512),billingCycleStartMs:it,billingCycleEndMs:hr,epoch:it,contiguousCommittedThrough:it,observedThrough:it,openGaps:s.array(QC),durable:s.literal(!0)}).strict().superRefine((t,e)=>{let n=BigInt(t.contiguousCommittedThrough),i=BigInt(t.observedThrough);i<n&&e.addIssue({code:s.ZodIssueCode.custom,path:["observedThrough"],message:"observedThrough must not precede contiguousCommittedThrough"});let r=n;for(let[o,a]of t.openGaps.entries()){let c=BigInt(a.start),l=BigInt(a.end);(c<=n||l>i||c<=r)&&e.addIssue({code:s.ZodIssueCode.custom,path:["openGaps",o],message:"gaps must be ordered, disjoint, above contiguousThrough, and at or below observedThrough"}),r=l}}),iN=s.object({version:s.literal(Mr),receipts:s.array(nN),partitions:s.array(O6)}).strict(),Mae=s.object({version:s.literal(Mr),authorityVersion:s.literal(jf),businessId:s.string().trim().min(1).max(512),environmentId:s.string().trim().min(1).max(512).nullable(),topologyVersion:it,partitionKey:s.string().trim().min(1).max(512),subscriptionId:s.string().trim().min(1).max(512),subscriptionPeriodId:s.string().trim().min(1).max(512),billingCycleId:s.string().trim().min(1).max(512),billingCycleStartMs:it,billingCycleEndMs:hr,epoch:it,sealedThrough:it,abandonedRangeManifest:tN,authorityProofHash:Ow,durable:s.literal(!0)}).strict().superRefine((t,e)=>{t.authorityProofHash!==t.abandonedRangeManifest.rootHash&&e.addIssue({code:s.ZodIssueCode.custom,path:["authorityProofHash"],message:"authority proof must equal the abandoned-range manifest root"})}),jae=s.object({version:s.literal(Mr),billingCycleId:s.string().trim().min(1),partitions:s.array(s.object({authorityVersion:s.literal(jf),businessId:s.string().trim().min(1).max(512),environmentId:s.string().trim().min(1).max(512).nullable(),topologyVersion:it,partitionKey:s.string().trim().min(1).max(512),subscriptionId:s.string().trim().min(1).max(512),subscriptionPeriodId:s.string().trim().min(1).max(512),billingCycleId:s.string().trim().min(1).max(512),billingCycleStartMs:it,billingCycleEndMs:hr,epoch:it,sealedThrough:it,observedThrough:it,abandonedRangeManifest:tN,authorityProofHash:s.string().regex(/^sha256_[a-f0-9]{64}$/),durable:s.literal(!0)}).strict().superRefine((t,e)=>{t.authorityProofHash!==t.abandonedRangeManifest.rootHash&&e.addIssue({code:s.ZodIssueCode.custom,path:["authorityProofHash"],message:"authority proof must equal manifest root"}),BigInt(t.observedThrough)>BigInt(t.sealedThrough)&&e.addIssue({code:s.ZodIssueCode.custom,path:["observedThrough"],message:"observedThrough must not exceed sealedThrough"})}))}).strict();var sN=1,A6=["resource_lifecycle_only","platform_only_request","provider_restamped","usage_policy","legacy_tenant_metering"],$6=["credentialed_gateway_work","no_resolved_credential"],Bf=s.object({usageEventSchemaVersion:s.number().int().positive().optional(),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:DC,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(A6).optional(),platformBillableReason:s.enum($6).optional(),postStreamPending:s.boolean().optional(),measureContext:s.record(s.string(),s.unknown()).optional(),creditUnitsConsumed:s.record(s.string(),s.number()).optional(),measurementsVersion:s.number().int().positive().optional(),measurements:s.array(s.object({meter:s.string().min(1),values:s.record(s.string(),s.number().int().nonnegative().safe()),dims:s.record(s.string(),s.string()).optional()})).optional(),quote:s.object({currency:s.string(),amountNanos:s.string()}).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:LC.optional(),environment:s.enum(["production","sandbox"]).optional(),surface:ZC.optional(),actionId:s.string().min(1).max(128).optional(),resourceMutationId:s.string().min(1).max(200).optional(),resourceMutationRequestId:s.string().min(1).max(200).optional(),resourceMutationSubjectId:s.string().min(1).max(Uf).optional(),resourceMutationCompiledPlanId:s.string().min(1).optional(),subjectType:s.string().min(1).max(128).optional(),subjectId:s.string().min(1).max(Uf).optional(),decision:WC.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(Bl).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(),usageStateGeneration:s.string().regex(/^[1-9][0-9]*$/).optional(),policyVersion:s.number().int().nonnegative().optional(),artifactVersion:s.number().int().nonnegative(),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(),servedIdentity:xw.optional(),releaseProof:s.enum(["active","emergency"]).optional(),signingKeyId:s.string().trim().min(1).optional(),admissionProof:s.record(s.string(),s.unknown()).optional(),usageIngestSequence:na.optional()}).passthrough(),ece={rawDimsUnits:ta(Bf.shape.rawDimsUnits.optional()),creditUnitsConsumed:ta(Bf.shape.creditUnitsConsumed),measurements:s.unknown().superRefine((t,e)=>{Array.isArray(t)&&t.forEach((n,i)=>{let r=n!==null&&typeof n=="object"?n.values:void 0;for(let o of hw(r))e.addIssue({code:s.ZodIssueCode.custom,path:[i,"values",o],message:$f})})}).pipe(Bf.shape.measurements)},oN=s.string().regex(/^[A-Za-z0-9_-]+$/),C6=Bf.and(s.object({usageEventSchemaVersion:s.literal(sN),servedIdentity:xw,releaseProof:s.enum(["active","emergency"]),admissionProof:s.record(s.string(),s.unknown()),usageIngestSequence:na.optional()}).passthrough());var tce=s.object({envelopeVersion:s.literal(1),usageEventSchemaVersion:s.literal(sN),algorithm:s.literal("Ed25519"),signingKeyId:s.string().trim().min(1),canonicalBytes:oN,payload:C6,signature:oN}).strict().superRefine((t,e)=>{t.payload.usageEventSchemaVersion!==t.usageEventSchemaVersion&&e.addIssue({code:s.ZodIssueCode.custom,path:["payload","usageEventSchemaVersion"],message:"payload schema version must match envelope schema version"})});var Qn=s.number().int().nonnegative(),N6=s.discriminatedUnion("disposition",[s.object({eventId:s.string().min(1),disposition:s.literal("committed"),durable:s.literal(!0)}).strict(),s.object({eventId:s.string().min(1),disposition:s.literal("quarantined"),durable:s.literal(!0),reason:s.enum(["ACTION_RESOURCE_MUTATION_CONFLICT","ACTION_RESOURCE_MUTATION_INVALID"]),quarantineBatchId:s.string().min(1)}).strict()]),nce=s.object({ingested:Qn,duplicates:Qn,droppedOrphans:Qn.default(0),parkedInvalid:Qn.default(0),errors:s.array(s.unknown()),resourceMutationOutcomes:s.array(N6).optional()}).passthrough(),rce=s.object({ingested:Qn,duplicates:Qn,dropped:Qn,errors:s.array(s.unknown())}).passthrough(),ice=s.object({batchId:s.string(),ingested:Qn,duplicates:Qn,parkedInvalid:Qn.default(0),aggregateUpdates:Qn,quarantined:s.boolean()}).passthrough(),P6="usage_ingest_saturated";var oce=s.object({error:s.object({code:s.literal(P6)}).passthrough()}).passthrough();var z6=s.object({path:s.string(),code:s.string(),message:s.string()}),cce=s.object({reason:s.literal("schema_validation_failed"),receivedAt:s.string(),rawPayload:s.unknown(),issues:s.array(z6),consumerVersion:s.string().optional(),originalMessageId:s.string().optional()});var aN=[{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:"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. Each crossing (subscription, limit, window, threshold, and actor scope) keeps the same event id across deliveries, so handle each event id once."},{name:"rate_limit.exceeded",webhook:!1,description:"The gateway denied a request for exceeding a rate limit. Internal fact only \u2014 no webhook producer exists, so builders cannot subscribe to it (events exist on the wire only when something emits them)."},{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:"usage.archive_checkpoint",webhook:!1,description:"A guarded stage certificate checkpoint for one durable usage-ingest sequence authority; it is evidence, never a usage or billing fact."},{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)."}],D6=aN.map(t=>t.name),cN=aN.filter(t=>t.webhook).map(t=>t.name),br=s.enum(D6);var lN=["subscription.created","subscription.updated","subscription.canceled","payment.succeeded","payment.failed","entitlement.changed","usage.threshold_reached"],_o=lN;{let t=new Set(cN),e=new Set(lN),n=[...t].filter(r=>!e.has(r)),i=[...e].filter(r=>!t.has(r));if(n.length>0||i.length>0)throw new Error(`[webhooks/events] WEBHOOK_EVENT_NAMES drifted from the events catalog. Missing from order tuple: [${n.join(", ")}]; extra in order tuple: [${i.join(", ")}]. Reconcile ../events/catalog.ts (webhook: true entries) with WEBHOOK_EVENT_ORDER in this file.`)}var L6=s.enum(_o);var uN=s.object({type:s.literal("named"),name:s.enum(["second","minute","hour","day","week","month"])}),dN=s.object({type:s.literal("custom"),seconds:s.number().int().positive(),label:s.string().optional()}),Vl=s.discriminatedUnion("type",[uN,dN]),ra={second:1,minute:60,hour:3600,day:86400,week:604800,month:2592e3};var U6="PRICING_RULE_KEY_REQUIRED",M6="PRICING_RULE_KEY_DUPLICATE",vo="PRICING_SELECTOR_NAMESPACE_VIOLATION",j6="BACKEND_QUOTE_BOUNDS_REQUIRED",ct={namespaceWhitespace:"catalog namespace components must not have outer whitespace",namespaceSlash:'catalog namespace components must not contain "/"',namespaceGlob:"catalog namespace components must not contain glob metacharacters",rationalReduced:"rational must be reduced",catalogItemForm:"catalog item must use provider/model form",selectorWhitespace:"catalog selector components must not have outer whitespace",selectorSlash:'catalog selector components must not contain "/"',selectorGlobRequired:"catalog selector model glob must contain *",selectorUnsupported:"catalog selector model glob contains unsupported characters",whereSorted:"catalog where conditions must be sorted and unique by dimensionKey",keyRequired:"catalog entries require an explicit stable key; add a semantic rule key",namespaceFree:"namespace-free catalog entries cannot declare agreement applicability; add an item or remove applicability",keysUnique:"catalog entry keys must be unique; rename the duplicate semantic rule key",equalSpecificity:"catalog entries overlap at equal specificity; make their selectors disjoint",rateOrTiers:"catalog entries declare exactly one of a flat rate, a tier table, or backend-quote bounds",quoteBounds:"backendQuoted rules require finite repo-authored {min,max} bounds with min <= max",numPath:"num",ratePath:"rate",applicabilityPath:"applicability",catalogPath:"catalog",wherePath:"where",dimensionKeyPath:"dimensionKey"},ia=s.string().min(1).max(128).refine(t=>t===t.trim(),{message:ct.namespaceWhitespace,params:{code:vo}}).refine(t=>!t.includes("/"),{message:ct.namespaceSlash,params:{code:vo}}).refine(t=>!/[?*\[\]]/.test(t),{message:ct.namespaceGlob,params:{code:vo}}),Aw=s.string().regex(/^[1-9][0-9]*$/).max(128);function B6(t,e){let n=t,i=e;for(;i!==0n;){let r=n%i;n=i,i=r}return n}var ql=s.object({num:Aw,den:Aw}).strict().superRefine((t,e)=>{!/^[1-9][0-9]*$/.test(t.num)||!/^[1-9][0-9]*$/.test(t.den)||B6(BigInt(t.num),BigInt(t.den))!==1n&&G(e,ct.rationalReduced,[ct.numPath])});var Vf=ql,qf=s.object({provider:ia,model:ia,modality:ia.optional()}).strict(),wce=s.string().superRefine((t,e)=>{let n=t.split("/");(n.length!==2||n.some(i=>!ia.safeParse(i).success))&&G(e,ct.catalogItemForm)}),K6=s.string().min(1).max(128).refine(t=>t===t.trim(),{message:ct.selectorWhitespace,params:{code:vo}}).refine(t=>!t.includes("/"),{message:ct.selectorSlash,params:{code:vo}}).refine(t=>t.includes("*"),{message:ct.selectorGlobRequired,params:{code:vo}}).regex(/^[A-Za-z0-9._*-]+$/,{message:ct.selectorUnsupported}),Hf=s.discriminatedUnion("kind",[s.object({kind:s.literal("catalog_item"),item:qf}).strict(),s.object({kind:s.literal("provider_model_glob"),provider:ia,modelGlob:K6,modality:ia.optional()}).strict()]),F6=s.object({dimensionKey:ce,operator:s.literal("eq"),value:ce}).strict(),Cw=s.object({multiplier:ql,when:F6}).strict(),Sce=s.object({id:ee,businessId:ee,key:ce,meterKey:ce}).strict(),V6=s.object({dimensionKey:ce,value:ce}).strict(),q6=s.array(V6).min(1).superRefine((t,e)=>{let n=t.map(i=>i.dimensionKey);for(let i=1;i<n.length;i+=1)if(An(n[i-1],n[i])>=0){G(e,ct.whereSorted);return}}),Kf="CATALOG_TIER_TABLE_INVALID",H6=s.object({upTo:Aw.nullable(),rate:Vf}).strict(),G6=s.object({window:Vl,resetTrigger:s.enum(["billing_period","subscription_start"]).optional()}).strict().superRefine((t,e)=>{let n=t.window.type==="named"?ra[t.window.name]:t.window.seconds;(!Number.isSafeInteger(n)||n<3600||n>31622400)&&e.addIssue({code:"custom",path:["window"],message:`Pricing windows must be at least one hour and use a safe integer number of seconds. Pricing windows can be at most one year (${31622400 .toLocaleString("en-US")} seconds)`})}),Z6=s.object({strategy:s.enum(["graduated"]),accumulation:G6.optional(),tiers:s.array(H6).min(1)}).strict().superRefine((t,e)=>{let n=0n;for(let[i,r]of t.tiers.entries()){let o=i===t.tiers.length-1;if(r.upTo===null){o||G(e,"only the final catalog tier may be open-ended",["tiers",i,"upTo"],Kf);continue}o&&G(e,"the final catalog tier must be open-ended (upTo: null)",["tiers",i,"upTo"],Kf);let a=BigInt(r.upTo);a<=n&&G(e,"catalog tier bounds must be strictly ascending",["tiers",i,"upTo"],Kf),n=a}});function W6(t,e){return BigInt(t.num)*BigInt(e.den)<=BigInt(e.num)*BigInt(t.den)}var J6=s.object({kind:s.literal("backend_quoted"),min:Vf,max:Vf}).strict().superRefine((t,e)=>{W6(t.min,t.max)||G(e,ct.quoteBounds,["max"],j6)}),Y6=s.unknown().superRefine((t,e)=>{t===void 0&&G(e,ct.keyRequired,[],U6)}).pipe(ce),Nw=s.object({key:Y6,item:qf.optional(),measurementKey:ce,where:q6.optional(),rate:Vf.optional(),tiers:Z6.optional(),quote:J6.optional(),applicability:Hf.optional()}).strict().superRefine((t,e)=>{[t.rate,t.tiers,t.quote].filter(i=>i!==void 0).length!==1&&G(e,ct.rateOrTiers,[ct.ratePath],Kf),t.item===void 0&&t.applicability!==void 0&&G(e,ct.namespaceFree,[ct.applicabilityPath],vo)}),X6="CATALOG_ENTRY_AMBIGUOUS";function Q6(t,e){return t?.provider===e?.provider&&t?.model===e?.model&&t?.modality===e?.modality}function eZ(t,e){if(t===void 0||e===void 0)return!0;let n=new Map(t.map(i=>[i.dimensionKey,i.value]));return e.every(i=>n.get(i.dimensionKey)===void 0||n.get(i.dimensionKey)===i.value)}function mN(t){return(t.item===void 0?0:2)+(t.where===void 0?0:1)}function tZ(t,e){return t.measurementKey!==e.measurementKey||mN(t)!==mN(e)||t.item!==void 0&&!Q6(t.item,e.item)?!1:eZ(t.where,e.where)}var Ice=s.object({id:ee,pricingPolicyId:ee,version:s.number().int().positive(),currency:s.literal("usd"),catalog:s.array(Nw).min(1),modifiers:s.array(Cw).default([])}).strict().superRefine((t,e)=>{let n=t.catalog.map(i=>i.key);new Set(n).size!==n.length&&G(e,ct.keysUnique,[ct.catalogPath],M6);for(let i=1;i<t.catalog.length;i+=1){let r=t.catalog[i];for(let o=0;o<i;o+=1){let a=t.catalog[o];if(tZ(a,r)){G(e,ct.equalSpecificity,[ct.catalogPath,i],X6);break}}}}).readonly();var yo=t=>s.array(t).superRefine((e,n)=>{let i=e.map(r=>r.key);ut(i)||G(n,"commerce declarations must be sorted and unique by key")}),oa=s.enum(["free","flat","usage","prepaid","hybrid","trial","custom"]),nZ=s.object({key:ce,kind:oa,price:s.object({currency:s.literal("usd"),interval:s.enum(["month","year"]),recurringFeeMinor:s.number().int().nonnegative().safe()}).strict().optional(),usagePricing:s.object({kind:s.enum(["current","current_with_contract_terms","fixed_version"]),pricingPolicyKey:ce,version:s.number().int().positive().safe().optional()}).strict().superRefine((t,e)=>{t.kind==="fixed_version"&&t.version===void 0&&e.addIssue({code:"custom",path:["version"],message:"fixed_version pricing requires version"}),t.kind!=="fixed_version"&&t.version!==void 0&&e.addIssue({code:"custom",path:["version"],message:`${t.kind} pricing must not declare version`})}).optional(),funding:s.object({buckets:s.array(s.object({kind:s.enum(["included","promo","referral","prepaid"]),currency:s.literal("usd"),amountMinor:s.number().int().nonnegative().safe(),topUp:s.boolean().optional(),display:s.object({kind:s.literal("multiplier"),factor:s.number().positive().finite(),baseMinor:s.number().int().nonnegative().safe()}).strict().optional()}).strict())}).strict().optional(),lifecycle:s.object({trialDays:s.number().int().positive().safe()}).strict().optional(),spendPolicy:s.object({disclosure:s.enum(["opaque","transparent"]).optional(),rail:s.literal("x402").optional(),onExhaustion:s.object({behavior:s.enum(["block","overage"]),pricingPolicyKey:ce.optional()}).strict()}).strict().optional()}).strict(),rZ=s.object({key:ce,meterKey:ce,currency:s.literal("usd"),catalog:s.array(Nw).min(1),modifiers:s.array(Cw)}).strict(),pN=s.object({schemaVersion:s.literal(1),measures:yo(s.object({key:Wn(ce)}).strict()),dimensions:yo(s.object({key:ce,values:s.array(ce).min(1).superRefine((t,e)=>{ut(t)||G(e,"dimension values must be sorted and unique")}).optional()}).strict()),providers:yo(s.object({key:ce,models:s.array(ce)}).strict().superRefine((t,e)=>{ut(t.models)||G(e,"provider models must be sorted and unique",["models"])})),meters:yo(s.object({key:Wn(ce),displayKey:Wn(s.string().min(1).max(Fl).regex(Kl,"Meter displayKey must be lowercase alphanumeric with underscores")).optional(),measures:s.array(Wn(ce)).min(1),dimensions:s.array(ce)}).strict()).superRefine((t,e)=>{for(let n of Nf(t))G(e,n.message,[n.index,n.field])}),pricingPolicies:yo(rZ),plans:yo(nZ),meterRouteBindings:yo(s.object({key:ce,routeKeys:s.array(ea).min(1).refine(ut,"routeKeys must be sorted and unique"),reports:s.array(ce).min(1),caps:s.array(s.object({measurementKey:ce,maximum:s.number().int().positive().safe()}).strict()).min(1).superRefine((t,e)=>{ut(t.map(n=>n.measurementKey))||G(e,"route caps must be sorted and unique by measurementKey")}).optional(),maxOutputUnits:s.object({measurementKey:ce,maximum:s.number().int().positive().safe(),adapter:s.object({knob:s.literal("max_output_units"),parser:s.literal("json_body_max_output_units_v1"),mutator:s.literal("json_body_max_output_units_v1")}).strict().optional()}).strict().optional(),chunkPolicy:s.object({measurementKey:ce,chunkUnits:s.number().int().positive().safe(),maximum:s.number().int().positive().safe()}).strict().superRefine((t,e)=>{t.chunkUnits>t.maximum&&G(e,"chunk policy chunkUnits must not exceed its cumulative maximum",["chunkUnits"])}).optional(),postStream:s.object({settlementMax:s.array(s.object({measurementKey:ce,maximum:s.number().int().positive().safe()}).strict()).superRefine((t,e)=>{ut(t.map(n=>n.measurementKey))||G(e,"settlement maxima must be sorted and unique by measurementKey")}).optional()}).strict().optional()}).strict().superRefine((t,e)=>{t.maxOutputUnits!==void 0&&t.chunkPolicy!==void 0&&G(e,"a route binding declares maxOutputUnits or chunkPolicy, not both",["chunkPolicy"])}))}).strict();var fN=s.enum(["linear","active_count","event_count"]);var Hl=s.object({dimension:s.string().min(1).max(64).regex(/^[a-z0-9_]+$/,"Meter dimension must be lowercase alphanumeric with underscores"),kind:fN.default("linear")}).strict(),Gl=s.enum(["month","year"]);var iZ=s.string().min(1),Pw={strategy:s.enum(["fixed_window","sliding_window","token_bucket"]).optional(),bucketCapacity:s.number().positive().optional(),refillRatePerSecond:s.number().positive().optional()},oZ=86400;function zw(t,e){if(t.strategy==="token_bucket"){t.window!==void 0&&(t.window.type==="named"?ra[t.window.name]:t.window.seconds)>=oZ&&e.addIssue({code:"custom",path:["strategy"],message:"token_bucket strategy is not valid for quota windows"}),t.bucketCapacity===void 0&&e.addIssue({code:"custom",path:["bucketCapacity"],message:"token_bucket strategy requires bucketCapacity"}),t.refillRatePerSecond===void 0&&e.addIssue({code:"custom",path:["refillRatePerSecond"],message:"token_bucket strategy requires refillRatePerSecond"}),t.bucketCapacity!==void 0&&t.capacity!==void 0&&t.bucketCapacity>t.capacity&&e.addIssue({code:"custom",path:["bucketCapacity"],message:"bucketCapacity must not exceed capacity"});return}t.bucketCapacity!==void 0&&e.addIssue({code:"custom",path:["bucketCapacity"],message:"bucketCapacity is only valid when strategy is token_bucket"}),t.refillRatePerSecond!==void 0&&e.addIssue({code:"custom",path:["refillRatePerSecond"],message:"refillRatePerSecond is only valid when strategy is token_bucket"})}var Zl=s.object({dimension:iZ,window:Vl,capacity:s.number().nonnegative(),enforcement:s.enum(["enforce","track"]).optional(),warnAt:s.number().min(0).max(1).optional(),...Pw,scope:Ul.optional(),acknowledgeUnreachable:s.boolean().optional()}).superRefine(zw),jce=s.array(Zl).max(20);function sZ(t){let e=/^(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})$/.exec(t);if(!e)return!1;let n=Number(e[1]),i=Number(e[2]);return n>255||i>255||Number(e[3])>255||Number(e[4])>255?!1:n===0||n===127||n===10||n===172&&i>=16&&i<=31||n===192&&i===168||n===169&&i===254||n===100&&i>=64&&i<=127||n===192&&i===0&&Number(e[3])===0||n===198&&(i===18||i===19)||n>=224}function gN(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:sZ(e)}var Lw=["GET","HEAD","POST","PUT","PATCH","DELETE"],Wl=1048576,bN=1048576;function _N(t){return new TextEncoder().encode(t).byteLength}function aZ(t){try{let e=JSON.stringify(t);return typeof e=="string"?_N(e):null}catch{return null}}var Uw=s.string().min(1).max(64).regex(/^[a-z][a-z0-9_-]*$/,"Integration id must be lowercase alphanumeric with hyphens/underscores"),Mw=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()),vN=new Set(["connection","keep-alive","proxy-connection","te","trailer","transfer-encoding","upgrade","content-length","content-encoding"]),yN=Mw.refine(t=>!vN.has(t)&&!["host","cookie","set-cookie","authorization","proxy-authorization"].includes(t),"Browser request header is not safe"),cZ=Mw.refine(t=>!vN.has(t)&&!["host","cookie","set-cookie"].includes(t),"Injection header is not safe"),lZ=new Set(["cache-control","etag","last-modified","link","retry-after","x-request-id","x-ratelimit-limit","x-ratelimit-remaining","x-ratelimit-reset"]),uZ=Mw.refine(t=>lZ.has(t),"Response header is not safe to project"),dZ=s.string().max(16384).refine(t=>!/[\r\n]/.test(t),"Header values cannot contain CR/LF"),kN=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 wN(t){return[...new Set(t)].sort((e,n)=>e<n?-1:e>n?1:0)}function sa(t,e,n=1,i=!1){return s.array(t).min(n).max(e).superRefine((r,o)=>{if(!i)return;let a=new Set;for(let[c,l]of r.entries())a.has(l)&&o.addIssue({code:"custom",path:[c],message:`duplicate value "${l}" is not allowed`}),a.add(l)}).transform(r=>wN(r))}var mZ=sa(yN,20,0,!0),SN=s.string().min(1).max(128).regex(/^[A-Za-z0-9_.~-]+$/,"Query parameter name is invalid"),pZ=sa(SN,30,0,!0);function fZ(){return s.record(s.string(),s.string().max(16384)).superRefine((t,e)=>{let n=Object.keys(t);n.length>30&&e.addIssue({code:"custom",message:"Too many query parameters"});for(let i of n)SN.safeParse(i).success||e.addIssue({code:"custom",path:[i],message:"Browser query parameter is invalid"})})}function gZ(){return s.record(s.string(),dZ).superRefine((t,e)=>{Object.keys(t).length>20&&e.addIssue({code:"custom",message:"Too many request headers"});let i=new Set;for(let[r,o]of Object.entries(t)){let a=yN.safeParse(r);if(!a.success){e.addIssue({code:"custom",path:[r],message:"Browser request header is not safe"});continue}i.has(a.data)&&e.addIssue({code:"custom",path:[r],message:`duplicate request header "${r}" is not allowed`}),i.add(a.data),typeof o!="string"&&e.addIssue({code:"custom",path:[r],message:"Request header value must be a string"})}}).transform(t=>Object.fromEntries(Object.entries(t).map(([e,n])=>[e.toLowerCase(),n])))}function hZ(t){return t.split("/").some(e=>{let n=e.replace(/%2e/gi,".");return n==="."||n===".."})}var jw=s.string().min(1).max(500).superRefine((t,e)=>{let n=i=>{e.addIssue({code:"custom",message:i})};if(/^[a-z][a-z0-9+.-]*:\/\//i.test(t)){n(`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("//")){n('Protocol-relative paths are not allowed \u2014 "//host/x" targets another origin. Use a single leading slash.');return}if(!t.startsWith("/")){n(`Request path must start with "/" \u2014 got "${t}".`);return}if(t.includes("?")){n("Put query parameters in the `query` option, not the path \u2014 they are allowlisted per operation.");return}if(t.includes("#")){n("Fragments are never sent to a server; remove the '#'.");return}if(t.includes("\\")){n("Backslashes are not path separators; use '/'.");return}if(t.includes("*")){n("Wildcards are not allowed \u2014 an operation names one exact path so the allowlist stays decidable.");return}hZ(t)&&n("Relative segments ('.' / '..') are not allowed \u2014 they could escape the declared path.")}),IN=s.string().max(2048).superRefine((t,e)=>{let n;try{n=new URL(t)}catch{e.addIssue({code:"custom",message:"Upstream must be a valid HTTPS origin"});return}n.protocol!=="https:"&&e.addIssue({code:"custom",message:"Upstream must use HTTPS"}),(n.username||n.password)&&e.addIssue({code:"custom",message:"Upstream cannot include userinfo"}),n.port&&n.port!=="443"&&e.addIssue({code:"custom",message:"Upstream must use the default HTTPS port"}),(n.pathname!=="/"||n.search||n.hash)&&e.addIssue({code:"custom",message:"Upstream must be an origin without a path, query, or fragment"}),n.hostname.includes("*")&&e.addIssue({code:"custom",message:"Upstream wildcard hosts are not allowed"}),gN(n.hostname)&&e.addIssue({code:"custom",message:"Upstream host is private or loopback"})}).transform(t=>new URL(t).origin),bZ=s.discriminatedUnion("kind",[s.object({kind:s.literal("none")}).strict(),s.object({kind:s.literal("json"),maxBytes:s.number().int().positive().max(Wl)}).strict(),s.object({kind:s.literal("text"),maxBytes:s.number().int().positive().max(Wl),contentTypes:sa(kN,10)}).strict()]),_Z=s.string().min(1).max(500).regex(/^(?:\/(?:[^~/]|~[01])*)+$/,"Response field must be an RFC 6901 JSON pointer"),vZ=s.object({kind:s.literal("json"),contentTypes:sa(kN,10),maxBytes:s.number().int().positive().max(bN),jsonPointers:sa(_Z,100),responseHeaders:sa(uZ,20,0,!0).default([])}).strict(),hN=s.string().min(1).max(128).regex(/^[A-Z][A-Z0-9_]*$/,"secretRef must be UPPER_SNAKE"),yZ=s.discriminatedUnion("location",[s.object({secretRef:hN,location:s.literal("header"),name:cZ,template:s.enum(["{value}","Bearer {value}"])}).strict(),s.object({secretRef:hN,location:s.literal("query"),name:s.string().min(1).max(128).regex(/^[A-Za-z0-9_.~-]+$/,"Query parameter name is invalid")}).strict()]),kZ=s.object({method:s.enum(Lw),path:jw,headers:mZ.default([]),query:pZ.default([]),body:bZ}).strict(),wZ=s.array(kZ).min(1).max(100).superRefine((t,e)=>{let n=new Set;for(let[i,r]of t.entries()){let o=`${r.method} ${r.path}`;n.has(o)&&e.addIssue({code:"custom",path:[i],message:`duplicate frontend integration operation "${o}"`}),n.add(o)}}).transform(t=>[...t].sort((e,n)=>{let i=`${e.method} ${e.path}`,r=`${n.method} ${n.path}`;return i<r?-1:i>r?1:0})),EN=s.object({id:Uw,upstream:IN,request:s.object({operations:wZ}).strict(),injection:yZ,response:vZ}).strict().superRefine((t,e)=>{if(t.injection.location==="header")for(let[n,i]of t.request.operations.entries())i.headers.includes(t.injection.name)&&e.addIssue({code:"custom",path:["request","operations",n,"headers"],message:`browser request header collides with injected header "${t.injection.name}"`})}),TN=EN;function RN(t){if(t&&typeof t=="object"&&!Object.isFrozen(t)){Object.freeze(t);for(let e of Object.values(t))RN(e)}return t}var SZ=EN.transform(t=>RN(t)),Bw=s.array(TN).max(200).superRefine((t,e)=>{let n=new Set;for(let[i,r]of t.entries())n.has(r.id)&&e.addIssue({code:"custom",path:[i,"id"],message:`duplicate frontend integration id "${r.id}"`}),n.add(r.id)}).transform(t=>[...t].sort((e,n)=>e.id<n.id?-1:e.id>n.id?1:0)),Kw=s.array(Uw).max(200).transform(t=>wN(t)).optional(),Dw=s.lazy(()=>s.union([s.null(),s.boolean(),s.number().finite(),s.string().max(65536),s.array(Dw).max(100),s.record(s.string().min(1).max(128),Dw).superRefine((t,e)=>{Object.keys(t).length>100&&e.addIssue({code:"custom",message:"JSON object has too many keys"})})])),IZ=s.discriminatedUnion("kind",[s.object({kind:s.literal("json"),value:Dw}).strict(),s.object({kind:s.literal("text"),value:s.string().max(Wl)}).strict()]).superRefine((t,e)=>{let n=t.kind==="json"?aZ(t.value):_N(t.value);(n===null||n>Wl)&&e.addIssue({code:"custom",message:"Request body exceeds the UTF-8 byte limit"})}),EZ=s.object({integrationId:Uw,path:jw,method:s.enum(Lw),headers:gZ().optional(),query:fZ().optional(),body:IZ.optional()}).strict();var TZ={kind:oa,meters:s.array(Hl).default([]),recurring_fee_cents:s.number().int().nonnegative().default(0),billing_interval:Gl.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()},xN=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(),...TZ,limits:s.array(Zl).max(20).default([]),routeGrants:s.array(s.string().min(1).max(500)).max(500).transform(t=>[...new Set(t)].sort()).optional(),frontendIntegrationGrants:Kw,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:pw.optional(),archive:s.object({at:s.string().datetime().optional(),transitionTo:s.string().optional(),strategy:s.enum(["auto","explicit","block"]).default("auto")}).optional()}).strict(),Gf=Object.freeze({FEE_MISMATCH:"PLAN_KIND_FEE_MISMATCH",TRIAL_MISMATCH:"PLAN_KIND_TRIAL_MISMATCH"});function ON(t,e,n=[]){let i=t.recurring_fee_cents??0,r=t.trial_days??0,o=(a,c,l)=>e.addIssue({code:"custom",path:[...n,c],message:l,params:{code:a}});t.kind==="free"&&i!==0&&o(Gf.FEE_MISMATCH,"recurring_fee_cents","Free plans must have zero price (kind free requires recurring_fee_cents 0)"),(t.kind==="usage"||t.kind==="prepaid")&&i!==0&&o(Gf.FEE_MISMATCH,"recurring_fee_cents",`kind ${t.kind} plans carry no recurring fee (recurring_fee_cents must be 0); usage money is the commerce usage-pricing binding \u2014 declare kind hybrid to combine a recurring fee with usage`),t.kind==="trial"&&r<=0&&o(Gf.TRIAL_MISMATCH,"trial_days","kind trial plans must declare trial_days > 0")}var Zf=xN.superRefine((t,e)=>ON(t,e));var RZ=s.object({meters:s.array(Hl).optional(),recurring_fee_cents:s.number().int().nonnegative().optional(),billing_interval:Gl.optional(),trial_days:s.number().int().nonnegative().optional(),max_monthly_spend_cents:s.number().int().nonnegative().optional(),limits:s.array(Zl).max(20).optional(),overageBehavior:s.enum(["block","allow_and_bill"]).optional(),selfServeEnabled:s.boolean().optional()}).strict(),xZ=s.object({plans:s.record(s.string(),RZ).optional()}).strict(),Fw=s.record(s.string().min(1).max(64),xZ);var Vw=s.enum(["query","mutation"]),qw=s.enum(["none","metadata","full"]),Hw=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)}),Gw=s.object({resource:s.string().min(1).max(100).regex(/^[a-z0-9_.:-]+$/),effect:s.enum(["create","delete"])}),AN=s.object({id:s.string().min(1).max(160).regex(/^[a-z0-9_.:-]+$/).refine(t=>!t.includes(":")&&!/\s/.test(t),{message:'action id must not contain ":" or whitespace; ":" is the permission subject:verb separator'}),title:s.string().min(1).max(160).optional(),kind:Vw,actorType:s.string().min(1).max(64).regex(/^[a-zA-Z0-9_.:-]+$/).optional(),subject:Hw.optional(),inputSchemaRef:s.string().min(1).max(240).optional(),audit:qw.default("metadata"),resource:Gw.optional()});var $N=s.enum(["subscription","subject"]),CN=s.enum(["reported","action_inferred"]),NN=s.string().min(1).max(100).regex(/^[a-z0-9_.:-]+$/),PN=s.object({name:NN,display:s.string().min(1).max(120).optional(),scope:$N.default("subscription"),subjectType:s.string().min(1).max(64).regex(/^[a-zA-Z0-9_.:-]+$/).optional(),countSource:CN.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"})}),Zw=s.array(PN).max(100).default([]);var zN=/^[a-z0-9][a-z0-9_-]*$/,Ww=s.string().min(1).max(64).regex(zN,"backend id must be a lowercase slug ([a-z0-9][a-z0-9_-]*)"),DN=s.enum(["direct","tunnel"]),LN=s.enum(["embedded","sidecar"]);var UN=s.object({mode:DN.default("direct"),runner:LN.optional()}).strict(),MN=s.object({required:s.boolean().default(!0)}).strict(),jN=s.object({name:s.string().min(1).max(120).optional(),slug:Ww.optional(),transport:UN.default({mode:"direct"}),verification:MN.default({required:!0}),meters:s.array(s.string().min(1).max(64)).max(100).optional(),default:s.boolean().optional()}).strict(),Jw=s.record(Ww,jN),aa=Ww,jr={backendRequiredForRoute:"BACKEND_REQUIRED_FOR_ROUTE",unknownBackendInRoute:"UNKNOWN_BACKEND_IN_ROUTE",ambiguousDefaultBackend:"AMBIGUOUS_DEFAULT_BACKEND",routeMeterNotAllowedByBackend:"ROUTE_METER_NOT_ALLOWED_BY_BACKEND",unknownMeterInBackend:"UNKNOWN_METER_IN_BACKEND"};function Yw(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 n=e.filter(i=>t[i]?.default===!0);return n.length===1?{defaultId:n[0],ambiguous:!1}:{defaultId:null,ambiguous:!0}}var KN=s.enum(["long","short","blocking"]).default("long");var FN=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 OZ(t){let e=t.trim();if(!e)return!1;let[n,i,r]=e.split("-");if(r!==void 0||!/^\d{3}$/.test(n??""))return!1;let o=Number(n),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 VN(t){return t.split(",").every(OZ)}var Wf=s.union([s.string().min(1).max(100).refine(VN,{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)]),qN=s.enum(["public","required"]),HN=s.enum(["network","5xx"]),GN=s.object({maxAttempts:s.number().int().min(1).max(3),retryOn:s.array(HN).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(),ZN=s.enum(["ui","api","agent","webhook","cli"]),BN=new Map(ZN.options.map((t,e)=>[t,e])),AZ=s.array(ZN).min(1).refine(t=>t.every((e,n)=>n===0||(BN.get(e)??-1)>(BN.get(t[n-1])??-1)),{message:"surfaces must be a canonical set: unique and sorted by surface order (ui, api, agent, webhook, cli)"}),Jf=s.object({authMode:qN.optional(),timeoutMs:s.number().int().min(1).max(6e5).optional(),idleTimeoutMs:s.number().int().min(1).max(6e5).optional(),retry:GN.optional(),subject:s.enum(["member","service"]).optional(),surfaces:AZ.optional(),hidden:s.boolean().optional()}).strict(),Yf=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"),...Pw}).strict().superRefine(zw),WN=s.object({match:FN,metering:s.object({defaults:dt(s.number().finite().nonnegative(),s.string().min(1).max(64)).optional(),reports:s.array(s.string().min(1).max(64)).max(20).optional(),onStatusCodes:Wf.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_.:-]+$/).refine(t=>!t.includes(":")&&!/\s/.test(t),{message:'action id must not contain ":" or whitespace; ":" is the permission subject:verb separator'}).optional(),permissionSubject:s.string().regex(Lr).optional(),permissionVerb:s.string().regex(Lr).optional(),backend:aa.optional(),usagePolicy:Af.optional(),policy:Jf.optional(),limits:s.array(Yf).min(1).max(8).optional()}).strict(),JN=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()}),Xw=s.object({description:s.string().max(500).optional(),mutation_class:s.enum(["runtime","contractual"]).default("contractual"),cacheProfile:KN,routes:s.array(WN).min(1).max(50),runtime:JN.default({}),actions:s.array(AN).max(100).optional(),backend:aa.optional()}).strict();function YN(t,e){t.usagePricing!==void 0&&e.addIssue({code:"custom",path:["usagePricing"],message:"usagePricing is not supported. Define usage.meters.<key>.rating instead."})}function XN(t,e){t.filter(i=>i.kind==="free").length>1&&e.addIssue({code:"custom",path:["plans"],message:"Only one free plan is allowed per product"})}function QN(t,e){let n=new Map;t.forEach((i,r)=>{if(i.kind==="free")return;let o=PZ(i);if(o===void 0||o<=0)return;let a=zZ(i,o),c=n.get(a);if(c){e.addIssue({code:"custom",path:["plans",r,"recurring_fee_cents"],message:`Paid plan price duplicates plan "${c}" (${a})`});return}n.set(a,i.key)})}function eP(t,e){for(let n of Nf(t.metering?.meters??[]))e.addIssue({code:"custom",path:["metering","meters",n.index,n.field],message:n.message})}function tP(t,e){let n=new Set((t.metering?.meters??[]).map(r=>r.key).filter(r=>typeof r=="string"&&r.length>0)),i=new Set(Object.keys(t.usage?.meters??{}));t.plans.forEach((r,o)=>{let a=r.meters;a&&a.forEach((c,l)=>{let u=c.dimension;typeof u!="string"||u.length===0||n.has(u)||i.has(u)||e.addIssue({code:"custom",path:["plans",o,"meters",l,"dimension"],message:`Plan "${r.key}" prices meter "${u}" but no metering.meters[] entry and no usage.meters[] entry declares it.`})})})}function nP(t,e){if(!t.routeCatalog)return;let n=new Set((t.metering?.meters??[]).map(r=>r.key).filter(r=>typeof r=="string"&&r.length>0)),i=!1;for(let[r,o]of Object.entries(t.routeCatalog))(o.routes??[]).forEach((c,l)=>{let u=Qw(c);u.length!==0&&(i=!0,u.forEach((d,m)=>{n.has(d)||e.addIssue({code:"custom",path:["routeCatalog",r,"routes",l,"metering",m],message:`Route references unknown meter "${d}". Declare it in metering.meters[].`})}))});i&&n.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 $Z(t,e){let n=new Map;for(let r of t.plans)n.set(r.key,new Set);if(!t.routeCatalog){for(let r of n.values())for(let o of e)r.add(o);return n}let i=Object.values(t.routeCatalog).flatMap(r=>r.routes??[]);for(let r of t.plans){let o=n.get(r.key),a=new Set(r.routeGrants??[]);for(let c of i){if(c.unmetered===!0||!c.path)continue;let l=Ml({actionId:c.actionId,method:c.method,path:c.path});if(a.has(l))for(let u of Qw(c))o.add(u)}}return n}function Qw(t){let e=new Set;for(let n of Object.keys(t.metering?.defaults??{}))e.add(n);for(let n of t.metering?.reports??[])e.add(n);return[...e]}function CZ(t){if(!t||typeof t!="object")return null;let e=t;return typeof e.dimension=="string"?e.dimension:null}var NZ=new Set(["credits"]);function rP(t,e){if(!t.plans||t.plans.length===0)return;let n=new Set((t.metering?.meters??[]).map(a=>a.key).filter(a=>typeof a=="string"&&a.length>0)),i=new Set((t.metering?.meters??[]).filter(a=>a.enforcementType==="postpaid").map(a=>a.key).filter(a=>typeof a=="string"&&a.length>0)),r=new Set(Object.keys(t.usage?.meters??{})),o=$Z(t,n);t.plans.forEach((a,c)=>{let l=a.limits??[],u=o.get(a.key)??new Set;l.forEach((d,m)=>{if(d&&typeof d=="object"?d.acknowledgeUnreachable===!0:!1)return;let p=CZ(d);p&&(u.has(p)||r.has(p)||i.has(p)||NZ.has(p)||e.addIssue({code:"custom",path:["plans",c,"limits",m,"meter"],message:`Plan "${a.key}" limits meter "${p}" 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 "${p}", declare the meter under metering.meters[] or usage.meters, or set acknowledgeUnreachable: true if the limit is intentional (e.g. soft budget).`}))})})}function iP(t,e){let n=t.backend;if(!n||Object.keys(n).length===0){Object.entries(t.routeCatalog??{}).find(([,u])=>(u.routes?.length??0)>0)&&e.addIssue({code:"custom",path:["backend"],message:`${jr.backendRequiredForRoute}: business declares gateway routes but no backend. Declare at least one backend with \`fs.backend()\`; routes use the sole backend implicitly or may bind it explicitly.`});return}let i=new Set(Object.keys(n)),r=new Set((t.metering?.meters??[]).map(l=>l.key).filter(l=>typeof l=="string"&&l.length>0));for(let[l,u]of Object.entries(n))(u.meters??[]).forEach((d,m)=>{r.has(d)||e.addIssue({code:"custom",path:["backend",l,"meters",m],message:`${jr.unknownMeterInBackend}: backend "${l}" allows meter "${d}" but no metering.meters[] entry declares it.`})});let{defaultId:o,ambiguous:a}=Yw(n),c=!1;for(let l of Object.values(t.routeCatalog??{}))for(let u of l.routes??[])u.backend===void 0&&(c=!0);a&&c&&e.addIssue({code:"custom",path:["backend"],message:`${jr.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,u]of Object.entries(t.routeCatalog??{}))(u.routes??[]).forEach((d,m)=>{let f=d.backend??o;if(d.backend!==void 0&&!i.has(d.backend)){e.addIssue({code:"custom",path:["routeCatalog",l,"routes",m,"backend"],message:`${jr.unknownBackendInRoute}: route binds backend "${d.backend}" which is not declared in the product \`backend\` block.`});return}if(!f)return;let g=n[f]?.meters;if(!g)return;let b=new Set(g);for(let _ of Qw(d))b.has(_)||e.addIssue({code:"custom",path:["routeCatalog",l,"routes",m,"metering"],message:`${jr.routeMeterNotAllowedByBackend}: route meters "${_}" but backend "${f}" does not allow it (backend.meters[] = [${g.join(", ")}]).`})})}function PZ(t){return t.recurring_fee_cents}function zZ(t,e){return`USD:month:${e}`}var DZ=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")}),oP=s.enum(["exact_pre_request","estimated_then_settled","postpaid","strict_concurrency"]),LZ=s.enum(UC),eS=s.object({key:Wn(s.string().min(1).max(64).regex(/^[a-z0-9_]+$/,"Meter key must be lowercase alphanumeric with underscores")),displayKey:Wn(s.string().min(1).max(Fl).regex(Kl,"Meter displayKey must be lowercase alphanumeric with underscores")).optional(),display:s.string().min(1).max(100),unit:s.string().max(20).optional(),routeDefault:s.number().finite().nonnegative().optional(),enforcementType:oP.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:LZ.optional(),reserveStrategy:s.enum(["reserve_max","estimate","count_actual"]).optional(),reserveCeiling:s.number().int().positive().optional(),pairsWith:s.string().min(1).max(64).optional()}),sP=Wn(s.string().min(1).max(64).regex(/^[a-z0-9_]+$/,"Usage measure must be lowercase alphanumeric with underscores")),UZ=s.enum(["pass_through","markup"]),MZ=s.object({source:s.literal("fixed"),rates:s.record(s.string().min(1),dt(s.number().int().nonnegative(),sP))}),jZ=s.object({source:s.literal("provider_catalog"),catalog:s.string().min(1).max(100),pricePolicy:UZ.default("pass_through"),markupPercent:s.number().nonnegative().max(1e4).optional(),marginMicros:s.number().int().nonnegative().optional()}),aP=s.discriminatedUnion("source",[MZ,jZ]),cP=s.object({selector:s.string().min(1).max(100).optional(),measures:s.array(sP).min(1).max(20),rating:aP.optional()}),lP=s.object({meters:dt(cP,s.string().min(1).max(64).regex(/^[a-z0-9_]+$/))}),BZ=s.object({defaults:dt(s.number().finite().nonnegative(),s.string().min(1).max(64)).optional(),reports:s.array(s.string().min(1).max(64)).max(20).optional(),onStatusCodes:Wf.optional(),postStreamBilling:s.boolean().optional()}),KZ=s.object({kind:Vw,title:s.string().min(1).max(160).optional(),actorType:s.string().min(1).max(64).regex(/^[a-zA-Z0-9_.:-]+$/).optional(),subject:Hw.optional(),audit:qw,resource:Gw.optional()}),uP=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).refine(t=>!t.includes(":")&&!/\s/.test(t),{message:'action id must not contain ":" or whitespace; ":" is the permission subject:verb separator'}).optional(),permissionSubject:s.string().regex(Lr).optional(),permissionVerb:s.string().regex(Lr).optional(),actionMeta:KZ.optional(),unmetered:s.boolean().optional(),metering:BZ.optional(),inheritDefaultMeters:s.boolean().optional(),backend:aa.optional(),limits:s.array(Yf).min(1).max(8).optional(),policy:Jf.optional()}).strict(),tS=s.object({description:s.string().max(500).optional(),routes:s.array(uP).min(1).max(50)}),dP=s.record(s.string().min(1).max(100).regex(/^[a-z0-9_.:-]+$/),tS),mP=s.object({subject:s.string().regex(Lr,"subject must be lowercase snake, 2-32 chars, starting with a letter"),verbs:s.array(s.string().regex(Lr,"verbs must be lowercase snake, 2-32 chars, starting with a letter")).max(16).refine(t=>new Set(t).size===t.length,{message:"verbs must be unique"}).refine(t=>!t.includes("read")&&!t.includes("write"),"read and write are implied for a permission group and may not be re-declared").default([]),escalatory:s.array(s.string().regex(Lr)).max(16).optional(),description:s.string().max(500).optional()}).strict().refine(t=>(t.escalatory??[]).every(e=>t.verbs.includes(e)),{message:"escalatory verbs must be a subset of verbs"}),pP=s.array(mP).max(32).refine(t=>new Set(t.map(e=>e.subject)).size===t.length,{message:"permission subjects must be unique"}),fP=s.enum(["report","pull_request"]),gP=s.enum(["safe","non_blocking","economic_risk","blocking"]),hP=s.object({cleanup:s.object({enabled:s.boolean().default(!1),mode:fP.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(gP).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"]}}),bP=s.enum(["clerk","test-personas"]),_P=s.object({context_tokens:s.object({enabled:s.boolean().default(!0)}).optional(),portal_auth:s.object({strategy:bP}).optional()}),nS=s.object({business:s.object({visibility:s.enum(["public","private"]).default("public")}),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(eS).max(10).default([]),billOn4xx:s.boolean().default(!1)}).default({meters:[],billOn4xx:!1}),backend:Jw.optional(),usage:lP.optional(),usagePricing:s.never({error:"usagePricing is not supported. Define usage.meters.<key>.rating instead."}).optional(),routeCatalog:dP.optional(),permissions:pP.optional(),resources:Zw,policies:hP,customer_context:_P.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:Ai.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(Zf).max(6).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}}),environments:Fw.optional(),ephemeral:s.object({defaultPlan:s.string().min(1).optional()}).optional()}).superRefine((t,e)=>{YN(t,e),XN(t.plans,e),QN(t.plans,e),eP(t,e),tP(t,e),nP(t,e),rP(t,e),iP(t,e)});var vP=1,yP="business",FZ=`${yP}/business.ts`,ca=Object.freeze({PLAN_KIND_COMMERCE_MISMATCH:"PLAN_KIND_COMMERCE_MISMATCH",PLAN_MISSING_FROM_COMMERCE:"PLAN_MISSING_FROM_COMMERCE",COMMERCE_PLAN_UNKNOWN:"COMMERCE_PLAN_UNKNOWN",COMMERCE_ROUTE_BINDING_UNKNOWN_ROUTE:"COMMERCE_ROUTE_BINDING_UNKNOWN_ROUTE",COMMERCE_ROUTE_BINDING_NOT_REPORTED:"COMMERCE_ROUTE_BINDING_NOT_REPORTED"});function Jl(t,e,n,i){t.addIssue({code:"custom",path:n,message:i,params:{code:e}})}function VZ(t,e){let n=new Map(t.commerce.plans.map(i=>[i.key,i]));for(let[i,r]of t.business.plans.entries()){let o=n.get(r.key);o?o.kind!==r.kind&&Jl(e,ca.PLAN_KIND_COMMERCE_MISMATCH,["business","plans",i,"kind"],`plan "${r.key}" declares kind ${r.kind} but the commerce manifest declares kind ${o.kind}`):Jl(e,ca.PLAN_MISSING_FROM_COMMERCE,["business","plans",i,"key"],`plan "${r.key}" has no commerce manifest entry`)}if(t.commerce!==void 0){let i=new Set(t.business.plans.map(r=>r.key));for(let[r,o]of t.commerce.plans.entries())i.has(o.key)||Jl(e,ca.COMMERCE_PLAN_UNKNOWN,["commerce","plans",r,"key"],`commerce plan "${o.key}" is not declared in business.plans`)}}function qZ(t,e,n){for(let[i,r]of(t.commerce?.meterRouteBindings??[]).entries())for(let[o,a]of r.routeKeys.entries()){let c=e.get(a);if(!c){Jl(n,ca.COMMERCE_ROUTE_BINDING_UNKNOWN_ROUTE,["commerce","meterRouteBindings",i,"routeKeys",o],`meterRoutes "${r.key}" binds served route key "${a}", which no declared route operation compiles to`);continue}let l=r.reports.filter(u=>!c.reports.has(u));l.length>0&&Jl(n,ca.COMMERCE_ROUTE_BINDING_NOT_REPORTED,["commerce","meterRouteBindings",i,"reports"],`meterRoutes "${r.key}" binds "${a}" but that operation does not report ${l.map(u=>`"${u}"`).join(", ")}`)}}var HZ=s.object({irVersion:s.literal(vP),sdkVersion:s.string().min(1).max(64),business:nS,routes:s.array(Xw).max(200),frontendIntegrations:Bw,commerce:pN}).strict().superRefine((t,e)=>{let n=new Map;for(let[r,o]of t.routes.entries())for(let[a,c]of o.routes.entries()){let l=Ml({actionId:c.action,method:c.match.method,path:c.match.path}),u=gw(c.match.method,c.match.path),d=c.action?o.actions?.find(p=>p.id===c.action):void 0,m=kP({action:d,layer:{backend:o.backend,cacheProfile:o.cacheProfile,description:o.description,mutation_class:o.mutation_class,runtime:o.runtime},route:{backend:c.backend??o.backend,inheritDefaultMeters:c.inheritDefaultMeters,limits:c.limits,metering:c.metering,policy:c.policy,unmetered:c.unmetered,usagePolicy:c.usagePolicy}}),f=n.get(l);if(f&&f.endpoint!==u){e.addIssue({code:"custom",path:["routes",r,"routes",a,"action"],message:`route id collision for "${l}": maps to both ${f.endpoint} and ${u}`});continue}if(f&&f.behavior!==m){e.addIssue({code:"custom",path:["routes",r,"routes",a],message:`conflicting route definition for "${l}"`});continue}n.set(l,{endpoint:u,behavior:m,reports:new Set(c.metering?.reports??[])})}n.size>0&&Object.keys(t.business.backend??{}).length===0&&e.addIssue({code:"custom",path:["business","backend"],message:"business declares gateway routes but no backend. Declare at least one backend with fs.backend(); routes use the sole backend implicitly or may bind it explicitly.",params:{code:jr.backendRequiredForRoute}});let i=new Map((t.business.permissions??[]).map(r=>[r.subject,new Set(r.verbs)]));for(let[r,o]of t.routes.entries())for(let[a,c]of o.routes.entries()){let l=["routes",r,"routes",a];if(c.permissionSubject!==void 0&&!i.has(c.permissionSubject)&&e.addIssue({code:"custom",path:[...l,"permissionSubject"],message:`route permission subject "${c.permissionSubject}" is not declared in business.permissions`}),c.permissionVerb!==void 0){let u=c.permissionSubject!==void 0?i.get(c.permissionSubject):void 0;c.permissionSubject===void 0?e.addIssue({code:"custom",path:[...l,"permissionVerb"],message:"permissionVerb requires permissionSubject (a permission-carrying group)"}):u!==void 0&&!u.has(c.permissionVerb)&&e.addIssue({code:"custom",path:[...l,"permissionVerb"],message:`permission verb "${c.permissionVerb}" is not declared by permission subject "${c.permissionSubject}"`})}}for(let[r,o]of(t.business.permissions??[]).entries())n.has(o.subject)&&e.addIssue({code:"custom",path:["business","permissions",r,"subject"],message:`permission subject "${o.subject}" collides with a route id \u2014 rename the group or the route action`});VZ(t,e),qZ(t,n,e);for(let[r,o]of t.business.plans.entries()){for(let[a,c]of(o.routeGrants??[]).entries())n.has(c)||e.addIssue({code:"custom",path:["business","plans",r,"routeGrants",a],message:`unknown route grant "${c}" for plan "${o.key}"`});for(let[a,c]of(o.frontendIntegrationGrants??[]).entries())t.frontendIntegrations.some(l=>l.id===c)||e.addIssue({code:"custom",path:["business","plans",r,"frontendIntegrationGrants",a],message:`unknown frontend integration grant "${c}" for plan "${o.key}"`})}});function kP(t){return rS(JSON.parse(JSON.stringify(t)))}function rS(t){return Array.isArray(t)?`[${t.map(rS).join(",")}]`:t&&typeof t=="object"?`{${Object.entries(t).sort(([e],[n])=>e<n?-1:e>n?1:0).map(([e,n])=>`${JSON.stringify(e)}:${rS(n)}`).join(",")}}`:JSON.stringify(t)}var cue=s.object({subscriberChangePolicy:Ai.optional()}),lue=s.object({url:s.string().url(),events:s.array(s.string()).min(1),enabled:s.boolean().optional(),environmentId:s.string().nullable().optional()}),uue=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()}),due=s.object({id:s.string(),actorUserId:s.string().optional(),action:s.string(),decision:s.string().optional(),timestamp:s.string(),details:s.unknown().optional()}),mue=s.object({name:s.string(),branch:s.string().optional(),isProduction:s.boolean().optional()}),pue=s.object({id:s.string(),name:s.string(),apiKeyId:s.string().optional()});var wP=s.object({id:s.string(),billingCycleId:s.string(),effectiveStart:s.string(),effectiveEnd:s.string(),compiledPlanId:s.string()}),SP=s.object({currentPeriod:wP,priorPeriod:wP.optional()});var IP={protocol:"exact-v1"};var Rue=IP.protocol;var xue=s.object({kind:s.literal("repair_accepted"),repairVersion:s.literal(1),queueRowId:s.string().min(1).max(200)}).strict(),iS={repairFault:s.literal("v1"),slug:s.string().min(1).max(253).regex(/^[a-z0-9]+(?:-[a-z0-9]+)*$/u),environmentId:s.string().min(1).max(200).regex(/^[A-Za-z0-9_-]+$/u).optional(),environmentEpoch:s.string().max(16).regex(/^[1-9][0-9]*$/u).optional()},Oue=s.object(iS).strict(),Aue=s.object({...iS,keyHash:s.string().regex(/^[a-f0-9]{64}$/u)}).strict(),$ue=s.object({...iS,subjectKey:s.string().min(1).max(600),membershipId:s.string().min(1).max(200).regex(/^[A-Za-z0-9_-]+$/u).optional()}).strict(),ZZ=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(),usageLimits:s.array(s.unknown()).optional(),usageLimitStatus:s.literal("overflow").optional(),usageLimitGeneration:s.number().int().nonnegative().optional(),usageStateGeneration:s.string().regex(/^[1-9][0-9]*$/).optional(),activePeriodStartMs:s.number().int().nonnegative().optional(),usageIngestBillingCycle:s.object({billingCycleId:s.string().min(1),billingCycleStartMs:s.number().int().nonnegative(),billingCycleEndMs:s.number().int().positive(),subscriptionPeriodId:s.string().min(1)}).strict().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(),monetaryAdmissionBlock:s.object({code:s.literal("billing_reconciliation_required"),reason:s.string().min(1),blockedAt:s.string().min(1)}).optional(),fundingProjection:s.object({availableNanos:s.string().regex(/^(0|[1-9][0-9]*)$/),periodStartMs:s.number(),periodEndMs:s.number(),policy:s.enum(["block","allow"]),epoch:s.number(),emergencyReserveCeilingNanos:s.string().regex(/^(0|[1-9][0-9]*)$/),capacityAuthoritative:s.boolean().optional()}).optional(),commercialAdmission:s.object({ratingContextVersionId:s.string().min(1),economicAgreementId:s.string().min(1).optional()}).optional(),commercialReleaseBinding:bw.optional(),commercialReleaseBindingStatus:_w.optional(),scheduledTransition:s.object({kind:s.string(),timing:s.string(),scheduledFor:s.string(),toCompiledPlanId:s.string().nullable()}).optional(),gracePeriodEndsAt:s.string().optional(),subscriptionStatus:s.string(),subscriberStatus:s.string(),scopes:s.array(s.string()),periods:SP.optional(),expiresAt:s.number().optional(),trialEndsAt:s.string().optional()}).superRefine((t,e)=>{t.commercialReleaseBindingStatus?.state==="exact"&&!t.commercialReleaseBinding&&e.addIssue({code:s.ZodIssueCode.custom,path:["commercialReleaseBinding"],message:"exact commercial release status requires an exact binding"})}),WZ=s.discriminatedUnion("kind",[s.object({kind:s.literal("found"),state:ZZ,subscriberRecord:s.custom(t=>typeof t=="object"&&t!==null&&!Array.isArray(t),"subscriberRecord (the pressed Vinyl S envelope) is required"),subscriberAuthzRecord:s.custom(t=>typeof t=="object"&&t!==null&&!Array.isArray(t),"subscriberAuthzRecord must be the pressed Vinyl envelope").optional(),memberAuthzRecord:s.custom(t=>typeof t=="object"&&t!==null&&!Array.isArray(t),"memberAuthzRecord must be the pressed Vinyl envelope").optional(),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)}),s.object({kind:s.literal("global_generation_pending"),requiredGeneration:s.number().int().positive(),retryAfterSeconds:s.number().int().positive().default(1)})]),Pue=s.object({environmentId:s.string().nullable(),subjectKeys:s.array(s.string()).min(1).max(500)}),JZ=s.union([s.object({subjectKey:s.string(),result:WZ}),s.object({subjectKey:s.string(),error:s.object({code:s.string(),message:s.string(),reason:s.string().optional(),retryable:s.literal(!0)})})]),zue=s.object({results:s.array(JZ)}),Due=s.discriminatedUnion("kind",[s.object({kind:s.literal("pressed"),pointer:s.unknown()}),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)})]),Lue=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)})]),YZ=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()}),XZ=s.object({id:s.string(),authHeader:s.string().optional(),pricing:dt(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(),businessRbacEnabled:s.literal(!0).optional(),productPermissions:s.array(s.string().min(1)).optional(),timeoutMs:s.number().positive().optional(),idleTimeoutMs:s.number().positive().optional(),backends:s.array(YZ).min(1),defaultBackendId:s.string().optional(),verificationRequired:s.boolean().optional(),portalHostname:s.string().min(1).optional(),portalOriginId:s.uuid().optional(),portalOriginTenureId:s.uuid().optional(),allowedOrigins:s.array(s.string()).optional(),publicRoutesCompiledPlanId:s.string().min(1).optional(),meterAliases:Cf.optional()}),EP=s.object({pointer:s.unknown(),content:s.unknown()}).strict(),Uue=s.discriminatedUnion("kind",[s.object({kind:s.literal("found"),portalHostname:s.string().min(1).optional(),portalOriginId:s.uuid().optional(),portalOriginTenureId:s.uuid().optional(),tenant:XZ,generation:EP,expiresAt:s.number(),ttlSeconds:s.number()}),s.object({kind:s.literal("portal_found"),businessId:s.string().min(1),environmentId:s.string().min(1).nullable(),portalHostname:s.string().min(1),portalOriginId:s.uuid(),portalOriginTenureId:s.uuid(),generation:EP}),s.object({kind:s.literal("not_found"),negativeCacheTtlSeconds:s.number().default(60)}),s.object({kind:s.literal("rate_limited"),retryAfterSeconds:s.number().default(10)}),s.object({kind:s.literal("pending"),code:s.literal("edge_generation_pending"),retryable:s.literal(!0),reason:s.string().min(1)}).strict(),s.object({kind:s.literal("unavailable"),code:s.literal("edge_generation_unavailable"),retryable:s.literal(!0),reason:s.string().min(1)}).strict()]);var TP=["consumer_api_key","consumer_session_token","test_persona_session_token","builder_master_key","builder_session_token","maker_jwt","cli_session_jwt","service_jwt","internal_service","context_token"],RP=s.enum(TP);var QZ=s.object({fromIssuer:s.string().min(1),fromTokenId:s.string().min(1),intent:s.string().min(1)}),xP=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(QZ)});var e2=["template","embedded","provisioned","agent"],t2=s.enum(e2),n2=["builder_user","builder_org","maker","consumer_subject","internal_service","service_jwt","agent_runtime"],r2=s.enum(n2),OP=s.object({kind:r2,id:s.string().min(1),label:s.string().optional()}),i2=["subscription","organization","platform"],o2=s.enum(i2),s2=s.object({kind:o2,id:s.string().min(1)}),a2=s.object({type:RP,id:s.string().min(1),hint:s.string().max(8).optional()}),c2=s.object({compiledPlanId:s.string().min(1),fromCache:s.boolean().optional()}),Zue=s.object({requestId:s.string().min(1),surface:t2,builderOrgId:s.string().min(1),businessId:s.string().min(1).optional(),runtimeId:s.string().min(1).optional(),template:s.string().optional(),caller:OP,actor:OP,billingSubject:s2,credential:a2,operation:s.string().min(1),scopes:s.array(s.string()),entitlement:c2.optional(),trust:xP});var l2=["BusinessApplyWorkflow","RollbackWorkflow","StripeSyncWorkflow","WebhookDispatchWorkflow","SubscriptionTransitionWorkflow","CompiledPlanLifecycleWorkflow","ShardReshardWorkflow","MaintenanceJobWorkflow","UsageRatingDrainWorkflow"],Que=s.enum(l2),u2=["transient","permanent","rollback-required","human-intervention"],ede=s.enum(u2);var d2=["SAFE_AUTOMATIC","REQUIRES_APPROVAL","IRREVERSIBLE","BILLING_IMPACTING","EDGE_BREAKING"],tde=s.enum(d2);var ade=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 Xf=1,AP=25,m2=8,p2="explicit_ready_or_deferred",dde=AP*m2,mde=s.object({version:s.literal(Xf),claimantId:s.string().min(1).max(100),maxItems:s.number().int().min(1).max(AP),laneKey:s.string().min(1).max(64).optional(),generation:s.number().int().positive().optional(),availabilitySemantics:s.literal(p2).optional()}).strict(),pde=s.object({version:s.literal(Xf),claimed:s.number().int().nonnegative(),terminal:s.number().int().nonnegative(),retried:s.number().int().nonnegative(),parked:s.number().int().nonnegative().optional(),accepted:s.boolean().optional(),reason:s.enum(["capability_disabled"]).optional(),remaining:s.boolean(),readyNow:s.boolean().optional(),deferUntil:s.string().datetime().optional(),nextWakeAt:s.string().datetime().optional()}).strict().superRefine((t,e)=>{(t.readyNow!==void 0||t.deferUntil!==void 0)&&(t.nextWakeAt!==void 0&&e.addIssue({code:s.ZodIssueCode.custom,message:"explicit availability cannot include legacy nextWakeAt"}),t.readyNow===!0&&(!t.remaining||t.deferUntil)&&e.addIssue({code:s.ZodIssueCode.custom,message:"ready work must be remaining and cannot be deferred"}),t.deferUntil!==void 0&&t.readyNow!==!1&&e.addIssue({code:s.ZodIssueCode.custom,message:"deferred work must set readyNow=false"}),t.remaining&&t.readyNow===!1&&t.deferUntil===void 0&&e.addIssue({code:s.ZodIssueCode.custom,message:"remaining non-ready work must include deferUntil"}),!t.remaining&&t.deferUntil!==void 0&&e.addIssue({code:s.ZodIssueCode.custom,message:"empty work cannot be deferred"}))}),fde=s.object({version:s.literal(Xf),predecessorWorkflowExecutionId:s.string().min(1).max(200),laneKey:s.string().min(1).max(64).optional(),generation:s.number().int().positive().optional()}).strict(),gde=s.object({version:s.literal(Xf),workflowExecutionId:s.string().min(1),accepted:s.boolean().optional(),reason:s.enum(["capability_disabled"]).optional()}).strict();var f2=["GATEWAY","HOSTED_UI_PAGE","HOSTED_UI_PROXY"],g2=["platform_requests"],h2=s.object({requestId:s.string().optional(),businessId:s.string().optional(),route:s.string().optional(),usageEventId:s.string().optional()}).strict(),b2=s.object({organizationId:s.string().min(1),source:s.enum(f2),dimension:s.enum(g2),quantity:s.number().int().positive(),idempotencyKey:s.string().min(1).max(512),occurredAt:s.string().datetime(),metadata:h2.optional()}).strict(),$de=s.object({entries:s.array(b2).min(1).max(500)});var _2=["owner","admin","member"];function v2(t){return t==="maker_token"}var Ie=_2,F=["owner","admin"],Br=["owner"],L=["business"],Ze=["organization"],oS=["self"],sS=["business","organization"],y2=["business","self"],$P=["organization","self"];function la(t){return t.replaceAll("_"," ")}function S(t,e){let[n,i]=t.split(":"),r=n,o=`${la(n)}: ${la(i)}`,a=e.effect==="read"?`View ${la(n)} ${la(i)} data through authorized platform surfaces.`:`Perform ${la(n)} ${la(i)} operations through authorized platform surfaces.`;return{...e,domain:r,title:o,description:a}}var ko={"agent:configure":S("agent:configure",{effect:"write",allowedTargetKinds:L,defaultRoles:F,delegation:"maker_token"}),"auth_provider_connection:create":S("auth_provider_connection:create",{effect:"write",allowedTargetKinds:L,defaultRoles:Br,delegation:"browser_only"}),"auth_provider_connection:delete":S("auth_provider_connection:delete",{effect:"write",allowedTargetKinds:L,defaultRoles:Br,delegation:"browser_only"}),"auth_provider_connection:read":S("auth_provider_connection:read",{effect:"read",allowedTargetKinds:L,defaultRoles:Ie,delegation:"browser_only"}),"auth_provider_connection:update":S("auth_provider_connection:update",{effect:"write",allowedTargetKinds:L,defaultRoles:Br,delegation:"browser_only"}),"agent:read":S("agent:read",{effect:"read",allowedTargetKinds:L,defaultRoles:Ie,delegation:"maker_token"}),"agreement:amend":S("agreement:amend",{effect:"write",allowedTargetKinds:L,defaultRoles:F,delegation:"maker_token"}),"agreement:create":S("agreement:create",{effect:"write",allowedTargetKinds:L,defaultRoles:F,delegation:"maker_token"}),"agreement:read":S("agreement:read",{effect:"read",allowedTargetKinds:L,defaultRoles:Ie,delegation:"maker_token"}),"analytics:read":S("analytics:read",{effect:"read",allowedTargetKinds:L,defaultRoles:Ie,delegation:"maker_token"}),"apply_timeline:read":S("apply_timeline:read",{effect:"read",allowedTargetKinds:L,defaultRoles:Ie,delegation:"maker_token"}),"audit_log:export":S("audit_log:export",{effect:"read",allowedTargetKinds:sS,defaultRoles:F,delegation:"maker_token"}),"audit_log:read":S("audit_log:read",{effect:"read",allowedTargetKinds:sS,defaultRoles:Ie,delegation:"maker_token"}),"auth_context:read":S("auth_context:read",{effect:"read",allowedTargetKinds:oS,defaultRoles:Ie,delegation:"maker_token"}),"auth_context:issue":S("auth_context:issue",{effect:"write",allowedTargetKinds:L,defaultRoles:F,delegation:"maker_token"}),"automation_rule:create":S("automation_rule:create",{effect:"write",allowedTargetKinds:L,defaultRoles:F,delegation:"maker_token"}),"automation_rule:delete":S("automation_rule:delete",{effect:"write",allowedTargetKinds:L,defaultRoles:F,delegation:"maker_token"}),"automation_rule:read":S("automation_rule:read",{effect:"read",allowedTargetKinds:L,defaultRoles:Ie,delegation:"maker_token"}),"automation_rule:update":S("automation_rule:update",{effect:"write",allowedTargetKinds:L,defaultRoles:F,delegation:"maker_token"}),"backend:bind":S("backend:bind",{effect:"write",allowedTargetKinds:L,defaultRoles:F,delegation:"maker_token"}),"backend:create":S("backend:create",{effect:"write",allowedTargetKinds:L,defaultRoles:F,delegation:"maker_token"}),"backend:delete":S("backend:delete",{effect:"write",allowedTargetKinds:L,defaultRoles:F,delegation:"maker_token"}),"backend:read":S("backend:read",{effect:"read",allowedTargetKinds:L,defaultRoles:Ie,delegation:"maker_token"}),"brand:update":S("brand:update",{effect:"write",allowedTargetKinds:L,defaultRoles:F,delegation:"maker_token"}),"bulletin:ack":S("bulletin:ack",{effect:"write",allowedTargetKinds:L,defaultRoles:F,delegation:"maker_token"}),"bulletin:read":S("bulletin:read",{effect:"read",allowedTargetKinds:L,defaultRoles:Ie,delegation:"maker_token"}),"bulletin:resolve":S("bulletin:resolve",{effect:"write",allowedTargetKinds:L,defaultRoles:F,delegation:"maker_token"}),"business:create":S("business:create",{effect:"write",allowedTargetKinds:Ze,defaultRoles:F,delegation:"maker_token"}),"business:compile":S("business:compile",{effect:"read",allowedTargetKinds:L,defaultRoles:F,delegation:"maker_token"}),"business:delete":S("business:delete",{effect:"write",allowedTargetKinds:L,defaultRoles:F,delegation:"maker_token"}),"business:docs_update":S("business:docs_update",{effect:"write",allowedTargetKinds:L,defaultRoles:F,delegation:"maker_token"}),"business:rbac_update":S("business:rbac_update",{effect:"write",allowedTargetKinds:L,defaultRoles:F,delegation:"maker_token"}),"business:cors_update":S("business:cors_update",{effect:"write",allowedTargetKinds:L,defaultRoles:F,delegation:"maker_token"}),"business:preview_env_update":S("business:preview_env_update",{effect:"write",allowedTargetKinds:L,defaultRoles:F,delegation:"maker_token"}),"business:publish":S("business:publish",{effect:"write",allowedTargetKinds:L,defaultRoles:F,delegation:"maker_token"}),"business:read":S("business:read",{effect:"read",allowedTargetKinds:sS,defaultRoles:Ie,delegation:"maker_token"}),"business:rollback":S("business:rollback",{effect:"write",allowedTargetKinds:L,defaultRoles:F,delegation:"maker_token"}),"business_dependents:read":S("business_dependents:read",{effect:"read",allowedTargetKinds:L,defaultRoles:Ie,delegation:"maker_token"}),"business_variable:create":S("business_variable:create",{effect:"write",allowedTargetKinds:L,defaultRoles:F,delegation:"maker_token"}),"business_variable:delete":S("business_variable:delete",{effect:"write",allowedTargetKinds:L,defaultRoles:F,delegation:"maker_token"}),"business_variable:operation_read":S("business_variable:operation_read",{effect:"read",allowedTargetKinds:L,defaultRoles:Ie,delegation:"maker_token"}),"business_variable:read":S("business_variable:read",{effect:"read",allowedTargetKinds:L,defaultRoles:Ie,delegation:"maker_token"}),"business_variable:revoke":S("business_variable:revoke",{effect:"write",allowedTargetKinds:L,defaultRoles:F,delegation:"maker_token"}),"business_variable:rotate":S("business_variable:rotate",{effect:"write",allowedTargetKinds:L,defaultRoles:F,delegation:"maker_token"}),"change_set:propose":S("change_set:propose",{effect:"write",allowedTargetKinds:L,defaultRoles:F,delegation:"maker_token"}),"change_set:read":S("change_set:read",{effect:"read",allowedTargetKinds:L,defaultRoles:F,delegation:"maker_token"}),"consumer:block":S("consumer:block",{effect:"write",allowedTargetKinds:L,defaultRoles:F,delegation:"maker_token"}),"consumer:migrate_latest":S("consumer:migrate_latest",{effect:"write",allowedTargetKinds:L,defaultRoles:F,delegation:"maker_token"}),"consumer:read":S("consumer:read",{effect:"read",allowedTargetKinds:L,defaultRoles:Ie,delegation:"maker_token"}),"consumer:remove":S("consumer:remove",{effect:"write",allowedTargetKinds:L,defaultRoles:F,delegation:"maker_token"}),"consumer:roles_assign":S("consumer:roles_assign",{effect:"write",allowedTargetKinds:L,defaultRoles:F,delegation:"maker_token"}),"denial:read":S("denial:read",{effect:"read",allowedTargetKinds:L,defaultRoles:Ie,delegation:"maker_token"}),"environment:create":S("environment:create",{effect:"write",allowedTargetKinds:L,defaultRoles:F,delegation:"maker_token"}),"environment:delete":S("environment:delete",{effect:"write",allowedTargetKinds:L,defaultRoles:F,delegation:"maker_token"}),"environment:read":S("environment:read",{effect:"read",allowedTargetKinds:L,defaultRoles:Ie,delegation:"maker_token"}),"frontend:read":S("frontend:read",{effect:"read",allowedTargetKinds:L,defaultRoles:Ie,delegation:"maker_token"}),"frontend:rollback":S("frontend:rollback",{effect:"write",allowedTargetKinds:L,defaultRoles:F,delegation:"maker_token"}),"git_connection:create":S("git_connection:create",{effect:"write",allowedTargetKinds:Ze,defaultRoles:F,delegation:"browser_only"}),"git_connection:delete":S("git_connection:delete",{effect:"write",allowedTargetKinds:Ze,defaultRoles:F,delegation:"browser_only"}),"git_connection:read":S("git_connection:read",{effect:"read",allowedTargetKinds:Ze,defaultRoles:F,delegation:"browser_only"}),"git_connection:update":S("git_connection:update",{effect:"write",allowedTargetKinds:Ze,defaultRoles:F,delegation:"browser_only"}),"knowledge:read":S("knowledge:read",{effect:"read",allowedTargetKinds:y2,defaultRoles:Ie,delegation:"maker_token"}),"maker_token:create":S("maker_token:create",{effect:"write",allowedTargetKinds:Ze,defaultRoles:F,delegation:"browser_only"}),"maker_token:create_org":S("maker_token:create_org",{effect:"write",allowedTargetKinds:Ze,defaultRoles:F,delegation:"user_session_only"}),"maker_token:read":S("maker_token:read",{effect:"read",allowedTargetKinds:Ze,defaultRoles:F,delegation:"user_session_only"}),"maker_token:revoke":S("maker_token:revoke",{effect:"write",allowedTargetKinds:Ze,defaultRoles:F,delegation:"browser_only"}),"maker_token:rotate":S("maker_token:rotate",{effect:"write",allowedTargetKinds:Ze,defaultRoles:F,delegation:"browser_only"}),"notification:preferences_read":S("notification:preferences_read",{effect:"read",allowedTargetKinds:L,defaultRoles:Ie,delegation:"user_session_only"}),"notification:preferences_update":S("notification:preferences_update",{effect:"write",allowedTargetKinds:L,defaultRoles:Ie,delegation:"user_session_only"}),"organization:create":S("organization:create",{effect:"write",allowedTargetKinds:oS,defaultRoles:F,delegation:"user_session_only"}),"organization:delete":S("organization:delete",{effect:"write",allowedTargetKinds:Ze,defaultRoles:Br,delegation:"user_session_only"}),"organization:ownership_transfer":S("organization:ownership_transfer",{effect:"write",allowedTargetKinds:Ze,defaultRoles:Br,delegation:"user_session_only"}),"organization:read":S("organization:read",{effect:"read",allowedTargetKinds:$P,defaultRoles:Ie,delegation:"maker_token"}),"organization:manage_billing":S("organization:manage_billing",{effect:"write",allowedTargetKinds:Ze,defaultRoles:Br,delegation:"browser_only"}),"organization_role:read":S("organization_role:read",{effect:"read",allowedTargetKinds:Ze,defaultRoles:Ie,delegation:"user_session_only"}),"organization_role:create":S("organization_role:create",{effect:"write",allowedTargetKinds:Ze,defaultRoles:F,delegation:"user_session_only"}),"organization_role:update":S("organization_role:update",{effect:"write",allowedTargetKinds:Ze,defaultRoles:F,delegation:"user_session_only"}),"organization_role:delete":S("organization_role:delete",{effect:"write",allowedTargetKinds:Ze,defaultRoles:F,delegation:"user_session_only"}),"organization_bulletin:read":S("organization_bulletin:read",{effect:"read",allowedTargetKinds:Ze,defaultRoles:Ie,delegation:"maker_token"}),"organization_invitation:accept":S("organization_invitation:accept",{effect:"write",allowedTargetKinds:oS,defaultRoles:Ie,delegation:"user_session_only"}),"organization_invitation:create":S("organization_invitation:create",{effect:"write",allowedTargetKinds:Ze,defaultRoles:F,delegation:"user_session_only"}),"organization_invitation:list":S("organization_invitation:list",{effect:"read",allowedTargetKinds:$P,defaultRoles:Ie,delegation:"user_session_only"}),"organization_invitation:revoke":S("organization_invitation:revoke",{effect:"write",allowedTargetKinds:Ze,defaultRoles:F,delegation:"user_session_only"}),"organization_member:list":S("organization_member:list",{effect:"read",allowedTargetKinds:Ze,defaultRoles:Ie,delegation:"user_session_only"}),"organization_member:remove":S("organization_member:remove",{effect:"write",allowedTargetKinds:Ze,defaultRoles:F,delegation:"user_session_only"}),"organization_member:update":S("organization_member:update",{effect:"write",allowedTargetKinds:Ze,defaultRoles:F,delegation:"user_session_only"}),"persona:issue":S("persona:issue",{effect:"write",allowedTargetKinds:L,defaultRoles:F,delegation:"maker_token"}),"persona:read":S("persona:read",{effect:"read",allowedTargetKinds:L,defaultRoles:Ie,delegation:"maker_token"}),"persona:revoke":S("persona:revoke",{effect:"write",allowedTargetKinds:L,defaultRoles:F,delegation:"maker_token"}),"persona:rotate":S("persona:rotate",{effect:"write",allowedTargetKinds:L,defaultRoles:F,delegation:"maker_token"}),"plan:read":S("plan:read",{effect:"read",allowedTargetKinds:L,defaultRoles:Ie,delegation:"maker_token"}),"product_subscription:create":S("product_subscription:create",{effect:"write",allowedTargetKinds:Ze,defaultRoles:F,delegation:"browser_only"}),"promo_code:archive":S("promo_code:archive",{effect:"write",allowedTargetKinds:L,defaultRoles:F,delegation:"maker_token"}),"promo_code:create":S("promo_code:create",{effect:"write",allowedTargetKinds:L,defaultRoles:F,delegation:"maker_token"}),"promo_code:reactivate":S("promo_code:reactivate",{effect:"write",allowedTargetKinds:L,defaultRoles:F,delegation:"maker_token"}),"promo_code:read":S("promo_code:read",{effect:"read",allowedTargetKinds:L,defaultRoles:Ie,delegation:"maker_token"}),"promo_code:update":S("promo_code:update",{effect:"write",allowedTargetKinds:L,defaultRoles:F,delegation:"maker_token"}),"rbac:read":S("rbac:read",{effect:"read",allowedTargetKinds:L,defaultRoles:Ie,delegation:"maker_token"}),"resource_count:report":S("resource_count:report",{effect:"write",allowedTargetKinds:L,defaultRoles:F,delegation:"maker_token"}),"runtime_token:mint":S("runtime_token:mint",{effect:"write",allowedTargetKinds:L,defaultRoles:F,delegation:"maker_token"}),"runtime_token:read":S("runtime_token:read",{effect:"read",allowedTargetKinds:L,defaultRoles:Ie,delegation:"maker_token"}),"runtime_token:revoke":S("runtime_token:revoke",{effect:"write",allowedTargetKinds:L,defaultRoles:F,delegation:"maker_token"}),"runtime_token:rotate":S("runtime_token:rotate",{effect:"write",allowedTargetKinds:L,defaultRoles:F,delegation:"maker_token"}),"stripe_connection:create":S("stripe_connection:create",{effect:"write",allowedTargetKinds:Ze,defaultRoles:Br,delegation:"browser_only"}),"stripe_connection:delete":S("stripe_connection:delete",{effect:"write",allowedTargetKinds:Ze,defaultRoles:Br,delegation:"user_session_only"}),"stripe_connection:read":S("stripe_connection:read",{effect:"read",allowedTargetKinds:Ze,defaultRoles:Br,delegation:"user_session_only"}),"tax_settings:read":S("tax_settings:read",{effect:"read",allowedTargetKinds:L,defaultRoles:Ie,delegation:"maker_token"}),"tax_settings:update":S("tax_settings:update",{effect:"write",allowedTargetKinds:L,defaultRoles:F,delegation:"maker_token"}),"usage:read":S("usage:read",{effect:"read",allowedTargetKinds:L,defaultRoles:Ie,delegation:"maker_token"}),"webhook:create":S("webhook:create",{effect:"write",allowedTargetKinds:L,defaultRoles:F,delegation:"maker_token"}),"webhook:delete":S("webhook:delete",{effect:"write",allowedTargetKinds:L,defaultRoles:F,delegation:"maker_token"}),"webhook:delivery_read":S("webhook:delivery_read",{effect:"read",allowedTargetKinds:L,defaultRoles:Ie,delegation:"maker_token"}),"webhook:read":S("webhook:read",{effect:"read",allowedTargetKinds:L,defaultRoles:Ie,delegation:"maker_token"}),"webhook:test":S("webhook:test",{effect:"write",allowedTargetKinds:L,defaultRoles:F,delegation:"maker_token"}),"webhook:update":S("webhook:update",{effect:"write",allowedTargetKinds:L,defaultRoles:F,delegation:"maker_token"}),"workflow:replay":S("workflow:replay",{effect:"write",allowedTargetKinds:L,defaultRoles:F,delegation:"maker_token"}),"workflow:rollback":S("workflow:rollback",{effect:"write",allowedTargetKinds:L,defaultRoles:F,delegation:"maker_token"})},CP=Object.keys(ko).sort(),Pde=CP.filter(t=>v2(ko[t].delegation));function k2(){for(let t of CP){if(!/^[a-z_]+:[a-z_]+$/.test(t)||t.includes("*"))throw new Error(`Platform permission must be exact: ${t}`);let e=ko[t];if(e.allowedTargetKinds.length===0)throw new Error(`Platform permission has no target kind: ${t}`);if(e.defaultRoles.length===0)throw new Error(`Platform permission has no default role: ${t}`)}}k2();var NP={contract:{label:"Managed as code",summary:"Declarative business state, canonical in the GitHub repo. Author the business program and 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}};function w2(t){return NP[t].mcpMayWrite}function S2(t){return NP[t].canonicalHome}var _r="webhooks",Yl="promo-codes",ua="variables",$n="change-sets",fn=t=>({reason:"repo_authored",detail:`Declare ${t} in the business repo's business/ folder and push \u2014 the platform applies it.`}),I2=[{key:"plan.create",class:"contract",domain:"plans",unavailable:fn("the plan with `fs.plan()`")},{key:"plan.update",class:"contract",domain:"plans",unavailable:fn("the plan's new shape with `fs.plan()`")},{key:"plan.delete",class:"contract",domain:"plans",unavailable:fn("the removal (delete the `fs.plan()` call)")},{key:"plan.read",class:"contract",domain:"plans"},{key:"plan.variant.create",class:"contract",domain:"plans",unavailable:fn("the plan variant with `fs.plan()`")},{key:"plan.promote",class:"contract",domain:"plans",unavailable:fn("the promoted plan version")},{key:"plan.rollback",class:"contract",domain:"plans",unavailable:fn("the prior plan shape (revert the commit)")},{key:"route.define",class:"contract",domain:"routes",unavailable:fn("the route with `fs.route()`")},{key:"gateway.config",class:"contract",domain:"gateway",unavailable:fn("the gateway block on `fs.business()`")},{key:"auth_strategy.update",class:"contract",domain:"gateway",unavailable:fn("the auth strategy on `fs.business()`")},{key:"rate_limit.update",class:"contract",domain:"gateway",unavailable:fn("the limits on the plan or route")},{key:"meter.define",class:"contract",domain:"metering",unavailable:fn("the meter with `fs.meter()`")},{key:"backend.define",class:"contract",domain:"backends",unavailable:fn("the backend with `fs.backend()`")},{key:"business.contract_field.update",class:"contract",domain:"businesses",unavailable:fn("the field (name / meters / subscriberChangePolicy) 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:"funding.top_up.purchase",class:"operate",domain:"funding",sideEffect:"write",agentDiscoverableHandoff:!0,unavailable:{reason:"subscriber_portal",detail:"POST /portal/businesses/:businessId/me/balance-top-up \u2014 a signed-in subscriber with invoice:pay starts Stripe Checkout from its own portal. Use the public Frontend SDK fs.core() handoff documented in /cookbook/prepaid-credits; builder CLI and MCP credentials cannot act as the subscriber."}},{key:"change_set.portal_list",class:"operate",domain:$n,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:$n,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:$n},{key:"apply_timeline.read",class:"operate",domain:$n},{key:"change_set.approve",class:"operate",domain:$n,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:$n,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:$n,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:$n,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:$n},{key:"change_set.preview",class:"operate",domain:$n},{key:"change_set.proposal_list",class:"operate",domain:$n},{key:"change_set.proposal_read",class:"operate",domain:$n},{key:"business.delete",class:"operate",domain:"businesses"},{key:"business.config_attempts.read",class:"operate",domain:"businesses"},{key:"business.subdomain_availability.read",class:"operate",domain:"businesses"},{key:"frontend.status",class:"operate",domain:"frontend"},{key:"frontend.rollback",class:"operate",domain:"frontend"},{key:"auth_provider_connection.read",class:"operate",domain:"identity"},{key:"auth_provider_connection.create",class:"operate",domain:"identity"},{key:"auth_provider_connection.update",class:"operate",domain:"identity"},{key:"auth_provider_connection.delete",class:"operate",domain:"identity"},{key:"webhook.read",class:"operate",domain:_r},{key:"webhook.create",class:"operate",domain:_r},{key:"webhook.update",class:"operate",domain:_r},{key:"webhook.delete",class:"operate",domain:_r},{key:"webhook.test",class:"operate",domain:_r},{key:"webhook.trigger",class:"operate",domain:_r},{key:"webhook.listen",class:"operate",domain:_r},{key:"webhook.rotate_secret",class:"operate",domain:_r},{key:"webhook.event_type.read",class:"operate",domain:_r},{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:_r},{key:"promo_code.read",class:"operate",domain:Yl},{key:"promo_code.create",class:"operate",domain:Yl},{key:"promo_code.update",class:"operate",domain:Yl},{key:"promo_code.archive",class:"operate",domain:Yl},{key:"promo_code.reactivate",class:"operate",domain:Yl},{key:"consumer.read",class:"operate",domain:"consumers"},{key:"consumer.block",class:"operate",domain:"consumers"},{key:"consumer.migrate_latest",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 its own RBAC flag and default role in its portal (/settings/team). The builder drives the SAME per-subscriber flag from the builder plane with `farthershore consumer rbac enable|disable` (consumer.rbac.enable / consumer.rbac.disable), and owns the product-wide flag via `farthershore business rbac enable` (rbac.enable); `farthershore business rbac` VERIFIES it (rbac.read). Enforcement requires BOTH flags."}},{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 (/settings/team). The builder manages the same rows from the builder plane with `farthershore consumer rbac roles list|create|update|delete` (consumer.read / consumer.role.create|update|delete); a role change the subscriber must approve goes through `farthershore proposal create`."}},{key:"consumer.roles.assign",class:"operate",domain:"consumers"},{key:"consumer.rbac.enable",class:"operate",domain:"consumers"},{key:"consumer.rbac.disable",class:"operate",domain:"consumers"},{key:"consumer.role.create",class:"operate",domain:"consumers"},{key:"consumer.role.update",class:"operate",domain:"consumers"},{key:"consumer.role.delete",class:"operate",domain:"consumers"},{key:"business_variable.read",class:"operate",domain:ua},{key:"business_variable.create",class:"operate",domain:ua},{key:"business_variable.rotate",class:"operate",domain:ua},{key:"business_variable.revoke",class:"operate",domain:ua},{key:"business_variable.delete",class:"operate",domain:ua},{key:"business_variable.operation.read",class:"operate",domain:ua},{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:"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.login",class:"operate",domain:"personas"},{key:"persona.local_preview.issue",class:"operate",domain:"personas",unavailable:{reason:"served_by_other_command",detail:"Sign a persona in with `farthershore persona login` (hosted portal). This lease is CLI-process-only machinery for the localhost preview that `farthershore frontend dev|preview --live --business --env --persona` drives automatically; never call it by hand."}},{key:"persona.local_preview.renew",class:"operate",domain:"personas",unavailable:{reason:"served_by_other_command",detail:"Renewed automatically by the running `farthershore frontend dev|preview --live --persona` process (CLI local-preview proxy); there is no standalone command and nothing to call by hand. Use `farthershore persona login` for hosted sign-in."}},{key:"persona.local_preview.revoke",class:"operate",domain:"personas",unavailable:{reason:"served_by_other_command",detail:"Revoked automatically when the `farthershore frontend dev|preview --live --persona` process exits; a lease otherwise expires within five minutes. Nothing to call by hand."}},{key:"persona.rotate",class:"operate",domain:"personas"},{key:"persona.delete",class:"operate",domain:"personas"},{key:"agreement.read",class:"operate",domain:"agreements"},{key:"agreement.create",class:"operate",domain:"agreements"},{key:"agreement.amend",class:"operate",domain:"agreements"},{key:"analytics.timeseries",class:"operate",domain:"analytics"},{key:"analytics.latency",class:"operate",domain:"analytics"},{key:"analytics.top",class:"operate",domain:"analytics"},{key:"analytics.log",class:"operate",domain:"analytics"},{key:"organization.list",class:"operate",domain:"organizations"},{key:"organization.create",class:"operate",domain:"organizations"},{key:"organization.role.list",class:"operate",domain:"organizations"},{key:"organization.role.show",class:"operate",domain:"organizations"},{key:"organization.role.create",class:"operate",domain:"organizations"},{key:"organization.role.update",class:"operate",domain:"organizations"},{key:"organization.role.delete",class:"operate",domain:"organizations"},{key:"organization.member.list",class:"operate",domain:"organizations"},{key:"organization.invitation.create",class:"operate",domain:"organizations"},{key:"organization.invitation.list",class:"operate",domain:"organizations"},{key:"organization.invitation.list_sent",class:"operate",domain:"organizations",sideEffect:"read"},{key:"organization.invitation.revoke",class:"operate",domain:"organizations"},{key:"organization.invitation.accept",class:"operate",domain:"organizations"},{key:"organization.member.update",class:"operate",domain:"organizations"},{key:"organization.member.remove",class:"operate",domain:"organizations"},{key:"organization.ownership.transfer",class:"operate",domain:"organizations"},{key:"organization.active.select",class:"operate",domain:"organizations",sideEffect:"read",unavailable:{reason:"served_by_other_command",detail:"Run `farthershore auth organization use <id-or-slug>` to change the stored default organization, or pass `--org <id>` on any command for a one-off selection. The dashboard's active-organization cookie is browser-local and is not emulated."}},{key:"organization.delete",class:"operate",domain:"organizations"},{key:"organization.overview.read",class:"operate",domain:"organizations"},{key:"organization.bulletin.read",class:"operate",domain:"organizations"},{key:"organization.billing.manage",class:"operate",domain:"billing",unavailable:{reason:"credential_administration",detail:"Use the signed-in browser billing flow. Platform subscription management is interactive and browser-only."}},{key:"audit_log.read",class:"operate",domain:"audit-logs"},{key:"audit_log.business.read",class:"operate",domain:"audit-logs"},{key:"audit_log.business.export",class:"operate",domain:"audit-logs"},{key:"audit_log.export",class:"operate",domain:"audit-logs"},{key:"notification.preferences.read",class:"operate",domain:"notifications"},{key:"notification.preferences.update",class:"operate",domain:"notifications"},{key:"brand.update",class:"operate",domain:"branding"},{key:"business.cors.update",class:"operate",domain:"businesses",unavailable:{reason:"served_by_other_command",detail:"Run `farthershore business update <business-id> --allowed-origins <origins>` (or `--clear-allowed-origins`). That shared metadata command is registered under `brand.update`."}},{key:"business.docs.enable",class:"operate",domain:"businesses"},{key:"business.docs.disable",class:"operate",domain:"businesses"},{key:"rbac.enable",class:"operate",domain:"businesses"},{key:"rbac.disable",class:"operate",domain:"businesses"},{key:"rbac.subjects.read",class:"operate",domain:"businesses"},{key:"business.preview_env.set",class:"operate",domain:"businesses"},{key:"business.create",class:"operate",domain:"businesses"},{key:"business.compile",class:"operate",domain:"businesses",sideEffect:"read",unavailable:{reason:"served_by_other_command",detail:"Use `farthershore validate --business <business>`; it builds deterministically and calls this manifest-compile endpoint for the server verdict."}},{key:"business.read",class:"operate",domain:"businesses"},{key:"business.routes.read",class:"contract",domain:"businesses"},{key:"business.contract.read",class:"contract",domain:"businesses"},{key:"business.publish",class:"operate",domain:"lifecycle"},{key:"business.rollback",class:"operate",domain:"lifecycle"},{key:"manifest.apply",class:"contract",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:"environment.create",class:"operate",domain:"environments"},{key:"environment.delete",class:"operate",domain:"environments"},{key:"environment.read",class:"operate",domain:"environments"},{key:"auth.context.read",class:"operate",domain:"authentication",unavailable:{reason:"served_by_other_command",detail:"Use `farthershore auth whoami`."}},{key:"auth.context.issue",class:"operate",domain:"authentication"},{key:"org_maker_token.create",class:"operate",domain:"authentication"},{key:"org_maker_token.list",class:"operate",domain:"authentication"},{key:"org_maker_token.permission_catalog.read",class:"operate",domain:"authentication"},{key:"org_maker_token.update",class:"operate",domain:"authentication"},{key:"org_maker_token.approval_list",class:"operate",domain:"authentication",sideEffect:"read"},{key:"org_maker_token.approve",class:"operate",domain:"authentication"},{key:"org_maker_token.deny",class:"operate",domain:"authentication"},{key:"org_maker_token.rotate",class:"operate",domain:"authentication"},{key:"org_maker_token.revoke",class:"operate",domain:"authentication"},...["create","read","rotate","revoke"].map(t=>({key:`maker_token.${t}`,class:"operate",domain:"authentication",unavailable:{reason:"credential_administration",detail:"Use the signed-in dashboard token administration page. MakerToken secrets are never exposed through agent discovery."}})),...["create","read","update","delete"].map(t=>({key:`git_connection.${t}`,class:"operate",domain:"authentication"})),{key:"stripe_connection.create",class:"operate",domain:"billing",unavailable:{reason:"credential_administration",detail:"Connect Stripe from the signed-in dashboard (Connections or the business's Billing tab). The Stripe onboarding handshake is browser-only; check the result with `farthershore stripe status <business>`."}},...["read","delete"].map(t=>({key:`stripe_connection.${t}`,class:"operate",domain:"billing"})),{key:"tax_settings.read",class:"operate",domain:"billing"},{key:"tax_settings.update",class:"operate",domain:"billing"},{key:"resource_count.report",class:"operate",domain:"resources"},{key:"denial.read",class:"operate",domain:"observability"},{key:"business_dependents.read",class:"operate",domain:"businesses"},{key:"workflow.replay",class:"operate",domain:"workflows",sideEffect:"read"},{key:"workflow.rollback",class:"operate",domain:"workflows",sideEffect:"read"},{key:"automation_rule.read",class:"operate",domain:"automation"},{key:"automation_rule.create",class:"operate",domain:"automation"},{key:"automation_rule.update",class:"operate",domain:"automation"},{key:"automation_rule.delete",class:"operate",domain:"automation"},{key:"knowledge.guide.read",class:"operate",domain:"knowledge"},{key:"knowledge.business.read",class:"operate",domain:"knowledge"}],wo="maker_token:create_org",$i="business:read",Tt="local_repository:write",Qf={"auth.context.issue":{permission:"auth_context:issue",targetKind:"business"},"auth.context.read":{permission:"auth_context:read",targetKind:"self"},"org_maker_token.create":{permission:wo,targetKind:"organization"},"org_maker_token.list":{permission:"maker_token:read",targetKind:"organization"},"org_maker_token.permission_catalog.read":{permission:"maker_token:read",targetKind:"organization"},"org_maker_token.update":{permission:wo,targetKind:"organization"},"org_maker_token.approval_list":{permission:wo,targetKind:"organization"},"org_maker_token.approve":{permission:wo,targetKind:"organization"},"org_maker_token.deny":{permission:wo,targetKind:"organization"},"org_maker_token.rotate":{permission:wo,targetKind:"organization"},"org_maker_token.revoke":{permission:wo,targetKind:"organization"},"git_connection.create":{permission:"git_connection:create",targetKind:"organization"},"git_connection.delete":{permission:"git_connection:delete",targetKind:"organization"},"git_connection.read":{permission:"git_connection:read",targetKind:"organization"},"git_connection.update":{permission:"git_connection:update",targetKind:"organization"},"stripe_connection.create":{permission:"stripe_connection:create",targetKind:"organization"},"stripe_connection.delete":{permission:"stripe_connection:delete",targetKind:"organization"},"stripe_connection.read":{permission:"stripe_connection:read",targetKind:"organization"},"agents.disable":{permission:"agent:configure",targetKind:"business"},"agents.enable":{permission:"agent:configure",targetKind:"business"},"agents.list":{permission:"agent:read",targetKind:"business"},"agents.runs.show":{permission:"agent:read",targetKind:"business"},"agents.status":{permission:"agent:read",targetKind:"business"},"agreement.amend":{permission:"agreement:amend",targetKind:"business"},"agreement.create":{permission:"agreement:create",targetKind:"business"},"agreement.read":{permission:"agreement:read",targetKind:"business"},"analytics.latency":{permission:"analytics:read",targetKind:"business"},"analytics.log":{permission:"analytics:read",targetKind:"business"},"analytics.timeseries":{permission:"analytics:read",targetKind:"business"},"analytics.top":{permission:"analytics:read",targetKind:"business"},"apply_timeline.list":{permission:"apply_timeline:read",targetKind:"business"},"apply_timeline.read":{permission:"apply_timeline:read",targetKind:"business"},"audit_log.export":{permission:"audit_log:export",targetKind:"organization"},"audit_log.read":{permission:"audit_log:read",targetKind:"organization"},"audit_log.business.read":{permission:"audit_log:read",targetKind:"business"},"audit_log.business.export":{permission:"audit_log:export",targetKind:"business"},"backend.bind":{permission:"backend:bind",targetKind:"business"},"backend.create":{permission:"backend:create",targetKind:"business"},"backend.delete":{permission:"backend:delete",targetKind:"business"},"backend.read":{permission:"backend:read",targetKind:"business"},"automation_rule.create":{permission:"automation_rule:create",targetKind:"business"},"automation_rule.delete":{permission:"automation_rule:delete",targetKind:"business"},"automation_rule.read":{permission:"automation_rule:read",targetKind:"business"},"automation_rule.update":{permission:"automation_rule:update",targetKind:"business"},"bulletin.ack":{permission:"bulletin:ack",targetKind:"business"},"bulletin.list":{permission:"bulletin:read",targetKind:"business"},"bulletin.read":{permission:"bulletin:read",targetKind:"business"},"bulletin.resolve":{permission:"bulletin:resolve",targetKind:"business"},"business.create":{permission:"business:create",targetKind:"organization"},"business.compile":{permission:"business:compile",targetKind:"business"},"business.delete":{permission:"business:delete",targetKind:"business"},"business.docs.disable":{permission:"business:docs_update",targetKind:"business"},"business.docs.enable":{permission:"business:docs_update",targetKind:"business"},"business.list":{permission:$i,targetKind:"organization"},"business.cors.update":{permission:"business:cors_update",targetKind:"business"},"business.preview_env.set":{permission:"business:preview_env_update",targetKind:"business"},"business.publish":{permission:"business:publish",targetKind:"business"},"business.read":{permission:$i,targetKind:"business"},"business.routes.read":{permission:$i,targetKind:"business"},"business.contract.read":{permission:$i,targetKind:"business"},"business.config_attempts.read":{permission:$i,targetKind:"business"},"business.subdomain_availability.read":{permission:$i,targetKind:"organization"},"business.status":{permission:$i,targetKind:"business"},"business_dependents.read":{permission:"business_dependents:read",targetKind:"business"},"business_variable.delete":{permission:"business_variable:delete",targetKind:"business"},"business_variable.create":{permission:"business_variable:create",targetKind:"business"},"business_variable.operation.read":{permission:"business_variable:operation_read",targetKind:"business"},"business_variable.read":{permission:"business_variable:read",targetKind:"business"},"business_variable.rotate":{permission:"business_variable:rotate",targetKind:"business"},"business_variable.revoke":{permission:"business_variable:revoke",targetKind:"business"},"change_set.preview":{permission:"change_set:propose",targetKind:"business"},"change_set.proposal_list":{permission:"change_set:read",targetKind:"business"},"change_set.proposal_read":{permission:"change_set:read",targetKind:"business"},"change_set.propose":{permission:"change_set:propose",targetKind:"business"},"consumer.block":{permission:"consumer:block",targetKind:"business"},"consumer.migrate_latest":{permission:"consumer:migrate_latest",targetKind:"business"},"consumer.read":{permission:"consumer:read",targetKind:"business"},"consumer.remove":{permission:"consumer:remove",targetKind:"business"},"consumer.roles.assign":{permission:"consumer:roles_assign",targetKind:"business"},"consumer.rbac.enable":{permission:"consumer:roles_assign",targetKind:"business"},"consumer.rbac.disable":{permission:"consumer:roles_assign",targetKind:"business"},"consumer.role.create":{permission:"consumer:roles_assign",targetKind:"business"},"consumer.role.update":{permission:"consumer:roles_assign",targetKind:"business"},"consumer.role.delete":{permission:"consumer:roles_assign",targetKind:"business"},"environment.create":{permission:"environment:create",targetKind:"business"},"environment.delete":{permission:"environment:delete",targetKind:"business"},"denial.read":{permission:"denial:read",targetKind:"business"},"environment.read":{permission:"environment:read",targetKind:"business"},"frontend.rollback":{permission:"frontend:rollback",targetKind:"business"},"frontend.status":{permission:"frontend:read",targetKind:"business"},"notification.preferences.read":{permission:"notification:preferences_read",targetKind:"business"},"notification.preferences.update":{permission:"notification:preferences_update",targetKind:"business"},"knowledge.guide.read":{permission:"knowledge:read",targetKind:"self"},"knowledge.business.read":{permission:"knowledge:read",targetKind:"business"},"organization.bulletin.read":{permission:"organization_bulletin:read",targetKind:"organization"},"organization.billing.manage":{permission:"organization:manage_billing",targetKind:"organization"},"organization.create":{permission:"organization:create",targetKind:"self"},"organization.delete":{permission:"organization:delete",targetKind:"organization"},"organization.invitation.accept":{permission:"organization_invitation:accept",targetKind:"self"},"organization.invitation.create":{permission:"organization_invitation:create",targetKind:"organization"},"organization.invitation.list":{permission:"organization_invitation:list",targetKind:"self"},"organization.invitation.list_sent":{permission:"organization_invitation:list",targetKind:"organization"},"organization.invitation.revoke":{permission:"organization_invitation:revoke",targetKind:"organization"},"organization.list":{permission:"organization:read",targetKind:"self"},"organization.role.list":{permission:"organization_role:read",targetKind:"organization"},"organization.role.show":{permission:"organization_role:read",targetKind:"organization"},"organization.role.create":{permission:"organization_role:create",targetKind:"organization"},"organization.role.update":{permission:"organization_role:update",targetKind:"organization"},"organization.role.delete":{permission:"organization_role:delete",targetKind:"organization"},"organization.member.list":{permission:"organization_member:list",targetKind:"organization"},"organization.member.remove":{permission:"organization_member:remove",targetKind:"organization"},"organization.member.update":{permission:"organization_member:update",targetKind:"organization"},"organization.overview.read":{permission:"organization:read",targetKind:"organization"},"organization.ownership.transfer":{permission:"organization:ownership_transfer",targetKind:"organization"},"organization.active.select":{permission:"organization:read",targetKind:"organization"},"persona.bootstrap":{permission:"persona:issue",targetKind:"business"},"persona.read":{permission:"persona:read",targetKind:"business"},"persona.login":{permission:"persona:issue",targetKind:"business"},"persona.local_preview.issue":{permission:"persona:issue",targetKind:"business"},"persona.local_preview.renew":{permission:"persona:issue",targetKind:"business"},"persona.local_preview.revoke":{permission:"persona:issue",targetKind:"business"},"persona.delete":{permission:"persona:revoke",targetKind:"business"},"persona.rotate":{permission:"persona:rotate",targetKind:"business"},"plan.create":{permission:Tt,targetKind:"local_repository"},"plan.read":{permission:"plan:read",targetKind:"business"},"auth_provider_connection.create":{permission:"auth_provider_connection:create",targetKind:"business"},"auth_provider_connection.delete":{permission:"auth_provider_connection:delete",targetKind:"business"},"auth_provider_connection.read":{permission:"auth_provider_connection:read",targetKind:"business"},"auth_provider_connection.update":{permission:"auth_provider_connection:update",targetKind:"business"},"promo_code.archive":{permission:"promo_code:archive",targetKind:"business"},"promo_code.create":{permission:"promo_code:create",targetKind:"business"},"promo_code.reactivate":{permission:"promo_code:reactivate",targetKind:"business"},"promo_code.read":{permission:"promo_code:read",targetKind:"business"},"promo_code.update":{permission:"promo_code:update",targetKind:"business"},"rbac.read":{permission:$i,targetKind:"business"},"runtime_token.mint":{permission:"runtime_token:mint",targetKind:"business"},"runtime_token.read":{permission:"runtime_token:read",targetKind:"business"},"runtime_token.revoke":{permission:"runtime_token:revoke",targetKind:"business"},"runtime_token.rotate":{permission:"runtime_token:rotate",targetKind:"business"},"resource_count.report":{permission:"resource_count:report",targetKind:"business"},"tax_settings.read":{permission:"tax_settings:read",targetKind:"business"},"tax_settings.update":{permission:"tax_settings:update",targetKind:"business"},"usage.read":{permission:"usage:read",targetKind:"business"},"workflow.replay":{permission:"workflow:replay",targetKind:"business"},"workflow.rollback":{permission:"workflow:rollback",targetKind:"business"},"webhook.create":{permission:"webhook:create",targetKind:"business"},"webhook.delete":{permission:"webhook:delete",targetKind:"business"},"webhook.delivery.read":{permission:"webhook:delivery_read",targetKind:"business"},"webhook.read":{permission:"webhook:read",targetKind:"business"},"webhook.test":{permission:"webhook:test",targetKind:"business"},"webhook.trigger":{permission:"webhook:test",targetKind:"business"},"webhook.listen":{permission:"webhook:create",targetKind:"business"},"webhook.update":{permission:"webhook:update",targetKind:"business"},"webhook.rotate_secret":{permission:"webhook:update",targetKind:"business"},"webhook.event_type.read":{permission:"webhook:read",targetKind:"business"},"plan.update":{permission:Tt,targetKind:"local_repository"},"plan.delete":{permission:Tt,targetKind:"local_repository"},"plan.variant.create":{permission:Tt,targetKind:"local_repository"},"plan.promote":{permission:Tt,targetKind:"local_repository"},"plan.rollback":{permission:Tt,targetKind:"local_repository"},"route.define":{permission:Tt,targetKind:"local_repository"},"gateway.config":{permission:Tt,targetKind:"local_repository"},"auth_strategy.update":{permission:Tt,targetKind:"local_repository"},"rate_limit.update":{permission:Tt,targetKind:"local_repository"},"meter.define":{permission:Tt,targetKind:"local_repository"},"backend.define":{permission:Tt,targetKind:"local_repository"},"business.contract_field.update":{permission:Tt,targetKind:"local_repository"},"rbac.enable":{permission:"business:rbac_update",targetKind:"business"},"rbac.disable":{permission:"business:rbac_update",targetKind:"business"},"rbac.subjects.read":{permission:"rbac:read",targetKind:"business"},"manifest.apply":{permission:Tt,targetKind:"local_repository"},"backend.status.read":{permission:"backend:read",targetKind:"business"},"brand.update":{permission:"brand:update",targetKind:"business"},"business.rollback":{permission:"business:rollback",targetKind:"business"}},PP=new Set(["subscriber_portal","human_decision","runtime_surface","credential_administration"]);function So(t){return t.sideEffect!==void 0?t.sideEffect:/[._](read|list|status|show|top|log|latency|timeseries|export)$/.test(t.key)?"read":"write"}var E2=new Set(["business","organization","self","local_repository"]);function T2(t,e){if(!/^[a-z_]+:[a-z_]+$/.test(e.permission)||e.permission.includes("*"))throw new Error(`Agent operation ${t.key} must declare one exact permission`);if(!E2.has(e.targetKind))throw new Error(`Agent operation ${t.key} has an invalid target kind`);if(e.permission===Tt){if(e.targetKind!=="local_repository")throw new Error(`Local repository operation ${t.key} has an invalid authorization binding`);if(So(t)!=="write")throw new Error(`Local repository operation ${t.key} has a read side effect but uses write-effect authority`);return}let n=ko[e.permission];if(n===void 0)throw new Error(`Agent operation ${t.key} uses an unknown platform permission`);let i=So(t),r=t.sideEffect==="read"&&n.effect==="write";if(i!==n.effect&&!r)throw new Error(`Agent operation ${t.key} has ${i} side effect but uses ${n.effect}-effect authority`);if(!n.allowedTargetKinds.includes(e.targetKind))throw new Error(`Agent operation ${t.key} uses a target kind not allowed by ${e.permission}`)}function R2(t){let e=new Set;for(let n of t){if(e.has(n.key))throw new Error(`Duplicate platform operation key: ${n.key}`);e.add(n.key);let i=n.agentDiscoverableHandoff===!0&&n.agentVisibility==="visible"&&n.authorization===void 0&&n.unavailable?.reason==="subscriber_portal";if(n.agentDiscoverableHandoff===!0&&!i)throw new Error(`Discoverable handoff ${n.key} has an invalid agent visibility binding`);if(n.agentVisibility==="excluded"){let r=Qf[n.key],o=n.unavailable!==void 0&&PP.has(n.unavailable.reason),a=n.unavailable===void 0&&r!==void 0&&r.permission!==Tt&&ko[r.permission].delegation==="browser_only";if(n.authorization!==void 0||!o&&!a)throw new Error(`Excluded operation ${n.key} has an invalid agent visibility binding`);continue}if(n.authorization===void 0){if(i)continue;throw new Error(`Agent operation ${n.key} is missing an authorization binding`)}T2(n,n.authorization)}}var Xl=I2.map(t=>{if(t.unavailable!==void 0&&PP.has(t.unavailable.reason)&&t.agentDiscoverableHandoff!==!0)return{...t,sideEffect:So(t),agentVisibility:"excluded",authorization:void 0};let n=Qf[t.key];return n!==void 0&&n.permission!==Tt&&ko[n.permission].delegation==="browser_only"?{...t,sideEffect:So(t),agentVisibility:"excluded",authorization:void 0}:n===void 0?{...t,sideEffect:So(t),agentVisibility:"visible",authorization:void 0}:{...t,sideEffect:So(t),agentVisibility:"visible",authorization:n}});R2(Xl);var Lde=Xl.filter(t=>t.agentVisibility==="visible");for(let t of Object.keys(Qf))if(!Xl.some(e=>e.key===t))throw new Error(`Authorization binding references unknown operation: ${t}`);function da(t){return Qf[t]}function zP(t,e){return e==="write"&&!w2(t)?`An MCP tool that writes cannot have operationClass "${t}": ${t}-class state is managed as code in the business repo (canonical home: ${S2(t)}). Make the tool read-only, or author the change in the manifest and push instead.`:null}var gn="brand.update",Io="promo_code.update",Eo={kind:"self"},Gt={kind:"authenticated_organization"},Kr=(t="businessId")=>({kind:"path",targetKind:"business",parameter:t}),x2=(t="orgId")=>({kind:"path",targetKind:"organization",parameter:t});function We(t,e,n,i,r){return{method:t,path:e,operationId:n,authorization:{kind:"operation",operationKeys:[i],target:r}}}function w(t,e,n,i,r="businessId"){return We(t,e,n,i,Kr(r))}function Rt(t,e,n,i){return We(t,e,n,i,x2())}var O2=[{method:"POST",path:"/auth/cli/exchange",operationId:"exchangeCliCredential",authorization:{kind:"infrastructure",purpose:"raw_cli_credential_exchange"}},We("GET","/maker-tokens/org","listOrgMakerTokens","org_maker_token.list",Gt),We("GET","/maker-tokens/permission-catalog","getMakerTokenPermissionCatalog","org_maker_token.permission_catalog.read",Gt),We("POST","/maker-tokens/org","createOrgMakerToken","org_maker_token.create",Gt),We("PATCH","/maker-tokens/org/{id}","updateOrgMakerToken","org_maker_token.update",Gt),We("GET","/maker-tokens/org/approvals","listOrgMakerTokenApprovals","org_maker_token.approval_list",Gt),We("POST","/maker-tokens/org/approvals/{approvalId}/approve","approveOrgMakerToken","org_maker_token.approve",Gt),We("POST","/maker-tokens/org/approvals/{approvalId}/deny","denyOrgMakerToken","org_maker_token.deny",Gt),We("POST","/maker-tokens/org/{id}/rotate","rotateOrgMakerToken","org_maker_token.rotate",Gt),We("POST","/maker-tokens/org/{id}/revoke","revokeOrgMakerToken","org_maker_token.revoke",Gt),{method:"GET",path:"/auth/cli/organizations",operationId:"listCliSessionOrganizations",authorization:{kind:"infrastructure",purpose:"cli_device_authorization"}},{method:"POST",path:"/auth/cli/revoke",operationId:"revokeCliSessionCredential",authorization:{kind:"infrastructure",purpose:"cli_device_authorization"}},{method:"POST",path:"/auth/cli/device/start",operationId:"startCliDeviceAuthorization",authorization:{kind:"infrastructure",purpose:"cli_device_authorization"}},{method:"POST",path:"/auth/cli/device/token",operationId:"pollCliDeviceAuthorization",authorization:{kind:"infrastructure",purpose:"cli_device_authorization"}},{method:"POST",path:"/auth/cli/device/ack",operationId:"ackCliDeviceAuthorization",authorization:{kind:"infrastructure",purpose:"cli_device_authorization"}},We("GET","/builder/organizations","listBuilderOrganizations","organization.list",Eo),w("POST","/management/businesses/{businessId}/auth/context-token","createContextToken","auth.context.issue"),We("POST","/builder/organizations","createBuilderOrganization","organization.create",Eo),Rt("GET","/builder/organizations/{orgId}/roles","listBuilderOrganizationRoles","organization.role.list"),Rt("GET","/builder/organizations/{orgId}/roles/{roleKey}","getBuilderOrganizationRole","organization.role.show"),Rt("POST","/builder/organizations/{orgId}/roles","createBuilderOrganizationRole","organization.role.create"),Rt("PATCH","/builder/organizations/{orgId}/roles/{roleKey}","updateBuilderOrganizationRole","organization.role.update"),Rt("DELETE","/builder/organizations/{orgId}/roles/{roleKey}","deleteBuilderOrganizationRole","organization.role.delete"),Rt("GET","/builder/organizations/{orgId}/members","listBuilderOrganizationMembers","organization.member.list"),Rt("GET","/builder/organizations/{orgId}/invitations","listBuilderOrganizationInvitations","organization.invitation.list_sent"),Rt("POST","/builder/organizations/{orgId}/invitations","createBuilderOrganizationInvitation","organization.invitation.create"),We("GET","/builder/invitations","listMyBuilderInvitations","organization.invitation.list",Eo),Rt("DELETE","/builder/organizations/{orgId}/invitations/{invitationId}","revokeBuilderOrganizationInvitation","organization.invitation.revoke"),We("POST","/builder/invitations/{invitationId}/accept","acceptBuilderInvitation","organization.invitation.accept",Eo),Rt("PATCH","/builder/organizations/{orgId}/members/{memberUserId}","updateBuilderOrganizationMember","organization.member.update"),Rt("DELETE","/builder/organizations/{orgId}/members/{memberUserId}","deleteBuilderOrganizationMember","organization.member.remove"),Rt("POST","/builder/organizations/{orgId}/ownership/transfer","transferBuilderOrganizationOwnership","organization.ownership.transfer"),Rt("DELETE","/builder/organizations/{orgId}","deleteBuilderOrganization","organization.delete"),Rt("GET","/builder/organizations/{orgId}/overview","getBuilderOrganizationOverview","organization.overview.read"),Rt("GET","/builder/organizations/{orgId}/bulletin","listBuilderOrgBulletin","organization.bulletin.read"),Rt("GET","/builder/organizations/{orgId}/audit-logs","listBuilderAuditLogs","audit_log.read"),Rt("GET","/builder/organizations/{orgId}/audit-logs/export.csv","exportBuilderAuditLogsCsv","audit_log.export"),w("GET","/builder/organizations/{orgId}/businesses/{businessId}/audit-logs","listBuilderBusinessAuditLogs","audit_log.business.read","businessId"),w("GET","/builder/organizations/{orgId}/businesses/{businessId}/audit-logs/export.csv","exportBuilderBusinessAuditLogsCsv","audit_log.business.export","businessId"),We("GET","/businesses","listBusinesses","business.list",Gt),We("POST","/businesses","createBusiness","business.create",Gt),w("GET","/businesses/{id}","getBusiness","business.read","id"),We("GET","/businesses/{id}/stripe/status","getBusinessStripeStatus","stripe_connection.read",Gt),We("POST","/businesses/{id}/stripe/disconnect","disconnectBusinessStripe","stripe_connection.delete",Gt),w("GET","/businesses/{id}/routes","listBusinessRoutes","business.routes.read","id"),w("GET","/businesses/{id}/contract","getBusinessContract","business.contract.read","id"),w("PUT","/businesses/{id}/icon","uploadBusinessIcon",gn,"id"),w("DELETE","/businesses/{id}/icon","deleteBusinessIcon",gn,"id"),w("PUT","/businesses/{id}/logo","uploadBusinessLogo",gn,"id"),w("DELETE","/businesses/{id}/logo","deleteBusinessLogo",gn,"id"),w("GET","/businesses/{id}/config","getBusinessConfigState","rbac.read","id"),w("GET","/businesses/{id}/config-attempts","listBusinessConfigAttempts","business.config_attempts.read","id"),{method:"PATCH",path:"/businesses/{id}",operationId:"updateBusiness",authorization:{kind:"operation",operationKeys:["business.cors.update","business.preview_env.set","business.docs.enable","business.docs.disable",gn],target:Kr("id"),bodyFieldOperations:{allowedOrigins:"business.cors.update",envBranchPrefix:"business.preview_env.set",previewEnvTrigger:"business.preview_env.set",docsEnabled:"business.docs.enable",displayName:gn,description:gn,iconUrl:gn,logoUrl:gn,keyPrefix:gn,listedOnOrganizationPage:gn}}},{method:"PUT",path:"/businesses/{id}/rbac",operationId:"updateBusinessRbac",authorization:{kind:"operation",operationKeys:["rbac.enable","rbac.disable"],target:Kr("id")}},w("GET","/businesses/{id}/rbac/subjects","listBusinessRbacSubjects","rbac.subjects.read","id"),w("DELETE","/businesses/{id}","deleteBusiness","business.delete","id"),w("POST","/businesses/{id}/publish","publishBusiness","business.publish","id"),w("POST","/businesses/{id}/manifest/compile","compileBusinessManifest","business.compile","id"),w("GET","/businesses/{id}/deployments","listDeployments","business.status","id"),w("GET","/businesses/{id}/environments","listBusinessEnvironments","environment.read","id"),w("POST","/businesses/{id}/environments","createBusinessEnvironment","environment.create","id"),w("DELETE","/businesses/{id}/environments/{envName}","deleteBusinessEnvironment","environment.delete","id"),w("GET","/businesses/{id}/consumers","listBusinessSubscribers","consumer.read","id"),w("POST","/businesses/{id}/consumers/{subscriberId}/block","blockBusinessSubscriber","consumer.block","id"),w("POST","/businesses/{id}/consumers/{subscriberId}/migrate-latest","migrateBusinessSubscriberToLatest","consumer.migrate_latest","id"),w("POST","/businesses/{id}/consumers/{subscriberId}/remove","forceRemoveBusinessSubscriber","consumer.remove","id"),w("POST","/businesses/{id}/consumers/{subscriberId}/members/{userExternalId}/roles","overrideConsumerMemberBusinessRoles","consumer.roles.assign","id"),w("GET","/businesses/{id}/consumers/{subscriberId}/api-keys","listBusinessSubscriberApiKeys","consumer.read","id"),w("POST","/businesses/{id}/consumers/{subscriberId}/api-keys/{keyId}/revoke","revokeBusinessSubscriberApiKey","consumer.block","id"),{method:"PUT",path:"/businesses/{id}/consumers/{subscriberId}/rbac",operationId:"updateConsumerRbacSettings",authorization:{kind:"operation",operationKeys:["consumer.rbac.enable","consumer.rbac.disable"],target:Kr("id")}},w("GET","/businesses/{id}/consumers/{subscriberId}/rbac/roles","listConsumerRbacRoles","consumer.read","id"),w("POST","/businesses/{id}/consumers/{subscriberId}/rbac/roles","createConsumerRbacRole","consumer.role.create","id"),w("PATCH","/businesses/{id}/consumers/{subscriberId}/rbac/roles/{roleKey}","updateConsumerRbacRole","consumer.role.update","id"),w("DELETE","/businesses/{id}/consumers/{subscriberId}/rbac/roles/{roleKey}","deleteConsumerRbacRole","consumer.role.delete","id"),w("POST","/businesses/{id}/consumers/{subscriberId}/change-sets","proposeConsumerChangeSet","change_set.propose","id"),w("GET","/businesses/{id}/consumers/{subscriberId}/change-sets","listConsumerChangeSets","change_set.proposal_list","id"),w("GET","/businesses/{id}/consumers/{subscriberId}/change-sets/{changeSetId}","getConsumerChangeSet","change_set.proposal_read","id"),w("POST","/businesses/{id}/consumers/{subscriberId}/change-sets/{changeSetId}/preview","previewConsumerChangeSet","change_set.preview","id"),w("GET","/businesses/{id}/notification-preferences","getBusinessNotificationPreferences","notification.preferences.read","id"),w("PATCH","/businesses/{id}/notification-preferences","updateBusinessNotificationPreferences","notification.preferences.update","id"),{method:"GET",path:"/businesses/{id}/apply-timeline",operationId:"listApplyTimeline",authorization:{kind:"operation",operationKeys:["apply_timeline.list","apply_timeline.read"],target:Kr("id")}},w("GET","/businesses/{id}/promo-codes","listBusinessPromoCodes","promo_code.read","id"),w("POST","/businesses/{id}/promo-codes","createBusinessPromoCode","promo_code.create","id"),{method:"PATCH",path:"/businesses/{id}/promo-codes/{promoCodeId}",operationId:"updateBusinessPromoCode",authorization:{kind:"operation",operationKeys:[Io,"promo_code.archive","promo_code.reactivate"],target:Kr("id"),bodyFieldOperations:{code:Io,amount:Io,activeFrom:Io,activeUntil:Io,applicablePlanIds:Io,status:Io}}},w("GET","/management/businesses/{businessId}","getManagedBusiness","business.read"),w("DELETE","/management/businesses/{businessId}","deleteManagedBusiness","business.delete"),We("GET","/management/businesses","listManagedBusinesses","business.list",Gt),We("GET","/management/whoami","managementWhoami","auth.context.read",Eo),w("POST","/management/businesses/{businessId}/publish","publishManagedBusiness","business.publish"),w("GET","/management/businesses/{businessId}/publishes/{workflowExecutionId}","getManagedBusinessPublishStatus","business.status"),w("POST","/management/businesses/{businessId}/rollback","rollbackManagedBusiness","business.rollback"),We("GET","/management/businesses/subdomain-availability","checkManagedSubdomainAvailability","business.subdomain_availability.read",Gt),w("GET","/management/businesses/{businessId}/plans","listManagedBusinessPlans","plan.read"),w("GET","/management/businesses/{businessId}/backends","listManagedBusinessBackends","backend.read"),w("POST","/management/businesses/{businessId}/backends","createManagedBusinessBackend","backend.create"),w("PATCH","/management/businesses/{businessId}/backends/{backendId}","bindManagedBusinessBackendOrigin","backend.bind"),w("DELETE","/management/businesses/{businessId}/backends/{backendId}","deleteManagedBusinessBackend","backend.delete"),w("GET","/management/businesses/{businessId}/runtime-tokens","listManagedBusinessRuntimeTokens","runtime_token.read"),w("POST","/management/businesses/{businessId}/runtime-tokens","createManagedBusinessRuntimeToken","runtime_token.mint"),w("POST","/management/businesses/{businessId}/runtime-tokens/{tokenId}/rotate","rotateManagedBusinessRuntimeToken","runtime_token.rotate"),w("DELETE","/management/businesses/{businessId}/runtime-tokens/{tokenId}","revokeManagedBusinessRuntimeToken","runtime_token.revoke"),We("GET","/v1/backends/{backendId}/readiness","getManagedBackendReadiness","backend.status.read",{kind:"indirect_business",resource:"backend",parameter:"backendId"}),w("GET","/management/businesses/{businessId}/usage","getManagedBusinessUsage","usage.read"),w("GET","/management/businesses/{businessId}/usage-limits","listManagedBusinessUsageLimits","usage.read"),w("PUT","/management/businesses/{businessId}/logo","uploadManagedBusinessLogo",gn),w("DELETE","/management/businesses/{businessId}/logo","deleteManagedBusinessLogo",gn),w("PUT","/management/businesses/{businessId}/resources/{resource}/count","reportManagedBusinessResourceCount","resource_count.report"),w("GET","/management/businesses/{businessId}/tax-settings","getManagedBusinessTaxSettings","tax_settings.read"),w("POST","/management/businesses/{businessId}/tax-settings","updateManagedBusinessTaxSettings","tax_settings.update"),w("GET","/management/businesses/{businessId}/explain-denial/{requestId}","explainDenial","denial.read"),w("GET","/management/businesses/{businessId}/dependents","listBusinessDependents","business_dependents.read"),We("POST","/agent/v1/replay","agentReplay","workflow.replay",{kind:"body",targetKind:"business",field:"business_id"}),We("POST","/agent/v1/rollback-to-config","agentRollbackToConfig","workflow.rollback",{kind:"body",targetKind:"business",field:"business_id"}),We("GET","/agent/v1/runtime-context","agentRuntimeContext","auth.context.read",Eo),w("POST","/management/businesses/{businessId}/webhooks","createWebhookEndpoint","webhook.create"),w("GET","/management/businesses/{businessId}/webhooks","listWebhookEndpoints","webhook.read"),w("DELETE","/management/businesses/{businessId}/webhooks/{webhookId}","deleteWebhookEndpoint","webhook.delete"),w("PATCH","/management/businesses/{businessId}/webhooks/{webhookId}","updateWebhookEndpoint","webhook.update"),w("GET","/management/businesses/{businessId}/webhooks/{webhookId}/deliveries","listWebhookDeliveries","webhook.delivery.read"),w("POST","/management/businesses/{businessId}/webhooks/{webhookId}/test","testWebhookEndpoint","webhook.test"),w("POST","/management/businesses/{businessId}/webhooks/{webhookId}/rotate-secret","rotateWebhookEndpointSecret","webhook.rotate_secret"),w("GET","/management/businesses/{businessId}/webhook-event-types","listWebhookEventTypes","webhook.event_type.read"),w("POST","/portal/businesses/{businessId}/environments/{envId}/test/bootstrap-key","bootstrapTestEnvKey","persona.bootstrap"),w("GET","/portal/businesses/{businessId}/environments/{envId}/test/personas","listTestPersonas","persona.read"),w("POST","/portal/businesses/{businessId}/environments/{envId}/test/personas/{personaId}/login","loginTestPersona","persona.login"),w("POST","/portal/businesses/{businessId}/environments/{envId}/test/personas/{personaId}/local-preview-login","loginTestPersonaForLocalPreview","persona.local_preview.issue"),w("POST","/portal/businesses/{businessId}/environments/{envId}/test/personas/{personaId}/local-preview-lease/renew","renewTestPersonaLocalPreviewLease","persona.local_preview.renew"),w("POST","/portal/businesses/{businessId}/environments/{envId}/test/personas/{personaId}/local-preview-lease/revoke","revokeTestPersonaLocalPreviewLease","persona.local_preview.revoke"),w("POST","/portal/businesses/{businessId}/environments/{envId}/test/personas/{personaId}/rotate","rotateTestPersona","persona.rotate"),w("DELETE","/portal/businesses/{businessId}/environments/{envId}/test/personas/{personaId}","deleteTestPersona","persona.delete"),w("GET","/businesses/{businessId}/frontend/status","getBusinessFrontendStatus","frontend.status"),w("GET","/businesses/{businessId}/frontend/releases","listBusinessFrontendReleases","frontend.status"),w("POST","/businesses/{businessId}/frontend/rollback","rollbackBusinessFrontend","frontend.rollback"),w("GET","/businesses/{businessId}/backends","listBusinessBackends","backend.read"),w("POST","/businesses/{businessId}/backends","createBusinessBackend","backend.create"),w("PATCH","/businesses/{businessId}/backends/{backendId}","bindBusinessBackendOrigin","backend.bind"),w("DELETE","/businesses/{businessId}/backends/{backendId}","deleteBusinessBackend","backend.delete"),w("GET","/businesses/{businessId}/runtime-tokens","listBusinessRuntimeTokens","runtime_token.read"),w("POST","/businesses/{businessId}/runtime-tokens","createBusinessRuntimeToken","runtime_token.mint"),w("POST","/businesses/{businessId}/runtime-tokens/{tokenId}/rotate","rotateBusinessRuntimeToken","runtime_token.rotate"),w("DELETE","/businesses/{businessId}/runtime-tokens/{tokenId}","revokeBusinessRuntimeToken","runtime_token.revoke"),w("GET","/businesses/{id}/automation-rules","listAutomationRules","automation_rule.read","id"),w("POST","/businesses/{id}/automation-rules","createAutomationRule","automation_rule.create","id"),w("GET","/businesses/{id}/automation-rules/{ruleId}","getAutomationRule","automation_rule.read","id"),w("PATCH","/businesses/{id}/automation-rules/{ruleId}","updateAutomationRule","automation_rule.update","id"),w("DELETE","/businesses/{id}/automation-rules/{ruleId}","deleteAutomationRule","automation_rule.delete","id"),w("GET","/businesses/{id}/agents","listAgents","agents.list","id"),w("GET","/businesses/{id}/agents/usage","getAgentUsage","agents.list","id"),w("GET","/businesses/{id}/agents/{role}","getAgentStatus","agents.status","id"),{method:"PUT",path:"/businesses/{id}/agents/{role}",operationId:"configureAgent",authorization:{kind:"operation",operationKeys:["agents.enable","agents.disable"],target:Kr("id"),bodyFieldOperations:{enabled:"agents.enable"}}},w("GET","/businesses/{id}/agents/{role}/runs/{runId}","getAgentRunDetail","agents.runs.show","id"),w("GET","/businesses/{id}/bulletin","listBulletinPosts","bulletin.list","id"),w("GET","/businesses/{id}/bulletin/{postId}","getBulletinPost","bulletin.read","id"),{method:"PATCH",path:"/businesses/{id}/bulletin/{postId}",operationId:"setBulletinPostStatus",authorization:{kind:"operation",operationKeys:["bulletin.ack","bulletin.resolve"],target:Kr("id"),bodyFieldOperations:{status:"bulletin.ack"}}},w("GET","/businesses/{businessId}/agreements","listEconomicAgreements","agreement.read"),w("GET","/businesses/{businessId}/agreements/{agreementId}","getEconomicAgreement","agreement.read"),w("GET","/businesses/{businessId}/subjects/{subjectId}/pins","getSubjectPins","agreement.read"),w("POST","/businesses/{businessId}/agreements/preview","previewEconomicAgreement","agreement.create"),w("POST","/businesses/{businessId}/agreements","createEconomicAgreement","agreement.create"),w("POST","/businesses/{businessId}/agreements/{agreementId}/amendments/preview","previewEconomicAgreementAmendment","agreement.amend"),w("POST","/businesses/{businessId}/agreements/{agreementId}/amendments","amendEconomicAgreement","agreement.amend"),{method:"POST",path:"/businesses/{businessId}/analytics/query",operationId:"queryBusinessAnalytics",authorization:{kind:"operation",operationKeys:["analytics.timeseries","analytics.latency","analytics.top","analytics.log"],target:Kr()}},w("GET","/businesses/{businessId}/auth-provider-connections","listAuthProviderConnections","auth_provider_connection.read"),w("GET","/businesses/{businessId}/auth-provider-connections/{connectionId}","getAuthProviderConnection","auth_provider_connection.read"),w("POST","/businesses/{businessId}/auth-provider-connections","createAuthProviderConnection","auth_provider_connection.create"),w("PATCH","/businesses/{businessId}/auth-provider-connections/{connectionId}","updateAuthProviderConnection","auth_provider_connection.update"),w("DELETE","/businesses/{businessId}/auth-provider-connections/{connectionId}","deleteAuthProviderConnection","auth_provider_connection.delete"),w("GET","/businesses/{businessId}/variables","listBusinessVariables","business_variable.read"),w("POST","/businesses/{businessId}/variables/{name}","createBusinessVariable","business_variable.create"),w("POST","/businesses/{businessId}/variables/{name}/rotate","rotateBusinessVariable","business_variable.rotate"),w("DELETE","/businesses/{businessId}/variables/{name}","deleteBusinessVariable","business_variable.delete"),w("POST","/businesses/{businessId}/variables/{name}/revoke","revokeBusinessVariable","business_variable.revoke"),w("GET","/businesses/{businessId}/variables/operations/{operationId}","getBusinessVariableOperation","business_variable.operation.read"),We("GET","/knowledge/index","getKnowledgeIndex","knowledge.guide.read",Eo),w("GET","/businesses/{businessId}/knowledge/index","getBusinessKnowledgeIndex","knowledge.business.read")];function A2(t){return t.kind==="path"||t.kind==="body"||t.kind==="query"?t.targetKind:t.kind==="authenticated_organization"?"organization":t.kind==="indirect_business"?"business":"self"}function $2(t,e){if(t.operationKeys.length===0)throw new Error(`${e} must bind at least one operation`);for(let n of t.operationKeys){let i=da(n);if(i===void 0)throw new Error(`Unknown agent operation ${n} on ${e}`);let r=A2(t.target);if(i.targetKind!==r)throw new Error(`${e} target ${r} does not match ${n} target ${i.targetKind}`)}}function C2(t){let e=new Set,n=new Set;for(let i of t){let r=`${i.method} ${i.path}`;if(e.has(r))throw new Error(`Duplicate agent HTTP route: ${r}`);if(e.add(r),n.has(i.operationId))throw new Error(`Duplicate agent HTTP operation id: ${i.operationId}`);n.add(i.operationId),i.authorization.kind!=="infrastructure"&&$2(i.authorization,r)}}C2(O2);var bt={VALIDATION_ERROR:"VALIDATION_ERROR",CONFLICT:"CONFLICT",NOT_FOUND:"NOT_FOUND",NOT_IMPLEMENTED:"NOT_IMPLEMENTED",NOT_CONFIGURED:"NOT_CONFIGURED",RELEASE_PENDING_ACCEPTANCE:"RELEASE_PENDING_ACCEPTANCE",ROLLBACK_IN_FLIGHT:"ROLLBACK_IN_FLIGHT",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",INVALID_DRY_RUN:"INVALID_DRY_RUN",DRY_RUN_NOT_SUPPORTED:"DRY_RUN_NOT_SUPPORTED",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",TEST_PERSONA_ENVIRONMENT_NOT_READY:"TEST_PERSONA_ENVIRONMENT_NOT_READY",PERSONA_AUTH_DISABLED_IN_PROD:"PERSONA_AUTH_DISABLED_IN_PROD",LOCAL_PREVIEW_LEASE_INVALID:"LOCAL_PREVIEW_LEASE_INVALID",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",ORGANIZATION_HAS_PAID_SUBSCRIBERS:"ORGANIZATION_HAS_PAID_SUBSCRIBERS",BUSINESS_HAS_PAID_SUBSCRIBERS:"BUSINESS_HAS_PAID_SUBSCRIBERS",ORG_HAS_OUTSTANDING_BALANCE:"ORG_HAS_OUTSTANDING_BALANCE",PERSONAL_ORG_NOT_DELETABLE:"PERSONAL_ORG_NOT_DELETABLE",PERSONAL_OWNER_IMMUTABLE:"PERSONAL_OWNER_IMMUTABLE",PERSONAL_OWNER_AUTHORITY_NOT_DELEGABLE:"PERSONAL_OWNER_AUTHORITY_NOT_DELEGABLE",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",INVITATION_PENDING:"INVITATION_PENDING",ROLE_NOT_FOUND:"ROLE_NOT_FOUND",ROLE_KEY_CONFLICT:"ROLE_KEY_CONFLICT",ROLE_IN_USE:"ROLE_IN_USE",BUILT_IN_ROLE_NOT_DELETABLE:"BUILT_IN_ROLE_NOT_DELETABLE",ROLE_VERSION_CONFLICT:"ROLE_VERSION_CONFLICT",OWNER_ROLE_IMMUTABLE:"OWNER_ROLE_IMMUTABLE",ACCOUNT_ROLE_PROTECTED:"ACCOUNT_ROLE_PROTECTED",INVALID_PLATFORM_PERMISSION:"INVALID_PLATFORM_PERMISSION",INVALID_ROLE_KEY:"INVALID_ROLE_KEY",RBAC_REQUIRES_TEAM_ORG:"RBAC_REQUIRES_TEAM_ORG",RBAC_NOT_ENABLED_BY_PRODUCT:"RBAC_NOT_ENABLED_BY_PRODUCT",UNKNOWN_PERMISSION:"UNKNOWN_PERMISSION",RESERVED_PERMISSION_SUBJECT:"RESERVED_PERMISSION_SUBJECT",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",PLAN_SELECTION_STALE:"PLAN_SELECTION_STALE",PLAN_NOT_SELF_SERVE:"PLAN_NOT_SELF_SERVE",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",SUBSCRIPTION_NOT_CANCELLABLE:"SUBSCRIPTION_NOT_CANCELLABLE",INVALID_STATE:"INVALID_STATE",DUPLICATE_TRANSITION:"DUPLICATE_TRANSITION",ARCHIVED_TARGET:"ARCHIVED_TARGET",FREE_TO_PAID_VIA_CHECKOUT_ONLY:"FREE_TO_PAID_VIA_CHECKOUT_ONLY",PAID_TO_PROVIDERLESS_REQUIRES_PERIOD_END:"PAID_TO_PROVIDERLESS_REQUIRES_PERIOD_END",RESOURCE_LIMIT_EXCEEDED:"RESOURCE_LIMIT_EXCEEDED",RESOURCE_LIMIT_CHECK_UNAVAILABLE:"RESOURCE_LIMIT_CHECK_UNAVAILABLE",STRIPE_NOT_CONFIGURED:"STRIPE_NOT_CONFIGURED",STRIPE_NOT_CONNECTED:"STRIPE_NOT_CONNECTED",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",BACKEND_PROVISIONING_OUTCOME_UNKNOWN:"BACKEND_PROVISIONING_OUTCOME_UNKNOWN",SELF_APPROVAL_FORBIDDEN:"SELF_APPROVAL_FORBIDDEN",HUMAN_APPROVAL_REQUIRED:"HUMAN_APPROVAL_REQUIRED",GOVERNED_BY_CHANGE_SET:"GOVERNED_BY_CHANGE_SET"};var Kde={missing_token:bt.UNAUTHORIZED,invalid_token:bt.UNAUTHORIZED,context_unverified:bt.UNAUTHORIZED,missing_signature:bt.UNAUTHORIZED,malformed_signature:bt.UNAUTHORIZED,unknown_key_id:bt.UNAUTHORIZED,bad_signature:bt.UNAUTHORIZED,expired_signature:bt.UNAUTHORIZED,clock_skew:bt.UNAUTHORIZED,replayed_nonce:bt.UNAUTHORIZED,body_hash_mismatch:bt.UNAUTHORIZED,route_mismatch:bt.UNAUTHORIZED,environment_mismatch:bt.UNAUTHORIZED,jwks_unavailable:bt.SERVICE_UNAVAILABLE,body_too_large:bt.VALIDATION_ERROR,member_subject_required:bt.FORBIDDEN,service_subject_required:bt.FORBIDDEN,surface_not_allowed:bt.FORBIDDEN};var Fde=Object.values(MC);var Ee={BATCHER_ENUM:"batcher-enum",RUNTIME_INLINE:"runtime-inline",CONSTRAINT:"constraint",GATEWAY_ERROR:"gateway-error"};var DP={limit_allocator_unavailable:{statuses:[503],source:Ee.BATCHER_ENUM,retryAfter:!0,verifiedAt:["engine/enforcement/runtime.ts:471"]},limit_exceeded:{statuses:[402],source:Ee.BATCHER_ENUM,retryAfter:!0,verifiedAt:["engine/enforcement/batcher.ts:326","engine/enforcement/constraints/quota.ts:69"]},rate_limited:{statuses:[429],source:Ee.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:Ee.BATCHER_ENUM,retryAfter:!0,verifiedAt:["engine/enforcement/batcher.ts"]},credit_state_unavailable:{statuses:[503],source:Ee.BATCHER_ENUM,retryAfter:!0,verifiedAt:["engine/enforcement/batcher.ts"]},enforcement_denied:{statuses:[402],source:Ee.BATCHER_ENUM,retryAfter:!0,verifiedAt:["engine/enforcement/batcher.ts:335"]},invalid_entitlement_shape:{statuses:[503],source:Ee.RUNTIME_INLINE,retryAfter:!0,verifiedAt:["engine/enforcement/runtime.ts:144"]},unsupported_constraint_schema:{statuses:[503],source:Ee.RUNTIME_INLINE,retryAfter:!1,verifiedAt:["engine/enforcement/runtime.ts:154"]},enforcement_error:{statuses:[500],source:Ee.RUNTIME_INLINE,retryAfter:!1,verifiedAt:["engine/enforcement/runtime.ts:342"]},enforcement_dependency_unavailable:{statuses:[503],source:Ee.RUNTIME_INLINE,retryAfter:!1,verifiedAt:["engine/enforcement/runtime.ts:427"]},admission_descriptor_unavailable:{statuses:[503],source:Ee.CONSTRAINT,retryAfter:!0,verifiedAt:["engine/pipeline/commercial-admission.ts:196"]},admission_descriptor_no_admissible_tuple:{statuses:[503],source:Ee.CONSTRAINT,retryAfter:!0,verifiedAt:["engine/pipeline/commercial-admission.ts:257"]},invalid_admission_knob:{statuses:[422],source:Ee.CONSTRAINT,retryAfter:!1,verifiedAt:["engine/pipeline/commercial-admission.ts:392"]},admission_bound_exceeded:{statuses:[422],source:Ee.CONSTRAINT,retryAfter:!1,verifiedAt:["engine/pipeline/commercial-admission.ts:382"]},commercial_release_unprovable:{statuses:[503],source:Ee.CONSTRAINT,retryAfter:!0,verifiedAt:["engine/pipeline/commercial-admission.ts:165","engine/enforcement/batcher.ts:182"]},concurrency_limit_exceeded:{statuses:[429],source:Ee.CONSTRAINT,retryAfter:!0,verifiedAt:["engine/enforcement/constraints/concurrency.ts"]},concurrency_context_unavailable:{statuses:[503],source:Ee.CONSTRAINT,retryAfter:!0,verifiedAt:["engine/enforcement/constraints/concurrency.ts:291"]},concurrency_coordinator_unavailable:{statuses:[503],source:Ee.CONSTRAINT,retryAfter:!0,verifiedAt:["engine/enforcement/constraints/concurrency.ts:305"]},key_expired:{statuses:[401],source:Ee.CONSTRAINT,retryAfter:!1,verifiedAt:["engine/enforcement/constraints/credential-validity.ts:33"]},credential_revoked:{statuses:[401],source:Ee.RUNTIME_INLINE,retryAfter:!1,verifiedAt:["engine/pipeline/resolve-tenant.ts"]},credential_rotated:{statuses:[401],source:Ee.RUNTIME_INLINE,retryAfter:!1,verifiedAt:["engine/pipeline/resolve-tenant.ts"]},credential_env_reset:{statuses:[401],source:Ee.RUNTIME_INLINE,retryAfter:!1,verifiedAt:["engine/pipeline/resolve-tenant.ts"]},permission_denied:{statuses:[403],source:Ee.CONSTRAINT,retryAfter:!1,verifiedAt:["engine/enforcement/constraints/permission.ts:63"]},permission_unresolved:{statuses:[403],source:Ee.CONSTRAINT,retryAfter:!1,verifiedAt:["engine/enforcement/constraints/permission.ts"]},route_not_enabled:{statuses:[403],source:Ee.RUNTIME_INLINE,retryAfter:!1,verifiedAt:["engine/pipeline/pre-vec-costs.ts"]},geo_context_unavailable:{statuses:[503],source:Ee.CONSTRAINT,retryAfter:!0,verifiedAt:["engine/enforcement/constraints/geo-restriction.ts:44"]},geo_blocked:{statuses:[403],source:Ee.CONSTRAINT,retryAfter:!1,verifiedAt:["engine/enforcement/constraints/geo-restriction.ts:51"]},geo_not_allowed:{statuses:[403],source:Ee.CONSTRAINT,retryAfter:!1,verifiedAt:["engine/enforcement/constraints/geo-restriction.ts:58"]},resource_count_limit_exceeded:{statuses:[402],source:Ee.GATEWAY_ERROR,retryAfter:!1,verifiedAt:["apps/core:routes/internal/gateway-resources.ts:144"]},post_stream_overspend:{statuses:[402],source:Ee.CONSTRAINT,retryAfter:!0,verifiedAt:["engine/enforcement/constraints/lifecycle-block.ts"]},request_too_large:{statuses:[413],source:Ee.CONSTRAINT,retryAfter:!1,verifiedAt:["engine/enforcement/constraints/capacity.ts"]},resolver_rate_limited:{statuses:[503],source:Ee.GATEWAY_ERROR,retryAfter:!0,verifiedAt:["engine/errors.ts:55"]},resolver_unavailable:{statuses:[503],source:Ee.GATEWAY_ERROR,retryAfter:!0,verifiedAt:["engine/errors.ts:73"]},credential_resolver_miss_rate_limited:{statuses:[429],source:Ee.GATEWAY_ERROR,retryAfter:!0,verifiedAt:["engine/errors.ts:89"]},credential_authority_pending:{statuses:[503],source:Ee.GATEWAY_ERROR,retryAfter:!0,verifiedAt:["engine/errors.ts:118","apps/core:routes/internal/edge-resolver.ts"]},provider_throttled:{statuses:[503],source:Ee.GATEWAY_ERROR,retryAfter:!0,verifiedAt:["engine/pipeline/provider-adapter.ts"]}},N2=Object.keys(DP);var P2=new Set([429,503]),qde=new Set(N2.filter(t=>DP[t].statuses.every(e=>P2.has(e))));var z2=["quota","rate","concurrency","capacity","spend","adaptive"],Gde=new Set(z2);var D2=[402,403,413,429],Wde=new Set(D2);var L2=["agents.disable","agents.enable","auth_provider_connection.delete","auth_provider_connection.update","automation_rule.delete","automation_rule.update","backend.bind","backend.delete","brand.update","bulletin.ack","bulletin.resolve","business.delete","business.docs.disable","business.docs.enable","business.cors.update","business.preview_env.set","change_set.preview","consumer.block","consumer.rbac.disable","consumer.rbac.enable","consumer.remove","consumer.role.delete","consumer.role.update","consumer.roles.assign","environment.create","environment.delete","frontend.rollback","notification.preferences.update","org_maker_token.deny","org_maker_token.revoke","organization.delete","organization.invitation.accept","organization.invitation.revoke","organization.member.remove","organization.member.update","organization.role.delete","organization.role.update","persona.delete","persona.local_preview.revoke","promo_code.archive","promo_code.reactivate","rbac.disable","rbac.enable","resource_count.report","runtime_token.revoke","stripe_connection.delete","tax_settings.update","webhook.delete","webhook.update"],U2=["persona.login","persona.local_preview.issue","persona.local_preview.renew","webhook.listen","auth.context.issue","auth_provider_connection.create","change_set.propose","webhook.create","webhook.test","webhook.trigger","webhook.rotate_secret","promo_code.create","promo_code.update","consumer.migrate_latest","business_variable.create","business_variable.rotate","business_variable.revoke","business_variable.delete","runtime_token.mint","runtime_token.rotate","backend.create","persona.bootstrap","persona.rotate","agreement.create","agreement.amend","organization.create","organization.role.create","consumer.role.create","organization.invitation.create","organization.ownership.transfer","business.create","business.publish","business.rollback","org_maker_token.create","org_maker_token.update","org_maker_token.approve","org_maker_token.rotate","automation_rule.create"],ime=new Set(U2),ome=new Set(L2),sme=new Map(Xl.map(t=>[t.key,t]));var eg=s.string().min(1).max(128).regex(/^[A-Za-z0-9._:-]+$/),LP=s.object({businessId:eg,environmentId:eg.nullable(),secretName:s.string().min(1).max(128).regex(/^(?!FS_PUBLIC_)[A-Z][A-Z0-9_]*$/)}).strict();var aS=s.object({scope:LP,mutationId:eg,expectedGeneration:s.number().int().positive().nullable()}),M2=aS.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(),j2=aS.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(),B2=aS.extend({mutation:s.enum(["revoke","delete"]),generation:s.number().int().positive(),payloadHash:s.string().regex(/^[a-f0-9]{64}$/)}).strict(),K2=s.discriminatedUnion("mutation",[M2,j2,B2]),hme=s.object({keyId:eg,signature:s.string().regex(/^[a-f0-9]{64}$/),command:K2}).strict(),bme=s.discriminatedUnion("available",[s.object({available:s.literal(!0),scope:LP,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 cS=1,UP=s.enum(["QUEUED","BUILDING","SUCCEEDED","FAILED","CANCELLED","SUPERSEDED"]),MP=s.enum(["frontend","manifest"]),lS=s.enum(["push","release"]),jP=s.string().regex(/^(?:0|[1-9][0-9]*)$/u).refine(t=>BigInt(t)<=9223372036854775807n,"generation exceeds PostgreSQL bigint"),F2=s.enum(["SUCCEEDED","FAILED","CANCELLED","SUPERSEDED"]),BP=1e6;function V2(t){try{return new TextEncoder().encode(JSON.stringify({result:t})).byteLength<=BP}catch{return!1}}var KP=s.object({id:s.string().min(1),requestId:s.string().nullable(),status:UP,kind:MP,orgId:s.string().nullable(),businessId:s.string().nullable(),repo:s.string().nullable(),repoProviderId:s.string().nullable(),ref:s.string().nullable(),createdAt:s.string(),updatedAt:s.string(),activationIntentId:s.string().uuid().nullable(),activationEpoch:s.number().int().positive().nullable()}).strict(),yme=s.object({build:KP}).strict(),kme=s.object({builds:s.array(KP)}).strict(),wme=s.object({cancelled:s.boolean(),status:UP}).strict(),Sme=s.object({businessId:s.string().min(1),repoProviderId:s.string().min(1),generation:jP,terminal:s.boolean().optional()}).strict(),Ime=s.object({revoked:s.literal(!0),replay:s.boolean(),cancelledBuilds:s.number().int().nonnegative(),destroyedMachines:s.number().int().nonnegative()}).strict(),Eme=s.object({businessId:s.string().min(1),repoProviderId:s.string().min(1),generation:jP}).strict(),Tme=s.object({restored:s.literal(!0),replay:s.boolean()}).strict(),Rme=s.object({businessId:s.string().min(1),deleted:s.number().int().nonnegative(),configured:s.boolean()}).strict(),xme=s.object({acknowledged:s.literal(!0),replay:s.boolean()}).strict(),Ome=s.object({businessId:s.string().uuid(),environmentId:s.string().uuid().nullable(),activationIntentId:s.string().uuid(),activationEpoch:s.number().int().positive()}).strict(),Ame=s.object({tombstoned:s.literal(!0),replay:s.boolean()}).strict(),$me=s.object({requestId:s.string().regex(/^manifest_[a-f0-9]{64}$/),supersessionOrder:s.number().int().positive(),repo:s.string().min(1),repoProviderId:s.string().min(1),ref:s.string().min(1),buildCmd:s.string().min(1).nullish(),kind:s.literal("manifest"),supersede:s.boolean().nullish(),supersessionLane:lS.nullish(),orgId:s.string().min(1).nullish(),businessId:s.string().min(1),environmentId:s.string().min(1).nullish()}).strict(),q2=s.object({id:s.string().min(1),buildId:s.string().min(1),requestId:s.string().regex(/^manifest_[a-f0-9]{64}$/),businessId:s.string().min(1),environmentId:s.string().nullable(),repo:s.string().min(1),repoProviderId:s.string().min(1),ref:s.string().min(1),irHash:s.string().min(1).nullable(),status:s.literal("PENDING"),createdAt:s.string(),updatedAt:s.string()}).strict(),Cme=s.object({notifications:s.array(q2)}).strict(),Nme=s.object({protocolVersion:s.literal(cS),notificationId:s.string().min(1),requestId:s.string().regex(/^manifest_[a-f0-9]{64}$/),buildId:s.string().min(1),intentId:s.string().min(1),intentStatus:s.enum(["COMPLETED","FAILED","STALE"])}).strict(),Pme=s.object({protocolVersion:s.literal(cS),notificationId:s.string().min(1),requestId:s.string().regex(/^manifest_[a-f0-9]{64}$/),buildId:s.string().min(1)}).strict(),H2=s.object({notificationId:s.string().min(1),buildId:s.string().min(1),requestId:s.string().regex(/^manifest_[a-f0-9]{64}$/),businessId:s.string().min(1),environmentId:s.string().nullable(),repo:s.string().min(1),repoProviderId:s.string().min(1),ref:s.string().min(1),outcome:F2,irJson:s.json().nullable(),irHash:s.string().min(1).nullable(),sdkVersion:s.string().min(1).nullable(),diagnosticsJson:s.json().nullable(),error:s.string().nullable()}).strict().superRefine((t,e)=>{t.outcome==="SUCCEEDED"&&(t.irJson===null||!t.irHash||!t.sdkVersion)&&e.addIssue({code:s.ZodIssueCode.custom,message:"a successful manifest result requires irJson, irHash, and sdkVersion"}),V2(t)||e.addIssue({code:s.ZodIssueCode.custom,message:`manifest result exceeds ${BP} byte transport limit`})}),zme=s.object({result:H2}).strict(),Dme=s.object({}).strict(),Lme=s.object({accepted:s.literal(!0),draining:s.boolean()}).strict(),Ume=s.object({buildId:s.string().min(1),businessId:s.string().min(1),environmentId:s.string().min(1).nullish(),repo:s.string().min(1),ref:s.string().min(1),outcome:s.enum(["succeeded","failed","superseded","cancelled"]),kind:MP,errorSummary:s.string().max(2e3).nullable().optional()}).strict(),Mme=s.object({reported:s.boolean()}).strict(),FP=s.string().regex(/^[A-Z][A-Z0-9_]{0,127}$/),G2=s.array(FP.refine(t=>!t.startsWith("FS_PUBLIC_"),"build secret names must not use the FS_PUBLIC_ prefix")).max(100).default([]),Z2=s.array(FP.refine(t=>t.startsWith("FS_PUBLIC_"),"public variable names must use the FS_PUBLIC_ prefix")).max(100).default([]),W2={repo:s.string().min(1),repoProviderId:s.string().min(1),ref:s.string().min(1),buildCmd:s.string().min(1).nullish(),kind:s.literal("frontend"),supersede:s.boolean().nullish(),supersessionLane:lS.nullish(),orgId:s.string().min(1).nullish(),businessId:s.string().min(1),environmentId:s.string().min(1).nullish(),frontendBuildSecretNames:G2.optional(),frontendPublicVarNames:Z2.optional()},jme=s.object({...W2,activationIntentId:s.string().uuid(),activationEpoch:s.number().int().positive(),supersedesActivationIntentId:s.string().uuid().nullish()}).strict().superRefine((t,e)=>{let n=new Set(t.frontendBuildSecretNames??[]);for(let[i,r]of(t.frontendPublicVarNames??[]).entries())n.has(r)&&e.addIssue({code:s.ZodIssueCode.custom,path:["frontendPublicVarNames",i],message:"a variable name cannot appear in both build buckets"})});var J2=s.enum(["SUCCEEDED","FAILED","CANCELLED","SUPERSEDED"]),Y2=s.object({id:s.string().min(1),buildId:s.string().min(1),businessId:s.string().min(1),environmentId:s.string().nullable(),repo:s.string().min(1),repoProviderId:s.string().min(1),ref:s.string().min(1),activationIntentId:s.string().uuid(),activationEpoch:s.number().int().positive(),manifestHash:s.string().min(1).nullable(),outcome:J2,supersessionLane:lS.nullable(),status:s.literal("PENDING"),createdAt:s.string(),updatedAt:s.string()}).strict().superRefine((t,e)=>{t.outcome==="SUCCEEDED"&&!t.manifestHash&&e.addIssue({code:s.ZodIssueCode.custom,path:["manifestHash"],message:"a successful frontend notification requires manifestHash"})}),Bme=s.object({notifications:s.array(Y2)}).strict(),Kme=s.object({protocolVersion:s.literal(cS),notificationId:s.string().min(1),buildId:s.string().min(1),activationIntentId:s.string().uuid(),activationEpoch:s.number().int().positive(),intentStatus:s.enum(["COMPLETED","FAILED","STALE"])}).strict(),Fme=s.object({}).strict(),Vme=s.object({accepted:s.literal(!0),draining:s.boolean()}).strict();var uS=(1n<<63n)-1n,ma="MONETARY_AMOUNT_OUT_OF_DOMAIN",X2="monetary amount exceeds the non-negative signed-int64 nanodollar domain";var Fr=s.string().regex(/^(0|[1-9][0-9]*)$/).max(19).superRefine((t,e)=>{/^(0|[1-9][0-9]*)$/.test(t)&&BigInt(t)>uS&&e.addIssue({code:s.ZodIssueCode.custom,message:X2,params:{code:ma}})});var Q2=s.discriminatedUnion("mode",[s.object({mode:s.literal("current"),pricingPolicyId:ee}).strict(),s.object({mode:s.literal("current_with_contract_terms"),pricingPolicyId:ee,contractPricingVersionId:ee}).strict(),s.object({mode:s.literal("fixed_version"),pricingPolicyId:ee,pricingPolicyVersionId:ee}).strict()]),VP=["adopt_at_current_rate","exclude_until_renewal","require_amendment"],eW=s.enum(VP),tW=s.enum(VP),Xme=s.object({maxPercentDiscount:ql.optional(),minFloorNanos:Fr.optional(),maxCapNanos:Fr.optional(),requireFloorWithDiscount:s.boolean().optional()}).strict(),nW=s.object({percentDiscount:ql.optional(),floorNanos:Fr.optional(),capNanos:Fr.optional(),selectorScope:s.array(Hf).min(1)}).strict().superRefine((t,e)=>{t.percentDiscount!==void 0&&/^[1-9][0-9]*$/.test(t.percentDiscount.num)&&/^[1-9][0-9]*$/.test(t.percentDiscount.den)&&BigInt(t.percentDiscount.num)>BigInt(t.percentDiscount.den)&&G(e,"percent discount must be at most one",["percentDiscount"]),t.floorNanos!==void 0&&t.capNanos!==void 0&&/^(0|[1-9][0-9]*)$/.test(t.floorNanos)&&/^(0|[1-9][0-9]*)$/.test(t.capNanos)&&BigInt(t.floorNanos)>BigInt(t.capNanos)&&G(e,"floorNanos must not exceed capNanos",["floorNanos"])}),rW="AGREEMENT_FIXED_VERSION_POLICY_REQUIRED",Qme=s.object({id:ee,businessId:ee,subjectId:ee,usagePricingBinding:Q2,newMeterPolicy:eW,newMeasurePolicy:tW,effectiveAt:Ti,expiresAt:Ti.optional()}).strict().superRefine((t,e)=>{t.expiresAt!==void 0&&Date.parse(t.expiresAt)<=Date.parse(t.effectiveAt)&&G(e,"expiresAt must be after effectiveAt",["expiresAt"]),t.usagePricingBinding.mode==="fixed_version"&&(t.newMeterPolicy!=="require_amendment"||t.newMeasurePolicy!=="require_amendment")&&G(e,"fixed_version agreements must declare require_amendment for new meters and measures",["usagePricingBinding"],rW)}),epe=s.object({id:ee,economicAgreementId:ee,version:s.number().int().positive(),terms:nW,effectiveAt:Ti}).strict().readonly(),iW=s.object({selector:Hf,catalogItems:s.array(qf).min(1)}).strict().superRefine((t,e)=>{let n=t.catalogItems.map(i=>`${i.provider}/${i.model}/${i.modality??""}`);new Set(n).size!==n.length&&G(e,"catalogItems must be unique",["catalogItems"])}),tpe=s.object({id:ee,businessId:ee,environmentScope:Ei,contextHash:ht,pricingPolicyVersionIds:s.array(ee).min(1),contractPricingVersionId:ee.optional(),selectorMatchSets:s.array(iW),measurementRuleIds:s.array(ce).min(1),createdAt:Ti}).strict().superRefine((t,e)=>{ut(t.pricingPolicyVersionIds)||G(e,"pricingPolicyVersionIds must be sorted and unique",["pricingPolicyVersionIds"]),ut(t.measurementRuleIds)||G(e,"measurementRuleIds must be sorted and unique",["measurementRuleIds"])}).readonly();var ope=Object.freeze({maxPercentDiscount:{num:"1",den:"1"},requireFloorWithDiscount:!1});var oW="ADMISSION_DESCRIPTOR_COMPLEXITY_LIMIT_EXCEEDED",sW="PREPAID_POST_STREAM_SETTLEMENT_MAX_REQUIRED";var qP="ADMISSION_CATEGORY_DUPLICATE",HP="ADMISSION_NUMERIC_FORMAT_INVALID";var aW={categories:32,conditionalDimensions:8,conditionalRows:256,expandedCoefficients:8192,canonicalBytes:262144,evaluationMultiplyAdds:8192,requiresClamp:32},cW=s.enum(["exact","request_declared","route_cap"]),Ql=s.unknown().transform((t,e)=>{let n=Fr.safeParse(t);if(n.success)return n.data;let i=n.error.issues.some(o=>o.code==="custom"&&o.params?.code===ma),r=i?ma:HP;return G(e,i?`${ma}: use a non-negative signed-int64 nanodollar amount`:`${HP}: use a canonical non-negative decimal integer derived exactly from the rational rate`,[],r),s.NEVER}),lW=s.object({measurementKey:ce,maxNanosPerUnit:Ql,boundSource:cW}).strict();function uW(t){for(let e=1;e<t.length;e+=1)if(t[e-1]>=t[e])return!1;return!0}var dW=s.object({when:s.array(s.tuple([ce,ce])).min(1),categoryRateOverrides:s.array(s.tuple([s.number().int().nonnegative(),Ql])),perOpFloorNanos:Ql.optional()}).strict().superRefine((t,e)=>{ut(t.when.map(([n])=>n))||G(e,"when keys must be sorted and unique",["when"]),uW(t.categoryRateOverrides.map(([n])=>n))||G(e,"override indices must be sorted and unique",["categoryRateOverrides"])}),mW=s.object({measurementKey:ce,chunkUnits:s.string().regex(/^[1-9][0-9]*$/),maximumUnits:s.string().regex(/^[1-9][0-9]*$/)}).strict().superRefine((t,e)=>{BigInt(t.chunkUnits)>BigInt(t.maximumUnits)&&G(e,"ADMISSION_CHUNK_POLICY_INVALID: chunkUnits exceeds the cumulative maximum",["chunkUnits"])}),GP=s.object({categories:s.array(lW),perOpFloorNanos:Ql,requiresClamp:s.array(ce),dimensionConditional:s.array(dW).optional(),chunkPolicy:mW.optional()}).strict().superRefine((t,e)=>{let n=aW,i=[];t.categories.length>n.categories&&i.push(["categories"]),t.requiresClamp.length>n.requiresClamp&&i.push(["requiresClamp"]);let r=t.categories.map(u=>u.measurementKey);t.chunkPolicy!==void 0&&!r.includes(t.chunkPolicy.measurementKey)&&G(e,"ADMISSION_CHUNK_POLICY_INVALID: chunk policy names a category the descriptor lacks",["chunkPolicy","measurementKey"]),new Set(r).size!==r.length?G(e,`${qP}: give each admission category a unique measurementKey`,["categories"],qP):ut(r)||G(e,"category measurement keys must be sorted",["categories"]),ut(t.requiresClamp)||G(e,"clamp ids must be sorted and unique",["requiresClamp"]);let o=t.dimensionConditional;if(o!==void 0){o.length>n.conditionalRows&&i.push(["dimensionConditional"]);let u=o.map(f=>Oi(f.when));ut(u)||G(e,"conditional tuples must be sorted and unique",["dimensionConditional"]),new Set(o.flatMap(f=>f.when.map(([p])=>p))).size>n.conditionalDimensions&&i.push(["dimensionConditional"]),o.filter(f=>f.categoryRateOverrides.length===0).length===0&&G(e,"conditional table must contain at least one base-vector row",["dimensionConditional"]),o.forEach((f,p)=>{f.categoryRateOverrides.forEach(([g],b)=>{g>=t.categories.length&&G(e,"ADMISSION_CONDITIONAL_OVERRIDE_INVALID",["dimensionConditional",p,"categoryRateOverrides",b,0])})})}let a=o?.length??1,c=t.categories.length*a;(c>n.expandedCoefficients||c>n.evaluationMultiplyAdds)&&i.push(["dimensionConditional"]),new TextEncoder().encode(Oi(t)).length>n.canonicalBytes&&i.push([]);for(let u of i)G(e,oW,u)});var dpe=s.object({commercialReleaseVersionId:qt,ratingContextVersionId:ee,byRouteKey:s.record(ce,GP)}).strict(),mpe=s.object({economicMode:s.enum(["free","flat","postpaid","prepaid","hybrid_blocking"]),measurementTiming:s.enum(["in_band","post_stream"]),settlementMaxNanos:Ql.optional(),descriptor:GP}).strict().superRefine((t,e)=>{(t.economicMode==="prepaid"||t.economicMode==="hybrid_blocking")&&t.measurementTiming==="post_stream"&&t.settlementMaxNanos===void 0&&G(e,sW,["settlementMaxNanos"])});var gpe=Object.freeze(["max_tokens","max_output_tokens","max_completion_tokens"]);var pW=s.enum(["CashClearing","PrepaidLiability","IncludedAllowanceContra","PromoContra","ReferralContra","UsageRevenue","RecurringRevenue","RoundingDifference","SettlementReceivable","RefundsPayable","WriteOff","TaxPayable"]),fW=s.enum(["DEBIT","CREDIT"]),gW=s.enum(["RATED_REVENUE","RATED_REVENUE_REVERSAL","FUNDING_ALLOCATION","FUNDING_CONTRA","FUNDING_CONTRA_REVERSAL","BREAKAGE","COMMITMENT_TRUE_UP","RATED_CONTRA","SETTLEMENT_ROUNDING","CASH_CLEARING","TAX","REFUND","WRITE_OFF","RECEIVABLE"]),ype=s.literal("usd"),kpe=s.enum(["POSTED"]),wpe=s.enum(["ACTIVE","RECONCILIATION_REQUIRED"]),ZP=s.enum(["RATED_USAGE","RECURRING_FEE","COMMITMENT_TRUE_UP","TOP_UP_PENDING","TOP_UP_AVAILABLE","TOP_UP_CANCELLED","INCLUDED_GRANT_ISSUANCE","PROMO_GRANT_ISSUANCE","REFERRAL_GRANT_ISSUANCE","PREPAID_GRANT_ISSUANCE","PREPAID_EXPIRY","PROMO_EXPIRY","INCLUDED_EXPIRY","REFERRAL_EXPIRY","REFUND_SOURCE_REVERSAL","REFUND_CASH_PAYOUT","SETTLEMENT_EXPORT","SETTLEMENT_CASH_RECEIPT","SETTLEMENT_VOID","RECEIVABLE_WRITE_OFF","DISPUTE_WITHDRAWAL","DISPUTE_REINSTATEMENT","DISPUTE_WRITE_OFF","RATING_ROUNDING"]),Spe=s.enum(["none","operation","event"]),hW=[["rated-usage-charge-v1","RATED_USAGE","none"],["recurring-fee-v1","RECURRING_FEE","none"],["commitment-true-up-v1","COMMITMENT_TRUE_UP","none"],["top-up-pending-v1","TOP_UP_PENDING","operation"],["top-up-available-v1","TOP_UP_AVAILABLE","event"],["top-up-cancelled-v1","TOP_UP_CANCELLED","event"],["included-grant-issuance-v1","INCLUDED_GRANT_ISSUANCE","none"],["promo-grant-issuance-v1","PROMO_GRANT_ISSUANCE","none"],["referral-grant-issuance-v1","REFERRAL_GRANT_ISSUANCE","none"],["prepaid-grant-issuance-v1","PREPAID_GRANT_ISSUANCE","event"],["prepaid-expiry-v1","PREPAID_EXPIRY","none"],["promo-expiry-v1","PROMO_EXPIRY","none"],["included-expiry-v1","INCLUDED_EXPIRY","none"],["referral-expiry-v1","REFERRAL_EXPIRY","none"],["refund-source-reversal-v1","REFUND_SOURCE_REVERSAL","event"],["refund-source-reversal-continuation-v1","REFUND_SOURCE_REVERSAL","none"],["rating-correction-reversal-v1","REFUND_SOURCE_REVERSAL","none"],["prepaid-principal-refund-v1","REFUND_SOURCE_REVERSAL","operation"],["refund-cash-payout-v1","REFUND_CASH_PAYOUT","event"],["refund-cash-payout-compensation-v1","REFUND_CASH_PAYOUT","event"],["settlement-export-v1","SETTLEMENT_EXPORT","operation"],["settlement-cash-receipt-v1","SETTLEMENT_CASH_RECEIPT","event"],["settlement-void-v1","SETTLEMENT_VOID","event"],["settlement-promotion-adjustment-v1","SETTLEMENT_VOID","operation"],["receivable-write-off-v1","RECEIVABLE_WRITE_OFF","event"],["dispute-withdrawal-v1","DISPUTE_WITHDRAWAL","event"],["dispute-reinstatement-v1","DISPUTE_REINSTATEMENT","event"],["dispute-write-off-v1","DISPUTE_WRITE_OFF","event"],["rating-rounding-v1","RATING_ROUNDING","none"]],bW=new Map(hW.map(([t,e,n])=>[t,{transactionKind:e,mode:n}]));var Ipe=s.object({transactionKind:ZP,templateKey:ce,rail:ee.optional(),railAccountRef:ee.optional(),stripeEventId:ee.optional(),externalObjectId:ee.optional()}).strict().superRefine((t,e)=>{let n=bW.get(t.templateKey),i=t.rail!==void 0,r=t.railAccountRef!==void 0,o=t.stripeEventId!==void 0,a=t.externalObjectId!==void 0;n?.transactionKind===t.transactionKind&&(n.mode==="none"&&!i&&!r&&!o&&!a||n.mode==="operation"&&i&&r&&!o&&a||n.mode==="event"&&i&&r&&o&&a)||G(e,"POSTING_TEMPLATE_RAIL_IDENTITY_VIOLATION",["templateKey"])}),_W=s.enum(["included","promo","referral","prepaid"]),Epe=s.enum(["PENDING","AVAILABLE","EXPIRY_PENDING","FROZEN","EXPIRED","CANCELLED"]),Tpe=s.enum(["admission_bound_breached","membership_unresolved","quarantine","sequence_completeness","accounting_divergence","correction_unreconcilable","quote_disputed","spend_policy_block_unfunded"]),WP=s.enum(["admitted","measured","zero_booked","quarantined","rated","funded"]),pa={positivePosting:"posting amount must be positive",missingBucketId:"PrepaidLiability requires bucketId",missingBucketSource:"PrepaidLiability requires bucketSourceKind",forbiddenBucket:"non-PrepaidLiability posting forbids bucket provenance",bucketIdPath:"bucketId",bucketSourcePath:"bucketSourceKind"},vW=Fr.refine(t=>/^(0|[1-9][0-9]*)$/.test(t)&&BigInt(t)>0n,pa.positivePosting),yW=s.object({account:pW,side:fW,amountNanos:vW,postingRole:gW,bucketId:ee.optional(),bucketSourceKind:_W.optional()}).strict().superRefine((t,e)=>{let n=t.bucketId!==void 0,i=t.bucketSourceKind!==void 0;t.account==="PrepaidLiability"?(n||G(e,pa.missingBucketId,[pa.bucketIdPath]),i||G(e,pa.missingBucketSource,[pa.bucketSourcePath])):(n||i)&&G(e,pa.forbiddenBucket)}),kW=[["RATED_USAGE","PrepaidLiability","FUNDING_ALLOCATION","required"],["RATED_USAGE","SettlementReceivable","RECEIVABLE","forbidden"],["RATED_USAGE","UsageRevenue","RATED_REVENUE","forbidden"],["RECURRING_FEE","PrepaidLiability","FUNDING_ALLOCATION","required"],["RECURRING_FEE","SettlementReceivable","RECEIVABLE","forbidden"],["RECURRING_FEE","RecurringRevenue","RATED_REVENUE","forbidden"],["COMMITMENT_TRUE_UP","PrepaidLiability","FUNDING_ALLOCATION","required"],["COMMITMENT_TRUE_UP","SettlementReceivable","RECEIVABLE","forbidden"],["COMMITMENT_TRUE_UP","UsageRevenue","COMMITMENT_TRUE_UP","forbidden"],["TOP_UP_PENDING","SettlementReceivable","RECEIVABLE","forbidden"],["TOP_UP_PENDING","PrepaidLiability","FUNDING_ALLOCATION","required"],["TOP_UP_AVAILABLE","CashClearing","CASH_CLEARING","forbidden"],["TOP_UP_AVAILABLE","SettlementReceivable","RECEIVABLE","forbidden"],["TOP_UP_CANCELLED","PrepaidLiability","FUNDING_ALLOCATION","required"],["TOP_UP_CANCELLED","SettlementReceivable","RECEIVABLE","forbidden"],["INCLUDED_GRANT_ISSUANCE","IncludedAllowanceContra","FUNDING_CONTRA","forbidden"],["INCLUDED_GRANT_ISSUANCE","PrepaidLiability","FUNDING_ALLOCATION","required"],["PROMO_GRANT_ISSUANCE","PromoContra","FUNDING_CONTRA","forbidden"],["PROMO_GRANT_ISSUANCE","PrepaidLiability","FUNDING_ALLOCATION","required"],["REFERRAL_GRANT_ISSUANCE","ReferralContra","FUNDING_CONTRA","forbidden"],["REFERRAL_GRANT_ISSUANCE","PrepaidLiability","FUNDING_ALLOCATION","required"],["PREPAID_GRANT_ISSUANCE","CashClearing","CASH_CLEARING","forbidden"],["PREPAID_GRANT_ISSUANCE","PrepaidLiability","FUNDING_ALLOCATION","required"],["PREPAID_EXPIRY","PrepaidLiability","FUNDING_ALLOCATION","required"],["PREPAID_EXPIRY","UsageRevenue","BREAKAGE","forbidden"],["PROMO_EXPIRY","PrepaidLiability","FUNDING_ALLOCATION","required"],["PROMO_EXPIRY","PromoContra","FUNDING_CONTRA_REVERSAL","forbidden"],["INCLUDED_EXPIRY","PrepaidLiability","FUNDING_ALLOCATION","required"],["INCLUDED_EXPIRY","IncludedAllowanceContra","FUNDING_CONTRA_REVERSAL","forbidden"],["REFERRAL_EXPIRY","PrepaidLiability","FUNDING_ALLOCATION","required"],["REFERRAL_EXPIRY","ReferralContra","FUNDING_CONTRA_REVERSAL","forbidden"],["REFUND_SOURCE_REVERSAL","UsageRevenue","RATED_REVENUE_REVERSAL","forbidden"],["REFUND_SOURCE_REVERSAL","PrepaidLiability","FUNDING_ALLOCATION","required"],["REFUND_SOURCE_REVERSAL","SettlementReceivable","RECEIVABLE","forbidden"],["REFUND_SOURCE_REVERSAL","RoundingDifference","SETTLEMENT_ROUNDING","forbidden"],["REFUND_SOURCE_REVERSAL","RefundsPayable","REFUND","forbidden"],["REFUND_SOURCE_REVERSAL","WriteOff","RATED_CONTRA","forbidden"],["REFUND_SOURCE_REVERSAL","PromoContra","FUNDING_CONTRA_REVERSAL","forbidden"],["REFUND_SOURCE_REVERSAL","IncludedAllowanceContra","FUNDING_CONTRA_REVERSAL","forbidden"],["REFUND_SOURCE_REVERSAL","ReferralContra","FUNDING_CONTRA_REVERSAL","forbidden"],["REFUND_CASH_PAYOUT","RefundsPayable","REFUND","forbidden"],["REFUND_CASH_PAYOUT","CashClearing","CASH_CLEARING","forbidden"],["SETTLEMENT_EXPORT","SettlementReceivable","RECEIVABLE","forbidden"],["SETTLEMENT_EXPORT","RoundingDifference","SETTLEMENT_ROUNDING","forbidden"],["SETTLEMENT_CASH_RECEIPT","CashClearing","CASH_CLEARING","forbidden"],["SETTLEMENT_CASH_RECEIPT","SettlementReceivable","RECEIVABLE","forbidden"],["SETTLEMENT_CASH_RECEIPT","TaxPayable","TAX","forbidden"],["SETTLEMENT_VOID","UsageRevenue","RATED_REVENUE_REVERSAL","forbidden"],["SETTLEMENT_VOID","RecurringRevenue","RATED_REVENUE_REVERSAL","forbidden"],["SETTLEMENT_VOID","SettlementReceivable","RECEIVABLE","forbidden"],["RECEIVABLE_WRITE_OFF","WriteOff","WRITE_OFF","forbidden"],["RECEIVABLE_WRITE_OFF","SettlementReceivable","RECEIVABLE","forbidden"],["DISPUTE_WITHDRAWAL","SettlementReceivable","RECEIVABLE","forbidden"],["DISPUTE_WITHDRAWAL","CashClearing","CASH_CLEARING","forbidden"],["DISPUTE_REINSTATEMENT","CashClearing","CASH_CLEARING","forbidden"],["DISPUTE_REINSTATEMENT","SettlementReceivable","RECEIVABLE","forbidden"],["DISPUTE_WRITE_OFF","WriteOff","WRITE_OFF","forbidden"],["DISPUTE_WRITE_OFF","SettlementReceivable","RECEIVABLE","forbidden"],["RATING_ROUNDING","RoundingDifference","RATED_CONTRA","forbidden"],["RATING_ROUNDING","UsageRevenue","RATED_REVENUE","forbidden"]],wW=new Set(kW.map(([t,e,n,i])=>JSON.stringify([t,e,n,i]))),Rpe=s.object({transactionKind:ZP,posting:yW}).strict().superRefine((t,e)=>{let n=t.posting.bucketId===void 0?"forbidden":"required",i=JSON.stringify([t.transactionKind,t.posting.account,t.posting.postingRole,n]);wW.has(i)||G(e,"POSTING_TEMPLATE_MATRIX_VIOLATION",["posting"])});var mge=Object.freeze({rate_decreased:"decrease",tier_rate_decreased:"decrease",quote_bounds_decreased:"decrease",modifier_decreased:"decrease",contract_terms_decreased:"decrease",rate_increased:"increase",tier_rate_increased:"increase",quote_bounds_increased:"increase",modifier_increased:"increase",contract_terms_increased:"increase",tiers_mixed:"incomparable",tier_boundaries_changed:"incomparable",pricing_model_changed:"incomparable",entry_added:"incomparable",entry_removed:"incomparable",entry_ambiguous:"incomparable",eligibility_changed:"incomparable",quote_bounds_mixed:"incomparable",modifier_added:"incomparable",modifier_removed:"incomparable",contract_terms_changed:"incomparable"});var CW=["expire-balance-buckets","reconcile-do-handoff","close-rating-windows","rated-value-reconciliation","usage-batch-ledger-maintenance","recognize-agreement-ledger-windows","export-closed-settlement-windows","billing-cycle-finality","reconcile-unbillable-subscriptions"],fge=new Set(CW);var NW=["commercial.agreement.release-refresh","stripe.compiledplan.flat_price","post_stream.overspend.evaluate","stripe.customer.apply_credit","subscription.repin-compiled-plan","transition.fire-period-end-due"],gge=new Set(NW);var PW=["drain-post-commit-effects","dispatch-webhooks","github-oauth-state-cleanup","local-persona-proxy-lease-prune","maintenance-heartbeat-monitor","orphan-artifact-gc","platform-event-retention","webhook-event-cleanup","workflow-retention"],hge=new Set(PW);var zW=/^[1-9][0-9]*$/;function hS(t){return zW.test(t)&&BigInt(t)<=Rw}var DW=s.string().refine(hS,"must be a positive safe-integer decimal string"),LW=s.object({servedReleaseVersionId:qt,servedSequenceNumber:DW,servedCompiledPlanId:ee}).strict(),kge=s.record(s.string(),s.record(ee,LW)).superRefine((t,e)=>{for(let[n,i]of Object.entries(t)){if(!hS(n)){G(e,"bound cohort key must be a positive safe-integer decimal string",[n]);continue}for(let[r,o]of Object.entries(i))hS(o.servedSequenceNumber)&&BigInt(o.servedSequenceNumber)<BigInt(n)&&G(e,"servedSequenceNumber must not precede the bound cohort",[n,r,"servedSequenceNumber"])}});var UW=["owner","admin","member"];function MW(t){return t==="maker_token"}var Te=UW,V=["owner","admin"],Vr=["owner"],U=["business"],Je=["organization"],bS=["self"],_S=["business","organization"],jW=["business","self"],e0=["organization","self"];function ha(t){return t.replaceAll("_"," ")}function I(t,e){let[n,i]=t.split(":"),r=n,o=`${ha(n)}: ${ha(i)}`,a=e.effect==="read"?`View ${ha(n)} ${ha(i)} data through authorized platform surfaces.`:`Perform ${ha(n)} ${ha(i)} operations through authorized platform surfaces.`;return{...e,domain:r,title:o,description:a}}var Ea={"agent:configure":I("agent:configure",{effect:"write",allowedTargetKinds:U,defaultRoles:V,delegation:"maker_token"}),"auth_provider_connection:create":I("auth_provider_connection:create",{effect:"write",allowedTargetKinds:U,defaultRoles:Vr,delegation:"browser_only"}),"auth_provider_connection:delete":I("auth_provider_connection:delete",{effect:"write",allowedTargetKinds:U,defaultRoles:Vr,delegation:"browser_only"}),"auth_provider_connection:read":I("auth_provider_connection:read",{effect:"read",allowedTargetKinds:U,defaultRoles:Te,delegation:"browser_only"}),"auth_provider_connection:update":I("auth_provider_connection:update",{effect:"write",allowedTargetKinds:U,defaultRoles:Vr,delegation:"browser_only"}),"agent:read":I("agent:read",{effect:"read",allowedTargetKinds:U,defaultRoles:Te,delegation:"maker_token"}),"agreement:amend":I("agreement:amend",{effect:"write",allowedTargetKinds:U,defaultRoles:V,delegation:"maker_token"}),"agreement:create":I("agreement:create",{effect:"write",allowedTargetKinds:U,defaultRoles:V,delegation:"maker_token"}),"agreement:read":I("agreement:read",{effect:"read",allowedTargetKinds:U,defaultRoles:Te,delegation:"maker_token"}),"analytics:read":I("analytics:read",{effect:"read",allowedTargetKinds:U,defaultRoles:Te,delegation:"maker_token"}),"apply_timeline:read":I("apply_timeline:read",{effect:"read",allowedTargetKinds:U,defaultRoles:Te,delegation:"maker_token"}),"audit_log:export":I("audit_log:export",{effect:"read",allowedTargetKinds:_S,defaultRoles:V,delegation:"maker_token"}),"audit_log:read":I("audit_log:read",{effect:"read",allowedTargetKinds:_S,defaultRoles:Te,delegation:"maker_token"}),"auth_context:read":I("auth_context:read",{effect:"read",allowedTargetKinds:bS,defaultRoles:Te,delegation:"maker_token"}),"auth_context:issue":I("auth_context:issue",{effect:"write",allowedTargetKinds:U,defaultRoles:V,delegation:"maker_token"}),"automation_rule:create":I("automation_rule:create",{effect:"write",allowedTargetKinds:U,defaultRoles:V,delegation:"maker_token"}),"automation_rule:delete":I("automation_rule:delete",{effect:"write",allowedTargetKinds:U,defaultRoles:V,delegation:"maker_token"}),"automation_rule:read":I("automation_rule:read",{effect:"read",allowedTargetKinds:U,defaultRoles:Te,delegation:"maker_token"}),"automation_rule:update":I("automation_rule:update",{effect:"write",allowedTargetKinds:U,defaultRoles:V,delegation:"maker_token"}),"backend:bind":I("backend:bind",{effect:"write",allowedTargetKinds:U,defaultRoles:V,delegation:"maker_token"}),"backend:create":I("backend:create",{effect:"write",allowedTargetKinds:U,defaultRoles:V,delegation:"maker_token"}),"backend:delete":I("backend:delete",{effect:"write",allowedTargetKinds:U,defaultRoles:V,delegation:"maker_token"}),"backend:read":I("backend:read",{effect:"read",allowedTargetKinds:U,defaultRoles:Te,delegation:"maker_token"}),"brand:update":I("brand:update",{effect:"write",allowedTargetKinds:U,defaultRoles:V,delegation:"maker_token"}),"bulletin:ack":I("bulletin:ack",{effect:"write",allowedTargetKinds:U,defaultRoles:V,delegation:"maker_token"}),"bulletin:read":I("bulletin:read",{effect:"read",allowedTargetKinds:U,defaultRoles:Te,delegation:"maker_token"}),"bulletin:resolve":I("bulletin:resolve",{effect:"write",allowedTargetKinds:U,defaultRoles:V,delegation:"maker_token"}),"business:create":I("business:create",{effect:"write",allowedTargetKinds:Je,defaultRoles:V,delegation:"maker_token"}),"business:compile":I("business:compile",{effect:"read",allowedTargetKinds:U,defaultRoles:V,delegation:"maker_token"}),"business:delete":I("business:delete",{effect:"write",allowedTargetKinds:U,defaultRoles:V,delegation:"maker_token"}),"business:docs_update":I("business:docs_update",{effect:"write",allowedTargetKinds:U,defaultRoles:V,delegation:"maker_token"}),"business:rbac_update":I("business:rbac_update",{effect:"write",allowedTargetKinds:U,defaultRoles:V,delegation:"maker_token"}),"business:cors_update":I("business:cors_update",{effect:"write",allowedTargetKinds:U,defaultRoles:V,delegation:"maker_token"}),"business:preview_env_update":I("business:preview_env_update",{effect:"write",allowedTargetKinds:U,defaultRoles:V,delegation:"maker_token"}),"business:publish":I("business:publish",{effect:"write",allowedTargetKinds:U,defaultRoles:V,delegation:"maker_token"}),"business:read":I("business:read",{effect:"read",allowedTargetKinds:_S,defaultRoles:Te,delegation:"maker_token"}),"business:rollback":I("business:rollback",{effect:"write",allowedTargetKinds:U,defaultRoles:V,delegation:"maker_token"}),"business_dependents:read":I("business_dependents:read",{effect:"read",allowedTargetKinds:U,defaultRoles:Te,delegation:"maker_token"}),"business_variable:create":I("business_variable:create",{effect:"write",allowedTargetKinds:U,defaultRoles:V,delegation:"maker_token"}),"business_variable:delete":I("business_variable:delete",{effect:"write",allowedTargetKinds:U,defaultRoles:V,delegation:"maker_token"}),"business_variable:operation_read":I("business_variable:operation_read",{effect:"read",allowedTargetKinds:U,defaultRoles:Te,delegation:"maker_token"}),"business_variable:read":I("business_variable:read",{effect:"read",allowedTargetKinds:U,defaultRoles:Te,delegation:"maker_token"}),"business_variable:revoke":I("business_variable:revoke",{effect:"write",allowedTargetKinds:U,defaultRoles:V,delegation:"maker_token"}),"business_variable:rotate":I("business_variable:rotate",{effect:"write",allowedTargetKinds:U,defaultRoles:V,delegation:"maker_token"}),"change_set:propose":I("change_set:propose",{effect:"write",allowedTargetKinds:U,defaultRoles:V,delegation:"maker_token"}),"change_set:read":I("change_set:read",{effect:"read",allowedTargetKinds:U,defaultRoles:V,delegation:"maker_token"}),"consumer:block":I("consumer:block",{effect:"write",allowedTargetKinds:U,defaultRoles:V,delegation:"maker_token"}),"consumer:migrate_latest":I("consumer:migrate_latest",{effect:"write",allowedTargetKinds:U,defaultRoles:V,delegation:"maker_token"}),"consumer:read":I("consumer:read",{effect:"read",allowedTargetKinds:U,defaultRoles:Te,delegation:"maker_token"}),"consumer:remove":I("consumer:remove",{effect:"write",allowedTargetKinds:U,defaultRoles:V,delegation:"maker_token"}),"consumer:roles_assign":I("consumer:roles_assign",{effect:"write",allowedTargetKinds:U,defaultRoles:V,delegation:"maker_token"}),"denial:read":I("denial:read",{effect:"read",allowedTargetKinds:U,defaultRoles:Te,delegation:"maker_token"}),"environment:create":I("environment:create",{effect:"write",allowedTargetKinds:U,defaultRoles:V,delegation:"maker_token"}),"environment:delete":I("environment:delete",{effect:"write",allowedTargetKinds:U,defaultRoles:V,delegation:"maker_token"}),"environment:read":I("environment:read",{effect:"read",allowedTargetKinds:U,defaultRoles:Te,delegation:"maker_token"}),"frontend:read":I("frontend:read",{effect:"read",allowedTargetKinds:U,defaultRoles:Te,delegation:"maker_token"}),"frontend:rollback":I("frontend:rollback",{effect:"write",allowedTargetKinds:U,defaultRoles:V,delegation:"maker_token"}),"git_connection:create":I("git_connection:create",{effect:"write",allowedTargetKinds:Je,defaultRoles:V,delegation:"browser_only"}),"git_connection:delete":I("git_connection:delete",{effect:"write",allowedTargetKinds:Je,defaultRoles:V,delegation:"browser_only"}),"git_connection:read":I("git_connection:read",{effect:"read",allowedTargetKinds:Je,defaultRoles:V,delegation:"browser_only"}),"git_connection:update":I("git_connection:update",{effect:"write",allowedTargetKinds:Je,defaultRoles:V,delegation:"browser_only"}),"knowledge:read":I("knowledge:read",{effect:"read",allowedTargetKinds:jW,defaultRoles:Te,delegation:"maker_token"}),"maker_token:create":I("maker_token:create",{effect:"write",allowedTargetKinds:Je,defaultRoles:V,delegation:"browser_only"}),"maker_token:create_org":I("maker_token:create_org",{effect:"write",allowedTargetKinds:Je,defaultRoles:V,delegation:"user_session_only"}),"maker_token:read":I("maker_token:read",{effect:"read",allowedTargetKinds:Je,defaultRoles:V,delegation:"user_session_only"}),"maker_token:revoke":I("maker_token:revoke",{effect:"write",allowedTargetKinds:Je,defaultRoles:V,delegation:"browser_only"}),"maker_token:rotate":I("maker_token:rotate",{effect:"write",allowedTargetKinds:Je,defaultRoles:V,delegation:"browser_only"}),"notification:preferences_read":I("notification:preferences_read",{effect:"read",allowedTargetKinds:U,defaultRoles:Te,delegation:"user_session_only"}),"notification:preferences_update":I("notification:preferences_update",{effect:"write",allowedTargetKinds:U,defaultRoles:Te,delegation:"user_session_only"}),"organization:create":I("organization:create",{effect:"write",allowedTargetKinds:bS,defaultRoles:V,delegation:"user_session_only"}),"organization:delete":I("organization:delete",{effect:"write",allowedTargetKinds:Je,defaultRoles:Vr,delegation:"user_session_only"}),"organization:ownership_transfer":I("organization:ownership_transfer",{effect:"write",allowedTargetKinds:Je,defaultRoles:Vr,delegation:"user_session_only"}),"organization:read":I("organization:read",{effect:"read",allowedTargetKinds:e0,defaultRoles:Te,delegation:"maker_token"}),"organization:manage_billing":I("organization:manage_billing",{effect:"write",allowedTargetKinds:Je,defaultRoles:Vr,delegation:"browser_only"}),"organization_role:read":I("organization_role:read",{effect:"read",allowedTargetKinds:Je,defaultRoles:Te,delegation:"user_session_only"}),"organization_role:create":I("organization_role:create",{effect:"write",allowedTargetKinds:Je,defaultRoles:V,delegation:"user_session_only"}),"organization_role:update":I("organization_role:update",{effect:"write",allowedTargetKinds:Je,defaultRoles:V,delegation:"user_session_only"}),"organization_role:delete":I("organization_role:delete",{effect:"write",allowedTargetKinds:Je,defaultRoles:V,delegation:"user_session_only"}),"organization_bulletin:read":I("organization_bulletin:read",{effect:"read",allowedTargetKinds:Je,defaultRoles:Te,delegation:"maker_token"}),"organization_invitation:accept":I("organization_invitation:accept",{effect:"write",allowedTargetKinds:bS,defaultRoles:Te,delegation:"user_session_only"}),"organization_invitation:create":I("organization_invitation:create",{effect:"write",allowedTargetKinds:Je,defaultRoles:V,delegation:"user_session_only"}),"organization_invitation:list":I("organization_invitation:list",{effect:"read",allowedTargetKinds:e0,defaultRoles:Te,delegation:"user_session_only"}),"organization_invitation:revoke":I("organization_invitation:revoke",{effect:"write",allowedTargetKinds:Je,defaultRoles:V,delegation:"user_session_only"}),"organization_member:list":I("organization_member:list",{effect:"read",allowedTargetKinds:Je,defaultRoles:Te,delegation:"user_session_only"}),"organization_member:remove":I("organization_member:remove",{effect:"write",allowedTargetKinds:Je,defaultRoles:V,delegation:"user_session_only"}),"organization_member:update":I("organization_member:update",{effect:"write",allowedTargetKinds:Je,defaultRoles:V,delegation:"user_session_only"}),"persona:issue":I("persona:issue",{effect:"write",allowedTargetKinds:U,defaultRoles:V,delegation:"maker_token"}),"persona:read":I("persona:read",{effect:"read",allowedTargetKinds:U,defaultRoles:Te,delegation:"maker_token"}),"persona:revoke":I("persona:revoke",{effect:"write",allowedTargetKinds:U,defaultRoles:V,delegation:"maker_token"}),"persona:rotate":I("persona:rotate",{effect:"write",allowedTargetKinds:U,defaultRoles:V,delegation:"maker_token"}),"plan:read":I("plan:read",{effect:"read",allowedTargetKinds:U,defaultRoles:Te,delegation:"maker_token"}),"product_subscription:create":I("product_subscription:create",{effect:"write",allowedTargetKinds:Je,defaultRoles:V,delegation:"browser_only"}),"promo_code:archive":I("promo_code:archive",{effect:"write",allowedTargetKinds:U,defaultRoles:V,delegation:"maker_token"}),"promo_code:create":I("promo_code:create",{effect:"write",allowedTargetKinds:U,defaultRoles:V,delegation:"maker_token"}),"promo_code:reactivate":I("promo_code:reactivate",{effect:"write",allowedTargetKinds:U,defaultRoles:V,delegation:"maker_token"}),"promo_code:read":I("promo_code:read",{effect:"read",allowedTargetKinds:U,defaultRoles:Te,delegation:"maker_token"}),"promo_code:update":I("promo_code:update",{effect:"write",allowedTargetKinds:U,defaultRoles:V,delegation:"maker_token"}),"rbac:read":I("rbac:read",{effect:"read",allowedTargetKinds:U,defaultRoles:Te,delegation:"maker_token"}),"resource_count:report":I("resource_count:report",{effect:"write",allowedTargetKinds:U,defaultRoles:V,delegation:"maker_token"}),"runtime_token:mint":I("runtime_token:mint",{effect:"write",allowedTargetKinds:U,defaultRoles:V,delegation:"maker_token"}),"runtime_token:read":I("runtime_token:read",{effect:"read",allowedTargetKinds:U,defaultRoles:Te,delegation:"maker_token"}),"runtime_token:revoke":I("runtime_token:revoke",{effect:"write",allowedTargetKinds:U,defaultRoles:V,delegation:"maker_token"}),"runtime_token:rotate":I("runtime_token:rotate",{effect:"write",allowedTargetKinds:U,defaultRoles:V,delegation:"maker_token"}),"stripe_connection:create":I("stripe_connection:create",{effect:"write",allowedTargetKinds:Je,defaultRoles:Vr,delegation:"browser_only"}),"stripe_connection:delete":I("stripe_connection:delete",{effect:"write",allowedTargetKinds:Je,defaultRoles:Vr,delegation:"user_session_only"}),"stripe_connection:read":I("stripe_connection:read",{effect:"read",allowedTargetKinds:Je,defaultRoles:Vr,delegation:"user_session_only"}),"tax_settings:read":I("tax_settings:read",{effect:"read",allowedTargetKinds:U,defaultRoles:Te,delegation:"maker_token"}),"tax_settings:update":I("tax_settings:update",{effect:"write",allowedTargetKinds:U,defaultRoles:V,delegation:"maker_token"}),"usage:read":I("usage:read",{effect:"read",allowedTargetKinds:U,defaultRoles:Te,delegation:"maker_token"}),"webhook:create":I("webhook:create",{effect:"write",allowedTargetKinds:U,defaultRoles:V,delegation:"maker_token"}),"webhook:delete":I("webhook:delete",{effect:"write",allowedTargetKinds:U,defaultRoles:V,delegation:"maker_token"}),"webhook:delivery_read":I("webhook:delivery_read",{effect:"read",allowedTargetKinds:U,defaultRoles:Te,delegation:"maker_token"}),"webhook:read":I("webhook:read",{effect:"read",allowedTargetKinds:U,defaultRoles:Te,delegation:"maker_token"}),"webhook:test":I("webhook:test",{effect:"write",allowedTargetKinds:U,defaultRoles:V,delegation:"maker_token"}),"webhook:update":I("webhook:update",{effect:"write",allowedTargetKinds:U,defaultRoles:V,delegation:"maker_token"}),"workflow:replay":I("workflow:replay",{effect:"write",allowedTargetKinds:U,defaultRoles:V,delegation:"maker_token"}),"workflow:rollback":I("workflow:rollback",{effect:"write",allowedTargetKinds:U,defaultRoles:V,delegation:"maker_token"})},_0=Object.keys(Ea).sort(),pbe=_0.filter(t=>MW(Ea[t].delegation));function BW(){for(let t of _0){if(!/^[a-z_]+:[a-z_]+$/.test(t)||t.includes("*"))throw new Error(`Platform permission must be exact: ${t}`);let e=Ea[t];if(e.allowedTargetKinds.length===0)throw new Error(`Platform permission has no target kind: ${t}`);if(e.defaultRoles.length===0)throw new Error(`Platform permission has no default role: ${t}`)}}BW();var vr="webhooks",eu="promo-codes",ba="variables",Cn="change-sets",hn=t=>({reason:"repo_authored",detail:`Declare ${t} in the business repo's business/ folder and push \u2014 the platform applies it.`}),KW=[{key:"plan.create",class:"contract",domain:"plans",unavailable:hn("the plan with `fs.plan()`")},{key:"plan.update",class:"contract",domain:"plans",unavailable:hn("the plan's new shape with `fs.plan()`")},{key:"plan.delete",class:"contract",domain:"plans",unavailable:hn("the removal (delete the `fs.plan()` call)")},{key:"plan.read",class:"contract",domain:"plans"},{key:"plan.variant.create",class:"contract",domain:"plans",unavailable:hn("the plan variant with `fs.plan()`")},{key:"plan.promote",class:"contract",domain:"plans",unavailable:hn("the promoted plan version")},{key:"plan.rollback",class:"contract",domain:"plans",unavailable:hn("the prior plan shape (revert the commit)")},{key:"route.define",class:"contract",domain:"routes",unavailable:hn("the route with `fs.route()`")},{key:"gateway.config",class:"contract",domain:"gateway",unavailable:hn("the gateway block on `fs.business()`")},{key:"auth_strategy.update",class:"contract",domain:"gateway",unavailable:hn("the auth strategy on `fs.business()`")},{key:"rate_limit.update",class:"contract",domain:"gateway",unavailable:hn("the limits on the plan or route")},{key:"meter.define",class:"contract",domain:"metering",unavailable:hn("the meter with `fs.meter()`")},{key:"backend.define",class:"contract",domain:"backends",unavailable:hn("the backend with `fs.backend()`")},{key:"business.contract_field.update",class:"contract",domain:"businesses",unavailable:hn("the field (name / meters / subscriberChangePolicy) 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:"funding.top_up.purchase",class:"operate",domain:"funding",sideEffect:"write",agentDiscoverableHandoff:!0,unavailable:{reason:"subscriber_portal",detail:"POST /portal/businesses/:businessId/me/balance-top-up \u2014 a signed-in subscriber with invoice:pay starts Stripe Checkout from its own portal. Use the public Frontend SDK fs.core() handoff documented in /cookbook/prepaid-credits; builder CLI and MCP credentials cannot act as the subscriber."}},{key:"change_set.portal_list",class:"operate",domain:Cn,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:Cn,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:Cn},{key:"apply_timeline.read",class:"operate",domain:Cn},{key:"change_set.approve",class:"operate",domain:Cn,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:Cn,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:Cn,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:Cn,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:Cn},{key:"change_set.preview",class:"operate",domain:Cn},{key:"change_set.proposal_list",class:"operate",domain:Cn},{key:"change_set.proposal_read",class:"operate",domain:Cn},{key:"business.delete",class:"operate",domain:"businesses"},{key:"business.config_attempts.read",class:"operate",domain:"businesses"},{key:"business.subdomain_availability.read",class:"operate",domain:"businesses"},{key:"frontend.status",class:"operate",domain:"frontend"},{key:"frontend.rollback",class:"operate",domain:"frontend"},{key:"auth_provider_connection.read",class:"operate",domain:"identity"},{key:"auth_provider_connection.create",class:"operate",domain:"identity"},{key:"auth_provider_connection.update",class:"operate",domain:"identity"},{key:"auth_provider_connection.delete",class:"operate",domain:"identity"},{key:"webhook.read",class:"operate",domain:vr},{key:"webhook.create",class:"operate",domain:vr},{key:"webhook.update",class:"operate",domain:vr},{key:"webhook.delete",class:"operate",domain:vr},{key:"webhook.test",class:"operate",domain:vr},{key:"webhook.trigger",class:"operate",domain:vr},{key:"webhook.listen",class:"operate",domain:vr},{key:"webhook.rotate_secret",class:"operate",domain:vr},{key:"webhook.event_type.read",class:"operate",domain:vr},{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:vr},{key:"promo_code.read",class:"operate",domain:eu},{key:"promo_code.create",class:"operate",domain:eu},{key:"promo_code.update",class:"operate",domain:eu},{key:"promo_code.archive",class:"operate",domain:eu},{key:"promo_code.reactivate",class:"operate",domain:eu},{key:"consumer.read",class:"operate",domain:"consumers"},{key:"consumer.block",class:"operate",domain:"consumers"},{key:"consumer.migrate_latest",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 its own RBAC flag and default role in its portal (/settings/team). The builder drives the SAME per-subscriber flag from the builder plane with `farthershore consumer rbac enable|disable` (consumer.rbac.enable / consumer.rbac.disable), and owns the product-wide flag via `farthershore business rbac enable` (rbac.enable); `farthershore business rbac` VERIFIES it (rbac.read). Enforcement requires BOTH flags."}},{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 (/settings/team). The builder manages the same rows from the builder plane with `farthershore consumer rbac roles list|create|update|delete` (consumer.read / consumer.role.create|update|delete); a role change the subscriber must approve goes through `farthershore proposal create`."}},{key:"consumer.roles.assign",class:"operate",domain:"consumers"},{key:"consumer.rbac.enable",class:"operate",domain:"consumers"},{key:"consumer.rbac.disable",class:"operate",domain:"consumers"},{key:"consumer.role.create",class:"operate",domain:"consumers"},{key:"consumer.role.update",class:"operate",domain:"consumers"},{key:"consumer.role.delete",class:"operate",domain:"consumers"},{key:"business_variable.read",class:"operate",domain:ba},{key:"business_variable.create",class:"operate",domain:ba},{key:"business_variable.rotate",class:"operate",domain:ba},{key:"business_variable.revoke",class:"operate",domain:ba},{key:"business_variable.delete",class:"operate",domain:ba},{key:"business_variable.operation.read",class:"operate",domain:ba},{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:"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.login",class:"operate",domain:"personas"},{key:"persona.local_preview.issue",class:"operate",domain:"personas",unavailable:{reason:"served_by_other_command",detail:"Sign a persona in with `farthershore persona login` (hosted portal). This lease is CLI-process-only machinery for the localhost preview that `farthershore frontend dev|preview --live --business --env --persona` drives automatically; never call it by hand."}},{key:"persona.local_preview.renew",class:"operate",domain:"personas",unavailable:{reason:"served_by_other_command",detail:"Renewed automatically by the running `farthershore frontend dev|preview --live --persona` process (CLI local-preview proxy); there is no standalone command and nothing to call by hand. Use `farthershore persona login` for hosted sign-in."}},{key:"persona.local_preview.revoke",class:"operate",domain:"personas",unavailable:{reason:"served_by_other_command",detail:"Revoked automatically when the `farthershore frontend dev|preview --live --persona` process exits; a lease otherwise expires within five minutes. Nothing to call by hand."}},{key:"persona.rotate",class:"operate",domain:"personas"},{key:"persona.delete",class:"operate",domain:"personas"},{key:"agreement.read",class:"operate",domain:"agreements"},{key:"agreement.create",class:"operate",domain:"agreements"},{key:"agreement.amend",class:"operate",domain:"agreements"},{key:"analytics.timeseries",class:"operate",domain:"analytics"},{key:"analytics.latency",class:"operate",domain:"analytics"},{key:"analytics.top",class:"operate",domain:"analytics"},{key:"analytics.log",class:"operate",domain:"analytics"},{key:"organization.list",class:"operate",domain:"organizations"},{key:"organization.create",class:"operate",domain:"organizations"},{key:"organization.role.list",class:"operate",domain:"organizations"},{key:"organization.role.show",class:"operate",domain:"organizations"},{key:"organization.role.create",class:"operate",domain:"organizations"},{key:"organization.role.update",class:"operate",domain:"organizations"},{key:"organization.role.delete",class:"operate",domain:"organizations"},{key:"organization.member.list",class:"operate",domain:"organizations"},{key:"organization.invitation.create",class:"operate",domain:"organizations"},{key:"organization.invitation.list",class:"operate",domain:"organizations"},{key:"organization.invitation.list_sent",class:"operate",domain:"organizations",sideEffect:"read"},{key:"organization.invitation.revoke",class:"operate",domain:"organizations"},{key:"organization.invitation.accept",class:"operate",domain:"organizations"},{key:"organization.member.update",class:"operate",domain:"organizations"},{key:"organization.member.remove",class:"operate",domain:"organizations"},{key:"organization.ownership.transfer",class:"operate",domain:"organizations"},{key:"organization.active.select",class:"operate",domain:"organizations",sideEffect:"read",unavailable:{reason:"served_by_other_command",detail:"Run `farthershore auth organization use <id-or-slug>` to change the stored default organization, or pass `--org <id>` on any command for a one-off selection. The dashboard's active-organization cookie is browser-local and is not emulated."}},{key:"organization.delete",class:"operate",domain:"organizations"},{key:"organization.overview.read",class:"operate",domain:"organizations"},{key:"organization.bulletin.read",class:"operate",domain:"organizations"},{key:"organization.billing.manage",class:"operate",domain:"billing",unavailable:{reason:"credential_administration",detail:"Use the signed-in browser billing flow. Platform subscription management is interactive and browser-only."}},{key:"audit_log.read",class:"operate",domain:"audit-logs"},{key:"audit_log.business.read",class:"operate",domain:"audit-logs"},{key:"audit_log.business.export",class:"operate",domain:"audit-logs"},{key:"audit_log.export",class:"operate",domain:"audit-logs"},{key:"notification.preferences.read",class:"operate",domain:"notifications"},{key:"notification.preferences.update",class:"operate",domain:"notifications"},{key:"brand.update",class:"operate",domain:"branding"},{key:"business.cors.update",class:"operate",domain:"businesses",unavailable:{reason:"served_by_other_command",detail:"Run `farthershore business update <business-id> --allowed-origins <origins>` (or `--clear-allowed-origins`). That shared metadata command is registered under `brand.update`."}},{key:"business.docs.enable",class:"operate",domain:"businesses"},{key:"business.docs.disable",class:"operate",domain:"businesses"},{key:"rbac.enable",class:"operate",domain:"businesses"},{key:"rbac.disable",class:"operate",domain:"businesses"},{key:"rbac.subjects.read",class:"operate",domain:"businesses"},{key:"business.preview_env.set",class:"operate",domain:"businesses"},{key:"business.create",class:"operate",domain:"businesses"},{key:"business.compile",class:"operate",domain:"businesses",sideEffect:"read",unavailable:{reason:"served_by_other_command",detail:"Use `farthershore validate --business <business>`; it builds deterministically and calls this manifest-compile endpoint for the server verdict."}},{key:"business.read",class:"operate",domain:"businesses"},{key:"business.routes.read",class:"contract",domain:"businesses"},{key:"business.contract.read",class:"contract",domain:"businesses"},{key:"business.publish",class:"operate",domain:"lifecycle"},{key:"business.rollback",class:"operate",domain:"lifecycle"},{key:"manifest.apply",class:"contract",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:"environment.create",class:"operate",domain:"environments"},{key:"environment.delete",class:"operate",domain:"environments"},{key:"environment.read",class:"operate",domain:"environments"},{key:"auth.context.read",class:"operate",domain:"authentication",unavailable:{reason:"served_by_other_command",detail:"Use `farthershore auth whoami`."}},{key:"auth.context.issue",class:"operate",domain:"authentication"},{key:"org_maker_token.create",class:"operate",domain:"authentication"},{key:"org_maker_token.list",class:"operate",domain:"authentication"},{key:"org_maker_token.permission_catalog.read",class:"operate",domain:"authentication"},{key:"org_maker_token.update",class:"operate",domain:"authentication"},{key:"org_maker_token.approval_list",class:"operate",domain:"authentication",sideEffect:"read"},{key:"org_maker_token.approve",class:"operate",domain:"authentication"},{key:"org_maker_token.deny",class:"operate",domain:"authentication"},{key:"org_maker_token.rotate",class:"operate",domain:"authentication"},{key:"org_maker_token.revoke",class:"operate",domain:"authentication"},...["create","read","rotate","revoke"].map(t=>({key:`maker_token.${t}`,class:"operate",domain:"authentication",unavailable:{reason:"credential_administration",detail:"Use the signed-in dashboard token administration page. MakerToken secrets are never exposed through agent discovery."}})),...["create","read","update","delete"].map(t=>({key:`git_connection.${t}`,class:"operate",domain:"authentication"})),{key:"stripe_connection.create",class:"operate",domain:"billing",unavailable:{reason:"credential_administration",detail:"Connect Stripe from the signed-in dashboard (Connections or the business's Billing tab). The Stripe onboarding handshake is browser-only; check the result with `farthershore stripe status <business>`."}},...["read","delete"].map(t=>({key:`stripe_connection.${t}`,class:"operate",domain:"billing"})),{key:"tax_settings.read",class:"operate",domain:"billing"},{key:"tax_settings.update",class:"operate",domain:"billing"},{key:"resource_count.report",class:"operate",domain:"resources"},{key:"denial.read",class:"operate",domain:"observability"},{key:"business_dependents.read",class:"operate",domain:"businesses"},{key:"workflow.replay",class:"operate",domain:"workflows",sideEffect:"read"},{key:"workflow.rollback",class:"operate",domain:"workflows",sideEffect:"read"},{key:"automation_rule.read",class:"operate",domain:"automation"},{key:"automation_rule.create",class:"operate",domain:"automation"},{key:"automation_rule.update",class:"operate",domain:"automation"},{key:"automation_rule.delete",class:"operate",domain:"automation"},{key:"knowledge.guide.read",class:"operate",domain:"knowledge"},{key:"knowledge.business.read",class:"operate",domain:"knowledge"}],To="maker_token:create_org",Ci="business:read",Ot="local_repository:write",PS={"auth.context.issue":{permission:"auth_context:issue",targetKind:"business"},"auth.context.read":{permission:"auth_context:read",targetKind:"self"},"org_maker_token.create":{permission:To,targetKind:"organization"},"org_maker_token.list":{permission:"maker_token:read",targetKind:"organization"},"org_maker_token.permission_catalog.read":{permission:"maker_token:read",targetKind:"organization"},"org_maker_token.update":{permission:To,targetKind:"organization"},"org_maker_token.approval_list":{permission:To,targetKind:"organization"},"org_maker_token.approve":{permission:To,targetKind:"organization"},"org_maker_token.deny":{permission:To,targetKind:"organization"},"org_maker_token.rotate":{permission:To,targetKind:"organization"},"org_maker_token.revoke":{permission:To,targetKind:"organization"},"git_connection.create":{permission:"git_connection:create",targetKind:"organization"},"git_connection.delete":{permission:"git_connection:delete",targetKind:"organization"},"git_connection.read":{permission:"git_connection:read",targetKind:"organization"},"git_connection.update":{permission:"git_connection:update",targetKind:"organization"},"stripe_connection.create":{permission:"stripe_connection:create",targetKind:"organization"},"stripe_connection.delete":{permission:"stripe_connection:delete",targetKind:"organization"},"stripe_connection.read":{permission:"stripe_connection:read",targetKind:"organization"},"agents.disable":{permission:"agent:configure",targetKind:"business"},"agents.enable":{permission:"agent:configure",targetKind:"business"},"agents.list":{permission:"agent:read",targetKind:"business"},"agents.runs.show":{permission:"agent:read",targetKind:"business"},"agents.status":{permission:"agent:read",targetKind:"business"},"agreement.amend":{permission:"agreement:amend",targetKind:"business"},"agreement.create":{permission:"agreement:create",targetKind:"business"},"agreement.read":{permission:"agreement:read",targetKind:"business"},"analytics.latency":{permission:"analytics:read",targetKind:"business"},"analytics.log":{permission:"analytics:read",targetKind:"business"},"analytics.timeseries":{permission:"analytics:read",targetKind:"business"},"analytics.top":{permission:"analytics:read",targetKind:"business"},"apply_timeline.list":{permission:"apply_timeline:read",targetKind:"business"},"apply_timeline.read":{permission:"apply_timeline:read",targetKind:"business"},"audit_log.export":{permission:"audit_log:export",targetKind:"organization"},"audit_log.read":{permission:"audit_log:read",targetKind:"organization"},"audit_log.business.read":{permission:"audit_log:read",targetKind:"business"},"audit_log.business.export":{permission:"audit_log:export",targetKind:"business"},"backend.bind":{permission:"backend:bind",targetKind:"business"},"backend.create":{permission:"backend:create",targetKind:"business"},"backend.delete":{permission:"backend:delete",targetKind:"business"},"backend.read":{permission:"backend:read",targetKind:"business"},"automation_rule.create":{permission:"automation_rule:create",targetKind:"business"},"automation_rule.delete":{permission:"automation_rule:delete",targetKind:"business"},"automation_rule.read":{permission:"automation_rule:read",targetKind:"business"},"automation_rule.update":{permission:"automation_rule:update",targetKind:"business"},"bulletin.ack":{permission:"bulletin:ack",targetKind:"business"},"bulletin.list":{permission:"bulletin:read",targetKind:"business"},"bulletin.read":{permission:"bulletin:read",targetKind:"business"},"bulletin.resolve":{permission:"bulletin:resolve",targetKind:"business"},"business.create":{permission:"business:create",targetKind:"organization"},"business.compile":{permission:"business:compile",targetKind:"business"},"business.delete":{permission:"business:delete",targetKind:"business"},"business.docs.disable":{permission:"business:docs_update",targetKind:"business"},"business.docs.enable":{permission:"business:docs_update",targetKind:"business"},"business.list":{permission:Ci,targetKind:"organization"},"business.cors.update":{permission:"business:cors_update",targetKind:"business"},"business.preview_env.set":{permission:"business:preview_env_update",targetKind:"business"},"business.publish":{permission:"business:publish",targetKind:"business"},"business.read":{permission:Ci,targetKind:"business"},"business.routes.read":{permission:Ci,targetKind:"business"},"business.contract.read":{permission:Ci,targetKind:"business"},"business.config_attempts.read":{permission:Ci,targetKind:"business"},"business.subdomain_availability.read":{permission:Ci,targetKind:"organization"},"business.status":{permission:Ci,targetKind:"business"},"business_dependents.read":{permission:"business_dependents:read",targetKind:"business"},"business_variable.delete":{permission:"business_variable:delete",targetKind:"business"},"business_variable.create":{permission:"business_variable:create",targetKind:"business"},"business_variable.operation.read":{permission:"business_variable:operation_read",targetKind:"business"},"business_variable.read":{permission:"business_variable:read",targetKind:"business"},"business_variable.rotate":{permission:"business_variable:rotate",targetKind:"business"},"business_variable.revoke":{permission:"business_variable:revoke",targetKind:"business"},"change_set.preview":{permission:"change_set:propose",targetKind:"business"},"change_set.proposal_list":{permission:"change_set:read",targetKind:"business"},"change_set.proposal_read":{permission:"change_set:read",targetKind:"business"},"change_set.propose":{permission:"change_set:propose",targetKind:"business"},"consumer.block":{permission:"consumer:block",targetKind:"business"},"consumer.migrate_latest":{permission:"consumer:migrate_latest",targetKind:"business"},"consumer.read":{permission:"consumer:read",targetKind:"business"},"consumer.remove":{permission:"consumer:remove",targetKind:"business"},"consumer.roles.assign":{permission:"consumer:roles_assign",targetKind:"business"},"consumer.rbac.enable":{permission:"consumer:roles_assign",targetKind:"business"},"consumer.rbac.disable":{permission:"consumer:roles_assign",targetKind:"business"},"consumer.role.create":{permission:"consumer:roles_assign",targetKind:"business"},"consumer.role.update":{permission:"consumer:roles_assign",targetKind:"business"},"consumer.role.delete":{permission:"consumer:roles_assign",targetKind:"business"},"environment.create":{permission:"environment:create",targetKind:"business"},"environment.delete":{permission:"environment:delete",targetKind:"business"},"denial.read":{permission:"denial:read",targetKind:"business"},"environment.read":{permission:"environment:read",targetKind:"business"},"frontend.rollback":{permission:"frontend:rollback",targetKind:"business"},"frontend.status":{permission:"frontend:read",targetKind:"business"},"notification.preferences.read":{permission:"notification:preferences_read",targetKind:"business"},"notification.preferences.update":{permission:"notification:preferences_update",targetKind:"business"},"knowledge.guide.read":{permission:"knowledge:read",targetKind:"self"},"knowledge.business.read":{permission:"knowledge:read",targetKind:"business"},"organization.bulletin.read":{permission:"organization_bulletin:read",targetKind:"organization"},"organization.billing.manage":{permission:"organization:manage_billing",targetKind:"organization"},"organization.create":{permission:"organization:create",targetKind:"self"},"organization.delete":{permission:"organization:delete",targetKind:"organization"},"organization.invitation.accept":{permission:"organization_invitation:accept",targetKind:"self"},"organization.invitation.create":{permission:"organization_invitation:create",targetKind:"organization"},"organization.invitation.list":{permission:"organization_invitation:list",targetKind:"self"},"organization.invitation.list_sent":{permission:"organization_invitation:list",targetKind:"organization"},"organization.invitation.revoke":{permission:"organization_invitation:revoke",targetKind:"organization"},"organization.list":{permission:"organization:read",targetKind:"self"},"organization.role.list":{permission:"organization_role:read",targetKind:"organization"},"organization.role.show":{permission:"organization_role:read",targetKind:"organization"},"organization.role.create":{permission:"organization_role:create",targetKind:"organization"},"organization.role.update":{permission:"organization_role:update",targetKind:"organization"},"organization.role.delete":{permission:"organization_role:delete",targetKind:"organization"},"organization.member.list":{permission:"organization_member:list",targetKind:"organization"},"organization.member.remove":{permission:"organization_member:remove",targetKind:"organization"},"organization.member.update":{permission:"organization_member:update",targetKind:"organization"},"organization.overview.read":{permission:"organization:read",targetKind:"organization"},"organization.ownership.transfer":{permission:"organization:ownership_transfer",targetKind:"organization"},"organization.active.select":{permission:"organization:read",targetKind:"organization"},"persona.bootstrap":{permission:"persona:issue",targetKind:"business"},"persona.read":{permission:"persona:read",targetKind:"business"},"persona.login":{permission:"persona:issue",targetKind:"business"},"persona.local_preview.issue":{permission:"persona:issue",targetKind:"business"},"persona.local_preview.renew":{permission:"persona:issue",targetKind:"business"},"persona.local_preview.revoke":{permission:"persona:issue",targetKind:"business"},"persona.delete":{permission:"persona:revoke",targetKind:"business"},"persona.rotate":{permission:"persona:rotate",targetKind:"business"},"plan.create":{permission:Ot,targetKind:"local_repository"},"plan.read":{permission:"plan:read",targetKind:"business"},"auth_provider_connection.create":{permission:"auth_provider_connection:create",targetKind:"business"},"auth_provider_connection.delete":{permission:"auth_provider_connection:delete",targetKind:"business"},"auth_provider_connection.read":{permission:"auth_provider_connection:read",targetKind:"business"},"auth_provider_connection.update":{permission:"auth_provider_connection:update",targetKind:"business"},"promo_code.archive":{permission:"promo_code:archive",targetKind:"business"},"promo_code.create":{permission:"promo_code:create",targetKind:"business"},"promo_code.reactivate":{permission:"promo_code:reactivate",targetKind:"business"},"promo_code.read":{permission:"promo_code:read",targetKind:"business"},"promo_code.update":{permission:"promo_code:update",targetKind:"business"},"rbac.read":{permission:Ci,targetKind:"business"},"runtime_token.mint":{permission:"runtime_token:mint",targetKind:"business"},"runtime_token.read":{permission:"runtime_token:read",targetKind:"business"},"runtime_token.revoke":{permission:"runtime_token:revoke",targetKind:"business"},"runtime_token.rotate":{permission:"runtime_token:rotate",targetKind:"business"},"resource_count.report":{permission:"resource_count:report",targetKind:"business"},"tax_settings.read":{permission:"tax_settings:read",targetKind:"business"},"tax_settings.update":{permission:"tax_settings:update",targetKind:"business"},"usage.read":{permission:"usage:read",targetKind:"business"},"workflow.replay":{permission:"workflow:replay",targetKind:"business"},"workflow.rollback":{permission:"workflow:rollback",targetKind:"business"},"webhook.create":{permission:"webhook:create",targetKind:"business"},"webhook.delete":{permission:"webhook:delete",targetKind:"business"},"webhook.delivery.read":{permission:"webhook:delivery_read",targetKind:"business"},"webhook.read":{permission:"webhook:read",targetKind:"business"},"webhook.test":{permission:"webhook:test",targetKind:"business"},"webhook.trigger":{permission:"webhook:test",targetKind:"business"},"webhook.listen":{permission:"webhook:create",targetKind:"business"},"webhook.update":{permission:"webhook:update",targetKind:"business"},"webhook.rotate_secret":{permission:"webhook:update",targetKind:"business"},"webhook.event_type.read":{permission:"webhook:read",targetKind:"business"},"plan.update":{permission:Ot,targetKind:"local_repository"},"plan.delete":{permission:Ot,targetKind:"local_repository"},"plan.variant.create":{permission:Ot,targetKind:"local_repository"},"plan.promote":{permission:Ot,targetKind:"local_repository"},"plan.rollback":{permission:Ot,targetKind:"local_repository"},"route.define":{permission:Ot,targetKind:"local_repository"},"gateway.config":{permission:Ot,targetKind:"local_repository"},"auth_strategy.update":{permission:Ot,targetKind:"local_repository"},"rate_limit.update":{permission:Ot,targetKind:"local_repository"},"meter.define":{permission:Ot,targetKind:"local_repository"},"backend.define":{permission:Ot,targetKind:"local_repository"},"business.contract_field.update":{permission:Ot,targetKind:"local_repository"},"rbac.enable":{permission:"business:rbac_update",targetKind:"business"},"rbac.disable":{permission:"business:rbac_update",targetKind:"business"},"rbac.subjects.read":{permission:"rbac:read",targetKind:"business"},"manifest.apply":{permission:Ot,targetKind:"local_repository"},"backend.status.read":{permission:"backend:read",targetKind:"business"},"brand.update":{permission:"brand:update",targetKind:"business"},"business.rollback":{permission:"business:rollback",targetKind:"business"}},v0=new Set(["subscriber_portal","human_decision","runtime_surface","credential_administration"]);function wa(t){return t.sideEffect!==void 0?t.sideEffect:/[._](read|list|status|show|top|log|latency|timeseries|export)$/.test(t.key)?"read":"write"}var FW=new Set(["business","organization","self","local_repository"]);function VW(t,e){if(!/^[a-z_]+:[a-z_]+$/.test(e.permission)||e.permission.includes("*"))throw new Error(`Agent operation ${t.key} must declare one exact permission`);if(!FW.has(e.targetKind))throw new Error(`Agent operation ${t.key} has an invalid target kind`);if(e.permission===Ot){if(e.targetKind!=="local_repository")throw new Error(`Local repository operation ${t.key} has an invalid authorization binding`);if(wa(t)!=="write")throw new Error(`Local repository operation ${t.key} has a read side effect but uses write-effect authority`);return}let n=Ea[e.permission];if(n===void 0)throw new Error(`Agent operation ${t.key} uses an unknown platform permission`);let i=wa(t),r=t.sideEffect==="read"&&n.effect==="write";if(i!==n.effect&&!r)throw new Error(`Agent operation ${t.key} has ${i} side effect but uses ${n.effect}-effect authority`);if(!n.allowedTargetKinds.includes(e.targetKind))throw new Error(`Agent operation ${t.key} uses a target kind not allowed by ${e.permission}`)}function qW(t){let e=new Set;for(let n of t){if(e.has(n.key))throw new Error(`Duplicate platform operation key: ${n.key}`);e.add(n.key);let i=n.agentDiscoverableHandoff===!0&&n.agentVisibility==="visible"&&n.authorization===void 0&&n.unavailable?.reason==="subscriber_portal";if(n.agentDiscoverableHandoff===!0&&!i)throw new Error(`Discoverable handoff ${n.key} has an invalid agent visibility binding`);if(n.agentVisibility==="excluded"){let r=PS[n.key],o=n.unavailable!==void 0&&v0.has(n.unavailable.reason),a=n.unavailable===void 0&&r!==void 0&&r.permission!==Ot&&Ea[r.permission].delegation==="browser_only";if(n.authorization!==void 0||!o&&!a)throw new Error(`Excluded operation ${n.key} has an invalid agent visibility binding`);continue}if(n.authorization===void 0){if(i)continue;throw new Error(`Agent operation ${n.key} is missing an authorization binding`)}VW(n,n.authorization)}}var yg=KW.map(t=>{if(t.unavailable!==void 0&&v0.has(t.unavailable.reason)&&t.agentDiscoverableHandoff!==!0)return{...t,sideEffect:wa(t),agentVisibility:"excluded",authorization:void 0};let n=PS[t.key];return n!==void 0&&n.permission!==Ot&&Ea[n.permission].delegation==="browser_only"?{...t,sideEffect:wa(t),agentVisibility:"excluded",authorization:void 0}:n===void 0?{...t,sideEffect:wa(t),agentVisibility:"visible",authorization:void 0}:{...t,sideEffect:wa(t),agentVisibility:"visible",authorization:n}});qW(yg);var fbe=yg.filter(t=>t.agentVisibility==="visible");for(let t of Object.keys(PS))if(!yg.some(e=>e.key===t))throw new Error(`Authorization binding references unknown operation: ${t}`);var HW={"business.list":{summary:"List businesses in the current org",description:"List every business in the authenticated FartherShore workspace (id, name, status). Read-only; use this to discover business ids for the other tools.",destructive:!1,oneTimeSecret:!1,preview:!1,pagination:"offset"},"business.read":{summary:"Show a business",description:"Show a business",destructive:!1,oneTimeSecret:!1,preview:!1},"business.routes.read":{summary:"List a business's compiled routes",description:"List a business's compiled routes",destructive:!1,oneTimeSecret:!1,preview:!1},"business.subdomain_availability.read":{summary:"Check whether a slug is free to use as a business subdomain before creating it",description:"Check whether a candidate slug is free to use as a business subdomain (normalized, blocked-word and collision checked). Read-only; run before fs_business_create.",destructive:!1,oneTimeSecret:!1,preview:!1},"business.config_attempts.read":{summary:"List rejected configuration attempts for a business",description:"List rejected configuration attempts for a business",destructive:!1,oneTimeSecret:!1,preview:!1},"business.contract.read":{summary:"Show a business's accepted contract synopsis",description:"Show a business's accepted contract synopsis",destructive:!1,oneTimeSecret:!1,preview:!1},"business.status":{summary:"Show whether one environment is fully live: its lifecycle, release, and whether every part serves that release",description:"Check one environment of a business, by id or slug: its lifecycle state, the release it should serve, and whether every part of the environment is serving exactly that release yet. Use it to prove a publish is fully live. Read-only.",destructive:!1,oneTimeSecret:!1,preview:!1},"rbac.read":{summary:"Show a business's Managed-RBAC state: the platform `rbacEnabled` flag",description:"Show a business's Managed-RBAC state: the platform `rbacEnabled` flag.",destructive:!1,oneTimeSecret:!1,preview:!1},"rbac.enable":{summary:"Enable Managed RBAC for a business",description:"Enable Managed RBAC for a business. Subscriber organizations can then manage roles in their portal. Safe to repeat: enabling it when already enabled changes nothing.",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"rbac.read"}},"rbac.disable":{summary:"Disable Managed RBAC for a business",description:"Disable Managed RBAC for a business. Subscriber roles and assignments are kept, so enabling it again restores them. Safe to repeat: disabling it when already disabled changes nothing.",destructive:!0,oneTimeSecret:!1,preview:!1,reconcile:{op:"rbac.read"}},"rbac.subjects.read":{summary:"List the raw permission subjects subscriber organizations can assemble into their own roles (repo-owned: authored via fs.group permission config in business/)",description:"List a business's raw permission vocabulary (subject, verbs, escalatory verbs, description). The SDK/compiler do not create roles: each subscribing organization assembles this catalog into its own CUSTOM roles, default, and assignments. Subjects are declared via permission-carrying `fs.group(id, routes, { permission })` in the business/ repo; run `farthershore validate` and push to change them. Read-only.",destructive:!1,oneTimeSecret:!1,preview:!1},"business.create":{summary:"Create a new business and provision its managed GitHub repo",description:"Create a new business and provision its managed GitHub repo",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"business.list"}},"brand.update":{summary:"Update business presentation metadata",description:"Update a business's brand and presentation \u2014 display name, description, icon, logo (wordmark), key prefix, and organization-page visibility. Plans, pricing, routes, and backend origins are managed through their dedicated surfaces. Only the fields you pass are changed.",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"business.read"}},"business.publish":{summary:"Publish a draft business (make it live) and cut a versioned release with an auto-computed semver. Requires at least one plan, a bound backend, and a verified Stripe connection",description:"Publish a business \u2014 validate its current spec and queue a versioned release with an auto-computed semver. Use business status to prove it is live.",destructive:!1,oneTimeSecret:!1,preview:!0,reconcile:{op:"business.status"}},"business.rollback":{summary:"Roll back a prior business publish workflow",description:"Roll back a prior business publish workflow",destructive:!0,oneTimeSecret:!1,preview:!1,reconcile:{op:"business.status"}},"business.delete":{summary:"Permanently delete a business (stage only)",description:"(stage only) Permanently delete a business. Requires --yes. Registered only in the stage channel (`make cli-stage`); production businesses are deleted from the dashboard.",destructive:!0,oneTimeSecret:!1,preview:!1,reconcile:{op:"business.list"}},"business.preview_env.set":{summary:"Configure automatic preview-environment creation for a business",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/.",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"environment.read"}},"business.docs.enable":{summary:"Enable docs for a business (publish/serve docs scaffold)",description:"Enable docs for a business \u2014 published docs become available in the portal. Safe to repeat: enabling them when already enabled changes nothing.",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"business.read"}},"business.docs.disable":{summary:"Disable docs for a business (stop publishing/serving docs; scaffold kept in the repo)",description:"Disable docs for a business \u2014 docs are no longer shown in the portal. The docs scaffold stays in the repo, so enabling them again restores them. Safe to repeat: disabling them when already disabled changes nothing.",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"business.read"}},"apply_timeline.list":{summary:"List a business's Apply Timeline: repo-triggered manifest applies (PRs, pushes, releases), checks, semantic diffs, and apply phases",description:"List a business's Apply Timeline: repo-triggered manifest applies (PRs, pushes, releases), checks, semantic diffs, and apply phases.",destructive:!1,oneTimeSecret:!1,preview:!1},"apply_timeline.read":{summary:"Inspect one Apply Timeline entry by id, release tag, PR number, branch, or commit SHA",description:"Inspect one Apply Timeline entry by id, release tag, PR number, branch, or commit SHA.",destructive:!1,oneTimeSecret:!1,preview:!1},"change_set.propose":{summary:"Propose a governed ChangeSet against a subscriber (agent/builder proposer; a human approves + applies in the portal)",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.",destructive:!1,oneTimeSecret:!1,preview:!0,reconcile:{op:"change_set.proposal_list"}},"change_set.preview":{summary:"Simulate + store a preview on a proposed ChangeSet (rides the propose authority)",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.",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"change_set.proposal_read"}},"change_set.proposal_list":{summary:"List governed ChangeSets proposed against a subscriber",description:"List governed ChangeSets proposed against a subscriber (Agent Proposal Flow). Read-only; use it to discover proposal ids + their status before previewing.",destructive:!1,oneTimeSecret:!1,preview:!1,pagination:"cursor"},"change_set.proposal_read":{summary:"Read one governed ChangeSet proposed against a subscriber",description:"Read one governed ChangeSet proposed against a subscriber (Agent Proposal Flow) \u2014 its operations, risk, simulation, approvals, and status. Read-only.",destructive:!1,oneTimeSecret:!1,preview:!1},"plan.read":{summary:"List plans for a business",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. Without environmentId the PRODUCTION plans are returned; pass environmentId to see what a preview environment serves. Pass the business id from fs_business_list.",destructive:!1,oneTimeSecret:!1,preview:!1,pagination:"offset"},"environment.read":{summary:"List environments for a business",description:"List a business's preview environments (name, branch, hostnames). Production is not an environment row: it is the live business, addressed with `--env production` (or by omitting the environment) on every verb that takes one. The API returns only preview environment rows; the CLI and MCP listings prepend a synthetic `production` row with `id: null` and no branch. Read-only.",destructive:!1,oneTimeSecret:!1,preview:!1,pagination:"offset"},"environment.create":{summary:"Create a preview environment bound to a git branch",description:"Create a preview environment bound to a git branch. Provide a name and the git branch it tracks.",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"environment.read"}},"environment.delete":{summary:"Delete an environment by name",description:"Delete an environment by name. Requires --yes.",destructive:!0,oneTimeSecret:!1,preview:!1,reconcile:{op:"environment.read"}},"backend.read":{summary:"List backends for a business (id, scope, name, transport, status)",description:"List a business's backends (origins) \u2014 id, scope (production|environment), environmentId, name, slug, transport (direct|tunnel), default flag, and derived status. Backends are per-(business, environment) rows, so the same declared backend can legitimately appear once per scope and be default in each. Read-only.",destructive:!1,oneTimeSecret:!1,preview:!1,pagination:"offset"},"backend.create":{summary:"Create a backend (default transport: direct)",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.",destructive:!1,oneTimeSecret:!1,preview:!0,reconcile:{op:"backend.read"}},"backend.bind":{summary:"Bind a logical backend to a direct upstream in one environment",description:"Bind a logical backend id to a concrete direct upstream URL in one environment. Previews inherit the production backend until a concrete override is bound. Omit environmentId for production.",destructive:!1,oneTimeSecret:!1,preview:!0,reconcile:{op:"backend.read"}},"backend.delete":{summary:"Delete a backend (revokes its runtime tokens)",description:"Delete a backend (origin). Traffic routed to it stops; re-create to restore.",destructive:!0,oneTimeSecret:!1,preview:!1,reconcile:{op:"backend.read"}},"runtime_token.read":{summary:"List runtime tokens for a business",description:"List a business's runtime tokens (fsrt_) \u2014 id, last-four, operations, status, and env scope. Read-only; secrets are never shown.",destructive:!1,oneTimeSecret:!1,preview:!1,pagination:"offset"},"runtime_token.mint":{summary:"Create a runtime token (returns FS_RUNTIME_TOKEN once)",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).",destructive:!1,oneTimeSecret:!0,preview:!1,reconcile:{op:"runtime_token.read"}},"runtime_token.rotate":{summary:"Rotate a runtime token (returns a fresh FS_RUNTIME_TOKEN once)",description:"Rotate a runtime token: mint a fresh secret carrying the same scope and revoke the old one. Returns the new plaintext token ONCE.",destructive:!0,oneTimeSecret:!0,preview:!1,reconcile:{op:"runtime_token.read"}},"runtime_token.revoke":{summary:"Revoke a runtime token",description:"Revoke a runtime token. The backend using it stops verifying.",destructive:!0,oneTimeSecret:!1,preview:!1,reconcile:{op:"runtime_token.read"}},"frontend.status":{summary:"Show the current frontend release, recent releases, and recent builds (incl. failure reasons)",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.",destructive:!1,oneTimeSecret:!1,preview:!1},"frontend.rollback":{summary:"Roll the business frontend back to a prior release (re-activate its releaseId)",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.",destructive:!0,oneTimeSecret:!1,preview:!0,reconcile:{op:"frontend.status"}},"webhook.read":{summary:"List API-managed webhook endpoints",description:"List API-managed outbound webhook endpoints for a business. Read-only; signing secrets are never returned.",destructive:!1,oneTimeSecret:!1,preview:!1,pagination:"offset"},"webhook.create":{summary:"Create an API-managed webhook endpoint",description:"Create an outbound webhook endpoint for a business. Returns the signing secret once.",destructive:!1,oneTimeSecret:!0,preview:!1,reconcile:{op:"webhook.read"}},"webhook.update":{summary:"Update a webhook endpoint's URL, events, environment or enabled state",description:"Update an API-managed webhook endpoint's URL, event list, environment scope and/or enabled state. Use fs_webhook_rotate_secret for a new signing secret.",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"webhook.read"}},"webhook.delete":{summary:"Delete an API-managed webhook endpoint",description:"Delete an outbound webhook endpoint.",destructive:!0,oneTimeSecret:!1,preview:!1,reconcile:{op:"webhook.read"}},"webhook.test":{summary:"Send a signed test event to a webhook endpoint",description:"Send a signed test event to an API-managed webhook endpoint and persist the delivery result.",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"webhook.delivery.read"}},"webhook.trigger":{summary:"Send a signed sample of a specific event (e.g. payment.failed) to a webhook endpoint",description:"Send a signed sample of a specific event (e.g. payment.failed) to a webhook endpoint",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"webhook.delivery.read"}},"webhook.listen":{summary:"Tunnel platform webhooks to a local receiver and tail deliveries until Ctrl-C",description:"Tunnel platform webhooks to a local receiver and tail deliveries until Ctrl-C",destructive:!1,oneTimeSecret:!0,preview:!1,reconcile:{op:"webhook.read"}},"webhook.rotate_secret":{summary:"Issue a new signing secret (returned once); the old one keeps verifying for 24h",description:"Issue a replacement signing secret for a webhook endpoint. Returns the new secret once; deliveries carry both signatures for 24 hours so the receiver can roll over without a gap.",destructive:!0,oneTimeSecret:!0,preview:!1,reconcile:{op:"webhook.read"}},"webhook.event_type.read":{summary:"List the event names a webhook endpoint can subscribe to",description:"List the event names a webhook endpoint can subscribe to, with descriptions.",destructive:!1,oneTimeSecret:!1,preview:!1},"webhook.delivery.read":{summary:"List recent delivery attempts for a webhook endpoint",description:"List recent delivery attempts for a webhook endpoint. Payload and response body are intentionally omitted.",destructive:!1,oneTimeSecret:!1,preview:!1,pagination:"offset"},"agents.list":{summary:"List a business's operating agents + enableable roles",description:"The agent roster for a business: the enabled/disabled Operator plus any roles that can still be enabled. Read-only.",destructive:!1,oneTimeSecret:!1,preview:!1},"agents.status":{summary:"The Operator's activation state, recent runs, and usage totals",description:"The Operator's activation state, recent run history (newest-first), and lifetime usage totals (LLM tokens + actions). Read-only.",destructive:!1,oneTimeSecret:!1,preview:!1},"agents.runs.show":{summary:"One run's full paper trail: trace, launches, action receipts",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.",destructive:!1,oneTimeSecret:!1,preview:!1},"agents.enable":{summary:"Turn the Operator on (creates it on first enable)",description:"Turn the business's Operator agent on (created on first enable). It runs autonomously on its cadence; agent-work billing accrues while enabled.",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"agents.status"}},"agents.disable":{summary:"Turn the Operator off (stops runs + billing)",description:"Turn the Operator off: the dispatcher stops scheduling runs and agent-work billing stops accruing. Re-enable at any time.",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"agents.status"}},"bulletin.list":{summary:"List the agents' bulletin feed (trends + change requests)",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.",destructive:!1,oneTimeSecret:!1,preview:!1,pagination:"cursor"},"bulletin.read":{summary:"Show one bulletin post (full body + data payload)",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.",destructive:!1,oneTimeSecret:!1,preview:!1},"bulletin.ack":{summary:"Acknowledge a post (the coding agent picked it up)",description:"Mark a bulletin post acknowledged \u2014 the hand-off signal that the coding agent (or builder) has picked the item up. Forward-only; acknowledging an already-acknowledged post changes nothing.",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"bulletin.read"}},"bulletin.resolve":{summary:"Resolve a post (the work landed)",description:"Mark a bulletin post resolved \u2014 the referenced work landed (or the trend was addressed). Terminal state.",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"bulletin.read"}},"promo_code.read":{summary:"List API-managed promo codes for checkout",description:"List API-managed promo codes for a business. Promo codes are checkout operational state, not repo-authored Business SDK state.",destructive:!1,oneTimeSecret:!1,preview:!1},"promo_code.create":{summary:"Create an API-managed checkout 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.",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"promo_code.read"}},"promo_code.update":{summary:"Update an API-managed checkout promo code",description:"Update an API-managed checkout promo code. Spec changes rotate the Stripe coupon/promotion code behind the scenes.",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"promo_code.read"}},"promo_code.archive":{summary:"Archive a checkout promo code",description:"Archive an API-managed checkout promo code.",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"promo_code.read"}},"promo_code.reactivate":{summary:"Reactivate an archived checkout promo code",description:"Reactivate an archived API-managed checkout promo code.",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"promo_code.read"}},"consumer.read":{summary:"List a business's consumers, one consumer's API keys, or its Managed-RBAC roles",description:"Reads a business's consumers (subscribers). The same capability lists one consumer's API keys (metadata only; key material is never returned) and one subscriber's Managed-RBAC roles.",destructive:!1,oneTimeSecret:!1,preview:!1},"consumer.block":{summary:"Block a consumer (revoking every API key) or revoke one of its API keys",description:"Blocks a consumer and revokes every active API key, or surgically revokes ONE of the consumer's API keys. Revoked keys stop authenticating.",destructive:!0,oneTimeSecret:!1,preview:!1,reconcile:{op:"consumer.read"}},"consumer.migrate_latest":{summary:"Move one consumer to the active head of their plan lineage",description:"Move one consumer onto the current head of their plan lineage immediately. Operates on live subscription state.",destructive:!0,oneTimeSecret:!1,preview:!1,reconcile:{op:"consumer.read"}},"consumer.remove":{summary:"Remove a user from live business access",description:"Remove a user/consumer from live business access: cancel subscriptions, revoke credentials, purge related live state, and archive the subscriber while retaining billing/audit history. Destructive and convergent on retry; it does not edit repo-authored business behavior.",destructive:!0,oneTimeSecret:!1,preview:!1,reconcile:{op:"consumer.read"}},"consumer.roles.assign":{summary:"Replace a client-org member's Managed-RBAC business roles (builder support override)",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.",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"consumer.read"}},"consumer.rbac.enable":{summary:"Turn Managed-RBAC enforcement on for one subscriber",description:"Turn Managed-RBAC enforcement ON for ONE subscriber, and optionally set the org's default role. Enforcement requires BOTH this flag and the product flag (rbac.enable). Safe to repeat. Live-state operation; it does not edit repo-authored business behavior.",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"consumer.read"}},"consumer.rbac.disable":{summary:"Turn Managed-RBAC enforcement off for one subscriber",description:"Turn Managed-RBAC enforcement OFF for ONE subscriber. This is an ACCESS EXPANSION \u2014 with enforcement off, credential permission resolution can return ['*']. Role definitions are preserved for re-enable. Live-state operation; it does not edit repo-authored business behavior.",destructive:!0,oneTimeSecret:!1,preview:!1,reconcile:{op:"consumer.read"}},"consumer.role.create":{summary:"Create a CUSTOM Managed-RBAC role for one subscriber",description:"Create a CUSTOM Managed-RBAC role for ONE subscriber from the business's derived permission catalog. A duplicate role key is refused. Live-state operation; it does not edit repo-authored business behavior.",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"consumer.read"}},"consumer.role.update":{summary:"Rename or re-permission one subscriber Managed-RBAC role",description:"Rename and/or re-permission ONE subscriber Managed-RBAC role. `permissions` is set-replace \u2014 the given list becomes the role's full grant. Live-state operation; it does not edit repo-authored business behavior.",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"consumer.read"}},"consumer.role.delete":{summary:"Delete one subscriber Managed-RBAC role",description:"Delete ONE subscriber Managed-RBAC role. The key is stripped from every member and credential that holds it and cleared as the org default. Live-state operation; it does not edit repo-authored business behavior.",destructive:!0,oneTimeSecret:!1,preview:!1,reconcile:{op:"consumer.read"}},"business_variable.read":{summary:"List variables: FS_PUBLIC_* values, secret metadata only",description:"Lists variables. Returns readable FS_PUBLIC_* values; every other variable is a write-only secret and only its lifecycle metadata is returned.",destructive:!1,oneTimeSecret:!1,preview:!1},"business_variable.create":{summary:"Create a variable from stdin (secret unless named FS_PUBLIC_*)",description:"Creates an immutable variable generation. An FS_PUBLIC_-prefixed name is public (inlined into the frontend bundle); any other name is a write-only secret whose plaintext is accepted once and never returned.",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"business_variable.read"}},"business_variable.rotate":{summary:"Rotate a variable from stdin (the name, and so the class, is unchanged)",description:"Creates an immutable variable generation. An FS_PUBLIC_-prefixed name is public (inlined into the frontend bundle); any other name is a write-only secret whose plaintext is accepted once and never returned.",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"business_variable.read"}},"business_variable.revoke":{summary:"Revoke runtime access to a secret",description:"Revokes runtime access after explicit confirmation and returns a durable operation.",destructive:!0,oneTimeSecret:!1,preview:!1,reconcile:{op:"business_variable.read"}},"business_variable.delete":{summary:"Destroy a revoked secret in Main or preview",description:"Permanently destroys ciphertext after acknowledged revocation. Main and preview use the same contract.",destructive:!0,oneTimeSecret:!1,preview:!1,reconcile:{op:"business_variable.read"}},"business_variable.operation.read":{summary:"Read a durable secret mutation operation",description:"Reads publication status and frozen impact metadata.",destructive:!1,oneTimeSecret:!1,preview:!1},"agreement.read":{summary:"List or show a business's economic agreements and their pins",description:"Lists a business's economic agreements, shows one agreement with its terms, and shows the agreement pins that bind subscribers to a version.",destructive:!1,oneTimeSecret:!1,preview:!1,pagination:"offset"},"agreement.create":{summary:"Create an economic agreement (previews first; commits with the confirmation token)",description:"Create an economic agreement (confirm-gated: previews first; pass --confirm <token> to commit)",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"agreement.read"}},"agreement.amend":{summary:"Amend an agreement's contract terms (append-only; previews first; commits with the confirmation token)",description:"Amend an agreement's contract terms (append-only; confirm-gated: previews first; pass --confirm <token> to commit)",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"agreement.read"}},"usage.read":{summary:"Show usage summary for the last 30 days",description:"Read a business's usage summary \u2014 metered request counts and tier utilization. Without environmentId this rolls up EVERY environment. Read-only.",destructive:!1,oneTimeSecret:!1,preview:!1,pagination:"offset"},"persona.bootstrap":{summary:"Issue a fresh fsk_test_ API key in a test environment",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.",destructive:!1,oneTimeSecret:!0,preview:!1,reconcile:{op:"persona.read"}},"persona.read":{summary:"List personas for a test environment",description:"List a business environment's test personas (id, label, status). Read-only.",destructive:!1,oneTimeSecret:!1,preview:!1},"persona.login":{summary:"Open a browser signed in as a test persona",description:"Open a browser signed in as a test persona",destructive:!1,oneTimeSecret:!0,preview:!1},"persona.rotate":{summary:"Rotate a persona's test API key and return the new key once",description:"Rotate a test persona's API key. Returns the replacement key once.",destructive:!0,oneTimeSecret:!0,preview:!1,reconcile:{op:"persona.read"}},"persona.delete":{summary:"Delete a temporary persona and its test-owned identity state",description:"Delete a temporary test persona, including its credential, browser access, and test-owned identity state.",destructive:!0,oneTimeSecret:!1,preview:!1,reconcile:{op:"persona.read"}},"analytics.timeseries":{summary:"Request (or denial) 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.",destructive:!1,oneTimeSecret:!1,preview:!1},"analytics.latency":{summary:"Request latency percentiles (p50 / p95 / p99)",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.",destructive:!1,oneTimeSecret:!1,preview:!1},"analytics.top":{summary:"Top callers / event types / environments by volume",description:"Ranked breakdown of archive events by caller, event type, or environment. Read-only.",destructive:!1,oneTimeSecret:!1,preview:!1},"analytics.log":{summary:"Recent requests \u2014 the live metering signal, newest first",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.",destructive:!1,oneTimeSecret:!1,preview:!1},"organization.list":{summary:"List builder organizations available to the caller",description:"List builder organizations available to the caller",destructive:!1,oneTimeSecret:!1,preview:!1},"organization.create":{summary:"Create a team or company organization",description:"Create a team or company organization",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"organization.list"}},"organization.role.list":{summary:"List the roles available in an organization",description:"List the roles available in an organization",destructive:!1,oneTimeSecret:!1,preview:!1},"organization.role.show":{summary:"Show one organization role and its exact permissions",description:"Show one organization role and its exact permissions",destructive:!1,oneTimeSecret:!1,preview:!1},"organization.role.create":{summary:"Create a custom organization role",description:"Create a custom organization role",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"organization.role.list"}},"organization.role.update":{summary:"Update a built-in or custom organization role",description:"Update a built-in or custom organization role",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"organization.role.show"}},"organization.role.delete":{summary:"Delete an unused custom organization role",description:"Delete an unused custom organization role",destructive:!0,oneTimeSecret:!1,preview:!1,reconcile:{op:"organization.role.list"}},"organization.member.list":{summary:"List organization members",description:"List organization members",destructive:!1,oneTimeSecret:!1,preview:!1,pagination:"offset"},"organization.invitation.create":{summary:"Invite a member to an organization",description:"Invite a member to an organization. Returns the raw invitation token once; invitation listings never show it.",destructive:!1,oneTimeSecret:!0,preview:!1,reconcile:{op:"organization.invitation.list_sent"}},"organization.invitation.list":{summary:"List the caller's pending organization invitations",description:"List the caller's pending organization invitations",destructive:!1,oneTimeSecret:!1,preview:!1},"organization.invitation.list_sent":{summary:"List an organization's outstanding sent invitations",description:"List an organization's outstanding sent invitations",destructive:!1,oneTimeSecret:!1,preview:!1},"organization.invitation.revoke":{summary:"Revoke a pending organization invitation",description:"Revoke a pending organization invitation",destructive:!0,oneTimeSecret:!1,preview:!1,reconcile:{op:"organization.invitation.list_sent"}},"organization.invitation.accept":{summary:"Accept an organization invitation",description:"Accept an organization invitation",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"organization.list"}},"organization.member.update":{summary:"Change an organization member's role",description:"Change an organization member's role",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"organization.member.list"}},"organization.member.remove":{summary:"Remove a member from an organization",description:"Remove a member from an organization",destructive:!0,oneTimeSecret:!1,preview:!1,reconcile:{op:"organization.member.list"}},"organization.ownership.transfer":{summary:"Transfer primary ownership of a team or company organization to another member",description:"Transfer primary ownership of a team or company organization to another existing member. Destructive and irreversible for the caller; requires the signed-in owner's session.",destructive:!0,oneTimeSecret:!1,preview:!1,reconcile:{op:"organization.overview.read"}},"organization.delete":{summary:"Delete an organization and its managed state",description:"Delete an organization and its managed state",destructive:!0,oneTimeSecret:!1,preview:!1,reconcile:{op:"organization.list"}},"organization.overview.read":{summary:"Read the organization overview shown on the dashboard",description:"Read the organization overview shown on the dashboard",destructive:!1,oneTimeSecret:!1,preview:!1},"organization.bulletin.read":{summary:"List the consolidated bulletin across the organization",description:"List the consolidated bulletin across the organization",destructive:!1,oneTimeSecret:!1,preview:!1,pagination:"cursor"},"org_maker_token.permission_catalog.read":{summary:"List the exact permissions a human may delegate to an org MakerToken",description:"List the exact permissions a human may delegate to an org MakerToken",destructive:!1,oneTimeSecret:!1,preview:!1},"org_maker_token.list":{summary:"List organization-owned MakerTokens",description:"List organization-owned MakerTokens",destructive:!1,oneTimeSecret:!1,preview:!1,pagination:"offset"},"org_maker_token.create":{summary:"Create or request approval for an organization-owned MakerToken",description:"Create or request approval for an organization-owned MakerToken",destructive:!1,oneTimeSecret:!0,preview:!1,reconcile:{op:"org_maker_token.list"}},"org_maker_token.update":{summary:"Replace an org MakerToken's grants or request approval for the change",description:"Replace an org MakerToken's grants or request approval for the change",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"org_maker_token.list"}},"org_maker_token.approval_list":{summary:"List pending org MakerToken approval requests",description:"List pending org MakerToken approval requests",destructive:!1,oneTimeSecret:!1,preview:!1},"org_maker_token.approve":{summary:"Approve an org MakerToken request, optionally trimming its grants",description:"Approve an org MakerToken request, optionally trimming its grants",destructive:!1,oneTimeSecret:!0,preview:!1,reconcile:{op:"org_maker_token.approval_list"}},"org_maker_token.deny":{summary:"Deny an org MakerToken approval request",description:"Deny an org MakerToken approval request",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"org_maker_token.approval_list"}},"org_maker_token.rotate":{summary:"Rotate an org MakerToken and reveal its replacement once",description:"Rotate an org MakerToken and reveal its replacement once",destructive:!0,oneTimeSecret:!0,preview:!1,reconcile:{op:"org_maker_token.list"}},"org_maker_token.revoke":{summary:"Permanently revoke an org MakerToken",description:"Permanently revoke an org MakerToken",destructive:!0,oneTimeSecret:!1,preview:!1,reconcile:{op:"org_maker_token.list"}},"stripe_connection.read":{summary:"Show the Stripe connection a business bills through (business override or org default)",description:"Read the Stripe Connect account a business bills through \u2014 a per-business override when present, otherwise the organization default \u2014 including onboarding and tax-enrollment state. Read-only. Connecting Stripe is browser-only and has no tool.",destructive:!1,oneTimeSecret:!1,preview:!1},"stripe_connection.delete":{summary:"Remove a business's per-business Stripe override so it bills through the org default again",description:"Remove a business's per-business Stripe Connect override so it bills through the organization default again. Refused while any subscription is still money-bearing. Destructive live-state operation; it does not edit repo-authored business behavior.",destructive:!0,oneTimeSecret:!1,preview:!1,reconcile:{op:"stripe_connection.read"}},"audit_log.read":{summary:"List organization or business-scoped audit-log rows",description:"List organization or business-scoped audit-log rows",destructive:!1,oneTimeSecret:!1,preview:!1,pagination:"cursor"},"audit_log.business.read":{summary:"List one business's audit-log rows",description:"List one business's audit-log rows",destructive:!1,oneTimeSecret:!1,preview:!1,pagination:"cursor"},"audit_log.export":{summary:"Export organization or business-scoped audit logs as CSV",description:"Export organization or business-scoped audit logs as CSV",destructive:!1,oneTimeSecret:!1,preview:!1},"audit_log.business.export":{summary:"Export one business's audit logs as CSV",description:"Export one business's audit logs as CSV",destructive:!1,oneTimeSecret:!1,preview:!1},"notification.preferences.read":{summary:"Get notification (email) opt-out preferences",description:"Get notification (email) opt-out preferences",destructive:!1,oneTimeSecret:!1,preview:!1},"notification.preferences.update":{summary:"Patch notification (email) opt-out preferences",description:"Patch notification (email) opt-out preferences",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"notification.preferences.read"}},"auth.context.issue":{summary:"Issue a short-lived gateway context token for a subscriber member",description:"Issue a short-lived gateway context token for a subscriber member",destructive:!1,oneTimeSecret:!0,preview:!1},"tax_settings.read":{summary:"Show a business's Stripe Tax settings",description:"Show a business's Stripe Tax settings",destructive:!1,oneTimeSecret:!1,preview:!1},"tax_settings.update":{summary:"Update a business's Stripe Tax settings",description:"Update a business's Stripe Tax settings",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"tax_settings.read"}},"resource_count.report":{summary:"Report a subscription resource count",description:"Report a subscription resource count",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"usage.read"}},"denial.read":{summary:"Explain a denied request",description:"Explain a denied request",destructive:!1,oneTimeSecret:!1,preview:!1},"business_dependents.read":{summary:"List active dependents for a business route",description:"List active dependents for a business route",destructive:!1,oneTimeSecret:!1,preview:!1},"workflow.replay":{summary:"Preview a historical billing replay",description:"Preview a historical billing replay",destructive:!1,oneTimeSecret:!1,preview:!1},"workflow.rollback":{summary:"Preview restoring a business config commit",description:"Preview restoring a business config commit",destructive:!1,oneTimeSecret:!1,preview:!1},"automation_rule.read":{summary:"List automation rules",description:"List automation rules",destructive:!1,oneTimeSecret:!1,preview:!1,pagination:"cursor"},"automation_rule.create":{summary:"Create an automation rule",description:"Create an automation rule",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"automation_rule.read"}},"automation_rule.update":{summary:"Update an automation rule",description:"Update an automation rule",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"automation_rule.read"}},"automation_rule.delete":{summary:"Delete an automation rule",description:"Delete an automation rule",destructive:!0,oneTimeSecret:!1,preview:!1,reconcile:{op:"automation_rule.read"}},"knowledge.guide.read":{summary:"List platform guide resources",description:"List platform guide resources",destructive:!1,oneTimeSecret:!1,preview:!1,pagination:"cursor"},"knowledge.business.read":{summary:"List one business's knowledge resources",description:"List one business's knowledge resources",destructive:!1,oneTimeSecret:!1,preview:!1,pagination:"cursor"},"plan.create":{summary:"Create a plan (repo-authored)",description:"Declare the plan with `fs.plan()` in the business repo's business/ folder and push \u2014 the platform applies it.",destructive:!1,oneTimeSecret:!1,preview:!1},"plan.update":{summary:"Change a plan's shape (repo-authored)",description:"Declare the plan's new shape with `fs.plan()` in the business repo's business/ folder and push \u2014 the platform applies it.",destructive:!1,oneTimeSecret:!1,preview:!1},"plan.delete":{summary:"Delete a plan (repo-authored)",description:"Declare the removal (delete the `fs.plan()` call) in the business repo's business/ folder and push \u2014 the platform applies it.",destructive:!0,oneTimeSecret:!1,preview:!1},"plan.variant.create":{summary:"Create a plan variant (repo-authored)",description:"Declare the plan variant with `fs.plan()` in the business repo's business/ folder and push \u2014 the platform applies it.",destructive:!1,oneTimeSecret:!1,preview:!1},"plan.promote":{summary:"Promote a plan version (repo-authored)",description:"Declare the promoted plan version in the business repo's business/ folder and push \u2014 the platform applies it.",destructive:!1,oneTimeSecret:!1,preview:!1},"plan.rollback":{summary:"Roll a plan back to a prior shape (repo-authored)",description:"Declare the prior plan shape (revert the commit) in the business repo's business/ folder and push \u2014 the platform applies it.",destructive:!0,oneTimeSecret:!1,preview:!1},"route.define":{summary:"Define a route (repo-authored)",description:"Declare the route with `fs.route()` in the business repo's business/ folder and push \u2014 the platform applies it.",destructive:!1,oneTimeSecret:!1,preview:!1},"gateway.config":{summary:"Configure the gateway (repo-authored)",description:"Declare the gateway block on `fs.business()` in the business repo's business/ folder and push \u2014 the platform applies it.",destructive:!1,oneTimeSecret:!1,preview:!1},"auth_strategy.update":{summary:"Change the auth strategy (repo-authored)",description:"Declare the auth strategy on `fs.business()` in the business repo's business/ folder and push \u2014 the platform applies it.",destructive:!1,oneTimeSecret:!1,preview:!1},"rate_limit.update":{summary:"Change plan or route limits (repo-authored)",description:"Declare the limits on the plan or route in the business repo's business/ folder and push \u2014 the platform applies it.",destructive:!1,oneTimeSecret:!1,preview:!1},"meter.define":{summary:"Define a meter (repo-authored)",description:"Declare the meter with `fs.meter()` in the business repo's business/ folder and push \u2014 the platform applies it.",destructive:!1,oneTimeSecret:!1,preview:!1},"backend.define":{summary:"Declare a backend (repo-authored)",description:"Declare the backend with `fs.backend()` in the business repo's business/ folder and push \u2014 the platform applies it.",destructive:!1,oneTimeSecret:!1,preview:!1},"business.contract_field.update":{summary:"Change a contractual business field (repo-authored)",description:"Declare the field (name / meters / subscriberChangePolicy) on `fs.business()` in the business repo's business/ folder and push \u2014 the platform applies it.",destructive:!1,oneTimeSecret:!1,preview:!1},"backend.status.read":{summary:"Return the last-persisted readiness verdict for a backend",description:"Return the last-persisted readiness verdict for a backend",destructive:!1,oneTimeSecret:!1,preview:!1},"persona.local_preview.issue":{summary:"Create a local-preview persona handoff and proxy lease",description:"Create a local-preview persona handoff and proxy lease",destructive:!1,oneTimeSecret:!0,preview:!1},"persona.local_preview.renew":{summary:"Renew a CLI local-preview proxy lease",description:"Renew a CLI local-preview proxy lease",destructive:!0,oneTimeSecret:!0,preview:!1},"persona.local_preview.revoke":{summary:"Revoke a CLI local-preview proxy lease",description:"Revoke a CLI local-preview proxy lease",destructive:!0,oneTimeSecret:!1,preview:!1},"organization.active.select":{summary:"Select the active organization",description:"Run `farthershore auth organization use <id-or-slug>` to change the stored default organization, or pass `--org <id>` on any command for a one-off selection. The dashboard's active-organization cookie is browser-local and is not emulated.",destructive:!1,oneTimeSecret:!1,preview:!1},"business.cors.update":{summary:"Update a business's CORS settings",description:"Updates the business's platform-owned CORS settings through the business PATCH surface.",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"business.read"}},"business.compile":{summary:"Validate a business-as-code Manifest IR envelope (dry-run compile)",description:"Validate a business-as-code Manifest IR envelope (dry-run compile)",destructive:!1,oneTimeSecret:!1,preview:!1},"manifest.apply":{summary:"Apply a compiled business manifest (git-triggered)",description:"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.",destructive:!1,oneTimeSecret:!1,preview:!1},"auth.context.read":{summary:"Read the authenticated caller's identity and runtime context",description:"Returns metadata about the authenticated credential and the caller's resolved runtime context (never secrets).",destructive:!1,oneTimeSecret:!1,preview:!1}},t0=HW;function GW(t){return Object.hasOwn(t0,t)?t0[t]:void 0}var ZW={analytics:["analytics"],apply_timeline:["changeSets","timeline"],auth:["auth"],auth_strategy:["gateway","authStrategy"],brand:["businesses","brand"],bulletin:["bulletin"],business_dependents:["platform","dependents"],business_variable:["variables"],denial:["platform","denials"],frontend:["frontend"],gateway:["gateway"],knowledge:["knowledge"],manifest:["manifest"],org_maker_token:["makerTokens"],rate_limit:["gateway","rateLimits"],rbac:["businesses","rbac"],resource_count:["platform","resourceCounts"],stripe_connection:["billing","stripe"],tax_settings:["billing","taxSettings"],usage:["usage"],workflow:["platform","workflowControl"]};function n0(t){return t.replace(/_([a-z0-9])/g,(e,n)=>n.toUpperCase())}function WW(t){return/(ss|x|ch|sh)$/.test(t)?`${t}es`:/[^aeiou]y$/.test(t)?`${t.slice(0,-1)}ies`:t.endsWith("s")?t:`${t}s`}function JW(t){let[e,...n]=t.split(".");if(!e||n.length===0)throw new Error(`Operation key "${t}" is not resource.verb`);return[...ZW[e]??[n0(WW(e))],...n.map(n0)]}var YW="FS_RUNTIME_TOKEN",XW={payload:"x-fs-metering",signature:"x-fs-metering-sig",token:"x-fs-metering-token"},gbe={environmentVariable:YW,presentation:XW.token,storage:"sha256-hash-only"},QW={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"},hbe=10*1024*1024,e9=["text/event-stream","application/octet-stream","multipart/form-data"],bbe=new Set(e9),mt={VALIDATION_ERROR:"VALIDATION_ERROR",CONFLICT:"CONFLICT",NOT_FOUND:"NOT_FOUND",NOT_IMPLEMENTED:"NOT_IMPLEMENTED",NOT_CONFIGURED:"NOT_CONFIGURED",RELEASE_PENDING_ACCEPTANCE:"RELEASE_PENDING_ACCEPTANCE",ROLLBACK_IN_FLIGHT:"ROLLBACK_IN_FLIGHT",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",INVALID_DRY_RUN:"INVALID_DRY_RUN",DRY_RUN_NOT_SUPPORTED:"DRY_RUN_NOT_SUPPORTED",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",TEST_PERSONA_ENVIRONMENT_NOT_READY:"TEST_PERSONA_ENVIRONMENT_NOT_READY",PERSONA_AUTH_DISABLED_IN_PROD:"PERSONA_AUTH_DISABLED_IN_PROD",LOCAL_PREVIEW_LEASE_INVALID:"LOCAL_PREVIEW_LEASE_INVALID",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",ORGANIZATION_HAS_PAID_SUBSCRIBERS:"ORGANIZATION_HAS_PAID_SUBSCRIBERS",BUSINESS_HAS_PAID_SUBSCRIBERS:"BUSINESS_HAS_PAID_SUBSCRIBERS",ORG_HAS_OUTSTANDING_BALANCE:"ORG_HAS_OUTSTANDING_BALANCE",PERSONAL_ORG_NOT_DELETABLE:"PERSONAL_ORG_NOT_DELETABLE",PERSONAL_OWNER_IMMUTABLE:"PERSONAL_OWNER_IMMUTABLE",PERSONAL_OWNER_AUTHORITY_NOT_DELEGABLE:"PERSONAL_OWNER_AUTHORITY_NOT_DELEGABLE",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",INVITATION_PENDING:"INVITATION_PENDING",ROLE_NOT_FOUND:"ROLE_NOT_FOUND",ROLE_KEY_CONFLICT:"ROLE_KEY_CONFLICT",ROLE_IN_USE:"ROLE_IN_USE",BUILT_IN_ROLE_NOT_DELETABLE:"BUILT_IN_ROLE_NOT_DELETABLE",ROLE_VERSION_CONFLICT:"ROLE_VERSION_CONFLICT",OWNER_ROLE_IMMUTABLE:"OWNER_ROLE_IMMUTABLE",ACCOUNT_ROLE_PROTECTED:"ACCOUNT_ROLE_PROTECTED",INVALID_PLATFORM_PERMISSION:"INVALID_PLATFORM_PERMISSION",INVALID_ROLE_KEY:"INVALID_ROLE_KEY",RBAC_REQUIRES_TEAM_ORG:"RBAC_REQUIRES_TEAM_ORG",RBAC_NOT_ENABLED_BY_PRODUCT:"RBAC_NOT_ENABLED_BY_PRODUCT",UNKNOWN_PERMISSION:"UNKNOWN_PERMISSION",RESERVED_PERMISSION_SUBJECT:"RESERVED_PERMISSION_SUBJECT",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",PLAN_SELECTION_STALE:"PLAN_SELECTION_STALE",PLAN_NOT_SELF_SERVE:"PLAN_NOT_SELF_SERVE",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",SUBSCRIPTION_NOT_CANCELLABLE:"SUBSCRIPTION_NOT_CANCELLABLE",INVALID_STATE:"INVALID_STATE",DUPLICATE_TRANSITION:"DUPLICATE_TRANSITION",ARCHIVED_TARGET:"ARCHIVED_TARGET",FREE_TO_PAID_VIA_CHECKOUT_ONLY:"FREE_TO_PAID_VIA_CHECKOUT_ONLY",PAID_TO_PROVIDERLESS_REQUIRES_PERIOD_END:"PAID_TO_PROVIDERLESS_REQUIRES_PERIOD_END",RESOURCE_LIMIT_EXCEEDED:"RESOURCE_LIMIT_EXCEEDED",RESOURCE_LIMIT_CHECK_UNAVAILABLE:"RESOURCE_LIMIT_CHECK_UNAVAILABLE",STRIPE_NOT_CONFIGURED:"STRIPE_NOT_CONFIGURED",STRIPE_NOT_CONNECTED:"STRIPE_NOT_CONNECTED",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",BACKEND_PROVISIONING_OUTCOME_UNKNOWN:"BACKEND_PROVISIONING_OUTCOME_UNKNOWN",SELF_APPROVAL_FORBIDDEN:"SELF_APPROVAL_FORBIDDEN",HUMAN_APPROVAL_REQUIRED:"HUMAN_APPROVAL_REQUIRED",GOVERNED_BY_CHANGE_SET:"GOVERNED_BY_CHANGE_SET"},_be={missing_token:mt.UNAUTHORIZED,invalid_token:mt.UNAUTHORIZED,context_unverified:mt.UNAUTHORIZED,missing_signature:mt.UNAUTHORIZED,malformed_signature:mt.UNAUTHORIZED,unknown_key_id:mt.UNAUTHORIZED,bad_signature:mt.UNAUTHORIZED,expired_signature:mt.UNAUTHORIZED,clock_skew:mt.UNAUTHORIZED,replayed_nonce:mt.UNAUTHORIZED,body_hash_mismatch:mt.UNAUTHORIZED,route_mismatch:mt.UNAUTHORIZED,environment_mismatch:mt.UNAUTHORIZED,jwks_unavailable:mt.SERVICE_UNAVAILABLE,body_too_large:mt.VALIDATION_ERROR,member_subject_required:mt.FORBIDDEN,service_subject_required:mt.FORBIDDEN,surface_not_allowed:mt.FORBIDDEN},vbe=Object.values(QW);function t9(t){if(t===mt.BUSINESS_HAS_PAID_SUBSCRIBERS)return"Cancel or migrate this business's paid subscribers before deleting it.";if(t===mt.ORGANIZATION_HAS_PAID_SUBSCRIBERS)return"Cancel or migrate the paid subscribers of every business in this organization before deleting it."}var ze=class extends Error{constructor(t,e,n){super(t9(n?.code)??t,n?.cause===void 0?void 0:{cause:n.cause}),this.status=e,this.name="FartherShoreError",this.code=n?.code,this.details=n?.details,this.param=n?.param,this.retryable=n?.retryable,this.retryDisposition=n?.retryDisposition,this.outcomeUnknown=n?.outcomeUnknown,n?.headers!==void 0&&Object.defineProperty(this,"headers",{value:n.headers,enumerable:!1})}status;code;details;param;retryable;retryDisposition;outcomeUnknown;toJSON(){let t={name:this.name,message:this.message};return this.status!==void 0&&(t.status=this.status),this.code!==void 0&&(t.code=this.code),this.details!==void 0&&(t.details=this.details),this.param!==void 0&&(t.param=this.param),this.retryable!==void 0&&(t.retryable=this.retryable),this.retryDisposition!==void 0&&(t.retryDisposition=this.retryDisposition),this.outcomeUnknown!==void 0&&(t.outcomeUnknown=this.outcomeUnknown),t}},Ia=class extends ze{constructor(t,e,n={code:"NETWORK_ERROR",retryable:!1}){super(t,0,{code:n.code,retryable:n.retryable,cause:e,...n.outcomeUnknown?{outcomeUnknown:!0,retryDisposition:"reconcile_before_repeat"}:{}}),this.name="FartherShoreTransportError"}};function N(t){return encodeURIComponent(t)}function fe(t,e){let n=new URLSearchParams;for(let[r,o]of Object.entries(e))if(typeof o=="string")o&&n.set(r,o);else if(o!==void 0)for(let a of o)a&&n.append(r,a);let i=n.toString();return i?`${t}?${i}`:t}function De(t){return t===void 0?void 0:String(t)}function bg(t){return{filter:t?.filters.map(({field:e,value:n})=>`${e}=${n}`),sort:t?.sort?`${t.sort.field}:${t.sort.direction}`:void 0,q:t?.q}}function Ro(t){return{...t.options,readOnly:!0}}function y(t,e,n,i,r=t.options){return t.transport.request(e,n,i,r)}var fg=t=>`/businesses/${N(t)}/agents`,TS=t=>`/businesses/${N(t)}/bulletin`,r0=(t,e)=>({op:t,run:(n,{businessId:i,role:r,config:o})=>y(n,"PUT",`${fg(i)}/${N(r)}`,o===void 0?{enabled:e}:{enabled:e,config:o})}),i0=(t,e)=>({op:t,run:(n,{businessId:i,postId:r})=>y(n,"PATCH",`${TS(i)}/${N(r)}`,{status:e})}),n9={"agents.list":{op:"agents.list",run:(t,{businessId:e})=>y(t,"GET",fg(e))},"agents.status":{op:"agents.status",run:(t,{businessId:e,role:n})=>y(t,"GET",`${fg(e)}/${N(n)}`)},"agents.runs.show":{op:"agents.runs.show",run:(t,{businessId:e,role:n,runId:i})=>y(t,"GET",`${fg(e)}/${N(n)}/runs/${N(i)}`)},"agents.enable":r0("agents.enable",!0),"agents.disable":r0("agents.disable",!1),"bulletin.list":{op:"bulletin.list",run:(t,{businessId:e,kind:n,status:i,cursor:r,limit:o})=>y(t,"GET",fe(TS(e),{kind:n,status:i,cursor:r,limit:De(o)}))},"bulletin.read":{op:"bulletin.read",run:(t,{businessId:e,postId:n})=>y(t,"GET",`${TS(e)}/${N(n)}`)},"bulletin.ack":i0("bulletin.ack","acknowledged"),"bulletin.resolve":i0("bulletin.resolve","resolved")},_a=t=>`/businesses/${N(t)}/agreements`,r9={"agreements.read":{op:"agreement.read",run:(t,{businessId:e,subjectId:n,environmentId:i,limit:r,offset:o})=>y(t,"GET",fe(_a(e),{subjectId:n,environmentId:i,limit:De(r),offset:De(o)}))},"agreements.get":{op:"agreement.read",summary:"Show one economic agreement",run:(t,{businessId:e,agreementId:n})=>y(t,"GET",`${_a(e)}/${N(n)}`)},"agreements.pins":{op:"agreement.read",summary:"Show the price pins in force for one subject",run:(t,{businessId:e,subjectId:n})=>y(t,"GET",`/businesses/${N(e)}/subjects/${N(n)}/pins`)},"agreements.previewCreate":{op:"agreement.create",summary:"Preview a new agreement's effect and get its confirmation token",sideEffect:"read",run:(t,{businessId:e,body:n})=>y(t,"POST",`${_a(e)}/preview`,n,Ro(t))},"agreements.create":{op:"agreement.create",run:(t,{businessId:e,body:n})=>y(t,"POST",_a(e),n)},"agreements.previewAmend":{op:"agreement.amend",summary:"Preview an amendment's effect and get its confirmation token",sideEffect:"read",run:(t,{businessId:e,agreementId:n,body:i})=>y(t,"POST",`${_a(e)}/${N(n)}/amendments/preview`,i,Ro(t))},"agreements.amend":{op:"agreement.amend",run:(t,{businessId:e,agreementId:n,body:i})=>y(t,"POST",`${_a(e)}/${N(n)}/amendments`,i)}},y0=(t,e,n)=>y(t,"POST",`/businesses/${N(e)}/analytics/query`,n,Ro(t)),rg=(t,e)=>({op:t,run:(n,{businessId:i,query:r})=>y0(n,i,{verb:e,query:r})}),i9={"analytics.timeseries":rg("analytics.timeseries","timeseries"),"analytics.latency":rg("analytics.latency","percentiles"),"analytics.top":rg("analytics.top","topK"),"analytics.log":rg("analytics.log","eventFeed"),"analytics.query":{op:null,summary:"Run any analytics DSL verb against a business's event archive",sideEffect:"read",run:(t,{businessId:e,verb:n,query:i})=>y0(t,e,{verb:n,query:i})}},RS=t=>`/builder/organizations/${N(t)}`,o0=(t,e)=>`${RS(t)}/businesses/${N(e)}`,ig=t=>({action:t.action,actorUserId:t.actorUserId,decision:t.decision,from:t.from,to:t.to,..."cursor"in t?{cursor:t.cursor}:{},limit:De(t.limit)}),o9={"auditLogs.read":{op:"audit_log.read",run:(t,e)=>y(t,"GET",fe(`${RS(e.organizationId)}/audit-logs`,ig(e)))},"auditLogs.business.read":{op:"audit_log.business.read",run:(t,e)=>y(t,"GET",fe(`${o0(e.organizationId,e.businessId)}/audit-logs`,ig(e)))},"auditLogs.export":{op:"audit_log.export",run:(t,e)=>t.transport.requestText("GET",fe(`${RS(e.organizationId)}/audit-logs/export.csv`,ig(e)),t.options)},"auditLogs.business.export":{op:"audit_log.business.export",run:(t,e)=>t.transport.requestText("GET",fe(`${o0(e.organizationId,e.businessId)}/audit-logs/export.csv`,ig(e)),t.options)},"notifications.preferences.read":{op:"notification.preferences.read",run:(t,{businessId:e})=>y(t,"GET",`/businesses/${N(e)}/notification-preferences`)},"notifications.preferences.update":{op:"notification.preferences.update",run:(t,{businessId:e,...n})=>y(t,"PATCH",`/businesses/${N(e)}/notification-preferences`,n)}},s9={"auth.context.read":{op:"auth.context.read",async run(t){if(t.transport.credentialKind==="cli_exchange"){let n=await y(t,"GET","/management/whoami");return n.credentialType==="cli_session"?{kind:"cli_user",...n}:{kind:"maker",...n}}return{kind:"builder",...await y(t,"POST","/builder/context/bootstrap",void 0,Ro(t))}}},"auth.context.issue":{op:"auth.context.issue",async run(t,{businessId:e,...n}){return(await y(t,"POST",`/management/businesses/${N(e)}/auth/context-token`,{...n,actorType:"user"})).data}},"auth.listOrganizations":{op:null,summary:"List the organizations a user login can act in",sideEffect:"read",run:t=>t.transport.listOrganizations({signal:t.options.signal,...t.options.retry==="none"?{retry:"none"}:{}})},"auth.selectedOrganization":{op:null,summary:"The organization this credential acts in",sideEffect:"read",run:t=>t.transport.selectedOrganizationId({signal:t.options.signal,...t.options.retry==="none"?{retry:"none"}:{}})}},og=t=>`/businesses/${N(t)}/backends`,sg=t=>`/businesses/${N(t)}/runtime-tokens`,a9={"backends.read":{op:"backend.read",run:(t,{businessId:e,environmentId:n,limit:i,offset:r})=>y(t,"GET",fe(og(e),{environmentId:n,limit:De(i),offset:De(r)}))},"backends.create":{op:"backend.create",run:(t,{businessId:e,...n})=>y(t,"POST",og(e),n)},"backends.bind":{op:"backend.bind",run:(t,{businessId:e,backend:n,...i})=>y(t,"PATCH",`${og(e)}/${N(n)}`,i)},"backends.delete":{op:"backend.delete",run:(t,{businessId:e,backendId:n})=>y(t,"DELETE",`${og(e)}/${N(n)}`)},"runtimeTokens.read":{op:"runtime_token.read",run:(t,{businessId:e,environmentId:n,limit:i,offset:r})=>y(t,"GET",fe(sg(e),{environmentId:n,limit:De(i),offset:De(r)}))},"runtimeTokens.mint":{op:"runtime_token.mint",run:(t,{businessId:e,...n})=>y(t,"POST",sg(e),n)},"runtimeTokens.rotate":{op:"runtime_token.rotate",run:(t,{businessId:e,tokenId:n})=>y(t,"POST",`${sg(e)}/${N(n)}/rotate`)},"runtimeTokens.revoke":{op:"runtime_token.revoke",run:(t,{businessId:e,tokenId:n})=>y(t,"DELETE",`${sg(e)}/${N(n)}`)}},c9={"billing.stripe.read":{op:"stripe_connection.read",run:(t,{businessId:e})=>y(t,"GET",`/businesses/${N(e)}/stripe/status`)},"billing.stripe.delete":{op:"stripe_connection.delete",run:(t,{businessId:e,deleteAccount:n})=>y(t,"POST",`/businesses/${N(e)}/stripe/disconnect`,{deleteAccount:n===!0})},"billing.taxSettings.read":{op:"tax_settings.read",run:(t,{businessId:e})=>y(t,"GET",`/management/businesses/${N(e)}/tax-settings`)},"billing.taxSettings.update":{op:"tax_settings.update",run:(t,{businessId:e,body:n})=>y(t,"POST",`/management/businesses/${N(e)}/tax-settings`,n)}},xt=t=>`/businesses/${N(t)}`,vS=t=>({op:t,run:(e,{businessId:n,env:i,body:r})=>y(e,"PATCH",fe(xt(n),{env:i}),r)}),s0=(t,e)=>({op:t,run:(n,{businessId:i,env:r})=>y(n,"PATCH",fe(xt(i),{env:r}),{docsEnabled:e})}),a0=50,l9={"businesses.list":{op:"business.list",maxPageSize:a0,run:(t,e)=>y(t,"GET",fe("/businesses",{limit:De(e?.limit===void 0?void 0:Math.min(e.limit,a0)),offset:De(e?.offset),...bg(e?.query)}))},"businesses.read":{op:"business.read",run:(t,{businessId:e,env:n})=>y(t,"GET",fe(xt(e),{env:n}))},"businesses.create":{op:"business.create",run:(t,e)=>y(t,"POST","/businesses",e)},"businesses.delete":{op:"business.delete",run:(t,{businessId:e})=>y(t,"DELETE",xt(e))},"businesses.routes.read":{op:"business.routes.read",run:(t,{businessId:e,env:n})=>y(t,"GET",fe(`${xt(e)}/routes`,{env:n}))},"businesses.contract.read":{op:"business.contract.read",run:(t,{businessId:e,env:n})=>y(t,"GET",fe(`${xt(e)}/contract`,{env:n}))},"businesses.config.read":{op:"rbac.read",summary:"Show a business's accepted configuration as JSON",run:(t,{businessId:e,env:n})=>y(t,"GET",fe(`${xt(e)}/config`,{format:"json",env:n}))},"businesses.configAttempts.read":{op:"business.config_attempts.read",run:(t,{businessId:e})=>y(t,"GET",`${xt(e)}/config-attempts`)},"businesses.subdomainAvailability.read":{op:"business.subdomain_availability.read",run:(t,{subdomain:e})=>y(t,"GET",fe("/management/businesses/subdomain-availability",{subdomain:e}))},"businesses.status":{op:"business.status",run:(t,{businessId:e,env:n})=>y(t,"GET",fe(`${xt(e)}/deployments`,{env:n}))},"businesses.publish":{op:"business.publish",run:(t,{businessId:e,...n})=>y(t,"POST",`${xt(e)}/publish`,Object.keys(n).length>0?n:void 0)},"businesses.rollback":{op:"business.rollback",run:(t,{businessId:e,...n})=>y(t,"POST",`/management/businesses/${N(e)}/rollback`,n)},"businesses.compile":{op:"business.compile",run:(t,{businessId:e,ir:n,env:i})=>y(t,"POST",`${xt(e)}/manifest/compile`,{ir:n,...i?{env:i}:{}},Ro(t))},"businesses.brand.update":vS("brand.update"),"businesses.brand.uploadAsset":{op:"brand.update",summary:"Upload a business icon or logo image",run:(t,{businessId:e,kind:n,body:i,contentType:r})=>t.transport.requestRaw("PUT",`${xt(e)}/${N(n)}`,i,r,t.options)},"businesses.brand.deleteAsset":{op:"brand.update",summary:"Remove a business icon or logo image",run:(t,{businessId:e,kind:n})=>y(t,"DELETE",`${xt(e)}/${N(n)}`)},"businesses.previewEnv.set":vS("business.preview_env.set"),"businesses.docs.enable":s0("business.docs.enable",!0),"businesses.docs.disable":s0("business.docs.disable",!1),"businesses.cors.update":vS("business.cors.update"),"businesses.rbac.read":{op:"rbac.read",run:(t,{businessId:e})=>y(t,"GET",xt(e))},"businesses.rbac.enable":{op:"rbac.enable",run:(t,{businessId:e})=>y(t,"PUT",`${xt(e)}/rbac`,{rbacEnabled:!0})},"businesses.rbac.disable":{op:"rbac.disable",run:(t,{businessId:e})=>y(t,"PUT",`${xt(e)}/rbac`,{rbacEnabled:!1})},"businesses.rbac.subjects.read":{op:"rbac.subjects.read",run:(t,{businessId:e})=>y(t,"GET",`${xt(e)}/rbac/subjects`)}},ag=(t,e)=>`/businesses/${N(t)}/consumers/${N(e)}/change-sets`,c0=(t,{businessId:e,env:n})=>y(t,"GET",fe(`/businesses/${N(e)}/apply-timeline`,{env:n}));function u9(t,e){return t.find(n=>n.id===e)??t.find(n=>n.releaseTag===e)??t.find(n=>n.prNumber!==null&&String(n.prNumber)===e)??t.find(n=>n.branch===e)??t.find(n=>n.commitSha.startsWith(e))}var d9={"changeSets.timeline.list":{op:"apply_timeline.list",run:c0},"changeSets.timeline.read":{op:"apply_timeline.read",run:async(t,{businessId:e,env:n,selector:i})=>{let{data:r}=await c0(t,{businessId:e,env:n}),o=u9(r,i);if(!o)throw new ze(`Apply timeline entry ${i} was not found.`,404,{code:"APPLY_TIMELINE_ENTRY_NOT_FOUND",retryable:!1});return o}},"changeSets.propose":{op:"change_set.propose",run:(t,{businessId:e,subscriberId:n,env:i,...r})=>y(t,"POST",fe(ag(e,n),{env:i}),r)},"changeSets.preview":{op:"change_set.preview",run:(t,{businessId:e,subscriberId:n,changeSetId:i,env:r})=>y(t,"POST",fe(`${ag(e,n)}/${N(i)}/preview`,{env:r}))},"changeSets.proposalList":{op:"change_set.proposal_list",run:(t,{businessId:e,subscriberId:n,env:i,status:r,cursor:o,limit:a})=>y(t,"GET",fe(ag(e,n),{env:i,status:r,cursor:o,limit:De(a)}))},"changeSets.proposalRead":{op:"change_set.proposal_read",run:(t,{businessId:e,subscriberId:n,changeSetId:i,env:r})=>y(t,"GET",fe(`${ag(e,n)}/${N(i)}`,{env:r}))}},Ni=(t,e)=>`/businesses/${N(t)}/consumers/${N(e)}`,cg=(t,e)=>`${Ni(t,e)}/rbac/roles`,l0=(t,e)=>({op:t,run:(n,{businessId:i,subscriberId:r,...o})=>y(n,"PUT",`${Ni(i,r)}/rbac`,{enabled:e,...o})}),m9={"consumers.read":{op:"consumer.read",run:(t,{businessId:e,env:n})=>y(t,"GET",fe(`/businesses/${N(e)}/consumers`,{env:n}))},"consumers.block":{op:"consumer.block",run:(t,{businessId:e,subscriberId:n})=>y(t,"POST",`${Ni(e,n)}/block`)},"consumers.remove":{op:"consumer.remove",run:(t,{businessId:e,subscriberId:n})=>y(t,"POST",`${Ni(e,n)}/remove`)},"consumers.migrateLatest":{op:"consumer.migrate_latest",run:(t,{businessId:e,subscriberId:n})=>y(t,"POST",`${Ni(e,n)}/migrate-latest`)},"consumers.roles.assign":{op:"consumer.roles.assign",run:(t,{businessId:e,subscriberId:n,userExternalId:i,roles:r})=>y(t,"POST",`${Ni(e,n)}/members/${N(i)}/roles`,{roles:r})},"consumers.rbac.enable":l0("consumer.rbac.enable",!0),"consumers.rbac.disable":l0("consumer.rbac.disable",!1),"consumers.role.list":{op:"consumer.read",summary:"List one subscriber's own roles",run:(t,{businessId:e,subscriberId:n})=>y(t,"GET",cg(e,n))},"consumers.role.create":{op:"consumer.role.create",run:(t,{businessId:e,subscriberId:n,...i})=>y(t,"POST",cg(e,n),i)},"consumers.role.update":{op:"consumer.role.update",run:(t,{businessId:e,subscriberId:n,roleKey:i,...r})=>y(t,"PATCH",`${cg(e,n)}/${N(i)}`,r)},"consumers.role.delete":{op:"consumer.role.delete",run:(t,{businessId:e,subscriberId:n,roleKey:i})=>y(t,"DELETE",`${cg(e,n)}/${N(i)}`)},"consumers.apiKeys.list":{op:"consumer.read",summary:"List one subscriber's API keys (metadata only)",run:(t,{businessId:e,subscriberId:n})=>y(t,"GET",`${Ni(e,n)}/api-keys`)},"consumers.apiKeys.revoke":{op:"consumer.block",summary:"Revoke one subscriber API key",run:(t,{businessId:e,subscriberId:n,keyId:i})=>y(t,"POST",`${Ni(e,n)}/api-keys/${N(i)}/revoke`)}},yS=t=>`/businesses/${N(t)}/environments`,p9={"environments.read":{op:"environment.read",run:(t,{businessId:e,limit:n,offset:i,query:r})=>y(t,"GET",fe(yS(e),{limit:De(n),offset:De(i),...bg(r)}))},"environments.create":{op:"environment.create",run:(t,{businessId:e,...n})=>y(t,"POST",yS(e),n)},"environments.delete":{op:"environment.delete",run:(t,{businessId:e,environment:n})=>y(t,"DELETE",`${yS(e)}/${N(n)}`)}},f9={"frontend.status":{op:"frontend.status",run:(t,{businessId:e,environmentId:n,ref:i})=>y(t,"GET",fe(`/businesses/${N(e)}/frontend/status`,{environmentId:n,ref:i}))},"frontend.rollback":{op:"frontend.rollback",run:(t,{businessId:e,...n})=>y(t,"POST",`/businesses/${N(e)}/frontend/rollback`,n)}},g9={"makerTokens.permissionCatalog.read":{op:"org_maker_token.permission_catalog.read",run:t=>y(t,"GET","/maker-tokens/permission-catalog")},"makerTokens.list":{op:"org_maker_token.list",run:(t,e)=>y(t,"GET",fe("/maker-tokens/org",{limit:De(e?.limit),offset:De(e?.offset)}))},"makerTokens.create":{op:"org_maker_token.create",run:(t,e)=>y(t,"POST","/maker-tokens/org",e)},"makerTokens.update":{op:"org_maker_token.update",run:(t,{tokenId:e,...n})=>y(t,"PATCH",`/maker-tokens/org/${N(e)}`,n)},"makerTokens.approvalList":{op:"org_maker_token.approval_list",run:t=>y(t,"GET","/maker-tokens/org/approvals")},"makerTokens.approve":{op:"org_maker_token.approve",run:(t,{approvalId:e,...n})=>y(t,"POST",`/maker-tokens/org/approvals/${N(e)}/approve`,n)},"makerTokens.deny":{op:"org_maker_token.deny",run:(t,{approvalId:e})=>y(t,"POST",`/maker-tokens/org/approvals/${N(e)}/deny`)},"makerTokens.rotate":{op:"org_maker_token.rotate",run:(t,{tokenId:e})=>y(t,"POST",`/maker-tokens/org/${N(e)}/rotate`)},"makerTokens.revoke":{op:"org_maker_token.revoke",run:(t,{tokenId:e})=>y(t,"POST",`/maker-tokens/org/${N(e)}/revoke`)}},Zt=t=>`/builder/organizations/${N(t)}`,h9={"organizations.list":{op:"organization.list",run:t=>y(t,"GET","/builder/organizations")},"organizations.create":{op:"organization.create",run:(t,e)=>y(t,"POST","/builder/organizations",e)},"organizations.delete":{op:"organization.delete",run:(t,{organizationId:e})=>y(t,"DELETE",Zt(e))},"organizations.overview.read":{op:"organization.overview.read",run:(t,{organizationId:e})=>y(t,"GET",`${Zt(e)}/overview`)},"organizations.bulletin.read":{op:"organization.bulletin.read",run:(t,{organizationId:e,kind:n,status:i,cursor:r,limit:o})=>y(t,"GET",fe(`${Zt(e)}/bulletin`,{kind:n,status:i,cursor:r,limit:De(o)}))},"organizations.role.list":{op:"organization.role.list",run:(t,{organizationId:e,query:n})=>y(t,"GET",fe(`${Zt(e)}/roles`,bg(n)))},"organizations.role.show":{op:"organization.role.show",run:(t,{organizationId:e,roleKey:n})=>y(t,"GET",`${Zt(e)}/roles/${N(n)}`)},"organizations.role.create":{op:"organization.role.create",run:(t,{organizationId:e,...n})=>y(t,"POST",`${Zt(e)}/roles`,n)},"organizations.role.update":{op:"organization.role.update",run:(t,{organizationId:e,roleKey:n,...i})=>y(t,"PATCH",`${Zt(e)}/roles/${N(n)}`,i)},"organizations.role.delete":{op:"organization.role.delete",run:(t,{organizationId:e,roleKey:n})=>y(t,"DELETE",`${Zt(e)}/roles/${N(n)}`)},"organizations.member.list":{op:"organization.member.list",run:(t,{organizationId:e,query:n,limit:i,offset:r})=>y(t,"GET",fe(`${Zt(e)}/members`,{...bg(n),limit:De(i),offset:De(r)}))},"organizations.member.update":{op:"organization.member.update",run:(t,{organizationId:e,memberUserId:n,roleKey:i})=>y(t,"PATCH",`${Zt(e)}/members/${N(n)}`,{roleKey:i})},"organizations.member.remove":{op:"organization.member.remove",run:(t,{organizationId:e,memberUserId:n})=>y(t,"DELETE",`${Zt(e)}/members/${N(n)}`)},"organizations.ownership.transfer":{op:"organization.ownership.transfer",run:(t,{organizationId:e,newOwnerUserId:n})=>y(t,"POST",`${Zt(e)}/ownership/transfer`,{newOwnerUserId:n})},"organizations.invitation.create":{op:"organization.invitation.create",run:(t,{organizationId:e,...n})=>y(t,"POST",`${Zt(e)}/invitations`,n)},"organizations.invitation.list":{op:"organization.invitation.list",run:t=>y(t,"GET","/builder/invitations")},"organizations.invitation.listSent":{op:"organization.invitation.list_sent",run:(t,{organizationId:e})=>y(t,"GET",`${Zt(e)}/invitations`)},"organizations.invitation.revoke":{op:"organization.invitation.revoke",run:(t,{organizationId:e,invitationId:n})=>y(t,"DELETE",`${Zt(e)}/invitations/${N(n)}`)},"organizations.invitation.accept":{op:"organization.invitation.accept",run:(t,{invitationId:e,token:n})=>y(t,"POST",`/builder/invitations/${N(e)}/accept`,{token:n})}},xS=(t,e)=>`/portal/businesses/${N(t)}/environments/${N(e)}/test`,va=({businessId:t,environmentId:e,personaId:n})=>`${xS(t,e)}/personas/${N(n)}`,b9={"personas.bootstrap":{op:"persona.bootstrap",run:(t,{businessId:e,environmentId:n,...i})=>y(t,"POST",`${xS(e,n)}/bootstrap-key`,i)},"personas.read":{op:"persona.read",run:(t,{businessId:e,environmentId:n})=>y(t,"GET",`${xS(e,n)}/personas`)},"personas.login":{op:"persona.login",run:(t,e)=>y(t,"POST",`${va(e)}/login`)},"personas.rotate":{op:"persona.rotate",run:(t,e)=>y(t,"POST",`${va(e)}/rotate`)},"personas.delete":{op:"persona.delete",run:(t,e)=>y(t,"DELETE",va(e))},"personas.localPreview.issue":{op:"persona.local_preview.issue",run:(t,{localOrigin:e,...n})=>y(t,"POST",`${va(n)}/local-preview-login`,{localOrigin:e})},"personas.localPreview.renew":{op:"persona.local_preview.renew",run:(t,{localProxyLease:e,localOrigin:n,...i})=>y(t,"POST",`${va(i)}/local-preview-lease/renew`,{localProxyLease:e,localOrigin:n})},"personas.localPreview.revoke":{op:"persona.local_preview.revoke",run:(t,{localProxyLease:e,localOrigin:n,...i})=>y(t,"POST",`${va(i)}/local-preview-lease/revoke`,{localProxyLease:e,localOrigin:n})}},kS=t=>`/management/businesses/${N(t)}`,_9={"plans.read":{op:"plan.read",run:(t,{businessId:e,environmentId:n,limit:i,offset:r})=>y(t,"GET",fe(`${kS(e)}/plans`,{environmentId:n??void 0,limit:De(i),offset:De(r)}))},"usage.read":{op:"usage.read",pagination:null,run:(t,{businessId:e,environmentId:n})=>y(t,"GET",fe(`${kS(e)}/usage`,{environmentId:n??void 0}))},"usage.limits":{op:"usage.read",summary:"List subscriber-owned usage limits with their current aggregate utilization",pagination:"offset",run:(t,{businessId:e,limit:n,offset:i})=>y(t,"GET",fe(`${kS(e)}/usage-limits`,{limit:De(n),offset:De(i)}))}},wS=t=>`/management/businesses/${N(t)}`,tu=t=>`/businesses/${N(t)}/automation-rules`,v9={"platform.resourceCounts.report":{op:"resource_count.report",run:(t,{businessId:e,resource:n,body:i})=>y(t,"PUT",`${wS(e)}/resources/${N(n)}/count`,i)},"platform.denials.read":{op:"denial.read",run:(t,{businessId:e,requestId:n})=>y(t,"GET",`${wS(e)}/explain-denial/${N(n)}`)},"platform.dependents.read":{op:"business_dependents.read",run:(t,{businessId:e,...n})=>y(t,"GET",fe(`${wS(e)}/dependents`,n))},"platform.workflowControl.replay":{op:"workflow.replay",run:(t,{body:e})=>y(t,"POST","/agent/v1/replay",e,Ro(t))},"platform.workflowControl.rollback":{op:"workflow.rollback",run:(t,{body:e})=>y(t,"POST","/agent/v1/rollback-to-config",e,Ro(t))},"automationRules.read":{op:"automation_rule.read",run:(t,{businessId:e,env:n,cursor:i,limit:r})=>y(t,"GET",fe(tu(e),{env:n,cursor:i,limit:De(r)}))},"automationRules.get":{op:"automation_rule.read",summary:"Show one automation rule",run:(t,{businessId:e,ruleId:n})=>y(t,"GET",`${tu(e)}/${N(n)}`)},"automationRules.create":{op:"automation_rule.create",run:(t,{businessId:e,body:n})=>y(t,"POST",tu(e),n)},"automationRules.update":{op:"automation_rule.update",run:(t,{businessId:e,ruleId:n,body:i})=>y(t,"PATCH",`${tu(e)}/${N(n)}`,i)},"automationRules.delete":{op:"automation_rule.delete",run:(t,{businessId:e,ruleId:n})=>y(t,"DELETE",`${tu(e)}/${N(n)}`)},"knowledge.guide.read":{op:"knowledge.guide.read",run:(t,e)=>y(t,"GET",fe("/knowledge/index",{cursor:e?.cursor,limit:De(e?.limit)}))},"knowledge.business.read":{op:"knowledge.business.read",run:(t,{businessId:e,cursor:n,limit:i})=>y(t,"GET",fe(`/businesses/${N(e)}/knowledge/index`,{cursor:n,limit:De(i)}))}},Nn=t=>`/portal/businesses/${N(t)}/me`;async function er(t,e,n,i){let r=await t.transport.request(e,n,i,t.options);return r&&typeof r=="object"&&"ok"in r&&r.ok===!0&&"data"in r?r.data:r}var SS=100,IS=(t,{limit:e,offset:n})=>fe(t,{limit:De(e),offset:De(n)}),y9={"portal.serviceAccounts.list":{op:null,pagination:"offset",maxPageSize:SS,summary:"List the subscribing organization's service accounts",sideEffect:"read",run:(t,{businessId:e,...n})=>er(t,"GET",IS(`${Nn(e)}/service-accounts`,n))},"portal.serviceAccounts.create":{op:null,oneTimeSecret:!0,summary:"Create a service account (may return its one-time secret)",sideEffect:"write",run:(t,{businessId:e,body:n})=>er(t,"POST",`${Nn(e)}/service-accounts`,n)},"portal.serviceAccounts.update":{op:null,summary:"Update a service account (may open a pending approval)",sideEffect:"write",run:(t,{businessId:e,serviceAccountId:n,body:i})=>er(t,"PATCH",`${Nn(e)}/service-accounts/${N(n)}`,i)},"portal.serviceAccounts.approvals":{op:null,pagination:"offset",maxPageSize:SS,summary:"List pending service-account approvals",sideEffect:"read",run:(t,{businessId:e,...n})=>er(t,"GET",IS(`${Nn(e)}/service-account-approvals`,n))},"portal.serviceAccounts.approve":{op:null,oneTimeSecret:!0,summary:"Approve a pending service-account change (an approved creation returns its one-time secret)",sideEffect:"write",run:(t,{businessId:e,approvalId:n,body:i})=>er(t,"POST",`${Nn(e)}/service-account-approvals/${N(n)}/approve`,i)},"portal.serviceAccounts.deny":{op:null,summary:"Deny a pending service-account change",sideEffect:"write",run:(t,{businessId:e,approvalId:n})=>er(t,"POST",`${Nn(e)}/service-account-approvals/${N(n)}/deny`,{})},"portal.serviceAccounts.rotate":{op:null,destructive:!0,oneTimeSecret:!0,summary:"Rotate a service account's key (returns the new one-time secret)",sideEffect:"write",run:(t,{businessId:e,serviceAccountId:n})=>er(t,"POST",`${Nn(e)}/service-accounts/${N(n)}/rotate`,{})},"portal.serviceAccounts.revoke":{op:null,destructive:!0,summary:"Revoke a service account",sideEffect:"write",run:(t,{businessId:e,serviceAccountId:n})=>er(t,"POST",`${Nn(e)}/service-accounts/${N(n)}/revoke`,{})},"portal.usageLimits.list":{op:null,pagination:"offset",maxPageSize:SS,summary:"List the subscribing organization's usage limits",sideEffect:"read",run:(t,{businessId:e,...n})=>er(t,"GET",IS(`${Nn(e)}/usage-limits`,n))},"portal.usageLimits.set":{op:null,summary:"Create a usage limit, or update one by id",sideEffect:"write",run:(t,{businessId:e,limitId:n,body:i})=>er(t,n?"PUT":"POST",n?`${Nn(e)}/usage-limits/${N(n)}`:`${Nn(e)}/usage-limits`,i)},"portal.usageLimits.remove":{op:null,destructive:!0,summary:"Remove a usage limit",sideEffect:"write",run:(t,{businessId:e,limitId:n})=>er(t,"DELETE",`${Nn(e)}/usage-limits/${N(n)}`)}},OS=t=>`/businesses/${N(t)}/promo-codes`,k0={op:"promo_code.update",run:(t,{businessId:e,promoCodeId:n,...i})=>y(t,"PATCH",`${OS(e)}/${N(n)}`,i)},u0=(t,e)=>({op:t,run:(n,{businessId:i,promoCodeId:r})=>k0.run(n,{businessId:i,promoCodeId:r,status:e})}),k9={"promoCodes.read":{op:"promo_code.read",run:(t,{businessId:e})=>y(t,"GET",OS(e))},"promoCodes.create":{op:"promo_code.create",run:(t,{businessId:e,...n})=>y(t,"POST",OS(e),n)},"promoCodes.update":k0,"promoCodes.archive":u0("promo_code.archive","ARCHIVED"),"promoCodes.reactivate":u0("promo_code.reactivate","ACTIVE")},ya=t=>`/businesses/${N(t)}/variables`,w9={"variables.read":{op:"business_variable.read",async run(t,{businessId:e,environmentId:n}){return(await y(t,"GET",fe(ya(e),{environmentId:n}))).variables}},"variables.create":{op:"business_variable.create",async run(t,{businessId:e,name:n,...i}){return(await y(t,"POST",`${ya(e)}/${N(n)}`,i)).operation}},"variables.rotate":{op:"business_variable.rotate",async run(t,{businessId:e,name:n,...i}){return(await y(t,"POST",`${ya(e)}/${N(n)}/rotate`,i)).operation}},"variables.revoke":{op:"business_variable.revoke",async run(t,{businessId:e,name:n,environmentId:i}){return(await y(t,"POST",`${ya(e)}/${N(n)}/revoke`,{environmentId:i,confirmation:"REVOKE"})).operation}},"variables.delete":{op:"business_variable.delete",async run(t,{businessId:e,name:n,environmentId:i}){return(await y(t,"DELETE",`${ya(e)}/${N(n)}`,{environmentId:i,confirmation:"DELETE"})).operation}},"variables.operation.read":{op:"business_variable.operation.read",async run(t,{businessId:e,operationId:n}){return(await y(t,"GET",`${ya(e)}/operations/${N(n)}`)).operation}}},AS=t=>`/management/businesses/${N(t)}/webhooks`,ka=(t,e)=>`${AS(t)}/${N(e)}`,S9={op:"webhook.test",run:(t,e)=>y(t,"POST",`${ka(e.businessId,e.webhookId)}/test`,"type"in e?{type:e.type}:void 0)},I9={"webhooks.read":{op:"webhook.read",run:(t,{businessId:e,limit:n,offset:i})=>y(t,"GET",fe(AS(e),{limit:De(n),offset:De(i)}))},"webhooks.create":{op:"webhook.create",run:(t,{businessId:e,...n})=>y(t,"POST",AS(e),n)},"webhooks.update":{op:"webhook.update",run:(t,{businessId:e,webhookId:n,...i})=>y(t,"PATCH",ka(e,n),i)},"webhooks.delete":{op:"webhook.delete",run:(t,{businessId:e,webhookId:n})=>y(t,"DELETE",ka(e,n))},"webhooks.test":S9,"webhooks.trigger":{op:"webhook.trigger",run:(t,e)=>typeof e.type!="string"||e.type.length===0?Promise.reject(new ze("webhooks.trigger needs the event type to send a sample of.",0,{code:"VALIDATION_ERROR",param:"type",retryable:!1})):y(t,"POST",`${ka(e.businessId,e.webhookId)}/test`,{type:e.type})},"webhooks.rotateSecret":{op:"webhook.rotate_secret",run:(t,{businessId:e,webhookId:n})=>y(t,"POST",`${ka(e,n)}/rotate-secret`)},"webhooks.eventType.read":{op:"webhook.event_type.read",run:(t,{businessId:e})=>y(t,"GET",`/management/businesses/${N(e)}/webhook-event-types`)},"webhooks.delivery.read":{op:"webhook.delivery.read",run:(t,{businessId:e,webhookId:n,limit:i,offset:r})=>y(t,"GET",fe(`${ka(e,n)}/deliveries`,{limit:De(i),offset:De(r)}))}},zS={...n9,...r9,...i9,...o9,...s9,...a9,...c9,...l9,...d9,...m9,...p9,...f9,...g9,...h9,...b9,..._9,...v9,...y9,...k9,...w9,...I9},E9="DRY_RUN_NOT_SUPPORTED",T9="UNKNOWN_OPERATION",R9=new Map(yg.map(t=>[t.key,{sideEffect:t.sideEffect,permission:t.authorization?.permission??null}]));function w0(t){return JW(t).join(".")}function x9(t,e){let n=e.op===null?void 0:GW(e.op),i=e.op===null?void 0:R9.get(e.op),r=e.op!==null&&w0(e.op)===t,o=e.summary??n?.summary??t;return Object.freeze({path:t,op:e.op,summary:o,description:(r?n?.description:void 0)??o,sideEffect:e.sideEffect??i?.sideEffect??"write",destructive:n?.destructive??e.destructive??!1,oneTimeSecret:n?.oneTimeSecret??e.oneTimeSecret??!1,preview:r&&n?.preview===!0,reconcile:n?.reconcile?Object.freeze({...n.reconcile}):null,pagination:e.pagination!==void 0?e.pagination:(r?n?.pagination:void 0)??null,maxPageSize:e.maxPageSize??null,permission:i?.permission??null})}var S0=new Map(Object.entries(zS).map(([t,e])=>[t,x9(t,e)]));function O9(){return[...S0.values()].sort((t,e)=>t.path.localeCompare(e.path))}function A9(t){return{...t.dryRun?{dryRun:!0}:{},...t.retry==="none"?{retry:"none"}:{},...t.signal?{signal:t.signal}:{}}}function $9(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function C9(t,e){if(t instanceof ze&&t.outcomeUnknown===!0&&e.reconcile!==null){let n=t.details;if(n!=null&&!$9(n))return t;Object.defineProperty(t,"details",{value:{...n,reconcile:{op:e.reconcile.op}},enumerable:!0,configurable:!0,writable:!0})}return t}function N9(t,e,n){let i=async(r,o={})=>{if(o.dryRun===!0&&!n.preview)throw new ze(`${n.path} has no preview; dryRun is not supported for it.`,0,{code:E9,param:"dryRun",retryable:!1});let a={transport:t,options:A9(o)};try{return await e.run(a,r)}catch(c){throw C9(c,n)}};return Object.defineProperty(i,"name",{value:n.path}),Object.defineProperty(i,"meta",{value:n,enumerable:!0}),i}function I0(t){let{transport:e}=t,n={},i=new Map;for(let[a,c]of Object.entries(zS)){let l=N9(e,c,S0.get(a));i.set(a,l);let u=a.split("."),d=n;for(let f of u.slice(0,-1)){let p=d[f]??={};if(typeof p=="function")throw new Error(`Method path ${a} collides with method ${f}`);d=p}let m=u.at(-1);if(d[m]!==void 0)throw new Error(`Method path ${a} collides with a namespace`);d[m]=l}let r=a=>{for(let c of Object.values(a))typeof c!="function"&&r(c);return Object.freeze(a)},o=(a,c,l)=>{let u=/^[a-z0-9_]+(\.[a-z0-9_]+)+$/.test(a)?i.get(w0(a)):void 0;return!u||u.meta.op!==a?Promise.reject(new ze(`No client method implements ${a}.`,0,{code:T9,param:"op",retryable:!1})):u(c,l)};for(let a of["call","listOperations"])if(a in n)throw new Error(`Namespace ${a} is reserved`);return r({...n,call:o,listOperations:O9})}var ybe=Object.keys(zS),kg=["owner","admin","member"];function $S(t){return new Ia("Request aborted",void 0,{code:"REQUEST_ABORTED",retryable:!1})}function Ta(t){if(t?.aborted)throw $S(t)}function P9(t,e){return new Promise((n,i)=>{if(e?.aborted){i($S(e));return}let r=()=>{clearTimeout(o),i($S(e))},o=setTimeout(()=>{e?.removeEventListener("abort",r),n()},t);e?.addEventListener("abort",r,{once:!0})})}var z9="NOT_PAGINATED",D9="PAGINATION_NOT_ADVANCING",L9="INVALID_PAGE_PARAMETER";function _g(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function E0(t){if(Array.isArray(t))return t;if(!_g(t))return[];for(let n of["data","items"])if(Array.isArray(t[n]))return t[n];let e=Object.values(t).filter(Array.isArray);return e.length===1?e[0]:[]}function DS(t){return _g(t)&&_g(t.pagination)?t.pagination:void 0}function U9(t){if(!_g(t))return null;let e=t.nextCursor??DS(t)?.nextCursor;return typeof e=="string"&&e.length>0?e:null}function gg(t){return new ze(`Pagination of ${t} did not advance.`,0,{code:D9,retryable:!1})}async function*M9(t){let{method:e,base:n,callOptions:i,signal:r}=t,o=typeof n.cursor=="string"?n.cursor:void 0,a=new Set(o?[o]:[]);for(;;){Ta(r);let c=await e({...n,...o?{cursor:o}:{}},i);yield E0(c);let l=U9(c);if(l===null)return;if(a.has(l))throw gg(e.meta.path);a.add(l),o=l}}function j9(t,e,n,i){let r=DS(t);return r&&typeof r.hasMore=="boolean"?r.hasMore?typeof r.offset=="number"&&typeof r.limit=="number"?r.offset+r.limit:n+e.length:null:e.length===0||i!==void 0&&e.length<i?null:n+e.length}function B9(t,e){if(typeof t=="number")return typeof e=="number"?Math.min(t,e):t}function d0(t,e,n){let i=t[e];if(i===void 0)return;let r=typeof i=="number"?i:typeof i=="string"&&/^\d+$/.test(i)?Number(i):Number.NaN;if(!Number.isSafeInteger(r)||r<0)throw new ze(`${n}: ${e} must be a non-negative whole number.`,0,{code:L9,param:e,retryable:!1});return r}async function*K9(t){let{method:e,base:n,callOptions:i,signal:r}=t,o=d0(n,"limit",e.meta.path),a=B9(o,e.meta.maxPageSize);a!==void 0&&(n.limit=a);let c=d0(n,"offset",e.meta.path)??0,l;for(;;){Ta(r);let u=await e({...n,offset:c},i),d=E0(u),m=d.length>0?JSON.stringify(d[0]):void 0;if(m!==void 0&&m===l)throw gg(e.meta.path);l=m;let f=DS(u)?.offset;if(typeof f=="number"&&f!==c)throw gg(e.meta.path);let p=j9(u,d,c,a);if(p!==null&&p<=c)throw gg(e.meta.path);if(yield d,p===null)return;c=p}}async function*F9(t,e,n={}){let{maxItems:i,signal:r}=n,o=t.meta.pagination;if(o!=="offset"&&o!=="cursor")throw new ze(`${t.meta.path} is not paginated.`,0,{code:z9,retryable:!1});if(i!==void 0&&i<=0)return;let a={method:t,base:{...e??{}},callOptions:r?{signal:r}:{},signal:r},c=0;for await(let l of o==="cursor"?M9(a):K9(a))for(let u of l)if(yield u,c+=1,i!==void 0&&c>=i)return}async function T0(t,e,n={}){let i=[];for await(let r of F9(t,e,n))i.push(r);return i}var Sa=50,R0=8,V9=100,q9=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i,LS=t=>t?.signal?{signal:t.signal}:void 0;function m0(t){let e=t?.trim().toLowerCase();return e?e.split(".")[0]??null:null}function x0(t,e){let n=e.trim().toLowerCase();return t.find(i=>i.id===e||i.name.toLowerCase()===n||i.runtimeHostname?.toLowerCase()===n||i.portalHostname?.toLowerCase()===n||m0(i.runtimeHostname)===n||m0(i.portalHostname)===n)}async function O0(t,e,n){let i=[];for(let r=0;r<R0;r++){Ta(n?.signal);let o=await t.businesses.list({limit:Sa,offset:r*Sa,...e?{query:e}:{}},LS(n));if(i.push(...o),o.length<Sa)return{businesses:i,complete:!0}}return{businesses:i,complete:!1}}async function A0(t,e,n){for(let i=0;i<R0;i++){Ta(n?.signal);let r=await t.businesses.list({limit:Sa,offset:i*Sa},LS(n)),o=x0(r,e);if(o)return{outcome:"matched",business:o};if(r.length<Sa)return i===0?{outcome:"absent"}:{outcome:"inconclusive"}}return{outcome:"inconclusive"}}async function US(t,e,n,i){let r=[],o=0;for(;;){Ta(i?.signal);let a=await t.environments.read({businessId:e,limit:V9,offset:o,...n?{query:n}:{}},LS(i));if(r.push(...a.data),!a.pagination.hasMore)return r;let c=a.pagination.offset+a.pagination.limit;if(c<=o)throw new ze("Environment pagination did not advance.",0,{code:"PAGINATION_NOT_ADVANCING",retryable:!1});o=c}}async function $0(t,e,n){if(q9.test(e))return e;let i=await A0(t,e,n);if(i.outcome==="matched")return i.business.id;throw i.outcome==="inconclusive"?new ze(`Could not conclusively resolve "${e}" \u2014 the business list could not be checked to the end. Pass the UUID business id directly, or retry.`,0,{code:"BUSINESS_RESOLUTION_INCONCLUSIVE"}):new ze(`Business "${e}" not found`,404,{code:"NOT_FOUND"})}async function C0(t,e,n,i){let o=(await US(t,e,void 0,i)).find(a=>a.name.toLowerCase()===n.toLowerCase()||a.id===n);if(!o)throw new ze(`Environment "${n}" not found on business ${e}.`,404,{code:"ENV_NOT_FOUND",param:"env"});return o}var H9=new Set(["SUCCEEDED","SUCCESS"]),G9=new Set(["FAILED","ERROR","CANCELLED","TIMED_OUT"]),Z9="SUPERSEDED";function W9(t){let n=(t?.data??t)?.builds;return Array.isArray(n)?n:[]}function J9(t){let n=(t?.data??t)?.status;return{activeBuildId:Wt(n?.activeBuildId),uiMode:Wt(n?.uiMode)}}var Wt=t=>typeof t=="string"?t:null;async function N0(t,e){let n=e.intervalMs??5e3,i=e.sleep??P9,r=e.signal,o=e.now??(()=>Date.now()),c=o()+e.timeoutMs,l={status:"UNKNOWN",buildId:e.buildId??null,ref:null,error:null,activated:!1,activeBuildId:null,timedOut:!1},u=e.buildId??null,d=new Set,m=e.buildId!=null||e.ref!==void 0;for(;;){Ta(r);let f=await t.frontend.status({businessId:e.businessId,...e.environmentId!==void 0?{environmentId:e.environmentId}:{},...e.ref!==void 0?{ref:e.ref}:{}},r?{signal:r}:void 0),p=W9(f).filter($=>e.ref===void 0||Wt($.ref)===e.ref),g=J9(f);if(!m){m=!0;for(let $ of p)d.add(Wt($.id))}let _=e.buildId==null&&e.ref===void 0?p.filter($=>!d.has(Wt($.id))):p,T=(u?p.find($=>Wt($.id)===u):void 0)??_[0];if(T){let $=Wt(T.status)??"UNKNOWN",R=Wt(T.id);if(l={status:$,buildId:R,ref:Wt(T.ref),error:Wt(T.error),activated:g.uiMode==="custom-react"&&g.activeBuildId!==null&&g.activeBuildId===R,activeBuildId:g.activeBuildId,timedOut:!1},u===null&&R!==null&&(u=R),G9.has($)||H9.has($)&&l.activated)return l;if($===Z9){let D=_.find(j=>Wt(j.ref)===Wt(T.ref)&&Wt(j.id)!==Wt(T.id));u=D?Wt(D.id):null}}if(o()>=c)return{...l,timedOut:!0};await i(Math.min(n,Math.max(0,c-o())),r)}}function p0(t){return typeof t=="object"&&t!==null}function P0(t){if(!p0(t))return;let e=t.error;if(typeof e=="string")return{message:e};if(!p0(e))return;let n={};return typeof e.code=="string"&&(n.code=e.code),typeof e.message=="string"&&(n.message=e.message),e.details!==void 0&&e.details!==null&&(n.details=e.details),typeof e.param=="string"&&(n.param=e.param),typeof e.retryable=="boolean"&&(n.retryable=e.retryable),(e.retryDisposition==="safe_to_repeat"||e.retryDisposition==="reconcile_before_repeat")&&(n.retryDisposition=e.retryDisposition),n}function Y9(t){return t?.retryable===void 0?{}:{retryable:t.retryable,retryDisposition:t.retryDisposition}}function z0(t){return t?.retryable===!0&&t.retryDisposition==="safe_to_repeat"}function MS(t){if(!t||typeof t!="object")return;let e=t,n=Array.isArray(e.errors)?e.errors:void 0,i=Array.isArray(e.warnings)?e.warnings:void 0;if(!(!n?.length&&!i?.length))return{...n?.length?{errors:n}:{},...i?.length?{warnings:i}:{}}}var X9="0.1.0",f0=`@farthershore/client/${X9}`,Q9="x-fs-surface",e5="x-fs-client",t5=new Set([429,500,502,503,504]),jS="OUTCOME_UNKNOWN",CS="RESPONSE_UNREADABLE",n5=3,BS=3e4,g0=200,r5=4e3,i5=(t,e)=>new Promise((n,i)=>{if(e?.aborted){i(new Error("Request aborted"));return}let r=setTimeout(()=>{e?.removeEventListener("abort",o),n()},t),o=()=>{clearTimeout(r),i(new Error("Request aborted"))};e?.addEventListener("abort",o,{once:!0})});function o5(t,e){if(e){let i=Number(e);if(Number.isFinite(i)&&i>=0)return Math.min(i*1e3,1e4)}return Math.min(g0*2**(t-1),r5)+Math.floor(Math.random()*g0)}function lg(t){let e=t.indexOf("#");return e===-1?t:t.slice(0,e)}function ug(t){let e=t.includes("?")?"&":"?";return`${t}${e}dry_run=true`}function s5(t,e){let n=e.split("?")[0];return t.toUpperCase()==="PATCH"?/^\/(?:businesses|management\/businesses|agent\/v1\/businesses)\/[^/]+\/backends\/[^/]+\/?$/.test(n):t.toUpperCase()!=="POST"?!1:/^\/(?:businesses|management\/businesses|agent\/v1\/businesses)\/[^/]+\/backends\/?$/.test(n)||/^\/businesses\/[^/]+\/publish\/?$/.test(n)||/^\/businesses\/[^/]+\/frontend\/rollback\/?$/.test(n)||/^\/businesses\/[^/]+\/consumers\/[^/]+\/change-sets\/?$/.test(n)||/^\/agent\/v1\/(?:replay|rollback-to-config)\/?$/.test(n)}function dg(t,e,n){if(n?.retry==="write")return"write";let i=t.toUpperCase();return n?.retry==="read"||n?.readOnly===!0||n?.dryRun===!0&&s5(i,e)||i==="GET"||i==="HEAD"?"read":"write"}async function a5(t,e){if(typeof t.clone!="function")return{};try{let n=await t.clone().json();return e?.(n),Y9(P0(n))}catch{}return{}}async function c5(t,e,n){if(t.ok)return!1;let i=await a5(t,n);return i.retryDisposition==="reconcile_before_repeat"?!1:e==="write"?t.status===429?i.retryable!==!1:z0(i):i.retryable===!0||t5.has(t.status)&&i.retryable!==!1}function l5(t,e,n){return t!=="write"||e<500?!1:!z0(n)}function u5(t,e,n,i,r){return new ze(e?.message??n,t,{...r?{headers:r}:{},code:e?.code??jS,details:e?.details??MS(i),param:e?.param,retryable:!1,retryDisposition:"reconcile_before_repeat",outcomeUnknown:!0})}function hg(t){return new Ia("Request aborted",t,{code:"REQUEST_ABORTED",retryable:!1})}function D0(t,e,n){let i=n?`no response within ${BS/1e3}s`:e instanceof Error?e.message:"network request failed";return t==="write"?new Ia(`No complete response was received after sending the request (${i}); the server may or may not have applied it.`,e,{code:jS,retryable:!1,outcomeUnknown:!0}):new Ia(n?`Request timed out (${i}).`:`Network error: ${i}.`,e,{code:n?"TIMEOUT":"NETWORK_ERROR",retryable:t==="read"})}async function nu(t){try{await t.body?.cancel()}catch{}}function KS(t,e){if(!e)return t;let n=()=>e.reason instanceof Error?e.reason:new Error("Aborted");return e.aborted?(t.catch(()=>{}),Promise.reject(n())):new Promise((i,r)=>{let o=()=>r(n());e.addEventListener("abort",o,{once:!0}),t.then(a=>{e.removeEventListener("abort",o),i(a)},a=>{e.removeEventListener("abort",o),r(a instanceof Error?a:new Error("The response could not be read.",{cause:a}))})})}var h0="INVALID_RESPONSE";function d5(t){return typeof t=="object"&&t!==null&&typeof t.status=="number"}function m5(t,e){let n="The request did not receive a valid HTTP response.";return t==="write"?new ze(`${n} The server may or may not have applied it.`,0,{code:h0,retryable:!1,retryDisposition:"reconcile_before_repeat",outcomeUnknown:!0,cause:e}):new ze(n,0,{code:h0,retryable:!0,cause:e})}function p5(t,e,n,i){return e.ok&&n==="read"&&!i.callerAborted()&&t instanceof ze&&[CS,"TIMEOUT","NETWORK_ERROR"].includes(t.code??"")}async function vg(t,e,n,i){try{return await KS(i(t),n.signal)}catch(r){throw n.signal?.aborted&&nu(t),r instanceof SyntaxError&&e!=="write"?r:n.callerAborted()&&e!=="write"?hg(r):f5(t.status,e,r,n.timedOut())}}function f5(t,e,n,i){let r=i?`did not finish within ${BS/1e3}s`:"could not be read";return e==="write"?new ze(`The server answered HTTP ${t}, but its response ${r}; the change may have been applied.`,t,{code:t>=300?jS:CS,retryable:!1,retryDisposition:"reconcile_before_repeat",outcomeUnknown:!0,cause:n}):i?D0(e,n,!0):new ze(`The server answered HTTP ${t}, but its response ${r}.`,t,{code:CS,retryable:e==="read",cause:n})}function g5(t,e,n){return vg(t,n,e,i=>i.json()).then(i=>i??null).catch(i=>{if(i instanceof SyntaxError||i instanceof Error&&i.cause instanceof SyntaxError||n==="write"&&t.status<500)return null;throw i})}function b0(t,e,n){let i=P0(n);return l5(e,t.status,i)?u5(t.status,i,t.statusText,n,t.headers):new ze(i?.message??t.statusText,t.status,{...t.headers?{headers:t.headers}:{},code:i?.code,param:i?.param,details:i?.details??MS(n),retryable:i?.retryable,retryDisposition:i?.retryDisposition})}var h5="REDIRECT_NOT_FOLLOWED";function b5(t){return t.type==="opaqueredirect"||t.status>=300&&t.status<400}function _5(t,e){let n=t.headers?.get?.("location")??null;return new ze(`The API answered with a redirect${n?` to ${n}`:""}; redirects are not followed.`,t.status,{code:h5,details:{location:n},...t.headers?{headers:t.headers}:{},retryable:!1,...e==="read"?{}:{outcomeUnknown:!0,retryDisposition:"reconcile_before_repeat"}})}function ES(t,e,n){return t.status===204?Promise.resolve(void 0):vg(t,e,n,i=>i.json())}function mg(t){let e={};for(let[n,i]of Object.entries(t??{}))n.toLowerCase()!=="authorization"&&(e[n]=i);return e}function pg(...t){let e=new Map;for(let n of t)for(let[i,r]of Object.entries(n))e.set(i.toLowerCase(),[i,r]);return Object.fromEntries(e.values())}function v5(t){if(!t)return"";let e=new URLSearchParams;for(let[i,r]of Object.entries(t))if(r!==void 0)if(typeof r=="string"||typeof r=="number"||typeof r=="boolean")e.append(i,String(r));else for(let o of r)e.append(i,o);let n=e.toString();return n?`?${n}`:""}function L0(t){let e=t.retry?.attempts??n5;if(!Number.isInteger(e))throw new TypeError(`retry.attempts must be a whole number, got ${String(e)}`);let n=Math.max(1,e),i=t.retry?.sleep??i5,r=t.surface,o=t.clientInfo?`${f0} ${t.clientInfo}`:f0,a=t.credentials,c=(Y,Re)=>(t.fetch??globalThis.fetch)(Y,Re);function l(){return{[Q9]:r,[e5]:o}}async function u(Y,Re,oe,_e,ye=!0){let we=Re.signal??void 0,Ye=ye?n:1;for(let gt=1;;gt++){let ln=gt>=Ye,Yt=new AbortController,rr=we?AbortSignal.any([Yt.signal,we]):Yt.signal,ir=setTimeout(()=>Yt.abort(),BS),wu={signal:rr,timedOut:()=>Yt.signal.aborted,callerAborted:()=>we?.aborted===!0},Ir,Co=null,Su;try{let Zr=await m(Y,{...Re,signal:rr},oe,wu);if(Zr instanceof ze){if(oe!=="read"||ln)throw Zr;Ir=Zr}else{let Ua=await d(Zr,oe,wu,_e,ln);if("value"in Ua)return Ua.value;Ir=Ua.failure,Co=Ua.retryAfter,Ua.refused&&oe==="write"&&(Su=Ir)}}finally{clearTimeout(ir)}if(ln)throw Ir;try{await i(o5(gt,Co),we)}catch(Zr){throw Su||hg(Zr)}}}async function d(Y,Re,oe,_e,ye){let we=null;if(!ye&&await c5(Y,Re,Ye=>{we=Ye})){let Ye=b0(Y,Re,we),gt=Y.headers?.get?.("retry-after")??null;return await nu(Y),{failure:Ye,retryAfter:gt,refused:!0}}try{return{value:await _e(Y,oe)}}catch(Ye){if(ye||!p5(Ye,Y,Re,oe))throw Ye;return await nu(Y),{failure:Ye,retryAfter:null,refused:!1}}}async function m(Y,Re,oe,_e){let ye;try{ye=await c(Y,Re)}catch(we){if(_e.callerAborted())throw hg(we);return D0(oe,we,_e.timedOut())}if(d5(ye))return ye;if(_e.callerAborted())throw hg(ye);return m5(oe,ye)}function f(Y,Re,oe,_e,ye=!0){return u(Y,Re,oe,async(we,Ye)=>{if(Re.redirect==="manual"&&b5(we))throw await nu(we),_5(we,oe);if(!we.ok)throw b0(we,oe,await g5(we,Ye,oe));return _e(we,Ye)},ye)}let p={organizationId:t.organizationId,requiredOrganizationId:t.requiredOrganizationId,async sendJson(Y,Re,oe,_e){return f(`${t.baseUrl}${Re}`,{method:Y,headers:{...oe.headers,...l()},body:oe.body,signal:oe.signal},_e,async(ye,we)=>({data:await ES(ye,_e,we),headers:ye.headers,receivedAt:Date.now()}),oe.retry!=="none")}};async function g(Y,Re){let oe=b(await a.getAccessToken({signal:Y,context:p}));try{return await Re(_(oe))}catch(_e){if(a.refreshable!==!0||!(_e instanceof ze)||_e.status!==401)throw _e;let ye=b(await a.getAccessToken({signal:Y,forceRefresh:!0,rejectedToken:oe.token,context:p}));return Re(_(ye))}}function b(Y){let Re=t.requiredOrganizationId;if(Re&&Y.organizationId!==void 0&&Y.organizationId!==Re)throw new ze("The credential organization does not own the business linked to this directory.",409,{code:"AUTH_ORGANIZATION_LINK_MISMATCH"});return Y}function _(Y){return{Authorization:`Bearer ${Y.token}`,...Y.headers}}function T(Y,Re,oe,_e){let ye=lg(Re),we=_e?.dryRun?ug(ye):ye,Ye=dg(Y,ye,_e),gt=_e?.signal;return g(gt,ln=>f(`${t.baseUrl}${we}`,{method:Y,headers:pg({"Content-Type":"application/json"},l(),mg(_e?.headers),ln),body:oe===void 0?void 0:JSON.stringify(oe),signal:gt},Ye,(Yt,rr)=>Y.toUpperCase()==="HEAD"?nu(Yt).then(()=>{}):ES(Yt,Ye,rr),_e?.retry!=="none"))}function $(Y,Re,oe,_e,ye){let we=lg(Re),Ye=ye?.dryRun?ug(we):we,gt=dg(Y,we,ye),ln=ye?.signal;return g(ln,Yt=>f(`${t.baseUrl}${Ye}`,{method:Y,headers:pg({"Content-Type":_e},l(),mg(ye?.headers),Yt),body:oe,signal:ln},gt,(rr,ir)=>ES(rr,gt,ir),ye?.retry!=="none"))}function R(Y,Re,oe){let _e=lg(Re),ye=oe?.dryRun?ug(_e):_e,we=dg(Y,_e,oe),Ye=oe?.signal;return g(Ye,gt=>f(`${t.baseUrl}${ye}`,{method:Y,headers:pg(l(),mg(oe?.headers),gt),signal:Ye},we,(ln,Yt)=>vg(ln,we,Yt,rr=>rr.text()),oe?.retry!=="none"))}function D(Y,Re,oe){let _e=lg(Re),ye=v5(oe?.query),we=ye?`${_e}${_e.includes("?")?`&${ye.slice(1)}`:ye}`:_e,Ye=oe?.dryRun?ug(we):we,gt=dg(Y,we,oe),ln=oe?.signal,Yt=oe?.body!==void 0;return g(ln,rr=>f(`${t.baseUrl}${Ye}`,{method:Y,headers:pg(Yt?{"Content-Type":"application/json"}:{},l(),mg(oe?.headers),rr),body:Yt?JSON.stringify(oe.body):void 0,signal:ln,redirect:"manual"},gt,async(ir,wu)=>{if(ir.status===204)return{status:204,headers:ir.headers,data:void 0};let Ir=await vg(ir,gt,wu,Zr=>Zr.text()),Co=Ir;if((ir.headers?.get?.("content-type")??"").toLowerCase().includes("json")&&Ir.length>0)try{Co=JSON.parse(Ir)}catch{Co=Ir}return{status:ir.status,headers:ir.headers,data:Co}},oe?.retry!=="none"))}async function j(Y){return a.selectedOrganizationId?a.selectedOrganizationId(p,Y?.signal,Y?.retry==="none"?{retry:"none"}:void 0):t.organizationId??t.requiredOrganizationId}function pt(Y){return a.listOrganizations?a.listOrganizations(p,Y?.signal,Y?.retry==="none"?{retry:"none"}:void 0):Promise.reject(new ze("Organization switching requires a user CLI login.",400,{code:"AUTH_ORGANIZATION_UNAVAILABLE"}))}return Object.freeze({baseUrl:t.baseUrl,credentialKind:a.kind,request:T,requestRaw:$,requestText:R,raw:D,selectedOrganizationId:j,listOrganizations:pt})}var y5="x-farthershore-organization-id",k5=6e4;function w5(t,e,n){let i=n?Date.parse(n):Number.NaN,r=Number.isFinite(i)?i:e,o=Date.parse(t)-r;return Number.isFinite(o)?e+o-k5:e}function FS(t){return Object.freeze({kind:"bearer",refreshable:!1,getAccessToken:()=>Promise.resolve({token:t})})}function NS(t){return new Ia("Request aborted",t,{code:"REQUEST_ABORTED",retryable:!1})}async function S5(t,e){try{return await KS(t,e)}catch(n){throw e?.aborted?NS(n):n}}function VS(t){return t.startsWith("fscli_")||t.startsWith("mk_")}function U0(t){if(!VS(t))return FS(t);let e=t.startsWith("fscli_"),n=null,i=0;async function r(p,g,b){if(!e)throw new ze("Organization switching requires a user CLI login.",400,{code:"AUTH_ORGANIZATION_UNAVAILABLE"});let{data:_}=await p.sendJson("GET","/auth/cli/organizations",{headers:{Authorization:`Bearer ${t}`},signal:g,...b?.retry==="none"?{retry:"none"}:{}},"read");return _}let o=null;function a(p,g,b){if(!e)return Promise.resolve(p.organizationId??p.requiredOrganizationId);try{g?.throwIfAborted()}catch(_){return Promise.reject(NS(_))}if(!o){let _=c(p,b);o=_,_.catch(()=>{o===_&&(o=null)})}return S5(o,g)}async function c(p,g){let b=p.organizationId??p.requiredOrganizationId;if(!b)return;let T=(await r(p,void 0,g)).organizations.filter(R=>R.id===b||R.slug===b);if(T.length!==1)throw new ze(`Organization '${b}' is not available.`,404,{code:"AUTH_ORGANIZATION_NOT_FOUND",param:"organization"});let $=T[0];if(p.requiredOrganizationId&&$.id!==p.requiredOrganizationId)throw new ze("The requested organization does not own the business linked to this directory.",409,{code:"AUTH_ORGANIZATION_LINK_MISMATCH"});return $.id}let l=null;function u(p,g,b){let _=l;if(!_){let T=new AbortController,$={controller:T,waiters:0,promise:m(p,T.signal,b)},R=()=>{l===$&&(l=null)};$.promise.then(R,R),l=_=$}return d(_,g)}async function d(p,g){p.waiters+=1;let b=!1,_=$=>{b||(b=!0,p.waiters-=1,$&&p.waiters===0&&(l===p&&(l=null),p.controller.abort(g?.reason)))},T=()=>_(!0);g?.addEventListener("abort",T,{once:!0});try{return await KS(p.promise,g)}catch($){throw g?.aborted?(_(!0),NS($)):$}finally{g?.removeEventListener("abort",T),_(!1)}}async function m(p,g,b){let _=await a(p,g,b),{data:T,headers:$,receivedAt:R}=await p.sendJson("POST","/auth/cli/exchange",{headers:{Authorization:`Bearer ${t}`,"Content-Type":"application/json"},body:_?JSON.stringify({organizationId:_}):void 0,signal:g,...b?.retry==="none"?{retry:"none"}:{}},"read");if(n=T,i=w5(T.expiresAt,R,$?.get?.("date")??null),!e&&p.requiredOrganizationId&&T.organizationId!==p.requiredOrganizationId)throw n=null,new ze("The credential organization does not own the business linked to this directory.",409,{code:"AUTH_ORGANIZATION_LINK_MISMATCH"});return T}async function f(p){p.forceRefresh&&(p.rejectedToken===void 0||n?.accessToken===p.rejectedToken)&&(n=null),(!n||Date.now()>=i)&&await u(p.context,p.signal);let g=n;return{token:g.accessToken,organizationId:g.organizationId,...e&&g.organizationId?{headers:{[y5]:g.organizationId}}:{}}}return Object.freeze({kind:"cli_exchange",refreshable:!0,getAccessToken:f,listOrganizations:r,async selectedOrganizationId(p,g,b){let _=await a(p,g,b);return _||(n||await u(p,g,b),n?.organizationId)}})}var E=class extends ze{constructor(e,n,i){super(e,n,i),this.name="CliError"}static[Symbol.hasInstance](e){return e instanceof ze}};var M0="0.35.0";var I5="cli",E5=`farthershore-cli/${M0}`;function re(t){return{...t?.dryRun?{dryRun:!0}:{},...t?.retryOnTransient===!1?{retry:"none"}:{}}}var lt=t=>t;function qS(t){let e=L0({baseUrl:t.apiUrl,credentials:VS(t.token)?U0(t.token):FS(t.token),organizationId:t.organizationId,requiredOrganizationId:t.requiredOrganizationId,surface:t.surface??I5,clientInfo:t.clientInfo??E5,...t.retry?{retry:t.retry}:{}}),n=I0({transport:e}),i;return{fs:n,apiUrl:t.apiUrl,raw:(r,o,a)=>e.raw(r,o,a),listCliOrganizations:r=>n.auth.listOrganizations(void 0,r?{signal:r}:{}),knownGrantedPermissions:()=>i,selectedOrganizationId:()=>n.auth.selectedOrganization(),authWhoami:async r=>{let o=await n.auth.context.read(void 0,r?.signal?{signal:r.signal}:{});return o.kind==="maker"&&(i=[...o.grantedPermissions]),o},listOrgMakerTokens:r=>lt(n.makerTokens.list(r)),createOrgMakerToken:(r,o)=>lt(n.makerTokens.create(r,re(o))),updateOrgMakerToken:(r,o,a)=>lt(n.makerTokens.update({tokenId:r,...o},re(a))),listOrgMakerTokenApprovals:()=>lt(n.makerTokens.approvalList()),approveOrgMakerToken:(r,o,a)=>lt(n.makerTokens.approve({approvalId:r,...o},re(a))),denyOrgMakerToken:r=>lt(n.makerTokens.deny({approvalId:r})),rotateOrgMakerToken:(r,o)=>lt(n.makerTokens.rotate({tokenId:r},re(o))),revokeOrgMakerToken:r=>n.makerTokens.revoke({tokenId:r}),getMakerTokenPermissionCatalog:()=>n.makerTokens.permissionCatalog.read(),listBuilderOrganizations:()=>n.organizations.list(),createBuilderOrganization:(r,o)=>n.organizations.create(r,re(o)),listBuilderOrganizationMembers:(r,o,a)=>lt(n.organizations.member.list({organizationId:r,query:o,limit:a?.limit,offset:a?.offset})),listBuilderOrganizationRoles:(r,o)=>lt(n.organizations.role.list({organizationId:r,query:o})),getBuilderOrganizationRole:(r,o)=>lt(n.organizations.role.show({organizationId:r,roleKey:o})),createBuilderOrganizationRole:(r,o,a)=>lt(n.organizations.role.create({organizationId:r,...o},re(a))),updateBuilderOrganizationRole:(r,o,a)=>lt(n.organizations.role.update({organizationId:r,roleKey:o,...a})),deleteBuilderOrganizationRole:(r,o)=>n.organizations.role.delete({organizationId:r,roleKey:o}),inviteBuilderOrganizationMember:(r,o,a)=>n.organizations.invitation.create({organizationId:r,...o},re(a)),listBuilderInvitations:()=>n.organizations.invitation.list(),listBuilderOrganizationInvitations:r=>n.organizations.invitation.listSent({organizationId:r}),revokeBuilderInvitation:(r,o)=>n.organizations.invitation.revoke({organizationId:r,invitationId:o}),acceptBuilderInvitation:(r,o)=>n.organizations.invitation.accept({invitationId:r,token:o}),updateBuilderOrganizationMember:(r,o,a)=>n.organizations.member.update({organizationId:r,memberUserId:o,roleKey:a}),removeBuilderOrganizationMember:(r,o)=>n.organizations.member.remove({organizationId:r,memberUserId:o}),transferBuilderOrganizationOwnership:(r,o,a)=>n.organizations.ownership.transfer({organizationId:r,newOwnerUserId:o},re(a)),deleteBuilderOrganization:r=>n.organizations.delete({organizationId:r}),getBuilderOrganizationOverview:r=>n.organizations.overview.read({organizationId:r}),listBuilderOrganizationBulletin:(r,o)=>n.organizations.bulletin.read({organizationId:r,...o}),listBuilderAuditLogs:(r,o)=>{let{businessId:a,...c}=o??{};return a?n.auditLogs.business.read({organizationId:r,businessId:a,...c}):n.auditLogs.read({organizationId:r,...c})},exportBuilderAuditLogs:(r,o)=>{let{businessId:a,...c}=o??{};return a?n.auditLogs.business.export({organizationId:r,businessId:a,...c}):n.auditLogs.export({organizationId:r,...c})},listBusinesses:r=>lt(n.businesses.list(r)),createBusiness:(r,o)=>lt(n.businesses.create(r,re(o))),updateBusiness:(r,o,a,c)=>lt(n.businesses.brand.update({businessId:r,env:a?.env,body:o},re(c))),updateBusinessRbac:(r,o,a)=>(o?n.businesses.rbac.enable:n.businesses.rbac.disable)({businessId:r},re(a)),listBusinessRbacSubjects:(r,o)=>lt(n.businesses.rbac.subjects.read({businessId:r},re(o))),uploadBrandAsset:(r,o,a,c,l)=>n.businesses.brand.uploadAsset({businessId:r,kind:o,body:a,contentType:c},re(l)),deleteBrandAsset:(r,o,a)=>n.businesses.brand.deleteAsset({businessId:r,kind:o},re(a)),publishBusiness:(r,o,a)=>lt(n.businesses.publish({businessId:r,...o},re(a))),rollbackBusiness:(r,o,a)=>n.businesses.rollback({businessId:r,...o},re(a)),getBusiness:(r,o)=>lt(n.businesses.read({businessId:r,env:o?.env})),listBusinessConfigAttempts:r=>n.businesses.configAttempts.read({businessId:r}),listBusinessRoutes:(r,o)=>n.businesses.routes.read({businessId:r,env:o?.env}),getBusinessContract:(r,o)=>n.businesses.contract.read({businessId:r,env:o?.env}),getBusinessConfig:(r,o)=>n.businesses.config.read({businessId:r,env:o?.env}),getDeployments:(r,o)=>lt(n.businesses.status({businessId:r,env:o?.env})),listApplyTimeline:(r,o)=>lt(n.changeSets.timeline.list({businessId:r,env:o?.env})),proposeConsumerChangeSet:(r,o,a,c,l)=>n.changeSets.propose({businessId:r,subscriberId:o,env:c?.env,...a},re(l)),listConsumerChangeSets:(r,o,a)=>n.changeSets.proposalList({businessId:r,subscriberId:o,...a}),getConsumerChangeSet:(r,o,a,c)=>n.changeSets.proposalRead({businessId:r,subscriberId:o,changeSetId:a,env:c?.env}),previewConsumerChangeSet:(r,o,a,c)=>n.changeSets.preview({businessId:r,subscriberId:o,changeSetId:a,env:c?.env}),compileManifest:(r,o,a,c)=>n.businesses.compile({businessId:r,ir:o,env:a?.env},re(c)),listEnvironments:(r,o)=>lt(n.environments.read({businessId:r,...o})),createEnvironment:(r,o,a)=>n.environments.create({businessId:r,...o},re(a)),deleteEnvironment:(r,o)=>n.environments.delete({businessId:r,environment:o}),deleteBusiness:r=>n.businesses.delete({businessId:r}),checkSubdomainAvailability:r=>n.businesses.subdomainAvailability.read({subdomain:r}),builderListConsumers:(r,o)=>n.consumers.read({businessId:r,env:o?.env}),builderBlockConsumer:(r,o)=>n.consumers.block({businessId:r,subscriberId:o}),builderRemoveConsumer:(r,o)=>n.consumers.remove({businessId:r,subscriberId:o}),builderMigrateConsumerToLatest:(r,o,a)=>n.consumers.migrateLatest({businessId:r,subscriberId:o},re(a)),builderAssignConsumerMemberRoles:(r,o,a,c)=>n.consumers.roles.assign({businessId:r,subscriberId:o,userExternalId:a,roles:c}),builderSetConsumerRbac:(r,o,a)=>{let{enabled:c,...l}=a;return(c?n.consumers.rbac.enable:n.consumers.rbac.disable)({businessId:r,subscriberId:o,...l})},builderListConsumerRbacRoles:(r,o)=>n.consumers.role.list({businessId:r,subscriberId:o}),builderCreateConsumerRbacRole:(r,o,a)=>n.consumers.role.create({businessId:r,subscriberId:o,...a}),builderUpdateConsumerRbacRole:(r,o,a,c)=>n.consumers.role.update({businessId:r,subscriberId:o,roleKey:a,...c}),builderDeleteConsumerRbacRole:(r,o,a)=>n.consumers.role.delete({businessId:r,subscriberId:o,roleKey:a}),builderListConsumerApiKeys:(r,o)=>n.consumers.apiKeys.list({businessId:r,subscriberId:o}),builderRevokeConsumerApiKey:(r,o,a)=>n.consumers.apiKeys.revoke({businessId:r,subscriberId:o,keyId:a}),listPromoCodes:r=>n.promoCodes.read({businessId:r}),createPromoCode:(r,o,a)=>n.promoCodes.create({businessId:r,...o},re(a)),updatePromoCode:(r,o,a,c)=>n.promoCodes.update({businessId:r,promoCodeId:o,...a},re(c)),managementListPlans:(r,o)=>n.plans.read({businessId:r,environmentId:o?.environmentId}),managementGetUsage:(r,o)=>n.usage.read({businessId:r,environmentId:o?.environmentId}),getBusinessStripeStatus:r=>n.billing.stripe.read({businessId:r}),disconnectBusinessStripe:(r,o)=>n.billing.stripe.delete({businessId:r,deleteAccount:o?.deleteAccount}),analyticsQuery:(r,o,a)=>n.analytics.query({businessId:r,verb:o.verb,query:o.query},re(a)),managementListWebhooks:(r,o)=>n.webhooks.read({businessId:r,limit:o?.limit}),managementCreateWebhook:(r,o,a)=>n.webhooks.create({businessId:r,...o},re(a)),managementUpdateWebhook:(r,o,a,c)=>n.webhooks.update({businessId:r,webhookId:o,...a},re(c)),managementDeleteWebhook:(r,o)=>n.webhooks.delete({businessId:r,webhookId:o}),managementTestWebhook:(r,o,a,c)=>n.webhooks.test(a===void 0?{businessId:r,webhookId:o}:{businessId:r,webhookId:o,type:a.type},re(c)),managementRotateWebhookSecret:(r,o,a)=>n.webhooks.rotateSecret({businessId:r,webhookId:o},re(a)),managementListWebhookEventTypes:r=>n.webhooks.eventType.read({businessId:r}),managementListWebhookDeliveries:(r,o,a)=>n.webhooks.delivery.read({businessId:r,webhookId:o,...a}),builderListBackends:(r,o)=>n.backends.read({businessId:r,environmentId:o?.environmentId}),builderCreateBackend:(r,o,a)=>n.backends.create({businessId:r,...o},re(a)),builderBindBackend:(r,o,a,c)=>n.backends.bind({businessId:r,backend:o,...a},re(c)),builderDeleteBackend:(r,o)=>n.backends.delete({businessId:r,backendId:o}),builderListRuntimeTokens:(r,o)=>n.runtimeTokens.read({businessId:r,environmentId:o?.environmentId}),builderCreateRuntimeToken:(r,o,a)=>n.runtimeTokens.mint({businessId:r,...o},re(a)),builderRotateRuntimeToken:(r,o,a)=>n.runtimeTokens.rotate({businessId:r,tokenId:o},re(a)),builderRevokeRuntimeToken:(r,o)=>n.runtimeTokens.revoke({businessId:r,tokenId:o}),builderFrontendStatus:(r,o,a)=>n.frontend.status({businessId:r,environmentId:o,ref:a}),builderFrontendRollback:(r,o,a)=>n.frontend.rollback({businessId:r,...o},re(a)),builderListBulletin:(r,o)=>n.bulletin.list({businessId:r,...o}),builderGetBulletinPost:(r,o)=>n.bulletin.read({businessId:r,postId:o}),builderSetBulletinStatus:(r,o,a)=>(a==="acknowledged"?n.bulletin.ack:n.bulletin.resolve)({businessId:r,postId:o}),builderListAgents:r=>n.agents.list({businessId:r}),builderAgentStatus:(r,o)=>n.agents.status({businessId:r,role:o}),builderAgentRunDetail:(r,o,a)=>n.agents.runs.show({businessId:r,role:o,runId:a}),builderConfigureAgent:(r,o,a,c)=>(a.enabled?n.agents.enable:n.agents.disable)({businessId:r,role:o,config:a.config},re(c)),builderBusinessVariables:(r,o)=>n.variables.read({businessId:r,environmentId:o}),builderCreateBusinessVariable:(r,o,a,c)=>n.variables.create({businessId:r,name:o,...a},re(c)),builderRotateBusinessVariable:(r,o,a,c)=>n.variables.rotate({businessId:r,name:o,...a},re(c)),builderRevokeBusinessVariable:(r,o,a,c)=>n.variables.revoke({businessId:r,name:o,environmentId:a},re(c)),builderDeleteBusinessVariable:(r,o,a,c)=>n.variables.delete({businessId:r,name:o,environmentId:a},re(c)),builderGetBusinessVariableOperation:(r,o)=>n.variables.operation.read({businessId:r,operationId:o}),getBusinessNotificationPreferences:r=>n.notifications.preferences.read({businessId:r}),updateBusinessNotificationPreferences:(r,o)=>n.notifications.preferences.update({businessId:r,...o}),getBusinessTaxSettings:r=>n.billing.taxSettings.read({businessId:r}),updateBusinessTaxSettings:(r,o,a)=>n.billing.taxSettings.update({businessId:r,body:o},re(a)),issueBusinessAuthContext:(r,o)=>n.auth.context.issue({businessId:r,...o}),reportBusinessResourceCount:(r,o,a,c)=>n.platform.resourceCounts.report({businessId:r,resource:o,body:a},re(c)),explainBusinessDenial:(r,o)=>n.platform.denials.read({businessId:r,requestId:o}),listBusinessDependents:(r,o)=>n.platform.dependents.read({businessId:r,...o}),replayBusinessPeriod:(r,o)=>n.platform.workflowControl.replay({body:r},re(o)),previewBusinessConfigRollback:(r,o)=>n.platform.workflowControl.rollback({body:r},re(o)),listAutomationRules:(r,o)=>n.automationRules.read({businessId:r,...o}),createAutomationRule:(r,o,a)=>n.automationRules.create({businessId:r,body:o},re(a)),updateAutomationRule:(r,o,a,c)=>n.automationRules.update({businessId:r,ruleId:o,body:a},re(c)),deleteAutomationRule:(r,o)=>n.automationRules.delete({businessId:r,ruleId:o}),listKnowledgeIndex:r=>n.knowledge.guide.read(r),listBusinessKnowledgeIndex:(r,o)=>n.knowledge.business.read({businessId:r,...o}),issuePersonaBootstrapKey:(r,o,a,c)=>n.personas.bootstrap({businessId:r,environmentId:o,...a},re(c)),listPersonas:(r,o)=>n.personas.read({businessId:r,environmentId:o}),createPersonaBrowserHandoff:(r,o,a)=>n.personas.login({businessId:r,environmentId:o,personaId:a}),createPersonaLocalPreviewLease:r=>n.personas.localPreview.issue(r),renewPersonaLocalPreviewLease:r=>n.personas.localPreview.renew(r),revokePersonaLocalPreviewLease:r=>n.personas.localPreview.revoke(r),deletePersona:(r,o,a)=>n.personas.delete({businessId:r,environmentId:o,personaId:a}),rotatePersona:(r,o,a,c)=>n.personas.rotate({businessId:r,environmentId:o,personaId:a},re(c)),listAgreements:async(r,o)=>(await n.agreements.read({businessId:r,...o})).data,getAgreement:(r,o)=>n.agreements.get({businessId:r,agreementId:o}),getSubjectPins:(r,o)=>n.agreements.pins({businessId:r,subjectId:o}),previewAgreement:(r,o,a)=>n.agreements.previewCreate({businessId:r,body:o},re(a)),createAgreement:(r,o,a)=>n.agreements.create({businessId:r,body:o},re(a)),previewAgreementAmendment:(r,o,a,c)=>n.agreements.previewAmend({businessId:r,agreementId:o,body:a},re(c)),amendAgreement:(r,o,a,c)=>n.agreements.amend({businessId:r,agreementId:o,body:a},re(c))}}import{chmodSync as T5,existsSync as F0,mkdirSync as R5,readFileSync as V0,unlinkSync as zbe,writeFileSync as Dbe}from"node:fs";import{homedir as x5}from"node:os";import{join as wg}from"node:path";var j0="https://core.farthershore.com";var GS=wg(x5(),".farthershore"),B0=wg(GS,"config.json"),K0=wg(GS,"credentials.json");function O5(t){R5(t,{recursive:!0,mode:448}),T5(t,448)}var HS={apiUrl:j0};function ru(){if(O5(GS),!F0(B0))return HS;try{let t=JSON.parse(V0(B0,"utf-8"));return{...HS,...t}}catch{return HS}}var A5=new Set(["token","orgId","userId"]);function $5(t){if(t===null||typeof t!="object"||Array.isArray(t))return!1;let e=t;return Object.keys(e).some(n=>!A5.has(n))?!1:typeof e.token=="string"&&e.token.length>0&&(e.orgId===void 0||typeof e.orgId=="string")&&(e.userId===void 0||typeof e.userId=="string")}function iu(){if(!F0(K0))return null;try{let t=JSON.parse(V0(K0,"utf-8"));return $5(t)?t:null}catch{return null}}function C5(){return ru().links??{}}function Sg(t){let e=C5(),n=t;for(;;){let i=e[n];if(i)return i;let r=wg(n,"..");if(r===n)return null;n=r}}function q0(){let t=process.env.FARTHERSHORE_TOKEN;if(t){if(!t.startsWith("mk_"))throw new E("FARTHERSHORE_TOKEN accepts only an organization-scoped MakerToken.",400,{code:"AUTH_ENV_REQUIRES_MAKER_TOKEN"});return t}let e=iu();if(e?.token){if(!e.token.startsWith("fscli_")&&!e.token.startsWith("mk_"))throw new E("Stored credentials are no longer supported. Run `farthershore login` again.",401,{code:"AUTH_STORED_CREDENTIAL_UNSUPPORTED"});return e.token}throw new E("Not authenticated. Run `farthershore login` or set FARTHERSHORE_TOKEN for this invocation.")}function H0(t={},e=process.cwd()){let n=ru(),i=q0(),r=iu(),o=Sg(e)?.organizationId,a=r?.token===i?r.orgId:void 0,c=t.organization??o??a;return{apiUrl:t.apiUrl??process.env.FARTHERSHORE_API_URL??n.apiUrl,token:i,...c?{organizationId:c}:{},...t.organization&&o?{requiredOrganizationId:o}:{}}}var G0=(t=0)=>e=>`\x1B[${e+t}m`,Z0=(t=0)=>e=>`\x1B[${38+t};5;${e}m`,W0=(t=0)=>(e,n,i)=>`\x1B[${38+t};2;${e};${n};${i}m`,tt={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]}},Gbe=Object.keys(tt.modifier),N5=Object.keys(tt.color),P5=Object.keys(tt.bgColor),Zbe=[...N5,...P5];function z5(){let t=new Map;for(let[e,n]of Object.entries(tt)){for(let[i,r]of Object.entries(n))tt[i]={open:`\x1B[${r[0]}m`,close:`\x1B[${r[1]}m`},n[i]=tt[i],t.set(r[0],r[1]);Object.defineProperty(tt,e,{value:n,enumerable:!1})}return Object.defineProperty(tt,"codes",{value:t,enumerable:!1}),tt.color.close="\x1B[39m",tt.bgColor.close="\x1B[49m",tt.color.ansi=G0(),tt.color.ansi256=Z0(),tt.color.ansi16m=W0(),tt.bgColor.ansi=G0(10),tt.bgColor.ansi256=Z0(10),tt.bgColor.ansi16m=W0(10),Object.defineProperties(tt,{rgbToAnsi256:{value(e,n,i){return e===n&&n===i?e<8?16:e>248?231:Math.round((e-8)/247*24)+232:16+36*Math.round(e/255*5)+6*Math.round(n/255*5)+Math.round(i/255*5)},enumerable:!1},hexToRgb:{value(e){let n=/[a-f\d]{6}|[a-f\d]{3}/i.exec(e.toString(16));if(!n)return[0,0,0];let[i]=n;i.length===3&&(i=[...i].map(o=>o+o).join(""));let r=Number.parseInt(i,16);return[r>>16&255,r>>8&255,r&255]},enumerable:!1},hexToAnsi256:{value:e=>tt.rgbToAnsi256(...tt.hexToRgb(e)),enumerable:!1},ansi256ToAnsi:{value(e){if(e<8)return 30+e;if(e<16)return 90+(e-8);let n,i,r;if(e>=232)n=((e-232)*10+8)/255,i=n,r=n;else{e-=16;let c=e%36;n=Math.floor(e/36)/5,i=Math.floor(c/6)/5,r=c%6/5}let o=Math.max(n,i,r)*2;if(o===0)return 30;let a=30+(Math.round(r)<<2|Math.round(i)<<1|Math.round(n));return o===2&&(a+=60),a},enumerable:!1},rgbToAnsi:{value:(e,n,i)=>tt.ansi256ToAnsi(tt.rgbToAnsi256(e,n,i)),enumerable:!1},hexToAnsi:{value:e=>tt.ansi256ToAnsi(tt.hexToAnsi256(e)),enumerable:!1}}),tt}var D5=z5(),tr=D5;import ZS from"node:process";import L5 from"node:os";import J0 from"node:tty";function Pn(t,e=globalThis.Deno?globalThis.Deno.args:ZS.argv){let n=t.startsWith("-")?"":t.length===1?"-":"--",i=e.indexOf(n+t),r=e.indexOf("--");return i!==-1&&(r===-1||i<r)}var{env:nt}=ZS,Ig;Pn("no-color")||Pn("no-colors")||Pn("color=false")||Pn("color=never")?Ig=0:(Pn("color")||Pn("colors")||Pn("color=true")||Pn("color=always"))&&(Ig=1);function U5(){if("FORCE_COLOR"in nt)return nt.FORCE_COLOR==="true"?1:nt.FORCE_COLOR==="false"?0:nt.FORCE_COLOR.length===0?1:Math.min(Number.parseInt(nt.FORCE_COLOR,10),3)}function M5(t){return t===0?!1:{level:t,hasBasic:!0,has256:t>=2,has16m:t>=3}}function j5(t,{streamIsTTY:e,sniffFlags:n=!0}={}){let i=U5();i!==void 0&&(Ig=i);let r=n?Ig:i;if(r===0)return 0;if(n){if(Pn("color=16m")||Pn("color=full")||Pn("color=truecolor"))return 3;if(Pn("color=256"))return 2}if("TF_BUILD"in nt&&"AGENT_NAME"in nt)return 1;if(t&&!e&&r===void 0)return 0;let o=r||0;if(nt.TERM==="dumb")return o;if(ZS.platform==="win32"){let a=L5.release().split(".");return Number(a[0])>=10&&Number(a[2])>=10586?Number(a[2])>=14931?3:2:1}if("CI"in nt)return["GITHUB_ACTIONS","GITEA_ACTIONS","CIRCLECI"].some(a=>a in nt)?3:["TRAVIS","APPVEYOR","GITLAB_CI","BUILDKITE","DRONE"].some(a=>a in nt)||nt.CI_NAME==="codeship"?1:o;if("TEAMCITY_VERSION"in nt)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(nt.TEAMCITY_VERSION)?1:0;if(nt.COLORTERM==="truecolor"||nt.TERM==="xterm-kitty"||nt.TERM==="xterm-ghostty"||nt.TERM==="wezterm")return 3;if("TERM_PROGRAM"in nt){let a=Number.parseInt((nt.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(nt.TERM_PROGRAM){case"iTerm.app":return a>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(nt.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(nt.TERM)||"COLORTERM"in nt?1:o}function Y0(t,e={}){let n=j5(t,{streamIsTTY:t&&t.isTTY,...e});return M5(n)}var B5={stdout:Y0({isTTY:J0.isatty(1)}),stderr:Y0({isTTY:J0.isatty(2)})},X0=B5;function Q0(t,e,n){let i=t.indexOf(e);if(i===-1)return t;let r=e.length,o=0,a="";do a+=t.slice(o,i)+e+n,o=i+r,i=t.indexOf(e,o);while(i!==-1);return a+=t.slice(o),a}function ez(t,e,n,i){let r=0,o="";do{let a=t[i-1]==="\r";o+=t.slice(r,a?i-1:i)+e+(a?`\r
|
|
108
|
-
`:`
|
|
109
|
-
`)+n,r=i+1,i=t.indexOf(`
|
|
110
|
-
`,r)}while(i!==-1);return o+=t.slice(r),o}var{stdout:tz,stderr:nz}=X0,WS=Symbol("GENERATOR"),Ra=Symbol("STYLER"),ou=Symbol("IS_EMPTY"),rz=["ansi","ansi","ansi256","ansi16m"],xa=Object.create(null),K5=(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 n=tz?tz.level:0;t.level=e.level===void 0?n:e.level};var F5=t=>{let e=(...n)=>n.join(" ");return K5(e,t),Object.setPrototypeOf(e,su.prototype),e};function su(t){return F5(t)}Object.setPrototypeOf(su.prototype,Function.prototype);for(let[t,e]of Object.entries(tr))xa[t]={get(){let n=Eg(this,YS(e.open,e.close,this[Ra]),this[ou]);return Object.defineProperty(this,t,{value:n}),n}};xa.visible={get(){let t=Eg(this,this[Ra],!0);return Object.defineProperty(this,"visible",{value:t}),t}};var JS=(t,e,n,...i)=>t==="rgb"?e==="ansi16m"?tr[n].ansi16m(...i):e==="ansi256"?tr[n].ansi256(tr.rgbToAnsi256(...i)):tr[n].ansi(tr.rgbToAnsi(...i)):t==="hex"?JS("rgb",e,n,...tr.hexToRgb(...i)):tr[n][t](...i),V5=["rgb","hex","ansi256"];for(let t of V5){xa[t]={get(){let{level:n}=this;return function(...i){let r=YS(JS(t,rz[n],"color",...i),tr.color.close,this[Ra]);return Eg(this,r,this[ou])}}};let e="bg"+t[0].toUpperCase()+t.slice(1);xa[e]={get(){let{level:n}=this;return function(...i){let r=YS(JS(t,rz[n],"bgColor",...i),tr.bgColor.close,this[Ra]);return Eg(this,r,this[ou])}}}}var q5=Object.defineProperties(()=>{},{...xa,level:{enumerable:!0,get(){return this[WS].level},set(t){this[WS].level=t}}}),YS=(t,e,n)=>{let i,r;return n===void 0?(i=t,r=e):(i=n.openAll+t,r=e+n.closeAll),{open:t,close:e,openAll:i,closeAll:r,parent:n}},Eg=(t,e,n)=>{let i=(...r)=>H5(i,r.length===1?""+r[0]:r.join(" "));return Object.setPrototypeOf(i,q5),i[WS]=t,i[Ra]=e,i[ou]=n,i},H5=(t,e)=>{if(t.level<=0||!e)return t[ou]?"":e;let n=t[Ra];if(n===void 0)return e;let{openAll:i,closeAll:r}=n;if(e.includes("\x1B"))for(;n!==void 0;)e=Q0(e,n.close,n.open),n=n.parent;let o=e.indexOf(`
|
|
111
|
-
`);return o!==-1&&(e=ez(e,r,i,o)),i+e+r};Object.defineProperties(su.prototype,xa);var G5=su(),i_e=su({level:nz?nz.level:0});var Tg=G5;var Z5;function xo(){return Z5??W5(void 0)}function Rg(){return xo()==="json"}function bn(t){Rg()||process.stdout.write(`${t}
|
|
112
|
-
`)}function iz(t){if(Rg()){process.stderr.write(`${t}
|
|
113
|
-
`);return}console.warn(Tg.yellow(`\u26A0 ${t}`))}function xg(t){Rg()||console.log(Tg.dim(t))}function Og(t){Rg()||console.log(Tg.bold(t))}function XS(){return process.stdout.isTTY===!0}function W5(t){if(t==="json"||t==="table")return t;if(t!==void 0)throw new E(`Unsupported --format "${t}". Use "json" or "table".`,400,{code:"INVALID_OUTPUT_FORMAT",param:"format"});return XS()?"table":"json"}var oz={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`.)",OUTCOME_UNKNOWN:"The request was sent but no answer proves whether it ran. Do not resend it blindly: run the operation catalog's retry.reconcile read (`farthershore operations list`) and repeat the request only if that read shows it did not happen.",NETWORK_ERROR:"The platform could not be reached. Check connectivity and --api-url / FARTHERSHORE_API_URL, then retry; a read is safe to repeat.",TIMEOUT:"The platform did not answer in time. Retry the read; for a write, follow the reconcile guidance before repeating it.",RESPONSE_UNREADABLE:"The platform answered but its response could not be read. Retry a read; for a write, run the operation's retry.reconcile read (`farthershore operations list`) before repeating it \u2014 a one-time secret in that response cannot be recovered and must be rotated.",RELEASE_PENDING_ACCEPTANCE:"A release cut by an earlier publish is still being applied. Watch `farthershore business status` / `apply-timeline list` until it is accepted or failed, then publish again; nothing was cut twice.",ROLLBACK_IN_FLIGHT:"A rollback for this workflow is already running. Watch `farthershore business status` / `apply-timeline list` until it finishes; do not start another.",INVITATION_PENDING:"An invitation for this email is already pending. Use `organization invitation-list-sent` to find it; revoke it or wait for it to expire before inviting again.",UNAUTHORIZED:"Token is invalid or revoked. Run `farthershore 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:"Pipe an organization-scoped MakerToken to `farthershore login --token-stdin`, or set FARTHERSHORE_TOKEN to one for this invocation.",AUTH_INVALID_TOKEN:"Token format is malformed. Maker tokens start with `mk_` and are 30+ characters.",COMMAND_NOT_AVAILABLE_IN_PRODUCTION:"This command exists only in the stage channel (`make cli-stage`) and only against a stage core. Delete production businesses from the dashboard.",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 presentation field flag, such as --display-name or --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:"No environment by that name. `--env production` (or `prod`) addresses the LIVE business on every verb that takes --env \u2014 it is not a preview environment row. For the preview environments, use `farthershore env list <business>` (production is listed there too, with `id: null`), 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 `farthershore business create <slug>` (it provisions the managed 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 denial:read permission 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 sz(t){if(t)return oz[t]}var c_e=Object.keys(oz);function cz(t,e){return{schema_version:1,ok:!0,op:t,data:e}}function lz(t,e){let n=e.status??0;return{schema_version:1,ok:!1,op:t,error:{code:e.code??"INTERNAL_ERROR",message:e.message,status:n,param:e.param,retryable:e.retryable??Y5(n,e.code),retryDisposition:e.retryDisposition,...e.outcomeUnknown?{outcomeUnknown:!0}:{},details:e.details,hint:sz(e.code)}}}var J5=new Set(["RATE_LIMIT_EXCEEDED","SERVICE_UNAVAILABLE"]);function Y5(t,e){return e==="OUTCOME_UNKNOWN"?!1:t>=500||t===429||t===503?!0:e?J5.has(e):!1}var X5=/^(mk_[^.\s]+\.[^\s]+|fscli_[^.\s]+\.[^\s]+|fsrt_(test|live)_[^\s]+|fsk_[A-Za-z0-9_-]{8,}|sk_(test|live)_[A-Za-z0-9_-]{8,}|eyJ[A-Za-z0-9_-]+\.[A-Za-z0-9_-]+\.[A-Za-z0-9_-]+)$/,Q5=/^(secret|clientSecret|privateKey|password|plaintext|connectorToken|tunnelToken|accessToken|refreshToken|tokenHash)$/i;function uz(t){return t.length<=8?"***redacted***":`${t.slice(0,4)}\u2026${t.slice(-4)}`}function Ag(t){if(typeof t=="string")return X5.test(t)?uz(t):t;if(Array.isArray(t))return t.map(e=>Ag(e));if(t&&typeof t=="object"){let e={};for(let[n,i]of Object.entries(t))Q5.test(n)&&typeof i=="string"?e[n]=uz(i):e[n]=Ag(i);return e}return t}import{createInterface as pJ}from"node:readline";import{readFile as fJ}from"node:fs/promises";import{extname as gJ}from"node:path";var eJ={"business.list":{summary:"List businesses in the current org",description:"List every business in the authenticated FartherShore workspace (id, name, status). Read-only; use this to discover business ids for the other tools.",destructive:!1,oneTimeSecret:!1,preview:!1,pagination:"offset"},"business.read":{summary:"Show a business",description:"Show a business",destructive:!1,oneTimeSecret:!1,preview:!1},"business.routes.read":{summary:"List a business's compiled routes",description:"List a business's compiled routes",destructive:!1,oneTimeSecret:!1,preview:!1},"business.subdomain_availability.read":{summary:"Check whether a slug is free to use as a business subdomain before creating it",description:"Check whether a candidate slug is free to use as a business subdomain (normalized, blocked-word and collision checked). Read-only; run before fs_business_create.",destructive:!1,oneTimeSecret:!1,preview:!1},"business.config_attempts.read":{summary:"List rejected configuration attempts for a business",description:"List rejected configuration attempts for a business",destructive:!1,oneTimeSecret:!1,preview:!1},"business.contract.read":{summary:"Show a business's accepted contract synopsis",description:"Show a business's accepted contract synopsis",destructive:!1,oneTimeSecret:!1,preview:!1},"business.status":{summary:"Show whether one environment is fully live: its lifecycle, release, and whether every part serves that release",description:"Check one environment of a business, by id or slug: its lifecycle state, the release it should serve, and whether every part of the environment is serving exactly that release yet. Use it to prove a publish is fully live. Read-only.",destructive:!1,oneTimeSecret:!1,preview:!1},"rbac.read":{summary:"Show a business's Managed-RBAC state: the platform `rbacEnabled` flag",description:"Show a business's Managed-RBAC state: the platform `rbacEnabled` flag.",destructive:!1,oneTimeSecret:!1,preview:!1},"rbac.enable":{summary:"Enable Managed RBAC for a business",description:"Enable Managed RBAC for a business. Subscriber organizations can then manage roles in their portal. Safe to repeat: enabling it when already enabled changes nothing.",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"rbac.read"}},"rbac.disable":{summary:"Disable Managed RBAC for a business",description:"Disable Managed RBAC for a business. Subscriber roles and assignments are kept, so enabling it again restores them. Safe to repeat: disabling it when already disabled changes nothing.",destructive:!0,oneTimeSecret:!1,preview:!1,reconcile:{op:"rbac.read"}},"rbac.subjects.read":{summary:"List the raw permission subjects subscriber organizations can assemble into their own roles (repo-owned: authored via fs.group permission config in business/)",description:"List a business's raw permission vocabulary (subject, verbs, escalatory verbs, description). The SDK/compiler do not create roles: each subscribing organization assembles this catalog into its own CUSTOM roles, default, and assignments. Subjects are declared via permission-carrying `fs.group(id, routes, { permission })` in the business/ repo; run `farthershore validate` and push to change them. Read-only.",destructive:!1,oneTimeSecret:!1,preview:!1},"business.create":{summary:"Create a new business and provision its managed GitHub repo",description:"Create a new business and provision its managed GitHub repo",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"business.list"}},"brand.update":{summary:"Update business presentation metadata",description:"Update a business's brand and presentation \u2014 display name, description, icon, logo (wordmark), key prefix, and organization-page visibility. Plans, pricing, routes, and backend origins are managed through their dedicated surfaces. Only the fields you pass are changed.",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"business.read"}},"business.publish":{summary:"Publish a draft business (make it live) and cut a versioned release with an auto-computed semver. Requires at least one plan, a bound backend, and a verified Stripe connection",description:"Publish a business \u2014 validate its current spec and queue a versioned release with an auto-computed semver. Use business status to prove it is live.",destructive:!1,oneTimeSecret:!1,preview:!0,reconcile:{op:"business.status"}},"business.rollback":{summary:"Roll back a prior business publish workflow",description:"Roll back a prior business publish workflow",destructive:!0,oneTimeSecret:!1,preview:!1,reconcile:{op:"business.status"}},"business.delete":{summary:"Permanently delete a business (stage only)",description:"(stage only) Permanently delete a business. Requires --yes. Registered only in the stage channel (`make cli-stage`); production businesses are deleted from the dashboard.",destructive:!0,oneTimeSecret:!1,preview:!1,reconcile:{op:"business.list"}},"business.preview_env.set":{summary:"Configure automatic preview-environment creation for a business",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/.",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"environment.read"}},"business.docs.enable":{summary:"Enable docs for a business (publish/serve docs scaffold)",description:"Enable docs for a business \u2014 published docs become available in the portal. Safe to repeat: enabling them when already enabled changes nothing.",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"business.read"}},"business.docs.disable":{summary:"Disable docs for a business (stop publishing/serving docs; scaffold kept in the repo)",description:"Disable docs for a business \u2014 docs are no longer shown in the portal. The docs scaffold stays in the repo, so enabling them again restores them. Safe to repeat: disabling them when already disabled changes nothing.",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"business.read"}},"apply_timeline.list":{summary:"List a business's Apply Timeline: repo-triggered manifest applies (PRs, pushes, releases), checks, semantic diffs, and apply phases",description:"List a business's Apply Timeline: repo-triggered manifest applies (PRs, pushes, releases), checks, semantic diffs, and apply phases.",destructive:!1,oneTimeSecret:!1,preview:!1},"apply_timeline.read":{summary:"Inspect one Apply Timeline entry by id, release tag, PR number, branch, or commit SHA",description:"Inspect one Apply Timeline entry by id, release tag, PR number, branch, or commit SHA.",destructive:!1,oneTimeSecret:!1,preview:!1},"change_set.propose":{summary:"Propose a governed ChangeSet against a subscriber (agent/builder proposer; a human approves + applies in the portal)",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.",destructive:!1,oneTimeSecret:!1,preview:!0,reconcile:{op:"change_set.proposal_list"}},"change_set.preview":{summary:"Simulate + store a preview on a proposed ChangeSet (rides the propose authority)",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.",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"change_set.proposal_read"}},"change_set.proposal_list":{summary:"List governed ChangeSets proposed against a subscriber",description:"List governed ChangeSets proposed against a subscriber (Agent Proposal Flow). Read-only; use it to discover proposal ids + their status before previewing.",destructive:!1,oneTimeSecret:!1,preview:!1,pagination:"cursor"},"change_set.proposal_read":{summary:"Read one governed ChangeSet proposed against a subscriber",description:"Read one governed ChangeSet proposed against a subscriber (Agent Proposal Flow) \u2014 its operations, risk, simulation, approvals, and status. Read-only.",destructive:!1,oneTimeSecret:!1,preview:!1},"plan.read":{summary:"List plans for a business",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. Without environmentId the PRODUCTION plans are returned; pass environmentId to see what a preview environment serves. Pass the business id from fs_business_list.",destructive:!1,oneTimeSecret:!1,preview:!1,pagination:"offset"},"environment.read":{summary:"List environments for a business",description:"List a business's preview environments (name, branch, hostnames). Production is not an environment row: it is the live business, addressed with `--env production` (or by omitting the environment) on every verb that takes one. The API returns only preview environment rows; the CLI and MCP listings prepend a synthetic `production` row with `id: null` and no branch. Read-only.",destructive:!1,oneTimeSecret:!1,preview:!1,pagination:"offset"},"environment.create":{summary:"Create a preview environment bound to a git branch",description:"Create a preview environment bound to a git branch. Provide a name and the git branch it tracks.",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"environment.read"}},"environment.delete":{summary:"Delete an environment by name",description:"Delete an environment by name. Requires --yes.",destructive:!0,oneTimeSecret:!1,preview:!1,reconcile:{op:"environment.read"}},"backend.read":{summary:"List backends for a business (id, scope, name, transport, status)",description:"List a business's backends (origins) \u2014 id, scope (production|environment), environmentId, name, slug, transport (direct|tunnel), default flag, and derived status. Backends are per-(business, environment) rows, so the same declared backend can legitimately appear once per scope and be default in each. Read-only.",destructive:!1,oneTimeSecret:!1,preview:!1,pagination:"offset"},"backend.create":{summary:"Create a backend (default transport: direct)",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.",destructive:!1,oneTimeSecret:!1,preview:!0,reconcile:{op:"backend.read"}},"backend.bind":{summary:"Bind a logical backend to a direct upstream in one environment",description:"Bind a logical backend id to a concrete direct upstream URL in one environment. Previews inherit the production backend until a concrete override is bound. Omit environmentId for production.",destructive:!1,oneTimeSecret:!1,preview:!0,reconcile:{op:"backend.read"}},"backend.delete":{summary:"Delete a backend (revokes its runtime tokens)",description:"Delete a backend (origin). Traffic routed to it stops; re-create to restore.",destructive:!0,oneTimeSecret:!1,preview:!1,reconcile:{op:"backend.read"}},"runtime_token.read":{summary:"List runtime tokens for a business",description:"List a business's runtime tokens (fsrt_) \u2014 id, last-four, operations, status, and env scope. Read-only; secrets are never shown.",destructive:!1,oneTimeSecret:!1,preview:!1,pagination:"offset"},"runtime_token.mint":{summary:"Create a runtime token (returns FS_RUNTIME_TOKEN once)",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).",destructive:!1,oneTimeSecret:!0,preview:!1,reconcile:{op:"runtime_token.read"}},"runtime_token.rotate":{summary:"Rotate a runtime token (returns a fresh FS_RUNTIME_TOKEN once)",description:"Rotate a runtime token: mint a fresh secret carrying the same scope and revoke the old one. Returns the new plaintext token ONCE.",destructive:!0,oneTimeSecret:!0,preview:!1,reconcile:{op:"runtime_token.read"}},"runtime_token.revoke":{summary:"Revoke a runtime token",description:"Revoke a runtime token. The backend using it stops verifying.",destructive:!0,oneTimeSecret:!1,preview:!1,reconcile:{op:"runtime_token.read"}},"frontend.status":{summary:"Show the current frontend release, recent releases, and recent builds (incl. failure reasons)",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.",destructive:!1,oneTimeSecret:!1,preview:!1},"frontend.rollback":{summary:"Roll the business frontend back to a prior release (re-activate its releaseId)",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.",destructive:!0,oneTimeSecret:!1,preview:!0,reconcile:{op:"frontend.status"}},"webhook.read":{summary:"List API-managed webhook endpoints",description:"List API-managed outbound webhook endpoints for a business. Read-only; signing secrets are never returned.",destructive:!1,oneTimeSecret:!1,preview:!1,pagination:"offset"},"webhook.create":{summary:"Create an API-managed webhook endpoint",description:"Create an outbound webhook endpoint for a business. Returns the signing secret once.",destructive:!1,oneTimeSecret:!0,preview:!1,reconcile:{op:"webhook.read"}},"webhook.update":{summary:"Update a webhook endpoint's URL, events, environment or enabled state",description:"Update an API-managed webhook endpoint's URL, event list, environment scope and/or enabled state. Use fs_webhook_rotate_secret for a new signing secret.",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"webhook.read"}},"webhook.delete":{summary:"Delete an API-managed webhook endpoint",description:"Delete an outbound webhook endpoint.",destructive:!0,oneTimeSecret:!1,preview:!1,reconcile:{op:"webhook.read"}},"webhook.test":{summary:"Send a signed test event to a webhook endpoint",description:"Send a signed test event to an API-managed webhook endpoint and persist the delivery result.",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"webhook.delivery.read"}},"webhook.trigger":{summary:"Send a signed sample of a specific event (e.g. payment.failed) to a webhook endpoint",description:"Send a signed sample of a specific event (e.g. payment.failed) to a webhook endpoint",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"webhook.delivery.read"}},"webhook.listen":{summary:"Tunnel platform webhooks to a local receiver and tail deliveries until Ctrl-C",description:"Tunnel platform webhooks to a local receiver and tail deliveries until Ctrl-C",destructive:!1,oneTimeSecret:!0,preview:!1,reconcile:{op:"webhook.read"}},"webhook.rotate_secret":{summary:"Issue a new signing secret (returned once); the old one keeps verifying for 24h",description:"Issue a replacement signing secret for a webhook endpoint. Returns the new secret once; deliveries carry both signatures for 24 hours so the receiver can roll over without a gap.",destructive:!0,oneTimeSecret:!0,preview:!1,reconcile:{op:"webhook.read"}},"webhook.event_type.read":{summary:"List the event names a webhook endpoint can subscribe to",description:"List the event names a webhook endpoint can subscribe to, with descriptions.",destructive:!1,oneTimeSecret:!1,preview:!1},"webhook.delivery.read":{summary:"List recent delivery attempts for a webhook endpoint",description:"List recent delivery attempts for a webhook endpoint. Payload and response body are intentionally omitted.",destructive:!1,oneTimeSecret:!1,preview:!1,pagination:"offset"},"agents.list":{summary:"List a business's operating agents + enableable roles",description:"The agent roster for a business: the enabled/disabled Operator plus any roles that can still be enabled. Read-only.",destructive:!1,oneTimeSecret:!1,preview:!1},"agents.status":{summary:"The Operator's activation state, recent runs, and usage totals",description:"The Operator's activation state, recent run history (newest-first), and lifetime usage totals (LLM tokens + actions). Read-only.",destructive:!1,oneTimeSecret:!1,preview:!1},"agents.runs.show":{summary:"One run's full paper trail: trace, launches, action receipts",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.",destructive:!1,oneTimeSecret:!1,preview:!1},"agents.enable":{summary:"Turn the Operator on (creates it on first enable)",description:"Turn the business's Operator agent on (created on first enable). It runs autonomously on its cadence; agent-work billing accrues while enabled.",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"agents.status"}},"agents.disable":{summary:"Turn the Operator off (stops runs + billing)",description:"Turn the Operator off: the dispatcher stops scheduling runs and agent-work billing stops accruing. Re-enable at any time.",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"agents.status"}},"bulletin.list":{summary:"List the agents' bulletin feed (trends + change requests)",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.",destructive:!1,oneTimeSecret:!1,preview:!1,pagination:"cursor"},"bulletin.read":{summary:"Show one bulletin post (full body + data payload)",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.",destructive:!1,oneTimeSecret:!1,preview:!1},"bulletin.ack":{summary:"Acknowledge a post (the coding agent picked it up)",description:"Mark a bulletin post acknowledged \u2014 the hand-off signal that the coding agent (or builder) has picked the item up. Forward-only; acknowledging an already-acknowledged post changes nothing.",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"bulletin.read"}},"bulletin.resolve":{summary:"Resolve a post (the work landed)",description:"Mark a bulletin post resolved \u2014 the referenced work landed (or the trend was addressed). Terminal state.",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"bulletin.read"}},"promo_code.read":{summary:"List API-managed promo codes for checkout",description:"List API-managed promo codes for a business. Promo codes are checkout operational state, not repo-authored Business SDK state.",destructive:!1,oneTimeSecret:!1,preview:!1},"promo_code.create":{summary:"Create an API-managed checkout 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.",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"promo_code.read"}},"promo_code.update":{summary:"Update an API-managed checkout promo code",description:"Update an API-managed checkout promo code. Spec changes rotate the Stripe coupon/promotion code behind the scenes.",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"promo_code.read"}},"promo_code.archive":{summary:"Archive a checkout promo code",description:"Archive an API-managed checkout promo code.",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"promo_code.read"}},"promo_code.reactivate":{summary:"Reactivate an archived checkout promo code",description:"Reactivate an archived API-managed checkout promo code.",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"promo_code.read"}},"consumer.read":{summary:"List a business's consumers, one consumer's API keys, or its Managed-RBAC roles",description:"Reads a business's consumers (subscribers). The same capability lists one consumer's API keys (metadata only; key material is never returned) and one subscriber's Managed-RBAC roles.",destructive:!1,oneTimeSecret:!1,preview:!1},"consumer.block":{summary:"Block a consumer (revoking every API key) or revoke one of its API keys",description:"Blocks a consumer and revokes every active API key, or surgically revokes ONE of the consumer's API keys. Revoked keys stop authenticating.",destructive:!0,oneTimeSecret:!1,preview:!1,reconcile:{op:"consumer.read"}},"consumer.migrate_latest":{summary:"Move one consumer to the active head of their plan lineage",description:"Move one consumer onto the current head of their plan lineage immediately. Operates on live subscription state.",destructive:!0,oneTimeSecret:!1,preview:!1,reconcile:{op:"consumer.read"}},"consumer.remove":{summary:"Remove a user from live business access",description:"Remove a user/consumer from live business access: cancel subscriptions, revoke credentials, purge related live state, and archive the subscriber while retaining billing/audit history. Destructive and convergent on retry; it does not edit repo-authored business behavior.",destructive:!0,oneTimeSecret:!1,preview:!1,reconcile:{op:"consumer.read"}},"consumer.roles.assign":{summary:"Replace a client-org member's Managed-RBAC business roles (builder support override)",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.",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"consumer.read"}},"consumer.rbac.enable":{summary:"Turn Managed-RBAC enforcement on for one subscriber",description:"Turn Managed-RBAC enforcement ON for ONE subscriber, and optionally set the org's default role. Enforcement requires BOTH this flag and the product flag (rbac.enable). Safe to repeat. Live-state operation; it does not edit repo-authored business behavior.",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"consumer.read"}},"consumer.rbac.disable":{summary:"Turn Managed-RBAC enforcement off for one subscriber",description:"Turn Managed-RBAC enforcement OFF for ONE subscriber. This is an ACCESS EXPANSION \u2014 with enforcement off, credential permission resolution can return ['*']. Role definitions are preserved for re-enable. Live-state operation; it does not edit repo-authored business behavior.",destructive:!0,oneTimeSecret:!1,preview:!1,reconcile:{op:"consumer.read"}},"consumer.role.create":{summary:"Create a CUSTOM Managed-RBAC role for one subscriber",description:"Create a CUSTOM Managed-RBAC role for ONE subscriber from the business's derived permission catalog. A duplicate role key is refused. Live-state operation; it does not edit repo-authored business behavior.",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"consumer.read"}},"consumer.role.update":{summary:"Rename or re-permission one subscriber Managed-RBAC role",description:"Rename and/or re-permission ONE subscriber Managed-RBAC role. `permissions` is set-replace \u2014 the given list becomes the role's full grant. Live-state operation; it does not edit repo-authored business behavior.",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"consumer.read"}},"consumer.role.delete":{summary:"Delete one subscriber Managed-RBAC role",description:"Delete ONE subscriber Managed-RBAC role. The key is stripped from every member and credential that holds it and cleared as the org default. Live-state operation; it does not edit repo-authored business behavior.",destructive:!0,oneTimeSecret:!1,preview:!1,reconcile:{op:"consumer.read"}},"business_variable.read":{summary:"List variables: FS_PUBLIC_* values, secret metadata only",description:"Lists variables. Returns readable FS_PUBLIC_* values; every other variable is a write-only secret and only its lifecycle metadata is returned.",destructive:!1,oneTimeSecret:!1,preview:!1},"business_variable.create":{summary:"Create a variable from stdin (secret unless named FS_PUBLIC_*)",description:"Creates an immutable variable generation. An FS_PUBLIC_-prefixed name is public (inlined into the frontend bundle); any other name is a write-only secret whose plaintext is accepted once and never returned.",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"business_variable.read"}},"business_variable.rotate":{summary:"Rotate a variable from stdin (the name, and so the class, is unchanged)",description:"Creates an immutable variable generation. An FS_PUBLIC_-prefixed name is public (inlined into the frontend bundle); any other name is a write-only secret whose plaintext is accepted once and never returned.",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"business_variable.read"}},"business_variable.revoke":{summary:"Revoke runtime access to a secret",description:"Revokes runtime access after explicit confirmation and returns a durable operation.",destructive:!0,oneTimeSecret:!1,preview:!1,reconcile:{op:"business_variable.read"}},"business_variable.delete":{summary:"Destroy a revoked secret in Main or preview",description:"Permanently destroys ciphertext after acknowledged revocation. Main and preview use the same contract.",destructive:!0,oneTimeSecret:!1,preview:!1,reconcile:{op:"business_variable.read"}},"business_variable.operation.read":{summary:"Read a durable secret mutation operation",description:"Reads publication status and frozen impact metadata.",destructive:!1,oneTimeSecret:!1,preview:!1},"agreement.read":{summary:"List or show a business's economic agreements and their pins",description:"Lists a business's economic agreements, shows one agreement with its terms, and shows the agreement pins that bind subscribers to a version.",destructive:!1,oneTimeSecret:!1,preview:!1,pagination:"offset"},"agreement.create":{summary:"Create an economic agreement (previews first; commits with the confirmation token)",description:"Create an economic agreement (confirm-gated: previews first; pass --confirm <token> to commit)",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"agreement.read"}},"agreement.amend":{summary:"Amend an agreement's contract terms (append-only; previews first; commits with the confirmation token)",description:"Amend an agreement's contract terms (append-only; confirm-gated: previews first; pass --confirm <token> to commit)",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"agreement.read"}},"usage.read":{summary:"Show usage summary for the last 30 days",description:"Read a business's usage summary \u2014 metered request counts and tier utilization. Without environmentId this rolls up EVERY environment. Read-only.",destructive:!1,oneTimeSecret:!1,preview:!1,pagination:"offset"},"persona.bootstrap":{summary:"Issue a fresh fsk_test_ API key in a test environment",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.",destructive:!1,oneTimeSecret:!0,preview:!1,reconcile:{op:"persona.read"}},"persona.read":{summary:"List personas for a test environment",description:"List a business environment's test personas (id, label, status). Read-only.",destructive:!1,oneTimeSecret:!1,preview:!1},"persona.login":{summary:"Open a browser signed in as a test persona",description:"Open a browser signed in as a test persona",destructive:!1,oneTimeSecret:!0,preview:!1},"persona.rotate":{summary:"Rotate a persona's test API key and return the new key once",description:"Rotate a test persona's API key. Returns the replacement key once.",destructive:!0,oneTimeSecret:!0,preview:!1,reconcile:{op:"persona.read"}},"persona.delete":{summary:"Delete a temporary persona and its test-owned identity state",description:"Delete a temporary test persona, including its credential, browser access, and test-owned identity state.",destructive:!0,oneTimeSecret:!1,preview:!1,reconcile:{op:"persona.read"}},"analytics.timeseries":{summary:"Request (or denial) 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.",destructive:!1,oneTimeSecret:!1,preview:!1},"analytics.latency":{summary:"Request latency percentiles (p50 / p95 / p99)",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.",destructive:!1,oneTimeSecret:!1,preview:!1},"analytics.top":{summary:"Top callers / event types / environments by volume",description:"Ranked breakdown of archive events by caller, event type, or environment. Read-only.",destructive:!1,oneTimeSecret:!1,preview:!1},"analytics.log":{summary:"Recent requests \u2014 the live metering signal, newest first",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.",destructive:!1,oneTimeSecret:!1,preview:!1},"organization.list":{summary:"List builder organizations available to the caller",description:"List builder organizations available to the caller",destructive:!1,oneTimeSecret:!1,preview:!1},"organization.create":{summary:"Create a team or company organization",description:"Create a team or company organization",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"organization.list"}},"organization.role.list":{summary:"List the roles available in an organization",description:"List the roles available in an organization",destructive:!1,oneTimeSecret:!1,preview:!1},"organization.role.show":{summary:"Show one organization role and its exact permissions",description:"Show one organization role and its exact permissions",destructive:!1,oneTimeSecret:!1,preview:!1},"organization.role.create":{summary:"Create a custom organization role",description:"Create a custom organization role",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"organization.role.list"}},"organization.role.update":{summary:"Update a built-in or custom organization role",description:"Update a built-in or custom organization role",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"organization.role.show"}},"organization.role.delete":{summary:"Delete an unused custom organization role",description:"Delete an unused custom organization role",destructive:!0,oneTimeSecret:!1,preview:!1,reconcile:{op:"organization.role.list"}},"organization.member.list":{summary:"List organization members",description:"List organization members",destructive:!1,oneTimeSecret:!1,preview:!1,pagination:"offset"},"organization.invitation.create":{summary:"Invite a member to an organization",description:"Invite a member to an organization. Returns the raw invitation token once; invitation listings never show it.",destructive:!1,oneTimeSecret:!0,preview:!1,reconcile:{op:"organization.invitation.list_sent"}},"organization.invitation.list":{summary:"List the caller's pending organization invitations",description:"List the caller's pending organization invitations",destructive:!1,oneTimeSecret:!1,preview:!1},"organization.invitation.list_sent":{summary:"List an organization's outstanding sent invitations",description:"List an organization's outstanding sent invitations",destructive:!1,oneTimeSecret:!1,preview:!1},"organization.invitation.revoke":{summary:"Revoke a pending organization invitation",description:"Revoke a pending organization invitation",destructive:!0,oneTimeSecret:!1,preview:!1,reconcile:{op:"organization.invitation.list_sent"}},"organization.invitation.accept":{summary:"Accept an organization invitation",description:"Accept an organization invitation",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"organization.list"}},"organization.member.update":{summary:"Change an organization member's role",description:"Change an organization member's role",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"organization.member.list"}},"organization.member.remove":{summary:"Remove a member from an organization",description:"Remove a member from an organization",destructive:!0,oneTimeSecret:!1,preview:!1,reconcile:{op:"organization.member.list"}},"organization.ownership.transfer":{summary:"Transfer primary ownership of a team or company organization to another member",description:"Transfer primary ownership of a team or company organization to another existing member. Destructive and irreversible for the caller; requires the signed-in owner's session.",destructive:!0,oneTimeSecret:!1,preview:!1,reconcile:{op:"organization.overview.read"}},"organization.delete":{summary:"Delete an organization and its managed state",description:"Delete an organization and its managed state",destructive:!0,oneTimeSecret:!1,preview:!1,reconcile:{op:"organization.list"}},"organization.overview.read":{summary:"Read the organization overview shown on the dashboard",description:"Read the organization overview shown on the dashboard",destructive:!1,oneTimeSecret:!1,preview:!1},"organization.bulletin.read":{summary:"List the consolidated bulletin across the organization",description:"List the consolidated bulletin across the organization",destructive:!1,oneTimeSecret:!1,preview:!1,pagination:"cursor"},"org_maker_token.permission_catalog.read":{summary:"List the exact permissions a human may delegate to an org MakerToken",description:"List the exact permissions a human may delegate to an org MakerToken",destructive:!1,oneTimeSecret:!1,preview:!1},"org_maker_token.list":{summary:"List organization-owned MakerTokens",description:"List organization-owned MakerTokens",destructive:!1,oneTimeSecret:!1,preview:!1,pagination:"offset"},"org_maker_token.create":{summary:"Create or request approval for an organization-owned MakerToken",description:"Create or request approval for an organization-owned MakerToken",destructive:!1,oneTimeSecret:!0,preview:!1,reconcile:{op:"org_maker_token.list"}},"org_maker_token.update":{summary:"Replace an org MakerToken's grants or request approval for the change",description:"Replace an org MakerToken's grants or request approval for the change",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"org_maker_token.list"}},"org_maker_token.approval_list":{summary:"List pending org MakerToken approval requests",description:"List pending org MakerToken approval requests",destructive:!1,oneTimeSecret:!1,preview:!1},"org_maker_token.approve":{summary:"Approve an org MakerToken request, optionally trimming its grants",description:"Approve an org MakerToken request, optionally trimming its grants",destructive:!1,oneTimeSecret:!0,preview:!1,reconcile:{op:"org_maker_token.approval_list"}},"org_maker_token.deny":{summary:"Deny an org MakerToken approval request",description:"Deny an org MakerToken approval request",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"org_maker_token.approval_list"}},"org_maker_token.rotate":{summary:"Rotate an org MakerToken and reveal its replacement once",description:"Rotate an org MakerToken and reveal its replacement once",destructive:!0,oneTimeSecret:!0,preview:!1,reconcile:{op:"org_maker_token.list"}},"org_maker_token.revoke":{summary:"Permanently revoke an org MakerToken",description:"Permanently revoke an org MakerToken",destructive:!0,oneTimeSecret:!1,preview:!1,reconcile:{op:"org_maker_token.list"}},"stripe_connection.read":{summary:"Show the Stripe connection a business bills through (business override or org default)",description:"Read the Stripe Connect account a business bills through \u2014 a per-business override when present, otherwise the organization default \u2014 including onboarding and tax-enrollment state. Read-only. Connecting Stripe is browser-only and has no tool.",destructive:!1,oneTimeSecret:!1,preview:!1},"stripe_connection.delete":{summary:"Remove a business's per-business Stripe override so it bills through the org default again",description:"Remove a business's per-business Stripe Connect override so it bills through the organization default again. Refused while any subscription is still money-bearing. Destructive live-state operation; it does not edit repo-authored business behavior.",destructive:!0,oneTimeSecret:!1,preview:!1,reconcile:{op:"stripe_connection.read"}},"audit_log.read":{summary:"List organization or business-scoped audit-log rows",description:"List organization or business-scoped audit-log rows",destructive:!1,oneTimeSecret:!1,preview:!1,pagination:"cursor"},"audit_log.business.read":{summary:"List one business's audit-log rows",description:"List one business's audit-log rows",destructive:!1,oneTimeSecret:!1,preview:!1,pagination:"cursor"},"audit_log.export":{summary:"Export organization or business-scoped audit logs as CSV",description:"Export organization or business-scoped audit logs as CSV",destructive:!1,oneTimeSecret:!1,preview:!1},"audit_log.business.export":{summary:"Export one business's audit logs as CSV",description:"Export one business's audit logs as CSV",destructive:!1,oneTimeSecret:!1,preview:!1},"notification.preferences.read":{summary:"Get notification (email) opt-out preferences",description:"Get notification (email) opt-out preferences",destructive:!1,oneTimeSecret:!1,preview:!1},"notification.preferences.update":{summary:"Patch notification (email) opt-out preferences",description:"Patch notification (email) opt-out preferences",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"notification.preferences.read"}},"auth.context.issue":{summary:"Issue a short-lived gateway context token for a subscriber member",description:"Issue a short-lived gateway context token for a subscriber member",destructive:!1,oneTimeSecret:!0,preview:!1},"tax_settings.read":{summary:"Show a business's Stripe Tax settings",description:"Show a business's Stripe Tax settings",destructive:!1,oneTimeSecret:!1,preview:!1},"tax_settings.update":{summary:"Update a business's Stripe Tax settings",description:"Update a business's Stripe Tax settings",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"tax_settings.read"}},"resource_count.report":{summary:"Report a subscription resource count",description:"Report a subscription resource count",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"usage.read"}},"denial.read":{summary:"Explain a denied request",description:"Explain a denied request",destructive:!1,oneTimeSecret:!1,preview:!1},"business_dependents.read":{summary:"List active dependents for a business route",description:"List active dependents for a business route",destructive:!1,oneTimeSecret:!1,preview:!1},"workflow.replay":{summary:"Preview a historical billing replay",description:"Preview a historical billing replay",destructive:!1,oneTimeSecret:!1,preview:!1},"workflow.rollback":{summary:"Preview restoring a business config commit",description:"Preview restoring a business config commit",destructive:!1,oneTimeSecret:!1,preview:!1},"automation_rule.read":{summary:"List automation rules",description:"List automation rules",destructive:!1,oneTimeSecret:!1,preview:!1,pagination:"cursor"},"automation_rule.create":{summary:"Create an automation rule",description:"Create an automation rule",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"automation_rule.read"}},"automation_rule.update":{summary:"Update an automation rule",description:"Update an automation rule",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"automation_rule.read"}},"automation_rule.delete":{summary:"Delete an automation rule",description:"Delete an automation rule",destructive:!0,oneTimeSecret:!1,preview:!1,reconcile:{op:"automation_rule.read"}},"knowledge.guide.read":{summary:"List platform guide resources",description:"List platform guide resources",destructive:!1,oneTimeSecret:!1,preview:!1,pagination:"cursor"},"knowledge.business.read":{summary:"List one business's knowledge resources",description:"List one business's knowledge resources",destructive:!1,oneTimeSecret:!1,preview:!1,pagination:"cursor"},"plan.create":{summary:"Create a plan (repo-authored)",description:"Declare the plan with `fs.plan()` in the business repo's business/ folder and push \u2014 the platform applies it.",destructive:!1,oneTimeSecret:!1,preview:!1},"plan.update":{summary:"Change a plan's shape (repo-authored)",description:"Declare the plan's new shape with `fs.plan()` in the business repo's business/ folder and push \u2014 the platform applies it.",destructive:!1,oneTimeSecret:!1,preview:!1},"plan.delete":{summary:"Delete a plan (repo-authored)",description:"Declare the removal (delete the `fs.plan()` call) in the business repo's business/ folder and push \u2014 the platform applies it.",destructive:!0,oneTimeSecret:!1,preview:!1},"plan.variant.create":{summary:"Create a plan variant (repo-authored)",description:"Declare the plan variant with `fs.plan()` in the business repo's business/ folder and push \u2014 the platform applies it.",destructive:!1,oneTimeSecret:!1,preview:!1},"plan.promote":{summary:"Promote a plan version (repo-authored)",description:"Declare the promoted plan version in the business repo's business/ folder and push \u2014 the platform applies it.",destructive:!1,oneTimeSecret:!1,preview:!1},"plan.rollback":{summary:"Roll a plan back to a prior shape (repo-authored)",description:"Declare the prior plan shape (revert the commit) in the business repo's business/ folder and push \u2014 the platform applies it.",destructive:!0,oneTimeSecret:!1,preview:!1},"route.define":{summary:"Define a route (repo-authored)",description:"Declare the route with `fs.route()` in the business repo's business/ folder and push \u2014 the platform applies it.",destructive:!1,oneTimeSecret:!1,preview:!1},"gateway.config":{summary:"Configure the gateway (repo-authored)",description:"Declare the gateway block on `fs.business()` in the business repo's business/ folder and push \u2014 the platform applies it.",destructive:!1,oneTimeSecret:!1,preview:!1},"auth_strategy.update":{summary:"Change the auth strategy (repo-authored)",description:"Declare the auth strategy on `fs.business()` in the business repo's business/ folder and push \u2014 the platform applies it.",destructive:!1,oneTimeSecret:!1,preview:!1},"rate_limit.update":{summary:"Change plan or route limits (repo-authored)",description:"Declare the limits on the plan or route in the business repo's business/ folder and push \u2014 the platform applies it.",destructive:!1,oneTimeSecret:!1,preview:!1},"meter.define":{summary:"Define a meter (repo-authored)",description:"Declare the meter with `fs.meter()` in the business repo's business/ folder and push \u2014 the platform applies it.",destructive:!1,oneTimeSecret:!1,preview:!1},"backend.define":{summary:"Declare a backend (repo-authored)",description:"Declare the backend with `fs.backend()` in the business repo's business/ folder and push \u2014 the platform applies it.",destructive:!1,oneTimeSecret:!1,preview:!1},"business.contract_field.update":{summary:"Change a contractual business field (repo-authored)",description:"Declare the field (name / meters / subscriberChangePolicy) on `fs.business()` in the business repo's business/ folder and push \u2014 the platform applies it.",destructive:!1,oneTimeSecret:!1,preview:!1},"backend.status.read":{summary:"Return the last-persisted readiness verdict for a backend",description:"Return the last-persisted readiness verdict for a backend",destructive:!1,oneTimeSecret:!1,preview:!1},"persona.local_preview.issue":{summary:"Create a local-preview persona handoff and proxy lease",description:"Create a local-preview persona handoff and proxy lease",destructive:!1,oneTimeSecret:!0,preview:!1},"persona.local_preview.renew":{summary:"Renew a CLI local-preview proxy lease",description:"Renew a CLI local-preview proxy lease",destructive:!0,oneTimeSecret:!0,preview:!1},"persona.local_preview.revoke":{summary:"Revoke a CLI local-preview proxy lease",description:"Revoke a CLI local-preview proxy lease",destructive:!0,oneTimeSecret:!1,preview:!1},"organization.active.select":{summary:"Select the active organization",description:"Run `farthershore auth organization use <id-or-slug>` to change the stored default organization, or pass `--org <id>` on any command for a one-off selection. The dashboard's active-organization cookie is browser-local and is not emulated.",destructive:!1,oneTimeSecret:!1,preview:!1},"business.cors.update":{summary:"Update a business's CORS settings",description:"Updates the business's platform-owned CORS settings through the business PATCH surface.",destructive:!1,oneTimeSecret:!1,preview:!1,reconcile:{op:"business.read"}},"business.compile":{summary:"Validate a business-as-code Manifest IR envelope (dry-run compile)",description:"Validate a business-as-code Manifest IR envelope (dry-run compile)",destructive:!1,oneTimeSecret:!1,preview:!1},"manifest.apply":{summary:"Apply a compiled business manifest (git-triggered)",description:"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.",destructive:!1,oneTimeSecret:!1,preview:!1},"auth.context.read":{summary:"Read the authenticated caller's identity and runtime context",description:"Returns metadata about the authenticated credential and the caller's resolved runtime context (never secrets).",destructive:!1,oneTimeSecret:!1,preview:!1}},dz=eJ;function mz(t){return Object.hasOwn(dz,t)?dz[t]:void 0}var tJ={kind:"read_current",enforcement:"fresh_read",responseSemantics:"current_observation",rationale:"This operation has no persistent side effect; retrying performs a new read of current server state."},ae=t=>({kind:"convergent_write",enforcement:"resource_identity",responseSemantics:"point_in_time_write_result",reconcile:t,rationale:"This writes a stable desired state. After an ambiguous result, reconcile current state before repeating so an old retry cannot overwrite a newer change. Repeat only if the intent is still current, then reread again."}),Ae=t=>({kind:"no_automatic_retry",enforcement:"reconcile_before_repeat",responseSemantics:"outcome_may_be_unknown",reconcile:t,rationale:"This mutation can create a durable resource, enqueue work, or reveal a one-time result, and no response replay makes an uncertain repeat safe. After an ambiguous result, reconcile through the named read before deciding whether to send it again. Where the server has a natural guard (an existing name, one pending release, one in-flight rollback, one live invitation), a repeated create is refused instead of run twice; otherwise a repeat runs again, so repeat only once the read shows the first attempt did not land."}),QS="variables list (it shows the variable's current state; variables status needs the operation id that only the response carries)",nJ=["business list","business show","business routes","business subdomain-check","business config-attempts","business contract","business status","business rbac","business rbac subjects list","apply-timeline list","apply-timeline inspect","proposal list","proposal get","plan list","env list","backend list","backend tokens list","frontend status","webhook list","webhook event-types","webhook deliveries","agents list","agents status","agents runs-show","bulletin list","bulletin show","promo-code list","consumer list","consumer rbac roles list","consumer keys list","variables list","variables status","agreements list","agreements show","agreements pins","usage summary","persona list","analytics timeseries","analytics latency","analytics top","analytics log","organization list","organization role list","organization role show","organization members","organization invitation-list","organization invitation-list-sent","organization overview","organization bulletin","token permission-catalog","token list","token approvals","stripe status","audit-log list","audit-log business-list","audit-log export","audit-log business-export","notifications preferences","tax-settings show","denial show","dependents list","automation list","knowledge list","knowledge business-list","workflow-control replay","workflow-control rollback-to-config"],rJ={"business rbac enable":ae("business rbac"),"business rbac disable":ae("business rbac"),"business create":Ae("business list, then business show"),"business update":ae("business show"),"business publish":Ae("business status and apply-timeline list"),"business rollback":Ae("business status and apply-timeline list"),"business delete":ae("business list"),"business preview-env set":ae("env list"),"business docs enable":ae("business show"),"business docs disable":ae("business show"),"proposal create":Ae("proposal list, then proposal get"),"proposal preview":ae("proposal get"),"env create":ae("env list"),"env delete":ae("env list"),"backend create":Ae("backend list"),"backend bind":ae("backend list"),"backend delete":ae("backend list"),"backend tokens create":Ae("backend tokens list"),"backend tokens rotate":Ae("backend tokens list"),"backend tokens revoke":ae("backend tokens list"),"frontend rollback":ae("frontend status"),"webhook create":Ae("webhook list"),"webhook update":ae("webhook list"),"webhook delete":ae("webhook list"),"webhook test":Ae("webhook deliveries"),"webhook trigger":Ae("webhook deliveries"),"webhook listen":Ae("webhook list (find the temporary endpoint by its tunnel URL, then remove it with webhook delete --yes)"),"webhook rotate":Ae("webhook list"),"agents enable":ae("agents status"),"agents disable":ae("agents status"),"bulletin ack":ae("bulletin show"),"bulletin resolve":ae("bulletin show"),"promo-code create":Ae("promo-code list"),"promo-code update":Ae("promo-code list"),"promo-code archive":ae("promo-code list"),"promo-code reactivate":ae("promo-code list"),"consumer block":ae("consumer list"),"consumer migrate-latest":Ae("consumer list"),"consumer remove":ae("consumer list"),"consumer rbac assign":ae("consumer list"),"consumer rbac enable":ae("consumer list"),"consumer rbac disable":ae("consumer list"),"consumer rbac roles create":Ae("consumer rbac roles list"),"consumer rbac roles update":ae("consumer rbac roles list"),"consumer rbac roles delete":ae("consumer rbac roles list"),"consumer keys revoke":ae("consumer keys list"),"variables set":Ae(QS),"variables rotate":Ae(QS),"variables revoke":Ae(QS),"variables rm":Ae("variables list"),"agreements create":Ae("agreements list, then agreements show"),"agreements amend":Ae("agreements list, then agreements show"),"persona bootstrap":Ae("persona list"),"persona login":Ae("inspect the target browser session before requesting a fresh handoff"),"persona rotate":Ae("persona list"),"persona delete":ae("persona list"),"organization create":Ae("organization list"),"organization role create":Ae("organization role list"),"organization role update":ae("organization role show"),"organization role delete":ae("organization role list"),"organization invite":Ae("organization invitation-list-sent"),"organization invitation-revoke":ae("organization invitation-list-sent"),"organization invitation-accept":ae("organization list"),"organization member-role":ae("organization members"),"organization member-remove":ae("organization members"),"organization ownership-transfer":Ae("organization overview"),"organization delete":ae("organization list"),"token create":Ae("token list"),"token update":Ae("token list"),"token approve":Ae("token approvals, then token list"),"token deny":ae("token approvals"),"token rotate":Ae("token list"),"token revoke":ae("token list"),"stripe disconnect":ae("stripe status"),"notifications preferences-update":ae("notifications preferences"),"auth context-token":Ae("request a new context token"),"tax-settings update":ae("tax-settings show"),"resource-count report":ae("usage summary"),"automation create":Ae("automation list"),"automation update":ae("automation list"),"automation delete":ae("automation list")},pz=new Map([...nJ.map(t=>[t,tJ]),...Object.entries(rJ)]);function eI(t,e={}){let n=new Set,i=t.map(r=>{let o=`${r.cli.group} ${r.cli.command}`;if(n.has(o))throw new Error(`Duplicate CLI operation: ${o}`);n.add(o);let a=pz.get(o);if(!a)throw new Error(`Missing retry contract: ${o}`);if(r.sideEffect==="read"!=(a.kind==="read_current"))throw new Error(`Retry contract/side-effect mismatch for ${o}: ${r.sideEffect}/${a.kind}`);let c=mz(r.opKey);if(!c)throw new Error(`Missing operation spec: ${r.opKey}`);return{...r,retry:a,spec:c}});if(!e.allowUnusedContracts){let r=[...pz.keys()].filter(o=>!n.has(o));if(r.length>0)throw new Error(`Retry contracts without operations: ${r.join(", ")}`)}return i}function Oo(t){return{businesses:{list:e=>t.listBusinesses(e)},environments:{read:({businessId:e,...n})=>t.listEnvironments(e,n)}}}function fz(t){return{frontend:{status:({businessId:e,environmentId:n,ref:i})=>i===void 0?t.builderFrontendStatus(e,n):t.builderFrontendStatus(e,n,i)}}}function iJ(){let t=process.env.FARTHERSHORE_BUSINESS?.trim();if(t)return{ref:t,source:"FARTHERSHORE_BUSINESS"};let e=Sg(process.cwd());return e?{ref:e.businessId,source:`linked directory (${e.label??e.businessId})`}:null}async function tI(t,e){let{businesses:n,complete:i}=await O0(Oo(t),e);return{businesses:n,complete:i}}async function ke(t,e){if(e)return $0(Oo(t),e);let n=iJ();if(n)return ke(t,n.ref);throw new E("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 gz(t,e){let n=[...t],i=new Set;for(let r of e){if(qC(r,n)){i.add(r);continue}let o=bo(r);if(o===null||o.verb!=="*")continue;if(o.subject==="*"){for(let c of n)i.add(c);continue}let a=`${o.subject}:`;for(let c of n)c.startsWith(a)&&i.add(c)}return[...i].sort()}function oJ(t,e){if(e.includes("*"))return{effect:"allow",reason:"wildcard",matchedGrant:"*"};if(e.includes(t))return{effect:"allow",reason:"grant",matchedGrant:t};let n=bo(t);if(n===null)return{effect:"deny",reason:"malformed-required"};if(n.subject!=="*"&&e.includes(`${n.subject}:*`))return{effect:"allow",reason:"subject-wildcard",matchedGrant:`${n.subject}:*`};if(n.verb==="*"&&n.subject!=="*"){let i=`${n.subject}:`,r=e.find(o=>o.startsWith(i));if(r!==void 0)return{effect:"allow",reason:"any-on-subject",matchedGrant:r}}return{effect:"deny",reason:"no-grant"}}function hz(t){if(bo(t.required)===null)return{effect:"deny",reason:"malformed-required"};let e=t.ceiling===void 0?t.grants:gz(t.grants,t.ceiling),n=oJ(t.required,e);return n.effect==="deny"&&n.reason==="no-grant"&&t.ceiling!==void 0&&VC(t.required,t.grants)?{effect:"deny",reason:"ceiling-excluded"}:n}function nI(t,e){let n="",i=!1;try{let r=da(t.opKey);if(!r)return;let o=typeof e.knownGrantedPermissions=="function"?e.knownGrantedPermissions():void 0;if(!Array.isArray(o))return;n=r.permission,i=hz({required:n,grants:o}).effect==="deny"}catch{return}if(i)throw new E(`This credential does not have the '${n}' permission required by ${t.opKey}.`,403,{code:"FORBIDDEN"})}var yr={list:"service_account.read",create:"service_account.create",update:"service_account.update",approvals:"service_account.approval_list",approve:"service_account.approve",deny:"service_account.deny",rotate:"service_account.rotate",revoke:"service_account.revoke"},U_e=Object.fromEntries(Object.entries(yr).map(([t,e])=>[`service-account.${t}`,e]));var $g={kind:"read_current",enforcement:"fresh_read",responseSemantics:"current_observation",rationale:"This operation has no persistent side effect; retrying performs a new read of current server state."},Cg=(t,e)=>({kind:"convergent_write",enforcement:"resource_identity",responseSemantics:"point_in_time_write_result",reconcile:t,rationale:e}),Ng=(t,e)=>({kind:"no_automatic_retry",enforcement:"reconcile_before_repeat",responseSemantics:"outcome_may_be_unknown",reconcile:t,rationale:e}),sJ=[{opKey:"business.compile",cliCommand:"farthershore validate",sideEffect:"read",retry:{...$g,rationale:"Remote validation may retain a diagnostic compilation record, but it never accepts or publishes business state. Repeating it returns a fresh validation observation and needs no caller key."}},{opKey:yr.list,cliCommand:"farthershore service-account list",sideEffect:"read",retry:$g},{opKey:yr.create,cliCommand:"farthershore service-account create",sideEffect:"write",retry:Ng("service-account list","Provisioning can mint a one-time secret or create a pending approval. After an ambiguous result, list the accounts first: repeating the same request by the same caller resumes a still-pending activation of that name, lands on the pending approval it already opened, or conflicts on an account that is already active \u2014 it never mints a second secret.")},{opKey:yr.update,cliCommand:"farthershore service-account update",sideEffect:"write",retry:Ng("service-account list and service-account approvals","An update may apply immediately or create a pending approval. After an ambiguous result, read the account and its approvals first; repeating the same request lands on the pending approval it already opened.")},{opKey:yr.approvals,cliCommand:"farthershore service-account approvals",sideEffect:"read",retry:$g},{opKey:yr.approve,cliCommand:"farthershore service-account approve",sideEffect:"write",retry:Ng("service-account approvals and service-account list","CREATE approval can disclose a one-time secret. After an ambiguous result, read the approval queue and account list before any deliberate follow-up: a still-pending activation may resume, but a completed approval cannot redisclose its consumed secret; changed grant payloads are rejected.")},{opKey:yr.deny,cliCommand:"farthershore service-account deny",sideEffect:"write",retry:Cg("service-account approvals","Denial moves one stable approval to a terminal state; repeat only to converge, then reread the approval queue.")},{opKey:yr.rotate,cliCommand:"farthershore service-account rotate",sideEffect:"write",retry:Ng("service-account list","Rotation returns a one-time secret that is never replayed. After an ambiguous result, list the account's keys; if the new key exists but its secret was lost, rotate again deliberately.")},{opKey:yr.revoke,cliCommand:"farthershore service-account revoke",sideEffect:"write",retry:Cg("service-account list","Revocation is a desired terminal state and never needs a cached historical response.")},{opKey:"usage_limit.read",cliCommand:"farthershore limit list",sideEffect:"read",retry:$g},{opKey:"usage_limit.set",cliCommand:"farthershore limit set",sideEffect:"write",retry:Cg("limit list","Updates target a stable limit id. Creates use the natural subscription, subject, and quantity identity. After an ambiguous result, list current limits before repeating so an old absolute count cannot overwrite a newer change.")},{opKey:"usage_limit.remove",cliCommand:"farthershore limit remove",sideEffect:"write",retry:Cg("limit list","Removal targets a stable limit id. After an ambiguous result, list current limits before repeating; an already-absent target may surface as not found rather than a cached success.")}];async function rI(t,e){try{return await e()}catch(n){throw n instanceof E&&n.outcomeUnknown&&typeof t.reconcile=="string"&&!n.message.includes("Outcome unknown")?new E(`${n.message} Outcome unknown: reconcile with \`${t.reconcile}\` before repeating this ${t.kind==="convergent_write"?"write":"mutation"}.`,n.status,{code:n.code,details:aJ(n.details,t.reconcile),param:n.param,retryable:!1,retryDisposition:"reconcile_before_repeat",outcomeUnknown:!0,cause:n.cause}):n}}function aJ(t,e){return t==null?{reconcile:e}:typeof t=="object"&&!Array.isArray(t)?{...t,reconcile:e}:{reconcile:e,serverDetails:t}}function Ao(t){let e=Object.keys(t.filterFields).join(", "),n=t.sortFields.join(", ");return[{field:"filter",kind:"flag",token:"--filter <field=value>",describe:`Exact field filter; repeat for AND. Fields: ${e}.`,parser:lJ,defaultValue:[]},{field:"sort",kind:"flag",token:"--sort <field[:asc|desc]>",describe:`Server-side sort (default asc). Fields: ${n}.`,parser:uJ},...t.searchable?[{field:"search",kind:"flag",token:"--search <text>",describe:"Server-side case-insensitive text search."}]:[]]}function nr(t,e){throw new E(t,400,{code:"INVALID_LIST_QUERY",param:e})}function lJ(t,e){return[...Array.isArray(e)?e:[],t]}function uJ(t,e){return e!==void 0&&nr("--sort may be provided only once.","sort"),t}function dJ(t,e,n){let i=e.startsWith("nullable-"),r=i?e.slice(9):e;if(t.toLowerCase()==="null")return i?"null":nr(`Filter field '${n}' cannot be null.`,"filter");if(r==="string")return t;if(r==="boolean"){let a=t.toLowerCase();return a==="true"?"true":a==="false"?"false":nr(`Filter field '${n}' requires a boolean value (true or false).`,"filter")}if(!/^[+-]?(?:\d+(?:\.\d+)?|\.\d+)$/.test(t))return nr(`Filter field '${n}' requires a finite number.`,"filter");let o=Number(t);return Number.isFinite(o)?String(o):nr(`Filter field '${n}' requires a finite number.`,"filter")}function mJ(t,e){let n=Object.keys(e.filterFields),i=(t.filters??[]).map(d=>{let m=d.indexOf("=");if(m<=0||m===d.length-1)return nr("--filter must use the form field=value.","filter");let f=d.slice(0,m),p=d.slice(m+1);return Object.hasOwn(e.filterFields,f)?{field:f,value:dJ(p,e.filterFields[f],f)}:nr(`Filter field '${f}' is not filterable. Allowed fields: ${n.join(", ")}.`,"filter")}),r=t.search,o;if(r!==void 0){if(!e.searchable)return nr("--search is not supported by this list command.","search");if(o=r.trim(),!o)return nr("--search must not be empty.","search")}let a=t.sort;if(a===void 0)return{filters:i,...o?{q:o}:{}};let[c,l="asc",...u]=a.split(":");return!c||u.length>0||l!=="asc"&&l!=="desc"?nr("--sort must use field[:asc|desc].","sort"):e.sortFields.includes(c)?{filters:i,sort:{field:c,direction:l},...o?{q:o}:{}}:nr(`Sort field '${c}' is not sortable. Allowed fields: ${e.sortFields.join(", ")}.`,"sort")}function $o(t,e){let n=Array.isArray(t.filter)?t.filter.filter(o=>typeof o=="string"):[],i=typeof t.sort=="string"?t.sort:void 0,r=typeof t.search=="string"?t.search:void 0;if(!(n.length===0&&i===void 0&&r===void 0))return mJ({filters:n,sort:i,search:r},e)}var bz={filterFields:{id:"string",name:"string",displayName:"string",subdomain:"string",status:"string"},sortFields:["id","name","displayName","createdAt","updatedAt"],searchable:!0};function _z(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 hJ(t){let e=pJ({input:process.stdin,output:process.stderr,terminal:!0});return new Promise(n=>{e.question(`Cut release ${t}? [y/N] `,i=>{e.close(),n(/^y(es)?$/i.test(i.trim()))})})}var Lt="<businessIdOrName>",bJ={BRANCH_PREFIX:"branch-prefix",PULL_REQUEST:"pull-request",DISABLED:"disabled"},_J=Object.fromEntries(vw.map(t=>[bJ[t],t])),vJ=/^.{1,50}$/;function vz(t,e){if(e===void 0)return t.live;if(typeof t.scopedLive!="boolean")throw new E("Core did not return scopedLive for the requested environment.",502,{code:"BUSINESS_STATUS_SCOPED_LIVE_MISSING"});return t.scopedLive}function yz(t){return(t.applies??[]).flatMap(e=>e.existingSubscribers&&e.existingSubscribers.length>0?[{applyId:e.id,version:e.version,createdAt:e.createdAt,moves:e.existingSubscribers}]:[])}var yJ={aliased:"aliased (no move)",immediate:"moves immediately",period_end:"moves at period end"},kJ=3;function wJ(t){for(let e of t.slice(0,kJ)){xg(`Existing subscribers (${e.version??e.applyId}, ${e.createdAt}):`);for(let n of e.moves){let i=n.reasons[0],o=e.moves.filter(a=>a.planKey===n.planKey&&a.fromCompiledPlanId===n.fromCompiledPlanId&&a.toCompiledPlanId===n.toCompiledPlanId).length>1?`${n.cohorts} cohort${n.cohorts===1?"":"s"}: `:"";xg(` ${n.planKey}: ${o}${yJ[n.timing]}${i?` \u2014 ${i}`:""}`)}}}var SJ={".png":"image/png",".jpg":"image/jpeg",".jpeg":"image/jpeg",".webp":"image/webp"};function IJ(t){return{enabled:t===!0}}function EJ(t){let{business:e,...n}=t;return{...n,business:e}}function TJ(t){let e=SJ[gJ(t).toLowerCase()];if(!e)throw new E(`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 RJ(t){return t.filter(e=>e!==void 0&&e!==!1).length}function kz(t,e){let n=e==="icon"?"icon":"logo",i=e==="icon"?"icon":"logo",r=e==="icon"?"clearIcon":"clearLogo";if(RJ([t[`${i}Url`],t[`${i}File`],t[r]])>1)throw new E(`Choose only one ${n} operation: --${i}-url, --${i}-file, or --clear-${i}.`,void 0,{code:"CONFLICTING_BRAND_ASSET_FLAGS"})}function xJ(t){let e=_J[t];if(!e)throw new E(`Invalid preview environment trigger "${t}". Use branch-prefix, pull-request, or disabled.`,void 0,{code:"INVALID_PREVIEW_ENV_TRIGGER"});return e}function OJ(t){let e={};if(typeof t.trigger=="string"&&(e.previewEnvTrigger=xJ(t.trigger)),t.clearBranchPrefix===!0)e.envBranchPrefix=null;else if(typeof t.branchPrefix=="string"){if(!vJ.test(t.branchPrefix))throw new E("--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 E("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 wz(t,e,n,i){let r=await fJ(i);return t.uploadBrandAsset(e,n,r,TJ(i))}var Sz=[{opKey:"business.list",operationClass:"operate",sideEffect:"read",cli:{group:"business",command:"list",summary:"List businesses in the current org",args:Ao(bz),handler:async({client:t,args:e,emit:n})=>{let i=$o(e,bz),{businesses:r,complete:o}=await tI(t,i);n({count:r.length,...o?{}:{truncated:!0},businesses:r.map(a=>({...a,displayName:a.displayName??null,status:a.status??null}))},`${r.length} business(es)${o?"":" (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:n}=await tI(t);return{count:e.length,...n?{}:{truncated:!0},businesses:e.map(i=>({id:i.id,name:i.name,status:i.status??null}))}}}},{opKey:"business.read",operationClass:"operate",sideEffect:"read",cli:{group:"business",command:"show",summary:"Show a business",args:[{field:"businessId",kind:"positional",token:Lt,resolveBusiness:!0},{field:"env",kind:"flag",token:"--env <env>",describe:"Environment scope (preview branch name)"}],handler:async({client:t,args:e,emit:n})=>{let i=e.businessId,r=await t.getBusiness(i,{env:e.env});n({business:r},`Business ${i}`)}},mcp:null},{opKey:"business.routes.read",operationClass:"contract",sideEffect:"read",cli:{group:"business",command:"routes",summary:"List a business's compiled routes",args:[{field:"businessId",kind:"positional",token:Lt,resolveBusiness:!0},{field:"env",kind:"flag",token:"--env <env>",describe:"Environment scope (preview branch name)"}],handler:async({client:t,args:e,emit:n})=>{let i=e.businessId,r=await t.listBusinessRoutes(i,{env:e.env});n({businessId:i,result:r},`Compiled routes for business ${i}`)}},mcp:null},{opKey:"business.subdomain_availability.read",operationClass:"operate",sideEffect:"read",cli:{group:"business",command:"subdomain-check",summary:"Check whether a slug is free to use as a business subdomain before creating it",args:[{field:"slug",kind:"positional",token:"<slug>",describe:"Candidate business slug (normalized to the subdomain)."}],handler:async({client:t,args:e,emit:n})=>{let i=await t.checkSubdomainAvailability(e.slug);n(i,i.available?`${i.subdomain} is available`:`${i.subdomain} is not available`)}},mcp:{tool:"fs_business_subdomain_check",title:"Check business subdomain availability",description:"Check whether a candidate slug is free to use as a business subdomain (normalized, blocked-word and collision checked). Read-only; run before fs_business_create.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{slug:s.string().describe("Candidate business slug (normalized to the subdomain).")},handler:async(t,e)=>t.checkSubdomainAvailability(e.slug)}},{opKey:"business.config_attempts.read",operationClass:"operate",sideEffect:"read",cli:{group:"business",command:"config-attempts",summary:"List rejected configuration attempts for a business",args:[{field:"businessId",kind:"positional",token:Lt,resolveBusiness:!0}],handler:async({client:t,args:e,emit:n})=>{let i=e.businessId,r=await t.listBusinessConfigAttempts(i);n({businessId:i,attempts:r.attempts},`Configuration attempts for business ${i}`)}},mcp:null},{opKey:"business.contract.read",operationClass:"contract",sideEffect:"read",cli:{group:"business",command:"contract",summary:"Show a business's accepted contract synopsis",args:[{field:"businessId",kind:"positional",token:Lt,resolveBusiness:!0},{field:"env",kind:"flag",token:"--env <env>",describe:"Environment scope (preview branch name)"}],handler:async({client:t,args:e,emit:n})=>{let i=e.businessId,r=await t.getBusinessContract(i,{env:e.env});n({businessId:i,contract:r},`Accepted contract for business ${i}`)}},mcp:null},{opKey:"business.status",operationClass:"operate",sideEffect:"read",cli:{group:"business",command:"status",summary:"Show whether one environment is fully live: its lifecycle, release, and whether every part serves that release.",args:[{field:"businessId",kind:"positional",token:Lt,resolveBusiness:!0},{field:"env",kind:"flag",token:"--env <env>",describe:"Environment scope (defaults to production)"}],handler:async({client:t,args:e,emit:n})=>{let i=e.businessId,r=e.env,o=r?await t.getDeployments(i,{env:r}):await t.getDeployments(i),a=o.data[0]??null,c=o.edgeCoherence??null,l=vz(o,r),u=yz(o),d={id:o.business.id,status:o.business.status,latestReleaseVersion:o.business.latestReleaseVersion,live:l,edgeCoherence:c,existingSubscribers:u,latestDeployment:a?{id:a.id,status:a.status,edgePublishStatus:a.edgePublishStatus,createdAt:a.createdAt}:null};n(d,`Business ${i}: ${o.business.status}${o.business.latestReleaseVersion?` @ ${o.business.latestReleaseVersion}`:""} (${l?"live":"not live"}; ${c?`edge ${c.status}, G=${c.expectedGeneration}`:"edge status unavailable"})`),wJ(u)}},mcp:{tool:"fs_business_status",title:"Business status",description:"Check one environment of a business, by id or slug: its lifecycle state, the release it should serve, and whether every part of the environment is serving exactly that release yet. Use it to prove a publish is fully live. Read-only.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe("The business id or slug to check."),env:s.string().optional().describe("Environment name; omit for production.")},handler:async(t,e)=>{let n=await ke(t,e.businessId),i=e.env,r=i?await t.getDeployments(n,{env:i}):await t.getDeployments(n),o=r.data[0]??null,a=vz(r,i);return{id:r.business.id,status:r.business.status,latestReleaseVersion:r.business.latestReleaseVersion,live:a,edgeCoherence:r.edgeCoherence??null,existingSubscribers:yz(r),latestDeployment:o?{id:o.id,status:o.status,edgePublishStatus:o.edgePublishStatus,createdAt:o.createdAt}:null}}}},{opKey:"rbac.read",operationClass:"contract",sideEffect:"read",cli:{group:"business",command:"rbac",summary:"Show a business's Managed-RBAC state: the platform `rbacEnabled` flag.",args:[{field:"businessId",kind:"positional",token:Lt,resolveBusiness:!0},{field:"env",kind:"flag",token:"--env <env>",describe:"Environment scope (preview branch name)"}],handler:async({client:t,args:e,emit:n})=>{let i=e.businessId,r=await t.getBusiness(i,{env:e.env}),o=IJ(r.rbacEnabled);n({businessId:i,rbac:o},`Managed RBAC ${o.enabled?"enabled":"not enabled"}`)}},mcp:null},{opKey:"rbac.enable",operationClass:"operate",sideEffect:"write",cli:{group:"business rbac",command:"enable",summary:"Enable Managed RBAC for a business.",args:[{field:"businessId",kind:"positional",token:Lt,resolveBusiness:!0}],handler:async({client:t,args:e,emit:n})=>{let i=e.businessId,r=await t.updateBusinessRbac(i,!0);n({businessId:i,rbacEnabled:r.rbacEnabled},`Managed RBAC enabled for ${i}`)}},mcp:{tool:"fs_business_rbac_enable",title:"Enable Managed RBAC",description:"Enable Managed RBAC for a business. Subscriber organizations can then manage roles in their portal. Safe to repeat: enabling it when already enabled changes nothing.",annotations:{readOnlyHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe("The business id or slug to enable Managed RBAC on.")},handler:async(t,e)=>{let n=await ke(t,e.businessId);return t.updateBusinessRbac(n,!0)}}},{opKey:"rbac.disable",operationClass:"operate",sideEffect:"write",cli:{group:"business rbac",command:"disable",summary:"Disable Managed RBAC for a business.",args:[{field:"businessId",kind:"positional",token:Lt,resolveBusiness:!0}],handler:async({client:t,args:e,emit:n})=>{let i=e.businessId,r=await t.updateBusinessRbac(i,!1);n({businessId:i,rbacEnabled:r.rbacEnabled},`Managed RBAC disabled for ${i}`)}},mcp:{tool:"fs_business_rbac_disable",title:"Disable Managed RBAC",description:"Disable Managed RBAC for a business. Subscriber roles and assignments are kept, so enabling it again restores them. Safe to repeat: disabling it when already disabled changes nothing.",annotations:{readOnlyHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe("The business id or slug to disable Managed RBAC on.")},handler:async(t,e)=>{let n=await ke(t,e.businessId);return t.updateBusinessRbac(n,!1)}}},{opKey:"rbac.subjects.read",operationClass:"operate",sideEffect:"read",cli:{group:"business rbac subjects",command:"list",summary:"List the raw permission subjects subscriber organizations can assemble into their own roles (repo-owned: authored via fs.group permission config in business/).",args:[{field:"businessId",kind:"positional",token:Lt,resolveBusiness:!0}],handler:async({client:t,args:e,emit:n})=>{let i=e.businessId,r=await t.listBusinessRbacSubjects(i);n({businessId:i,subjects:r.subjects},`${r.subjects.length} custom permission subject(s) for ${i}`)}},mcp:{tool:"fs_business_rbac_subjects_list",title:"List custom permission subjects",description:"List a business's raw permission vocabulary (subject, verbs, escalatory verbs, description). The SDK/compiler do not create roles: each subscribing organization assembles this catalog into its own CUSTOM roles, default, and assignments. Subjects are declared via permission-carrying `fs.group(id, routes, { permission })` in the business/ repo; run `farthershore validate` and push to change them. Read-only.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe("The business id or slug to list subjects for.")},handler:async(t,e)=>{let n=await ke(t,e.businessId);return t.listBusinessRbacSubjects(n)}}},{opKey:"business.create",operationClass:"operate",sideEffect:"write",cli:{group:"business",command:"create",summary:"Create a new business and provision its managed GitHub repo",args:[{field:"name",kind:"positional",token:"<slug>",describe:"Business slug (becomes the subdomain)"},{field:"displayName",kind:"flag",token:"--display-name <displayName>",describe:"Human-friendly business name"},{field:"description",kind:"flag",token:"--description <description>"},{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:n,emit:i,emitDryRunPreview:r})=>{let o=e.docs===!0?!0:e.docs===!1?!1:void 0,a={name:e.name,description:e.description,displayName:e.displayName,...o!==void 0?{docsEnabled:o}:{}},c=await t.createBusiness(a,n);if(r(c))return;let l=EJ(c),u={business:l.business,repoUrl:c.repo.htmlUrl,agent:l.agent};i(u),bn(c.repo.htmlUrl)}},mcp:null},{opKey:"brand.update",operationClass:"operate",sideEffect:"write",cli:{group:"business",command:"update",summary:"Update business presentation metadata",args:[{field:"businessId",kind:"positional",token:Lt,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:"listOnOrgPage",kind:"flag",token:"--list-on-org-page",describe:"Show this product on the organization's public page (/organization/<slug>). Products are listed by default."},{field:"unlistFromOrgPage",kind:"flag",token:"--unlist-from-org-page",describe:"Hide this product from the organization's public page. Does not unpublish it."},{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."}],handler:async({client:t,args:e,emit:n})=>{let i=e.businessId;kz(e,"icon"),kz(e,"logo");let r={};if(e.displayName!==void 0&&(r.displayName=e.displayName),e.description!==void 0&&(r.description=e.description),e.iconUrl!==void 0&&(r.iconUrl=e.iconUrl),e.logoUrl!==void 0&&(r.logoUrl=e.logoUrl),e.clearKeyPrefix===!0?r.keyPrefix=null:e.keyPrefix!==void 0&&(r.keyPrefix=e.keyPrefix),e.listOnOrgPage===!0&&e.unlistFromOrgPage===!0)throw new E("Pass either --list-on-org-page or --unlist-from-org-page, not both.",void 0,{code:"BUSINESS_UPDATE_CONFLICTING_FLAGS"});e.listOnOrgPage===!0?r.listedOnOrganizationPage=!0:e.unlistFromOrgPage===!0&&(r.listedOnOrganizationPage=!1),e.clearAllowedOrigins===!0?r.allowedOrigins=[]:typeof e.allowedOrigins=="string"&&(r.allowedOrigins=e.allowedOrigins.split(",").map(l=>l.trim()).filter(Boolean));let o=[];if(typeof e.iconFile=="string"&&o.push(()=>wz(t,i,"icon",e.iconFile)),typeof e.logoFile=="string"&&o.push(()=>wz(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(r).length===0&&o.length===0)throw new E("No fields to update. Pass presentation metadata flags such as --display-name, --description, --icon-file, --logo-file, --unlist-from-org-page, or a clear flag.",void 0,{code:"BUSINESS_UPDATE_NO_FIELDS"});let a=Object.keys(r).length>0?await t.updateBusiness(i,r):await t.getBusiness(i),c=await Promise.all(o.map(l=>l()));n({business:a,assets:c},`Business ${i} updated`)}},mcp:{tool:"fs_brand_update",title:"Update business brand",description:"Update a business's brand and presentation \u2014 display name, description, icon, logo (wordmark), key prefix, and organization-page visibility. Plans, pricing, routes, and backend origins are managed through their dedicated surfaces. Only the fields you pass are changed.",annotations:{readOnlyHint:!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."),listedOnOrganizationPage:s.boolean().optional().describe("Show (true) or hide (false) this product on the organization's public page at /organization/<slug>. Listed by default.")},handler:async(t,e)=>{let n=await ke(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.listedOnOrganizationPage!==void 0&&(i.listedOnOrganizationPage=e.listedOnOrganizationPage),e.clearAllowedOrigins===!0?i.allowedOrigins=[]:typeof e.allowedOrigins=="string"&&(i.allowedOrigins=e.allowedOrigins.split(",").map(r=>r.trim()).filter(Boolean)),t.updateBusiness(n,i)}}},{opKey:"business.publish",operationClass:"operate",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, a bound backend, and a verified Stripe connection.",args:[{field:"businessId",kind:"positional",token:Lt,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:`
|
|
114
|
-
Publish auto-derives the semver bump from the change and cuts a vX.Y.Z release.
|
|
115
|
-
Use --dry-run to preview the computed bump + reasons without cutting a tag.
|
|
116
|
-
A blocking-risk (breaking) change is refused unless --accept-breaking is passed.`,handler:async({client:t,args:e,opts:n,reqOpts:i,emit:r,emitDryRunPreview:o})=>{let a=e.businessId,c=_z(n);if(i.dryRun){let u=await t.publishBusiness(a,c,i);if(o(u))return}if(XS()&&n.input!==!1){let d=(await t.publishBusiness(a,c,{...i,dryRun:!0})).wouldHave?._release;if(d){Og(`Publishing ${a}: ${d.computedBump} \u2192 ${d.version}`+(d.previousVersion?` (from ${d.previousVersion})`:" (first release)"));for(let f of d.reasons)xg(` \u2022 ${f}`);if(!await hJ(d.version)){r({cancelled:!0},"Publish cancelled.");return}}}let l=await t.publishBusiness(a,c,i);r({business:l,_release:l._release??null},`Business ${a} release queued`)}},mcp:{tool:"fs_business_publish",title:"Publish a business",description:"Publish a business \u2014 validate its current spec and queue a versioned release with an auto-computed semver. Use business status to prove it is live.",annotations:{readOnlyHint:!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.")},handler:async(t,e)=>{let n=_z({bump:e.bump,version:e.version,acceptBreaking:e.acceptBreaking});return t.publishBusiness(e.businessId,n,{dryRun:e.dryRun})}}},{opKey:"business.rollback",operationClass:"operate",sideEffect:"write",cli:{group:"business",command:"rollback",summary:"Roll back a prior business publish workflow",args:[{field:"businessId",kind:"positional",token:Lt,resolveBusiness:!0},{field:"workflowExecutionId",kind:"positional",token:"<workflowExecutionId>",describe:"Prior publish workflow execution id"},{field:"reason",kind:"flag",token:"--reason <reason>",describe:"Reason recorded with the rollback"}],handler:async({client:t,args:e,reqOpts:n,emit:i,emitDryRunPreview:r})=>{let o=await t.rollbackBusiness(e.businessId,{workflowExecutionId:e.workflowExecutionId,...typeof e.reason=="string"?{reason:e.reason}:{}},n);r(o)||i(o,`Rollback enqueued for business ${e.businessId}`)}},mcp:null},{opKey:"business.delete",operationClass:"operate",sideEffect:"write",cli:{group:"business",command:"delete",summary:"(stage only) Permanently delete a business. Requires --yes. Registered only in the stage channel (`make cli-stage`); production businesses are deleted from the dashboard.",stageOnly:!0,yesMessage:"Pass --yes to confirm business deletion.",args:[{field:"businessId",kind:"positional",token:Lt,resolveBusiness:!0}],handler:async({client:t,args:e,emit:n})=>{let i=e.businessId;await t.deleteBusiness(i),n({deleted:i},`Business ${i} deleted`)}},mcp:null},{opKey:"business.preview_env.set",operationClass:"operate",sideEffect:"write",cli:{group:"business preview-env",command:"set",summary:"Configure automatic preview-environment creation for a business.",args:[{field:"businessId",kind:"positional",token:Lt,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:n})=>{if(e.branchPrefix!==void 0&&e.clearBranchPrefix===!0)throw new E("Pass either --branch-prefix or --clear-branch-prefix, not both.",void 0,{code:"CONFLICTING_BRANCH_PREFIX_FLAGS"});let i=e.businessId,r=OJ(e),o=await t.updateBusiness(i,r,{});n({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,idempotentHint:!1,openWorldHint:!1},inputSchema:{businessId:s.string().describe("The business id or slug to update."),previewEnvTrigger:s.enum(vw).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 n=await ke(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 E("Pass previewEnvTrigger, envBranchPrefix, or both.",void 0,{code:"MISSING_PREVIEW_ENV_UPDATE"});return t.updateBusiness(n,i,{})}}},{opKey:"business.docs.enable",operationClass:"operate",sideEffect:"write",cli:{group:"business docs",command:"enable",summary:"Enable docs for a business (publish/serve docs scaffold).",args:[{field:"businessId",kind:"positional",token:Lt,resolveBusiness:!0}],handler:async({client:t,args:e,emit:n})=>{let i=e.businessId,r=await t.updateBusiness(i,{docsEnabled:!0},{});n({business:r},`Docs enabled for ${i}`)}},mcp:{tool:"fs_business_docs_enable",title:"Enable business docs",description:"Enable docs for a business \u2014 published docs become available in the portal. Safe to repeat: enabling them when already enabled changes nothing.",annotations:{readOnlyHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe("The business id or slug to enable docs on.")},handler:async(t,e)=>{let n=await ke(t,e.businessId);return t.updateBusiness(n,{docsEnabled:!0},{})}}},{opKey:"business.docs.disable",operationClass:"operate",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:Lt,resolveBusiness:!0}],handler:async({client:t,args:e,emit:n})=>{let i=e.businessId,r=await t.updateBusiness(i,{docsEnabled:!1},{});n({business:r},`Docs disabled for ${i}`)}},mcp:{tool:"fs_business_docs_disable",title:"Disable business docs",description:"Disable docs for a business \u2014 docs are no longer shown in the portal. The docs scaffold stays in the repo, so enabling them again restores them. Safe to repeat: disabling them when already disabled changes nothing.",annotations:{readOnlyHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe("The business id or slug to disable docs on.")},handler:async(t,e)=>{let n=await ke(t,e.businessId);return t.updateBusiness(n,{docsEnabled:!1},{})}}}];async function au(t,e,n){return await US(Oo(t),e,n)}var Oa="production",AJ=new Set([Oa,"prod"]);function kr(t){return typeof t=="string"&&AJ.has(t.trim().toLowerCase())}async function zi(t,e,n){return(await C0(Oo(t),e,n)).id}async function Di(t,e,n){if(!(n===void 0||n.trim()===""))return kr(n)?null:zi(t,e,n)}async function iI(t,e,n){if(!n)return{environmentId:void 0,query:void 0,label:"all environments"};if(kr(n))return{environmentId:null,query:Oa,label:Oa};let i=await zi(t,e,n);return{environmentId:i,query:i,label:n}}async function oI(t,e){try{let n=await au(t,e);return new Map(n.map(i=>[i.id,i.name]))}catch{return new Map}}function $J(t){if(!t||typeof t!="object")return[];let e=t;return Array.isArray(e.unreadable)?e.unreadable:[]}function CJ(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 Iz(t){if(t.length===0)return"(no plans)";let e=["KEY","NAME","FREE","FEE\xA2","TRIAL_D","MAX_SPEND\xA2","STATUS"],n=c=>c===null?"\u2014":c.toLocaleString("en-US"),i=t.map(c=>[c.key,c.name,c.free?"Y":"N",n(c.recurring_fee_cents),n(c.trial_days),n(c.max_monthly_spend_cents),c.status]),r=e.map((c,l)=>Math.max(c.length,...i.map(u=>u[l]?.length??0))),o=c=>c.map((l,u)=>l.padEnd(r[u]??l.length)).join(" "),a=r.map(c=>"-".repeat(c)).join(" ");return[o(e),a,...i.map(o)].join(`
|
|
117
|
-
`)}var NJ=[{opKey:"plan.read",operationClass:"contract",sideEffect:"read",cli:{group:"plan",command:"list",summary:"List plans for a business",args:[{field:"businessId",kind:"positional",token:"<businessIdOrName>",resolveBusiness:!0},{field:"env",kind:"flag",token:"--env <environment>",describe:"List the plans this environment serves (name or id). Omit for production."}],helpTextAfter:`
|
|
118
|
-
Scope:
|
|
119
|
-
Without --env this lists the PRODUCTION plans. A preview environment serves
|
|
120
|
-
its own compiled program, so pass --env <name|id> to see what that
|
|
121
|
-
environment actually serves.
|
|
122
|
-
|
|
123
|
-
Output:
|
|
124
|
-
--format json \u2014 stable agent-friendly JSON envelope (default for non-TTY)
|
|
125
|
-
--format table \u2014 human-readable summary table (default for TTY)
|
|
126
|
-
`,handler:async({client:t,args:e,emit:n})=>{let i=e.businessId,r=e.env,o=await Di(t,i,r)??null,a=r?`environment ${r}`:"production scope",c=await t.managementListPlans(i,{environmentId:o}),l=CJ(c),u=$J(c),d=l.map(f=>({id:f.id,key:f.planKey??f.key??"",name:f.name??"",version:f.version??null,free:f.free??!1,recurring_fee_cents:f.recurring_fee_cents??0,trial_days:f.trial_days??0,max_monthly_spend_cents:f.max_monthly_spend_cents??null,status:f.status??(f.isActive===!1?"INACTIVE":"ACTIVE")})),m=d.length+u.length;if(n({businessId:i,scope:o?"environment":"production",environmentId:o,environment:r??null,count:m,plans:d,...u.length>0?{unreadable:u}:{}},u.length>0?`${m} plan(s) for business ${i} (${a}) \u2014 ${u.length} could not be read (${u.map(f=>f.key||f.id).join(", ")}); re-release the business repo to rewrite them`:`${m} plan(s) for business ${i} (${a})`),xo()!=="json"){d.length>0&&console.log(Iz(d));for(let f of u)console.log(` ! ${f.key||f.id} \u2014 stored definition could not be read`);d.length===0&&u.length===0&&console.log(Iz(d))}}},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. Without environmentId the PRODUCTION plans are returned; pass environmentId to see what a preview environment serves. 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."),environmentId:s.string().optional().describe("Return the plans this environment serves; omit for production.")},handler:async(t,{businessId:e,environmentId:n})=>t.managementListPlans(e,{environmentId:n??null})}}],Ez=NJ;var Tz={filterFields:{id:"string",name:"string",branch:"string"},sortFields:["name","createdAt","id"],searchable:!0};async function Rz(t,e,n){for(let{field:o,value:a}of n?.filters??[])if(o==="id"||o==="branch"||o==="name"&&!kr(String(a)))return null;let i=n?.q;if(i!==void 0&&!Oa.includes(i.toLowerCase()))return null;let r=null;try{r=(await t.getBusiness(e))?.runtimeHostname??null}catch{r=null}return{id:null,scope:"production",name:Oa,branch:null,portalHostname:null,runtimeHostname:r,status:"LIVE"}}var xz=[{opKey:"environment.read",operationClass:"operate",sideEffect:"read",cli:{group:"env",command:"list",summary:"List environments for a business",args:[{field:"businessId",kind:"positional",token:"<businessIdOrName>",resolveBusiness:!0},...Ao(Tz)],handler:async({client:t,args:e,emit:n})=>{let i=e.businessId,r=$o(e,Tz),[o,a]=await Promise.all([au(t,i,r),Rz(t,i,r)]),c=[...a?[a]:[],...o.map(l=>({id:l.id,scope:"environment",name:l.name,branch:l.branch??null,portalHostname:l.portalHostname??null,runtimeHostname:l.runtimeHostname??null,status:l.status??null}))];n({businessId:i,count:c.length,environments:c},`${c.length} environment(s)`)}},mcp:{tool:"fs_env_list",title:"List environments",description:"List a business's preview environments (name, branch, hostnames). Production is not an environment row: it is the live business, addressed with `--env production` (or by omitting the environment) on every verb that takes one. The API returns only preview environment rows; the CLI and MCP listings prepend a synthetic `production` row with `id: null` and no branch. Read-only.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe("The business id whose environments to list.")},handler:async(t,{businessId:e})=>{let[n,i]=await Promise.all([au(t,e),Rz(t,e,void 0)]),r=[...i?[i]:[],...n];return{data:r,pagination:{total:r.length,limit:r.length,offset:0,hasMore:!1}}}}},{opKey:"environment.create",operationClass:"operate",sideEffect:"write",cli:{group:"env",command:"create",summary:"Create a preview environment bound to a git branch",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,emit:n,emitDryRunPreview:i})=>{let r=e.businessId,o=await t.createEnvironment(r,{name:e.name,branch:e.branch});i(o)||n({businessId:r,environment:o},`Environment ${e.name} created`)}},mcp:{tool:"fs_env_create",title:"Create preview environment",description:"Create a preview environment bound to a git branch. Provide a name and the git branch it tracks.",annotations:{readOnlyHint:!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.")},handler:async(t,e)=>{let n=await t.createEnvironment(e.businessId,{name:e.name,branch:e.branch});return{ok:!0,businessId:e.businessId,environment:n}}}},{opKey:"environment.delete",operationClass:"operate",sideEffect:"write",cli:{group:"env",command:"delete",summary:"Delete an environment by name. Requires --yes.",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:n})=>{let i=e.businessId,r=e.envName;await t.deleteEnvironment(i,r),n({businessId:i,deleted:r},`Environment ${r} deleted`)}},mcp:null}];var Bz=fh(jz(),1),{program:qve,createCommand:Hve,createArgument:Gve,createOption:Zve,CommanderError:Wve,InvalidArgumentError:Jve,InvalidOptionArgumentError:Yve,Command:Xve,Argument:Qve,Option:eye,Help:WJ}=Bz.default;var SI=["gateway_verification","metering","health","tunnel"],JJ="<businessIdOrSlug>",YJ="The business id, or a slug (slug lookup requires business:read).",Aa="The business id.",Lg="backend",Ug="backend tokens",Li={field:"businessId",kind:"positional",token:JJ,describe:YJ,resolveBusiness:!0},Kz={field:"env",kind:"flag",token:"--env <environment>",describe:"Only rows in this environment (name or id). Pass 'production' for the production scope; omit for every scope."},Fz=`
|
|
127
|
-
Scope:
|
|
128
|
-
Backends and their runtime tokens are per-(business, environment) rows.
|
|
129
|
-
Without --env every scope is listed; each row carries scope (production |
|
|
130
|
-
environment), environmentId, and the environment name. Two rows for the same
|
|
131
|
-
declared backend \u2014 one production, one environment-scoped \u2014 are expected, and
|
|
132
|
-
both may be 'default': the single-default rule is per scope.
|
|
133
|
-
|
|
134
|
-
'production' (or 'prod') is a valid --env on EVERY backend verb, read and
|
|
135
|
-
write alike, and selects the live business \u2014 the same scope you get by
|
|
136
|
-
omitting --env. It is not a preview environment: it has no environment id and
|
|
137
|
-
no branch, which is why 'farthershore env list' shows it with id: null. The
|
|
138
|
-
words production/prod/main are reserved and cannot name a real environment.
|
|
139
|
-
`;function Vz(t){return t===void 0?"all":t===null?"production":"environment"}function qz(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 XJ(t){let e=t.status;if(typeof e=="string"&&e.length>0)return e;let n=t.agentStatus;if(typeof n=="string"&&n.length>0)return n;let i=typeof t.readinessState=="string"?t.readinessState:null,r=typeof t.provisionStatus=="string"?t.provisionStatus:null;return i??r??"unknown"}function Hz(t,e){let n=typeof t.environmentId=="string"?t.environmentId:null;return n?{scope:"environment",environment:e.get(n)??n}:{scope:"production",environment:null}}function QJ(t,e=new Map){return{id:t.id,environmentId:t.environmentId??null,...Hz(t,e),name:t.name,slug:t.slug,transport:t.transportMode,default:t.isDefault??!1,status:XJ(t),originUrl:t.originUrl??null,lastSeenAt:t.lastSeenAt??null}}async function II(t,e,n){if(!n||kr(n))return null;try{return await zi(t,e,n)}catch(i){throw new E(i instanceof Error?i.message:`Environment "${n}" not found on business ${e}.`,void 0,{code:"ENV_NOT_FOUND"})}}var EI=t=>typeof t=="string"&&t.length>0?t.split(",").map(e=>e.trim()).filter(e=>e.length>0):void 0,Gz=[{opKey:"backend.read",operationClass:"operate",sideEffect:"read",cli:{group:Lg,command:"list",summary:"List backends for a business (id, scope, name, transport, status)",args:[Li,Kz],helpTextAfter:Fz,handler:async({client:t,args:e,reqOpts:n,emit:i})=>{let r=e.businessId,o=await iI(t,r,e.env),[a,c]=await Promise.all([t.builderListBackends(r,{environmentId:o.query}),oI(t,r)]),l=qz(a).map(u=>QJ(u,c));i({count:l.length,scope:Vz(o.environmentId),environmentId:o.environmentId??null,environment:e.env??null,backends:l},`${l.length} backend(s) in ${o.label}`)}},mcp:{tool:"fs_backend_list",title:"List backends",description:"List a business's backends (origins) \u2014 id, scope (production|environment), environmentId, name, slug, transport (direct|tunnel), default flag, and derived status. Backends are per-(business, environment) rows, so the same declared backend can legitimately appear once per scope and be default in each. Read-only.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe("The business id whose backends to list."),environmentId:s.string().optional().describe("Only backends in this environment id, or 'production' for the production scope. Omit for every scope.")},handler:async(t,{businessId:e,environmentId:n})=>t.builderListBackends(e,{environmentId:n})}},{opKey:"backend.create",operationClass:"operate",sideEffect:"write",cli:{group:Lg,command:"create",summary:"Create a backend (default transport: direct)",args:[Li,{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. Pass 'production' (or omit) for the live business."},{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:n,emit:i,emitDryRunPreview:r})=>{let o=e.businessId,a=await II(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},n);r(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,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.")},handler:async(t,e)=>t.builderCreateBackend(e.businessId,{name:e.name,slug:e.slug,transportMode:e.transportMode,originUrl:e.originUrl,isDefault:e.isDefault},{dryRun:e.dryRun})}},{opKey:"backend.bind",operationClass:"operate",sideEffect:"write",cli:{group:Lg,command:"bind",summary:"Bind a logical backend to a direct upstream in one environment",args:[Li,{field:"backend",kind:"positional",token:"<backend>"},{field:"env",kind:"flag",token:"--env <environment>",describe:"Environment name or id. Pass 'production' (or omit) for the live business."},{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:n,emit:i,emitDryRunPreview:r})=>{let o=e.businessId,a=e.backend,c=await II(t,o,e.env),l=await t.builderBindBackend(o,a,{environmentId:c,originUrl:e.originUrl},n);r(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. Previews inherit the production backend until a concrete override is bound. Omit environmentId for production.",annotations:{readOnlyHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(Aa),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.")},handler:async(t,e)=>t.builderBindBackend(e.businessId,e.backend,{environmentId:e.environmentId??null,originUrl:e.originUrl})}},{opKey:"backend.delete",operationClass:"operate",sideEffect:"write",cli:{group:Lg,command:"delete",summary:"Delete a backend (revokes its runtime tokens). Requires --yes.",yesMessage:"Pass --yes to confirm backend deletion.",args:[Li,{field:"backendId",kind:"positional",token:"<backendId>"}],handler:async({client:t,args:e,reqOpts:n,emit:i})=>{let r=e.businessId,o=e.backendId;await t.builderDeleteBackend(r,o),i({businessId:r,deleted:o},`Backend ${o} 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,idempotentHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(Aa),backendId:s.string().describe("The backend id to delete.")},handler:async(t,{businessId:e,backendId:n})=>t.builderDeleteBackend(e,n)}},{opKey:"runtime_token.read",operationClass:"operate",sideEffect:"read",cli:{group:Ug,command:"list",summary:"List runtime tokens for a business",args:[Li,Kz],helpTextAfter:Fz,handler:async({client:t,args:e,emit:n})=>{let i=e.businessId,r=await iI(t,i,e.env),[o,a]=await Promise.all([t.builderListRuntimeTokens(i,{environmentId:r.query}),oI(t,i)]),c=qz(o).map(l=>({...l,...Hz(l,a)}));n({count:c.length,scope:Vz(r.environmentId),environmentId:r.environmentId??null,environment:e.env??null,tokens:c},`${c.length} runtime token(s) in ${r.label}`)}},mcp:{tool:"fs_runtime_token_list",title:"List runtime tokens",description:"List a business's runtime tokens (fsrt_) \u2014 id, last-four, operations, status, and env scope. Read-only; secrets are never shown.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(Aa),environmentId:s.string().optional().describe("Only tokens scoped to this environment id, or 'production' for the production scope. Omit for every scope.")},handler:async(t,{businessId:e,environmentId:n})=>t.builderListRuntimeTokens(e,{environmentId:n})}},{opKey:"runtime_token.mint",operationClass:"operate",sideEffect:"write",cli:{group:Ug,command:"create",summary:"Create a runtime token (returns FS_RUNTIME_TOKEN once)",args:[Li,{field:"env",kind:"flag",token:"--env <environment>",describe:"Scope token to an environment name or id. Pass 'production' (or omit) for the live business."},{field:"backend",kind:"flag",token:"--backend <backendSlugOrId>",describe:"Bind token to a specific backend, by slug or id (resolved in --env, falling back to the production row)"},{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: ${SI.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:n,emit:i,emitDryRunPreview:r})=>{let o=e.businessId,a=await II(t,o,e.env),c=e.kind==="test"||e.kind==="live"?e.kind:void 0,l=EI(e.operations);if(l){for(let d of l)if(!SI.includes(d))throw new E(`Unknown operation "${d}". Available: ${SI.join(", ")}.`,void 0,{code:"UNKNOWN_RUNTIME_TOKEN_OPERATION"})}let u=await t.builderCreateRuntimeToken(o,{environmentId:a,backendId:e.backend??null,kind:c,operations:l,allowedMeters:EI(e.meters),allowedRoutes:EI(e.routes)},n);r(u)||i({envVar:"FS_RUNTIME_TOKEN",result:u},"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).",annotations:{readOnlyHint:!1,idempotentHint:!1,openWorldHint:!1},inputSchema:{businessId:s.string().describe(Aa),backendId:s.string().optional().describe("Bind the token to this backend, by slug or id. Resolved in the selected environment, falling back to the production row."),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).")},handler:async(t,e)=>t.builderCreateRuntimeToken(e.businessId,{backendId:e.backendId??null,environmentId:e.environmentId??null,kind:e.kind,operations:e.operations},{dryRun:e.dryRun})}},{opKey:"runtime_token.rotate",operationClass:"operate",sideEffect:"write",cli:{group:Ug,command:"rotate",summary:"Rotate a runtime token (returns a fresh FS_RUNTIME_TOKEN once)",args:[Li,{field:"tokenId",kind:"positional",token:"<tokenId>"}],handler:async({client:t,args:e,reqOpts:n,emit:i})=>{let r=e.businessId,o=e.tokenId,a=await t.builderRotateRuntimeToken(r,o,n);i({envVar:"FS_RUNTIME_TOKEN",result:a},`Runtime token ${o} 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.",annotations:{readOnlyHint:!1,idempotentHint:!1,openWorldHint:!1},inputSchema:{businessId:s.string().describe(Aa),tokenId:s.string().describe("The runtime token id to rotate.")},handler:async(t,e)=>t.builderRotateRuntimeToken(e.businessId,e.tokenId)}},{opKey:"runtime_token.revoke",operationClass:"operate",sideEffect:"write",cli:{group:Ug,command:"revoke",summary:"Revoke a runtime token. Requires --yes.",yesMessage:"Pass --yes to confirm runtime token revocation.",args:[Li,{field:"tokenId",kind:"positional",token:"<tokenId>"}],handler:async({client:t,args:e,emit:n})=>{let i=e.businessId,r=e.tokenId,o=await t.builderRevokeRuntimeToken(i,r);n({businessId:i,revoked:r,runtimeToken:o},`Runtime token ${r} 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,idempotentHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(Aa),tokenId:s.string().describe("The runtime token id to revoke.")},handler:async(t,{businessId:e,tokenId:n})=>t.builderRevokeRuntimeToken(e,n)}}];var TI="The business id or slug.",Zz="Scope to a preview environment (omit for production).",e3=/^(?:[0-9a-f]{40}|[0-9a-f]{64})$/i,Wz={field:"businessId",kind:"positional",token:"<businessIdOrSlug>",describe:TI,resolveBusiness:!0},Jz={field:"env",kind:"flag",token:"--env <environment>",describe:"Scope to a preview environment name or id (omit for production)."};async function Yz(t,e,n){if(n===void 0)return;if(typeof n!="string"||n.trim().length===0)throw new E("--env must name a preview environment",400,{code:"VALIDATION_ERROR",param:"env"});let i=n.trim();if(kr(i))throw new E("--env production is not valid here: these verbs operate on PREVIEW environments. The live frontend is managed by the release verbs (`farthershore frontend status` / `rollback` without --env).",400,{code:"VALIDATION_ERROR",param:"env"});return/^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i.test(i)?i:zi(t,e,i)}async function Xz(t,e){return ke(t,e)}function t3(t){if(t===void 0)return;let e=typeof t=="string"?t.trim():"";if(!e3.test(e))throw new E("--ref must be an exact 40- or 64-character Git commit SHA.",400,{code:"VALIDATION_ERROR",param:"ref"});return e.toLowerCase()}var Qz=[{opKey:"frontend.status",operationClass:"operate",sideEffect:"read",cli:{group:"frontend",command:"status",summary:"Show the current frontend release, recent releases, and recent builds (incl. failure reasons)",args:[Wz,Jz,{field:"wait",kind:"flag",token:"--wait",describe:"Wait for a build that appears after this command starts; exit non-zero if it fails. Pair with --ref after a Git push or release for exact source proof."},{field:"ref",kind:"flag",token:"--ref <commitSha>",describe:"Match builds for this immutable Git commit SHA; use with --wait to observe the latest known build for that source revision."},{field:"timeout",kind:"flag",token:"--timeout <seconds>",describe:"How long --wait waits before giving up (default 600)."}],handler:async({client:t,args:e,emit:n})=>{let i=e.businessId,r=t3(e.ref),o=await Yz(t,i,e.env);if(!e.wait){n(r===void 0?await t.builderFrontendStatus(i,o):await t.builderFrontendStatus(i,o,r),"Frontend status");return}let a=Number(e.timeout??600),c=await N0(fz(t),{businessId:i,environmentId:o,buildId:null,ref:r,timeoutMs:(Number.isFinite(a)&&a>0?a:600)*1e3});if(c.timedOut){let u=c.status==="SUCCEEDED"||c.status==="SUCCESS";throw new E(u?`Frontend build succeeded but was not activated within the timeout (active build: ${c.activeBuildId??"none"})`:`Frontend build did not finish within the timeout (last status: ${c.status})`,0,{code:u?"FRONTEND_ACTIVATION_TIMEOUT":"BUILD_WAIT_TIMEOUT",details:{build:c}})}if(c.status!=="SUCCEEDED"&&c.status!=="SUCCESS")throw new E(`Frontend build ${c.status}${c.error?`: ${c.error}`:""}`,0,{code:"BUILD_FAILED",details:{build:c}});let l=r===void 0?await t.builderFrontendStatus(i,o):await t.builderFrontendStatus(i,o,r);n({status:l,build:c},"Frontend build activated")}},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(TI),environmentId:s.string().optional().describe(Zz)},handler:async(t,e)=>{let n=await Xz(t,e.businessId);return t.builderFrontendStatus(n,e.environmentId)}}},{opKey:"frontend.rollback",operationClass:"operate",sideEffect:"write",cli:{group:"frontend",command:"rollback",summary:"Roll the business frontend back to a prior release (re-activate its releaseId)",args:[Wz,{field:"releaseId",kind:"flag",token:"--release-id <releaseId>",describe:"The prior release id (manifest hash) to re-activate \u2014 see `frontend status`.",required:!0},Jz],handler:async({client:t,args:e,reqOpts:n,emit:i,emitDryRunPreview:r})=>{let o=e.businessId,a=await Yz(t,o,e.env),c=await t.builderFrontendRollback(o,{releaseId:e.releaseId,environmentId:a},n);r(c)||i({result:c},"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,idempotentHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(TI),releaseId:s.string().describe("The prior release id (manifest hash) to re-activate."),environmentId:s.string().optional().describe(Zz)},handler:async(t,e)=>{let n=await Xz(t,e.businessId);return t.builderFrontendRollback(n,{releaseId:e.releaseId,environmentId:e.environmentId},{dryRun:e.dryRun})}}}];function n3(t){if(typeof t!="object"||t===null)return"";let e=t.unratable;if(typeof e!="object"||e===null)return"";let{eventCount:n,topReasonCode:i}=e;if(typeof n!="number"||n<=0)return"";let r=typeof i=="string"&&i!==""?` (top reason ${i})`:"";return`
|
|
140
|
-
\u26A0 ${n.toLocaleString()} served request(s) could not be rated${r}. They are terminal \u2014 no retry can price them \u2014 so they earned nothing and are excluded from every money total.`}var eD=[{opKey:"usage.read",operationClass:"operate",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},{field:"env",kind:"flag",token:"--env <environment>",describe:"Narrow the summary to one environment (name or id). Omit for the product-wide rollup."}],helpTextAfter:`
|
|
141
|
-
Scope:
|
|
142
|
-
Without --env this rolls up usage across EVERY environment, so a preview
|
|
143
|
-
environment's traffic is mixed into the totals. Pass --env <name|id> to see
|
|
144
|
-
only that environment's requests and per-member slice.
|
|
145
|
-
`,handler:async({client:t,args:e,emit:n})=>{let i=e.businessId,r=e.env,o=await Di(t,i,r)??null,a=await t.managementGetUsage(i,{environmentId:o}),c=o?`Usage summary for environment ${r}`:"Usage summary (all environments)";n({businessId:i,scope:o?"environment":"all",environmentId:o,environment:r??null,summary:a},`${c}${n3(a)}`)}},mcp:{tool:"fs_usage_read",title:"Read usage summary",description:"Read a business's usage summary \u2014 metered request counts and tier utilization. Without environmentId this rolls up EVERY environment. Read-only.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe("The business id whose usage to read."),environmentId:s.string().optional().describe("Narrow the summary to this environment; omit for the product-wide rollup.")},handler:async(t,{businessId:e,environmentId:n})=>t.managementGetUsage(e,{environmentId:n??null})}}];import{spawn as r3}from"node:child_process";var kye=8*1024,wye=8*1024,Sye=4*1024;var zye=8*1024,tD=1e3,i3=2e4;async function nD(t,e={}){let n=new URL(t);if(n.protocol!=="https:"&&n.protocol!=="http:")throw new E("Verification URL is invalid.",502,{code:"AUTH_DEVICE_INVALID_RESPONSE"});let{executable:i,args:r}=s3(n.toString()),o;try{o=r3(i,r,{stdio:"ignore"})}catch(a){throw new Error("Unable to open the verification URL.",{cause:a})}return o3(o,e.awaitLauncherExit?i3:tD)}function o3(t,e=tD){return new Promise((n,i)=>{let r=!1,o=setTimeout(()=>{r||(r=!0,t.unref(),n("released"))},e);t.once("error",a=>{r||(r=!0,clearTimeout(o),i(a))}),t.once("close",(a,c)=>{if(!r){if(r=!0,clearTimeout(o),a===0&&c===null){n("exited");return}i(new Error("Browser launcher exited before opening the URL."))}})})}function s3(t,e=process.platform){return e==="darwin"?{executable:"open",args:["-n",t]}:e==="win32"?{executable:"rundll32.exe",args:["url.dll,FileProtocolHandler",t]}:{executable:"xdg-open",args:[t]}}function RI(t,e){let n=typeof t=="string"&&t.trim().length>0,i=typeof e=="string"&&e.trim().length>0;return!n&&!i?"planKey is required when subscriberId is absent; provide a plan to create a new test subscriber.":null}function a3(t){if(t!==void 0){if(typeof t=="string"&&kg.includes(t))return t;throw new E(`--account-role must be one of: ${kg.join(", ")}. The stored values OWNER/ADMIN/VIEWER are storage, not input (VIEWER is 'member').`,400,{code:"VALIDATION_ERROR",param:"accountRole"})}}var rD=[{opKey:"persona.bootstrap",operationClass:"operate",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 (required when creating a subscriber; e.g. starter)"},{field:"displayName",kind:"flag",token:"--display-name <name>",describe:"Persona display name"},{field:"subscriberId",kind:"flag",token:"--subscriber-id <id>",describe:"Join an existing persona test subscriber; omit to create a new subscriber owned by this persona"},{field:"accountRole",kind:"flag",token:"--account-role <role>",describe:"Subscriber-organization account role: owner, admin, or member \u2014 the canonical lowercase vocabulary (stored as Membership.role OWNER/ADMIN/VIEWER, where member \u21E2 VIEWER). Default: owner for a new subscriber, member when joining"},{field:"role",kind:"flag",token:"--role <role...>",describe:"Subscriber-owned product role key(s); omit to use the subscriber's configured default role"}],handler:async({client:t,args:e,reqOpts:n,emit:i})=>{let r=e.businessId,o=a3(e.accountRole);if(RI(e.subscriberId,e.plan))throw new E("--plan <planKey> is required when bootstrapping a new test subscriber. Pass --subscriber-id only when adding this persona to an existing subscriber.",400,{code:"VALIDATION_ERROR",param:"plan"});let c=await lu(t,r,e.env),l=await t.issuePersonaBootstrapKey(r,c,{...e.plan?{planKey:e.plan}:{},...e.displayName?{displayName:e.displayName}:{},...e.subscriberId?{subscriberId:e.subscriberId}:{},...o?{accountRole:o}:{},...e.role?{roleKeys:e.role}:{}},n);i({businessId:r,environmentId:c,result:l},"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.",annotations:{readOnlyHint:!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."),subscriberId:s.string().trim().min(1).optional(),planKey:s.string().trim().min(1).optional().describe("Plan key to assign. Required when creating a new subscriber; omit only when subscriberId joins an existing subscriber."),accountRole:s.enum(["owner","admin","member"]).optional(),roleKeys:s.array(s.string().trim().min(1)).optional().describe("Subscriber-owned product role keys. Omit to use its configured default role.")},inputSchemaRefinement:t=>RI(t.subscriberId,t.planKey),handler:async(t,{businessId:e,environmentId:n,subscriberId:i,planKey:r,accountRole:o,roleKeys:a})=>{let c=RI(i,r);if(c)throw new E(c,400,{code:"VALIDATION_ERROR",param:"planKey"});return t.issuePersonaBootstrapKey(e,n,{subscriberId:i,planKey:r,accountRole:o,roleKeys:a})}}},{opKey:"persona.read",operationClass:"operate",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,reqOpts:n,emit:i})=>{let r=e.businessId,o=await lu(t,r,e.env),a=await t.listPersonas(r,o);i({businessId:r,environmentId:o,result:a},"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:n})=>t.listPersonas(e,n)}},{opKey:"persona.login",operationClass:"operate",sideEffect:"write",cli:{group:"persona",command:"login",summary:"Open a browser signed in as a test persona",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:n})=>{let i=e.businessId,r=e.personaId,o=await lu(t,i,e.env),a=await t.createPersonaBrowserHandoff(i,o,r),c=new URL(a.data.portalUrl),l=`${c.pathname}${c.search}${c.hash}`,u=new URL("/persona-sign-in",c.origin);u.searchParams.set("fs-persona-return",l),u.hash=new URLSearchParams({"fs-persona-handoff":a.data.handoffToken}).toString();let m=await nD(u.toString(),{awaitLauncherExit:!0})==="exited";m||iz(`The browser launcher is still running; it may not have opened ${a.data.portalUrl} yet. Rerun \`farthershore persona login\` if no browser window appears.`),n({businessId:i,environmentId:o,personaId:r,portalUrl:a.data.portalUrl,expiresAt:a.data.expiresAt,opened:m},m?`Opened ${a.data.portalUrl} as persona ${r}`:`Launched a browser for ${a.data.portalUrl} as persona ${r}; the launcher has not confirmed it opened.`)}},mcp:null},{opKey:"persona.rotate",operationClass:"operate",sideEffect:"write",cli:{group:"persona",command:"rotate",summary:"Rotate a persona's test API key and return the new key once",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,reqOpts:n,emit:i})=>{let r=e.businessId,o=e.personaId,a=await lu(t,r,e.env),c=await t.rotatePersona(r,a,o,n);i({businessId:r,environmentId:a,result:c},`Persona ${o} rotated`)}},mcp:{tool:"fs_persona_rotate",title:"Rotate a test persona",description:"Rotate a test persona's API key. Returns the replacement key once.",annotations:{readOnlyHint:!1,idempotentHint:!1,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 rotate.")},handler:async(t,{businessId:e,environmentId:n,personaId:i})=>t.rotatePersona(e,n,i)}},{opKey:"persona.delete",operationClass:"operate",sideEffect:"write",cli:{group:"persona",command:"delete",summary:"Delete a temporary persona and its test-owned identity state",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:n})=>{let i=e.businessId,r=e.personaId,o=await lu(t,i,e.env),a=await t.deletePersona(i,o,r);n({businessId:i,environmentId:o,result:a},`Persona ${r} deleted`)}},mcp:{tool:"fs_persona_delete",title:"Delete a persona",description:"Delete a temporary test persona, including its credential, browser access, and test-owned identity state.",annotations:{readOnlyHint:!1,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 delete.")},handler:async(t,{businessId:e,environmentId:n,personaId:i})=>t.deletePersona(e,n,i)}}];async function lu(t,e,n){if(kr(n))throw new E("Test personas cannot be created on the production scope \u2014 `--env production` is not valid here. Personas issue `fsk_test_` keys and require a test-strategy preview environment; create one with `farthershore env create`.",void 0,{code:"VALIDATION_ERROR",param:"env"});try{return await zi(t,e,n)}catch(i){throw new E(i instanceof Error?i.message:`Environment "${n}" not found on business ${e}.`,void 0,{code:"ENV_NOT_FOUND"})}}var c3=s.object({provider:s.string().min(1),subject:s.string().min(1),providerOrganizationId:s.string().optional(),email:s.string().optional()}).strict(),l3=s.object({provider:s.string().min(1),sessionId:s.string().optional(),authenticatedAt:s.string().optional(),assuranceLevel:s.string().optional()}).strict(),Ui={id:s.string().min(1),businessId:s.string().optional(),organizationId:s.string().optional(),environmentId:s.string().optional(),externalIdentities:s.array(c3),authenticationContext:l3.optional()},u3=s.object({type:s.literal("user"),email:s.string().optional(),...Ui}).strict(),d3=s.object({type:s.literal("maker_token"),tokenId:s.string().optional(),variant:s.enum(["PERSONAL","ORG"]),...Ui}).strict(),m3=s.object({type:s.literal("subscriber_member"),subscriberId:s.string().optional(),membershipId:s.string().optional(),roles:s.array(s.string()).optional(),...Ui}).strict(),p3=s.object({type:s.literal("api_key"),keyId:s.string().optional(),subscriberId:s.string().optional(),...Ui}).strict(),f3=s.object({type:s.literal("runtime"),tokenId:s.string().optional(),...Ui}).strict(),g3=s.object({type:s.literal("persona"),personaId:s.string().optional(),subscriberId:s.string().optional(),...Ui}).strict(),h3=s.object({type:s.literal("system"),component:s.string().optional(),ruleId:s.string().optional(),...Ui}).strict(),b3=s.object({type:s.literal("agent"),agentId:s.string().optional(),...Ui}).strict(),xI=s.discriminatedUnion("type",[u3,d3,m3,p3,f3,g3,h3,b3]);var _3=1;var v3=["core","billing","webhook","evolution","authz","gateway","usage","workflow"],iD=s.enum(v3),oD=s.object({type:s.string().min(1).max(128),id:s.string().min(1).max(256)}).strict(),Xye=s.object({id:s.string().min(1),type:br,occurredAt:s.string().datetime(),businessId:s.string().min(1),environmentId:s.string().min(1).nullable().optional(),actor:xI,subject:oD,payload:s.record(s.string(),s.unknown()).default({}),source:iD,correlationId:s.string().min(1),correlationDepth:s.number().int().min(0).default(0),schemaVersion:s.number().int().min(1).default(_3)}).strict(),Qye=s.object({type:br,occurredAt:s.string().datetime().optional(),businessId:s.string().min(1),environmentId:s.string().min(1).nullable().optional(),actor:xI,subject:oD,payload:s.record(s.string(),s.unknown()).optional(),source:iD,correlationId:s.string().min(1).optional(),correlationDepth:s.number().int().min(0).optional()}).strict();var y3=50,k3=200,rke=s.object({businessId:s.string().min(1),environmentId:s.string().min(1).optional(),type:br.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(k3).default(y3),cursor:s.string().min(1).optional()}).strict();var wr=["usage","telemetry","denials","lifecycle","consumer_activity","audit"],Mg=s.enum(wr);var cke=s.object({event_id:s.string().min(1),type:br,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(),w3={"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","usage.archive_checkpoint":"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 sD(t){return w3[t]}var S3=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i,I3=100,E3=50,T3=100,R3=50;var jg=s.string().regex(S3,"Expected a UUID"),Bg=s.string().datetime({offset:!0}),OI=s.string().min(1).max(256).regex(/^[^\u0000-\u001f\u007f]+$/,"Control characters are not allowed"),Kg=s.object({from:Bg,to:Bg}).strict().refine(({from:t,to:e})=>Date.parse(t)<Date.parse(e),"range.from must be before range.to"),AI="production",Fg=s.object({type:br.optional(),actorId:OI.optional(),environmentId:s.union([s.literal(AI),jg]).optional()}).strict();function $I(t,e){let n=t.filters?.type;n&&sD(n)!==t.domain&&e.addIssue({code:"custom",path:["filters","type"],message:"Event type does not belong to the selected archive domain"})}var aD=s.object({domain:Mg,metric:s.enum(["events","unique_actors"]),interval:s.enum(["hour","day"]),range:Kg,filters:Fg.optional()}).strict().superRefine($I),x3=s.object({t:Bg,value:s.number().nonnegative()}).strict(),pke=s.array(x3),cD=s.object({domain:Mg,by:s.enum(["actor_id","type","environment_id"]),k:s.number().int().min(1).max(R3),range:Kg,filters:Fg.optional()}).strict().superRefine($I),O3=s.object({key:s.string().min(1).max(256),count:s.number().int().nonnegative()}).strict(),fke=s.array(O3),lD=s.object({domain:Mg,range:Kg,limit:s.number().int().min(1).max(T3).default(E3),filters:Fg.optional()}).strict().superRefine($I),A3=s.object({type:s.string().min(1).max(64),id:OI}).strict(),$3=s.object({id:OI,type:br,occurredAt:Bg,businessId:jg,environmentId:jg.nullable(),actor:A3.nullable(),payload:s.string().nullable()}).strict(),gke=s.array($3),C3=s.array(s.number().gt(0).lt(1)).min(1).max(10).refine(t=>new Set(t).size===t.length,"Percentiles must be unique"),uD=s.object({domain:s.literal("usage"),metric:s.enum(["latency_ms","upstream_ms","gateway_ms"]),percentiles:C3,range:Kg,filters:Fg.omit({type:!0}).optional()}).strict(),N3=s.object({percentile:s.number().gt(0).lt(1),value:s.number().nonnegative().nullable(),sampleCount:s.number().int().nonnegative().optional()}).strict(),hke=s.array(N3),P3={timeseries:aD,topK:cD,percentiles:uD,eventFeed:lD},z3=Object.keys(P3),bke=s.discriminatedUnion("verb",[s.object({verb:s.literal("timeseries"),query:aD}).strict(),s.object({verb:s.literal("topK"),query:cD}).strict(),s.object({verb:s.literal("percentiles"),query:uD}).strict(),s.object({verb:s.literal("eventFeed"),query:lD}).strict()]),_ke=s.object({verb:s.enum(z3),query:s.unknown()}).strict(),vke=s.object({businessIds:s.array(jg).min(1).max(I3)}).strict().refine(({businessIds:t})=>new Set(t).size===t.length,"Analytics business scope must not contain duplicates");var D3=1,L3=["USAGE_INGEST_AUTHORITY_PERIOD_ABSENT","USAGE_INGEST_AUTHORITY_BILLING_CYCLE_ABSENT","USAGE_INGEST_BUSINESS_ABSENT"],U3=s.enum(L3),M3=s.object({receiptId:s.string().trim().min(1),completionState:WP,durable:s.literal(!0),terminalOrphan:s.object({reason:U3}).strict().optional()}).strict(),j3=s.object({version:s.literal(D3),receipts:s.array(M3),sequence:iN.optional()}).strict();var dD={"1h":3600*1e3,"24h":1440*60*1e3,"7d":10080*60*1e3,"30d":720*60*60*1e3},mD=Object.keys(dD);function Mi(t){let e=dD[t];if(e===void 0)throw new Error(`Unknown --range "${t}". Expected one of: ${mD.join(", ")}`);let n=new Date;return{from:new Date(n.getTime()-e).toISOString(),to:n.toISOString()}}function ji(t){return{environmentId:typeof t=="string"&&t.length>0?t:AI}}function CI(t){if(!wr.includes(t))throw new Error(`Unknown --domain "${t}". Expected one of: ${wr.join(", ")}`);return t}var Vg={field:"range",kind:"flag",token:"--range <range>",describe:`Relative window: ${mD.join(" | ")}`,defaultValue:"24h"},qg={field:"env",kind:"flag",token:"--env <environmentId>",describe:"Environment id to scope to. Omit for production \u2014 never for 'all environments'."},Hg={field:"businessId",kind:"positional",token:"<businessIdOrName>",resolveBusiness:!0},Gg={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.")},pD=[{opKey:"analytics.timeseries",operationClass:"operate",sideEffect:"read",cli:{group:"analytics",command:"timeseries",summary:"Request (or denial) volume over time",args:[Hg,Vg,qg,{field:"domain",kind:"flag",token:"--domain <domain>",describe:`Archive domain: ${wr.join(" | ")}`,defaultValue:"usage"},{field:"interval",kind:"flag",token:"--interval <interval>",describe:"Bucket size: hour | day",defaultValue:"hour"}],handler:async({client:t,args:e,emit:n})=>{let i=e.businessId,{result:r}=await t.analyticsQuery(i,{verb:"timeseries",query:{domain:CI(e.domain),metric:"events",interval:e.interval,range:Mi(e.range),filters:ji(e.env)}});n({businessId:i,buckets:r},"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:{...Gg,domain:s.enum(wr).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:Mi(e.range??"24h"),filters:ji(e.environmentId)}})}},{opKey:"analytics.latency",operationClass:"operate",sideEffect:"read",cli:{group:"analytics",command:"latency",summary:"Request latency percentiles (p50 / p95 / p99)",args:[Hg,Vg,qg],handler:async({client:t,args:e,emit:n})=>{let i=e.businessId,{result:r}=await t.analyticsQuery(i,{verb:"percentiles",query:{domain:"usage",metric:"latency_ms",percentiles:[.5,.95,.99],range:Mi(e.range),filters:ji(e.env)}});n({businessId:i,percentiles:r},"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:Gg,handler:async(t,e)=>t.analyticsQuery(e.businessId,{verb:"percentiles",query:{domain:"usage",metric:"latency_ms",percentiles:[.5,.95,.99],range:Mi(e.range??"24h"),filters:ji(e.environmentId)}})}},{opKey:"analytics.top",operationClass:"operate",sideEffect:"read",cli:{group:"analytics",command:"top",summary:"Top callers / event types / environments by volume",args:[Hg,Vg,qg,{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: ${wr.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:n})=>{let i=e.businessId,{result:r}=await t.analyticsQuery(i,{verb:"topK",query:{domain:CI(e.domain),by:e.by,k:Number(e.k),range:Mi(e.range),filters:ji(e.env)}});n({businessId:i,rows:r},"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:{...Gg,by:s.enum(["actor_id","type","environment_id"]).default("actor_id"),domain:s.enum(wr).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:Mi(e.range??"24h"),filters:ji(e.environmentId)}})}},{opKey:"analytics.log",operationClass:"operate",sideEffect:"read",cli:{group:"analytics",command:"log",summary:"Recent requests \u2014 the live metering signal, newest first",args:[Hg,Vg,qg,{field:"domain",kind:"flag",token:"--domain <domain>",describe:`Archive domain: ${wr.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:n})=>{let i=e.businessId,{result:r}=await t.analyticsQuery(i,{verb:"eventFeed",query:{domain:CI(e.domain),range:Mi(e.range),limit:Number(e.limit),filters:ji(e.env)}});n({businessId:i,events:r},"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:{...Gg,domain:s.enum(wr).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:Mi(e.range??"24h"),limit:e.limit??25,filters:ji(e.environmentId)}})}}];var B3=100;async function fD(t,e,n){let i,r=Object.assign(async({offset:c})=>{let l=c===0?await t.listBuilderOrganizationMembers(e,n):await t.listBuilderOrganizationMembers(e,n,{limit:B3,offset:c});return i??=l,{data:l.members,pagination:l.pagination}},{meta:{path:"organizations.member.list",pagination:"offset"}}),o=await T0(r,{offset:0}),a=i;return{...a,members:o,pagination:{total:a.pagination.total,limit:a.pagination.total>0?a.pagination.total:a.pagination.limit,offset:0,hasMore:!1}}}var gD={filterFields:{key:"string",name:"string",builtIn:"boolean"},sortFields:["key","name","createdAt","id"],searchable:!0},hD={filterFields:{userId:"string",email:"string",roleKey:"string"},sortFields:["userId","email","roleKey","createdAt","updatedAt"],searchable:!0},Jt={field:"organizationId",kind:"positional",token:"<organizationId>",describe:"Builder organization id."},bD={field:"memberUserId",kind:"positional",token:"<memberUserId>"},Zg={field:"roleKey",kind:"positional",token:"<roleKey>",describe:"Organization-local role key."};function NI(t){let e;try{e=JSON.parse(t)}catch{throw new E("--permissions must be a JSON array of permission keys.",0,{code:"INVALID_PERMISSIONS"})}if(!Array.isArray(e)||e.some(n=>typeof n!="string"))throw new E("--permissions must be a JSON array of permission keys.",0,{code:"INVALID_PERMISSIONS"});return e}var _D={field:"permissions",kind:"flag",token:"--permissions <json>",describe:'Exact permission snapshot as JSON, for example ["business:read"]. Use [] for no permissions.',parser:t=>NI(t)},uu="organization role",vD=[{opKey:"organization.list",operationClass:"operate",sideEffect:"read",cli:{group:"organization",command:"list",summary:"List builder organizations available to the caller",args:[],handler:async({client:t,emit:e})=>e(await t.listBuilderOrganizations(),"Organizations")},mcp:null},{opKey:"organization.create",operationClass:"operate",sideEffect:"write",cli:{group:"organization",command:"create",summary:"Create a team or company organization",args:[{field:"name",kind:"positional",token:"<name>"},{field:"type",kind:"flag",token:"--type <type>",describe:"Organization type: team | company",defaultValue:"team"}],handler:async({client:t,args:e,reqOpts:n,emit:i})=>{let r=e.type==="company"?"company":"team";i(await t.createBuilderOrganization({name:e.name,type:r},n),"Organization created")}},mcp:null},{opKey:"organization.role.list",operationClass:"operate",sideEffect:"read",cli:{group:uu,command:"list",summary:"List the roles available in an organization",args:[Jt,...Ao(gD)],handler:async({client:t,args:e,emit:n})=>{let i=$o(e,gD);n(await(i?t.listBuilderOrganizationRoles(e.organizationId,i):t.listBuilderOrganizationRoles(e.organizationId)),"Organization roles")}},mcp:null},{opKey:"organization.role.show",operationClass:"operate",sideEffect:"read",cli:{group:uu,command:"show",summary:"Show one organization role and its exact permissions",args:[Jt,Zg],handler:async({client:t,args:e,emit:n})=>n(await t.getBuilderOrganizationRole(e.organizationId,e.roleKey),"Organization role")},mcp:null},{opKey:"organization.role.create",operationClass:"operate",sideEffect:"write",cli:{group:uu,command:"create",summary:"Create a custom organization role",args:[Jt,Zg,{field:"name",kind:"flag",token:"--name <name>",required:!0},{field:"description",kind:"flag",token:"--description <description>"},{..._D,required:!0}],handler:async({client:t,args:e,reqOpts:n,emit:i})=>i(await t.createBuilderOrganizationRole(e.organizationId,{key:e.roleKey,name:e.name,...e.description?{description:e.description}:{},permissions:e.permissions},n),"Organization role created")},mcp:null},{opKey:"organization.role.update",operationClass:"operate",sideEffect:"write",cli:{group:uu,command:"update",summary:"Update a built-in or custom organization role",args:[Jt,Zg,{field:"name",kind:"flag",token:"--name <name>"},{field:"description",kind:"flag",token:"--description <description>"},{field:"clearDescription",kind:"flag",token:"--clear-description",describe:"Clear the role description."},_D],handler:async({client:t,args:e,emit:n})=>{if(e.description!==void 0&&e.clearDescription)throw new E("Use either --description or --clear-description, not both.",0,{code:"INVALID_ROLE_UPDATE"});n(await t.updateBuilderOrganizationRole(e.organizationId,e.roleKey,{...e.name?{name:e.name}:{},...e.description?{description:e.description}:e.clearDescription?{description:null}:{},...e.permissions!==void 0?{permissions:e.permissions}:{}}),"Organization role updated")}},mcp:null},{opKey:"organization.role.delete",operationClass:"operate",sideEffect:"write",cli:{group:uu,command:"delete",summary:"Delete an unused custom organization role",args:[Jt,Zg],handler:async({client:t,args:e,emit:n})=>{await t.deleteBuilderOrganizationRole(e.organizationId,e.roleKey),n({deleted:e.roleKey},"Organization role deleted")}},mcp:null},{opKey:"organization.member.list",operationClass:"operate",sideEffect:"read",cli:{group:"organization",command:"members",summary:"List organization members",args:[Jt,...Ao(hD)],handler:async({client:t,args:e,emit:n})=>{let i=$o(e,hD);n(await fD(t,e.organizationId,i),"Organization members")}},mcp:null},{opKey:"organization.invitation.create",operationClass:"operate",sideEffect:"write",cli:{group:"organization",command:"invite",summary:"Invite a member to an organization",args:[Jt,{field:"email",kind:"positional",token:"<email>"},{field:"role",kind:"flag",token:"--role <role>",describe:"Organization role key (see `organization role list`).",defaultValue:"member"}],handler:async({client:t,args:e,reqOpts:n,emit:i})=>{let r=e.role;i(await t.inviteBuilderOrganizationMember(e.organizationId,{email:e.email,roleKey:r},n),"Invitation created")}},mcp:null},{opKey:"organization.invitation.list",operationClass:"operate",sideEffect:"read",cli:{group:"organization",command:"invitation-list",summary:"List the caller's pending organization invitations",args:[],handler:async({client:t,emit:e})=>e(await t.listBuilderInvitations(),"Pending invitations")},mcp:null},{opKey:"organization.invitation.list_sent",operationClass:"operate",sideEffect:"read",cli:{group:"organization",command:"invitation-list-sent",summary:"List an organization's outstanding sent invitations",args:[Jt],handler:async({client:t,args:e,emit:n})=>n(await t.listBuilderOrganizationInvitations(e.organizationId),"Outstanding sent invitations")},mcp:null},{opKey:"organization.invitation.revoke",operationClass:"operate",sideEffect:"write",cli:{group:"organization",command:"invitation-revoke",summary:"Revoke a pending organization invitation",args:[Jt,{field:"invitationId",kind:"positional",token:"<invitationId>"}],handler:async({client:t,args:e,emit:n})=>{await t.revokeBuilderInvitation(e.organizationId,e.invitationId),n({revoked:e.invitationId},"Invitation revoked")}},mcp:null},{opKey:"organization.invitation.accept",operationClass:"operate",sideEffect:"write",cli:{group:"organization",command:"invitation-accept",summary:"Accept an organization invitation",args:[{field:"invitationId",kind:"positional",token:"<invitationId>"},{field:"invitationToken",kind:"flag",token:"--invitation-token <token>",describe:"One-time token from the invitation email.",required:!0}],handler:async({client:t,args:e,emit:n})=>n(await t.acceptBuilderInvitation(e.invitationId,e.invitationToken),"Invitation accepted")},mcp:null},{opKey:"organization.member.update",operationClass:"operate",sideEffect:"write",cli:{group:"organization",command:"member-role",summary:"Change an organization member's role",args:[Jt,bD,{field:"role",kind:"flag",token:"--role <role>",describe:"New organization role key (see `organization role list`).",required:!0}],handler:async({client:t,args:e,emit:n})=>{let i=e.role;n(await t.updateBuilderOrganizationMember(e.organizationId,e.memberUserId,i),"Member role updated")}},mcp:null},{opKey:"organization.member.remove",operationClass:"operate",sideEffect:"write",cli:{group:"organization",command:"member-remove",summary:"Remove a member from an organization",args:[Jt,bD],handler:async({client:t,args:e,emit:n})=>{await t.removeBuilderOrganizationMember(e.organizationId,e.memberUserId),n({removed:e.memberUserId},"Member removed")}},mcp:null},{opKey:"organization.ownership.transfer",operationClass:"operate",sideEffect:"write",cli:{group:"organization",command:"ownership-transfer",summary:"Transfer primary ownership of a team or company organization to another member",yesMessage:"Transferring primary ownership hands the organization's ultimate authority to another member and cannot be undone by you afterwards. Pass --yes to confirm.",args:[Jt,{field:"newOwnerUserId",kind:"positional",token:"<newOwnerUserId>",describe:"User id of the existing member who becomes primary owner."}],handler:async({client:t,args:e,reqOpts:n,emit:i})=>i(await t.transferBuilderOrganizationOwnership(e.organizationId,e.newOwnerUserId,n),"Organization ownership transferred")},mcp:{tool:"fs_organization_ownership_transfer",title:"Transfer organization primary ownership",description:"Transfer primary ownership of a team or company organization to another existing member. Destructive and irreversible for the caller; requires the signed-in owner's session.",annotations:{readOnlyHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:{organizationId:s.string().describe("Builder organization id."),newOwnerUserId:s.string().describe("User id of the existing member who becomes primary owner.")},handler:async(t,e)=>t.transferBuilderOrganizationOwnership(e.organizationId,e.newOwnerUserId)}},{opKey:"organization.delete",operationClass:"operate",sideEffect:"write",cli:{group:"organization",command:"delete",summary:"Delete an organization and its managed state",args:[Jt],handler:async({client:t,args:e,emit:n})=>{await t.deleteBuilderOrganization(e.organizationId),n({deleted:e.organizationId},"Organization deleted")}},mcp:null},{opKey:"organization.overview.read",operationClass:"operate",sideEffect:"read",cli:{group:"organization",command:"overview",summary:"Read the organization overview shown on the dashboard",args:[Jt],handler:async({client:t,args:e,emit:n})=>n(await t.getBuilderOrganizationOverview(e.organizationId),"Organization overview")},mcp:null},{opKey:"organization.bulletin.read",operationClass:"operate",sideEffect:"read",cli:{group:"organization",command:"bulletin",summary:"List the consolidated bulletin across the organization",args:[Jt,{field:"kind",kind:"flag",token:"--kind <kind>"},{field:"status",kind:"flag",token:"--status <status>"},{field:"cursor",kind:"flag",token:"--cursor <cursor>"},{field:"limit",kind:"flag",token:"--limit <count>",parser:t=>Number.parseInt(t,10)}],handler:async({client:t,args:e,emit:n})=>n(await t.listBuilderOrganizationBulletin(e.organizationId,{kind:e.kind,status:e.status,cursor:e.cursor,limit:e.limit}),"Organization bulletin")},mcp:null}];import{writeFile as yD}from"node:fs/promises";var $a=[{field:"organizationId",kind:"positional",token:"<organizationId>"},{field:"action",kind:"flag",token:"--action <action>"},{field:"actorUserId",kind:"flag",token:"--actor <userId>"},{field:"decision",kind:"flag",token:"--decision <decision>"},{field:"from",kind:"flag",token:"--from <isoDate>"},{field:"to",kind:"flag",token:"--to <isoDate>"},{field:"limit",kind:"flag",token:"--limit <count>",parser:t=>Number.parseInt(t,10)}];function Wg(t){return{businessId:t.businessId,action:t.action,actorUserId:t.actorUserId,decision:t.decision,from:t.from,to:t.to,limit:t.limit}}var kD=[{opKey:"audit_log.read",operationClass:"operate",sideEffect:"read",cli:{group:"audit-log",command:"list",summary:"List organization or business-scoped audit-log rows",args:[...$a,{field:"cursor",kind:"flag",token:"--cursor <cursor>"}],handler:async({client:t,args:e,emit:n})=>n(await t.listBuilderAuditLogs(e.organizationId,{...Wg(e),cursor:e.cursor}),"Audit log")},mcp:null},{opKey:"audit_log.business.read",operationClass:"operate",sideEffect:"read",cli:{group:"audit-log",command:"business-list",summary:"List one business's audit-log rows",args:[$a[0],{field:"businessId",kind:"positional",token:"<businessId>"},...$a.slice(1),{field:"cursor",kind:"flag",token:"--cursor <cursor>"}],handler:async({client:t,args:e,emit:n})=>n(await t.listBuilderAuditLogs(e.organizationId,{...Wg(e),businessId:e.businessId,cursor:e.cursor}),"Business audit log")},mcp:null},{opKey:"audit_log.export",operationClass:"operate",sideEffect:"read",cli:{group:"audit-log",command:"export",summary:"Export organization or business-scoped audit logs as CSV",args:[...$a,{field:"output",kind:"flag",token:"--output <file>",describe:"Write CSV to this file; omit to return it in command output."}],handler:async({client:t,args:e,emit:n})=>{let i=await t.exportBuilderAuditLogs(e.organizationId,Wg(e));if(typeof e.output=="string"){await yD(e.output,i,"utf8"),n({output:e.output},`Audit log exported to ${e.output}`);return}n({csv:i},"Audit log CSV")}},mcp:null},{opKey:"audit_log.business.export",operationClass:"operate",sideEffect:"read",cli:{group:"audit-log",command:"business-export",summary:"Export one business's audit logs as CSV",args:[$a[0],{field:"businessId",kind:"positional",token:"<businessId>"},...$a.slice(1),{field:"output",kind:"flag",token:"--output <file>",describe:"Write CSV to this file; omit to return it in command output."}],handler:async({client:t,args:e,emit:n})=>{let i=await t.exportBuilderAuditLogs(e.organizationId,{...Wg(e),businessId:e.businessId});if(typeof e.output=="string"){await yD(e.output,i,"utf8"),n({output:e.output},`Audit log exported to ${e.output}`);return}n({csv:i},"Business audit log CSV")}},mcp:null}];var wD={field:"businessId",kind:"positional",token:"<businessIdOrSlug>",resolveBusiness:!0};function K3(t){try{let e=JSON.parse(t);if(!e||typeof e!="object"||Array.isArray(e))throw new Error;return e}catch{throw new E("--patch must be a JSON object",400,{code:"INVALID_NOTIFICATION_PREFERENCES_PATCH"})}}var SD=[{opKey:"notification.preferences.read",operationClass:"operate",sideEffect:"read",cli:{group:"notifications",command:"preferences",summary:"Get notification (email) opt-out preferences",args:[wD],handler:async({client:t,args:e,emit:n})=>n(await t.getBusinessNotificationPreferences(e.businessId),"Notification preferences")},mcp:null},{opKey:"notification.preferences.update",operationClass:"operate",sideEffect:"write",cli:{group:"notifications",command:"preferences-update",summary:"Patch notification (email) opt-out preferences",args:[wD,{field:"patch",kind:"flag",token:"--patch <json>",describe:'JSON patch, e.g. {"master":true} or {"categories":{"deployments":true}} (true = opted out of email)',required:!0,parser:K3}],handler:async({client:t,args:e,emit:n})=>n(await t.updateBusinessNotificationPreferences(e.businessId,e.patch),"Notification preferences updated")},mcp:null}];var ID=[{opKey:"apply_timeline.list",operationClass:"operate",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:n})=>{let i=e.businessId,r=await t.listApplyTimeline(i,{env:e.env});n({businessId:i,count:r.data.length,applyTimeline:r.data},`${r.data.length} apply timeline entr(ies)`)}},mcp:null},{opKey:"apply_timeline.read",operationClass:"operate",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:n})=>{let i=e.businessId,r=String(e.selector),o=await t.listApplyTimeline(i,{env:e.env}),a=o.data.find(c=>c.id===r)??o.data.find(c=>c.releaseTag===r)??o.data.find(c=>c.prNumber!==null&&String(c.prNumber)===r)??o.data.find(c=>c.branch===r)??o.data.find(c=>c.commitSha.startsWith(r));if(!a)throw new E(`Apply timeline entry ${r} was not found.`,404,{code:"APPLY_TIMELINE_ENTRY_NOT_FOUND"});n({businessId:i,applyTimelineEntry:a},`Apply timeline entry ${a.id}: ${a.status}`)}},mcp:null}];var du="The business id or slug.",mu="The subscriber (client org) id \u2014 from `consumer list`.",PI="The governed ChangeSet id.",Jg={field:"businessId",kind:"positional",token:"<businessIdOrSlug>",describe:du,resolveBusiness:!0},Yg={field:"subscriberId",kind:"positional",token:"<subscriberId>",describe:mu},ED={field:"changeSetId",kind:"positional",token:"<changeSetId>",describe:PI},Xg={field:"env",kind:"flag",token:"--env <env>",describe:"Environment name/id to scope the proposal to."};function F3(t){let e;try{e=JSON.parse(t)}catch{throw new E("--operations must be a JSON array of governed operations.",0,{code:"INVALID_OPERATIONS"})}if(!Array.isArray(e))throw new E("--operations must be a JSON array.",0,{code:"INVALID_OPERATIONS"});return e}async function Qg(t,e){return ke(t,e)}var TD=[{opKey:"change_set.propose",operationClass:"operate",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)",args:[Jg,Yg,{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=>F3(t)},Xg],handler:async({client:t,args:e,reqOpts:n,emit:i,emitDryRunPreview:r})=>{let o=e.businessId,a=e.subscriberId,c=await t.proposeConsumerChangeSet(o,a,{intent:e.intent,operations:e.operations},{env:e.env},n);r(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,idempotentHint:!0,openWorldHint:!0},inputSchema:{businessId:s.string().describe(du),subscriberId:s.string().describe(mu),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.")},handler:async(t,e)=>{let n=await Qg(t,e.businessId);return t.proposeConsumerChangeSet(n,e.subscriberId,{intent:e.intent,operations:e.operations},{env:e.env},{dryRun:e.dryRun})}}},{opKey:"change_set.preview",operationClass:"operate",sideEffect:"write",cli:{group:"proposal",command:"preview",summary:"Simulate + store a preview on a proposed ChangeSet (rides the propose authority)",args:[Jg,Yg,ED,Xg],handler:async({client:t,args:e,emit:n})=>{let i=e.businessId,r=await t.previewConsumerChangeSet(i,e.subscriberId,e.changeSetId,{env:e.env});n(r,"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,idempotentHint:!0,openWorldHint:!0},inputSchema:{businessId:s.string().describe(du),subscriberId:s.string().describe(mu),changeSetId:s.string().describe(PI),env:s.string().optional().describe("Environment name/id.")},handler:async(t,e)=>{let n=await Qg(t,e.businessId);return t.previewConsumerChangeSet(n,e.subscriberId,e.changeSetId,{env:e.env})}}},{opKey:"change_set.proposal_list",operationClass:"operate",sideEffect:"read",cli:{group:"proposal",command:"list",summary:"List governed ChangeSets proposed against a subscriber",args:[Jg,Yg,{field:"status",kind:"flag",token:"--status <status>",describe:"Filter by status (e.g. draft, approval_required)."},Xg],handler:async({client:t,args:e,emit:n})=>{let i=e.businessId,r=await t.listConsumerChangeSets(i,e.subscriberId,{env:e.env,status:e.status});n(r,"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(du),subscriberId:s.string().describe(mu),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 n=await Qg(t,e.businessId);return t.listConsumerChangeSets(n,e.subscriberId,{env:e.env,status:e.status})}}},{opKey:"change_set.proposal_read",operationClass:"operate",sideEffect:"read",cli:{group:"proposal",command:"get",summary:"Read one governed ChangeSet proposed against a subscriber",args:[Jg,Yg,ED,Xg],handler:async({client:t,args:e,emit:n})=>{let i=e.businessId,r=await t.getConsumerChangeSet(i,e.subscriberId,e.changeSetId,{env:e.env});n(r,"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(du),subscriberId:s.string().describe(mu),changeSetId:s.string().describe(PI),env:s.string().optional().describe("Environment name/id.")},handler:async(t,e)=>{let n=await Qg(t,e.businessId);return t.getConsumerChangeSet(n,e.subscriberId,e.changeSetId,{env:e.env})}}}];var zI="webhook.test",DI=[..._o,zI],V3=s.object({subscriptionId:s.string().optional(),compiledPlanId:s.string().optional()}).passthrough(),q3=s.object({subscriptionId:s.string().optional(),reason:s.string().optional(),lifecycle:s.string().optional(),compiledPlanId:s.string().optional()}).passthrough(),H3=s.object({subscriptionId:s.string().optional(),reason:s.string().optional(),lifecycle:s.string().optional()}).passthrough(),RD=s.object({subscriptionId:s.string().optional(),invoiceId:s.string().optional(),amount:s.number().nullable().optional(),currency:s.string().nullable().optional(),reason:s.string().optional()}).passthrough(),G3=s.object({compiledPlanId:s.string().optional(),lineageId:s.string().optional(),status:s.string().optional()}).passthrough(),Z3=s.object({subscriptionId:s.string().optional(),subscriberId:s.string().optional(),limitId:s.string().optional(),threshold:s.number().optional(),windowStartMs:s.number().optional(),windowEndMs:s.number().optional()}).passthrough(),W3=s.object({businessId:s.string(),sentAt:s.string()}).passthrough(),J3={"subscription.created":V3,"subscription.updated":q3,"subscription.canceled":H3,"payment.succeeded":RD,"payment.failed":RD,"entitlement.changed":G3,"usage.threshold_reached":Z3,[zI]:W3},Y3={id:s.string().min(1),createdAt:s.string().datetime({offset:!0}),businessId:s.string().min(1),environmentId:s.string().nullable()};function Bi(t){return s.object({...Y3,type:s.literal(t),data:J3[t]}).strict()}var pwe=s.discriminatedUnion("type",[Bi("subscription.created"),Bi("subscription.updated"),Bi("subscription.canceled"),Bi("payment.succeeded"),Bi("payment.failed"),Bi("entitlement.changed"),Bi("usage.threshold_reached"),Bi(zI)]);import{spawn as X3}from"node:child_process";import{createRequire as Q3}from"node:module";var eY=/https:\/\/[a-z0-9-]+\.trycloudflare\.com/i,xD=3e4,tY={"linux-x64":"@farthershore/cloudflared-linux-x64","linux-arm64":"@farthershore/cloudflared-linux-arm64","darwin-arm64":"@farthershore/cloudflared-darwin-arm64","darwin-x64":"@farthershore/cloudflared-darwin-x64"};function nY(){let t=tY[`${process.platform}-${process.arch}`];if(!t)return null;try{let e=Q3(import.meta.url),n=e.resolve(`${t}/package.json`),i=e(n),r=n.slice(0,n.lastIndexOf("/")),o=typeof i.bin=="string"?i.bin:i.bin?.cloudflared??"bin/cloudflared";return`${r}/${o.replace(/^\.\//,"")}`}catch{return null}}function rY(t){let e=eY.exec(t);return e?e[0].toLowerCase():null}function iY(t){return typeof t=="string"?t:t instanceof Uint8Array?Buffer.from(t).toString("utf8"):""}var oY=(t,e)=>X3(t,e,{stdio:["ignore","pipe","pipe"]});function AD(t){let e=t.spawn??oY,n=t.locateBinary??nY,i=t.setTimeoutFn??((a,c)=>setTimeout(a,c)),r=t.clearTimeoutFn??(a=>clearTimeout(a)),o=n()??"cloudflared";return new Promise((a,c)=>{let l=!1,u=!1,d,m=[],f=()=>{},p=new Promise(R=>{f=R}),g=()=>{if(!u){u=!0;try{d.kill("SIGTERM")}catch{}}},b=R=>{if(l)return;l=!0,r(_),g();let D=m.length>0?`
|
|
146
|
-
${m.join(`
|
|
147
|
-
`)}`:"";c(new E(R+D,0,{code:"TUNNEL_START_FAILED"}))};try{d=e(o,["tunnel","--no-autoupdate","--url",t.localOrigin])}catch(R){l=!0,c(new E(`Could not start cloudflared (${o}): ${R instanceof Error?R.message:String(R)}`,0,{code:"TUNNEL_START_FAILED"}));return}let _=i(()=>{b(`cloudflared did not report a trycloudflare.com URL within ${Math.round((t.timeoutMs??xD)/1e3)}s.`)},t.timeoutMs??xD),T=R=>{if(R.length===0||(m.push(R),m.length>8&&m.shift(),l))return;let D=rY(R);D&&(l=!0,r(_),a({url:D,stop:g,closed:p}))},$=()=>{let R="";return D=>{R+=iY(D);let j=R.split(`
|
|
148
|
-
`);R=j.pop()??"";for(let pt of j)T(pt.replace(/\r$/,""))}};d.stdout?.on("data",$()),d.stderr?.on("data",$()),d.on("error",R=>{let D=R.code;b(D==="ENOENT"?`cloudflared binary not found (${o}). Install the @farthershore/cloudflared-<platform> optional dependency for this host or put \`cloudflared\` on your PATH.`:`cloudflared failed to start: ${R.message}`)}),d.on("exit",R=>{let D=u;if(u=!0,l){f({code:R,expected:D});return}b(`cloudflared exited (code=${String(R)}) before the tunnel came up.`)})})}function sY(t){if(typeof t!="string"||t.trim().length===0)throw new E("--forward-to <localUrl> is required.",400,{code:"VALIDATION_ERROR",param:"forwardTo"});let e=/^[a-z][a-z0-9+.-]*:\/\//i.test(t.trim())?t.trim():`http://${t.trim()}`,n;try{n=new URL(e)}catch{throw new E(`--forward-to is not a valid URL: ${t}`,400,{code:"VALIDATION_ERROR",param:"forwardTo"})}if(n.protocol!=="http:"&&n.protocol!=="https:")throw new E("--forward-to must be an http:// or https:// URL.",400,{code:"VALIDATION_ERROR",param:"forwardTo"});return{origin:n.origin,pathAndQuery:`${n.pathname}${n.search}`}}function LI(t,e){return t.length>=e?t:t+" ".repeat(e-t.length)}function aY(t){let e=t.lastAttemptAt??t.createdAt;if(typeof e!="string")return"--:--:--";let n=new Date(e);return Number.isNaN(n.getTime())?e:n.toISOString().slice(11,19)}function cY(t){let e=t.responseStatus===null||t.responseStatus===void 0?"-":String(t.responseStatus);return[aY(t),LI(t.eventType,24),LI(t.status,8),LI(e,4),t.id].join(" ")}function OD(t){return`${t.id}:${t.status}:${String(t.attempts)}`}var MI=class{seen=new Set;next(e){let n=[];for(let i of e){let r=OD(i);this.seen.has(r)||(this.seen.add(r),n.push(i))}return n.reverse()}hasSeen(e){return this.seen.has(OD(e))}get size(){return this.seen.size}},UI=50,lY=20,uY=1e3;async function dY(t,e){let n=e.size===0?lY:uY,i=[];for(let o=0;o<n;o+=1){let a=await t({limit:String(UI),offset:String(o*UI)}),c=Array.isArray(a?.data)?a.data:[],l=c.some(u=>e.hasSeen(u));if(i.push(c),l||c.length<UI)break}let r=[];for(let o of i.reverse())r.push(...e.next(o));return r}async function mY(t,e){try{let i=(await t.managementListWebhookEventTypes(e)).data.events.map(r=>r.name).filter(r=>r.length>0);return i.length>0?i:[..._o]}catch{return[..._o]}}function pY(t){return t.length<=10?"fswh_\u2026":`${t.slice(0,5)}\u2026${t.slice(-4)}`}function fY(){return['import { createWebhookHandler } from "@farthershore/backend/webhooks";','const webhooks = createWebhookHandler({ secret: process.env.FS_WEBHOOK_SECRET!, on: { "payment.failed": async (event) => { /* \u2026 */ } } });','app.post("/webhooks/farthershore", express.raw({ type: "*/*" }), webhooks.express());']}function jI(t){return[`FS_WEBHOOK_SECRET=${t}`,"","Verify deliveries with @farthershore/backend:",...fY().map(e=>` ${e}`)]}var gY=2e3;async function $D(t){let{client:e,businessId:n,deps:i}=t,r=sY(t.forwardTo),o=t.events&&t.events.length>0?t.events:await mY(e,n),a=new AbortController,c=i.onStop(()=>a.abort()),l,u,d=0,m=!1,f,p;try{l=await i.startTunnel(r.origin);let g=`${l.url}${r.pathAndQuery}`;l.closed.then(D=>{D.expected||a.signal.aborted||(f={code:D.code},a.abort())});let b;try{b=await e.managementCreateWebhook(n,{url:g,events:o})}catch(D){if(D instanceof E&&D.outcomeUnknown!==!0)throw D;let j=`farthershore webhook list ${n}`,pt=`farthershore webhook delete ${n} <webhookId> --yes`;throw i.human(`\u26A0 Creating the temporary endpoint did not complete. If it was created, find the endpoint whose url is ${g} with \`${j}\` and remove it with \`${pt}\`.`),i.json({event:"create_outcome_unknown",endpointUrl:g,reconcile:j}),D}let _=b.data;u=_.id;let T=typeof _.secret=="string"?_.secret:"";if(i.human("\u2713 Listening for webhooks"),i.human(` endpoint ${_.id}`),i.human(` tunnel ${l.url} \u2192 ${r.origin}`),i.human(` url ${g}`),i.human(` events ${o.join(", ")}`),t.printSecret){i.human("");for(let D of jI(T))i.human(` ${D}`)}else i.human(` secret ${pY(T)} (pass --print-secret to show FS_WEBHOOK_SECRET)`);if(i.human(""),i.human(`Ctrl-C deletes the temporary endpoint. If the process is killed, remove it with \`farthershore webhook delete ${n} ${_.id} --yes\`.`),i.human(""),i.json({event:"listening",businessId:n,endpointId:_.id,tunnelUrl:l.url,url:g,events:o,...t.printSecret?{secret:T}:{}}),t.trigger){let D=await e.managementTestWebhook(n,_.id,{type:t.trigger});i.human(`\u2192 triggered ${t.trigger}: ${D.data.success?"delivered":"failed"}${D.data.status!==void 0?` (HTTP ${String(D.data.status)})`:""}`),i.json({event:"trigger",type:t.trigger,...D.data})}let $=new MI,R=t.pollIntervalMs??gY;for(;!a.signal.aborted;){let D=await dY(j=>e.managementListWebhookDeliveries(n,_.id,j),$);for(let j of D)d+=1,i.human(cY(j)),i.json({event:"delivery",...j});await i.sleep(R,a.signal)}p={endpointId:_.id,tunnelUrl:l.url,endpointUrl:g,deliveriesSeen:d}}finally{if(c(),u){try{await e.managementDeleteWebhook(n,u),m=!0,i.human(`\u2713 Deleted temporary endpoint ${u}`)}catch(g){i.human(`\u26A0 Could not delete temporary endpoint ${u}: ${g instanceof Error?g.message:String(g)}. Remove it with \`farthershore webhook delete ${n} ${u} --yes\`.`)}i.json({event:"stopped",endpointId:u,deleted:m})}l?.stop()}if(f)throw new E(`cloudflared exited unexpectedly (code=${String(f.code)}); the tunnel is gone. Temporary endpoint ${m?"was deleted":`may remain \u2014 remove it with \`farthershore webhook delete ${n} ${u??"<webhookId>"} --yes\``}.`,0,{code:"TUNNEL_CLOSED"});return{...p,deleted:m}}function CD(t,e){return new Promise(n=>{if(e.aborted){n();return}let i=setTimeout(r,t);function r(){clearTimeout(i),e.removeEventListener("abort",r),n()}e.addEventListener("abort",r,{once:!0})})}function ND(t){let e=()=>t();return process.once("SIGINT",e),process.once("SIGTERM",e),()=>{process.removeListener("SIGINT",e),process.removeListener("SIGTERM",e)}}var Hr="The business id or slug.",Na="The webhook endpoint id.",PD=`Envelope type to send: one of ${DI.join(", ")}. A catalog event is delivered with a realistic sample payload.`;function BI(t){if(typeof t=="string"&&t.length>0)return t;throw new E(`A webhook event type is required (e.g. one of: ${DI.join(", ")}).`,400,{code:"VALIDATION_ERROR",param:"type"})}function zD(t){if(!(typeof t!="string"||t.length===0)){bn("");for(let e of jI(t))bn(e)}}var Sr={field:"businessId",kind:"positional",token:"<businessIdOrSlug>",describe:Hr,resolveBusiness:!0},Ca={field:"webhookId",kind:"positional",token:"<webhookId>",describe:Na},KI={field:"events",kind:"flag",token:"--events <events>",describe:"Comma-separated event names, e.g. subscription.created,payment.failed"},DD={field:"limit",kind:"flag",token:"--limit <n>",describe:"Max rows to return."};function eh(t){if(typeof t!="string")return;let e=t.split(",").map(n=>n.trim()).filter(n=>n.length>0);return e.length>0?e:void 0}function LD(t){if(!t||typeof t!="object")return[];let e=t;return Array.isArray(e.data)?e.data:[]}function UD(t,e){if(!t||typeof t!="object")return e;let n=t;return typeof n.total=="number"?n.total:typeof n.pagination?.total=="number"?n.pagination.total:e}function hY(t){let e=t.enable===!0,n=t.disable===!0;if(e&&n)throw new E("Pass either --enable or --disable, not both.",400,{code:"VALIDATION_ERROR",param:"enabled"});if(e)return!0;if(n)return!1}async function Ki(t,e){return ke(t,e)}var bY=["webhook:create","webhook:delivery_read","webhook:delete"];async function _Y(t,e,n=!1){let i=await t.authWhoami();if(i.kind!=="maker")return;let r=new Set(i.grantedPermissions),o=[...bY,...n?["webhook:read"]:[],...e?["webhook:test"]:[]],a=o.filter(c=>!r.has(c));if(a.length>0)throw new E(`webhook listen needs ${o.join(", ")}; this MakerToken lacks ${a.join(", ")}. Issue a token with those permissions (or log in as a user).`,403,{code:"PERMISSION_DENIED"})}var MD=[{opKey:"webhook.read",operationClass:"operate",sideEffect:"read",cli:{group:"webhook",command:"list",summary:"List API-managed webhook endpoints",args:[Sr,DD],handler:async({client:t,args:e,emit:n})=>{let i=e.businessId,r=await t.managementListWebhooks(i,{limit:e.limit}),o=LD(r);n({businessId:i,count:o.length,total:UD(r,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(Hr),limit:s.string().optional().describe("Max rows to return.")},handler:async(t,e)=>{let n=await Ki(t,e.businessId);return t.managementListWebhooks(n,{limit:e.limit})}}},{opKey:"webhook.create",operationClass:"operate",sideEffect:"write",cli:{group:"webhook",command:"create",summary:"Create an API-managed webhook endpoint",args:[Sr,{field:"url",kind:"flag",token:"--url <url>",describe:"HTTPS receiver URL.",required:!0},{...KI,required:!0},{field:"env",kind:"flag",token:"--env <environmentId>",describe:"Only deliver events from this environment (default: every environment)."}],handler:async({client:t,args:e,reqOpts:n,emit:i,emitDryRunPreview:r})=>{let o=eh(e.events);if(!o)throw new E("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,...e.env?{environmentId:e.env}:{}},n);r(a)||(i({businessId:e.businessId,webhook:a.data},"Webhook endpoint created \u2014 the signing secret below is shown once"),zD(a.data?.secret))}},mcp:{tool:"fs_webhook_create",title:"Create webhook endpoint",description:"Create an outbound webhook endpoint for a business. Returns the signing secret once.",annotations:{readOnlyHint:!1,idempotentHint:!0,openWorldHint:!0},inputSchema:{businessId:s.string().describe(Hr),url:s.string().url().describe("HTTPS receiver URL."),events:s.array(s.string()).min(1).describe("Webhook event names to subscribe to."),environmentId:s.string().optional().describe("Only deliver events from this environment (default: every environment).")},handler:async(t,e)=>{let n=await Ki(t,e.businessId);return t.managementCreateWebhook(n,{url:e.url,events:e.events,...e.environmentId?{environmentId:e.environmentId}:{}},{dryRun:e.dryRun})}}},{opKey:"webhook.update",operationClass:"operate",sideEffect:"write",cli:{group:"webhook",command:"update",summary:"Update a webhook endpoint's URL, events, environment or enabled state",args:[Sr,Ca,{field:"url",kind:"flag",token:"--url <url>",describe:"Replacement HTTPS receiver URL."},KI,{field:"env",kind:"flag",token:"--env <environmentId>",describe:"Only deliver events from this environment."},{field:"allEnvs",kind:"flag",token:"--all-envs",describe:"Clear the environment scope: deliver events from every environment again."},{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:n,emit:i,emitDryRunPreview:r})=>{let o=eh(e.events),a=hY(e),c=e.url,l=e.env,u=e.allEnvs===!0;if(l&&u)throw new E("Pass either --env or --all-envs, not both.",400,{code:"VALIDATION_ERROR",param:"env"});let d=u?null:l;if(!o&&a===void 0&&!c&&d===void 0)throw new E("Pass --url, --events, --env, --all-envs, --enable, or --disable to update a webhook.",400,{code:"VALIDATION_ERROR"});let m=await t.managementUpdateWebhook(e.businessId,e.webhookId,{...c?{url:c}:{},...o?{events:o}:{},...d!==void 0?{environmentId:d}:{},...a!==void 0?{enabled:a}:{}},n);r(m)||i({businessId:e.businessId,webhook:m.data},"Webhook endpoint updated")}},mcp:{tool:"fs_webhook_update",title:"Update webhook endpoint",description:"Update an API-managed webhook endpoint's URL, event list, environment scope and/or enabled state. Use fs_webhook_rotate_secret for a new signing secret.",annotations:{readOnlyHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(Hr),webhookId:s.string().describe(Na),url:s.string().url().optional().describe("Replacement HTTPS receiver URL."),events:s.array(s.string()).min(1).optional().describe("Replacement webhook event list."),environmentId:s.string().nullable().optional().describe("Only deliver events from this environment; null clears the scope (every environment)."),enabled:s.boolean().optional().describe("Enable or disable delivery.")},handler:async(t,e)=>{let n=await Ki(t,e.businessId);return t.managementUpdateWebhook(n,e.webhookId,{url:e.url,events:e.events,environmentId:e.environmentId,enabled:e.enabled})}}},{opKey:"webhook.delete",operationClass:"operate",sideEffect:"write",cli:{group:"webhook",command:"delete",summary:"Delete an API-managed webhook endpoint. Requires --yes.",yesMessage:"Pass --yes to confirm webhook endpoint deletion.",args:[Sr,Ca],handler:async({client:t,args:e,emit:n})=>{await t.managementDeleteWebhook(e.businessId,e.webhookId),n({businessId:e.businessId,deleted:e.webhookId},"Webhook endpoint deleted")}},mcp:{tool:"fs_webhook_delete",title:"Delete webhook endpoint",description:"Delete an outbound webhook endpoint.",annotations:{readOnlyHint:!1,openWorldHint:!1},inputSchema:{businessId:s.string().describe(Hr),webhookId:s.string().describe(Na)},handler:async(t,e)=>{let n=await Ki(t,e.businessId);return t.managementDeleteWebhook(n,e.webhookId)}}},{opKey:"webhook.test",operationClass:"operate",sideEffect:"write",cli:{group:"webhook",command:"test",summary:"Send a signed test event to a webhook endpoint",args:[Sr,Ca],handler:async({client:t,args:e,emit:n,reqOpts:i})=>{let r=await t.managementTestWebhook(e.businessId,e.webhookId,void 0,i);n({businessId:e.businessId,result:r},"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,idempotentHint:!1,openWorldHint:!0},inputSchema:{businessId:s.string().describe(Hr),webhookId:s.string().describe(Na),type:s.string().optional().describe(`${PD} Defaults to webhook.test.`)},handler:async(t,e)=>{let n=await Ki(t,e.businessId);return t.managementTestWebhook(n,e.webhookId,e.type===void 0?void 0:{type:BI(e.type)})}}},{opKey:"webhook.trigger",operationClass:"operate",sideEffect:"write",cli:{group:"webhook",command:"trigger",summary:"Send a signed sample of a specific event (e.g. payment.failed) to a webhook endpoint",args:[Sr,Ca,{field:"type",kind:"flag",token:"--type <event>",describe:PD,required:!0}],handler:async({client:t,args:e,emit:n,reqOpts:i})=>{let r=BI(e.type),o=await t.managementTestWebhook(e.businessId,e.webhookId,{type:r},i);if(!o.data.success)throw new E(`Triggered ${r}: delivery FAILED (HTTP ${String(o.data.status??"?")})${o.data.error?` \u2014 ${o.data.error}`:""}`,502,{code:"WEBHOOK_DELIVERY_FAILED",details:{type:r,status:o.data.status,error:o.data.error}});n({businessId:e.businessId,type:r,result:o},`Triggered ${r}: delivered (HTTP ${String(o.data.status)})`)}},mcp:null},{opKey:"webhook.listen",operationClass:"operate",sideEffect:"write",cli:{group:"webhook",command:"listen",summary:"Tunnel platform webhooks to a local receiver and tail deliveries until Ctrl-C",args:[Sr,{field:"forwardTo",kind:"flag",token:"--forward-to <localUrl>",describe:"Local receiver URL, e.g. http://localhost:3000/webhooks/farthershore",required:!0},{...KI,describe:"Comma-separated event names to subscribe (default: every catalog event)"},{field:"printSecret",kind:"flag",token:"--print-secret",describe:"Print the temporary endpoint's FS_WEBHOOK_SECRET so the local receiver can verify signatures"},{field:"trigger",kind:"flag",token:"--trigger <event>",describe:"Fire a signed sample of this event as soon as the tunnel is up"}],helpTextAfter:["","Requires cloudflared: bundled via the @farthershore/cloudflared-<platform>","optional dependency, or a `cloudflared` on PATH. Ctrl-C deletes the","temporary endpoint; a killed listener leaves a *.trycloudflare.com endpoint","that `farthershore webhook delete <business> <webhookId> --yes` removes.","","Examples:"," farthershore webhook listen acme --forward-to http://localhost:3000/webhooks --print-secret"," farthershore webhook listen acme --forward-to localhost:3000/webhooks --events payment.failed --trigger payment.failed"].join(`
|
|
149
|
-
`),handler:async({client:t,args:e,emit:n})=>{let i=e.trigger===void 0?void 0:BI(e.trigger),r=(eh(e.events)??[]).length===0;await _Y(t,i!==void 0,r);let o=xo()==="json",a=await $D({client:t,businessId:e.businessId,forwardTo:e.forwardTo,events:eh(e.events),printSecret:e.printSecret===!0,trigger:i,deps:{startTunnel:c=>AD({localOrigin:c}),sleep:CD,onStop:ND,human:c=>bn(c),json:c=>{o&&process.stdout.write(`${JSON.stringify(c)}
|
|
150
|
-
`)}}});o||n(a,`Stopped after ${String(a.deliveriesSeen)} delivery row(s)`)}},mcp:null},{opKey:"webhook.rotate_secret",operationClass:"operate",sideEffect:"write",cli:{group:"webhook",command:"rotate",summary:"Issue a new signing secret (returned once); the old one keeps verifying for 24h",args:[Sr,Ca],handler:async({client:t,args:e,reqOpts:n,emit:i,emitDryRunPreview:r})=>{let o=await t.managementRotateWebhookSecret(e.businessId,e.webhookId,n);r(o)||(i({businessId:e.businessId,webhook:o.data},"Webhook signing secret rotated \u2014 store the new secret now; it is not shown again"),zD(o.data?.secret))}},mcp:{tool:"fs_webhook_rotate_secret",title:"Rotate webhook signing secret",description:"Issue a replacement signing secret for a webhook endpoint. Returns the new secret once; deliveries carry both signatures for 24 hours so the receiver can roll over without a gap.",annotations:{readOnlyHint:!1,idempotentHint:!1,openWorldHint:!1},inputSchema:{businessId:s.string().describe(Hr),webhookId:s.string().describe(Na)},handler:async(t,e)=>{let n=await Ki(t,e.businessId);return t.managementRotateWebhookSecret(n,e.webhookId)}}},{opKey:"webhook.event_type.read",operationClass:"operate",sideEffect:"read",cli:{group:"webhook",command:"event-types",summary:"List the event names a webhook endpoint can subscribe to",args:[Sr],handler:async({client:t,args:e,emit:n})=>{let i=await t.managementListWebhookEventTypes(e.businessId);n({businessId:e.businessId,events:i.data.events},`${i.data.events.length} subscribable event type(s)`)}},mcp:{tool:"fs_webhook_event_types",title:"List webhook event types",description:"List the event names a webhook endpoint can subscribe to, with descriptions.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(Hr)},handler:async(t,e)=>{let n=await Ki(t,e.businessId);return t.managementListWebhookEventTypes(n)}}},{opKey:"webhook.delivery.read",operationClass:"operate",sideEffect:"read",cli:{group:"webhook",command:"deliveries",summary:"List recent delivery attempts for a webhook endpoint",args:[Sr,Ca,DD],handler:async({client:t,args:e,emit:n})=>{let i=await t.managementListWebhookDeliveries(e.businessId,e.webhookId,{limit:e.limit}),r=LD(i);n({businessId:e.businessId,webhookId:e.webhookId,count:r.length,total:UD(i,r.length),deliveries:r},`${r.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.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(Hr),webhookId:s.string().describe(Na),limit:s.string().optional().describe("Max rows to return.")},handler:async(t,e)=>{let n=await Ki(t,e.businessId);return t.managementListWebhookDeliveries(n,e.webhookId,{limit:e.limit})}}}];var Pa="The business id or slug.",Fi="operator",pu={field:"businessId",kind:"positional",token:"<businessIdOrSlug>",describe:Pa,resolveBusiness:!0};async function fu(t,e){return ke(t,e)}var jD=[{opKey:"agents.list",operationClass:"operate",sideEffect:"read",cli:{group:"agents",command:"list",summary:"List a business's operating agents + enableable roles",args:[pu],handler:async({client:t,args:e,emit:n})=>{let i=e.businessId,r=await t.builderListAgents(i);n({businessId:i,...r},`${r.agents.length} agent(s) \u2014 enableable roles: ${r.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(Pa)},handler:async(t,e)=>{let n=await fu(t,e.businessId);return t.builderListAgents(n)}}},{opKey:"agents.status",operationClass:"operate",sideEffect:"read",cli:{group:"agents",command:"status",summary:"The Operator's activation state, recent runs, and usage totals",args:[pu],handler:async({client:t,args:e,emit:n})=>{let i=e.businessId,r=await t.builderAgentStatus(i,Fi);n({businessId:i,...r},`operator: ${r.enabled?"ENABLED":"disabled"} \u2014 last run ${r.lastRunAt??"never"}; ${r.recentRuns.length} recent run(s); ${r.usage.tokensIn+r.usage.tokensOut} tokens, ${r.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(Pa)},handler:async(t,e)=>{let n=await fu(t,e.businessId);return t.builderAgentStatus(n,Fi)}}},{opKey:"agents.runs.show",operationClass:"operate",sideEffect:"read",cli:{group:"agents",command:"runs-show",summary:"One run's full paper trail: trace, launches, action receipts",args:[pu,{field:"runId",kind:"positional",token:"<runId>",describe:"The agent run id (from `agents status`)."}],handler:async({client:t,args:e,emit:n})=>{let i=e.businessId,r=await t.builderAgentRunDetail(i,Fi,e.runId),o=r.launches?.length??0,a=r.actions?.length??0;n({businessId:i,...r},`run ${r.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(Pa),runId:s.string().describe("The agent run id.")},handler:async(t,e)=>{let n=await fu(t,e.businessId);return t.builderAgentRunDetail(n,Fi,e.runId)}}},{opKey:"agents.enable",operationClass:"operate",sideEffect:"write",cli:{group:"agents",command:"enable",summary:"Turn the Operator on (creates it on first enable)",args:[pu],handler:async({client:t,args:e,emit:n})=>{let i=e.businessId,r=await t.builderConfigureAgent(i,Fi,{enabled:!0});n({businessId:i,agent:r},"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,idempotentHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(Pa)},handler:async(t,e)=>{let n=await fu(t,e.businessId);return t.builderConfigureAgent(n,Fi,{enabled:!0})}}},{opKey:"agents.disable",operationClass:"operate",sideEffect:"write",cli:{group:"agents",command:"disable",summary:"Turn the Operator off (stops runs + billing)",args:[pu],handler:async({client:t,args:e,emit:n})=>{let i=e.businessId,r=await t.builderConfigureAgent(i,Fi,{enabled:!1});n({businessId:i,agent:r},"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,idempotentHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(Pa)},handler:async(t,e)=>{let n=await fu(t,e.businessId);return t.builderConfigureAgent(n,Fi,{enabled:!1})}}}];var gu="The business id or slug.",rh="The bulletin post id.",th={field:"businessId",kind:"positional",token:"<businessIdOrSlug>",describe:gu,resolveBusiness:!0},FI={field:"postId",kind:"positional",token:"<postId>",describe:rh};async function nh(t,e){return ke(t,e)}var BD=[{opKey:"bulletin.list",operationClass:"operate",sideEffect:"read",cli:{group:"bulletin",command:"list",summary:"List the agents' bulletin feed (trends + change requests)",args:[th,{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:n})=>{let i=e.businessId,r=await t.builderListBulletin(i,{kind:e.kind,status:e.status,limit:e.limit});n({businessId:i,...r},`${r.items.length} post(s)${r.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(gu),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 n=await nh(t,e.businessId);return t.builderListBulletin(n,{kind:e.kind,status:e.status,limit:e.limit})}}},{opKey:"bulletin.read",operationClass:"operate",sideEffect:"read",cli:{group:"bulletin",command:"show",summary:"Show one bulletin post (full body + data payload)",args:[th,FI],handler:async({client:t,args:e,emit:n})=>{let i=e.businessId,r=await t.builderGetBulletinPost(i,e.postId);n({businessId:i,post:r},`[${r.kind}] ${r.title} \u2014 ${r.status}${r.changeSetId?` (changeSet ${r.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(gu),postId:s.string().describe(rh)},handler:async(t,e)=>{let n=await nh(t,e.businessId);return t.builderGetBulletinPost(n,e.postId)}}},{opKey:"bulletin.ack",operationClass:"operate",sideEffect:"write",cli:{group:"bulletin",command:"ack",summary:"Acknowledge a post (the coding agent picked it up)",args:[th,FI],handler:async({client:t,args:e,emit:n})=>{let i=e.businessId,r=await t.builderSetBulletinStatus(i,e.postId,"acknowledged");n({businessId:i,post:r},`Post acknowledged: ${r.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; acknowledging an already-acknowledged post changes nothing.",annotations:{readOnlyHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(gu),postId:s.string().describe(rh)},handler:async(t,e)=>{let n=await nh(t,e.businessId);return t.builderSetBulletinStatus(n,e.postId,"acknowledged")}}},{opKey:"bulletin.resolve",operationClass:"operate",sideEffect:"write",cli:{group:"bulletin",command:"resolve",summary:"Resolve a post (the work landed)",args:[th,FI],handler:async({client:t,args:e,emit:n})=>{let i=e.businessId,r=await t.builderSetBulletinStatus(i,e.postId,"resolved");n({businessId:i,post:r},`Post resolved: ${r.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,idempotentHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(gu),postId:s.string().describe(rh)},handler:async(t,e)=>{let n=await nh(t,e.businessId);return t.builderSetBulletinStatus(n,e.postId,"resolved")}}}];var za="The business id or slug.",oh="The promo code id.",qI=["percent_off","amount_off","free_months"],hu="promo-code",bu={field:"businessId",kind:"positional",token:"<businessIdOrSlug>",describe:za,resolveBusiness:!0},VI={field:"promoCodeId",kind:"positional",token:"<promoCodeId>",describe:oh},KD={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 FD(t){if(typeof t!="string")return;let e=t.trim().toLowerCase();if(qI.includes(e))return e;throw new E(`Invalid promo code kind "${t}". Use percent_off, amount_off, or free_months.`,400,{code:"INVALID_PROMO_CODE_KIND",param:"kind"})}function Da(t,e){if(e===void 0)return;let n=typeof e=="number"?e:typeof e=="string"&&/^\d+$/.test(e.trim())?Number.parseInt(e,10):Number.NaN;if(!Number.isInteger(n)||n<=0)throw new E(`${t} must be a positive integer.`,400,{code:"INVALID_PROMO_CODE_FIELD",param:t});return n}function vu(t){return typeof t=="string"&&t.length>0?t:void 0}function VD(t,e){let n=Da("percent",t.percent),i=Da("amountCents",t.amountCents);if(n!==void 0&&i!==void 0)throw new E("Pass either --percent or --amount-cents, not both.",400,{code:"CONFLICTING_PROMO_AMOUNT_FLAGS",param:"amount"});if(e==="percent_off"){if(n===void 0)throw new E("percent_off promo codes require --percent.",400,{code:"INVALID_PROMO_CODE_FIELD",param:"percent"});if(n>100)throw new E("--percent must be between 1 and 100.",400,{code:"INVALID_PROMO_CODE_FIELD",param:"percent"});return n}if(e==="amount_off"){if(i===void 0)throw new E("amount_off promo codes require --amount-cents.",400,{code:"INVALID_PROMO_CODE_FIELD",param:"amountCents"});return i}if(e==="free_months"&&(n!==void 0||i!==void 0))throw new E("free_months promo codes do not accept --percent or --amount-cents.",400,{code:"INVALID_PROMO_CODE_FIELD",param:"amount"});return n??i}function qD(t){let e=t.plan??[];if(t.allPlans===!0&&e.length>0)throw new E("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 vY(t){let e=FD(t.kind);if(!e)throw new E("Promo code kind is required.",400,{code:"INVALID_PROMO_CODE_FIELD",param:"kind"});let n=Da("durationMonths",t.durationMonths);if(n===void 0)throw new E("--duration-months is required.",400,{code:"INVALID_PROMO_CODE_FIELD",param:"durationMonths"});let i=qD(t);return{code:String(t.code),kind:e,amount:VD(t,e),durationMonths:n,...i!==void 0?{applicablePlanIds:i}:{},maxRedemptions:Da("maxRedemptions",t.maxRedemptions),activeFrom:vu(t.activeFrom),activeUntil:vu(t.activeUntil)}}function yY(t){let e=FD(t.kind),n=Da("durationMonths",t.durationMonths),i=Da("maxRedemptions",t.maxRedemptions),r=qD(t);if(t.code!==void 0||e!==void 0||t.percent!==void 0||t.amountCents!==void 0||n!==void 0||i!==void 0||t.clearMaxRedemptions===!0||t.activeFrom!==void 0||t.activeUntil!==void 0||t.clearActiveFrom===!0||t.clearActiveUntil===!0||r!==void 0){if(e===void 0)throw new E("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(n===void 0)throw new E("Promo-code spec updates require --duration-months.",400,{code:"PROMO_CODE_UPDATE_REQUIRES_FULL_SPEC",param:"durationMonths"})}let a={},c=vu(t.code);c!==void 0&&(a.code=c),e!==void 0&&(a.kind=e);let l=VD(t,e);if(l!==void 0&&(a.amount=l),n!==void 0&&(a.durationMonths=n),i!==void 0&&(a.maxRedemptions=i),t.clearMaxRedemptions===!0&&(a.maxRedemptions=null),r!==void 0&&(a.applicablePlanIds=r),t.activeFrom!==void 0&&(a.activeFrom=vu(t.activeFrom)??null),t.activeUntil!==void 0&&(a.activeUntil=vu(t.activeUntil)??null),t.clearActiveFrom===!0&&(a.activeFrom=null),t.clearActiveUntil===!0&&(a.activeUntil=null),Object.keys(a).length===0)throw new E("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 _u(t,e){return ke(t,e)}function ih(t){return{status:t}}var HD=[{opKey:"promo_code.read",operationClass:"operate",sideEffect:"read",cli:{group:hu,command:"list",summary:"List API-managed promo codes for checkout",args:[bu],handler:async({client:t,args:e,emit:n})=>{let i=await t.listPromoCodes(e.businessId);n({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(za)},handler:async(t,e)=>{let n=await _u(t,e.businessId);return t.listPromoCodes(n)}}},{opKey:"promo_code.create",operationClass:"operate",sideEffect:"write",cli:{group:hu,command:"create",summary:"Create an API-managed checkout promo code",args:[bu,{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."},KD],handler:async({client:t,args:e,reqOpts:n,emit:i})=>{let r=await t.createPromoCode(e.businessId,vY(e),n);i({businessId:e.businessId,promoCode:r},"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,openWorldHint:!0},inputSchema:{businessId:s.string().describe(za),code:s.string().min(1).max(64),kind:s.enum(qI),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 n=await _u(t,e.businessId);return t.createPromoCode(n,{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",sideEffect:"write",cli:{group:hu,command:"update",summary:"Update an API-managed checkout promo code",args:[bu,VI,{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."},KD,{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,reqOpts:n,emit:i})=>{let r=await t.updatePromoCode(e.businessId,e.promoCodeId,yY(e),n);i({businessId:e.businessId,promoCode:r},"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,openWorldHint:!0},inputSchema:{businessId:s.string().describe(za),promoCodeId:s.string().describe(oh),code:s.string().min(1).max(64).optional(),kind:s.enum(qI).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 n=await _u(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(n,e.promoCodeId,i)}}},{opKey:"promo_code.archive",operationClass:"operate",sideEffect:"write",cli:{group:hu,command:"archive",summary:"Archive a checkout promo code",args:[bu,VI],handler:async({client:t,args:e,emit:n})=>{let i=await t.updatePromoCode(e.businessId,e.promoCodeId,ih("ARCHIVED"));n({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,openWorldHint:!1},inputSchema:{businessId:s.string().describe(za),promoCodeId:s.string().describe(oh)},handler:async(t,e)=>{let n=await _u(t,e.businessId);return t.updatePromoCode(n,e.promoCodeId,ih("ARCHIVED"))}}},{opKey:"promo_code.reactivate",operationClass:"operate",sideEffect:"write",cli:{group:hu,command:"reactivate",summary:"Reactivate an archived checkout promo code",args:[bu,VI],handler:async({client:t,args:e,emit:n})=>{let i=await t.updatePromoCode(e.businessId,e.promoCodeId,ih("ACTIVE"));n({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,openWorldHint:!1},inputSchema:{businessId:s.string().describe(za),promoCodeId:s.string().describe(oh)},handler:async(t,e)=>{let n=await _u(t,e.businessId);return t.updatePromoCode(n,e.promoCodeId,ih("ACTIVE"))}}}];var cn="The business id or slug.",yn="The subscriber id from `consumer list`.",_n={field:"businessId",kind:"positional",token:"<businessIdOrSlug>",describe:cn,resolveBusiness:!0},Dn={field:"subscriberId",kind:"positional",token:"<subscriberId>",describe:yn},kY={field:"env",kind:"flag",token:"--env <env>",describe:"Environment name for preview-scoped consumers."},JD="The member's external identity id (Clerk userId) within the client org.",wY="Comma-separated business-role keys to set (replaces the current assignment; pass an empty string to clear).",YD="The API key id from `consumer keys list`.",SY={field:"keyId",kind:"positional",token:"<keyId>",describe:YD},IY={field:"userExternalId",kind:"positional",token:"<userExternalId>",describe:JD};function EY(t){return t.split(",").map(e=>e.trim()).filter(Boolean)}var TY={field:"roles",kind:"flag",token:"--roles <roles>",describe:wY,required:!0,parser:t=>EY(t)};async function vn(t,e){return ke(t,e)}function RY(t){return Array.isArray(t)?t:[]}function xY(t){for(let e of t){let n=e.ownerName??e.id;bn(`${e.id} ${n} ${e.status} plan=${e.planName??"-"} rbac=${e.rbac?.enabled?"on":"off"}`);for(let i of e.members??[])bn(` ${i.userExternalId} accountRole=${i.accountRole??"unknown"} roles=${i.businessRoleKeys.length>0?i.businessRoleKeys.join(","):"-"}`)}}var ah="The subscriber-owned role key (lowercase slug). `owner` is reserved and immutable.",GD="Comma-separated permission keys from the business's derived catalog (e.g. `reports:read,reports:write`).",ZD="Role key new members fall back to when they have no explicit role. Omit to clear it.",HI={field:"roleKey",kind:"positional",token:"<roleKey>",describe:ah};function WD(t){return t.split(",").map(e=>e.trim()).filter(Boolean)}async function sh(t,e,n,i,r){return t.builderSetConsumerRbac(e,n,{enabled:i,...r!==void 0?{defaultRoleKey:r}:{}})}var OY="Enforcement needs BOTH flags: the product flag (`farthershore business rbac enable`) and this per-subscriber flag. With the product flag off, core answers 400 RBAC_NOT_ENABLED_BY_PRODUCT. The subscribing org can flip the same flag itself at the portal's /settings/team page.";function AY(t){for(let e of t)bn(`${e.id} ${e.displayPrefix} ${e.status} name=${e.name??"-"} created=${e.createdAt}${e.revokedAt?` revoked=${e.revokedAt}`:""}`)}var XD=[{opKey:"consumer.read",operationClass:"operate",sideEffect:"read",cli:{group:"consumer",command:"list",summary:"List users/consumers for a business",args:[_n,kY],handler:async({client:t,args:e,reqOpts:n,emit:i})=>{let r=e.businessId,o=RY(await t.builderListConsumers(r,{env:e.env}));i({businessId:r,count:o.length,consumers:o},`${o.length} consumer(s)`),xY(o)}},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(cn),env:s.string().optional().describe("Environment name for preview-scoped consumers.")},handler:async(t,e)=>{let n=await vn(t,e.businessId);return t.builderListConsumers(n,{env:e.env})}}},{opKey:"consumer.block",operationClass:"operate",sideEffect:"write",cli:{group:"consumer",command:"block",summary:"Block a user and revoke their active API keys",yesMessage:"Blocking a user revokes active API keys. Pass --yes to confirm.",args:[_n,Dn],handler:async({client:t,args:e,emit:n})=>{let i=e.businessId,r=e.subscriberId,o=await t.builderBlockConsumer(i,r);n({businessId:i,subscriberId:r,result:o},`Consumer blocked: ${r}`)}},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,idempotentHint:!0,openWorldHint:!0},inputSchema:{businessId:s.string().describe(cn),subscriberId:s.string().describe(yn)},handler:async(t,e)=>{let n=await vn(t,e.businessId);return t.builderBlockConsumer(n,e.subscriberId)}}},{opKey:"consumer.read",operationClass:"operate",sideEffect:"read",cli:{group:"consumer keys",command:"list",summary:"List a consumer's API keys (metadata only)",args:[_n,Dn],handler:async({client:t,args:e,emit:n})=>{let i=e.businessId,r=e.subscriberId,a=(await t.builderListConsumerApiKeys(i,r)).apiKeys??[];n({businessId:i,subscriberId:r,count:a.length,apiKeys:a},`${a.length} API key(s)`),AY(a)}},mcp:{tool:"fs_consumer_keys_list",title:"List consumer API keys",description:"List one consumer's API keys for a business. Read-only and metadata only \u2014 the response never contains key material. Use it to discover the keyId needed to revoke a single key.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(cn),subscriberId:s.string().describe(yn)},handler:async(t,e)=>{let n=await vn(t,e.businessId);return t.builderListConsumerApiKeys(n,e.subscriberId)}}},{opKey:"consumer.block",operationClass:"operate",sideEffect:"write",cli:{group:"consumer keys",command:"revoke",summary:"Revoke ONE of a consumer's API keys",yesMessage:"Revoking an API key permanently kills that credential. Pass --yes to confirm.",args:[_n,Dn,SY],handler:async({client:t,args:e,emit:n})=>{let i=e.businessId,r=e.subscriberId,o=e.keyId;await t.builderRevokeConsumerApiKey(i,r,o),n({businessId:i,subscriberId:r,keyId:o,revoked:!0},`API key revoked: ${o}`)}},mcp:{tool:"fs_consumer_keys_revoke",title:"Revoke consumer API key",description:"Revoke ONE of a consumer's API keys for a business. The surgical alternative to blocking the whole consumer (which revokes every key). Irreversible: the credential stops working at the edge and cannot be un-revoked \u2014 mint a new key instead. Destructive live-state operation; it does not edit repo-authored business behavior.",annotations:{readOnlyHint:!1,idempotentHint:!0,openWorldHint:!0},inputSchema:{businessId:s.string().describe(cn),subscriberId:s.string().describe(yn),keyId:s.string().describe(YD)},handler:async(t,e)=>{let n=await vn(t,e.businessId);return await t.builderRevokeConsumerApiKey(n,e.subscriberId,e.keyId),{revoked:!0,keyId:e.keyId}}}},{opKey:"consumer.migrate_latest",operationClass:"operate",sideEffect:"write",cli:{group:"consumer",command:"migrate-latest",summary:"Move one consumer to the active head of their plan lineage",args:[_n,Dn],handler:async({client:t,args:e,reqOpts:n,emit:i})=>{let r=e.businessId,o=e.subscriberId,a=await t.builderMigrateConsumerToLatest(r,o,n);i({businessId:r,subscriberId:o,result:a},`Consumer migration evaluated: ${o}`)}},mcp:{tool:"fs_consumer_migrate_latest",title:"Move consumer to latest plan",description:"Move one consumer onto the current head of their plan lineage immediately. Operates on live subscription state.",annotations:{readOnlyHint:!1,idempotentHint:!0,openWorldHint:!0},inputSchema:{businessId:s.string().describe(cn),subscriberId:s.string().describe(yn)},handler:async(t,e)=>{let n=await vn(t,e.businessId);return t.builderMigrateConsumerToLatest(n,e.subscriberId)}}},{opKey:"consumer.remove",operationClass:"operate",sideEffect:"write",cli:{group:"consumer",command:"remove",summary:"Remove a user from live business access",yesMessage:"Removing a user cancels subscriptions, revokes credentials, purges related live state, and retains billing/audit history. Pass --yes to confirm.",args:[_n,Dn],handler:async({client:t,args:e,emit:n})=>{let i=e.businessId,r=e.subscriberId,o=await t.builderRemoveConsumer(i,r);n({businessId:i,subscriberId:r,result:o},`Consumer removed: ${r}`)}},mcp:{tool:"fs_consumer_remove",title:"Remove business consumer",description:"Remove a user/consumer from live business access: cancel subscriptions, revoke credentials, purge related live state, and archive the subscriber while retaining billing/audit history. Destructive and convergent on retry; it does not edit repo-authored business behavior.",annotations:{readOnlyHint:!1,idempotentHint:!0,openWorldHint:!0},inputSchema:{businessId:s.string().describe(cn),subscriberId:s.string().describe(yn)},handler:async(t,e)=>{let n=await vn(t,e.businessId);return t.builderRemoveConsumer(n,e.subscriberId)}}},{opKey:"consumer.roles.assign",operationClass:"operate",sideEffect:"write",cli:{group:"consumer rbac",command:"assign",summary:"Replace a client-org member's Managed-RBAC business roles (builder support override)",args:[_n,Dn,IY,TY],handler:async({client:t,args:e,emit:n})=>{let i=e.businessId,r=e.subscriberId,o=e.userExternalId,a=e.roles,c=await t.builderAssignConsumerMemberRoles(i,r,o,a);n({businessId:i,subscriberId:r,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,idempotentHint:!0,openWorldHint:!0},inputSchema:{businessId:s.string().describe(cn),subscriberId:s.string().describe(yn),userExternalId:s.string().describe(JD),roles:s.array(s.string()).describe("Business-role keys to set (replaces the current assignment; [] clears it).")},handler:async(t,e)=>{let n=await vn(t,e.businessId);return t.builderAssignConsumerMemberRoles(n,e.subscriberId,e.userExternalId,e.roles)}}},{opKey:"consumer.rbac.enable",operationClass:"operate",sideEffect:"write",cli:{group:"consumer rbac",command:"enable",summary:"Turn Managed-RBAC enforcement on for one subscriber",helpTextAfter:`
|
|
151
|
-
${OY}
|
|
152
|
-
`,args:[_n,Dn,{field:"defaultRole",kind:"flag",token:"--default-role <roleKey>",describe:ZD}],handler:async({client:t,args:e,emit:n})=>{let i=e.businessId,r=e.subscriberId,o=await sh(t,i,r,!0,e.defaultRole);n({businessId:i,subscriberId:r,settings:o},`Managed RBAC enabled for ${r}${o.defaultRoleKey?` (default role: ${o.defaultRoleKey})`:""}`)}},mcp:{tool:"fs_consumer_rbac_enable",title:"Enable subscriber Managed RBAC",description:"Turn Managed-RBAC enforcement ON for ONE subscriber, and optionally set the org's default role. Enforcement requires BOTH this flag and the product flag (fs_business_rbac_enable); with the product flag off this returns 400 RBAC_NOT_ENABLED_BY_PRODUCT. Returns 409 GOVERNED_BY_CHANGE_SET when the subscriber org has mandatory change control on \u2014 that org must approve a governed ChangeSet instead. Live-state operation; it does not edit repo-authored business behavior.",annotations:{readOnlyHint:!1,idempotentHint:!0,openWorldHint:!0},inputSchema:{businessId:s.string().describe(cn),subscriberId:s.string().describe(yn),defaultRoleKey:s.string().optional().describe(ZD)},handler:async(t,e)=>{let n=await vn(t,e.businessId);return sh(t,n,e.subscriberId,!0,e.defaultRoleKey)}}},{opKey:"consumer.rbac.disable",operationClass:"operate",sideEffect:"write",cli:{group:"consumer rbac",command:"disable",summary:"Turn Managed-RBAC enforcement off for one subscriber",helpTextAfter:`
|
|
153
|
-
Disabling is an ACCESS EXPANSION: with enforcement off, credential permission resolution can return ['*']. Role definitions are preserved for re-enable.
|
|
154
|
-
`,yesMessage:"Disabling Managed RBAC for a subscriber is an access expansion: its credentials stop being limited by role. Pass --yes to confirm.",args:[_n,Dn],handler:async({client:t,args:e,emit:n})=>{let i=e.businessId,r=e.subscriberId,o=await sh(t,i,r,!1);n({businessId:i,subscriberId:r,settings:o},`Managed RBAC disabled for ${r}`)}},mcp:{tool:"fs_consumer_rbac_disable",title:"Disable subscriber Managed RBAC",description:"Turn Managed-RBAC enforcement OFF for ONE subscriber. This is an access EXPANSION \u2014 with enforcement off, credential permission resolution can return ['*']. Role definitions are preserved for re-enable. Returns 409 GOVERNED_BY_CHANGE_SET when the subscriber org has mandatory change control on. Live-state operation; it does not edit repo-authored business behavior.",annotations:{readOnlyHint:!1,idempotentHint:!0,openWorldHint:!0},inputSchema:{businessId:s.string().describe(cn),subscriberId:s.string().describe(yn)},handler:async(t,e)=>{let n=await vn(t,e.businessId);return sh(t,n,e.subscriberId,!1)}}},{opKey:"consumer.read",operationClass:"operate",sideEffect:"read",cli:{group:"consumer rbac roles",command:"list",summary:"List one subscriber's Managed-RBAC roles",args:[_n,Dn],handler:async({client:t,args:e,emit:n})=>{let i=e.businessId,r=e.subscriberId,{roles:o}=await t.builderListConsumerRbacRoles(i,r);n({businessId:i,subscriberId:r,count:o.length,roles:o},`${o.length} role(s)`)}},mcp:{tool:"fs_consumer_rbac_roles_list",title:"List subscriber RBAC roles",description:"List ONE subscriber's Managed-RBAC role rows (ACCOUNT and CUSTOM), with each role's permission keys. Read-only; use it to discover role keys before creating, updating, deleting, or assigning them. Returns 400 RBAC_NOT_ENABLED_BY_PRODUCT when the product's RBAC flag is off.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(cn),subscriberId:s.string().describe(yn)},handler:async(t,e)=>{let n=await vn(t,e.businessId);return t.builderListConsumerRbacRoles(n,e.subscriberId)}}},{opKey:"consumer.role.create",operationClass:"operate",sideEffect:"write",cli:{group:"consumer rbac roles",command:"create",summary:"Create a CUSTOM Managed-RBAC role for one subscriber",args:[_n,Dn,HI,{field:"name",kind:"flag",token:"--name <name>",describe:"Human-readable role name.",required:!0},{field:"permissions",kind:"flag",token:"--permissions <permissions>",describe:GD,required:!0,parser:t=>WD(t)}],handler:async({client:t,args:e,emit:n})=>{let i=e.businessId,r=e.subscriberId,o=await t.builderCreateConsumerRbacRole(i,r,{roleKey:e.roleKey,name:e.name,permissions:e.permissions});n({businessId:i,subscriberId:r,role:o},`Role created: ${o.roleKey}`)}},mcp:{tool:"fs_consumer_rbac_roles_create",title:"Create subscriber RBAC role",description:"Create a CUSTOM Managed-RBAC role for ONE subscriber from the business's derived permission catalog. An unknown permission is rejected with 400 UNKNOWN_PERMISSION; the reserved key `owner` is rejected with 409 OWNER_ROLE_IMMUTABLE (owners always hold every permission); a duplicate key is a 409. Live-state operation; it does not edit repo-authored business behavior.",annotations:{readOnlyHint:!1,idempotentHint:!1,openWorldHint:!0},inputSchema:{businessId:s.string().describe(cn),subscriberId:s.string().describe(yn),roleKey:s.string().describe(ah),name:s.string().describe("Human-readable role name."),permissions:s.array(s.string()).describe("Permission keys from the business's derived catalog. Grant-by-exact-name; a custom subject's `<subject>:*` is never grantable.")},handler:async(t,e)=>{let n=await vn(t,e.businessId);return t.builderCreateConsumerRbacRole(n,e.subscriberId,{roleKey:e.roleKey,name:e.name,permissions:e.permissions})}}},{opKey:"consumer.role.update",operationClass:"operate",sideEffect:"write",cli:{group:"consumer rbac roles",command:"update",summary:"Rename or re-permission one subscriber Managed-RBAC role",args:[_n,Dn,HI,{field:"name",kind:"flag",token:"--name <name>",describe:"New human-readable role name."},{field:"permissions",kind:"flag",token:"--permissions <permissions>",describe:`${GD} Set-replace: the given list becomes the role's full grant.`,parser:t=>WD(t)}],handler:async({client:t,args:e,emit:n})=>{let i=e.businessId,r=e.subscriberId,o=e.roleKey,a=await t.builderUpdateConsumerRbacRole(i,r,o,{...e.name!==void 0?{name:e.name}:{},...e.permissions!==void 0?{permissions:e.permissions}:{}});n({businessId:i,subscriberId:r,role:a},`Role updated: ${a.roleKey}`)}},mcp:{tool:"fs_consumer_rbac_roles_update",title:"Update subscriber RBAC role",description:"Rename and/or re-permission ONE subscriber Managed-RBAC role. `permissions` is set-replace \u2014 the given list becomes the role's full grant. Provide name and/or permissions. An unknown permission is rejected with 400 UNKNOWN_PERMISSION; the reserved key `owner` is rejected with 409 OWNER_ROLE_IMMUTABLE. Role edits republish live-bound key claims asynchronously, so retest EXISTING credentials after the change reaches the edge.",annotations:{readOnlyHint:!1,idempotentHint:!0,openWorldHint:!0},inputSchema:{businessId:s.string().describe(cn),subscriberId:s.string().describe(yn),roleKey:s.string().describe(ah),name:s.string().optional().describe("New human-readable role name."),permissions:s.array(s.string()).optional().describe("Replacement permission keys (set-replace, from the derived catalog).")},inputSchemaRefinement:t=>t.name===void 0&&t.permissions===void 0?"provide name and/or permissions":null,handler:async(t,e)=>{let n=await vn(t,e.businessId);return t.builderUpdateConsumerRbacRole(n,e.subscriberId,e.roleKey,{...e.name!==void 0?{name:e.name}:{},...e.permissions!==void 0?{permissions:e.permissions}:{}})}}},{opKey:"consumer.role.delete",operationClass:"operate",sideEffect:"write",cli:{group:"consumer rbac roles",command:"delete",summary:"Delete one subscriber Managed-RBAC role",yesMessage:"Deleting a role strips it from every member and credential that holds it, and clears it as the org default. Pass --yes to confirm.",args:[_n,Dn,HI],handler:async({client:t,args:e,emit:n})=>{let i=e.businessId,r=e.subscriberId,o=e.roleKey;await t.builderDeleteConsumerRbacRole(i,r,o),n({businessId:i,subscriberId:r,roleKey:o,deleted:!0},`Role deleted: ${o}`)}},mcp:{tool:"fs_consumer_rbac_roles_delete",title:"Delete subscriber RBAC role",description:"Delete ONE subscriber Managed-RBAC role. Atomic and convergent: the key is stripped from every member and credential that holds it and cleared as the org default. The reserved key `owner` is rejected with 409 OWNER_ROLE_IMMUTABLE. Destructive live-state operation; it does not edit repo-authored business behavior.",annotations:{readOnlyHint:!1,idempotentHint:!0,openWorldHint:!0},inputSchema:{businessId:s.string().describe(cn),subscriberId:s.string().describe(yn),roleKey:s.string().describe(ah)},handler:async(t,e)=>{let n=await vn(t,e.businessId);return await t.builderDeleteConsumerRbacRole(n,e.subscriberId,e.roleKey),{deleted:!0,roleKey:e.roleKey}}}}];var WI="The business id or slug.",JI="Preview environment slug or id (omit for Main).",eL="Variable name, e.g. POSTHOG_TOKEN. The name is the class: an FS_PUBLIC_ prefix makes it public (inlined into the frontend bundle, readable by every visitor); any other name is a write-only secret.";async function $Y(){if(process.stdin.isTTY)throw new E("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 CY=$Y;async function ch(t,e,n){return await Di(t,e,n)??void 0}var yu={field:"businessId",kind:"positional",token:"<businessIdOrSlug>",describe:WI,resolveBusiness:!0},GI={field:"name",kind:"positional",token:"<name>",describe:eL},lh={field:"env",kind:"flag",token:"--env <slug>",describe:JI};function ZI(t,e){return{businessId:t,operation:e}}function QD(t){return{opKey:t==="set"?"business_variable.create":"business_variable.rotate",operationClass:"operate",sideEffect:"write",cli:{group:"variables",command:t,summary:t==="set"?"Create a variable from stdin (secret unless named FS_PUBLIC_*)":"Rotate a variable from stdin (the name, and so the class, is unchanged)",helpTextAfter:`
|
|
155
|
-
Example:
|
|
156
|
-
printf %s "$VALUE" | farthershore variables ${t} my-biz POSTHOG_TOKEN`,args:[yu,GI,lh],handler:async({client:e,args:n,reqOpts:i,emit:r})=>{let o=n.businessId,a=await(t==="set"?e.builderCreateBusinessVariable:e.builderRotateBusinessVariable)(o,n.name,{value:await CY(),environmentId:await ch(e,o,n.env)},i);r(ZI(o,a),`Variable ${n.name} ${a.pending?"publication pending":"active"}`)}},mcp:{tool:t==="set"?"fs_variable_set":"fs_variable_rotate",title:t==="set"?"Create a variable":"Rotate a variable",description:"Creates an immutable variable generation. An FS_PUBLIC_-prefixed name is public (inlined into the frontend bundle); any other name is a write-only secret whose plaintext is accepted once and never returned.",annotations:{readOnlyHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(WI),name:s.string().describe(eL),value:s.string().min(1).describe("The value."),environmentId:s.string().optional().describe(JI)},handler:async(e,n)=>(t==="set"?e.builderCreateBusinessVariable:e.builderRotateBusinessVariable)(await ke(e,n.businessId),n.name,{value:n.value,environmentId:n.environmentId},{dryRun:n.dryRun})}}}var tL=[{opKey:"business_variable.read",operationClass:"operate",sideEffect:"read",cli:{group:"variables",command:"list",summary:"List variables: FS_PUBLIC_* values, secret metadata only",args:[yu,lh],handler:async({client:t,args:e,emit:n})=>{let i=e.businessId,r=await ch(t,i,e.env);n({businessId:i,environmentId:r??null,variables:await t.builderBusinessVariables(i,r)},"Business variables")}},mcp:{tool:"fs_variable_list",title:"List business variables",description:"Lists variables. Returns readable FS_PUBLIC_* values; every other variable is a write-only secret and only its lifecycle metadata is returned.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(WI),environmentId:s.string().optional().describe(JI)},handler:async(t,e)=>t.builderBusinessVariables(await ke(t,e.businessId),e.environmentId)}},QD("set"),QD("rotate"),{opKey:"business_variable.revoke",operationClass:"operate",sideEffect:"write",cli:{group:"variables",command:"revoke",summary:"Revoke runtime access to a secret. Requires --yes.",yesMessage:"Revocation removes runtime availability once acknowledged. Pass --yes to confirm.",args:[yu,GI,lh],handler:async({client:t,args:e,reqOpts:n,emit:i})=>{let r=e.businessId,o=await t.builderRevokeBusinessVariable(r,e.name,await ch(t,r,e.env),n);i(ZI(r,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,idempotentHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string(),name:s.string(),environmentId:s.string().optional(),confirmation:s.literal("REVOKE")},handler:async(t,e)=>t.builderRevokeBusinessVariable(await ke(t,e.businessId),e.name,e.environmentId)}},{opKey:"business_variable.delete",operationClass:"operate",sideEffect:"write",cli:{group:"variables",command:"rm",summary:"Destroy a revoked secret in Main or preview. Requires --yes.",yesMessage:"Deletion permanently destroys ciphertext and requires acknowledged revocation first. Pass --yes to confirm.",args:[yu,GI,lh],handler:async({client:t,args:e,reqOpts:n,emit:i})=>{let r=e.businessId,o=await t.builderDeleteBusinessVariable(r,e.name,await ch(t,r,e.env),n);i(ZI(r,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,idempotentHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string(),name:s.string(),environmentId:s.string().optional(),confirmation:s.literal("DELETE")},handler:async(t,e)=>t.builderDeleteBusinessVariable(await ke(t,e.businessId),e.name,e.environmentId)}},{opKey:"business_variable.operation.read",operationClass:"operate",sideEffect:"read",cli:{group:"variables",command:"status",summary:"Read a durable secret mutation operation",args:[yu,{field:"operationId",kind:"positional",token:"<operationId>",describe:"Operation id returned by a mutation."}],handler:async({client:t,args:e,emit:n})=>{let i=e.businessId;n({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 ke(t,e.businessId),e.operationId)}}];var XI="The business id or slug.",uL="Preview environment slug or id (omit for production).",NY="The confirmationToken returned by the preview run. Omit to preview only.",dL=["current","current_with_contract_terms","fixed_version"],uh=["adopt_at_current_rate","exclude_until_renewal","require_amendment"],PY="AGREEMENT_CONFIRMATION_STALE",ku={field:"businessId",kind:"positional",token:"<businessIdOrSlug>",describe:XI,resolveBusiness:!0},nL={field:"env",kind:"flag",token:"--env <slug>",describe:uL},rL={field:"confirm",kind:"flag",token:"--confirm <token>",describe:NY},iL={field:"termsJson",kind:"flag",token:"--terms-json <json>",describe:'Negotiated contract terms as JSON: {"percentDiscount":{"num":"1","den":"5"},"floorNanos":"\u2026","capNanos":"\u2026","selectorScope":[{"kind":"provider_model_glob","provider":"acme","modelGlob":"acme-*"}]}. Required for current_with_contract_terms and for amend.'},oL={field:"effectiveAt",kind:"flag",token:"--effective-at <iso>",describe:"When the agreement/version takes effect (ISO-8601). Default: now."};function mL(t){if(t!==void 0){if(typeof t!="string"||t.trim()==="")throw new E("--terms-json must be a JSON object.",400,{code:"AGREEMENT_TERMS_INVALID_JSON",param:"terms-json"});try{return JSON.parse(t)}catch{throw new E("--terms-json is not valid JSON.",400,{code:"AGREEMENT_TERMS_INVALID_JSON",param:"terms-json"})}}}function YI(t,e,n){if(typeof t!="string"||!e.includes(t))throw new E(`--${n} must be one of: ${e.join(", ")}.`,400,{code:"MISSING_ARGUMENT",param:n});return t}async function sL(t,e,n){return await Di(t,e,typeof n=="string"?n:void 0)??void 0}function zY(t,e){let n=YI(t.binding,dL,"binding");if(typeof t.policy!="string"||t.policy.trim()==="")throw new E("--policy <pricingPolicyId> is required.",400,{code:"MISSING_ARGUMENT",param:"policy"});if(typeof t.subject!="string"||t.subject.trim()==="")throw new E("--subject <subscriptionId> is required.",400,{code:"MISSING_ARGUMENT",param:"subject"});let i={mode:n,pricingPolicyId:t.policy};if(n==="fixed_version"){if(typeof t.policyVersion!="string"||t.policyVersion.trim()==="")throw new E("--policy-version <pricingPolicyVersionId> is required for fixed_version.",400,{code:"MISSING_ARGUMENT",param:"policy-version"});i.pricingPolicyVersionId=t.policyVersion}let r=mL(t.termsJson);return{subjectId:t.subject,...e===void 0?{}:{environmentId:e},binding:i,newMeterPolicy:YI(t.newMeterPolicy??"require_amendment",uh,"new-meter-policy"),newMeasurePolicy:YI(t.newMeasurePolicy??"require_amendment",uh,"new-measure-policy"),...r===void 0?{}:{terms:r},...typeof t.effectiveAt=="string"?{effectiveAt:t.effectiveAt}:{},...typeof t.expiresAt=="string"?{expiresAt:t.expiresAt}:{}}}function aL(t){if(!t.startsWith("agc_"))return null;let[e]=t.slice(4).split(".");return e&&/^[0-9a-f]{64}$/.test(e)?e:null}function cL(t,e){let n=aL(t),i=aL(e.confirmationToken);if(n===null||i===null||n!==i)throw new E("The confirmation token no longer matches this operation's effect (the inputs or the pricing policy changed, or the token is malformed). Nothing was written \u2014 re-run without --confirm to preview again and read the new effect.",409,{code:PY})}var lL=(t,e,n)=>({businessId:t,preview:!0,effect:e.effect,confirmationToken:e.confirmationToken,next:n}),pL=[{opKey:"agreement.read",operationClass:"operate",sideEffect:"read",cli:{group:"agreements",command:"list",summary:"List a business's economic agreements",args:[ku,{field:"subject",kind:"flag",token:"--subject <subscriptionId>",describe:"Filter by subject (subscription) id."},nL],handler:async({client:t,args:e,reqOpts:n,emit:i})=>{let r=e.businessId,o=await sL(t,r,e.env),a=await t.listAgreements(r,{subjectId:e.subject,environmentId:o});i({businessId:r,agreements:a},`${a.length} agreement(s)`)}},mcp:{tool:"fs_agreement_list",title:"List economic agreements",description:"List a business's economic agreements (subject-scoped usage-pricing bindings and their append-only contract pricing versions).",annotations:{readOnlyHint:!0,idempotentHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(XI),subjectId:s.string().optional().describe("Filter by subject id."),environmentId:s.string().optional().describe(uL)},handler:async(t,e)=>t.listAgreements(await ke(t,e.businessId),{subjectId:e.subjectId,environmentId:e.environmentId})}},{opKey:"agreement.read",operationClass:"operate",sideEffect:"read",cli:{group:"agreements",command:"show",summary:"Show one economic agreement with its version history",args:[ku,{field:"agreementId",kind:"positional",token:"<agreementId>",describe:"The agreement id."}],handler:async({client:t,args:e,reqOpts:n,emit:i})=>{let r=e.businessId,o=await t.getAgreement(r,e.agreementId);i({businessId:r,agreement:o},`Agreement ${o.id}`)}},mcp:{tool:"fs_agreement_show",title:"Show an economic agreement",description:"Fetch one economic agreement with every contract pricing version.",annotations:{readOnlyHint:!0,idempotentHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(XI),agreementId:s.string().describe("The agreement id.")},handler:async(t,e)=>t.getAgreement(await ke(t,e.businessId),e.agreementId)}},{opKey:"agreement.read",operationClass:"operate",sideEffect:"read",cli:{group:"agreements",command:"pins",summary:"Read a subject's subscription pins (recurring-price pin + usage-pricing binding). Read-only; migrate-to-latest is deferred.",args:[ku,{field:"subjectId",kind:"positional",token:"<subscriptionId>",describe:"The subject (subscription) id."}],handler:async({client:t,args:e,emit:n})=>{let i=e.businessId,r=await t.getSubjectPins(i,e.subjectId);n({businessId:i,pins:r},`Pins for ${r.subjectId}`)}},mcp:null},{opKey:"agreement.create",operationClass:"operate",sideEffect:"write",cli:{group:"agreements",command:"create",summary:"Create an economic agreement (confirm-gated: previews first; pass --confirm <token> to commit)",helpTextAfter:`
|
|
157
|
-
Two-step: run once to PREVIEW (prints the effect + confirmationToken; nothing is written), then re-run the SAME command with --confirm <token> to commit.`,args:[ku,{field:"subject",kind:"flag",token:"--subject <subscriptionId>",describe:"The subject (subscription) the agreement binds."},{field:"binding",kind:"flag",token:"--binding <mode>",describe:`Usage-pricing binding: ${dL.join(" | ")}.`},{field:"policy",kind:"flag",token:"--policy <pricingPolicyId>",describe:"The pricing policy to bind."},{field:"policyVersion",kind:"flag",token:"--policy-version <pricingPolicyVersionId>",describe:"fixed_version only: the immutable policy version to pin."},{field:"newMeterPolicy",kind:"flag",token:"--new-meter-policy <policy>",describe:`What a never-negotiated meter does: ${uh.join(" | ")} (default require_amendment).`},{field:"newMeasurePolicy",kind:"flag",token:"--new-measure-policy <policy>",describe:`What a new measure on an agreed meter does: ${uh.join(" | ")} (default require_amendment).`},iL,oL,{field:"expiresAt",kind:"flag",token:"--expires-at <iso>",describe:"Optional expiry (ISO-8601)."},nL,rL],handler:async({client:t,args:e,reqOpts:n,emit:i})=>{let r=e.businessId,o=await sL(t,r,e.env),a=zY(e,o),c=await t.previewAgreement(r,a),l=e.confirm;if(!l){i(lL(r,c,"Re-run with --confirm <confirmationToken> to create."),"Preview only \u2014 nothing written. Re-run with --confirm <token> to create.");return}cL(l,c);let u=await t.createAgreement(r,{...a,confirmationToken:l},n);i({businessId:r,agreement:u},`Agreement ${u.id} created`)}},mcp:null},{opKey:"agreement.amend",operationClass:"operate",sideEffect:"write",cli:{group:"agreements",command:"amend",summary:"Amend an agreement's contract terms (append-only; confirm-gated: previews first; pass --confirm <token> to commit)",helpTextAfter:`
|
|
158
|
-
Two-step: run once to PREVIEW (prints the effect + confirmationToken; nothing is written), then re-run the SAME command with --confirm <token> to append the new version.`,args:[ku,{field:"agreementId",kind:"positional",token:"<agreementId>",describe:"The agreement to amend."},iL,oL,rL],handler:async({client:t,args:e,reqOpts:n,emit:i})=>{let r=e.businessId,o=e.agreementId,a=mL(e.termsJson);if(a===void 0)throw new E("--terms-json is required for amend.",400,{code:"MISSING_ARGUMENT",param:"terms-json"});let c={terms:a,...typeof e.effectiveAt=="string"?{effectiveAt:e.effectiveAt}:{}},l=await t.previewAgreementAmendment(r,o,c),u=e.confirm;if(!u){i(lL(r,l,"Re-run with --confirm <confirmationToken> to amend."),"Preview only \u2014 nothing written. Re-run with --confirm <token> to amend.");return}cL(u,l);let d=await t.amendAgreement(r,o,{...c,confirmationToken:u},n);i({businessId:r,agreement:d},`Agreement ${d.id} amended (version ${d.contractPricingVersions.length})`)}},mcp:null}];var kn={field:"businessId",kind:"positional",token:"<businessIdOrName>",resolveBusiness:!0};function DY(t){try{let e=JSON.parse(t);if(!e||typeof e!="object"||Array.isArray(e))throw new Error("not an object");return e}catch{throw new E("Expected a JSON object",400,{code:"INVALID_JSON_OBJECT"})}}function LY(t){let e=Number(t);if(!Number.isInteger(e)||e<0)throw new E("Expected a non-negative integer",400,{code:"INVALID_INTEGER"});return e}var fL=60,gL=900;function UY(t){let e=Number(t);if(!Number.isInteger(e)||e<fL||e>gL)throw new E(`--ttl-seconds must be a whole number of seconds from ${fL} to ${gL}.`,400,{code:"INVALID_INTEGER",param:"ttlSeconds"});return e}var QI={field:"body",kind:"flag",token:"--body <json>",describe:"Closed request body as a JSON object",required:!0,parser:DY},hL=[{opKey:"auth.context.issue",operationClass:"operate",sideEffect:"write",cli:{group:"auth",command:"context-token",summary:"Issue a short-lived gateway context token for a subscriber member",args:[kn,{field:"externalOrgId",kind:"flag",token:"--external-org <id>",required:!0},{field:"actorId",kind:"flag",token:"--actor <id>",required:!0},{field:"ttlSeconds",kind:"flag",token:"--ttl-seconds <seconds>",describe:"Token lifetime, 60\u2013900 seconds (default 900)",parser:UY}],handler:async({client:t,args:e,emit:n})=>{let i=await t.issueBusinessAuthContext(e.businessId,{externalOrgId:e.externalOrgId,actorId:e.actorId,...e.ttlSeconds===void 0?{}:{ttlSeconds:e.ttlSeconds}});n(i,`Context token issued (expires ${i.expiresAt})`)}},mcp:null},{opKey:"tax_settings.read",operationClass:"operate",sideEffect:"read",cli:{group:"tax-settings",command:"show",summary:"Show a business's Stripe Tax settings",args:[kn],handler:async({client:t,args:e,emit:n})=>n(await t.getBusinessTaxSettings(e.businessId),"Tax settings")},mcp:null},{opKey:"tax_settings.update",operationClass:"operate",sideEffect:"write",cli:{group:"tax-settings",command:"update",summary:"Update a business's Stripe Tax settings",args:[kn,QI],handler:async({client:t,args:e,reqOpts:n,emit:i})=>i(await t.updateBusinessTaxSettings(e.businessId,e.body,n),"Tax settings updated")},mcp:null},{opKey:"resource_count.report",operationClass:"operate",sideEffect:"write",cli:{group:"resource-count",command:"report",summary:"Report a subscription resource count",args:[kn,{field:"resource",kind:"positional",token:"<resource>"},{field:"subscriptionId",kind:"flag",token:"--subscription <id>",required:!0},{field:"count",kind:"flag",token:"--count <count>",required:!0,parser:LY},{field:"environmentId",kind:"flag",token:"--environment <id>"}],handler:async({client:t,args:e,reqOpts:n,emit:i})=>i(await t.reportBusinessResourceCount(e.businessId,e.resource,{subscriptionId:e.subscriptionId,count:e.count,...e.environmentId?{environmentId:e.environmentId}:{}},n),"Resource count reported")},mcp:null},{opKey:"denial.read",operationClass:"operate",sideEffect:"read",cli:{group:"denial",command:"show",summary:"Explain a denied request",args:[kn,{field:"requestId",kind:"positional",token:"<requestId>"}],handler:async({client:t,args:e,emit:n})=>n(await t.explainBusinessDenial(e.businessId,e.requestId),"Denial explanation")},mcp:null},{opKey:"business_dependents.read",operationClass:"operate",sideEffect:"read",cli:{group:"dependents",command:"list",summary:"List active dependents for a business route",args:[kn,{field:"route",kind:"flag",token:"--route <route>",required:!0},{field:"since",kind:"flag",token:"--since <iso-date>"},{field:"environmentId",kind:"flag",token:"--environment <id>"}],handler:async({client:t,args:e,emit:n})=>n(await t.listBusinessDependents(e.businessId,{route:e.route,since:e.since,environmentId:e.environmentId}),"Business dependents")},mcp:null},{opKey:"workflow.replay",operationClass:"operate",sideEffect:"read",cli:{group:"workflow-control",command:"replay",summary:"Preview a historical billing replay",args:[kn,{field:"periodStart",kind:"flag",token:"--period-start <iso-date>",required:!0},{field:"periodEnd",kind:"flag",token:"--period-end <iso-date>",required:!0}],handler:async({client:t,args:e,reqOpts:n,emit:i})=>i(await t.replayBusinessPeriod({business_id:e.businessId,period_start:e.periodStart,period_end:e.periodEnd},n),"Replay preview")},mcp:null},{opKey:"workflow.rollback",operationClass:"operate",sideEffect:"read",cli:{group:"workflow-control",command:"rollback-to-config",summary:"Preview restoring a business config commit",args:[kn,{field:"commitSha",kind:"positional",token:"<commitSha>"}],handler:async({client:t,args:e,reqOpts:n,emit:i})=>i(await t.previewBusinessConfigRollback({business_id:e.businessId,commit_sha:e.commitSha},n),"Rollback preview")},mcp:null},{opKey:"automation_rule.read",operationClass:"operate",sideEffect:"read",cli:{group:"automation",command:"list",summary:"List automation rules",args:[kn],handler:async({client:t,args:e,emit:n})=>n(await t.listAutomationRules(e.businessId),"Automation rules")},mcp:null},{opKey:"automation_rule.create",operationClass:"operate",sideEffect:"write",cli:{group:"automation",command:"create",summary:"Create an automation rule",args:[kn,QI],handler:async({client:t,args:e,reqOpts:n,emit:i})=>i(await t.createAutomationRule(e.businessId,e.body,n),"Automation rule created")},mcp:null},{opKey:"automation_rule.update",operationClass:"operate",sideEffect:"write",cli:{group:"automation",command:"update",summary:"Update an automation rule",args:[kn,{field:"ruleId",kind:"positional",token:"<ruleId>"},QI],handler:async({client:t,args:e,reqOpts:n,emit:i})=>i(await t.updateAutomationRule(e.businessId,e.ruleId,e.body,n),"Automation rule updated")},mcp:null},{opKey:"automation_rule.delete",operationClass:"operate",sideEffect:"write",cli:{group:"automation",command:"delete",summary:"Delete an automation rule",args:[kn,{field:"ruleId",kind:"positional",token:"<ruleId>"}],handler:async({client:t,args:e,emit:n})=>{await t.deleteAutomationRule(e.businessId,e.ruleId),n({deleted:!0,ruleId:e.ruleId},"Automation rule deleted")}},mcp:null},{opKey:"knowledge.guide.read",operationClass:"operate",sideEffect:"read",cli:{group:"knowledge",command:"list",summary:"List platform guide resources",args:[{field:"cursor",kind:"flag",token:"--cursor <cursor>"}],handler:async({client:t,args:e,emit:n})=>n(await t.listKnowledgeIndex({cursor:e.cursor}),"Knowledge index")},mcp:null},{opKey:"knowledge.business.read",operationClass:"operate",sideEffect:"read",cli:{group:"knowledge",command:"business-list",summary:"List one business's knowledge resources",args:[kn,{field:"cursor",kind:"flag",token:"--cursor <cursor>"}],handler:async({client:t,args:e,emit:n})=>n(await t.listBusinessKnowledgeIndex(e.businessId,{cursor:e.cursor}),"Business knowledge index")},mcp:null}];var Gr={field:"org",kind:"flag",token:"--org",describe:"Administer an organization-owned MakerToken (requires a signed-in user CLI session).",required:!0},eE={field:"tokenId",kind:"positional",token:"<tokenId>",describe:"Organization-owned maker-token id."},bL={field:"approvalId",kind:"positional",token:"<approvalId>",describe:"Pending org maker-token approval id."},tE={field:"permissions",kind:"flag",token:"--permissions <json>",describe:'Exact platform permission set as JSON, for example ["business:read"].',parser:t=>NI(t)},MY={field:"limit",kind:"flag",token:"--limit <count>",describe:"Page size (1-100; default 20).",parser:t=>Number.parseInt(t,10)},jY={field:"offset",kind:"flag",token:"--offset <count>",describe:"Row offset for paging (default 0).",parser:t=>Number.parseInt(t,10)};function BY(t){let e=t.split(",").map(n=>n.trim()).filter(Boolean);if(e.length===0)throw new E("--businesses requires at least one business id.",400,{code:"INVALID_BUSINESS_SCOPE",param:"businesses"});if(new Set(e).size!==e.length)throw new E("--businesses must not contain duplicate ids.",400,{code:"INVALID_BUSINESS_SCOPE",param:"businesses"});return e}function mh(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)?t:null}function KY(t){let e=mh(t);if(e?.status!=="PENDING")return t;let{token:n,...i}=e;return i}function FY(t){let e=mh(t)?.token;return typeof e=="string"&&e.length>0?e:null}function VY(t,e){let n=mh(t)?.[e];return typeof n=="string"&&n.length>0?n:null}function dh(t,e,n){let i=KY(t);if(mh(i)?.status==="PENDING"){let a=VY(i,"approvalId");e(i,`${n.pending??"Org maker-token request is PENDING approval"}${a?` (${a})`:""}; no credential was minted.`);return}let o=FY(i);o&&(Og("One-time MakerToken (store it now):"),bn(o)),e(i,o?`${n.active}; the plaintext token above is shown once.`:n.active)}function _L(t){return t.permissions}var vL=[{opKey:"org_maker_token.permission_catalog.read",operationClass:"operate",sideEffect:"read",cli:{group:"token",command:"permission-catalog",summary:"List the exact permissions a human may delegate to an org MakerToken",args:[Gr],handler:async({client:t,emit:e})=>{let n=await t.getMakerTokenPermissionCatalog();e(n,`${n.entries.length} permission subject(s) delegable to org maker tokens`)}},mcp:null},{opKey:"org_maker_token.list",operationClass:"operate",sideEffect:"read",cli:{group:"token",command:"list",summary:"List organization-owned MakerTokens",args:[Gr,MY,jY],handler:async({client:t,args:e,reqOpts:n,emit:i})=>{let r=await t.listOrgMakerTokens({limit:e.limit,offset:e.offset});i(r,`${r.data.length} org maker token(s)`)}},mcp:null},{opKey:"org_maker_token.create",operationClass:"operate",sideEffect:"write",cli:{group:"token",command:"create",summary:"Create or request approval for an organization-owned MakerToken",args:[{field:"name",kind:"positional",token:"<name>"},Gr,{...tE,required:!0},{field:"businesses",kind:"flag",token:"--businesses <ids>",describe:"Comma-separated business ids. Omit to authorize all current and future businesses.",parser:t=>BY(t)}],handler:async({client:t,args:e,reqOpts:n,emit:i})=>{let r=e.businesses,o=await t.createOrgMakerToken({name:e.name,requestedPermissions:_L(e),...r?{businessScope:{mode:"SELECTED",businessIds:r}}:{}},n);dh(o,i,{active:"Org maker token created and ACTIVE",pending:"Org maker-token create request is PENDING approval"})}},mcp:null},{opKey:"org_maker_token.update",operationClass:"operate",sideEffect:"write",cli:{group:"token",command:"update",summary:"Replace an org MakerToken's grants or request approval for the change",args:[eE,Gr,{...tE,required:!0}],handler:async({client:t,args:e,reqOpts:n,emit:i})=>{let r=await t.updateOrgMakerToken(e.tokenId,{requestedPermissions:_L(e)},n);dh(r,i,{active:"Org maker-token permissions updated",pending:"Org maker-token update is PENDING approval"})}},mcp:null},{opKey:"org_maker_token.approval_list",operationClass:"operate",sideEffect:"read",cli:{group:"token",command:"approvals",summary:"List pending org MakerToken approval requests",args:[Gr],handler:async({client:t,emit:e})=>{let n=await t.listOrgMakerTokenApprovals();e({count:n.length,approvals:n},`${n.length} pending org maker-token approval(s)`)}},mcp:null},{opKey:"org_maker_token.approve",operationClass:"operate",sideEffect:"write",cli:{group:"token",command:"approve",summary:"Approve an org MakerToken request, optionally trimming its grants",args:[bL,Gr,tE],handler:async({client:t,args:e,reqOpts:n,emit:i})=>{let r=e.permissions,o=await t.approveOrgMakerToken(e.approvalId,r===void 0?{}:{grantedPermissions:r},n);dh(o,i,{active:"Org maker-token request approved and ACTIVE"})}},mcp:null},{opKey:"org_maker_token.deny",operationClass:"operate",sideEffect:"write",cli:{group:"token",command:"deny",summary:"Deny an org MakerToken approval request",args:[bL,Gr],handler:async({client:t,args:e,emit:n})=>n(await t.denyOrgMakerToken(e.approvalId),"Org maker-token request denied")},mcp:null},{opKey:"org_maker_token.rotate",operationClass:"operate",sideEffect:"write",cli:{group:"token",command:"rotate",summary:"Rotate an org MakerToken and reveal its replacement once",args:[eE,Gr],handler:async({client:t,args:e,reqOpts:n,emit:i})=>dh(await t.rotateOrgMakerToken(e.tokenId,n),i,{active:"Org maker token rotated"})},mcp:null},{opKey:"org_maker_token.revoke",operationClass:"operate",sideEffect:"write",cli:{group:"token",command:"revoke",summary:"Permanently revoke an org MakerToken",args:[eE,Gr],yesMessage:"Revoking this org MakerToken immediately invalidates it. Pass --yes to confirm.",handler:async({client:t,args:e,emit:n})=>{await t.revokeOrgMakerToken(e.tokenId),n({revoked:!0,tokenId:e.tokenId},"Org maker token revoked")}},mcp:null}];var nE="The business id or slug.",yL={field:"businessId",kind:"positional",token:"<businessIdOrName>",describe:nE,resolveBusiness:!0},kL=[{opKey:"stripe_connection.read",operationClass:"operate",sideEffect:"read",cli:{group:"stripe",command:"status",summary:"Show the Stripe connection a business bills through (business override or org default)",args:[yL],handler:async({client:t,args:e,emit:n})=>{let i=e.businessId;n(await t.getBusinessStripeStatus(i),`Stripe connection status for business ${i}`)}},mcp:{tool:"fs_stripe_status",title:"Get business Stripe connection status",description:"Read the Stripe Connect account a business bills through \u2014 a per-business override when present, otherwise the organization default \u2014 including onboarding and tax-enrollment state. Read-only. Connecting Stripe is browser-only and has no tool.",annotations:{readOnlyHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(nE)},handler:async(t,e)=>{let n=await ke(t,e.businessId);return t.getBusinessStripeStatus(n)}}},{opKey:"stripe_connection.delete",operationClass:"operate",sideEffect:"write",cli:{group:"stripe",command:"disconnect",summary:"Remove a business's per-business Stripe override so it bills through the org default again",yesMessage:"Disconnecting removes the business's Stripe override; it is refused while any subscription is still money-bearing. Pass --yes to confirm.",args:[yL,{field:"deleteAccount",kind:"flag",token:"--delete-account",describe:"Also delete the platform-created Express account at Stripe (only when it was created for this business)."}],handler:async({client:t,args:e,emit:n})=>{let i=e.businessId;n(await t.disconnectBusinessStripe(i,{deleteAccount:e.deleteAccount===!0}),`Stripe override removed for business ${i}`)}},mcp:{tool:"fs_stripe_disconnect",title:"Disconnect business Stripe override",description:"Remove a business's per-business Stripe Connect override so it bills through the organization default again. Refused while any subscription is still money-bearing. Destructive live-state operation; it does not edit repo-authored business behavior.",annotations:{readOnlyHint:!1,idempotentHint:!0,openWorldHint:!1},inputSchema:{businessId:s.string().describe(nE),deleteAccount:s.boolean().optional().describe("Also delete the platform-created Express account at Stripe.")},handler:async(t,e)=>{let n=await ke(t,e.businessId);return t.disconnectBusinessStripe(n,{deleteAccount:e.deleteAccount===!0})}}}];var qY=[...Sz,...ID,...TD,...Ez,...xz,...Gz,...Qz,...MD,...jD,...BD,...HD,...XD,...tL,...pL,...eD,...rD,...pD,...vD,...vL,...kL,...kD,...SD,...hL],wL=eI(qY);var La=/^(?:idempotency[_-]?keys?|idempotency[_-]?tokens?|replay[_-]?keys?|request[_-]?keys?)$/i;function HY(t){let e=s.toJSONSchema(s.object(t),{io:"input",unrepresentable:"any"}),n=a=>a!==null&&typeof a=="object"&&!Array.isArray(a)?a:void 0,i=(a,c=new Set)=>{let l=n(a);if(!l||c.has(l))return!1;if(c.add(l),typeof l.$ref=="string"&&l.$ref.startsWith("#/")){let u=e;for(let d of l.$ref.slice(2).split("/"))u=n(u)?.[d.replace(/~1/g,"/").replace(/~0/g,"~")];if(i(u,c))return!0}if([l.const,...Array.isArray(l.enum)?l.enum:[],typeof l.pattern=="string"&&/^\^[A-Za-z_-]+\$$/.test(l.pattern)?l.pattern.slice(1,-1):void 0].some(u=>typeof u=="string"&&La.test(u)))return!0;for(let u of["allOf","anyOf","oneOf"])if(Array.isArray(l[u])&&l[u].some(d=>i(d,c)))return!0;return!1},r=new Set,o=a=>{let c=n(a);if(!c||r.has(c))return!1;if(r.add(c),i(c.propertyNames))return!0;if(typeof c.$ref=="string"&&c.$ref.startsWith("#/")){let l=e;for(let u of c.$ref.slice(2).split("/"))l=n(l)?.[u.replace(/~1/g,"/").replace(/~0/g,"~")];if(o(l))return!0}if(Array.isArray(c.required)&&c.required.some(l=>typeof l=="string"&&La.test(l)))return!0;for(let[l,u]of Object.entries(n(c.properties)??{}))if(La.test(l)||o(u))return!0;for(let[l,u]of Object.entries(n(c.dependentRequired)??{}))if(La.test(l)||Array.isArray(u)&&u.some(d=>typeof d=="string"&&La.test(d)))return!0;for(let l of["items","additionalProperties","unevaluatedProperties","contains","not","if","then","else"])if(o(c[l]))return!0;for(let l of["allOf","anyOf","oneOf","prefixItems"])if(Array.isArray(c[l])&&c[l].some(o))return!0;for(let l of["patternProperties","dependentSchemas"])if(Object.values(n(c[l])??{}).some(o))return!0;return!1};return o(e)}function SL(t){if(!t.mcp)throw new Error(`toMcpTool called on CLI-only operation "${t.opKey}" (mcp === null).`);let e=da(t.opKey);if(!e)throw new Error(`Operation "${t.opKey}" has no canonical authorization binding.`);let n=t.retry,i=t.mcp.inputSchema;if(Object.keys(i).some(c=>La.test(c))||HY(i))throw new Error(`Operation "${t.opKey}" declares a caller-controlled retry input; use the operation retry policy instead.`);let r=n.kind==="no_automatic_retry"&&t.spec.preview&&!Object.hasOwn(i,"dryRun")?{...i,dryRun:s.boolean().optional().describe("Preview current state without applying the mutation.")}:i,o=n.kind==="read_current"?"Retry contract: read_current; each call returns current state.":n.kind==="convergent_write"?`Retry contract: convergent_write; after an ambiguous result, reconcile with ${n.reconcile} before repeating so an old request cannot overwrite newer state.`:`Retry contract: no_automatic_retry; after an ambiguous result (5xx or no response), reconcile with ${n.reconcile} before deciding whether to send the request again. Where the server has a natural guard (an existing name, a pending release, an in-flight rollback), a repeated create is refused instead of run twice; otherwise a repeat runs again, so read that state first.`,a={name:t.mcp.tool,title:t.mcp.title,description:`${t.mcp.description}
|
|
159
|
-
|
|
160
|
-
${o}`,operationClass:t.operationClass,scope:[e.permission],sideEffect:t.sideEffect,annotations:{readOnlyHint:n.kind==="read_current",destructiveHint:t.spec.destructive,idempotentHint:n.kind==="read_current"||n.kind==="convergent_write",...t.mcp.annotations.openWorldHint===void 0?{}:{openWorldHint:t.mcp.annotations.openWorldHint}},inputSchema:r,inputSchemaRefinement:t.mcp.inputSchemaRefinement,handler:async(c,l)=>(nI(t,c),rI(n,()=>t.mcp.handler(c,l)))};return t.spec.oneTimeSecret&&(a.returnsOneTimeSecret=!0),a}var rE=wL.filter(t=>t.mcp).map(SL);function IL(){return qS({...H0(),surface:"mcp"})}function GY(t){if(t&&typeof t=="object"){let e=t,n=typeof e.code=="string"?` [${e.code}]`:"",i=typeof e.status=="number"?` (HTTP ${e.status})`:"";if(typeof e.message=="string")return`${e.message}${n}${i}`}return String(t)}function ZY(t,e,n){let i=async l=>{try{let u=await e.handler(n,l??{}),d=e.returnsOneTimeSecret?u:Ag(u),m=cz(e.name,d);return{content:[{type:"text",text:JSON.stringify(m,null,2)}]}}catch(u){let d=u instanceof E?u:new E(GY(u),0),m=lz(e.name,d);return{content:[{type:"text",text:JSON.stringify(m,null,2)}],isError:!0}}},r=Object.keys(e.inputSchema).length>0,o=e.inputSchemaRefinement?s.object(e.inputSchema).superRefine((l,u)=>{let d=e.inputSchemaRefinement?.(l);d&&u.addIssue({code:"custom",message:d,path:["planKey"]})}):e.inputSchema,a={title:e.title,description:e.description,annotations:{title:e.title,...e.annotations},...r?{inputSchema:o}:{}},c=r?l=>i(l):()=>i({});t.registerTool(e.name,a,c)}function WY(t){for(let e of t){let n=zP(e.operationClass,e.sideEffect);if(n)throw new Error(`[mcp] tool "${e.name}" is misclassified: ${n}`)}}function EL(t){WY(rE);let e=new Of({name:"farthershore-agent-business-builder",version:"0.2.0"});for(let n of rE)ZY(e,n,t);return e}function iE(){return EL(IL())}async function JY(){let t=iE(),e=new $p;await t.connect(e)}import.meta.url===`file://${process.argv[1]}`&&JY();export{rE as ALL_TOOLS,EL as buildServer,iE as createMcpServer,IL as mcpClient};
|