directus-extension-api-docs
Version:
directus extension for swagger interface and openapi including custom endpoints definitions // custom endpoint validations middleware based on openapi or zod
1 lines • 138 kB
JavaScript
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});const e=["interface","display","layout","module","panel","theme"],t=["hook","endpoint"],n=["operation"];function s(e,t,n){function s(n,s){var r;Object.defineProperty(n,"_zod",{value:n._zod??{},enumerable:!1}),(r=n._zod).traits??(r.traits=new Set),n._zod.traits.add(e),t(n,s);for(const e in a.prototype)e in n||Object.defineProperty(n,e,{value:a.prototype[e].bind(n)});n._zod.constr=a,n._zod.def=s}const r=n?.Parent??Object;class i extends r{}function a(e){var t;const r=n?.Parent?new i:this;s(r,e),(t=r._zod).deferred??(t.deferred=[]);for(const e of r._zod.deferred)e();return r}return Object.defineProperty(i,"name",{value:e}),Object.defineProperty(a,"init",{value:s}),Object.defineProperty(a,Symbol.hasInstance,{value:t=>!!(n?.Parent&&t instanceof n.Parent)||t?._zod?.traits?.has(e)}),Object.defineProperty(a,"name",{value:e}),a}class r extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}class i extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name="ZodEncodeError"}}const a={};function o(e){return a}function c(e,t){return"bigint"==typeof t?t.toString():t}function u(e){return{get value(){{const t=e();return Object.defineProperty(this,"value",{value:t}),t}}}}function d(e){return null==e}function l(e){const t=e.startsWith("^")?1:0,n=e.endsWith("$")?e.length-1:e.length;return e.slice(t,n)}const p=Symbol("evaluating");function h(e,t,n){let s;Object.defineProperty(e,t,{get(){if(s!==p)return void 0===s&&(s=p,s=n()),s},set(n){Object.defineProperty(e,t,{value:n})},configurable:!0})}function f(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})}function m(...e){const t={};for(const n of e){const e=Object.getOwnPropertyDescriptors(n);Object.assign(t,e)}return Object.defineProperties({},t)}function g(e){return JSON.stringify(e)}const v="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};function y(e){return"object"==typeof e&&null!==e&&!Array.isArray(e)}const _=u(()=>{if("undefined"!=typeof navigator&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{return new Function(""),!0}catch(e){return!1}});function b(e){if(!1===y(e))return!1;const t=e.constructor;if(void 0===t)return!0;const n=t.prototype;return!1!==y(n)&&!1!==Object.prototype.hasOwnProperty.call(n,"isPrototypeOf")}function w(e){return b(e)?{...e}:Array.isArray(e)?[...e]:e}const k=new Set(["string","number","symbol"]);function x(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function O(e,t,n){const s=new e._zod.constr(t??e._zod.def);return t&&!n?.parent||(s._zod.parent=e),s}function Z(e){const t=e;if(!t)return{};if("string"==typeof t)return{error:()=>t};if(void 0!==t?.message){if(void 0!==t?.error)throw new Error("Cannot specify both `message` and `error` params");t.error=t.message}return delete t.message,"string"==typeof t.error?{...t,error:()=>t.error}:t}function j(e,t=0){if(!0===e.aborted)return!0;for(let n=t;n<e.issues.length;n++)if(!0!==e.issues[n]?.continue)return!0;return!1}function z(e,t){return t.map(t=>{var n;return(n=t).path??(n.path=[]),t.path.unshift(e),t})}function T(e){return"string"==typeof e?e:e?.message}function S(e,t,n){const s={...e,path:e.path??[]};if(!e.message){const r=T(e.inst?._zod.def?.error?.(e))??T(t?.error?.(e))??T(n.customError?.(e))??T(n.localeError?.(e))??"Invalid input";s.message=r}return delete s.inst,delete s.continue,t?.reportInput||delete s.input,s}function $(e){return Array.isArray(e)?"array":"string"==typeof e?"string":"unknown"}function A(...e){const[t,n,s]=e;return"string"==typeof t?{message:t,code:"custom",input:n,inst:s}:{...t}}const P=(e,t)=>{e.name="$ZodError",Object.defineProperty(e,"_zod",{value:e._zod,enumerable:!1}),Object.defineProperty(e,"issues",{value:t,enumerable:!1}),e.message=JSON.stringify(t,c,2),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},E=s("$ZodError",P),I=s("$ZodError",P,{Parent:Error});const C=e=>(t,n,s,i)=>{const a=s?Object.assign(s,{async:!1}):{async:!1},c=t._zod.run({value:n,issues:[]},a);if(c instanceof Promise)throw new r;if(c.issues.length){const t=new(i?.Err??e)(c.issues.map(e=>S(e,a,o())));throw v(t,i?.callee),t}return c.value},N=e=>async(t,n,s,r)=>{const i=s?Object.assign(s,{async:!0}):{async:!0};let a=t._zod.run({value:n,issues:[]},i);if(a instanceof Promise&&(a=await a),a.issues.length){const t=new(r?.Err??e)(a.issues.map(e=>S(e,i,o())));throw v(t,r?.callee),t}return a.value},R=e=>(t,n,s)=>{const i=s?{...s,async:!1}:{async:!1},a=t._zod.run({value:n,issues:[]},i);if(a instanceof Promise)throw new r;return a.issues.length?{success:!1,error:new(e??E)(a.issues.map(e=>S(e,i,o())))}:{success:!0,data:a.value}},D=R(I),F=e=>async(t,n,s)=>{const r=s?Object.assign(s,{async:!0}):{async:!0};let i=t._zod.run({value:n,issues:[]},r);return i instanceof Promise&&(i=await i),i.issues.length?{success:!1,error:new e(i.issues.map(e=>S(e,r,o())))}:{success:!0,data:i.value}},M=F(I),U=e=>(t,n,s)=>{const r=s?Object.assign(s,{direction:"backward"}):{direction:"backward"};return C(e)(t,n,r)},L=e=>(t,n,s)=>C(e)(t,n,s),V=e=>async(t,n,s)=>{const r=s?Object.assign(s,{direction:"backward"}):{direction:"backward"};return N(e)(t,n,r)},q=e=>async(t,n,s)=>N(e)(t,n,s),W=e=>(t,n,s)=>{const r=s?Object.assign(s,{direction:"backward"}):{direction:"backward"};return R(e)(t,n,r)},B=e=>(t,n,s)=>R(e)(t,n,s),K=e=>async(t,n,s)=>{const r=s?Object.assign(s,{direction:"backward"}):{direction:"backward"};return F(e)(t,n,r)},J=e=>async(t,n,s)=>F(e)(t,n,s),H=/^[cC][^\s-]{8,}$/,Y=/^[0-9a-z]+$/,G=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,X=/^[0-9a-vA-V]{20}$/,Q=/^[A-Za-z0-9]{27}$/,ee=/^[a-zA-Z0-9_-]{21}$/,te=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,ne=/^([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})$/,se=e=>e?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([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)$/,re=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;const ie=/^(?:(?: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])$/,ae=/^(([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}|:))$/,oe=/^((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])$/,ce=/^(([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])$/,ue=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,de=/^[A-Za-z0-9_-]*$/,le=/^(?=.{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])?)*\.?$/,pe=/^\+(?:[0-9]){6,14}[0-9]$/,he="(?:(?:\\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])))",fe=new RegExp(`^${he}$`);function me(e){const t="(?:[01]\\d|2[0-3]):[0-5]\\d";return"number"==typeof e.precision?-1===e.precision?`${t}`:0===e.precision?`${t}:[0-5]\\d`:`${t}:[0-5]\\d\\.\\d{${e.precision}}`:`${t}(?::[0-5]\\d(?:\\.\\d+)?)?`}const ge=/^(?:true|false)$/i,ve=/^[^A-Z]*$/,ye=/^[^a-z]*$/,_e=s("$ZodCheck",(e,t)=>{var n;e._zod??(e._zod={}),e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),be=s("$ZodCheckMaxLength",(e,t)=>{var n;_e.init(e,t),(n=e._zod.def).when??(n.when=e=>{const t=e.value;return!d(t)&&void 0!==t.length}),e._zod.onattach.push(e=>{const n=e._zod.bag.maximum??Number.POSITIVE_INFINITY;t.maximum<n&&(e._zod.bag.maximum=t.maximum)}),e._zod.check=n=>{const s=n.value;if(s.length<=t.maximum)return;const r=$(s);n.issues.push({origin:r,code:"too_big",maximum:t.maximum,inclusive:!0,input:s,inst:e,continue:!t.abort})}}),we=s("$ZodCheckMinLength",(e,t)=>{var n;_e.init(e,t),(n=e._zod.def).when??(n.when=e=>{const t=e.value;return!d(t)&&void 0!==t.length}),e._zod.onattach.push(e=>{const n=e._zod.bag.minimum??Number.NEGATIVE_INFINITY;t.minimum>n&&(e._zod.bag.minimum=t.minimum)}),e._zod.check=n=>{const s=n.value;if(s.length>=t.minimum)return;const r=$(s);n.issues.push({origin:r,code:"too_small",minimum:t.minimum,inclusive:!0,input:s,inst:e,continue:!t.abort})}}),ke=s("$ZodCheckLengthEquals",(e,t)=>{var n;_e.init(e,t),(n=e._zod.def).when??(n.when=e=>{const t=e.value;return!d(t)&&void 0!==t.length}),e._zod.onattach.push(e=>{const n=e._zod.bag;n.minimum=t.length,n.maximum=t.length,n.length=t.length}),e._zod.check=n=>{const s=n.value,r=s.length;if(r===t.length)return;const i=$(s),a=r>t.length;n.issues.push({origin:i,...a?{code:"too_big",maximum:t.length}:{code:"too_small",minimum:t.length},inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort})}}),xe=s("$ZodCheckStringFormat",(e,t)=>{var n,s;_e.init(e,t),e._zod.onattach.push(e=>{const n=e._zod.bag;n.format=t.format,t.pattern&&(n.patterns??(n.patterns=new Set),n.patterns.add(t.pattern))}),t.pattern?(n=e._zod).check??(n.check=n=>{t.pattern.lastIndex=0,t.pattern.test(n.value)||n.issues.push({origin:"string",code:"invalid_format",format:t.format,input:n.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(s=e._zod).check??(s.check=()=>{})}),Oe=s("$ZodCheckRegex",(e,t)=>{xe.init(e,t),e._zod.check=n=>{t.pattern.lastIndex=0,t.pattern.test(n.value)||n.issues.push({origin:"string",code:"invalid_format",format:"regex",input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),Ze=s("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=ve),xe.init(e,t)}),je=s("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=ye),xe.init(e,t)}),ze=s("$ZodCheckIncludes",(e,t)=>{_e.init(e,t);const n=x(t.includes),s=new RegExp("number"==typeof t.position?`^.{${t.position}}${n}`:n);t.pattern=s,e._zod.onattach.push(e=>{const t=e._zod.bag;t.patterns??(t.patterns=new Set),t.patterns.add(s)}),e._zod.check=n=>{n.value.includes(t.includes,t.position)||n.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:t.includes,input:n.value,inst:e,continue:!t.abort})}}),Te=s("$ZodCheckStartsWith",(e,t)=>{_e.init(e,t);const n=new RegExp(`^${x(t.prefix)}.*`);t.pattern??(t.pattern=n),e._zod.onattach.push(e=>{const t=e._zod.bag;t.patterns??(t.patterns=new Set),t.patterns.add(n)}),e._zod.check=n=>{n.value.startsWith(t.prefix)||n.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:t.prefix,input:n.value,inst:e,continue:!t.abort})}}),Se=s("$ZodCheckEndsWith",(e,t)=>{_e.init(e,t);const n=new RegExp(`.*${x(t.suffix)}$`);t.pattern??(t.pattern=n),e._zod.onattach.push(e=>{const t=e._zod.bag;t.patterns??(t.patterns=new Set),t.patterns.add(n)}),e._zod.check=n=>{n.value.endsWith(t.suffix)||n.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:t.suffix,input:n.value,inst:e,continue:!t.abort})}}),$e=s("$ZodCheckOverwrite",(e,t)=>{_e.init(e,t),e._zod.check=e=>{e.value=t.tx(e.value)}});class Ae{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),this.indent-=1}write(e){if("function"==typeof e)return e(this,{execution:"sync"}),void e(this,{execution:"async"});const t=e.split("\n").filter(e=>e),n=Math.min(...t.map(e=>e.length-e.trimStart().length)),s=t.map(e=>e.slice(n)).map(e=>" ".repeat(2*this.indent)+e);for(const e of s)this.content.push(e)}compile(){const e=Function,t=this?.args;return new e(...t,[...(this?.content??[""]).map(e=>` ${e}`)].join("\n"))}}const Pe={major:4,minor:1,patch:12},Ee=s("$ZodType",(e,t)=>{var n;e??(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=Pe;const s=[...e._zod.def.checks??[]];e._zod.traits.has("$ZodCheck")&&s.unshift(e);for(const t of s)for(const n of t._zod.onattach)n(e);if(0===s.length)(n=e._zod).deferred??(n.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{const t=(e,t,n)=>{let s,i=j(e);for(const a of t){if(a._zod.def.when){if(!a._zod.def.when(e))continue}else if(i)continue;const t=e.issues.length,o=a._zod.check(e);if(o instanceof Promise&&!1===n?.async)throw new r;if(s||o instanceof Promise)s=(s??Promise.resolve()).then(async()=>{await o;e.issues.length!==t&&(i||(i=j(e,t)))});else{if(e.issues.length===t)continue;i||(i=j(e,t))}}return s?s.then(()=>e):e},n=(n,i,a)=>{if(j(n))return n.aborted=!0,n;const o=t(i,s,a);if(o instanceof Promise){if(!1===a.async)throw new r;return o.then(t=>e._zod.parse(t,a))}return e._zod.parse(o,a)};e._zod.run=(i,a)=>{if(a.skipChecks)return e._zod.parse(i,a);if("backward"===a.direction){const t=e._zod.parse({value:i.value,issues:[]},{...a,skipChecks:!0});return t instanceof Promise?t.then(e=>n(e,i,a)):n(t,i,a)}const o=e._zod.parse(i,a);if(o instanceof Promise){if(!1===a.async)throw new r;return o.then(e=>t(e,s,a))}return t(o,s,a)}}e["~standard"]={validate:t=>{try{const n=D(e,t);return n.success?{value:n.data}:{issues:n.error?.issues}}catch(n){return M(e,t).then(e=>e.success?{value:e.data}:{issues:e.error?.issues})}},vendor:"zod",version:1}}),Ie=s("$ZodString",(e,t)=>{var n;Ee.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??(n=e._zod.bag,new RegExp(`^${n?`[\\s\\S]{${n?.minimum??0},${n?.maximum??""}}`:"[\\s\\S]*"}$`)),e._zod.parse=(n,s)=>{if(t.coerce)try{n.value=String(n.value)}catch(s){}return"string"==typeof n.value||n.issues.push({expected:"string",code:"invalid_type",input:n.value,inst:e}),n}}),Ce=s("$ZodStringFormat",(e,t)=>{xe.init(e,t),Ie.init(e,t)}),Ne=s("$ZodGUID",(e,t)=>{t.pattern??(t.pattern=ne),Ce.init(e,t)}),Re=s("$ZodUUID",(e,t)=>{if(t.version){const e={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(void 0===e)throw new Error(`Invalid UUID version: "${t.version}"`);t.pattern??(t.pattern=se(e))}else t.pattern??(t.pattern=se());Ce.init(e,t)}),De=s("$ZodEmail",(e,t)=>{t.pattern??(t.pattern=re),Ce.init(e,t)}),Fe=s("$ZodURL",(e,t)=>{Ce.init(e,t),e._zod.check=n=>{try{const s=n.value.trim(),r=new URL(s);return t.hostname&&(t.hostname.lastIndex=0,t.hostname.test(r.hostname)||n.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:le.source,input:n.value,inst:e,continue:!t.abort})),t.protocol&&(t.protocol.lastIndex=0,t.protocol.test(r.protocol.endsWith(":")?r.protocol.slice(0,-1):r.protocol)||n.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:t.protocol.source,input:n.value,inst:e,continue:!t.abort})),void(t.normalize?n.value=r.href:n.value=s)}catch(s){n.issues.push({code:"invalid_format",format:"url",input:n.value,inst:e,continue:!t.abort})}}}),Me=s("$ZodEmoji",(e,t)=>{t.pattern??(t.pattern=new RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),Ce.init(e,t)}),Ue=s("$ZodNanoID",(e,t)=>{t.pattern??(t.pattern=ee),Ce.init(e,t)}),Le=s("$ZodCUID",(e,t)=>{t.pattern??(t.pattern=H),Ce.init(e,t)}),Ve=s("$ZodCUID2",(e,t)=>{t.pattern??(t.pattern=Y),Ce.init(e,t)}),qe=s("$ZodULID",(e,t)=>{t.pattern??(t.pattern=G),Ce.init(e,t)}),We=s("$ZodXID",(e,t)=>{t.pattern??(t.pattern=X),Ce.init(e,t)}),Be=s("$ZodKSUID",(e,t)=>{t.pattern??(t.pattern=Q),Ce.init(e,t)}),Ke=s("$ZodISODateTime",(e,t)=>{t.pattern??(t.pattern=function(e){const t=me({precision:e.precision}),n=["Z"];e.local&&n.push(""),e.offset&&n.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");const s=`${t}(?:${n.join("|")})`;return new RegExp(`^${he}T(?:${s})$`)}(t)),Ce.init(e,t)}),Je=s("$ZodISODate",(e,t)=>{t.pattern??(t.pattern=fe),Ce.init(e,t)}),He=s("$ZodISOTime",(e,t)=>{t.pattern??(t.pattern=new RegExp(`^${me(t)}$`)),Ce.init(e,t)}),Ye=s("$ZodISODuration",(e,t)=>{t.pattern??(t.pattern=te),Ce.init(e,t)}),Ge=s("$ZodIPv4",(e,t)=>{t.pattern??(t.pattern=ie),Ce.init(e,t),e._zod.onattach.push(e=>{e._zod.bag.format="ipv4"})}),Xe=s("$ZodIPv6",(e,t)=>{t.pattern??(t.pattern=ae),Ce.init(e,t),e._zod.onattach.push(e=>{e._zod.bag.format="ipv6"}),e._zod.check=n=>{try{new URL(`http://[${n.value}]`)}catch{n.issues.push({code:"invalid_format",format:"ipv6",input:n.value,inst:e,continue:!t.abort})}}}),Qe=s("$ZodCIDRv4",(e,t)=>{t.pattern??(t.pattern=oe),Ce.init(e,t)}),et=s("$ZodCIDRv6",(e,t)=>{t.pattern??(t.pattern=ce),Ce.init(e,t),e._zod.check=n=>{const s=n.value.split("/");try{if(2!==s.length)throw new Error;const[e,t]=s;if(!t)throw new Error;const n=Number(t);if(`${n}`!==t)throw new Error;if(n<0||n>128)throw new Error;new URL(`http://[${e}]`)}catch{n.issues.push({code:"invalid_format",format:"cidrv6",input:n.value,inst:e,continue:!t.abort})}}});function tt(e){if(""===e)return!0;if(e.length%4!=0)return!1;try{return atob(e),!0}catch{return!1}}const nt=s("$ZodBase64",(e,t)=>{t.pattern??(t.pattern=ue),Ce.init(e,t),e._zod.onattach.push(e=>{e._zod.bag.contentEncoding="base64"}),e._zod.check=n=>{tt(n.value)||n.issues.push({code:"invalid_format",format:"base64",input:n.value,inst:e,continue:!t.abort})}});const st=s("$ZodBase64URL",(e,t)=>{t.pattern??(t.pattern=de),Ce.init(e,t),e._zod.onattach.push(e=>{e._zod.bag.contentEncoding="base64url"}),e._zod.check=n=>{(function(e){if(!de.test(e))return!1;const t=e.replace(/[-_]/g,e=>"-"===e?"+":"/");return tt(t.padEnd(4*Math.ceil(t.length/4),"="))})(n.value)||n.issues.push({code:"invalid_format",format:"base64url",input:n.value,inst:e,continue:!t.abort})}}),rt=s("$ZodE164",(e,t)=>{t.pattern??(t.pattern=pe),Ce.init(e,t)});const it=s("$ZodJWT",(e,t)=>{Ce.init(e,t),e._zod.check=n=>{(function(e,t=null){try{const n=e.split(".");if(3!==n.length)return!1;const[s]=n;if(!s)return!1;const r=JSON.parse(atob(s));return!("typ"in r&&"JWT"!==r?.typ||!r.alg||t&&(!("alg"in r)||r.alg!==t))}catch{return!1}})(n.value,t.alg)||n.issues.push({code:"invalid_format",format:"jwt",input:n.value,inst:e,continue:!t.abort})}}),at=s("$ZodBoolean",(e,t)=>{Ee.init(e,t),e._zod.pattern=ge,e._zod.parse=(n,s)=>{if(t.coerce)try{n.value=Boolean(n.value)}catch(e){}const r=n.value;return"boolean"==typeof r||n.issues.push({expected:"boolean",code:"invalid_type",input:r,inst:e}),n}}),ot=s("$ZodUnknown",(e,t)=>{Ee.init(e,t),e._zod.parse=e=>e}),ct=s("$ZodNever",(e,t)=>{Ee.init(e,t),e._zod.parse=(t,n)=>(t.issues.push({expected:"never",code:"invalid_type",input:t.value,inst:e}),t)});function ut(e,t,n){e.issues.length&&t.issues.push(...z(n,e.issues)),t.value[n]=e.value}const dt=s("$ZodArray",(e,t)=>{Ee.init(e,t),e._zod.parse=(n,s)=>{const r=n.value;if(!Array.isArray(r))return n.issues.push({expected:"array",code:"invalid_type",input:r,inst:e}),n;n.value=Array(r.length);const i=[];for(let e=0;e<r.length;e++){const a=r[e],o=t.element._zod.run({value:a,issues:[]},s);o instanceof Promise?i.push(o.then(t=>ut(t,n,e))):ut(o,n,e)}return i.length?Promise.all(i).then(()=>n):n}});function lt(e,t,n,s){e.issues.length&&t.issues.push(...z(n,e.issues)),void 0===e.value?n in s&&(t.value[n]=void 0):t.value[n]=e.value}function pt(e){const t=Object.keys(e.shape);for(const n of t)if(!e.shape?.[n]?._zod?.traits?.has("$ZodType"))throw new Error(`Invalid element at key "${n}": expected a Zod schema`);const n=(s=e.shape,Object.keys(s).filter(e=>"optional"===s[e]._zod.optin&&"optional"===s[e]._zod.optout));var s;return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(n)}}function ht(e,t,n,s,r,i){const a=[],o=r.keySet,c=r.catchall._zod,u=c.def.type;for(const r of Object.keys(t)){if(o.has(r))continue;if("never"===u){a.push(r);continue}const i=c.run({value:t[r],issues:[]},s);i instanceof Promise?e.push(i.then(e=>lt(e,n,r,t))):lt(i,n,r,t)}return a.length&&n.issues.push({code:"unrecognized_keys",keys:a,input:t,inst:i}),e.length?Promise.all(e).then(()=>n):n}const ft=s("$ZodObject",(e,t)=>{Ee.init(e,t);const n=Object.getOwnPropertyDescriptor(t,"shape");if(!n?.get){const e=t.shape;Object.defineProperty(t,"shape",{get:()=>{const n={...e};return Object.defineProperty(t,"shape",{value:n}),n}})}const s=u(()=>pt(t));h(e._zod,"propValues",()=>{const e=t.shape,n={};for(const t in e){const s=e[t]._zod;if(s.values){n[t]??(n[t]=new Set);for(const e of s.values)n[t].add(e)}}return n});const r=y,i=t.catchall;let a;e._zod.parse=(t,n)=>{a??(a=s.value);const o=t.value;if(!r(o))return t.issues.push({expected:"object",code:"invalid_type",input:o,inst:e}),t;t.value={};const c=[],u=a.shape;for(const e of a.keys){const s=u[e]._zod.run({value:o[e],issues:[]},n);s instanceof Promise?c.push(s.then(n=>lt(n,t,e,o))):lt(s,t,e,o)}return i?ht(c,o,t,n,s.value,e):c.length?Promise.all(c).then(()=>t):t}}),mt=s("$ZodObjectJIT",(e,t)=>{ft.init(e,t);const n=e._zod.parse,s=u(()=>pt(t));let r;const i=y,o=!a.jitless,c=o&&_.value,d=t.catchall;let l;e._zod.parse=(a,u)=>{l??(l=s.value);const p=a.value;return i(p)?o&&c&&!1===u?.async&&!0!==u.jitless?(r||(r=(e=>{const t=new Ae(["shape","payload","ctx"]),n=s.value,r=e=>{const t=g(e);return`shape[${t}]._zod.run({ value: input[${t}], issues: [] }, ctx)`};t.write("const input = payload.value;");const i=Object.create(null);let a=0;for(const e of n.keys)i[e]="key_"+a++;t.write("const newResult = {};");for(const e of n.keys){const n=i[e],s=g(e);t.write(`const ${n} = ${r(e)};`),t.write(`\n if (${n}.issues.length) {\n payload.issues = payload.issues.concat(${n}.issues.map(iss => ({\n ...iss,\n path: iss.path ? [${s}, ...iss.path] : [${s}]\n })));\n }\n \n \n if (${n}.value === undefined) {\n if (${s} in input) {\n newResult[${s}] = undefined;\n }\n } else {\n newResult[${s}] = ${n}.value;\n }\n \n `)}t.write("payload.value = newResult;"),t.write("return payload;");const o=t.compile();return(t,n)=>o(e,t,n)})(t.shape)),a=r(a,u),d?ht([],p,a,u,l,e):a):n(a,u):(a.issues.push({expected:"object",code:"invalid_type",input:p,inst:e}),a)}});function gt(e,t,n,s){for(const n of e)if(0===n.issues.length)return t.value=n.value,t;const r=e.filter(e=>!j(e));return 1===r.length?(t.value=r[0].value,r[0]):(t.issues.push({code:"invalid_union",input:t.value,inst:n,errors:e.map(e=>e.issues.map(e=>S(e,s,o())))}),t)}const vt=s("$ZodUnion",(e,t)=>{Ee.init(e,t),h(e._zod,"optin",()=>t.options.some(e=>"optional"===e._zod.optin)?"optional":void 0),h(e._zod,"optout",()=>t.options.some(e=>"optional"===e._zod.optout)?"optional":void 0),h(e._zod,"values",()=>{if(t.options.every(e=>e._zod.values))return new Set(t.options.flatMap(e=>Array.from(e._zod.values)))}),h(e._zod,"pattern",()=>{if(t.options.every(e=>e._zod.pattern)){const e=t.options.map(e=>e._zod.pattern);return new RegExp(`^(${e.map(e=>l(e.source)).join("|")})$`)}});const n=1===t.options.length,s=t.options[0]._zod.run;e._zod.parse=(r,i)=>{if(n)return s(r,i);let a=!1;const o=[];for(const e of t.options){const t=e._zod.run({value:r.value,issues:[]},i);if(t instanceof Promise)o.push(t),a=!0;else{if(0===t.issues.length)return t;o.push(t)}}return a?Promise.all(o).then(t=>gt(t,r,e,i)):gt(o,r,e,i)}}),yt=s("$ZodIntersection",(e,t)=>{Ee.init(e,t),e._zod.parse=(e,n)=>{const s=e.value,r=t.left._zod.run({value:s,issues:[]},n),i=t.right._zod.run({value:s,issues:[]},n);return r instanceof Promise||i instanceof Promise?Promise.all([r,i]).then(([t,n])=>bt(e,t,n)):bt(e,r,i)}});function _t(e,t){if(e===t)return{valid:!0,data:e};if(e instanceof Date&&t instanceof Date&&+e===+t)return{valid:!0,data:e};if(b(e)&&b(t)){const n=Object.keys(t),s=Object.keys(e).filter(e=>-1!==n.indexOf(e)),r={...e,...t};for(const n of s){const s=_t(e[n],t[n]);if(!s.valid)return{valid:!1,mergeErrorPath:[n,...s.mergeErrorPath]};r[n]=s.data}return{valid:!0,data:r}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};const n=[];for(let s=0;s<e.length;s++){const r=_t(e[s],t[s]);if(!r.valid)return{valid:!1,mergeErrorPath:[s,...r.mergeErrorPath]};n.push(r.data)}return{valid:!0,data:n}}return{valid:!1,mergeErrorPath:[]}}function bt(e,t,n){if(t.issues.length&&e.issues.push(...t.issues),n.issues.length&&e.issues.push(...n.issues),j(e))return e;const s=_t(t.value,n.value);if(!s.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(s.mergeErrorPath)}`);return e.value=s.data,e}const wt=s("$ZodRecord",(e,t)=>{Ee.init(e,t),e._zod.parse=(n,s)=>{const r=n.value;if(!b(r))return n.issues.push({expected:"record",code:"invalid_type",input:r,inst:e}),n;const i=[];if(t.keyType._zod.values){const a=t.keyType._zod.values;n.value={};for(const e of a)if("string"==typeof e||"number"==typeof e||"symbol"==typeof e){const a=t.valueType._zod.run({value:r[e],issues:[]},s);a instanceof Promise?i.push(a.then(t=>{t.issues.length&&n.issues.push(...z(e,t.issues)),n.value[e]=t.value})):(a.issues.length&&n.issues.push(...z(e,a.issues)),n.value[e]=a.value)}let o;for(const e in r)a.has(e)||(o=o??[],o.push(e));o&&o.length>0&&n.issues.push({code:"unrecognized_keys",input:r,inst:e,keys:o})}else{n.value={};for(const a of Reflect.ownKeys(r)){if("__proto__"===a)continue;const c=t.keyType._zod.run({value:a,issues:[]},s);if(c instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(c.issues.length){n.issues.push({code:"invalid_key",origin:"record",issues:c.issues.map(e=>S(e,s,o())),input:a,path:[a],inst:e}),n.value[c.value]=c.value;continue}const u=t.valueType._zod.run({value:r[a],issues:[]},s);u instanceof Promise?i.push(u.then(e=>{e.issues.length&&n.issues.push(...z(a,e.issues)),n.value[c.value]=e.value})):(u.issues.length&&n.issues.push(...z(a,u.issues)),n.value[c.value]=u.value)}}return i.length?Promise.all(i).then(()=>n):n}}),kt=s("$ZodEnum",(e,t)=>{Ee.init(e,t);const n=function(e){const t=Object.values(e).filter(e=>"number"==typeof e);return Object.entries(e).filter(([e,n])=>-1===t.indexOf(+e)).map(([e,t])=>t)}(t.entries),s=new Set(n);e._zod.values=s,e._zod.pattern=new RegExp(`^(${n.filter(e=>k.has(typeof e)).map(e=>"string"==typeof e?x(e):e.toString()).join("|")})$`),e._zod.parse=(t,r)=>{const i=t.value;return s.has(i)||t.issues.push({code:"invalid_value",values:n,input:i,inst:e}),t}}),xt=s("$ZodLiteral",(e,t)=>{if(Ee.init(e,t),0===t.values.length)throw new Error("Cannot create literal schema with no valid values");e._zod.values=new Set(t.values),e._zod.pattern=new RegExp(`^(${t.values.map(e=>"string"==typeof e?x(e):e?x(e.toString()):String(e)).join("|")})$`),e._zod.parse=(n,s)=>{const r=n.value;return e._zod.values.has(r)||n.issues.push({code:"invalid_value",values:t.values,input:r,inst:e}),n}}),Ot=s("$ZodTransform",(e,t)=>{Ee.init(e,t),e._zod.parse=(n,s)=>{if("backward"===s.direction)throw new i(e.constructor.name);const a=t.transform(n.value,n);if(s.async){return(a instanceof Promise?a:Promise.resolve(a)).then(e=>(n.value=e,n))}if(a instanceof Promise)throw new r;return n.value=a,n}});function Zt(e,t){return e.issues.length&&void 0===t?{issues:[],value:void 0}:e}const jt=s("$ZodOptional",(e,t)=>{Ee.init(e,t),e._zod.optin="optional",e._zod.optout="optional",h(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),h(e._zod,"pattern",()=>{const e=t.innerType._zod.pattern;return e?new RegExp(`^(${l(e.source)})?$`):void 0}),e._zod.parse=(e,n)=>{if("optional"===t.innerType._zod.optin){const s=t.innerType._zod.run(e,n);return s instanceof Promise?s.then(t=>Zt(t,e.value)):Zt(s,e.value)}return void 0===e.value?e:t.innerType._zod.run(e,n)}}),zt=s("$ZodNullable",(e,t)=>{Ee.init(e,t),h(e._zod,"optin",()=>t.innerType._zod.optin),h(e._zod,"optout",()=>t.innerType._zod.optout),h(e._zod,"pattern",()=>{const e=t.innerType._zod.pattern;return e?new RegExp(`^(${l(e.source)}|null)$`):void 0}),h(e._zod,"values",()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0),e._zod.parse=(e,n)=>null===e.value?e:t.innerType._zod.run(e,n)}),Tt=s("$ZodDefault",(e,t)=>{Ee.init(e,t),e._zod.optin="optional",h(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(e,n)=>{if("backward"===n.direction)return t.innerType._zod.run(e,n);if(void 0===e.value)return e.value=t.defaultValue,e;const s=t.innerType._zod.run(e,n);return s instanceof Promise?s.then(e=>St(e,t)):St(s,t)}});function St(e,t){return void 0===e.value&&(e.value=t.defaultValue),e}const $t=s("$ZodPrefault",(e,t)=>{Ee.init(e,t),e._zod.optin="optional",h(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(e,n)=>("backward"===n.direction||void 0===e.value&&(e.value=t.defaultValue),t.innerType._zod.run(e,n))}),At=s("$ZodNonOptional",(e,t)=>{Ee.init(e,t),h(e._zod,"values",()=>{const e=t.innerType._zod.values;return e?new Set([...e].filter(e=>void 0!==e)):void 0}),e._zod.parse=(n,s)=>{const r=t.innerType._zod.run(n,s);return r instanceof Promise?r.then(t=>Pt(t,e)):Pt(r,e)}});function Pt(e,t){return e.issues.length||void 0!==e.value||e.issues.push({code:"invalid_type",expected:"nonoptional",input:e.value,inst:t}),e}const Et=s("$ZodCatch",(e,t)=>{Ee.init(e,t),h(e._zod,"optin",()=>t.innerType._zod.optin),h(e._zod,"optout",()=>t.innerType._zod.optout),h(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(e,n)=>{if("backward"===n.direction)return t.innerType._zod.run(e,n);const s=t.innerType._zod.run(e,n);return s instanceof Promise?s.then(s=>(e.value=s.value,s.issues.length&&(e.value=t.catchValue({...e,error:{issues:s.issues.map(e=>S(e,n,o()))},input:e.value}),e.issues=[]),e)):(e.value=s.value,s.issues.length&&(e.value=t.catchValue({...e,error:{issues:s.issues.map(e=>S(e,n,o()))},input:e.value}),e.issues=[]),e)}}),It=s("$ZodPipe",(e,t)=>{Ee.init(e,t),h(e._zod,"values",()=>t.in._zod.values),h(e._zod,"optin",()=>t.in._zod.optin),h(e._zod,"optout",()=>t.out._zod.optout),h(e._zod,"propValues",()=>t.in._zod.propValues),e._zod.parse=(e,n)=>{if("backward"===n.direction){const s=t.out._zod.run(e,n);return s instanceof Promise?s.then(e=>Ct(e,t.in,n)):Ct(s,t.in,n)}const s=t.in._zod.run(e,n);return s instanceof Promise?s.then(e=>Ct(e,t.out,n)):Ct(s,t.out,n)}});function Ct(e,t,n){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues},n)}const Nt=s("$ZodReadonly",(e,t)=>{Ee.init(e,t),h(e._zod,"propValues",()=>t.innerType._zod.propValues),h(e._zod,"values",()=>t.innerType._zod.values),h(e._zod,"optin",()=>t.innerType._zod.optin),h(e._zod,"optout",()=>t.innerType._zod.optout),e._zod.parse=(e,n)=>{if("backward"===n.direction)return t.innerType._zod.run(e,n);const s=t.innerType._zod.run(e,n);return s instanceof Promise?s.then(Rt):Rt(s)}});function Rt(e){return e.value=Object.freeze(e.value),e}const Dt=s("$ZodCustom",(e,t)=>{_e.init(e,t),Ee.init(e,t),e._zod.parse=(e,t)=>e,e._zod.check=n=>{const s=n.value,r=t.fn(s);if(r instanceof Promise)return r.then(t=>Ft(t,n,s,e));Ft(r,n,s,e)}});function Ft(e,t,n,s){if(!e){const e={code:"custom",input:n,inst:s,path:[...s._zod.def.path??[]],continue:!s._zod.def.abort};s._zod.def.params&&(e.params=s._zod.def.params),t.issues.push(A(e))}}class Mt{constructor(){this._map=new WeakMap,this._idmap=new Map}add(e,...t){const n=t[0];if(this._map.set(e,n),n&&"object"==typeof n&&"id"in n){if(this._idmap.has(n.id))throw new Error(`ID ${n.id} already exists in the registry`);this._idmap.set(n.id,e)}return this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(e){const t=this._map.get(e);return t&&"object"==typeof t&&"id"in t&&this._idmap.delete(t.id),this._map.delete(e),this}get(e){const t=e._zod.parent;if(t){const n={...this.get(t)??{}};delete n.id;const s={...n,...this._map.get(e)};return Object.keys(s).length?s:void 0}return this._map.get(e)}has(e){return this._map.has(e)}}function Ut(){return new Mt}const Lt=Ut();function Vt(e,t){return new e({type:"string",format:"guid",check:"string_format",abort:!1,...Z(t)})}function qt(e,t){return new be({check:"max_length",...Z(t),maximum:e})}function Wt(e,t){return new we({check:"min_length",...Z(t),minimum:e})}function Bt(e,t){return new ke({check:"length_equals",...Z(t),length:e})}function Kt(e){return new $e({check:"overwrite",tx:e})}function Jt(e){const t=function(e,t){const n=new _e({check:"custom",...Z(t)});return n._zod.check=e,n}(n=>(n.addIssue=e=>{if("string"==typeof e)n.issues.push(A(e,n.value,t._zod.def));else{const s=e;s.fatal&&(s.continue=!1),s.code??(s.code="custom"),s.input??(s.input=n.value),s.inst??(s.inst=t),s.continue??(s.continue=!t._zod.def.abort),n.issues.push(A(s))}},e(n.value,n)));return t}const Ht=s("ZodISODateTime",(e,t)=>{Ke.init(e,t),wn.init(e,t)});function Yt(e){return function(e,t){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...Z(t)})}(Ht,e)}const Gt=s("ZodISODate",(e,t)=>{Je.init(e,t),wn.init(e,t)});function Xt(e){return function(e,t){return new e({type:"string",format:"date",check:"string_format",...Z(t)})}(Gt,e)}const Qt=s("ZodISOTime",(e,t)=>{He.init(e,t),wn.init(e,t)});function en(e){return function(e,t){return new e({type:"string",format:"time",check:"string_format",precision:null,...Z(t)})}(Qt,e)}const tn=s("ZodISODuration",(e,t)=>{Ye.init(e,t),wn.init(e,t)});function nn(e){return function(e,t){return new e({type:"string",format:"duration",check:"string_format",...Z(t)})}(tn,e)}const sn=s("ZodError",(e,t)=>{E.init(e,t),e.name="ZodError",Object.defineProperties(e,{format:{value:t=>function(e,t=e=>e.message){const n={_errors:[]},s=e=>{for(const r of e.issues)if("invalid_union"===r.code&&r.errors.length)r.errors.map(e=>s({issues:e}));else if("invalid_key"===r.code)s({issues:r.issues});else if("invalid_element"===r.code)s({issues:r.issues});else if(0===r.path.length)n._errors.push(t(r));else{let e=n,s=0;for(;s<r.path.length;){const n=r.path[s];s===r.path.length-1?(e[n]=e[n]||{_errors:[]},e[n]._errors.push(t(r))):e[n]=e[n]||{_errors:[]},e=e[n],s++}}};return s(e),n}(e,t)},flatten:{value:t=>function(e,t=e=>e.message){const n={},s=[];for(const r of e.issues)r.path.length>0?(n[r.path[0]]=n[r.path[0]]||[],n[r.path[0]].push(t(r))):s.push(t(r));return{formErrors:s,fieldErrors:n}}(e,t)},addIssue:{value:t=>{e.issues.push(t),e.message=JSON.stringify(e.issues,c,2)}},addIssues:{value:t=>{e.issues.push(...t),e.message=JSON.stringify(e.issues,c,2)}},isEmpty:{get:()=>0===e.issues.length}})},{Parent:Error}),rn=C(sn),an=N(sn),on=R(sn),cn=F(sn),un=U(sn),dn=L(sn),ln=V(sn),pn=q(sn),hn=W(sn),fn=B(sn),mn=K(sn),gn=J(sn),vn=s("ZodType",(e,t)=>(Ee.init(e,t),e.def=t,e.type=t.type,Object.defineProperty(e,"_def",{value:t}),e.check=(...n)=>e.clone(m(t,{checks:[...t.checks??[],...n.map(e=>"function"==typeof e?{_zod:{check:e,def:{check:"custom"},onattach:[]}}:e)]})),e.clone=(t,n)=>O(e,t,n),e.brand=()=>e,e.register=(t,n)=>(t.add(e,n),e),e.parse=(t,n)=>rn(e,t,n,{callee:e.parse}),e.safeParse=(t,n)=>on(e,t,n),e.parseAsync=async(t,n)=>an(e,t,n,{callee:e.parseAsync}),e.safeParseAsync=async(t,n)=>cn(e,t,n),e.spa=e.safeParseAsync,e.encode=(t,n)=>un(e,t,n),e.decode=(t,n)=>dn(e,t,n),e.encodeAsync=async(t,n)=>ln(e,t,n),e.decodeAsync=async(t,n)=>pn(e,t,n),e.safeEncode=(t,n)=>hn(e,t,n),e.safeDecode=(t,n)=>fn(e,t,n),e.safeEncodeAsync=async(t,n)=>mn(e,t,n),e.safeDecodeAsync=async(t,n)=>gn(e,t,n),e.refine=(t,n)=>e.check(function(e,t={}){return function(e,t,n){return new e({type:"custom",check:"custom",fn:t,...Z(n)})}(ys,e,t)}(t,n)),e.superRefine=t=>e.check(Jt(t)),e.overwrite=t=>e.check(Kt(t)),e.optional=()=>cs(e),e.nullable=()=>ds(e),e.nullish=()=>cs(ds(e)),e.nonoptional=t=>function(e,t){return new hs({type:"nonoptional",innerType:e,...Z(t)})}(e,t),e.array=()=>Jn(e),e.or=t=>Xn([e,t]),e.and=t=>new Qn({type:"intersection",left:e,right:t}),e.transform=t=>gs(e,new as({type:"transform",transform:t})),e.default=t=>{return n=t,new ls({type:"default",innerType:e,get defaultValue(){return"function"==typeof n?n():w(n)}});var n},e.prefault=t=>{return n=t,new ps({type:"prefault",innerType:e,get defaultValue(){return"function"==typeof n?n():w(n)}});var n},e.catch=t=>{return new fs({type:"catch",innerType:e,catchValue:"function"==typeof(n=t)?n:()=>n});var n},e.pipe=t=>gs(e,t),e.readonly=()=>new vs({type:"readonly",innerType:e}),e.describe=t=>{const n=e.clone();return Lt.add(n,{description:t}),n},Object.defineProperty(e,"description",{get:()=>Lt.get(e)?.description,configurable:!0}),e.meta=(...t)=>{if(0===t.length)return Lt.get(e);const n=e.clone();return Lt.add(n,t[0]),n},e.isOptional=()=>e.safeParse(void 0).success,e.isNullable=()=>e.safeParse(null).success,e)),yn=s("_ZodString",(e,t)=>{Ie.init(e,t),vn.init(e,t);const n=e._zod.bag;e.format=n.format??null,e.minLength=n.minimum??null,e.maxLength=n.maximum??null,e.regex=(...t)=>e.check(function(e,t){return new Oe({check:"string_format",format:"regex",...Z(t),pattern:e})}(...t)),e.includes=(...t)=>e.check(function(e,t){return new ze({check:"string_format",format:"includes",...Z(t),includes:e})}(...t)),e.startsWith=(...t)=>e.check(function(e,t){return new Te({check:"string_format",format:"starts_with",...Z(t),prefix:e})}(...t)),e.endsWith=(...t)=>e.check(function(e,t){return new Se({check:"string_format",format:"ends_with",...Z(t),suffix:e})}(...t)),e.min=(...t)=>e.check(Wt(...t)),e.max=(...t)=>e.check(qt(...t)),e.length=(...t)=>e.check(Bt(...t)),e.nonempty=(...t)=>e.check(Wt(1,...t)),e.lowercase=t=>e.check(function(e){return new Ze({check:"string_format",format:"lowercase",...Z(e)})}(t)),e.uppercase=t=>e.check(function(e){return new je({check:"string_format",format:"uppercase",...Z(e)})}(t)),e.trim=()=>e.check(Kt(e=>e.trim())),e.normalize=(...t)=>e.check(function(e){return Kt(t=>t.normalize(e))}(...t)),e.toLowerCase=()=>e.check(Kt(e=>e.toLowerCase())),e.toUpperCase=()=>e.check(Kt(e=>e.toUpperCase()))}),_n=s("ZodString",(e,t)=>{Ie.init(e,t),yn.init(e,t),e.email=t=>e.check(function(e,t){return new e({type:"string",format:"email",check:"string_format",abort:!1,...Z(t)})}(kn,t)),e.url=t=>e.check(function(e,t){return new e({type:"string",format:"url",check:"string_format",abort:!1,...Z(t)})}(Zn,t)),e.jwt=t=>e.check(function(e,t){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,...Z(t)})}(Mn,t)),e.emoji=t=>e.check(function(e,t){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,...Z(t)})}(jn,t)),e.guid=t=>e.check(Vt(xn,t)),e.uuid=t=>e.check(function(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,...Z(t)})}(On,t)),e.uuidv4=t=>e.check(function(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...Z(t)})}(On,t)),e.uuidv6=t=>e.check(function(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...Z(t)})}(On,t)),e.uuidv7=t=>e.check(function(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...Z(t)})}(On,t)),e.nanoid=t=>e.check(function(e,t){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,...Z(t)})}(zn,t)),e.guid=t=>e.check(Vt(xn,t)),e.cuid=t=>e.check(function(e,t){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,...Z(t)})}(Tn,t)),e.cuid2=t=>e.check(function(e,t){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,...Z(t)})}(Sn,t)),e.ulid=t=>e.check(function(e,t){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,...Z(t)})}($n,t)),e.base64=t=>e.check(function(e,t){return new e({type:"string",format:"base64",check:"string_format",abort:!1,...Z(t)})}(Rn,t)),e.base64url=t=>e.check(function(e,t){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,...Z(t)})}(Dn,t)),e.xid=t=>e.check(function(e,t){return new e({type:"string",format:"xid",check:"string_format",abort:!1,...Z(t)})}(An,t)),e.ksuid=t=>e.check(function(e,t){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,...Z(t)})}(Pn,t)),e.ipv4=t=>e.check(function(e,t){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,...Z(t)})}(En,t)),e.ipv6=t=>e.check(function(e,t){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,...Z(t)})}(In,t)),e.cidrv4=t=>e.check(function(e,t){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,...Z(t)})}(Cn,t)),e.cidrv6=t=>e.check(function(e,t){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,...Z(t)})}(Nn,t)),e.e164=t=>e.check(function(e,t){return new e({type:"string",format:"e164",check:"string_format",abort:!1,...Z(t)})}(Fn,t)),e.datetime=t=>e.check(Yt(t)),e.date=t=>e.check(Xt(t)),e.time=t=>e.check(en(t)),e.duration=t=>e.check(nn(t))});function bn(e){return function(e,t){return new e({type:"string",...Z(t)})}(_n,e)}const wn=s("ZodStringFormat",(e,t)=>{Ce.init(e,t),yn.init(e,t)}),kn=s("ZodEmail",(e,t)=>{De.init(e,t),wn.init(e,t)}),xn=s("ZodGUID",(e,t)=>{Ne.init(e,t),wn.init(e,t)}),On=s("ZodUUID",(e,t)=>{Re.init(e,t),wn.init(e,t)}),Zn=s("ZodURL",(e,t)=>{Fe.init(e,t),wn.init(e,t)}),jn=s("ZodEmoji",(e,t)=>{Me.init(e,t),wn.init(e,t)}),zn=s("ZodNanoID",(e,t)=>{Ue.init(e,t),wn.init(e,t)}),Tn=s("ZodCUID",(e,t)=>{Le.init(e,t),wn.init(e,t)}),Sn=s("ZodCUID2",(e,t)=>{Ve.init(e,t),wn.init(e,t)}),$n=s("ZodULID",(e,t)=>{qe.init(e,t),wn.init(e,t)}),An=s("ZodXID",(e,t)=>{We.init(e,t),wn.init(e,t)}),Pn=s("ZodKSUID",(e,t)=>{Be.init(e,t),wn.init(e,t)}),En=s("ZodIPv4",(e,t)=>{Ge.init(e,t),wn.init(e,t)}),In=s("ZodIPv6",(e,t)=>{Xe.init(e,t),wn.init(e,t)}),Cn=s("ZodCIDRv4",(e,t)=>{Qe.init(e,t),wn.init(e,t)}),Nn=s("ZodCIDRv6",(e,t)=>{et.init(e,t),wn.init(e,t)}),Rn=s("ZodBase64",(e,t)=>{nt.init(e,t),wn.init(e,t)}),Dn=s("ZodBase64URL",(e,t)=>{st.init(e,t),wn.init(e,t)}),Fn=s("ZodE164",(e,t)=>{rt.init(e,t),wn.init(e,t)}),Mn=s("ZodJWT",(e,t)=>{it.init(e,t),wn.init(e,t)}),Un=s("ZodBoolean",(e,t)=>{at.init(e,t),vn.init(e,t)});function Ln(e){return function(e,t){return new e({type:"boolean",...Z(t)})}(Un,e)}const Vn=s("ZodUnknown",(e,t)=>{ot.init(e,t),vn.init(e,t)});function qn(){return new Vn({type:"unknown"})}const Wn=s("ZodNever",(e,t)=>{ct.init(e,t),vn.init(e,t)});function Bn(e){return function(e,t){return new e({type:"never",...Z(t)})}(Wn,e)}const Kn=s("ZodArray",(e,t)=>{dt.init(e,t),vn.init(e,t),e.element=t.element,e.min=(t,n)=>e.check(Wt(t,n)),e.nonempty=t=>e.check(Wt(1,t)),e.max=(t,n)=>e.check(qt(t,n)),e.length=(t,n)=>e.check(Bt(t,n)),e.unwrap=()=>e.element});function Jn(e,t){return function(e,t,n){return new e({type:"array",element:t,...Z(n)})}(Kn,e,t)}const Hn=s("ZodObject",(e,t)=>{mt.init(e,t),vn.init(e,t),h(e,"shape",()=>t.shape),e.keyof=()=>ss(Object.keys(e._zod.def.shape)),e.catchall=t=>e.clone({...e._zod.def,catchall:t}),e.passthrough=()=>e.clone({...e._zod.def,catchall:qn()}),e.loose=()=>e.clone({...e._zod.def,catchall:qn()}),e.strict=()=>e.clone({...e._zod.def,catchall:Bn()}),e.strip=()=>e.clone({...e._zod.def,catchall:void 0}),e.extend=t=>function(e,t){if(!b(t))throw new Error("Invalid input to extend: expected a plain object");const n=e._zod.def.checks;if(n&&n.length>0)throw new Error("Object schemas containing refinements cannot be extended. Use `.safeExtend()` instead.");const s=m(e._zod.def,{get shape(){const n={...e._zod.def.shape,...t};return f(this,"shape",n),n},checks:[]});return O(e,s)}(e,t),e.safeExtend=t=>function(e,t){if(!b(t))throw new Error("Invalid input to safeExtend: expected a plain object");const n={...e._zod.def,get shape(){const n={...e._zod.def.shape,...t};return f(this,"shape",n),n},checks:e._zod.def.checks};return O(e,n)}(e,t),e.merge=t=>function(e,t){const n=m(e._zod.def,{get shape(){const n={...e._zod.def.shape,...t._zod.def.shape};return f(this,"shape",n),n},get catchall(){return t._zod.def.catchall},checks:[]});return O(e,n)}(e,t),e.pick=t=>function(e,t){const n=e._zod.def;return O(e,m(e._zod.def,{get shape(){const e={};for(const s in t){if(!(s in n.shape))throw new Error(`Unrecognized key: "${s}"`);t[s]&&(e[s]=n.shape[s])}return f(this,"shape",e),e},checks:[]}))}(e,t),e.omit=t=>function(e,t){const n=e._zod.def,s=m(e._zod.def,{get shape(){const s={...e._zod.def.shape};for(const e in t){if(!(e in n.shape))throw new Error(`Unrecognized key: "${e}"`);t[e]&&delete s[e]}return f(this,"shape",s),s},checks:[]});return O(e,s)}(e,t),e.partial=(...t)=>function(e,t,n){const s=m(t._zod.def,{get shape(){const s=t._zod.def.shape,r={...s};if(n)for(const t in n){if(!(t in s))throw new Error(`Unrecognized key: "${t}"`);n[t]&&(r[t]=e?new e({type:"optional",innerType:s[t]}):s[t])}else for(const t in s)r[t]=e?new e({type:"optional",innerType:s[t]}):s[t];return f(this,"shape",r),r},checks:[]});return O(t,s)}(os,e,t[0]),e.required=(...t)=>function(e,t,n){const s=m(t._zod.def,{get shape(){const s=t._zod.def.shape,r={...s};if(n)for(const t in n){if(!(t in r))throw new Error(`Unrecognized key: "${t}"`);n[t]&&(r[t]=new e({type:"nonoptional",innerType:s[t]}))}else for(const t in s)r[t]=new e({type:"nonoptional",innerType:s[t]});return f(this,"shape",r),r},checks:[]});return O(t,s)}(hs,e,t[0])});function Yn(e,t){const n={type:"object",shape:e??{},...Z(t)};return new Hn(n)}const Gn=s("ZodUnion",(e,t)=>{vt.init(e,t),vn.init(e,t),e.options=t.options});function Xn(e,t){return new Gn({type:"union",options:e,...Z(t)})}const Qn=s("ZodIntersection",(e,t)=>{yt.init(e,t),vn.init(e,t)});const es=s("ZodRecord",(e,t)=>{wt.init(e,t),vn.init(e,t),e.keyType=t.keyType,e.valueType=t.valueType});function ts(e,t,n){return new es({type:"record",keyType:e,valueType:t,...Z(n)})}const ns=s("ZodEnum",(e,t)=>{kt.init(e,t),vn.init(e,t),e.enum=t.entries,e.options=Object.values(t.entries);const n=new Set(Object.keys(t.entries));e.extract=(e,s)=>{const r={};for(const s of e){if(!n.has(s))throw new Error(`Key ${s} not found in enum`);r[s]=t.entries[s]}return new ns({...t,checks:[],...Z(s),entries:r})},e.exclude=(e,s)=>{const r={...t.entries};for(const t of e){if(!n.has(t))throw new Error(`Key ${t} not found in enum`);delete r[t]}return new ns({...t,checks:[],...Z(s),entries:r})}});function ss(e,t){const n=Array.isArray(e)?Object.fromEntries(e.map(e=>[e,e])):e;return new ns({type:"enum",entries:n,...Z(t)})}const rs=s("ZodLiteral",(e,t)=>{xt.init(e,t),vn.init(e,t),e.values=new Set(t.values),Object.defineProperty(e,"value",{get(){if(t.values.length>1)throw new Error("This schema contains multiple valid literal values. Use `.values` instead.");return t.values[0]}})});function is(e,t){return new rs({type:"literal",values:Array.isArray(e)?e:[e],...Z(t)})}const as=s("ZodTransform",(e,t)=>{Ot.init(e,t),vn.init(e,t),e._zod.parse=(n,s)=>{if("backward"===s.direction)throw new i(e.constructor.name);n.addIssue=s=>{if("string"==typeof s)n.issues.push(A(s,n.value,t));else{const t=s;t.fatal&&(t.continue=!1),t.code??(t.code="custom"),t.input??(t.input=n.value),t.inst??(t.inst=e),n.issues.push(A(t))}};const r=t.transform(n.value,n);return r instanceof Promise?r.then(e=>(n.value=e,n)):(n.value=r,n)}});const os=s("ZodOptional",(e,t)=>{jt.init(e,t),vn.init(e,t),e.unwrap=()=>e._zod.def.innerType});function cs(e){return new os({type:"optional",innerType:e})}const us=s("ZodNullable",(e,t)=>{zt.init(e,t),vn.init(e,t),e.unwrap=()=>e._zod.def.innerType});function ds(e){return new us({type:"nullable",innerType:e})}const ls=s("ZodDefault",(e,t)=>{Tt.init(e,t),vn.init(e,t),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});const ps=s("ZodPrefault",(e,t)=>{$t.init(e,t),vn.init(e,t),e.unwrap=()=>e._zod.def.innerType});const hs=s("ZodNonOptional",(e,t)=>{At.init(e,t),vn.init(e,t),e.unwrap=()=>e._zod.def.innerType});const fs=s("ZodCatch",(e,t)=>{Et.init(e,t),vn.init(e,t),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});const ms=s("ZodPipe",(e,t)=>{It.init(e,t),vn.init(e,t),e.in=t.in,e.out=t.out});function gs(e,t){return new ms({type:"pipe",in:e,out:t})}const vs=s("ZodReadonly",(e,t)=>{Nt.init(e,t),vn.init(e,t),e.unwrap=()=>e._zod.def.innerType});const ys=s("ZodCustom",(e,t)=>{Dt.init(e,t),vn.init(e,t)});const _s="directus:extension",bs=Yn({app:bn(),api:bn()}),ws=Yn({request:cs(Yn({urls:Jn(bn()),methods:Jn(Xn([is("GET"),is("POST"),is("PATCH"),is("PUT"),is("DELETE")]))})),log:cs(Yn({})),sleep:cs(Yn({}))}),ks=cs(Yn({enabled:Ln(),requestedScopes:ws})),xs=Xn([Yn({type:ss(t),name:bn(),source:bn()}),Yn({type:ss(e),name:bn(),source:bn()}),Yn({type:ss(n),name:bn(),source:bs})]),Os=Yn({host:bn(),hidden:Ln().optional()}),Zs=Yn({type:ss(e),path:bn(),source:bn()}),js=Yn({type:ss(t),path:bn(),source:bn(),sandbox:ks}),zs=Yn({type:ss(n),path:bs,source:bs,sandbox:ks}),Ts=Yn({type:is("bundle"),partial:Ln().optional(),path:bs,entries:Jn(xs)});Jn(xs);const Ss=Os.and(Xn([Zs,js,zs,Ts]));Yn({name:bn(),version:bn(),type:Xn([is("module"),is("commonjs")]).optional(),description:bn().optional(),icon:bn().optional(),dependencies:ts(bn(),bn()).optional(),devDependencies:ts(bn(),bn()).optional(),[_s]:Ss});const{findWorkspaceDir:$s}=require("@pnpm/find-workspace-dir"),As=require("js-yaml"),Ps=require("path"),Es=require("fs"),Is=()=>process.cwd(),Cs=process.env.EXTENSIONS_PATH||"./extensions";let Ns;function Rs(e,t){return Object.entries(t).reduce((e,[t,n])=>(e[t]=n&&"object"==typeof n?Rs(e[t]=e[t]||(Array.isArray(n)?[]:{}),n):n,e),e)}function Ds(e,t){var n={};for(var s in e)Object.prototype.hasOwnProperty.call(e,s)&&t.indexOf(s)<0&&(n[s]=e[s]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var r=0;for(s=Object.getOwnPropertySymbols(e);r<s.length;r++)t.indexOf(s[r])<0&&Object.prototype.propertyIsEnumerable.call(e,s[r])&&(n[s[r]]=e[s[r]])}return n}function Fs(e,t){var n;return(null===(n=null==e?void 0:e._def)||void 0===n?void 0:n.typeName)===t}function Ms(e,t){const n=e.ZodType.prototype[t];e.ZodType.prototype[t]=function(...e){const t=n.apply(this,e);return t._def.openapi=this._def.openapi,t}}function Us(e,t){if(null==e||null==t)return e===t;if(e===t||e.valueOf()===t.valueOf())return!0;if(Array.isArray(e)){if(!Array.isArray(t))return!1;if(e.length!==t.length)return!1}if(!(e instanceof Object&&t instanceof Object))return!1;const n=Object.keys(e);return Object.keys(t).every(e=>-1!==n.indexOf(e))&&n.every(n=>Us(e[n],t[n]))}"function"==ty