@proofkit/cli 2.0.0-beta.21 → 2.0.0-beta.23
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 +46 -0
- package/dist/add-DrcID6d6.js +57 -0
- package/dist/add-DrcID6d6.js.map +1 -0
- package/dist/addPackageDependency-BGZl7xc5.js +4 -0
- package/dist/addPackageDependency-BGZl7xc5.js.map +1 -0
- package/dist/consts-BZnOMxpW.js +10 -0
- package/dist/consts-BZnOMxpW.js.map +1 -0
- package/dist/deploy-D25sPO7K.js +34 -0
- package/dist/deploy-D25sPO7K.js.map +1 -0
- package/dist/fmdapi-BO4QL0F8.js +2 -0
- package/dist/fmdapi-BO4QL0F8.js.map +1 -0
- package/dist/fmdapi-DyRYZWzI.js +3 -0
- package/dist/fmdapi-DyRYZWzI.js.map +1 -0
- package/dist/getUserPkgManager-Cph_6l1P.js +2 -0
- package/dist/getUserPkgManager-Cph_6l1P.js.map +1 -0
- package/dist/globalOptions-CkqEi9uC.js +2 -0
- package/dist/globalOptions-CkqEi9uC.js.map +1 -0
- package/dist/index-DALPpGd1.d.ts +366 -0
- package/dist/index-DALPpGd1.d.ts.map +1 -0
- package/dist/index.js +10 -157
- package/dist/index.js.map +1 -1
- package/dist/logger-DCEXcH26.js +2 -0
- package/dist/logger-DCEXcH26.js.map +1 -0
- package/dist/parseSettings-DJ2m9sgJ.js +2 -0
- package/dist/parseSettings-DJ2m9sgJ.js.map +1 -0
- package/dist/proofkit-webviewer-73IB1OBU.js +2 -0
- package/dist/proofkit-webviewer-73IB1OBU.js.map +1 -0
- package/dist/remove-BOCU6In3.js +2 -0
- package/dist/remove-BOCU6In3.js.map +1 -0
- package/dist/state-BVEcvFT3.js +41 -0
- package/dist/state-BVEcvFT3.js.map +1 -0
- package/dist/typegen-DyXaif5O.js +2 -0
- package/dist/typegen-DyXaif5O.js.map +1 -0
- package/dist/update-FX71y5b3.js +7 -0
- package/dist/update-FX71y5b3.js.map +1 -0
- package/dist/utils-DymV7zmv.js +3 -0
- package/dist/utils-DymV7zmv.js.map +1 -0
- package/package.json +18 -8
- package/template/fm-addon/ProofKitWV/de.xml +517 -20
- package/template/fm-addon/ProofKitWV/en.xml +517 -20
- package/template/fm-addon/ProofKitWV/es.xml +517 -20
- package/template/fm-addon/ProofKitWV/fr.xml +517 -20
- package/template/fm-addon/ProofKitWV/icon.png +0 -0
- package/template/fm-addon/ProofKitWV/icon@2x.png +0 -0
- package/template/fm-addon/ProofKitWV/info.json +9 -6
- package/template/fm-addon/ProofKitWV/info_de.json +12 -5
- package/template/fm-addon/ProofKitWV/info_en.json +16 -5
- package/template/fm-addon/ProofKitWV/info_es.json +12 -5
- package/template/fm-addon/ProofKitWV/info_fr.json +12 -5
- package/template/fm-addon/ProofKitWV/info_it.json +12 -5
- package/template/fm-addon/ProofKitWV/info_ja.json +12 -5
- package/template/fm-addon/ProofKitWV/info_ko.json +12 -5
- package/template/fm-addon/ProofKitWV/info_nl.json +12 -5
- package/template/fm-addon/ProofKitWV/info_pt.json +12 -5
- package/template/fm-addon/ProofKitWV/info_sv.json +12 -5
- package/template/fm-addon/ProofKitWV/info_zh.json +12 -5
- package/template/fm-addon/ProofKitWV/it.xml +517 -20
- package/template/fm-addon/ProofKitWV/ja.xml +517 -20
- package/template/fm-addon/ProofKitWV/ko.xml +517 -20
- package/template/fm-addon/ProofKitWV/nl.xml +517 -20
- package/template/fm-addon/ProofKitWV/preview.png +0 -0
- package/template/fm-addon/ProofKitWV/pt.xml +517 -20
- package/template/fm-addon/ProofKitWV/records_de.xml +0 -0
- package/template/fm-addon/ProofKitWV/records_en.xml +0 -0
- package/template/fm-addon/ProofKitWV/records_es.xml +0 -0
- package/template/fm-addon/ProofKitWV/records_fr.xml +0 -0
- package/template/fm-addon/ProofKitWV/records_it.xml +0 -0
- package/template/fm-addon/ProofKitWV/records_ja.xml +0 -0
- package/template/fm-addon/ProofKitWV/records_ko.xml +0 -0
- package/template/fm-addon/ProofKitWV/records_nl.xml +0 -0
- package/template/fm-addon/ProofKitWV/records_pt.xml +0 -0
- package/template/fm-addon/ProofKitWV/records_sv.xml +0 -0
- package/template/fm-addon/ProofKitWV/records_zh.xml +0 -0
- package/template/fm-addon/ProofKitWV/sv.xml +517 -20
- package/template/fm-addon/ProofKitWV/template.xml +0 -0
- package/template/fm-addon/ProofKitWV/zh.xml +517 -20
- package/template/nextjs-mantine/AGENTS.md +1 -0
- package/template/nextjs-mantine/package.json +2 -3
- package/template/nextjs-shadcn/AGENTS.md +1 -0
- package/template/nextjs-shadcn/package.json +3 -4
- package/template/vite-wv/.claude/launch.json +18 -0
- package/template/vite-wv/AGENTS.md +1 -0
- package/template/vite-wv/_gitignore +1 -0
- package/template/vite-wv/components.json +6 -6
- package/template/vite-wv/index.html +2 -2
- package/template/vite-wv/package.json +20 -37
- package/template/vite-wv/proofkit-typegen.config.jsonc +18 -0
- package/template/vite-wv/proofkit.json +4 -1
- package/template/vite-wv/scripts/filemaker.js +96 -0
- package/template/vite-wv/scripts/launch-fm.js +19 -0
- package/template/vite-wv/scripts/upload.js +17 -14
- package/template/vite-wv/src/App.tsx +84 -0
- package/template/vite-wv/src/index.css +96 -0
- package/template/vite-wv/src/lib/utils.ts +6 -0
- package/template/vite-wv/src/main.tsx +14 -35
- package/template/vite-wv/src/router.tsx +57 -0
- package/template/vite-wv/src/routes/query-demo.tsx +37 -0
- package/template/vite-wv/tsconfig.json +3 -1
- package/template/vite-wv/vite.config.ts +5 -5
- package/dist/index-JtcdNmdz.d.ts +0 -1
- package/template/vite-wv/pnpm-lock.yaml +0 -2294
- package/template/vite-wv/postcss.config.cjs +0 -15
- package/template/vite-wv/scripts/launch-fm.sh +0 -3
- package/template/vite-wv/src/components/AppLogo.tsx +0 -5
- package/template/vite-wv/src/components/full-screen-loader.tsx +0 -9
- package/template/vite-wv/src/config/env.ts +0 -16
- package/template/vite-wv/src/config/theme/globals.css +0 -125
- package/template/vite-wv/src/config/theme/mantine-theme.ts +0 -22
- package/template/vite-wv/src/routeTree.gen.ts +0 -111
- package/template/vite-wv/src/routes/__root.tsx +0 -21
- package/template/vite-wv/src/routes/index.tsx +0 -51
- package/template/vite-wv/src/routes/secondary.tsx +0 -26
- package/template/vite-wv/src/utils/notification-helpers.ts +0 -32
- package/template/vite-wv/src/utils/styles.ts +0 -6
package/dist/index.js
CHANGED
|
@@ -1,158 +1,11 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
2
|
-
import
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
| ___/[ \`/'\`\\]/ .'\`\\ \\/ .'\`\\ \\'-| |-' | __'. [ | | |
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
${`
|
|
10
|
-
`,Ke=Object.freeze({status:`aborted`});function v(e,t,n){function r(n,r){if(n._zod||Object.defineProperty(n,`_zod`,{value:{def:r,constr:o,traits:new Set},enumerable:!1}),n._zod.traits.has(e))return;n._zod.traits.add(e),t(n,r);let i=o.prototype,a=Object.keys(i);for(let e=0;e<a.length;e++){let t=a[e];t in n||(n[t]=i[t].bind(n))}}let i=n?.Parent??Object;class a extends i{}Object.defineProperty(a,`name`,{value:e});function o(e){var t;let i=n?.Parent?new a:this;r(i,e),(t=i._zod).deferred??(t.deferred=[]);for(let e of i._zod.deferred)e();return i}return Object.defineProperty(o,`init`,{value:r}),Object.defineProperty(o,Symbol.hasInstance,{value:t=>n?.Parent&&t instanceof n.Parent?!0:t?._zod?.traits?.has(e)}),Object.defineProperty(o,`name`,{value:e}),o}const qe=Symbol(`zod_brand`);var Je=class extends Error{constructor(){super(`Encountered Promise during synchronous parse. Use .parseAsync() instead.`)}},Ye=class extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name=`ZodEncodeError`}};const Xe={};function y(e){return e&&Object.assign(Xe,e),Xe}var Ze=Pe({BIGINT_FORMAT_RANGES:()=>Nt,Class:()=>tn,NUMBER_FORMAT_RANGES:()=>Mt,aborted:()=>Vt,allowsEval:()=>xt,assert:()=>nt,assertEqual:()=>Qe,assertIs:()=>et,assertNever:()=>tt,assertNotEqual:()=>$e,assignProp:()=>dt,base64ToUint8Array:()=>Yt,base64urlToUint8Array:()=>Zt,cached:()=>at,captureStackTrace:()=>yt,cleanEnum:()=>Jt,cleanRegex:()=>st,clone:()=>kt,cloneDef:()=>pt,createTransparentProxy:()=>At,defineLazy:()=>x,esc:()=>_t,escapeRegex:()=>Ot,extend:()=>It,finalizeIssue:()=>Wt,floatSafeRemainder:()=>ct,getElementAtPath:()=>mt,getEnumValues:()=>rt,getLengthableOrigin:()=>Kt,getParsedType:()=>Tt,getSizableOrigin:()=>Gt,hexToUint8Array:()=>$t,isObject:()=>bt,isPlainObject:()=>St,issue:()=>qt,joinValues:()=>b,jsonStringifyReplacer:()=>it,merge:()=>Rt,mergeDefs:()=>ft,normalizeParams:()=>S,nullish:()=>ot,numKeys:()=>wt,objectClone:()=>ut,omit:()=>Ft,optionalKeys:()=>jt,parsedType:()=>w,partial:()=>zt,pick:()=>Pt,prefixIssues:()=>Ht,primitiveTypes:()=>Dt,promiseAllObject:()=>ht,propertyKeyTypes:()=>Et,randomString:()=>gt,required:()=>Bt,safeExtend:()=>Lt,shallowClone:()=>Ct,slugify:()=>vt,stringifyPrimitive:()=>C,uint8ArrayToBase64:()=>Xt,uint8ArrayToBase64url:()=>Qt,uint8ArrayToHex:()=>en,unwrapMessage:()=>Ut});function Qe(e){return e}function $e(e){return e}function et(e){}function tt(e){throw Error(`Unexpected value in exhaustive check`)}function nt(e){}function rt(e){let t=Object.values(e).filter(e=>typeof e==`number`);return Object.entries(e).filter(([e,n])=>t.indexOf(+e)===-1).map(([e,t])=>t)}function b(e,t=`|`){return e.map(e=>C(e)).join(t)}function it(e,t){return typeof t==`bigint`?t.toString():t}function at(e){return{get value(){{let t=e();return Object.defineProperty(this,`value`,{value:t}),t}throw Error(`cached value already set`)}}}function ot(e){return e==null}function st(e){let t=e.startsWith(`^`)?1:0,n=e.endsWith(`$`)?e.length-1:e.length;return e.slice(t,n)}function ct(e,t){let n=(e.toString().split(`.`)[1]||``).length,r=t.toString(),i=(r.split(`.`)[1]||``).length;if(i===0&&/\d?e-\d?/.test(r)){let e=r.match(/\d?e-(\d?)/);e?.[1]&&(i=Number.parseInt(e[1]))}let a=n>i?n:i;return Number.parseInt(e.toFixed(a).replace(`.`,``))%Number.parseInt(t.toFixed(a).replace(`.`,``))/10**a}const lt=Symbol(`evaluating`);function x(e,t,n){let r;Object.defineProperty(e,t,{get(){if(r!==lt)return r===void 0&&(r=lt,r=n()),r},set(n){Object.defineProperty(e,t,{value:n})},configurable:!0})}function ut(e){return Object.create(Object.getPrototypeOf(e),Object.getOwnPropertyDescriptors(e))}function dt(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})}function ft(...e){let t={};for(let n of e){let e=Object.getOwnPropertyDescriptors(n);Object.assign(t,e)}return Object.defineProperties({},t)}function pt(e){return ft(e._zod.def)}function mt(e,t){return t?t.reduce((e,t)=>e?.[t],e):e}function ht(e){let t=Object.keys(e),n=t.map(t=>e[t]);return Promise.all(n).then(e=>{let n={};for(let r=0;r<t.length;r++)n[t[r]]=e[r];return n})}function gt(e=10){let t=``;for(let n=0;n<e;n++)t+=`abcdefghijklmnopqrstuvwxyz`[Math.floor(Math.random()*26)];return t}function _t(e){return JSON.stringify(e)}function vt(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,``).replace(/[\s_-]+/g,`-`).replace(/^-+|-+$/g,``)}const yt=`captureStackTrace`in Error?Error.captureStackTrace:(...e)=>{};function bt(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}const xt=at(()=>{if(typeof navigator<`u`&&navigator?.userAgent?.includes(`Cloudflare`))return!1;try{return Function(``),!0}catch{return!1}});function St(e){if(bt(e)===!1)return!1;let t=e.constructor;if(t===void 0||typeof t!=`function`)return!0;let n=t.prototype;return!(bt(n)===!1||Object.prototype.hasOwnProperty.call(n,`isPrototypeOf`)===!1)}function Ct(e){return St(e)?{...e}:Array.isArray(e)?[...e]:e}function wt(e){let t=0;for(let n in e)Object.prototype.hasOwnProperty.call(e,n)&&t++;return t}const Tt=e=>{let t=typeof e;switch(t){case`undefined`:return`undefined`;case`string`:return`string`;case`number`:return Number.isNaN(e)?`nan`:`number`;case`boolean`:return`boolean`;case`function`:return`function`;case`bigint`:return`bigint`;case`symbol`:return`symbol`;case`object`:return Array.isArray(e)?`array`:e===null?`null`:e.then&&typeof e.then==`function`&&e.catch&&typeof e.catch==`function`?`promise`:typeof Map<`u`&&e instanceof Map?`map`:typeof Set<`u`&&e instanceof Set?`set`:typeof Date<`u`&&e instanceof Date?`date`:typeof File<`u`&&e instanceof File?`file`:`object`;default:throw Error(`Unknown data type: ${t}`)}},Et=new Set([`string`,`number`,`symbol`]),Dt=new Set([`string`,`number`,`bigint`,`boolean`,`symbol`,`undefined`]);function Ot(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function kt(e,t,n){let r=new e._zod.constr(t??e._zod.def);return(!t||n?.parent)&&(r._zod.parent=e),r}function S(e){let t=e;if(!t)return{};if(typeof t==`string`)return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw Error("Cannot specify both `message` and `error` params");t.error=t.message}return delete t.message,typeof t.error==`string`?{...t,error:()=>t.error}:t}function At(e){let t;return new Proxy({},{get(n,r,i){return t??=e(),Reflect.get(t,r,i)},set(n,r,i,a){return t??=e(),Reflect.set(t,r,i,a)},has(n,r){return t??=e(),Reflect.has(t,r)},deleteProperty(n,r){return t??=e(),Reflect.deleteProperty(t,r)},ownKeys(n){return t??=e(),Reflect.ownKeys(t)},getOwnPropertyDescriptor(n,r){return t??=e(),Reflect.getOwnPropertyDescriptor(t,r)},defineProperty(n,r,i){return t??=e(),Reflect.defineProperty(t,r,i)}})}function C(e){return typeof e==`bigint`?e.toString()+`n`:typeof e==`string`?`"${e}"`:`${e}`}function jt(e){return Object.keys(e).filter(t=>e[t]._zod.optin===`optional`&&e[t]._zod.optout===`optional`)}const Mt={safeint:[-(2**53-1),2**53-1],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]},Nt={int64:[BigInt(`-9223372036854775808`),BigInt(`9223372036854775807`)],uint64:[BigInt(0),BigInt(`18446744073709551615`)]};function Pt(e,t){let n=e._zod.def,r=n.checks;if(r&&r.length>0)throw Error(`.pick() cannot be used on object schemas containing refinements`);return kt(e,ft(e._zod.def,{get shape(){let e={};for(let r in t){if(!(r in n.shape))throw Error(`Unrecognized key: "${r}"`);t[r]&&(e[r]=n.shape[r])}return dt(this,`shape`,e),e},checks:[]}))}function Ft(e,t){let n=e._zod.def,r=n.checks;if(r&&r.length>0)throw Error(`.omit() cannot be used on object schemas containing refinements`);return kt(e,ft(e._zod.def,{get shape(){let r={...e._zod.def.shape};for(let e in t){if(!(e in n.shape))throw Error(`Unrecognized key: "${e}"`);t[e]&&delete r[e]}return dt(this,`shape`,r),r},checks:[]}))}function It(e,t){if(!St(t))throw Error(`Invalid input to extend: expected a plain object`);let n=e._zod.def.checks;if(n&&n.length>0){let n=e._zod.def.shape;for(let e in t)if(Object.getOwnPropertyDescriptor(n,e)!==void 0)throw Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}return kt(e,ft(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t};return dt(this,`shape`,n),n}}))}function Lt(e,t){if(!St(t))throw Error(`Invalid input to safeExtend: expected a plain object`);return kt(e,ft(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t};return dt(this,`shape`,n),n}}))}function Rt(e,t){return kt(e,ft(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t._zod.def.shape};return dt(this,`shape`,n),n},get catchall(){return t._zod.def.catchall},checks:[]}))}function zt(e,t,n){let r=t._zod.def.checks;if(r&&r.length>0)throw Error(`.partial() cannot be used on object schemas containing refinements`);return kt(t,ft(t._zod.def,{get shape(){let r=t._zod.def.shape,i={...r};if(n)for(let t in n){if(!(t in r))throw Error(`Unrecognized key: "${t}"`);n[t]&&(i[t]=e?new e({type:`optional`,innerType:r[t]}):r[t])}else for(let t in r)i[t]=e?new e({type:`optional`,innerType:r[t]}):r[t];return dt(this,`shape`,i),i},checks:[]}))}function Bt(e,t,n){return kt(t,ft(t._zod.def,{get shape(){let r=t._zod.def.shape,i={...r};if(n)for(let t in n){if(!(t in i))throw Error(`Unrecognized key: "${t}"`);n[t]&&(i[t]=new e({type:`nonoptional`,innerType:r[t]}))}else for(let t in r)i[t]=new e({type:`nonoptional`,innerType:r[t]});return dt(this,`shape`,i),i}}))}function Vt(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue!==!0)return!0;return!1}function Ht(e,t){return t.map(t=>{var n;return(n=t).path??(n.path=[]),t.path.unshift(e),t})}function Ut(e){return typeof e==`string`?e:e?.message}function Wt(e,t,n){let r={...e,path:e.path??[]};return e.message||(r.message=Ut(e.inst?._zod.def?.error?.(e))??Ut(t?.error?.(e))??Ut(n.customError?.(e))??Ut(n.localeError?.(e))??`Invalid input`),delete r.inst,delete r.continue,t?.reportInput||delete r.input,r}function Gt(e){return e instanceof Set?`set`:e instanceof Map?`map`:e instanceof File?`file`:`unknown`}function Kt(e){return Array.isArray(e)?`array`:typeof e==`string`?`string`:`unknown`}function w(e){let t=typeof e;switch(t){case`number`:return Number.isNaN(e)?`nan`:`number`;case`object`:{if(e===null)return`null`;if(Array.isArray(e))return`array`;let t=e;if(t&&Object.getPrototypeOf(t)!==Object.prototype&&`constructor`in t&&t.constructor)return t.constructor.name}}return t}function qt(...e){let[t,n,r]=e;return typeof t==`string`?{message:t,code:`custom`,input:n,inst:r}:{...t}}function Jt(e){return Object.entries(e).filter(([e,t])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}function Yt(e){let t=atob(e),n=new Uint8Array(t.length);for(let e=0;e<t.length;e++)n[e]=t.charCodeAt(e);return n}function Xt(e){let t=``;for(let n=0;n<e.length;n++)t+=String.fromCharCode(e[n]);return btoa(t)}function Zt(e){let t=e.replace(/-/g,`+`).replace(/_/g,`/`);return Yt(t+`=`.repeat((4-t.length%4)%4))}function Qt(e){return Xt(e).replace(/\+/g,`-`).replace(/\//g,`_`).replace(/=/g,``)}function $t(e){let t=e.replace(/^0x/,``);if(t.length%2!=0)throw Error(`Invalid hex string length`);let n=new Uint8Array(t.length/2);for(let e=0;e<t.length;e+=2)n[e/2]=Number.parseInt(t.slice(e,e+2),16);return n}function en(e){return Array.from(e).map(e=>e.toString(16).padStart(2,`0`)).join(``)}var tn=class{constructor(...e){}};const nn=(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,it,2),Object.defineProperty(e,`toString`,{value:()=>e.message,enumerable:!1})},rn=v(`$ZodError`,nn),an=v(`$ZodError`,nn,{Parent:Error});function on(e,t=e=>e.message){let n={},r=[];for(let i of e.issues)i.path.length>0?(n[i.path[0]]=n[i.path[0]]||[],n[i.path[0]].push(t(i))):r.push(t(i));return{formErrors:r,fieldErrors:n}}function sn(e,t=e=>e.message){let n={_errors:[]},r=e=>{for(let i of e.issues)if(i.code===`invalid_union`&&i.errors.length)i.errors.map(e=>r({issues:e}));else if(i.code===`invalid_key`)r({issues:i.issues});else if(i.code===`invalid_element`)r({issues:i.issues});else if(i.path.length===0)n._errors.push(t(i));else{let e=n,r=0;for(;r<i.path.length;){let n=i.path[r];r===i.path.length-1?(e[n]=e[n]||{_errors:[]},e[n]._errors.push(t(i))):e[n]=e[n]||{_errors:[]},e=e[n],r++}}};return r(e),n}function cn(e,t=e=>e.message){let n={errors:[]},r=(e,i=[])=>{var a,o;for(let s of e.issues)if(s.code===`invalid_union`&&s.errors.length)s.errors.map(e=>r({issues:e},s.path));else if(s.code===`invalid_key`)r({issues:s.issues},s.path);else if(s.code===`invalid_element`)r({issues:s.issues},s.path);else{let e=[...i,...s.path];if(e.length===0){n.errors.push(t(s));continue}let r=n,c=0;for(;c<e.length;){let n=e[c],i=c===e.length-1;typeof n==`string`?(r.properties??={},(a=r.properties)[n]??(a[n]={errors:[]}),r=r.properties[n]):(r.items??=[],(o=r.items)[n]??(o[n]={errors:[]}),r=r.items[n]),i&&r.errors.push(t(s)),c++}}};return r(e),n}function ln(e){let t=[],n=e.map(e=>typeof e==`object`?e.key:e);for(let e of n)typeof e==`number`?t.push(`[${e}]`):typeof e==`symbol`?t.push(`[${JSON.stringify(String(e))}]`):/[^\w$]/.test(e)?t.push(`[${JSON.stringify(e)}]`):(t.length&&t.push(`.`),t.push(e));return t.join(``)}function un(e){let t=[],n=[...e.issues].sort((e,t)=>(e.path??[]).length-(t.path??[]).length);for(let e of n)t.push(`✖ ${e.message}`),e.path?.length&&t.push(` → at ${ln(e.path)}`);return t.join(`
|
|
11
|
-
`)}const dn=e=>(t,n,r,i)=>{let a=r?Object.assign(r,{async:!1}):{async:!1},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise)throw new Je;if(o.issues.length){let t=new(i?.Err??e)(o.issues.map(e=>Wt(e,a,y())));throw yt(t,i?.callee),t}return o.value},fn=dn(an),pn=e=>async(t,n,r,i)=>{let a=r?Object.assign(r,{async:!0}):{async:!0},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise&&(o=await o),o.issues.length){let t=new(i?.Err??e)(o.issues.map(e=>Wt(e,a,y())));throw yt(t,i?.callee),t}return o.value},mn=pn(an),hn=e=>(t,n,r)=>{let i=r?{...r,async:!1}:{async:!1},a=t._zod.run({value:n,issues:[]},i);if(a instanceof Promise)throw new Je;return a.issues.length?{success:!1,error:new(e??rn)(a.issues.map(e=>Wt(e,i,y())))}:{success:!0,data:a.value}},gn=hn(an),_n=e=>async(t,n,r)=>{let i=r?Object.assign(r,{async:!0}):{async:!0},a=t._zod.run({value:n,issues:[]},i);return a instanceof Promise&&(a=await a),a.issues.length?{success:!1,error:new e(a.issues.map(e=>Wt(e,i,y())))}:{success:!0,data:a.value}},vn=_n(an),yn=e=>(t,n,r)=>{let i=r?Object.assign(r,{direction:`backward`}):{direction:`backward`};return dn(e)(t,n,i)},bn=yn(an),xn=e=>(t,n,r)=>dn(e)(t,n,r),Sn=xn(an),Cn=e=>async(t,n,r)=>{let i=r?Object.assign(r,{direction:`backward`}):{direction:`backward`};return pn(e)(t,n,i)},wn=Cn(an),Tn=e=>async(t,n,r)=>pn(e)(t,n,r),En=Tn(an),Dn=e=>(t,n,r)=>{let i=r?Object.assign(r,{direction:`backward`}):{direction:`backward`};return hn(e)(t,n,i)},On=Dn(an),kn=e=>(t,n,r)=>hn(e)(t,n,r),An=kn(an),jn=e=>async(t,n,r)=>{let i=r?Object.assign(r,{direction:`backward`}):{direction:`backward`};return _n(e)(t,n,i)},Mn=jn(an),Nn=e=>async(t,n,r)=>_n(e)(t,n,r),Pn=Nn(an);var Fn=Pe({base64:()=>sr,base64url:()=>cr,bigint:()=>vr,boolean:()=>xr,browserEmail:()=>er,cidrv4:()=>ar,cidrv6:()=>or,cuid:()=>In,cuid2:()=>Ln,date:()=>pr,datetime:()=>gr,domain:()=>ur,duration:()=>Hn,e164:()=>dr,email:()=>Yn,emoji:()=>tr,extendedDuration:()=>Un,guid:()=>Wn,hex:()=>Er,hostname:()=>lr,html5Email:()=>Xn,idnEmail:()=>$n,integer:()=>yr,ipv4:()=>nr,ipv6:()=>rr,ksuid:()=>Bn,lowercase:()=>wr,mac:()=>ir,md5_base64:()=>Ar,md5_base64url:()=>jr,md5_hex:()=>kr,nanoid:()=>Vn,null:()=>Sr,number:()=>br,rfc5322Email:()=>Zn,sha1_base64:()=>Nr,sha1_base64url:()=>Pr,sha1_hex:()=>Mr,sha256_base64:()=>Ir,sha256_base64url:()=>Lr,sha256_hex:()=>Fr,sha384_base64:()=>zr,sha384_base64url:()=>Br,sha384_hex:()=>Rr,sha512_base64:()=>Hr,sha512_base64url:()=>Ur,sha512_hex:()=>Vr,string:()=>_r,time:()=>hr,ulid:()=>Rn,undefined:()=>Cr,unicodeEmail:()=>Qn,uppercase:()=>Tr,uuid:()=>Gn,uuid4:()=>Kn,uuid6:()=>qn,uuid7:()=>Jn,xid:()=>zn});const In=/^[cC][^\s-]{8,}$/,Ln=/^[0-9a-z]+$/,Rn=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,zn=/^[0-9a-vA-V]{20}$/,Bn=/^[A-Za-z0-9]{27}$/,Vn=/^[a-zA-Z0-9_-]{21}$/,Hn=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,Un=/^[-+]?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)?)??$/,Wn=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,Gn=e=>e?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)$/,Kn=Gn(4),qn=Gn(6),Jn=Gn(7),Yn=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,Xn=/^[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])?)*$/,Zn=/^(([^<>()\[\]\\.,;:\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,}))$/,Qn=/^[^\s@"]{1,64}@[^\s@]{1,255}$/u,$n=Qn,er=/^[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])?)*$/;function tr(){return RegExp(`^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$`,`u`)}const nr=/^(?:(?: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])$/,rr=/^(([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}|:))$/,ir=e=>{let t=Ot(e??`:`);return RegExp(`^(?:[0-9A-F]{2}${t}){5}[0-9A-F]{2}$|^(?:[0-9a-f]{2}${t}){5}[0-9a-f]{2}$`)},ar=/^((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])$/,or=/^(([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])$/,sr=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,cr=/^[A-Za-z0-9_-]*$/,lr=/^(?=.{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])?)*\.?$/,ur=/^([a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,}$/,dr=/^\+[1-9]\d{6,14}$/,fr=`(?:(?:\\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])))`,pr=RegExp(`^${fr}$`);function mr(e){let t=`(?:[01]\\d|2[0-3]):[0-5]\\d`;return typeof e.precision==`number`?e.precision===-1?`${t}`:e.precision===0?`${t}:[0-5]\\d`:`${t}:[0-5]\\d\\.\\d{${e.precision}}`:`${t}(?::[0-5]\\d(?:\\.\\d+)?)?`}function hr(e){return RegExp(`^${mr(e)}$`)}function gr(e){let t=mr({precision:e.precision}),n=[`Z`];e.local&&n.push(``),e.offset&&n.push(`([+-](?:[01]\\d|2[0-3]):[0-5]\\d)`);let r=`${t}(?:${n.join(`|`)})`;return RegExp(`^${fr}T(?:${r})$`)}const _r=e=>{let t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??``}}`:`[\\s\\S]*`;return RegExp(`^${t}$`)},vr=/^-?\d+n?$/,yr=/^-?\d+$/,br=/^-?\d+(?:\.\d+)?$/,xr=/^(?:true|false)$/i,Sr=/^null$/i,Cr=/^undefined$/i,wr=/^[^A-Z]*$/,Tr=/^[^a-z]*$/,Er=/^[0-9a-fA-F]*$/;function Dr(e,t){return RegExp(`^[A-Za-z0-9+/]{${e}}${t}$`)}function Or(e){return RegExp(`^[A-Za-z0-9_-]{${e}}$`)}const kr=/^[0-9a-fA-F]{32}$/,Ar=Dr(22,`==`),jr=Or(22),Mr=/^[0-9a-fA-F]{40}$/,Nr=Dr(27,`=`),Pr=Or(27),Fr=/^[0-9a-fA-F]{64}$/,Ir=Dr(43,`=`),Lr=Or(43),Rr=/^[0-9a-fA-F]{96}$/,zr=Dr(64,``),Br=Or(64),Vr=/^[0-9a-fA-F]{128}$/,Hr=Dr(86,`==`),Ur=Or(86),T=v(`$ZodCheck`,(e,t)=>{var n;e._zod??={},e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),Wr={number:`number`,bigint:`bigint`,object:`date`},Gr=v(`$ZodCheckLessThan`,(e,t)=>{T.init(e,t);let n=Wr[typeof t.value];e._zod.onattach.push(e=>{let n=e._zod.bag,r=(t.inclusive?n.maximum:n.exclusiveMaximum)??1/0;t.value<r&&(t.inclusive?n.maximum=t.value:n.exclusiveMaximum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value<=t.value:r.value<t.value)||r.issues.push({origin:n,code:`too_big`,maximum:typeof t.value==`object`?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Kr=v(`$ZodCheckGreaterThan`,(e,t)=>{T.init(e,t);let n=Wr[typeof t.value];e._zod.onattach.push(e=>{let n=e._zod.bag,r=(t.inclusive?n.minimum:n.exclusiveMinimum)??-1/0;t.value>r&&(t.inclusive?n.minimum=t.value:n.exclusiveMinimum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value>=t.value:r.value>t.value)||r.issues.push({origin:n,code:`too_small`,minimum:typeof t.value==`object`?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),qr=v(`$ZodCheckMultipleOf`,(e,t)=>{T.init(e,t),e._zod.onattach.push(e=>{var n;(n=e._zod.bag).multipleOf??(n.multipleOf=t.value)}),e._zod.check=n=>{if(typeof n.value!=typeof t.value)throw Error(`Cannot mix number and bigint in multiple_of check.`);(typeof n.value==`bigint`?n.value%t.value===BigInt(0):ct(n.value,t.value)===0)||n.issues.push({origin:typeof n.value,code:`not_multiple_of`,divisor:t.value,input:n.value,inst:e,continue:!t.abort})}}),Jr=v(`$ZodCheckNumberFormat`,(e,t)=>{T.init(e,t),t.format=t.format||`float64`;let n=t.format?.includes(`int`),r=n?`int`:`number`,[i,a]=Mt[t.format];e._zod.onattach.push(e=>{let r=e._zod.bag;r.format=t.format,r.minimum=i,r.maximum=a,n&&(r.pattern=yr)}),e._zod.check=o=>{let s=o.value;if(n){if(!Number.isInteger(s)){o.issues.push({expected:r,format:t.format,code:`invalid_type`,continue:!1,input:s,inst:e});return}if(!Number.isSafeInteger(s)){s>0?o.issues.push({input:s,code:`too_big`,maximum:2**53-1,note:`Integers must be within the safe integer range.`,inst:e,origin:r,inclusive:!0,continue:!t.abort}):o.issues.push({input:s,code:`too_small`,minimum:-(2**53-1),note:`Integers must be within the safe integer range.`,inst:e,origin:r,inclusive:!0,continue:!t.abort});return}}s<i&&o.issues.push({origin:`number`,input:s,code:`too_small`,minimum:i,inclusive:!0,inst:e,continue:!t.abort}),s>a&&o.issues.push({origin:`number`,input:s,code:`too_big`,maximum:a,inclusive:!0,inst:e,continue:!t.abort})}}),Yr=v(`$ZodCheckBigIntFormat`,(e,t)=>{T.init(e,t);let[n,r]=Nt[t.format];e._zod.onattach.push(e=>{let i=e._zod.bag;i.format=t.format,i.minimum=n,i.maximum=r}),e._zod.check=i=>{let a=i.value;a<n&&i.issues.push({origin:`bigint`,input:a,code:`too_small`,minimum:n,inclusive:!0,inst:e,continue:!t.abort}),a>r&&i.issues.push({origin:`bigint`,input:a,code:`too_big`,maximum:r,inclusive:!0,inst:e,continue:!t.abort})}}),Xr=v(`$ZodCheckMaxSize`,(e,t)=>{var n;T.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!ot(t)&&t.size!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag.maximum??1/0;t.maximum<n&&(e._zod.bag.maximum=t.maximum)}),e._zod.check=n=>{let r=n.value;r.size<=t.maximum||n.issues.push({origin:Gt(r),code:`too_big`,maximum:t.maximum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),Zr=v(`$ZodCheckMinSize`,(e,t)=>{var n;T.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!ot(t)&&t.size!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag.minimum??-1/0;t.minimum>n&&(e._zod.bag.minimum=t.minimum)}),e._zod.check=n=>{let r=n.value;r.size>=t.minimum||n.issues.push({origin:Gt(r),code:`too_small`,minimum:t.minimum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),Qr=v(`$ZodCheckSizeEquals`,(e,t)=>{var n;T.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!ot(t)&&t.size!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag;n.minimum=t.size,n.maximum=t.size,n.size=t.size}),e._zod.check=n=>{let r=n.value,i=r.size;if(i===t.size)return;let a=i>t.size;n.issues.push({origin:Gt(r),...a?{code:`too_big`,maximum:t.size}:{code:`too_small`,minimum:t.size},inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort})}}),$r=v(`$ZodCheckMaxLength`,(e,t)=>{var n;T.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!ot(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag.maximum??1/0;t.maximum<n&&(e._zod.bag.maximum=t.maximum)}),e._zod.check=n=>{let r=n.value;if(r.length<=t.maximum)return;let i=Kt(r);n.issues.push({origin:i,code:`too_big`,maximum:t.maximum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),ei=v(`$ZodCheckMinLength`,(e,t)=>{var n;T.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!ot(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag.minimum??-1/0;t.minimum>n&&(e._zod.bag.minimum=t.minimum)}),e._zod.check=n=>{let r=n.value;if(r.length>=t.minimum)return;let i=Kt(r);n.issues.push({origin:i,code:`too_small`,minimum:t.minimum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),ti=v(`$ZodCheckLengthEquals`,(e,t)=>{var n;T.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!ot(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag;n.minimum=t.length,n.maximum=t.length,n.length=t.length}),e._zod.check=n=>{let r=n.value,i=r.length;if(i===t.length)return;let a=Kt(r),o=i>t.length;n.issues.push({origin:a,...o?{code:`too_big`,maximum:t.length}:{code:`too_small`,minimum:t.length},inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort})}}),ni=v(`$ZodCheckStringFormat`,(e,t)=>{var n,r;T.init(e,t),e._zod.onattach.push(e=>{let n=e._zod.bag;n.format=t.format,t.pattern&&(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})}):(r=e._zod).check??(r.check=()=>{})}),ri=v(`$ZodCheckRegex`,(e,t)=>{ni.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})}}),ii=v(`$ZodCheckLowerCase`,(e,t)=>{t.pattern??=wr,ni.init(e,t)}),ai=v(`$ZodCheckUpperCase`,(e,t)=>{t.pattern??=Tr,ni.init(e,t)}),oi=v(`$ZodCheckIncludes`,(e,t)=>{T.init(e,t);let n=Ot(t.includes),r=new RegExp(typeof t.position==`number`?`^.{${t.position}}${n}`:n);t.pattern=r,e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??=new Set,t.patterns.add(r)}),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})}}),si=v(`$ZodCheckStartsWith`,(e,t)=>{T.init(e,t);let n=RegExp(`^${Ot(t.prefix)}.*`);t.pattern??=n,e._zod.onattach.push(e=>{let t=e._zod.bag;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})}}),ci=v(`$ZodCheckEndsWith`,(e,t)=>{T.init(e,t);let n=RegExp(`.*${Ot(t.suffix)}$`);t.pattern??=n,e._zod.onattach.push(e=>{let t=e._zod.bag;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})}});function li(e,t,n){e.issues.length&&t.issues.push(...Ht(n,e.issues))}const ui=v(`$ZodCheckProperty`,(e,t)=>{T.init(e,t),e._zod.check=e=>{let n=t.schema._zod.run({value:e.value[t.property],issues:[]},{});if(n instanceof Promise)return n.then(n=>li(n,e,t.property));li(n,e,t.property)}}),di=v(`$ZodCheckMimeType`,(e,t)=>{T.init(e,t);let n=new Set(t.mime);e._zod.onattach.push(e=>{e._zod.bag.mime=t.mime}),e._zod.check=r=>{n.has(r.value.type)||r.issues.push({code:`invalid_value`,values:t.mime,input:r.value.type,inst:e,continue:!t.abort})}}),fi=v(`$ZodCheckOverwrite`,(e,t)=>{T.init(e,t),e._zod.check=e=>{e.value=t.tx(e.value)}});var pi=class{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),--this.indent}write(e){if(typeof e==`function`){e(this,{execution:`sync`}),e(this,{execution:`async`});return}let t=e.split(`
|
|
12
|
-
`).filter(e=>e),n=Math.min(...t.map(e=>e.length-e.trimStart().length)),r=t.map(e=>e.slice(n)).map(e=>` `.repeat(this.indent*2)+e);for(let e of r)this.content.push(e)}compile(){let e=Function,t=this?.args,n=[...(this?.content??[``]).map(e=>` ${e}`)];return new e(...t,n.join(`
|
|
13
|
-
`))}};const mi={major:4,minor:3,patch:5},E=v(`$ZodType`,(e,t)=>{var n;e??={},e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=mi;let r=[...e._zod.def.checks??[]];e._zod.traits.has(`$ZodCheck`)&&r.unshift(e);for(let t of r)for(let n of t._zod.onattach)n(e);if(r.length===0)(n=e._zod).deferred??(n.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let t=(e,t,n)=>{let r=Vt(e),i;for(let a of t){if(a._zod.def.when){if(!a._zod.def.when(e))continue}else if(r)continue;let t=e.issues.length,o=a._zod.check(e);if(o instanceof Promise&&n?.async===!1)throw new Je;if(i||o instanceof Promise)i=(i??Promise.resolve()).then(async()=>{await o,e.issues.length!==t&&(r||=Vt(e,t))});else{if(e.issues.length===t)continue;r||=Vt(e,t)}}return i?i.then(()=>e):e},n=(n,i,a)=>{if(Vt(n))return n.aborted=!0,n;let o=t(i,r,a);if(o instanceof Promise){if(a.async===!1)throw new Je;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(a.direction===`backward`){let 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)}let o=e._zod.parse(i,a);if(o instanceof Promise){if(a.async===!1)throw new Je;return o.then(e=>t(e,r,a))}return t(o,r,a)}}x(e,`~standard`,()=>({validate:t=>{try{let n=gn(e,t);return n.success?{value:n.data}:{issues:n.error?.issues}}catch{return vn(e,t).then(e=>e.success?{value:e.data}:{issues:e.error?.issues})}},vendor:`zod`,version:1}))}),hi=v(`$ZodString`,(e,t)=>{E.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??_r(e._zod.bag),e._zod.parse=(n,r)=>{if(t.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:e}),n}}),D=v(`$ZodStringFormat`,(e,t)=>{ni.init(e,t),hi.init(e,t)}),gi=v(`$ZodGUID`,(e,t)=>{t.pattern??=Wn,D.init(e,t)}),_i=v(`$ZodUUID`,(e,t)=>{if(t.version){let e={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(e===void 0)throw Error(`Invalid UUID version: "${t.version}"`);t.pattern??=Gn(e)}else t.pattern??=Gn();D.init(e,t)}),vi=v(`$ZodEmail`,(e,t)=>{t.pattern??=Yn,D.init(e,t)}),yi=v(`$ZodURL`,(e,t)=>{D.init(e,t),e._zod.check=n=>{try{let r=n.value.trim(),i=new URL(r);t.hostname&&(t.hostname.lastIndex=0,t.hostname.test(i.hostname)||n.issues.push({code:`invalid_format`,format:`url`,note:`Invalid hostname`,pattern:t.hostname.source,input:n.value,inst:e,continue:!t.abort})),t.protocol&&(t.protocol.lastIndex=0,t.protocol.test(i.protocol.endsWith(`:`)?i.protocol.slice(0,-1):i.protocol)||n.issues.push({code:`invalid_format`,format:`url`,note:`Invalid protocol`,pattern:t.protocol.source,input:n.value,inst:e,continue:!t.abort})),t.normalize?n.value=i.href:n.value=r;return}catch{n.issues.push({code:`invalid_format`,format:`url`,input:n.value,inst:e,continue:!t.abort})}}}),bi=v(`$ZodEmoji`,(e,t)=>{t.pattern??=tr(),D.init(e,t)}),xi=v(`$ZodNanoID`,(e,t)=>{t.pattern??=Vn,D.init(e,t)}),Si=v(`$ZodCUID`,(e,t)=>{t.pattern??=In,D.init(e,t)}),Ci=v(`$ZodCUID2`,(e,t)=>{t.pattern??=Ln,D.init(e,t)}),wi=v(`$ZodULID`,(e,t)=>{t.pattern??=Rn,D.init(e,t)}),Ti=v(`$ZodXID`,(e,t)=>{t.pattern??=zn,D.init(e,t)}),Ei=v(`$ZodKSUID`,(e,t)=>{t.pattern??=Bn,D.init(e,t)}),Di=v(`$ZodISODateTime`,(e,t)=>{t.pattern??=gr(t),D.init(e,t)}),Oi=v(`$ZodISODate`,(e,t)=>{t.pattern??=pr,D.init(e,t)}),ki=v(`$ZodISOTime`,(e,t)=>{t.pattern??=hr(t),D.init(e,t)}),Ai=v(`$ZodISODuration`,(e,t)=>{t.pattern??=Hn,D.init(e,t)}),ji=v(`$ZodIPv4`,(e,t)=>{t.pattern??=nr,D.init(e,t),e._zod.bag.format=`ipv4`}),Mi=v(`$ZodIPv6`,(e,t)=>{t.pattern??=rr,D.init(e,t),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})}}}),Ni=v(`$ZodMAC`,(e,t)=>{t.pattern??=ir(t.delimiter),D.init(e,t),e._zod.bag.format=`mac`}),Pi=v(`$ZodCIDRv4`,(e,t)=>{t.pattern??=ar,D.init(e,t)}),Fi=v(`$ZodCIDRv6`,(e,t)=>{t.pattern??=or,D.init(e,t),e._zod.check=n=>{let r=n.value.split(`/`);try{if(r.length!==2)throw Error();let[e,t]=r;if(!t)throw Error();let n=Number(t);if(`${n}`!==t||n<0||n>128)throw Error();new URL(`http://[${e}]`)}catch{n.issues.push({code:`invalid_format`,format:`cidrv6`,input:n.value,inst:e,continue:!t.abort})}}});function Ii(e){if(e===``)return!0;if(e.length%4!=0)return!1;try{return atob(e),!0}catch{return!1}}const Li=v(`$ZodBase64`,(e,t)=>{t.pattern??=sr,D.init(e,t),e._zod.bag.contentEncoding=`base64`,e._zod.check=n=>{Ii(n.value)||n.issues.push({code:`invalid_format`,format:`base64`,input:n.value,inst:e,continue:!t.abort})}});function Ri(e){if(!cr.test(e))return!1;let t=e.replace(/[-_]/g,e=>e===`-`?`+`:`/`);return Ii(t.padEnd(Math.ceil(t.length/4)*4,`=`))}const zi=v(`$ZodBase64URL`,(e,t)=>{t.pattern??=cr,D.init(e,t),e._zod.bag.contentEncoding=`base64url`,e._zod.check=n=>{Ri(n.value)||n.issues.push({code:`invalid_format`,format:`base64url`,input:n.value,inst:e,continue:!t.abort})}}),Bi=v(`$ZodE164`,(e,t)=>{t.pattern??=dr,D.init(e,t)});function Vi(e,t=null){try{let n=e.split(`.`);if(n.length!==3)return!1;let[r]=n;if(!r)return!1;let i=JSON.parse(atob(r));return!(`typ`in i&&i?.typ!==`JWT`||!i.alg||t&&(!(`alg`in i)||i.alg!==t))}catch{return!1}}const Hi=v(`$ZodJWT`,(e,t)=>{D.init(e,t),e._zod.check=n=>{Vi(n.value,t.alg)||n.issues.push({code:`invalid_format`,format:`jwt`,input:n.value,inst:e,continue:!t.abort})}}),Ui=v(`$ZodCustomStringFormat`,(e,t)=>{D.init(e,t),e._zod.check=n=>{t.fn(n.value)||n.issues.push({code:`invalid_format`,format:t.format,input:n.value,inst:e,continue:!t.abort})}}),Wi=v(`$ZodNumber`,(e,t)=>{E.init(e,t),e._zod.pattern=e._zod.bag.pattern??br,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=Number(n.value)}catch{}let i=n.value;if(typeof i==`number`&&!Number.isNaN(i)&&Number.isFinite(i))return n;let a=typeof i==`number`?Number.isNaN(i)?`NaN`:Number.isFinite(i)?void 0:`Infinity`:void 0;return n.issues.push({expected:`number`,code:`invalid_type`,input:i,inst:e,...a?{received:a}:{}}),n}}),Gi=v(`$ZodNumberFormat`,(e,t)=>{Jr.init(e,t),Wi.init(e,t)}),Ki=v(`$ZodBoolean`,(e,t)=>{E.init(e,t),e._zod.pattern=xr,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=!!n.value}catch{}let i=n.value;return typeof i==`boolean`||n.issues.push({expected:`boolean`,code:`invalid_type`,input:i,inst:e}),n}}),qi=v(`$ZodBigInt`,(e,t)=>{E.init(e,t),e._zod.pattern=vr,e._zod.parse=(n,r)=>{if(t.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:e}),n}}),Ji=v(`$ZodBigIntFormat`,(e,t)=>{Yr.init(e,t),qi.init(e,t)}),Yi=v(`$ZodSymbol`,(e,t)=>{E.init(e,t),e._zod.parse=(t,n)=>{let r=t.value;return typeof r==`symbol`||t.issues.push({expected:`symbol`,code:`invalid_type`,input:r,inst:e}),t}}),Xi=v(`$ZodUndefined`,(e,t)=>{E.init(e,t),e._zod.pattern=Cr,e._zod.values=new Set([void 0]),e._zod.optin=`optional`,e._zod.optout=`optional`,e._zod.parse=(t,n)=>{let r=t.value;return r===void 0||t.issues.push({expected:`undefined`,code:`invalid_type`,input:r,inst:e}),t}}),Zi=v(`$ZodNull`,(e,t)=>{E.init(e,t),e._zod.pattern=Sr,e._zod.values=new Set([null]),e._zod.parse=(t,n)=>{let r=t.value;return r===null||t.issues.push({expected:`null`,code:`invalid_type`,input:r,inst:e}),t}}),Qi=v(`$ZodAny`,(e,t)=>{E.init(e,t),e._zod.parse=e=>e}),$i=v(`$ZodUnknown`,(e,t)=>{E.init(e,t),e._zod.parse=e=>e}),ea=v(`$ZodNever`,(e,t)=>{E.init(e,t),e._zod.parse=(t,n)=>(t.issues.push({expected:`never`,code:`invalid_type`,input:t.value,inst:e}),t)}),ta=v(`$ZodVoid`,(e,t)=>{E.init(e,t),e._zod.parse=(t,n)=>{let r=t.value;return r===void 0||t.issues.push({expected:`void`,code:`invalid_type`,input:r,inst:e}),t}}),na=v(`$ZodDate`,(e,t)=>{E.init(e,t),e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=new Date(n.value)}catch{}let i=n.value,a=i instanceof Date;return a&&!Number.isNaN(i.getTime())||n.issues.push({expected:`date`,code:`invalid_type`,input:i,...a?{received:`Invalid Date`}:{},inst:e}),n}});function ra(e,t,n){e.issues.length&&t.issues.push(...Ht(n,e.issues)),t.value[n]=e.value}const ia=v(`$ZodArray`,(e,t)=>{E.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!Array.isArray(i))return n.issues.push({expected:`array`,code:`invalid_type`,input:i,inst:e}),n;n.value=Array(i.length);let a=[];for(let e=0;e<i.length;e++){let o=i[e],s=t.element._zod.run({value:o,issues:[]},r);s instanceof Promise?a.push(s.then(t=>ra(t,n,e))):ra(s,n,e)}return a.length?Promise.all(a).then(()=>n):n}});function aa(e,t,n,r,i){if(e.issues.length){if(i&&!(n in r))return;t.issues.push(...Ht(n,e.issues))}e.value===void 0?n in r&&(t.value[n]=void 0):t.value[n]=e.value}function oa(e){let t=Object.keys(e.shape);for(let n of t)if(!e.shape?.[n]?._zod?.traits?.has(`$ZodType`))throw Error(`Invalid element at key "${n}": expected a Zod schema`);let n=jt(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(n)}}function sa(e,t,n,r,i,a){let o=[],s=i.keySet,c=i.catchall._zod,l=c.def.type,u=c.optout===`optional`;for(let i in t){if(s.has(i))continue;if(l===`never`){o.push(i);continue}let a=c.run({value:t[i],issues:[]},r);a instanceof Promise?e.push(a.then(e=>aa(e,n,i,t,u))):aa(a,n,i,t,u)}return o.length&&n.issues.push({code:`unrecognized_keys`,keys:o,input:t,inst:a}),e.length?Promise.all(e).then(()=>n):n}const ca=v(`$ZodObject`,(e,t)=>{if(E.init(e,t),!Object.getOwnPropertyDescriptor(t,`shape`)?.get){let e=t.shape;Object.defineProperty(t,`shape`,{get:()=>{let n={...e};return Object.defineProperty(t,`shape`,{value:n}),n}})}let n=at(()=>oa(t));x(e._zod,`propValues`,()=>{let e=t.shape,n={};for(let t in e){let r=e[t]._zod;if(r.values){n[t]??(n[t]=new Set);for(let e of r.values)n[t].add(e)}}return n});let r=bt,i=t.catchall,a;e._zod.parse=(t,o)=>{a??=n.value;let s=t.value;if(!r(s))return t.issues.push({expected:`object`,code:`invalid_type`,input:s,inst:e}),t;t.value={};let c=[],l=a.shape;for(let e of a.keys){let n=l[e],r=n._zod.optout===`optional`,i=n._zod.run({value:s[e],issues:[]},o);i instanceof Promise?c.push(i.then(n=>aa(n,t,e,s,r))):aa(i,t,e,s,r)}return i?sa(c,s,t,o,n.value,e):c.length?Promise.all(c).then(()=>t):t}}),la=v(`$ZodObjectJIT`,(e,t)=>{ca.init(e,t);let n=e._zod.parse,r=at(()=>oa(t)),i=e=>{let t=new pi([`shape`,`payload`,`ctx`]),n=r.value,i=e=>{let t=_t(e);return`shape[${t}]._zod.run({ value: input[${t}], issues: [] }, ctx)`};t.write(`const input = payload.value;`);let a=Object.create(null),o=0;for(let e of n.keys)a[e]=`key_${o++}`;t.write(`const newResult = {};`);for(let r of n.keys){let n=a[r],o=_t(r),s=e[r]?._zod?.optout===`optional`;t.write(`const ${n} = ${i(r)};`),s?t.write(`
|
|
14
|
-
if (${n}.issues.length) {
|
|
15
|
-
if (${o} in input) {
|
|
16
|
-
payload.issues = payload.issues.concat(${n}.issues.map(iss => ({
|
|
17
|
-
...iss,
|
|
18
|
-
path: iss.path ? [${o}, ...iss.path] : [${o}]
|
|
19
|
-
})));
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
|
|
23
|
-
if (${n}.value === undefined) {
|
|
24
|
-
if (${o} in input) {
|
|
25
|
-
newResult[${o}] = undefined;
|
|
26
|
-
}
|
|
27
|
-
} else {
|
|
28
|
-
newResult[${o}] = ${n}.value;
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
`):t.write(`
|
|
32
|
-
if (${n}.issues.length) {
|
|
33
|
-
payload.issues = payload.issues.concat(${n}.issues.map(iss => ({
|
|
34
|
-
...iss,
|
|
35
|
-
path: iss.path ? [${o}, ...iss.path] : [${o}]
|
|
36
|
-
})));
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
if (${n}.value === undefined) {
|
|
40
|
-
if (${o} in input) {
|
|
41
|
-
newResult[${o}] = undefined;
|
|
42
|
-
}
|
|
43
|
-
} else {
|
|
44
|
-
newResult[${o}] = ${n}.value;
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
`)}t.write(`payload.value = newResult;`),t.write(`return payload;`);let s=t.compile();return(t,n)=>s(e,t,n)},a,o=bt,s=!Xe.jitless,c=s&&xt.value,l=t.catchall,u;e._zod.parse=(d,f)=>{u??=r.value;let p=d.value;return o(p)?s&&c&&f?.async===!1&&f.jitless!==!0?(a||=i(t.shape),d=a(d,f),l?sa([],p,d,f,u,e):d):n(d,f):(d.issues.push({expected:`object`,code:`invalid_type`,input:p,inst:e}),d)}});function ua(e,t,n,r){for(let n of e)if(n.issues.length===0)return t.value=n.value,t;let i=e.filter(e=>!Vt(e));return i.length===1?(t.value=i[0].value,i[0]):(t.issues.push({code:`invalid_union`,input:t.value,inst:n,errors:e.map(e=>e.issues.map(e=>Wt(e,r,y())))}),t)}const da=v(`$ZodUnion`,(e,t)=>{E.init(e,t),x(e._zod,`optin`,()=>t.options.some(e=>e._zod.optin===`optional`)?`optional`:void 0),x(e._zod,`optout`,()=>t.options.some(e=>e._zod.optout===`optional`)?`optional`:void 0),x(e._zod,`values`,()=>{if(t.options.every(e=>e._zod.values))return new Set(t.options.flatMap(e=>Array.from(e._zod.values)))}),x(e._zod,`pattern`,()=>{if(t.options.every(e=>e._zod.pattern)){let e=t.options.map(e=>e._zod.pattern);return RegExp(`^(${e.map(e=>st(e.source)).join(`|`)})$`)}});let n=t.options.length===1,r=t.options[0]._zod.run;e._zod.parse=(i,a)=>{if(n)return r(i,a);let o=!1,s=[];for(let e of t.options){let t=e._zod.run({value:i.value,issues:[]},a);if(t instanceof Promise)s.push(t),o=!0;else{if(t.issues.length===0)return t;s.push(t)}}return o?Promise.all(s).then(t=>ua(t,i,e,a)):ua(s,i,e,a)}});function fa(e,t,n,r){let i=e.filter(e=>e.issues.length===0);return i.length===1?(t.value=i[0].value,t):(i.length===0?t.issues.push({code:`invalid_union`,input:t.value,inst:n,errors:e.map(e=>e.issues.map(e=>Wt(e,r,y())))}):t.issues.push({code:`invalid_union`,input:t.value,inst:n,errors:[],inclusive:!1}),t)}const pa=v(`$ZodXor`,(e,t)=>{da.init(e,t),t.inclusive=!1;let n=t.options.length===1,r=t.options[0]._zod.run;e._zod.parse=(i,a)=>{if(n)return r(i,a);let o=!1,s=[];for(let e of t.options){let t=e._zod.run({value:i.value,issues:[]},a);t instanceof Promise?(s.push(t),o=!0):s.push(t)}return o?Promise.all(s).then(t=>fa(t,i,e,a)):fa(s,i,e,a)}}),ma=v(`$ZodDiscriminatedUnion`,(e,t)=>{t.inclusive=!1,da.init(e,t);let n=e._zod.parse;x(e._zod,`propValues`,()=>{let e={};for(let n of t.options){let r=n._zod.propValues;if(!r||Object.keys(r).length===0)throw Error(`Invalid discriminated union option at index "${t.options.indexOf(n)}"`);for(let[t,n]of Object.entries(r)){e[t]||(e[t]=new Set);for(let r of n)e[t].add(r)}}return e});let r=at(()=>{let e=t.options,n=new Map;for(let r of e){let e=r._zod.propValues?.[t.discriminator];if(!e||e.size===0)throw Error(`Invalid discriminated union option at index "${t.options.indexOf(r)}"`);for(let t of e){if(n.has(t))throw Error(`Duplicate discriminator value "${String(t)}"`);n.set(t,r)}}return n});e._zod.parse=(i,a)=>{let o=i.value;if(!bt(o))return i.issues.push({code:`invalid_type`,expected:`object`,input:o,inst:e}),i;let s=r.value.get(o?.[t.discriminator]);return s?s._zod.run(i,a):t.unionFallback?n(i,a):(i.issues.push({code:`invalid_union`,errors:[],note:`No matching discriminator`,discriminator:t.discriminator,input:o,path:[t.discriminator],inst:e}),i)}}),ha=v(`$ZodIntersection`,(e,t)=>{E.init(e,t),e._zod.parse=(e,n)=>{let r=e.value,i=t.left._zod.run({value:r,issues:[]},n),a=t.right._zod.run({value:r,issues:[]},n);return i instanceof Promise||a instanceof Promise?Promise.all([i,a]).then(([t,n])=>_a(e,t,n)):_a(e,i,a)}});function ga(e,t){if(e===t||e instanceof Date&&t instanceof Date&&+e==+t)return{valid:!0,data:e};if(St(e)&&St(t)){let n=Object.keys(t),r=Object.keys(e).filter(e=>n.indexOf(e)!==-1),i={...e,...t};for(let n of r){let r=ga(e[n],t[n]);if(!r.valid)return{valid:!1,mergeErrorPath:[n,...r.mergeErrorPath]};i[n]=r.data}return{valid:!0,data:i}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};let n=[];for(let r=0;r<e.length;r++){let i=e[r],a=t[r],o=ga(i,a);if(!o.valid)return{valid:!1,mergeErrorPath:[r,...o.mergeErrorPath]};n.push(o.data)}return{valid:!0,data:n}}return{valid:!1,mergeErrorPath:[]}}function _a(e,t,n){let r=new Map,i;for(let n of t.issues)if(n.code===`unrecognized_keys`){i??=n;for(let e of n.keys)r.has(e)||r.set(e,{}),r.get(e).l=!0}else e.issues.push(n);for(let t of n.issues)if(t.code===`unrecognized_keys`)for(let e of t.keys)r.has(e)||r.set(e,{}),r.get(e).r=!0;else e.issues.push(t);let a=[...r].filter(([,e])=>e.l&&e.r).map(([e])=>e);if(a.length&&i&&e.issues.push({...i,keys:a}),Vt(e))return e;let o=ga(t.value,n.value);if(!o.valid)throw Error(`Unmergable intersection. Error path: ${JSON.stringify(o.mergeErrorPath)}`);return e.value=o.data,e}const va=v(`$ZodTuple`,(e,t)=>{E.init(e,t);let n=t.items;e._zod.parse=(r,i)=>{let a=r.value;if(!Array.isArray(a))return r.issues.push({input:a,inst:e,expected:`tuple`,code:`invalid_type`}),r;r.value=[];let o=[],s=[...n].reverse().findIndex(e=>e._zod.optin!==`optional`),c=s===-1?0:n.length-s;if(!t.rest){let t=a.length>n.length,i=a.length<c-1;if(t||i)return r.issues.push({...t?{code:`too_big`,maximum:n.length,inclusive:!0}:{code:`too_small`,minimum:n.length},input:a,inst:e,origin:`array`}),r}let l=-1;for(let e of n){if(l++,l>=a.length&&l>=c)continue;let t=e._zod.run({value:a[l],issues:[]},i);t instanceof Promise?o.push(t.then(e=>ya(e,r,l))):ya(t,r,l)}if(t.rest){let e=a.slice(n.length);for(let n of e){l++;let e=t.rest._zod.run({value:n,issues:[]},i);e instanceof Promise?o.push(e.then(e=>ya(e,r,l))):ya(e,r,l)}}return o.length?Promise.all(o).then(()=>r):r}});function ya(e,t,n){e.issues.length&&t.issues.push(...Ht(n,e.issues)),t.value[n]=e.value}const ba=v(`$ZodRecord`,(e,t)=>{E.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!St(i))return n.issues.push({expected:`record`,code:`invalid_type`,input:i,inst:e}),n;let a=[],o=t.keyType._zod.values;if(o){n.value={};let s=new Set;for(let e of o)if(typeof e==`string`||typeof e==`number`||typeof e==`symbol`){s.add(typeof e==`number`?e.toString():e);let o=t.valueType._zod.run({value:i[e],issues:[]},r);o instanceof Promise?a.push(o.then(t=>{t.issues.length&&n.issues.push(...Ht(e,t.issues)),n.value[e]=t.value})):(o.issues.length&&n.issues.push(...Ht(e,o.issues)),n.value[e]=o.value)}let c;for(let e in i)s.has(e)||(c??=[],c.push(e));c&&c.length>0&&n.issues.push({code:`unrecognized_keys`,input:i,inst:e,keys:c})}else{n.value={};for(let o of Reflect.ownKeys(i)){if(o===`__proto__`)continue;let s=t.keyType._zod.run({value:o,issues:[]},r);if(s instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);if(typeof o==`string`&&br.test(o)&&s.issues.length&&s.issues.some(e=>e.code===`invalid_type`&&e.expected===`number`)){let e=t.keyType._zod.run({value:Number(o),issues:[]},r);if(e instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);e.issues.length===0&&(s=e)}if(s.issues.length){t.mode===`loose`?n.value[o]=i[o]:n.issues.push({code:`invalid_key`,origin:`record`,issues:s.issues.map(e=>Wt(e,r,y())),input:o,path:[o],inst:e});continue}let c=t.valueType._zod.run({value:i[o],issues:[]},r);c instanceof Promise?a.push(c.then(e=>{e.issues.length&&n.issues.push(...Ht(o,e.issues)),n.value[s.value]=e.value})):(c.issues.length&&n.issues.push(...Ht(o,c.issues)),n.value[s.value]=c.value)}}return a.length?Promise.all(a).then(()=>n):n}}),xa=v(`$ZodMap`,(e,t)=>{E.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!(i instanceof Map))return n.issues.push({expected:`map`,code:`invalid_type`,input:i,inst:e}),n;let a=[];n.value=new Map;for(let[o,s]of i){let c=t.keyType._zod.run({value:o,issues:[]},r),l=t.valueType._zod.run({value:s,issues:[]},r);c instanceof Promise||l instanceof Promise?a.push(Promise.all([c,l]).then(([t,a])=>{Sa(t,a,n,o,i,e,r)})):Sa(c,l,n,o,i,e,r)}return a.length?Promise.all(a).then(()=>n):n}});function Sa(e,t,n,r,i,a,o){e.issues.length&&(Et.has(typeof r)?n.issues.push(...Ht(r,e.issues)):n.issues.push({code:`invalid_key`,origin:`map`,input:i,inst:a,issues:e.issues.map(e=>Wt(e,o,y()))})),t.issues.length&&(Et.has(typeof r)?n.issues.push(...Ht(r,t.issues)):n.issues.push({origin:`map`,code:`invalid_element`,input:i,inst:a,key:r,issues:t.issues.map(e=>Wt(e,o,y()))})),n.value.set(e.value,t.value)}const Ca=v(`$ZodSet`,(e,t)=>{E.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!(i instanceof Set))return n.issues.push({input:i,inst:e,expected:`set`,code:`invalid_type`}),n;let a=[];n.value=new Set;for(let e of i){let i=t.valueType._zod.run({value:e,issues:[]},r);i instanceof Promise?a.push(i.then(e=>wa(e,n))):wa(i,n)}return a.length?Promise.all(a).then(()=>n):n}});function wa(e,t){e.issues.length&&t.issues.push(...e.issues),t.value.add(e.value)}const Ta=v(`$ZodEnum`,(e,t)=>{E.init(e,t);let n=rt(t.entries),r=new Set(n);e._zod.values=r,e._zod.pattern=RegExp(`^(${n.filter(e=>Et.has(typeof e)).map(e=>typeof e==`string`?Ot(e):e.toString()).join(`|`)})$`),e._zod.parse=(t,i)=>{let a=t.value;return r.has(a)||t.issues.push({code:`invalid_value`,values:n,input:a,inst:e}),t}}),Ea=v(`$ZodLiteral`,(e,t)=>{if(E.init(e,t),t.values.length===0)throw Error(`Cannot create literal schema with no valid values`);let n=new Set(t.values);e._zod.values=n,e._zod.pattern=RegExp(`^(${t.values.map(e=>typeof e==`string`?Ot(e):e?Ot(e.toString()):String(e)).join(`|`)})$`),e._zod.parse=(r,i)=>{let a=r.value;return n.has(a)||r.issues.push({code:`invalid_value`,values:t.values,input:a,inst:e}),r}}),Da=v(`$ZodFile`,(e,t)=>{E.init(e,t),e._zod.parse=(t,n)=>{let r=t.value;return r instanceof File||t.issues.push({expected:`file`,code:`invalid_type`,input:r,inst:e}),t}}),Oa=v(`$ZodTransform`,(e,t)=>{E.init(e,t),e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new Ye(e.constructor.name);let i=t.transform(n.value,n);if(r.async)return(i instanceof Promise?i:Promise.resolve(i)).then(e=>(n.value=e,n));if(i instanceof Promise)throw new Je;return n.value=i,n}});function ka(e,t){return e.issues.length&&t===void 0?{issues:[],value:void 0}:e}const Aa=v(`$ZodOptional`,(e,t)=>{E.init(e,t),e._zod.optin=`optional`,e._zod.optout=`optional`,x(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),x(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${st(e.source)})?$`):void 0}),e._zod.parse=(e,n)=>{if(t.innerType._zod.optin===`optional`){let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(t=>ka(t,e.value)):ka(r,e.value)}return e.value===void 0?e:t.innerType._zod.run(e,n)}}),ja=v(`$ZodExactOptional`,(e,t)=>{Aa.init(e,t),x(e._zod,`values`,()=>t.innerType._zod.values),x(e._zod,`pattern`,()=>t.innerType._zod.pattern),e._zod.parse=(e,n)=>t.innerType._zod.run(e,n)}),Ma=v(`$ZodNullable`,(e,t)=>{E.init(e,t),x(e._zod,`optin`,()=>t.innerType._zod.optin),x(e._zod,`optout`,()=>t.innerType._zod.optout),x(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${st(e.source)}|null)$`):void 0}),x(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0),e._zod.parse=(e,n)=>e.value===null?e:t.innerType._zod.run(e,n)}),Na=v(`$ZodDefault`,(e,t)=>{E.init(e,t),e._zod.optin=`optional`,x(e._zod,`values`,()=>t.innerType._zod.values),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);if(e.value===void 0)return e.value=t.defaultValue,e;let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(e=>Pa(e,t)):Pa(r,t)}});function Pa(e,t){return e.value===void 0&&(e.value=t.defaultValue),e}const Fa=v(`$ZodPrefault`,(e,t)=>{E.init(e,t),e._zod.optin=`optional`,x(e._zod,`values`,()=>t.innerType._zod.values),e._zod.parse=(e,n)=>(n.direction===`backward`||e.value===void 0&&(e.value=t.defaultValue),t.innerType._zod.run(e,n))}),Ia=v(`$ZodNonOptional`,(e,t)=>{E.init(e,t),x(e._zod,`values`,()=>{let e=t.innerType._zod.values;return e?new Set([...e].filter(e=>e!==void 0)):void 0}),e._zod.parse=(n,r)=>{let i=t.innerType._zod.run(n,r);return i instanceof Promise?i.then(t=>La(t,e)):La(i,e)}});function La(e,t){return!e.issues.length&&e.value===void 0&&e.issues.push({code:`invalid_type`,expected:`nonoptional`,input:e.value,inst:t}),e}const Ra=v(`$ZodSuccess`,(e,t)=>{E.init(e,t),e._zod.parse=(e,n)=>{if(n.direction===`backward`)throw new Ye(`ZodSuccess`);let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(t=>(e.value=t.issues.length===0,e)):(e.value=r.issues.length===0,e)}}),za=v(`$ZodCatch`,(e,t)=>{E.init(e,t),x(e._zod,`optin`,()=>t.innerType._zod.optin),x(e._zod,`optout`,()=>t.innerType._zod.optout),x(e._zod,`values`,()=>t.innerType._zod.values),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(r=>(e.value=r.value,r.issues.length&&(e.value=t.catchValue({...e,error:{issues:r.issues.map(e=>Wt(e,n,y()))},input:e.value}),e.issues=[]),e)):(e.value=r.value,r.issues.length&&(e.value=t.catchValue({...e,error:{issues:r.issues.map(e=>Wt(e,n,y()))},input:e.value}),e.issues=[]),e)}}),Ba=v(`$ZodNaN`,(e,t)=>{E.init(e,t),e._zod.parse=(t,n)=>((typeof t.value!=`number`||!Number.isNaN(t.value))&&t.issues.push({input:t.value,inst:e,expected:`nan`,code:`invalid_type`}),t)}),Va=v(`$ZodPipe`,(e,t)=>{E.init(e,t),x(e._zod,`values`,()=>t.in._zod.values),x(e._zod,`optin`,()=>t.in._zod.optin),x(e._zod,`optout`,()=>t.out._zod.optout),x(e._zod,`propValues`,()=>t.in._zod.propValues),e._zod.parse=(e,n)=>{if(n.direction===`backward`){let r=t.out._zod.run(e,n);return r instanceof Promise?r.then(e=>Ha(e,t.in,n)):Ha(r,t.in,n)}let r=t.in._zod.run(e,n);return r instanceof Promise?r.then(e=>Ha(e,t.out,n)):Ha(r,t.out,n)}});function Ha(e,t,n){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues},n)}const Ua=v(`$ZodCodec`,(e,t)=>{E.init(e,t),x(e._zod,`values`,()=>t.in._zod.values),x(e._zod,`optin`,()=>t.in._zod.optin),x(e._zod,`optout`,()=>t.out._zod.optout),x(e._zod,`propValues`,()=>t.in._zod.propValues),e._zod.parse=(e,n)=>{if((n.direction||`forward`)===`forward`){let r=t.in._zod.run(e,n);return r instanceof Promise?r.then(e=>Wa(e,t,n)):Wa(r,t,n)}else{let r=t.out._zod.run(e,n);return r instanceof Promise?r.then(e=>Wa(e,t,n)):Wa(r,t,n)}}});function Wa(e,t,n){if(e.issues.length)return e.aborted=!0,e;if((n.direction||`forward`)===`forward`){let r=t.transform(e.value,e);return r instanceof Promise?r.then(r=>Ga(e,r,t.out,n)):Ga(e,r,t.out,n)}else{let r=t.reverseTransform(e.value,e);return r instanceof Promise?r.then(r=>Ga(e,r,t.in,n)):Ga(e,r,t.in,n)}}function Ga(e,t,n,r){return e.issues.length?(e.aborted=!0,e):n._zod.run({value:t,issues:e.issues},r)}const Ka=v(`$ZodReadonly`,(e,t)=>{E.init(e,t),x(e._zod,`propValues`,()=>t.innerType._zod.propValues),x(e._zod,`values`,()=>t.innerType._zod.values),x(e._zod,`optin`,()=>t.innerType?._zod?.optin),x(e._zod,`optout`,()=>t.innerType?._zod?.optout),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(qa):qa(r)}});function qa(e){return e.value=Object.freeze(e.value),e}const Ja=v(`$ZodTemplateLiteral`,(e,t)=>{E.init(e,t);let n=[];for(let e of t.parts)if(typeof e==`object`&&e){if(!e._zod.pattern)throw Error(`Invalid template literal part, no pattern found: ${[...e._zod.traits].shift()}`);let t=e._zod.pattern instanceof RegExp?e._zod.pattern.source:e._zod.pattern;if(!t)throw Error(`Invalid template literal part: ${e._zod.traits}`);let r=t.startsWith(`^`)?1:0,i=t.endsWith(`$`)?t.length-1:t.length;n.push(t.slice(r,i))}else if(e===null||Dt.has(typeof e))n.push(Ot(`${e}`));else throw Error(`Invalid template literal part: ${e}`);e._zod.pattern=RegExp(`^${n.join(``)}$`),e._zod.parse=(n,r)=>typeof n.value==`string`?(e._zod.pattern.lastIndex=0,e._zod.pattern.test(n.value)||n.issues.push({input:n.value,inst:e,code:`invalid_format`,format:t.format??`template_literal`,pattern:e._zod.pattern.source}),n):(n.issues.push({input:n.value,inst:e,expected:`string`,code:`invalid_type`}),n)}),Ya=v(`$ZodFunction`,(e,t)=>(E.init(e,t),e._def=t,e._zod.def=t,e.implement=t=>{if(typeof t!=`function`)throw Error(`implement() must be called with a function`);return function(...n){let r=e._def.input?fn(e._def.input,n):n,i=Reflect.apply(t,this,r);return e._def.output?fn(e._def.output,i):i}},e.implementAsync=t=>{if(typeof t!=`function`)throw Error(`implementAsync() must be called with a function`);return async function(...n){let r=e._def.input?await mn(e._def.input,n):n,i=await Reflect.apply(t,this,r);return e._def.output?await mn(e._def.output,i):i}},e._zod.parse=(t,n)=>typeof t.value==`function`?(e._def.output&&e._def.output._zod.def.type===`promise`?t.value=e.implementAsync(t.value):t.value=e.implement(t.value),t):(t.issues.push({code:`invalid_type`,expected:`function`,input:t.value,inst:e}),t),e.input=(...t)=>{let n=e.constructor;return Array.isArray(t[0])?new n({type:`function`,input:new va({type:`tuple`,items:t[0],rest:t[1]}),output:e._def.output}):new n({type:`function`,input:t[0],output:e._def.output})},e.output=t=>{let n=e.constructor;return new n({type:`function`,input:e._def.input,output:t})},e)),Xa=v(`$ZodPromise`,(e,t)=>{E.init(e,t),e._zod.parse=(e,n)=>Promise.resolve(e.value).then(e=>t.innerType._zod.run({value:e,issues:[]},n))}),Za=v(`$ZodLazy`,(e,t)=>{E.init(e,t),x(e._zod,`innerType`,()=>t.getter()),x(e._zod,`pattern`,()=>e._zod.innerType?._zod?.pattern),x(e._zod,`propValues`,()=>e._zod.innerType?._zod?.propValues),x(e._zod,`optin`,()=>e._zod.innerType?._zod?.optin??void 0),x(e._zod,`optout`,()=>e._zod.innerType?._zod?.optout??void 0),e._zod.parse=(t,n)=>e._zod.innerType._zod.run(t,n)}),Qa=v(`$ZodCustom`,(e,t)=>{T.init(e,t),E.init(e,t),e._zod.parse=(e,t)=>e,e._zod.check=n=>{let r=n.value,i=t.fn(r);if(i instanceof Promise)return i.then(t=>$a(t,n,r,e));$a(i,n,r,e)}});function $a(e,t,n,r){if(!e){let e={code:`custom`,input:n,inst:r,path:[...r._zod.def.path??[]],continue:!r._zod.def.abort};r._zod.def.params&&(e.params=r._zod.def.params),t.issues.push(qt(e))}}const eo=()=>{let e={string:{unit:`حرف`,verb:`أن يحوي`},file:{unit:`بايت`,verb:`أن يحوي`},array:{unit:`عنصر`,verb:`أن يحوي`},set:{unit:`عنصر`,verb:`أن يحوي`}};function t(t){return e[t]??null}let n={regex:`مدخل`,email:`بريد إلكتروني`,url:`رابط`,emoji:`إيموجي`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`تاريخ ووقت بمعيار ISO`,date:`تاريخ بمعيار ISO`,time:`وقت بمعيار ISO`,duration:`مدة بمعيار ISO`,ipv4:`عنوان IPv4`,ipv6:`عنوان IPv6`,cidrv4:`مدى عناوين بصيغة IPv4`,cidrv6:`مدى عناوين بصيغة IPv6`,base64:`نَص بترميز base64-encoded`,base64url:`نَص بترميز base64url-encoded`,json_string:`نَص على هيئة JSON`,e164:`رقم هاتف بمعيار E.164`,jwt:`JWT`,template_literal:`مدخل`},r={nan:`NaN`};return e=>{switch(e.code){case`invalid_type`:{let t=r[e.expected]??e.expected,n=w(e.input),i=r[n]??n;return/^[A-Z]/.test(e.expected)?`مدخلات غير مقبولة: يفترض إدخال instanceof ${e.expected}، ولكن تم إدخال ${i}`:`مدخلات غير مقبولة: يفترض إدخال ${t}، ولكن تم إدخال ${i}`}case`invalid_value`:return e.values.length===1?`مدخلات غير مقبولة: يفترض إدخال ${C(e.values[0])}`:`اختيار غير مقبول: يتوقع انتقاء أحد هذه الخيارات: ${b(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?` أكبر من اللازم: يفترض أن تكون ${e.origin??`القيمة`} ${n} ${e.maximum.toString()} ${r.unit??`عنصر`}`:`أكبر من اللازم: يفترض أن تكون ${e.origin??`القيمة`} ${n} ${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`أصغر من اللازم: يفترض لـ ${e.origin} أن يكون ${n} ${e.minimum.toString()} ${r.unit}`:`أصغر من اللازم: يفترض لـ ${e.origin} أن يكون ${n} ${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`نَص غير مقبول: يجب أن يبدأ بـ "${e.prefix}"`:t.format===`ends_with`?`نَص غير مقبول: يجب أن ينتهي بـ "${t.suffix}"`:t.format===`includes`?`نَص غير مقبول: يجب أن يتضمَّن "${t.includes}"`:t.format===`regex`?`نَص غير مقبول: يجب أن يطابق النمط ${t.pattern}`:`${n[t.format]??e.format} غير مقبول`}case`not_multiple_of`:return`رقم غير مقبول: يجب أن يكون من مضاعفات ${e.divisor}`;case`unrecognized_keys`:return`معرف${e.keys.length>1?`ات`:``} غريب${e.keys.length>1?`ة`:``}: ${b(e.keys,`، `)}`;case`invalid_key`:return`معرف غير مقبول في ${e.origin}`;case`invalid_union`:return`مدخل غير مقبول`;case`invalid_element`:return`مدخل غير مقبول في ${e.origin}`;default:return`مدخل غير مقبول`}}};function to(){return{localeError:eo()}}const no=()=>{let e={string:{unit:`simvol`,verb:`olmalıdır`},file:{unit:`bayt`,verb:`olmalıdır`},array:{unit:`element`,verb:`olmalıdır`},set:{unit:`element`,verb:`olmalıdır`}};function t(t){return e[t]??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`},r={nan:`NaN`};return e=>{switch(e.code){case`invalid_type`:{let t=r[e.expected]??e.expected,n=w(e.input),i=r[n]??n;return/^[A-Z]/.test(e.expected)?`Yanlış dəyər: gözlənilən instanceof ${e.expected}, daxil olan ${i}`:`Yanlış dəyər: gözlənilən ${t}, daxil olan ${i}`}case`invalid_value`:return e.values.length===1?`Yanlış dəyər: gözlənilən ${C(e.values[0])}`:`Yanlış seçim: aşağıdakılardan biri olmalıdır: ${b(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Çox böyük: gözlənilən ${e.origin??`dəyər`} ${n}${e.maximum.toString()} ${r.unit??`element`}`:`Çox böyük: gözlənilən ${e.origin??`dəyər`} ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Çox kiçik: gözlənilən ${e.origin} ${n}${e.minimum.toString()} ${r.unit}`:`Çox kiçik: gözlənilən ${e.origin} ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Yanlış mətn: "${t.prefix}" ilə başlamalıdır`:t.format===`ends_with`?`Yanlış mətn: "${t.suffix}" ilə bitməlidir`:t.format===`includes`?`Yanlış mətn: "${t.includes}" daxil olmalıdır`:t.format===`regex`?`Yanlış mətn: ${t.pattern} şablonuna uyğun olmalıdır`:`Yanlış ${n[t.format]??e.format}`}case`not_multiple_of`:return`Yanlış ədəd: ${e.divisor} ilə bölünə bilən olmalıdır`;case`unrecognized_keys`:return`Tanınmayan açar${e.keys.length>1?`lar`:``}: ${b(e.keys,`, `)}`;case`invalid_key`:return`${e.origin} daxilində yanlış açar`;case`invalid_union`:return`Yanlış dəyər`;case`invalid_element`:return`${e.origin} daxilində yanlış dəyər`;default:return`Yanlış dəyər`}}};function ro(){return{localeError:no()}}function io(e,t,n,r){let i=Math.abs(e),a=i%10,o=i%100;return o>=11&&o<=19?r:a===1?t:a>=2&&a<=4?n:r}const ao=()=>{let e={string:{unit:{one:`сімвал`,few:`сімвалы`,many:`сімвалаў`},verb:`мець`},array:{unit:{one:`элемент`,few:`элементы`,many:`элементаў`},verb:`мець`},set:{unit:{one:`элемент`,few:`элементы`,many:`элементаў`},verb:`мець`},file:{unit:{one:`байт`,few:`байты`,many:`байтаў`},verb:`мець`}};function t(t){return e[t]??null}let n={regex:`увод`,email:`email адрас`,url:`URL`,emoji:`эмодзі`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO дата і час`,date:`ISO дата`,time:`ISO час`,duration:`ISO працягласць`,ipv4:`IPv4 адрас`,ipv6:`IPv6 адрас`,cidrv4:`IPv4 дыяпазон`,cidrv6:`IPv6 дыяпазон`,base64:`радок у фармаце base64`,base64url:`радок у фармаце base64url`,json_string:`JSON радок`,e164:`нумар E.164`,jwt:`JWT`,template_literal:`увод`},r={nan:`NaN`,number:`лік`,array:`масіў`};return e=>{switch(e.code){case`invalid_type`:{let t=r[e.expected]??e.expected,n=w(e.input),i=r[n]??n;return/^[A-Z]/.test(e.expected)?`Няправільны ўвод: чакаўся instanceof ${e.expected}, атрымана ${i}`:`Няправільны ўвод: чакаўся ${t}, атрымана ${i}`}case`invalid_value`:return e.values.length===1?`Няправільны ўвод: чакалася ${C(e.values[0])}`:`Няправільны варыянт: чакаўся адзін з ${b(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);if(r){let t=io(Number(e.maximum),r.unit.one,r.unit.few,r.unit.many);return`Занадта вялікі: чакалася, што ${e.origin??`значэнне`} павінна ${r.verb} ${n}${e.maximum.toString()} ${t}`}return`Занадта вялікі: чакалася, што ${e.origin??`значэнне`} павінна быць ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);if(r){let t=io(Number(e.minimum),r.unit.one,r.unit.few,r.unit.many);return`Занадта малы: чакалася, што ${e.origin} павінна ${r.verb} ${n}${e.minimum.toString()} ${t}`}return`Занадта малы: чакалася, што ${e.origin} павінна быць ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Няправільны радок: павінен пачынацца з "${t.prefix}"`:t.format===`ends_with`?`Няправільны радок: павінен заканчвацца на "${t.suffix}"`:t.format===`includes`?`Няправільны радок: павінен змяшчаць "${t.includes}"`:t.format===`regex`?`Няправільны радок: павінен адпавядаць шаблону ${t.pattern}`:`Няправільны ${n[t.format]??e.format}`}case`not_multiple_of`:return`Няправільны лік: павінен быць кратным ${e.divisor}`;case`unrecognized_keys`:return`Нераспазнаны ${e.keys.length>1?`ключы`:`ключ`}: ${b(e.keys,`, `)}`;case`invalid_key`:return`Няправільны ключ у ${e.origin}`;case`invalid_union`:return`Няправільны ўвод`;case`invalid_element`:return`Няправільнае значэнне ў ${e.origin}`;default:return`Няправільны ўвод`}}};function oo(){return{localeError:ao()}}const so=()=>{let e={string:{unit:`символа`,verb:`да съдържа`},file:{unit:`байта`,verb:`да съдържа`},array:{unit:`елемента`,verb:`да съдържа`},set:{unit:`елемента`,verb:`да съдържа`}};function t(t){return e[t]??null}let n={regex:`вход`,email:`имейл адрес`,url:`URL`,emoji:`емоджи`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO време`,date:`ISO дата`,time:`ISO време`,duration:`ISO продължителност`,ipv4:`IPv4 адрес`,ipv6:`IPv6 адрес`,cidrv4:`IPv4 диапазон`,cidrv6:`IPv6 диапазон`,base64:`base64-кодиран низ`,base64url:`base64url-кодиран низ`,json_string:`JSON низ`,e164:`E.164 номер`,jwt:`JWT`,template_literal:`вход`},r={nan:`NaN`,number:`число`,array:`масив`};return e=>{switch(e.code){case`invalid_type`:{let t=r[e.expected]??e.expected,n=w(e.input),i=r[n]??n;return/^[A-Z]/.test(e.expected)?`Невалиден вход: очакван instanceof ${e.expected}, получен ${i}`:`Невалиден вход: очакван ${t}, получен ${i}`}case`invalid_value`:return e.values.length===1?`Невалиден вход: очакван ${C(e.values[0])}`:`Невалидна опция: очаквано едно от ${b(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Твърде голямо: очаква се ${e.origin??`стойност`} да съдържа ${n}${e.maximum.toString()} ${r.unit??`елемента`}`:`Твърде голямо: очаква се ${e.origin??`стойност`} да бъде ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Твърде малко: очаква се ${e.origin} да съдържа ${n}${e.minimum.toString()} ${r.unit}`:`Твърде малко: очаква се ${e.origin} да бъде ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;if(t.format===`starts_with`)return`Невалиден низ: трябва да започва с "${t.prefix}"`;if(t.format===`ends_with`)return`Невалиден низ: трябва да завършва с "${t.suffix}"`;if(t.format===`includes`)return`Невалиден низ: трябва да включва "${t.includes}"`;if(t.format===`regex`)return`Невалиден низ: трябва да съвпада с ${t.pattern}`;let r=`Невалиден`;return t.format===`emoji`&&(r=`Невалидно`),t.format===`datetime`&&(r=`Невалидно`),t.format===`date`&&(r=`Невалидна`),t.format===`time`&&(r=`Невалидно`),t.format===`duration`&&(r=`Невалидна`),`${r} ${n[t.format]??e.format}`}case`not_multiple_of`:return`Невалидно число: трябва да бъде кратно на ${e.divisor}`;case`unrecognized_keys`:return`Неразпознат${e.keys.length>1?`и`:``} ключ${e.keys.length>1?`ове`:``}: ${b(e.keys,`, `)}`;case`invalid_key`:return`Невалиден ключ в ${e.origin}`;case`invalid_union`:return`Невалиден вход`;case`invalid_element`:return`Невалидна стойност в ${e.origin}`;default:return`Невалиден вход`}}};function co(){return{localeError:so()}}const lo=()=>{let e={string:{unit:`caràcters`,verb:`contenir`},file:{unit:`bytes`,verb:`contenir`},array:{unit:`elements`,verb:`contenir`},set:{unit:`elements`,verb:`contenir`}};function t(t){return e[t]??null}let n={regex:`entrada`,email:`adreça electrònica`,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ça IPv4`,ipv6:`adreça IPv6`,cidrv4:`rang IPv4`,cidrv6:`rang IPv6`,base64:`cadena codificada en base64`,base64url:`cadena codificada en base64url`,json_string:`cadena JSON`,e164:`número E.164`,jwt:`JWT`,template_literal:`entrada`},r={nan:`NaN`};return e=>{switch(e.code){case`invalid_type`:{let t=r[e.expected]??e.expected,n=w(e.input),i=r[n]??n;return/^[A-Z]/.test(e.expected)?`Tipus invàlid: s'esperava instanceof ${e.expected}, s'ha rebut ${i}`:`Tipus invàlid: s'esperava ${t}, s'ha rebut ${i}`}case`invalid_value`:return e.values.length===1?`Valor invàlid: s'esperava ${C(e.values[0])}`:`Opció invàlida: s'esperava una de ${b(e.values,` o `)}`;case`too_big`:{let n=e.inclusive?`com a màxim`:`menys de`,r=t(e.origin);return r?`Massa gran: s'esperava que ${e.origin??`el valor`} contingués ${n} ${e.maximum.toString()} ${r.unit??`elements`}`:`Massa gran: s'esperava que ${e.origin??`el valor`} fos ${n} ${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`com a mínim`:`més de`,r=t(e.origin);return r?`Massa petit: s'esperava que ${e.origin} contingués ${n} ${e.minimum.toString()} ${r.unit}`:`Massa petit: s'esperava que ${e.origin} fos ${n} ${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Format invàlid: ha de començar amb "${t.prefix}"`:t.format===`ends_with`?`Format invàlid: ha d'acabar amb "${t.suffix}"`:t.format===`includes`?`Format invàlid: ha d'incloure "${t.includes}"`:t.format===`regex`?`Format invàlid: ha de coincidir amb el patró ${t.pattern}`:`Format invàlid per a ${n[t.format]??e.format}`}case`not_multiple_of`:return`Número invàlid: ha de ser múltiple de ${e.divisor}`;case`unrecognized_keys`:return`Clau${e.keys.length>1?`s`:``} no reconeguda${e.keys.length>1?`s`:``}: ${b(e.keys,`, `)}`;case`invalid_key`:return`Clau invàlida a ${e.origin}`;case`invalid_union`:return`Entrada invàlida`;case`invalid_element`:return`Element invàlid a ${e.origin}`;default:return`Entrada invàlida`}}};function uo(){return{localeError:lo()}}const fo=()=>{let e={string:{unit:`znaků`,verb:`mít`},file:{unit:`bajtů`,verb:`mít`},array:{unit:`prvků`,verb:`mít`},set:{unit:`prvků`,verb:`mít`}};function t(t){return e[t]??null}let n={regex:`regulární výraz`,email:`e-mailová 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 čas ve formátu ISO`,date:`datum ve formátu ISO`,time:`čas ve formátu ISO`,duration:`doba trvání ISO`,ipv4:`IPv4 adresa`,ipv6:`IPv6 adresa`,cidrv4:`rozsah IPv4`,cidrv6:`rozsah IPv6`,base64:`řetězec zakódovaný ve formátu base64`,base64url:`řetězec zakódovaný ve formátu base64url`,json_string:`řetězec ve formátu JSON`,e164:`číslo E.164`,jwt:`JWT`,template_literal:`vstup`},r={nan:`NaN`,number:`číslo`,string:`řetězec`,function:`funkce`,array:`pole`};return e=>{switch(e.code){case`invalid_type`:{let t=r[e.expected]??e.expected,n=w(e.input),i=r[n]??n;return/^[A-Z]/.test(e.expected)?`Neplatný vstup: očekáváno instanceof ${e.expected}, obdrženo ${i}`:`Neplatný vstup: očekáváno ${t}, obdrženo ${i}`}case`invalid_value`:return e.values.length===1?`Neplatný vstup: očekáváno ${C(e.values[0])}`:`Neplatná možnost: očekávána jedna z hodnot ${b(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Hodnota je příliš velká: ${e.origin??`hodnota`} musí mít ${n}${e.maximum.toString()} ${r.unit??`prvků`}`:`Hodnota je příliš velká: ${e.origin??`hodnota`} musí být ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Hodnota je příliš malá: ${e.origin??`hodnota`} musí mít ${n}${e.minimum.toString()} ${r.unit??`prvků`}`:`Hodnota je příliš malá: ${e.origin??`hodnota`} musí být ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Neplatný řetězec: musí začínat na "${t.prefix}"`:t.format===`ends_with`?`Neplatný řetězec: musí končit na "${t.suffix}"`:t.format===`includes`?`Neplatný řetězec: musí obsahovat "${t.includes}"`:t.format===`regex`?`Neplatný řetězec: musí odpovídat vzoru ${t.pattern}`:`Neplatný formát ${n[t.format]??e.format}`}case`not_multiple_of`:return`Neplatné číslo: musí být násobkem ${e.divisor}`;case`unrecognized_keys`:return`Neznámé klíče: ${b(e.keys,`, `)}`;case`invalid_key`:return`Neplatný klíč v ${e.origin}`;case`invalid_union`:return`Neplatný vstup`;case`invalid_element`:return`Neplatná hodnota v ${e.origin}`;default:return`Neplatný vstup`}}};function po(){return{localeError:fo()}}const mo=()=>{let e={string:{unit:`tegn`,verb:`havde`},file:{unit:`bytes`,verb:`havde`},array:{unit:`elementer`,verb:`indeholdt`},set:{unit:`elementer`,verb:`indeholdt`}};function t(t){return e[t]??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æt`,date:`ISO-dato`,time:`ISO-klokkeslæt`,duration:`ISO-varighed`,ipv4:`IPv4-område`,ipv6:`IPv6-område`,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`},r={nan:`NaN`,string:`streng`,number:`tal`,boolean:`boolean`,array:`liste`,object:`objekt`,set:`sæt`,file:`fil`};return e=>{switch(e.code){case`invalid_type`:{let t=r[e.expected]??e.expected,n=w(e.input),i=r[n]??n;return/^[A-Z]/.test(e.expected)?`Ugyldigt input: forventede instanceof ${e.expected}, fik ${i}`:`Ugyldigt input: forventede ${t}, fik ${i}`}case`invalid_value`:return e.values.length===1?`Ugyldig værdi: forventede ${C(e.values[0])}`:`Ugyldigt valg: forventede en af følgende ${b(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,i=t(e.origin),a=r[e.origin]??e.origin;return i?`For stor: forventede ${a??`value`} ${i.verb} ${n} ${e.maximum.toString()} ${i.unit??`elementer`}`:`For stor: forventede ${a??`value`} havde ${n} ${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,i=t(e.origin),a=r[e.origin]??e.origin;return i?`For lille: forventede ${a} ${i.verb} ${n} ${e.minimum.toString()} ${i.unit}`:`For lille: forventede ${a} havde ${n} ${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Ugyldig streng: skal starte med "${t.prefix}"`:t.format===`ends_with`?`Ugyldig streng: skal ende med "${t.suffix}"`:t.format===`includes`?`Ugyldig streng: skal indeholde "${t.includes}"`:t.format===`regex`?`Ugyldig streng: skal matche mønsteret ${t.pattern}`:`Ugyldig ${n[t.format]??e.format}`}case`not_multiple_of`:return`Ugyldigt tal: skal være deleligt med ${e.divisor}`;case`unrecognized_keys`:return`${e.keys.length>1?`Ukendte nøgler`:`Ukendt nøgle`}: ${b(e.keys,`, `)}`;case`invalid_key`:return`Ugyldig nøgle i ${e.origin}`;case`invalid_union`:return`Ugyldigt input: matcher ingen af de tilladte typer`;case`invalid_element`:return`Ugyldig værdi i ${e.origin}`;default:return`Ugyldigt input`}}};function ho(){return{localeError:mo()}}const go=()=>{let e={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 t(t){return e[t]??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`},r={nan:`NaN`,number:`Zahl`,array:`Array`};return e=>{switch(e.code){case`invalid_type`:{let t=r[e.expected]??e.expected,n=w(e.input),i=r[n]??n;return/^[A-Z]/.test(e.expected)?`Ungültige Eingabe: erwartet instanceof ${e.expected}, erhalten ${i}`:`Ungültige Eingabe: erwartet ${t}, erhalten ${i}`}case`invalid_value`:return e.values.length===1?`Ungültige Eingabe: erwartet ${C(e.values[0])}`:`Ungültige Option: erwartet eine von ${b(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Zu groß: erwartet, dass ${e.origin??`Wert`} ${n}${e.maximum.toString()} ${r.unit??`Elemente`} hat`:`Zu groß: erwartet, dass ${e.origin??`Wert`} ${n}${e.maximum.toString()} ist`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Zu klein: erwartet, dass ${e.origin} ${n}${e.minimum.toString()} ${r.unit} hat`:`Zu klein: erwartet, dass ${e.origin} ${n}${e.minimum.toString()} ist`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Ungültiger String: muss mit "${t.prefix}" beginnen`:t.format===`ends_with`?`Ungültiger String: muss mit "${t.suffix}" enden`:t.format===`includes`?`Ungültiger String: muss "${t.includes}" enthalten`:t.format===`regex`?`Ungültiger String: muss dem Muster ${t.pattern} entsprechen`:`Ungültig: ${n[t.format]??e.format}`}case`not_multiple_of`:return`Ungültige Zahl: muss ein Vielfaches von ${e.divisor} sein`;case`unrecognized_keys`:return`${e.keys.length>1?`Unbekannte Schlüssel`:`Unbekannter Schlüssel`}: ${b(e.keys,`, `)}`;case`invalid_key`:return`Ungültiger Schlüssel in ${e.origin}`;case`invalid_union`:return`Ungültige Eingabe`;case`invalid_element`:return`Ungültiger Wert in ${e.origin}`;default:return`Ungültige Eingabe`}}};function _o(){return{localeError:go()}}const vo=()=>{let e={string:{unit:`characters`,verb:`to have`},file:{unit:`bytes`,verb:`to have`},array:{unit:`items`,verb:`to have`},set:{unit:`items`,verb:`to have`},map:{unit:`entries`,verb:`to have`}};function t(t){return e[t]??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`},r={nan:`NaN`};return e=>{switch(e.code){case`invalid_type`:{let t=r[e.expected]??e.expected,n=w(e.input);return`Invalid input: expected ${t}, received ${r[n]??n}`}case`invalid_value`:return e.values.length===1?`Invalid input: expected ${C(e.values[0])}`:`Invalid option: expected one of ${b(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Too big: expected ${e.origin??`value`} to have ${n}${e.maximum.toString()} ${r.unit??`elements`}`:`Too big: expected ${e.origin??`value`} to be ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Too small: expected ${e.origin} to have ${n}${e.minimum.toString()} ${r.unit}`:`Too small: expected ${e.origin} to be ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Invalid string: must start with "${t.prefix}"`:t.format===`ends_with`?`Invalid string: must end with "${t.suffix}"`:t.format===`includes`?`Invalid string: must include "${t.includes}"`:t.format===`regex`?`Invalid string: must match pattern ${t.pattern}`:`Invalid ${n[t.format]??e.format}`}case`not_multiple_of`:return`Invalid number: must be a multiple of ${e.divisor}`;case`unrecognized_keys`:return`Unrecognized key${e.keys.length>1?`s`:``}: ${b(e.keys,`, `)}`;case`invalid_key`:return`Invalid key in ${e.origin}`;case`invalid_union`:return`Invalid input`;case`invalid_element`:return`Invalid value in ${e.origin}`;default:return`Invalid input`}}};function yo(){return{localeError:vo()}}const bo=()=>{let e={string:{unit:`karaktrojn`,verb:`havi`},file:{unit:`bajtojn`,verb:`havi`},array:{unit:`elementojn`,verb:`havi`},set:{unit:`elementojn`,verb:`havi`}};function t(t){return e[t]??null}let n={regex:`enigo`,email:`retadreso`,url:`URL`,emoji:`emoĝio`,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ŭro`,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`},r={nan:`NaN`,number:`nombro`,array:`tabelo`,null:`senvalora`};return e=>{switch(e.code){case`invalid_type`:{let t=r[e.expected]??e.expected,n=w(e.input),i=r[n]??n;return/^[A-Z]/.test(e.expected)?`Nevalida enigo: atendiĝis instanceof ${e.expected}, riceviĝis ${i}`:`Nevalida enigo: atendiĝis ${t}, riceviĝis ${i}`}case`invalid_value`:return e.values.length===1?`Nevalida enigo: atendiĝis ${C(e.values[0])}`:`Nevalida opcio: atendiĝis unu el ${b(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Tro granda: atendiĝis ke ${e.origin??`valoro`} havu ${n}${e.maximum.toString()} ${r.unit??`elementojn`}`:`Tro granda: atendiĝis ke ${e.origin??`valoro`} havu ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Tro malgranda: atendiĝis ke ${e.origin} havu ${n}${e.minimum.toString()} ${r.unit}`:`Tro malgranda: atendiĝis ke ${e.origin} estu ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Nevalida karaktraro: devas komenciĝi per "${t.prefix}"`:t.format===`ends_with`?`Nevalida karaktraro: devas finiĝi per "${t.suffix}"`:t.format===`includes`?`Nevalida karaktraro: devas inkluzivi "${t.includes}"`:t.format===`regex`?`Nevalida karaktraro: devas kongrui kun la modelo ${t.pattern}`:`Nevalida ${n[t.format]??e.format}`}case`not_multiple_of`:return`Nevalida nombro: devas esti oblo de ${e.divisor}`;case`unrecognized_keys`:return`Nekonata${e.keys.length>1?`j`:``} ŝlosilo${e.keys.length>1?`j`:``}: ${b(e.keys,`, `)}`;case`invalid_key`:return`Nevalida ŝlosilo en ${e.origin}`;case`invalid_union`:return`Nevalida enigo`;case`invalid_element`:return`Nevalida valoro en ${e.origin}`;default:return`Nevalida enigo`}}};function xo(){return{localeError:bo()}}const So=()=>{let e={string:{unit:`caracteres`,verb:`tener`},file:{unit:`bytes`,verb:`tener`},array:{unit:`elementos`,verb:`tener`},set:{unit:`elementos`,verb:`tener`}};function t(t){return e[t]??null}let n={regex:`entrada`,email:`dirección de correo electrónico`,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ón ISO`,ipv4:`dirección IPv4`,ipv6:`dirección IPv6`,cidrv4:`rango IPv4`,cidrv6:`rango IPv6`,base64:`cadena codificada en base64`,base64url:`URL codificada en base64`,json_string:`cadena JSON`,e164:`número E.164`,jwt:`JWT`,template_literal:`entrada`},r={nan:`NaN`,string:`texto`,number:`número`,boolean:`booleano`,array:`arreglo`,object:`objeto`,set:`conjunto`,file:`archivo`,date:`fecha`,bigint:`número grande`,symbol:`símbolo`,undefined:`indefinido`,null:`nulo`,function:`función`,map:`mapa`,record:`registro`,tuple:`tupla`,enum:`enumeración`,union:`unión`,literal:`literal`,promise:`promesa`,void:`vacío`,never:`nunca`,unknown:`desconocido`,any:`cualquiera`};return e=>{switch(e.code){case`invalid_type`:{let t=r[e.expected]??e.expected,n=w(e.input),i=r[n]??n;return/^[A-Z]/.test(e.expected)?`Entrada inválida: se esperaba instanceof ${e.expected}, recibido ${i}`:`Entrada inválida: se esperaba ${t}, recibido ${i}`}case`invalid_value`:return e.values.length===1?`Entrada inválida: se esperaba ${C(e.values[0])}`:`Opción inválida: se esperaba una de ${b(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,i=t(e.origin),a=r[e.origin]??e.origin;return i?`Demasiado grande: se esperaba que ${a??`valor`} tuviera ${n}${e.maximum.toString()} ${i.unit??`elementos`}`:`Demasiado grande: se esperaba que ${a??`valor`} fuera ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,i=t(e.origin),a=r[e.origin]??e.origin;return i?`Demasiado pequeño: se esperaba que ${a} tuviera ${n}${e.minimum.toString()} ${i.unit}`:`Demasiado pequeño: se esperaba que ${a} fuera ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Cadena inválida: debe comenzar con "${t.prefix}"`:t.format===`ends_with`?`Cadena inválida: debe terminar en "${t.suffix}"`:t.format===`includes`?`Cadena inválida: debe incluir "${t.includes}"`:t.format===`regex`?`Cadena inválida: debe coincidir con el patrón ${t.pattern}`:`Inválido ${n[t.format]??e.format}`}case`not_multiple_of`:return`Número inválido: debe ser múltiplo de ${e.divisor}`;case`unrecognized_keys`:return`Llave${e.keys.length>1?`s`:``} desconocida${e.keys.length>1?`s`:``}: ${b(e.keys,`, `)}`;case`invalid_key`:return`Llave inválida en ${r[e.origin]??e.origin}`;case`invalid_union`:return`Entrada inválida`;case`invalid_element`:return`Valor inválido en ${r[e.origin]??e.origin}`;default:return`Entrada inválida`}}};function Co(){return{localeError:So()}}const wo=()=>{let e={string:{unit:`کاراکتر`,verb:`داشته باشد`},file:{unit:`بایت`,verb:`داشته باشد`},array:{unit:`آیتم`,verb:`داشته باشد`},set:{unit:`آیتم`,verb:`داشته باشد`}};function t(t){return e[t]??null}let n={regex:`ورودی`,email:`آدرس ایمیل`,url:`URL`,emoji:`ایموجی`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`تاریخ و زمان ایزو`,date:`تاریخ ایزو`,time:`زمان ایزو`,duration:`مدت زمان ایزو`,ipv4:`IPv4 آدرس`,ipv6:`IPv6 آدرس`,cidrv4:`IPv4 دامنه`,cidrv6:`IPv6 دامنه`,base64:`base64-encoded رشته`,base64url:`base64url-encoded رشته`,json_string:`JSON رشته`,e164:`E.164 عدد`,jwt:`JWT`,template_literal:`ورودی`},r={nan:`NaN`,number:`عدد`,array:`آرایه`};return e=>{switch(e.code){case`invalid_type`:{let t=r[e.expected]??e.expected,n=w(e.input),i=r[n]??n;return/^[A-Z]/.test(e.expected)?`ورودی نامعتبر: میبایست instanceof ${e.expected} میبود، ${i} دریافت شد`:`ورودی نامعتبر: میبایست ${t} میبود، ${i} دریافت شد`}case`invalid_value`:return e.values.length===1?`ورودی نامعتبر: میبایست ${C(e.values[0])} میبود`:`گزینه نامعتبر: میبایست یکی از ${b(e.values,`|`)} میبود`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`خیلی بزرگ: ${e.origin??`مقدار`} باید ${n}${e.maximum.toString()} ${r.unit??`عنصر`} باشد`:`خیلی بزرگ: ${e.origin??`مقدار`} باید ${n}${e.maximum.toString()} باشد`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`خیلی کوچک: ${e.origin} باید ${n}${e.minimum.toString()} ${r.unit} باشد`:`خیلی کوچک: ${e.origin} باید ${n}${e.minimum.toString()} باشد`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`رشته نامعتبر: باید با "${t.prefix}" شروع شود`:t.format===`ends_with`?`رشته نامعتبر: باید با "${t.suffix}" تمام شود`:t.format===`includes`?`رشته نامعتبر: باید شامل "${t.includes}" باشد`:t.format===`regex`?`رشته نامعتبر: باید با الگوی ${t.pattern} مطابقت داشته باشد`:`${n[t.format]??e.format} نامعتبر`}case`not_multiple_of`:return`عدد نامعتبر: باید مضرب ${e.divisor} باشد`;case`unrecognized_keys`:return`کلید${e.keys.length>1?`های`:``} ناشناس: ${b(e.keys,`, `)}`;case`invalid_key`:return`کلید ناشناس در ${e.origin}`;case`invalid_union`:return`ورودی نامعتبر`;case`invalid_element`:return`مقدار نامعتبر در ${e.origin}`;default:return`ورودی نامعتبر`}}};function To(){return{localeError:wo()}}const Eo=()=>{let e={string:{unit:`merkkiä`,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äivämäärän`}};function t(t){return e[t]??null}let n={regex:`säännöllinen lauseke`,email:`sähköpostiosoite`,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äivämäärä`,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`},r={nan:`NaN`};return e=>{switch(e.code){case`invalid_type`:{let t=r[e.expected]??e.expected,n=w(e.input),i=r[n]??n;return/^[A-Z]/.test(e.expected)?`Virheellinen tyyppi: odotettiin instanceof ${e.expected}, oli ${i}`:`Virheellinen tyyppi: odotettiin ${t}, oli ${i}`}case`invalid_value`:return e.values.length===1?`Virheellinen syöte: täytyy olla ${C(e.values[0])}`:`Virheellinen valinta: täytyy olla yksi seuraavista: ${b(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Liian suuri: ${r.subject} täytyy olla ${n}${e.maximum.toString()} ${r.unit}`.trim():`Liian suuri: arvon täytyy olla ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Liian pieni: ${r.subject} täytyy olla ${n}${e.minimum.toString()} ${r.unit}`.trim():`Liian pieni: arvon täytyy olla ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Virheellinen syöte: täytyy alkaa "${t.prefix}"`:t.format===`ends_with`?`Virheellinen syöte: täytyy loppua "${t.suffix}"`:t.format===`includes`?`Virheellinen syöte: täytyy sisältää "${t.includes}"`:t.format===`regex`?`Virheellinen syöte: täytyy vastata säännöllistä lauseketta ${t.pattern}`:`Virheellinen ${n[t.format]??e.format}`}case`not_multiple_of`:return`Virheellinen luku: täytyy olla luvun ${e.divisor} monikerta`;case`unrecognized_keys`:return`${e.keys.length>1?`Tuntemattomat avaimet`:`Tuntematon avain`}: ${b(e.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öte`}}};function Do(){return{localeError:Eo()}}const Oo=()=>{let e={string:{unit:`caractères`,verb:`avoir`},file:{unit:`octets`,verb:`avoir`},array:{unit:`éléments`,verb:`avoir`},set:{unit:`éléments`,verb:`avoir`}};function t(t){return e[t]??null}let n={regex:`entrée`,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ée ISO`,ipv4:`adresse IPv4`,ipv6:`adresse IPv6`,cidrv4:`plage IPv4`,cidrv6:`plage IPv6`,base64:`chaîne encodée en base64`,base64url:`chaîne encodée en base64url`,json_string:`chaîne JSON`,e164:`numéro E.164`,jwt:`JWT`,template_literal:`entrée`},r={nan:`NaN`,number:`nombre`,array:`tableau`};return e=>{switch(e.code){case`invalid_type`:{let t=r[e.expected]??e.expected,n=w(e.input),i=r[n]??n;return/^[A-Z]/.test(e.expected)?`Entrée invalide : instanceof ${e.expected} attendu, ${i} reçu`:`Entrée invalide : ${t} attendu, ${i} reçu`}case`invalid_value`:return e.values.length===1?`Entrée invalide : ${C(e.values[0])} attendu`:`Option invalide : une valeur parmi ${b(e.values,`|`)} attendue`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Trop grand : ${e.origin??`valeur`} doit ${r.verb} ${n}${e.maximum.toString()} ${r.unit??`élément(s)`}`:`Trop grand : ${e.origin??`valeur`} doit être ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Trop petit : ${e.origin} doit ${r.verb} ${n}${e.minimum.toString()} ${r.unit}`:`Trop petit : ${e.origin} doit être ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Chaîne invalide : doit commencer par "${t.prefix}"`:t.format===`ends_with`?`Chaîne invalide : doit se terminer par "${t.suffix}"`:t.format===`includes`?`Chaîne invalide : doit inclure "${t.includes}"`:t.format===`regex`?`Chaîne invalide : doit correspondre au modèle ${t.pattern}`:`${n[t.format]??e.format} invalide`}case`not_multiple_of`:return`Nombre invalide : doit être un multiple de ${e.divisor}`;case`unrecognized_keys`:return`Clé${e.keys.length>1?`s`:``} non reconnue${e.keys.length>1?`s`:``} : ${b(e.keys,`, `)}`;case`invalid_key`:return`Clé invalide dans ${e.origin}`;case`invalid_union`:return`Entrée invalide`;case`invalid_element`:return`Valeur invalide dans ${e.origin}`;default:return`Entrée invalide`}}};function ko(){return{localeError:Oo()}}const Ao=()=>{let e={string:{unit:`caractères`,verb:`avoir`},file:{unit:`octets`,verb:`avoir`},array:{unit:`éléments`,verb:`avoir`},set:{unit:`éléments`,verb:`avoir`}};function t(t){return e[t]??null}let n={regex:`entrée`,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ée ISO`,ipv4:`adresse IPv4`,ipv6:`adresse IPv6`,cidrv4:`plage IPv4`,cidrv6:`plage IPv6`,base64:`chaîne encodée en base64`,base64url:`chaîne encodée en base64url`,json_string:`chaîne JSON`,e164:`numéro E.164`,jwt:`JWT`,template_literal:`entrée`},r={nan:`NaN`};return e=>{switch(e.code){case`invalid_type`:{let t=r[e.expected]??e.expected,n=w(e.input),i=r[n]??n;return/^[A-Z]/.test(e.expected)?`Entrée invalide : attendu instanceof ${e.expected}, reçu ${i}`:`Entrée invalide : attendu ${t}, reçu ${i}`}case`invalid_value`:return e.values.length===1?`Entrée invalide : attendu ${C(e.values[0])}`:`Option invalide : attendu l'une des valeurs suivantes ${b(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`≤`:`<`,r=t(e.origin);return r?`Trop grand : attendu que ${e.origin??`la valeur`} ait ${n}${e.maximum.toString()} ${r.unit}`:`Trop grand : attendu que ${e.origin??`la valeur`} soit ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`≥`:`>`,r=t(e.origin);return r?`Trop petit : attendu que ${e.origin} ait ${n}${e.minimum.toString()} ${r.unit}`:`Trop petit : attendu que ${e.origin} soit ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Chaîne invalide : doit commencer par "${t.prefix}"`:t.format===`ends_with`?`Chaîne invalide : doit se terminer par "${t.suffix}"`:t.format===`includes`?`Chaîne invalide : doit inclure "${t.includes}"`:t.format===`regex`?`Chaîne invalide : doit correspondre au motif ${t.pattern}`:`${n[t.format]??e.format} invalide`}case`not_multiple_of`:return`Nombre invalide : doit être un multiple de ${e.divisor}`;case`unrecognized_keys`:return`Clé${e.keys.length>1?`s`:``} non reconnue${e.keys.length>1?`s`:``} : ${b(e.keys,`, `)}`;case`invalid_key`:return`Clé invalide dans ${e.origin}`;case`invalid_union`:return`Entrée invalide`;case`invalid_element`:return`Valeur invalide dans ${e.origin}`;default:return`Entrée invalide`}}};function jo(){return{localeError:Ao()}}const Mo=()=>{let e={string:{label:`מחרוזת`,gender:`f`},number:{label:`מספר`,gender:`m`},boolean:{label:`ערך בוליאני`,gender:`m`},bigint:{label:`BigInt`,gender:`m`},date:{label:`תאריך`,gender:`m`},array:{label:`מערך`,gender:`m`},object:{label:`אובייקט`,gender:`m`},null:{label:`ערך ריק (null)`,gender:`m`},undefined:{label:`ערך לא מוגדר (undefined)`,gender:`m`},symbol:{label:`סימבול (Symbol)`,gender:`m`},function:{label:`פונקציה`,gender:`f`},map:{label:`מפה (Map)`,gender:`f`},set:{label:`קבוצה (Set)`,gender:`f`},file:{label:`קובץ`,gender:`m`},promise:{label:`Promise`,gender:`m`},NaN:{label:`NaN`,gender:`m`},unknown:{label:`ערך לא ידוע`,gender:`m`},value:{label:`ערך`,gender:`m`}},t={string:{unit:`תווים`,shortLabel:`קצר`,longLabel:`ארוך`},file:{unit:`בייטים`,shortLabel:`קטן`,longLabel:`גדול`},array:{unit:`פריטים`,shortLabel:`קטן`,longLabel:`גדול`},set:{unit:`פריטים`,shortLabel:`קטן`,longLabel:`גדול`},number:{unit:``,shortLabel:`קטן`,longLabel:`גדול`}},n=t=>t?e[t]:void 0,r=t=>{let r=n(t);return r?r.label:t??e.unknown.label},i=e=>`ה${r(e)}`,a=e=>(n(e)?.gender??`m`)===`f`?`צריכה להיות`:`צריך להיות`,o=e=>e?t[e]??null:null,s={regex:{label:`קלט`,gender:`m`},email:{label:`כתובת אימייל`,gender:`f`},url:{label:`כתובת רשת`,gender:`f`},emoji:{label:`אימוג'י`,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:`תאריך וזמן ISO`,gender:`m`},date:{label:`תאריך ISO`,gender:`m`},time:{label:`זמן ISO`,gender:`m`},duration:{label:`משך זמן ISO`,gender:`m`},ipv4:{label:`כתובת IPv4`,gender:`f`},ipv6:{label:`כתובת IPv6`,gender:`f`},cidrv4:{label:`טווח IPv4`,gender:`m`},cidrv6:{label:`טווח IPv6`,gender:`m`},base64:{label:`מחרוזת בבסיס 64`,gender:`f`},base64url:{label:`מחרוזת בבסיס 64 לכתובות רשת`,gender:`f`},json_string:{label:`מחרוזת JSON`,gender:`f`},e164:{label:`מספר E.164`,gender:`m`},jwt:{label:`JWT`,gender:`m`},ends_with:{label:`קלט`,gender:`m`},includes:{label:`קלט`,gender:`m`},lowercase:{label:`קלט`,gender:`m`},starts_with:{label:`קלט`,gender:`m`},uppercase:{label:`קלט`,gender:`m`}},c={nan:`NaN`};return t=>{switch(t.code){case`invalid_type`:{let n=t.expected,i=c[n??``]??r(n),a=w(t.input),o=c[a]??e[a]?.label??a;return/^[A-Z]/.test(t.expected)?`קלט לא תקין: צריך להיות instanceof ${t.expected}, התקבל ${o}`:`קלט לא תקין: צריך להיות ${i}, התקבל ${o}`}case`invalid_value`:{if(t.values.length===1)return`ערך לא תקין: הערך חייב להיות ${C(t.values[0])}`;let e=t.values.map(e=>C(e));if(t.values.length===2)return`ערך לא תקין: האפשרויות המתאימות הן ${e[0]} או ${e[1]}`;let n=e[e.length-1];return`ערך לא תקין: האפשרויות המתאימות הן ${e.slice(0,-1).join(`, `)} או ${n}`}case`too_big`:{let e=o(t.origin),n=i(t.origin??`value`);if(t.origin===`string`)return`${e?.longLabel??`ארוך`} מדי: ${n} צריכה להכיל ${t.maximum.toString()} ${e?.unit??``} ${t.inclusive?`או פחות`:`לכל היותר`}`.trim();if(t.origin===`number`)return`גדול מדי: ${n} צריך להיות ${t.inclusive?`קטן או שווה ל-${t.maximum}`:`קטן מ-${t.maximum}`}`;if(t.origin===`array`||t.origin===`set`)return`גדול מדי: ${n} ${t.origin===`set`?`צריכה`:`צריך`} להכיל ${t.inclusive?`${t.maximum} ${e?.unit??``} או פחות`:`פחות מ-${t.maximum} ${e?.unit??``}`}`.trim();let r=t.inclusive?`<=`:`<`,s=a(t.origin??`value`);return e?.unit?`${e.longLabel} מדי: ${n} ${s} ${r}${t.maximum.toString()} ${e.unit}`:`${e?.longLabel??`גדול`} מדי: ${n} ${s} ${r}${t.maximum.toString()}`}case`too_small`:{let e=o(t.origin),n=i(t.origin??`value`);if(t.origin===`string`)return`${e?.shortLabel??`קצר`} מדי: ${n} צריכה להכיל ${t.minimum.toString()} ${e?.unit??``} ${t.inclusive?`או יותר`:`לפחות`}`.trim();if(t.origin===`number`)return`קטן מדי: ${n} צריך להיות ${t.inclusive?`גדול או שווה ל-${t.minimum}`:`גדול מ-${t.minimum}`}`;if(t.origin===`array`||t.origin===`set`){let r=t.origin===`set`?`צריכה`:`צריך`;return t.minimum===1&&t.inclusive?`קטן מדי: ${n} ${r} להכיל ${t.origin,`לפחות פריט אחד`}`:`קטן מדי: ${n} ${r} להכיל ${t.inclusive?`${t.minimum} ${e?.unit??``} או יותר`:`יותר מ-${t.minimum} ${e?.unit??``}`}`.trim()}let r=t.inclusive?`>=`:`>`,s=a(t.origin??`value`);return e?.unit?`${e.shortLabel} מדי: ${n} ${s} ${r}${t.minimum.toString()} ${e.unit}`:`${e?.shortLabel??`קטן`} מדי: ${n} ${s} ${r}${t.minimum.toString()}`}case`invalid_format`:{let e=t;if(e.format===`starts_with`)return`המחרוזת חייבת להתחיל ב "${e.prefix}"`;if(e.format===`ends_with`)return`המחרוזת חייבת להסתיים ב "${e.suffix}"`;if(e.format===`includes`)return`המחרוזת חייבת לכלול "${e.includes}"`;if(e.format===`regex`)return`המחרוזת חייבת להתאים לתבנית ${e.pattern}`;let n=s[e.format];return`${n?.label??e.format} לא ${(n?.gender??`m`)===`f`?`תקינה`:`תקין`}`}case`not_multiple_of`:return`מספר לא תקין: חייב להיות מכפלה של ${t.divisor}`;case`unrecognized_keys`:return`מפתח${t.keys.length>1?`ות`:``} לא מזוה${t.keys.length>1?`ים`:`ה`}: ${b(t.keys,`, `)}`;case`invalid_key`:return`שדה לא תקין באובייקט`;case`invalid_union`:return`קלט לא תקין`;case`invalid_element`:return`ערך לא תקין ב${i(t.origin??`array`)}`;default:return`קלט לא תקין`}}};function No(){return{localeError:Mo()}}const Po=()=>{let e={string:{unit:`karakter`,verb:`legyen`},file:{unit:`byte`,verb:`legyen`},array:{unit:`elem`,verb:`legyen`},set:{unit:`elem`,verb:`legyen`}};function t(t){return e[t]??null}let n={regex:`bemenet`,email:`email cím`,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őbélyeg`,date:`ISO dátum`,time:`ISO idő`,duration:`ISO időintervallum`,ipv4:`IPv4 cím`,ipv6:`IPv6 cím`,cidrv4:`IPv4 tartomány`,cidrv6:`IPv6 tartomány`,base64:`base64-kódolt string`,base64url:`base64url-kódolt string`,json_string:`JSON string`,e164:`E.164 szám`,jwt:`JWT`,template_literal:`bemenet`},r={nan:`NaN`,number:`szám`,array:`tömb`};return e=>{switch(e.code){case`invalid_type`:{let t=r[e.expected]??e.expected,n=w(e.input),i=r[n]??n;return/^[A-Z]/.test(e.expected)?`Érvénytelen bemenet: a várt érték instanceof ${e.expected}, a kapott érték ${i}`:`Érvénytelen bemenet: a várt érték ${t}, a kapott érték ${i}`}case`invalid_value`:return e.values.length===1?`Érvénytelen bemenet: a várt érték ${C(e.values[0])}`:`Érvénytelen opció: valamelyik érték várt ${b(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Túl nagy: ${e.origin??`érték`} mérete túl nagy ${n}${e.maximum.toString()} ${r.unit??`elem`}`:`Túl nagy: a bemeneti érték ${e.origin??`érték`} túl nagy: ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Túl kicsi: a bemeneti érték ${e.origin} mérete túl kicsi ${n}${e.minimum.toString()} ${r.unit}`:`Túl kicsi: a bemeneti érték ${e.origin} túl kicsi ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Érvénytelen string: "${t.prefix}" értékkel kell kezdődnie`:t.format===`ends_with`?`Érvénytelen string: "${t.suffix}" értékkel kell végződnie`:t.format===`includes`?`Érvénytelen string: "${t.includes}" értéket kell tartalmaznia`:t.format===`regex`?`Érvénytelen string: ${t.pattern} mintának kell megfelelnie`:`Érvénytelen ${n[t.format]??e.format}`}case`not_multiple_of`:return`Érvénytelen szám: ${e.divisor} többszörösének kell lennie`;case`unrecognized_keys`:return`Ismeretlen kulcs${e.keys.length>1?`s`:``}: ${b(e.keys,`, `)}`;case`invalid_key`:return`Érvénytelen kulcs ${e.origin}`;case`invalid_union`:return`Érvénytelen bemenet`;case`invalid_element`:return`Érvénytelen érték: ${e.origin}`;default:return`Érvénytelen bemenet`}}};function Fo(){return{localeError:Po()}}function Io(e,t,n){return Math.abs(e)===1?t:n}function Lo(e){if(!e)return``;let t=[`ա`,`ե`,`ը`,`ի`,`ո`,`ու`,`օ`],n=e[e.length-1];return e+(t.includes(n)?`ն`:`ը`)}const Ro=()=>{let e={string:{unit:{one:`նշան`,many:`նշաններ`},verb:`ունենալ`},file:{unit:{one:`բայթ`,many:`բայթեր`},verb:`ունենալ`},array:{unit:{one:`տարր`,many:`տարրեր`},verb:`ունենալ`},set:{unit:{one:`տարր`,many:`տարրեր`},verb:`ունենալ`}};function t(t){return e[t]??null}let n={regex:`մուտք`,email:`էլ. հասցե`,url:`URL`,emoji:`էմոջի`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO ամսաթիվ և ժամ`,date:`ISO ամսաթիվ`,time:`ISO ժամ`,duration:`ISO տևողություն`,ipv4:`IPv4 հասցե`,ipv6:`IPv6 հասցե`,cidrv4:`IPv4 միջակայք`,cidrv6:`IPv6 միջակայք`,base64:`base64 ձևաչափով տող`,base64url:`base64url ձևաչափով տող`,json_string:`JSON տող`,e164:`E.164 համար`,jwt:`JWT`,template_literal:`մուտք`},r={nan:`NaN`,number:`թիվ`,array:`զանգված`};return e=>{switch(e.code){case`invalid_type`:{let t=r[e.expected]??e.expected,n=w(e.input),i=r[n]??n;return/^[A-Z]/.test(e.expected)?`Սխալ մուտքագրում․ սպասվում էր instanceof ${e.expected}, ստացվել է ${i}`:`Սխալ մուտքագրում․ սպասվում էր ${t}, ստացվել է ${i}`}case`invalid_value`:return e.values.length===1?`Սխալ մուտքագրում․ սպասվում էր ${C(e.values[1])}`:`Սխալ տարբերակ․ սպասվում էր հետևյալներից մեկը՝ ${b(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);if(r){let t=Io(Number(e.maximum),r.unit.one,r.unit.many);return`Չափազանց մեծ արժեք․ սպասվում է, որ ${Lo(e.origin??`արժեք`)} կունենա ${n}${e.maximum.toString()} ${t}`}return`Չափազանց մեծ արժեք․ սպասվում է, որ ${Lo(e.origin??`արժեք`)} լինի ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);if(r){let t=Io(Number(e.minimum),r.unit.one,r.unit.many);return`Չափազանց փոքր արժեք․ սպասվում է, որ ${Lo(e.origin)} կունենա ${n}${e.minimum.toString()} ${t}`}return`Չափազանց փոքր արժեք․ սպասվում է, որ ${Lo(e.origin)} լինի ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Սխալ տող․ պետք է սկսվի "${t.prefix}"-ով`:t.format===`ends_with`?`Սխալ տող․ պետք է ավարտվի "${t.suffix}"-ով`:t.format===`includes`?`Սխալ տող․ պետք է պարունակի "${t.includes}"`:t.format===`regex`?`Սխալ տող․ պետք է համապատասխանի ${t.pattern} ձևաչափին`:`Սխալ ${n[t.format]??e.format}`}case`not_multiple_of`:return`Սխալ թիվ․ պետք է բազմապատիկ լինի ${e.divisor}-ի`;case`unrecognized_keys`:return`Չճանաչված բանալի${e.keys.length>1?`ներ`:``}. ${b(e.keys,`, `)}`;case`invalid_key`:return`Սխալ բանալի ${Lo(e.origin)}-ում`;case`invalid_union`:return`Սխալ մուտքագրում`;case`invalid_element`:return`Սխալ արժեք ${Lo(e.origin)}-ում`;default:return`Սխալ մուտքագրում`}}};function zo(){return{localeError:Ro()}}const Bo=()=>{let e={string:{unit:`karakter`,verb:`memiliki`},file:{unit:`byte`,verb:`memiliki`},array:{unit:`item`,verb:`memiliki`},set:{unit:`item`,verb:`memiliki`}};function t(t){return e[t]??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`},r={nan:`NaN`};return e=>{switch(e.code){case`invalid_type`:{let t=r[e.expected]??e.expected,n=w(e.input),i=r[n]??n;return/^[A-Z]/.test(e.expected)?`Input tidak valid: diharapkan instanceof ${e.expected}, diterima ${i}`:`Input tidak valid: diharapkan ${t}, diterima ${i}`}case`invalid_value`:return e.values.length===1?`Input tidak valid: diharapkan ${C(e.values[0])}`:`Pilihan tidak valid: diharapkan salah satu dari ${b(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Terlalu besar: diharapkan ${e.origin??`value`} memiliki ${n}${e.maximum.toString()} ${r.unit??`elemen`}`:`Terlalu besar: diharapkan ${e.origin??`value`} menjadi ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Terlalu kecil: diharapkan ${e.origin} memiliki ${n}${e.minimum.toString()} ${r.unit}`:`Terlalu kecil: diharapkan ${e.origin} menjadi ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`String tidak valid: harus dimulai dengan "${t.prefix}"`:t.format===`ends_with`?`String tidak valid: harus berakhir dengan "${t.suffix}"`:t.format===`includes`?`String tidak valid: harus menyertakan "${t.includes}"`:t.format===`regex`?`String tidak valid: harus sesuai pola ${t.pattern}`:`${n[t.format]??e.format} tidak valid`}case`not_multiple_of`:return`Angka tidak valid: harus kelipatan dari ${e.divisor}`;case`unrecognized_keys`:return`Kunci tidak dikenali ${e.keys.length>1?`s`:``}: ${b(e.keys,`, `)}`;case`invalid_key`:return`Kunci tidak valid di ${e.origin}`;case`invalid_union`:return`Input tidak valid`;case`invalid_element`:return`Nilai tidak valid di ${e.origin}`;default:return`Input tidak valid`}}};function Vo(){return{localeError:Bo()}}const Ho=()=>{let e={string:{unit:`stafi`,verb:`að hafa`},file:{unit:`bæti`,verb:`að hafa`},array:{unit:`hluti`,verb:`að hafa`},set:{unit:`hluti`,verb:`að hafa`}};function t(t){return e[t]??null}let n={regex:`gildi`,email:`netfang`,url:`vefslóð`,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ími`,date:`ISO dagsetning`,time:`ISO tími`,duration:`ISO tímalengd`,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ölugildi`,jwt:`JWT`,template_literal:`gildi`},r={nan:`NaN`,number:`númer`,array:`fylki`};return e=>{switch(e.code){case`invalid_type`:{let t=r[e.expected]??e.expected,n=w(e.input),i=r[n]??n;return/^[A-Z]/.test(e.expected)?`Rangt gildi: Þú slóst inn ${i} þar sem á að vera instanceof ${e.expected}`:`Rangt gildi: Þú slóst inn ${i} þar sem á að vera ${t}`}case`invalid_value`:return e.values.length===1?`Rangt gildi: gert ráð fyrir ${C(e.values[0])}`:`Ógilt val: má vera eitt af eftirfarandi ${b(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Of stórt: gert er ráð fyrir að ${e.origin??`gildi`} hafi ${n}${e.maximum.toString()} ${r.unit??`hluti`}`:`Of stórt: gert er ráð fyrir að ${e.origin??`gildi`} sé ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Of lítið: gert er ráð fyrir að ${e.origin} hafi ${n}${e.minimum.toString()} ${r.unit}`:`Of lítið: gert er ráð fyrir að ${e.origin} sé ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Ógildur strengur: verður að byrja á "${t.prefix}"`:t.format===`ends_with`?`Ógildur strengur: verður að enda á "${t.suffix}"`:t.format===`includes`?`Ógildur strengur: verður að innihalda "${t.includes}"`:t.format===`regex`?`Ógildur strengur: verður að fylgja mynstri ${t.pattern}`:`Rangt ${n[t.format]??e.format}`}case`not_multiple_of`:return`Röng tala: verður að vera margfeldi af ${e.divisor}`;case`unrecognized_keys`:return`Óþekkt ${e.keys.length>1?`ir lyklar`:`ur lykill`}: ${b(e.keys,`, `)}`;case`invalid_key`:return`Rangur lykill í ${e.origin}`;case`invalid_union`:return`Rangt gildi`;case`invalid_element`:return`Rangt gildi í ${e.origin}`;default:return`Rangt gildi`}}};function Uo(){return{localeError:Ho()}}const Wo=()=>{let e={string:{unit:`caratteri`,verb:`avere`},file:{unit:`byte`,verb:`avere`},array:{unit:`elementi`,verb:`avere`},set:{unit:`elementi`,verb:`avere`}};function t(t){return e[t]??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`},r={nan:`NaN`,number:`numero`,array:`vettore`};return e=>{switch(e.code){case`invalid_type`:{let t=r[e.expected]??e.expected,n=w(e.input),i=r[n]??n;return/^[A-Z]/.test(e.expected)?`Input non valido: atteso instanceof ${e.expected}, ricevuto ${i}`:`Input non valido: atteso ${t}, ricevuto ${i}`}case`invalid_value`:return e.values.length===1?`Input non valido: atteso ${C(e.values[0])}`:`Opzione non valida: atteso uno tra ${b(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Troppo grande: ${e.origin??`valore`} deve avere ${n}${e.maximum.toString()} ${r.unit??`elementi`}`:`Troppo grande: ${e.origin??`valore`} deve essere ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Troppo piccolo: ${e.origin} deve avere ${n}${e.minimum.toString()} ${r.unit}`:`Troppo piccolo: ${e.origin} deve essere ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Stringa non valida: deve iniziare con "${t.prefix}"`:t.format===`ends_with`?`Stringa non valida: deve terminare con "${t.suffix}"`:t.format===`includes`?`Stringa non valida: deve includere "${t.includes}"`:t.format===`regex`?`Stringa non valida: deve corrispondere al pattern ${t.pattern}`:`Invalid ${n[t.format]??e.format}`}case`not_multiple_of`:return`Numero non valido: deve essere un multiplo di ${e.divisor}`;case`unrecognized_keys`:return`Chiav${e.keys.length>1?`i`:`e`} non riconosciut${e.keys.length>1?`e`:`a`}: ${b(e.keys,`, `)}`;case`invalid_key`:return`Chiave non valida in ${e.origin}`;case`invalid_union`:return`Input non valido`;case`invalid_element`:return`Valore non valido in ${e.origin}`;default:return`Input non valido`}}};function Go(){return{localeError:Wo()}}const Ko=()=>{let e={string:{unit:`文字`,verb:`である`},file:{unit:`バイト`,verb:`である`},array:{unit:`要素`,verb:`である`},set:{unit:`要素`,verb:`である`}};function t(t){return e[t]??null}let n={regex:`入力値`,email:`メールアドレス`,url:`URL`,emoji:`絵文字`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO日時`,date:`ISO日付`,time:`ISO時刻`,duration:`ISO期間`,ipv4:`IPv4アドレス`,ipv6:`IPv6アドレス`,cidrv4:`IPv4範囲`,cidrv6:`IPv6範囲`,base64:`base64エンコード文字列`,base64url:`base64urlエンコード文字列`,json_string:`JSON文字列`,e164:`E.164番号`,jwt:`JWT`,template_literal:`入力値`},r={nan:`NaN`,number:`数値`,array:`配列`};return e=>{switch(e.code){case`invalid_type`:{let t=r[e.expected]??e.expected,n=w(e.input),i=r[n]??n;return/^[A-Z]/.test(e.expected)?`無効な入力: instanceof ${e.expected}が期待されましたが、${i}が入力されました`:`無効な入力: ${t}が期待されましたが、${i}が入力されました`}case`invalid_value`:return e.values.length===1?`無効な入力: ${C(e.values[0])}が期待されました`:`無効な選択: ${b(e.values,`、`)}のいずれかである必要があります`;case`too_big`:{let n=e.inclusive?`以下である`:`より小さい`,r=t(e.origin);return r?`大きすぎる値: ${e.origin??`値`}は${e.maximum.toString()}${r.unit??`要素`}${n}必要があります`:`大きすぎる値: ${e.origin??`値`}は${e.maximum.toString()}${n}必要があります`}case`too_small`:{let n=e.inclusive?`以上である`:`より大きい`,r=t(e.origin);return r?`小さすぎる値: ${e.origin}は${e.minimum.toString()}${r.unit}${n}必要があります`:`小さすぎる値: ${e.origin}は${e.minimum.toString()}${n}必要があります`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`無効な文字列: "${t.prefix}"で始まる必要があります`:t.format===`ends_with`?`無効な文字列: "${t.suffix}"で終わる必要があります`:t.format===`includes`?`無効な文字列: "${t.includes}"を含む必要があります`:t.format===`regex`?`無効な文字列: パターン${t.pattern}に一致する必要があります`:`無効な${n[t.format]??e.format}`}case`not_multiple_of`:return`無効な数値: ${e.divisor}の倍数である必要があります`;case`unrecognized_keys`:return`認識されていないキー${e.keys.length>1?`群`:``}: ${b(e.keys,`、`)}`;case`invalid_key`:return`${e.origin}内の無効なキー`;case`invalid_union`:return`無効な入力`;case`invalid_element`:return`${e.origin}内の無効な値`;default:return`無効な入力`}}};function qo(){return{localeError:Ko()}}const Jo=()=>{let e={string:{unit:`სიმბოლო`,verb:`უნდა შეიცავდეს`},file:{unit:`ბაიტი`,verb:`უნდა შეიცავდეს`},array:{unit:`ელემენტი`,verb:`უნდა შეიცავდეს`},set:{unit:`ელემენტი`,verb:`უნდა შეიცავდეს`}};function t(t){return e[t]??null}let n={regex:`შეყვანა`,email:`ელ-ფოსტის მისამართი`,url:`URL`,emoji:`ემოჯი`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`თარიღი-დრო`,date:`თარიღი`,time:`დრო`,duration:`ხანგრძლივობა`,ipv4:`IPv4 მისამართი`,ipv6:`IPv6 მისამართი`,cidrv4:`IPv4 დიაპაზონი`,cidrv6:`IPv6 დიაპაზონი`,base64:`base64-კოდირებული სტრინგი`,base64url:`base64url-კოდირებული სტრინგი`,json_string:`JSON სტრინგი`,e164:`E.164 ნომერი`,jwt:`JWT`,template_literal:`შეყვანა`},r={nan:`NaN`,number:`რიცხვი`,string:`სტრინგი`,boolean:`ბულეანი`,function:`ფუნქცია`,array:`მასივი`};return e=>{switch(e.code){case`invalid_type`:{let t=r[e.expected]??e.expected,n=w(e.input),i=r[n]??n;return/^[A-Z]/.test(e.expected)?`არასწორი შეყვანა: მოსალოდნელი instanceof ${e.expected}, მიღებული ${i}`:`არასწორი შეყვანა: მოსალოდნელი ${t}, მიღებული ${i}`}case`invalid_value`:return e.values.length===1?`არასწორი შეყვანა: მოსალოდნელი ${C(e.values[0])}`:`არასწორი ვარიანტი: მოსალოდნელია ერთ-ერთი ${b(e.values,`|`)}-დან`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`ზედმეტად დიდი: მოსალოდნელი ${e.origin??`მნიშვნელობა`} ${r.verb} ${n}${e.maximum.toString()} ${r.unit}`:`ზედმეტად დიდი: მოსალოდნელი ${e.origin??`მნიშვნელობა`} იყოს ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`ზედმეტად პატარა: მოსალოდნელი ${e.origin} ${r.verb} ${n}${e.minimum.toString()} ${r.unit}`:`ზედმეტად პატარა: მოსალოდნელი ${e.origin} იყოს ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`არასწორი სტრინგი: უნდა იწყებოდეს "${t.prefix}"-ით`:t.format===`ends_with`?`არასწორი სტრინგი: უნდა მთავრდებოდეს "${t.suffix}"-ით`:t.format===`includes`?`არასწორი სტრინგი: უნდა შეიცავდეს "${t.includes}"-ს`:t.format===`regex`?`არასწორი სტრინგი: უნდა შეესაბამებოდეს შაბლონს ${t.pattern}`:`არასწორი ${n[t.format]??e.format}`}case`not_multiple_of`:return`არასწორი რიცხვი: უნდა იყოს ${e.divisor}-ის ჯერადი`;case`unrecognized_keys`:return`უცნობი გასაღებ${e.keys.length>1?`ები`:`ი`}: ${b(e.keys,`, `)}`;case`invalid_key`:return`არასწორი გასაღები ${e.origin}-ში`;case`invalid_union`:return`არასწორი შეყვანა`;case`invalid_element`:return`არასწორი მნიშვნელობა ${e.origin}-ში`;default:return`არასწორი შეყვანა`}}};function Yo(){return{localeError:Jo()}}const Xo=()=>{let e={string:{unit:`តួអក្សរ`,verb:`គួរមាន`},file:{unit:`បៃ`,verb:`គួរមាន`},array:{unit:`ធាតុ`,verb:`គួរមាន`},set:{unit:`ធាតុ`,verb:`គួរមាន`}};function t(t){return e[t]??null}let n={regex:`ទិន្នន័យបញ្ចូល`,email:`អាសយដ្ឋានអ៊ីមែល`,url:`URL`,emoji:`សញ្ញាអារម្មណ៍`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`កាលបរិច្ឆេទ និងម៉ោង ISO`,date:`កាលបរិច្ឆេទ ISO`,time:`ម៉ោង ISO`,duration:`រយៈពេល ISO`,ipv4:`អាសយដ្ឋាន IPv4`,ipv6:`អាសយដ្ឋាន IPv6`,cidrv4:`ដែនអាសយដ្ឋាន IPv4`,cidrv6:`ដែនអាសយដ្ឋាន IPv6`,base64:`ខ្សែអក្សរអ៊ិកូដ base64`,base64url:`ខ្សែអក្សរអ៊ិកូដ base64url`,json_string:`ខ្សែអក្សរ JSON`,e164:`លេខ E.164`,jwt:`JWT`,template_literal:`ទិន្នន័យបញ្ចូល`},r={nan:`NaN`,number:`លេខ`,array:`អារេ (Array)`,null:`គ្មានតម្លៃ (null)`};return e=>{switch(e.code){case`invalid_type`:{let t=r[e.expected]??e.expected,n=w(e.input),i=r[n]??n;return/^[A-Z]/.test(e.expected)?`ទិន្នន័យបញ្ចូលមិនត្រឹមត្រូវ៖ ត្រូវការ instanceof ${e.expected} ប៉ុន្តែទទួលបាន ${i}`:`ទិន្នន័យបញ្ចូលមិនត្រឹមត្រូវ៖ ត្រូវការ ${t} ប៉ុន្តែទទួលបាន ${i}`}case`invalid_value`:return e.values.length===1?`ទិន្នន័យបញ្ចូលមិនត្រឹមត្រូវ៖ ត្រូវការ ${C(e.values[0])}`:`ជម្រើសមិនត្រឹមត្រូវ៖ ត្រូវជាមួយក្នុងចំណោម ${b(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`ធំពេក៖ ត្រូវការ ${e.origin??`តម្លៃ`} ${n} ${e.maximum.toString()} ${r.unit??`ធាតុ`}`:`ធំពេក៖ ត្រូវការ ${e.origin??`តម្លៃ`} ${n} ${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`តូចពេក៖ ត្រូវការ ${e.origin} ${n} ${e.minimum.toString()} ${r.unit}`:`តូចពេក៖ ត្រូវការ ${e.origin} ${n} ${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`ខ្សែអក្សរមិនត្រឹមត្រូវ៖ ត្រូវចាប់ផ្តើមដោយ "${t.prefix}"`:t.format===`ends_with`?`ខ្សែអក្សរមិនត្រឹមត្រូវ៖ ត្រូវបញ្ចប់ដោយ "${t.suffix}"`:t.format===`includes`?`ខ្សែអក្សរមិនត្រឹមត្រូវ៖ ត្រូវមាន "${t.includes}"`:t.format===`regex`?`ខ្សែអក្សរមិនត្រឹមត្រូវ៖ ត្រូវតែផ្គូផ្គងនឹងទម្រង់ដែលបានកំណត់ ${t.pattern}`:`មិនត្រឹមត្រូវ៖ ${n[t.format]??e.format}`}case`not_multiple_of`:return`លេខមិនត្រឹមត្រូវ៖ ត្រូវតែជាពហុគុណនៃ ${e.divisor}`;case`unrecognized_keys`:return`រកឃើញសោមិនស្គាល់៖ ${b(e.keys,`, `)}`;case`invalid_key`:return`សោមិនត្រឹមត្រូវនៅក្នុង ${e.origin}`;case`invalid_union`:return`ទិន្នន័យមិនត្រឹមត្រូវ`;case`invalid_element`:return`ទិន្នន័យមិនត្រឹមត្រូវនៅក្នុង ${e.origin}`;default:return`ទិន្នន័យមិនត្រឹមត្រូវ`}}};function Zo(){return{localeError:Xo()}}function Qo(){return Zo()}const $o=()=>{let e={string:{unit:`문자`,verb:`to have`},file:{unit:`바이트`,verb:`to have`},array:{unit:`개`,verb:`to have`},set:{unit:`개`,verb:`to have`}};function t(t){return e[t]??null}let n={regex:`입력`,email:`이메일 주소`,url:`URL`,emoji:`이모지`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO 날짜시간`,date:`ISO 날짜`,time:`ISO 시간`,duration:`ISO 기간`,ipv4:`IPv4 주소`,ipv6:`IPv6 주소`,cidrv4:`IPv4 범위`,cidrv6:`IPv6 범위`,base64:`base64 인코딩 문자열`,base64url:`base64url 인코딩 문자열`,json_string:`JSON 문자열`,e164:`E.164 번호`,jwt:`JWT`,template_literal:`입력`},r={nan:`NaN`};return e=>{switch(e.code){case`invalid_type`:{let t=r[e.expected]??e.expected,n=w(e.input),i=r[n]??n;return/^[A-Z]/.test(e.expected)?`잘못된 입력: 예상 타입은 instanceof ${e.expected}, 받은 타입은 ${i}입니다`:`잘못된 입력: 예상 타입은 ${t}, 받은 타입은 ${i}입니다`}case`invalid_value`:return e.values.length===1?`잘못된 입력: 값은 ${C(e.values[0])} 이어야 합니다`:`잘못된 옵션: ${b(e.values,`또는 `)} 중 하나여야 합니다`;case`too_big`:{let n=e.inclusive?`이하`:`미만`,r=n===`미만`?`이어야 합니다`:`여야 합니다`,i=t(e.origin),a=i?.unit??`요소`;return i?`${e.origin??`값`}이 너무 큽니다: ${e.maximum.toString()}${a} ${n}${r}`:`${e.origin??`값`}이 너무 큽니다: ${e.maximum.toString()} ${n}${r}`}case`too_small`:{let n=e.inclusive?`이상`:`초과`,r=n===`이상`?`이어야 합니다`:`여야 합니다`,i=t(e.origin),a=i?.unit??`요소`;return i?`${e.origin??`값`}이 너무 작습니다: ${e.minimum.toString()}${a} ${n}${r}`:`${e.origin??`값`}이 너무 작습니다: ${e.minimum.toString()} ${n}${r}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`잘못된 문자열: "${t.prefix}"(으)로 시작해야 합니다`:t.format===`ends_with`?`잘못된 문자열: "${t.suffix}"(으)로 끝나야 합니다`:t.format===`includes`?`잘못된 문자열: "${t.includes}"을(를) 포함해야 합니다`:t.format===`regex`?`잘못된 문자열: 정규식 ${t.pattern} 패턴과 일치해야 합니다`:`잘못된 ${n[t.format]??e.format}`}case`not_multiple_of`:return`잘못된 숫자: ${e.divisor}의 배수여야 합니다`;case`unrecognized_keys`:return`인식할 수 없는 키: ${b(e.keys,`, `)}`;case`invalid_key`:return`잘못된 키: ${e.origin}`;case`invalid_union`:return`잘못된 입력`;case`invalid_element`:return`잘못된 값: ${e.origin}`;default:return`잘못된 입력`}}};function es(){return{localeError:$o()}}const ts=e=>e.charAt(0).toUpperCase()+e.slice(1);function ns(e){let t=Math.abs(e),n=t%10,r=t%100;return r>=11&&r<=19||n===0?`many`:n===1?`one`:`few`}const rs=()=>{let e={string:{unit:{one:`simbolis`,few:`simboliai`,many:`simbolių`},verb:{smaller:{inclusive:`turi būti ne ilgesnė kaip`,notInclusive:`turi būti trumpesnė kaip`},bigger:{inclusive:`turi būti ne trumpesnė kaip`,notInclusive:`turi būti ilgesnė kaip`}}},file:{unit:{one:`baitas`,few:`baitai`,many:`baitų`},verb:{smaller:{inclusive:`turi būti ne didesnis kaip`,notInclusive:`turi būti mažesnis kaip`},bigger:{inclusive:`turi būti ne mažesnis kaip`,notInclusive:`turi būti didesnis kaip`}}},array:{unit:{one:`elementą`,few:`elementus`,many:`elementų`},verb:{smaller:{inclusive:`turi turėti ne daugiau kaip`,notInclusive:`turi turėti mažiau kaip`},bigger:{inclusive:`turi turėti ne mažiau kaip`,notInclusive:`turi turėti daugiau kaip`}}},set:{unit:{one:`elementą`,few:`elementus`,many:`elementų`},verb:{smaller:{inclusive:`turi turėti ne daugiau kaip`,notInclusive:`turi turėti mažiau kaip`},bigger:{inclusive:`turi turėti ne mažiau kaip`,notInclusive:`turi turėti daugiau kaip`}}}};function t(t,n,r,i){let a=e[t]??null;return a===null?a:{unit:a.unit[n],verb:a.verb[i][r?`inclusive`:`notInclusive`]}}let n={regex:`įvestis`,email:`el. pašto 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ė`,ipv4:`IPv4 adresas`,ipv6:`IPv6 adresas`,cidrv4:`IPv4 tinklo prefiksas (CIDR)`,cidrv6:`IPv6 tinklo prefiksas (CIDR)`,base64:`base64 užkoduota eilutė`,base64url:`base64url užkoduota eilutė`,json_string:`JSON eilutė`,e164:`E.164 numeris`,jwt:`JWT`,template_literal:`įvestis`},r={nan:`NaN`,number:`skaičius`,bigint:`sveikasis skaičius`,string:`eilutė`,boolean:`loginė reikšmė`,undefined:`neapibrėžta reikšmė`,function:`funkcija`,symbol:`simbolis`,array:`masyvas`,object:`objektas`,null:`nulinė reikšmė`};return e=>{switch(e.code){case`invalid_type`:{let t=r[e.expected]??e.expected,n=w(e.input),i=r[n]??n;return/^[A-Z]/.test(e.expected)?`Gautas tipas ${i}, o tikėtasi - instanceof ${e.expected}`:`Gautas tipas ${i}, o tikėtasi - ${t}`}case`invalid_value`:return e.values.length===1?`Privalo būti ${C(e.values[0])}`:`Privalo būti vienas iš ${b(e.values,`|`)} pasirinkimų`;case`too_big`:{let n=r[e.origin]??e.origin,i=t(e.origin,ns(Number(e.maximum)),e.inclusive??!1,`smaller`);if(i?.verb)return`${ts(n??e.origin??`reikšmė`)} ${i.verb} ${e.maximum.toString()} ${i.unit??`elementų`}`;let a=e.inclusive?`ne didesnis kaip`:`mažesnis kaip`;return`${ts(n??e.origin??`reikšmė`)} turi būti ${a} ${e.maximum.toString()} ${i?.unit}`}case`too_small`:{let n=r[e.origin]??e.origin,i=t(e.origin,ns(Number(e.minimum)),e.inclusive??!1,`bigger`);if(i?.verb)return`${ts(n??e.origin??`reikšmė`)} ${i.verb} ${e.minimum.toString()} ${i.unit??`elementų`}`;let a=e.inclusive?`ne mažesnis kaip`:`didesnis kaip`;return`${ts(n??e.origin??`reikšmė`)} turi būti ${a} ${e.minimum.toString()} ${i?.unit}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Eilutė privalo prasidėti "${t.prefix}"`:t.format===`ends_with`?`Eilutė privalo pasibaigti "${t.suffix}"`:t.format===`includes`?`Eilutė privalo įtraukti "${t.includes}"`:t.format===`regex`?`Eilutė privalo atitikti ${t.pattern}`:`Neteisingas ${n[t.format]??e.format}`}case`not_multiple_of`:return`Skaičius privalo būti ${e.divisor} kartotinis.`;case`unrecognized_keys`:return`Neatpažint${e.keys.length>1?`i`:`as`} rakt${e.keys.length>1?`ai`:`as`}: ${b(e.keys,`, `)}`;case`invalid_key`:return`Rastas klaidingas raktas`;case`invalid_union`:return`Klaidinga įvestis`;case`invalid_element`:return`${ts(r[e.origin]??e.origin??e.origin??`reikšmė`)} turi klaidingą įvestį`;default:return`Klaidinga įvestis`}}};function is(){return{localeError:rs()}}const as=()=>{let e={string:{unit:`знаци`,verb:`да имаат`},file:{unit:`бајти`,verb:`да имаат`},array:{unit:`ставки`,verb:`да имаат`},set:{unit:`ставки`,verb:`да имаат`}};function t(t){return e[t]??null}let n={regex:`внес`,email:`адреса на е-пошта`,url:`URL`,emoji:`емоџи`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO датум и време`,date:`ISO датум`,time:`ISO време`,duration:`ISO времетраење`,ipv4:`IPv4 адреса`,ipv6:`IPv6 адреса`,cidrv4:`IPv4 опсег`,cidrv6:`IPv6 опсег`,base64:`base64-енкодирана низа`,base64url:`base64url-енкодирана низа`,json_string:`JSON низа`,e164:`E.164 број`,jwt:`JWT`,template_literal:`внес`},r={nan:`NaN`,number:`број`,array:`низа`};return e=>{switch(e.code){case`invalid_type`:{let t=r[e.expected]??e.expected,n=w(e.input),i=r[n]??n;return/^[A-Z]/.test(e.expected)?`Грешен внес: се очекува instanceof ${e.expected}, примено ${i}`:`Грешен внес: се очекува ${t}, примено ${i}`}case`invalid_value`:return e.values.length===1?`Invalid input: expected ${C(e.values[0])}`:`Грешана опција: се очекува една ${b(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Премногу голем: се очекува ${e.origin??`вредноста`} да има ${n}${e.maximum.toString()} ${r.unit??`елементи`}`:`Премногу голем: се очекува ${e.origin??`вредноста`} да биде ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Премногу мал: се очекува ${e.origin} да има ${n}${e.minimum.toString()} ${r.unit}`:`Премногу мал: се очекува ${e.origin} да биде ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Неважечка низа: мора да започнува со "${t.prefix}"`:t.format===`ends_with`?`Неважечка низа: мора да завршува со "${t.suffix}"`:t.format===`includes`?`Неважечка низа: мора да вклучува "${t.includes}"`:t.format===`regex`?`Неважечка низа: мора да одгоара на патернот ${t.pattern}`:`Invalid ${n[t.format]??e.format}`}case`not_multiple_of`:return`Грешен број: мора да биде делив со ${e.divisor}`;case`unrecognized_keys`:return`${e.keys.length>1?`Непрепознаени клучеви`:`Непрепознаен клуч`}: ${b(e.keys,`, `)}`;case`invalid_key`:return`Грешен клуч во ${e.origin}`;case`invalid_union`:return`Грешен внес`;case`invalid_element`:return`Грешна вредност во ${e.origin}`;default:return`Грешен внес`}}};function os(){return{localeError:as()}}const ss=()=>{let e={string:{unit:`aksara`,verb:`mempunyai`},file:{unit:`bait`,verb:`mempunyai`},array:{unit:`elemen`,verb:`mempunyai`},set:{unit:`elemen`,verb:`mempunyai`}};function t(t){return e[t]??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`},r={nan:`NaN`,number:`nombor`};return e=>{switch(e.code){case`invalid_type`:{let t=r[e.expected]??e.expected,n=w(e.input),i=r[n]??n;return/^[A-Z]/.test(e.expected)?`Input tidak sah: dijangka instanceof ${e.expected}, diterima ${i}`:`Input tidak sah: dijangka ${t}, diterima ${i}`}case`invalid_value`:return e.values.length===1?`Input tidak sah: dijangka ${C(e.values[0])}`:`Pilihan tidak sah: dijangka salah satu daripada ${b(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Terlalu besar: dijangka ${e.origin??`nilai`} ${r.verb} ${n}${e.maximum.toString()} ${r.unit??`elemen`}`:`Terlalu besar: dijangka ${e.origin??`nilai`} adalah ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Terlalu kecil: dijangka ${e.origin} ${r.verb} ${n}${e.minimum.toString()} ${r.unit}`:`Terlalu kecil: dijangka ${e.origin} adalah ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`String tidak sah: mesti bermula dengan "${t.prefix}"`:t.format===`ends_with`?`String tidak sah: mesti berakhir dengan "${t.suffix}"`:t.format===`includes`?`String tidak sah: mesti mengandungi "${t.includes}"`:t.format===`regex`?`String tidak sah: mesti sepadan dengan corak ${t.pattern}`:`${n[t.format]??e.format} tidak sah`}case`not_multiple_of`:return`Nombor tidak sah: perlu gandaan ${e.divisor}`;case`unrecognized_keys`:return`Kunci tidak dikenali: ${b(e.keys,`, `)}`;case`invalid_key`:return`Kunci tidak sah dalam ${e.origin}`;case`invalid_union`:return`Input tidak sah`;case`invalid_element`:return`Nilai tidak sah dalam ${e.origin}`;default:return`Input tidak sah`}}};function cs(){return{localeError:ss()}}const ls=()=>{let e={string:{unit:`tekens`,verb:`heeft`},file:{unit:`bytes`,verb:`heeft`},array:{unit:`elementen`,verb:`heeft`},set:{unit:`elementen`,verb:`heeft`}};function t(t){return e[t]??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`},r={nan:`NaN`,number:`getal`};return e=>{switch(e.code){case`invalid_type`:{let t=r[e.expected]??e.expected,n=w(e.input),i=r[n]??n;return/^[A-Z]/.test(e.expected)?`Ongeldige invoer: verwacht instanceof ${e.expected}, ontving ${i}`:`Ongeldige invoer: verwacht ${t}, ontving ${i}`}case`invalid_value`:return e.values.length===1?`Ongeldige invoer: verwacht ${C(e.values[0])}`:`Ongeldige optie: verwacht één van ${b(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin),i=e.origin===`date`?`laat`:e.origin===`string`?`lang`:`groot`;return r?`Te ${i}: verwacht dat ${e.origin??`waarde`} ${n}${e.maximum.toString()} ${r.unit??`elementen`} ${r.verb}`:`Te ${i}: verwacht dat ${e.origin??`waarde`} ${n}${e.maximum.toString()} is`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin),i=e.origin===`date`?`vroeg`:e.origin===`string`?`kort`:`klein`;return r?`Te ${i}: verwacht dat ${e.origin} ${n}${e.minimum.toString()} ${r.unit} ${r.verb}`:`Te ${i}: verwacht dat ${e.origin} ${n}${e.minimum.toString()} is`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Ongeldige tekst: moet met "${t.prefix}" beginnen`:t.format===`ends_with`?`Ongeldige tekst: moet op "${t.suffix}" eindigen`:t.format===`includes`?`Ongeldige tekst: moet "${t.includes}" bevatten`:t.format===`regex`?`Ongeldige tekst: moet overeenkomen met patroon ${t.pattern}`:`Ongeldig: ${n[t.format]??e.format}`}case`not_multiple_of`:return`Ongeldig getal: moet een veelvoud van ${e.divisor} zijn`;case`unrecognized_keys`:return`Onbekende key${e.keys.length>1?`s`:``}: ${b(e.keys,`, `)}`;case`invalid_key`:return`Ongeldige key in ${e.origin}`;case`invalid_union`:return`Ongeldige invoer`;case`invalid_element`:return`Ongeldige waarde in ${e.origin}`;default:return`Ongeldige invoer`}}};function us(){return{localeError:ls()}}const ds=()=>{let e={string:{unit:`tegn`,verb:`å ha`},file:{unit:`bytes`,verb:`å ha`},array:{unit:`elementer`,verb:`å inneholde`},set:{unit:`elementer`,verb:`å inneholde`}};function t(t){return e[t]??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åde`,ipv6:`IPv6-område`,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`},r={nan:`NaN`,number:`tall`,array:`liste`};return e=>{switch(e.code){case`invalid_type`:{let t=r[e.expected]??e.expected,n=w(e.input),i=r[n]??n;return/^[A-Z]/.test(e.expected)?`Ugyldig input: forventet instanceof ${e.expected}, fikk ${i}`:`Ugyldig input: forventet ${t}, fikk ${i}`}case`invalid_value`:return e.values.length===1?`Ugyldig verdi: forventet ${C(e.values[0])}`:`Ugyldig valg: forventet en av ${b(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`For stor(t): forventet ${e.origin??`value`} til å ha ${n}${e.maximum.toString()} ${r.unit??`elementer`}`:`For stor(t): forventet ${e.origin??`value`} til å ha ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`For lite(n): forventet ${e.origin} til å ha ${n}${e.minimum.toString()} ${r.unit}`:`For lite(n): forventet ${e.origin} til å ha ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Ugyldig streng: må starte med "${t.prefix}"`:t.format===`ends_with`?`Ugyldig streng: må ende med "${t.suffix}"`:t.format===`includes`?`Ugyldig streng: må inneholde "${t.includes}"`:t.format===`regex`?`Ugyldig streng: må matche mønsteret ${t.pattern}`:`Ugyldig ${n[t.format]??e.format}`}case`not_multiple_of`:return`Ugyldig tall: må være et multiplum av ${e.divisor}`;case`unrecognized_keys`:return`${e.keys.length>1?`Ukjente nøkler`:`Ukjent nøkkel`}: ${b(e.keys,`, `)}`;case`invalid_key`:return`Ugyldig nøkkel i ${e.origin}`;case`invalid_union`:return`Ugyldig input`;case`invalid_element`:return`Ugyldig verdi i ${e.origin}`;default:return`Ugyldig input`}}};function fs(){return{localeError:ds()}}const ps=()=>{let e={string:{unit:`harf`,verb:`olmalıdır`},file:{unit:`bayt`,verb:`olmalıdır`},array:{unit:`unsur`,verb:`olmalıdır`},set:{unit:`unsur`,verb:`olmalıdır`}};function t(t){return e[t]??null}let n={regex:`giren`,email:`epostagâh`,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âmı`,date:`ISO tarihi`,time:`ISO zamanı`,duration:`ISO müddeti`,ipv4:`IPv4 nişânı`,ipv6:`IPv6 nişânı`,cidrv4:`IPv4 menzili`,cidrv6:`IPv6 menzili`,base64:`base64-şifreli metin`,base64url:`base64url-şifreli metin`,json_string:`JSON metin`,e164:`E.164 sayısı`,jwt:`JWT`,template_literal:`giren`},r={nan:`NaN`,number:`numara`,array:`saf`,null:`gayb`};return e=>{switch(e.code){case`invalid_type`:{let t=r[e.expected]??e.expected,n=w(e.input),i=r[n]??n;return/^[A-Z]/.test(e.expected)?`Fâsit giren: umulan instanceof ${e.expected}, alınan ${i}`:`Fâsit giren: umulan ${t}, alınan ${i}`}case`invalid_value`:return e.values.length===1?`Fâsit giren: umulan ${C(e.values[0])}`:`Fâsit tercih: mûteberler ${b(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Fazla büyük: ${e.origin??`value`}, ${n}${e.maximum.toString()} ${r.unit??`elements`} sahip olmalıydı.`:`Fazla büyük: ${e.origin??`value`}, ${n}${e.maximum.toString()} olmalıydı.`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Fazla küçük: ${e.origin}, ${n}${e.minimum.toString()} ${r.unit} sahip olmalıydı.`:`Fazla küçük: ${e.origin}, ${n}${e.minimum.toString()} olmalıydı.`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Fâsit metin: "${t.prefix}" ile başlamalı.`:t.format===`ends_with`?`Fâsit metin: "${t.suffix}" ile bitmeli.`:t.format===`includes`?`Fâsit metin: "${t.includes}" ihtivâ etmeli.`:t.format===`regex`?`Fâsit metin: ${t.pattern} nakşına uymalı.`:`Fâsit ${n[t.format]??e.format}`}case`not_multiple_of`:return`Fâsit sayı: ${e.divisor} katı olmalıydı.`;case`unrecognized_keys`:return`Tanınmayan anahtar ${e.keys.length>1?`s`:``}: ${b(e.keys,`, `)}`;case`invalid_key`:return`${e.origin} için tanınmayan anahtar var.`;case`invalid_union`:return`Giren tanınamadı.`;case`invalid_element`:return`${e.origin} için tanınmayan kıymet var.`;default:return`Kıymet tanınamadı.`}}};function ms(){return{localeError:ps()}}const hs=()=>{let e={string:{unit:`توکي`,verb:`ولري`},file:{unit:`بایټس`,verb:`ولري`},array:{unit:`توکي`,verb:`ولري`},set:{unit:`توکي`,verb:`ولري`}};function t(t){return e[t]??null}let n={regex:`ورودي`,email:`بریښنالیک`,url:`یو آر ال`,emoji:`ایموجي`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`نیټه او وخت`,date:`نېټه`,time:`وخت`,duration:`موده`,ipv4:`د IPv4 پته`,ipv6:`د IPv6 پته`,cidrv4:`د IPv4 ساحه`,cidrv6:`د IPv6 ساحه`,base64:`base64-encoded متن`,base64url:`base64url-encoded متن`,json_string:`JSON متن`,e164:`د E.164 شمېره`,jwt:`JWT`,template_literal:`ورودي`},r={nan:`NaN`,number:`عدد`,array:`ارې`};return e=>{switch(e.code){case`invalid_type`:{let t=r[e.expected]??e.expected,n=w(e.input),i=r[n]??n;return/^[A-Z]/.test(e.expected)?`ناسم ورودي: باید instanceof ${e.expected} وای, مګر ${i} ترلاسه شو`:`ناسم ورودي: باید ${t} وای, مګر ${i} ترلاسه شو`}case`invalid_value`:return e.values.length===1?`ناسم ورودي: باید ${C(e.values[0])} وای`:`ناسم انتخاب: باید یو له ${b(e.values,`|`)} څخه وای`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`ډیر لوی: ${e.origin??`ارزښت`} باید ${n}${e.maximum.toString()} ${r.unit??`عنصرونه`} ولري`:`ډیر لوی: ${e.origin??`ارزښت`} باید ${n}${e.maximum.toString()} وي`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`ډیر کوچنی: ${e.origin} باید ${n}${e.minimum.toString()} ${r.unit} ولري`:`ډیر کوچنی: ${e.origin} باید ${n}${e.minimum.toString()} وي`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`ناسم متن: باید د "${t.prefix}" سره پیل شي`:t.format===`ends_with`?`ناسم متن: باید د "${t.suffix}" سره پای ته ورسيږي`:t.format===`includes`?`ناسم متن: باید "${t.includes}" ولري`:t.format===`regex`?`ناسم متن: باید د ${t.pattern} سره مطابقت ولري`:`${n[t.format]??e.format} ناسم دی`}case`not_multiple_of`:return`ناسم عدد: باید د ${e.divisor} مضرب وي`;case`unrecognized_keys`:return`ناسم ${e.keys.length>1?`کلیډونه`:`کلیډ`}: ${b(e.keys,`, `)}`;case`invalid_key`:return`ناسم کلیډ په ${e.origin} کې`;case`invalid_union`:return`ناسمه ورودي`;case`invalid_element`:return`ناسم عنصر په ${e.origin} کې`;default:return`ناسمه ورودي`}}};function gs(){return{localeError:hs()}}const _s=()=>{let e={string:{unit:`znaków`,verb:`mieć`},file:{unit:`bajtów`,verb:`mieć`},array:{unit:`elementów`,verb:`mieć`},set:{unit:`elementów`,verb:`mieć`}};function t(t){return e[t]??null}let n={regex:`wyrażenie`,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ąg znaków zakodowany w formacie base64`,base64url:`ciąg znaków zakodowany w formacie base64url`,json_string:`ciąg znaków w formacie JSON`,e164:`liczba E.164`,jwt:`JWT`,template_literal:`wejście`},r={nan:`NaN`,number:`liczba`,array:`tablica`};return e=>{switch(e.code){case`invalid_type`:{let t=r[e.expected]??e.expected,n=w(e.input),i=r[n]??n;return/^[A-Z]/.test(e.expected)?`Nieprawidłowe dane wejściowe: oczekiwano instanceof ${e.expected}, otrzymano ${i}`:`Nieprawidłowe dane wejściowe: oczekiwano ${t}, otrzymano ${i}`}case`invalid_value`:return e.values.length===1?`Nieprawidłowe dane wejściowe: oczekiwano ${C(e.values[0])}`:`Nieprawidłowa opcja: oczekiwano jednej z wartości ${b(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Za duża wartość: oczekiwano, że ${e.origin??`wartość`} będzie mieć ${n}${e.maximum.toString()} ${r.unit??`elementów`}`:`Zbyt duż(y/a/e): oczekiwano, że ${e.origin??`wartość`} będzie wynosić ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Za mała wartość: oczekiwano, że ${e.origin??`wartość`} będzie mieć ${n}${e.minimum.toString()} ${r.unit??`elementów`}`:`Zbyt mał(y/a/e): oczekiwano, że ${e.origin??`wartość`} będzie wynosić ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Nieprawidłowy ciąg znaków: musi zaczynać się od "${t.prefix}"`:t.format===`ends_with`?`Nieprawidłowy ciąg znaków: musi kończyć się na "${t.suffix}"`:t.format===`includes`?`Nieprawidłowy ciąg znaków: musi zawierać "${t.includes}"`:t.format===`regex`?`Nieprawidłowy ciąg znaków: musi odpowiadać wzorcowi ${t.pattern}`:`Nieprawidłow(y/a/e) ${n[t.format]??e.format}`}case`not_multiple_of`:return`Nieprawidłowa liczba: musi być wielokrotnością ${e.divisor}`;case`unrecognized_keys`:return`Nierozpoznane klucze${e.keys.length>1?`s`:``}: ${b(e.keys,`, `)}`;case`invalid_key`:return`Nieprawidłowy klucz w ${e.origin}`;case`invalid_union`:return`Nieprawidłowe dane wejściowe`;case`invalid_element`:return`Nieprawidłowa wartość w ${e.origin}`;default:return`Nieprawidłowe dane wejściowe`}}};function vs(){return{localeError:_s()}}const ys=()=>{let e={string:{unit:`caracteres`,verb:`ter`},file:{unit:`bytes`,verb:`ter`},array:{unit:`itens`,verb:`ter`},set:{unit:`itens`,verb:`ter`}};function t(t){return e[t]??null}let n={regex:`padrão`,email:`endereço 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ção ISO`,ipv4:`endereço IPv4`,ipv6:`endereço 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úmero E.164`,jwt:`JWT`,template_literal:`entrada`},r={nan:`NaN`,number:`número`,null:`nulo`};return e=>{switch(e.code){case`invalid_type`:{let t=r[e.expected]??e.expected,n=w(e.input),i=r[n]??n;return/^[A-Z]/.test(e.expected)?`Tipo inválido: esperado instanceof ${e.expected}, recebido ${i}`:`Tipo inválido: esperado ${t}, recebido ${i}`}case`invalid_value`:return e.values.length===1?`Entrada inválida: esperado ${C(e.values[0])}`:`Opção inválida: esperada uma das ${b(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Muito grande: esperado que ${e.origin??`valor`} tivesse ${n}${e.maximum.toString()} ${r.unit??`elementos`}`:`Muito grande: esperado que ${e.origin??`valor`} fosse ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Muito pequeno: esperado que ${e.origin} tivesse ${n}${e.minimum.toString()} ${r.unit}`:`Muito pequeno: esperado que ${e.origin} fosse ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Texto inválido: deve começar com "${t.prefix}"`:t.format===`ends_with`?`Texto inválido: deve terminar com "${t.suffix}"`:t.format===`includes`?`Texto inválido: deve incluir "${t.includes}"`:t.format===`regex`?`Texto inválido: deve corresponder ao padrão ${t.pattern}`:`${n[t.format]??e.format} inválido`}case`not_multiple_of`:return`Número inválido: deve ser múltiplo de ${e.divisor}`;case`unrecognized_keys`:return`Chave${e.keys.length>1?`s`:``} desconhecida${e.keys.length>1?`s`:``}: ${b(e.keys,`, `)}`;case`invalid_key`:return`Chave inválida em ${e.origin}`;case`invalid_union`:return`Entrada inválida`;case`invalid_element`:return`Valor inválido em ${e.origin}`;default:return`Campo inválido`}}};function bs(){return{localeError:ys()}}function xs(e,t,n,r){let i=Math.abs(e),a=i%10,o=i%100;return o>=11&&o<=19?r:a===1?t:a>=2&&a<=4?n:r}const Ss=()=>{let e={string:{unit:{one:`символ`,few:`символа`,many:`символов`},verb:`иметь`},file:{unit:{one:`байт`,few:`байта`,many:`байт`},verb:`иметь`},array:{unit:{one:`элемент`,few:`элемента`,many:`элементов`},verb:`иметь`},set:{unit:{one:`элемент`,few:`элемента`,many:`элементов`},verb:`иметь`}};function t(t){return e[t]??null}let n={regex:`ввод`,email:`email адрес`,url:`URL`,emoji:`эмодзи`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO дата и время`,date:`ISO дата`,time:`ISO время`,duration:`ISO длительность`,ipv4:`IPv4 адрес`,ipv6:`IPv6 адрес`,cidrv4:`IPv4 диапазон`,cidrv6:`IPv6 диапазон`,base64:`строка в формате base64`,base64url:`строка в формате base64url`,json_string:`JSON строка`,e164:`номер E.164`,jwt:`JWT`,template_literal:`ввод`},r={nan:`NaN`,number:`число`,array:`массив`};return e=>{switch(e.code){case`invalid_type`:{let t=r[e.expected]??e.expected,n=w(e.input),i=r[n]??n;return/^[A-Z]/.test(e.expected)?`Неверный ввод: ожидалось instanceof ${e.expected}, получено ${i}`:`Неверный ввод: ожидалось ${t}, получено ${i}`}case`invalid_value`:return e.values.length===1?`Неверный ввод: ожидалось ${C(e.values[0])}`:`Неверный вариант: ожидалось одно из ${b(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);if(r){let t=xs(Number(e.maximum),r.unit.one,r.unit.few,r.unit.many);return`Слишком большое значение: ожидалось, что ${e.origin??`значение`} будет иметь ${n}${e.maximum.toString()} ${t}`}return`Слишком большое значение: ожидалось, что ${e.origin??`значение`} будет ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);if(r){let t=xs(Number(e.minimum),r.unit.one,r.unit.few,r.unit.many);return`Слишком маленькое значение: ожидалось, что ${e.origin} будет иметь ${n}${e.minimum.toString()} ${t}`}return`Слишком маленькое значение: ожидалось, что ${e.origin} будет ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Неверная строка: должна начинаться с "${t.prefix}"`:t.format===`ends_with`?`Неверная строка: должна заканчиваться на "${t.suffix}"`:t.format===`includes`?`Неверная строка: должна содержать "${t.includes}"`:t.format===`regex`?`Неверная строка: должна соответствовать шаблону ${t.pattern}`:`Неверный ${n[t.format]??e.format}`}case`not_multiple_of`:return`Неверное число: должно быть кратным ${e.divisor}`;case`unrecognized_keys`:return`Нераспознанн${e.keys.length>1?`ые`:`ый`} ключ${e.keys.length>1?`и`:``}: ${b(e.keys,`, `)}`;case`invalid_key`:return`Неверный ключ в ${e.origin}`;case`invalid_union`:return`Неверные входные данные`;case`invalid_element`:return`Неверное значение в ${e.origin}`;default:return`Неверные входные данные`}}};function Cs(){return{localeError:Ss()}}const ws=()=>{let e={string:{unit:`znakov`,verb:`imeti`},file:{unit:`bajtov`,verb:`imeti`},array:{unit:`elementov`,verb:`imeti`},set:{unit:`elementov`,verb:`imeti`}};function t(t){return e[t]??null}let n={regex:`vnos`,email:`e-poštni 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 čas`,date:`ISO datum`,time:`ISO čas`,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 številka`,jwt:`JWT`,template_literal:`vnos`},r={nan:`NaN`,number:`število`,array:`tabela`};return e=>{switch(e.code){case`invalid_type`:{let t=r[e.expected]??e.expected,n=w(e.input),i=r[n]??n;return/^[A-Z]/.test(e.expected)?`Neveljaven vnos: pričakovano instanceof ${e.expected}, prejeto ${i}`:`Neveljaven vnos: pričakovano ${t}, prejeto ${i}`}case`invalid_value`:return e.values.length===1?`Neveljaven vnos: pričakovano ${C(e.values[0])}`:`Neveljavna možnost: pričakovano eno izmed ${b(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Preveliko: pričakovano, da bo ${e.origin??`vrednost`} imelo ${n}${e.maximum.toString()} ${r.unit??`elementov`}`:`Preveliko: pričakovano, da bo ${e.origin??`vrednost`} ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Premajhno: pričakovano, da bo ${e.origin} imelo ${n}${e.minimum.toString()} ${r.unit}`:`Premajhno: pričakovano, da bo ${e.origin} ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Neveljaven niz: mora se začeti z "${t.prefix}"`:t.format===`ends_with`?`Neveljaven niz: mora se končati z "${t.suffix}"`:t.format===`includes`?`Neveljaven niz: mora vsebovati "${t.includes}"`:t.format===`regex`?`Neveljaven niz: mora ustrezati vzorcu ${t.pattern}`:`Neveljaven ${n[t.format]??e.format}`}case`not_multiple_of`:return`Neveljavno število: mora biti večkratnik ${e.divisor}`;case`unrecognized_keys`:return`Neprepoznan${e.keys.length>1?`i ključi`:` ključ`}: ${b(e.keys,`, `)}`;case`invalid_key`:return`Neveljaven ključ v ${e.origin}`;case`invalid_union`:return`Neveljaven vnos`;case`invalid_element`:return`Neveljavna vrednost v ${e.origin}`;default:return`Neveljaven vnos`}}};function Ts(){return{localeError:ws()}}const Es=()=>{let e={string:{unit:`tecken`,verb:`att ha`},file:{unit:`bytes`,verb:`att ha`},array:{unit:`objekt`,verb:`att innehålla`},set:{unit:`objekt`,verb:`att innehålla`}};function t(t){return e[t]??null}let n={regex:`reguljärt 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äng`,base64url:`base64url-kodad sträng`,json_string:`JSON-sträng`,e164:`E.164-nummer`,jwt:`JWT`,template_literal:`mall-literal`},r={nan:`NaN`,number:`antal`,array:`lista`};return e=>{switch(e.code){case`invalid_type`:{let t=r[e.expected]??e.expected,n=w(e.input),i=r[n]??n;return/^[A-Z]/.test(e.expected)?`Ogiltig inmatning: förväntat instanceof ${e.expected}, fick ${i}`:`Ogiltig inmatning: förväntat ${t}, fick ${i}`}case`invalid_value`:return e.values.length===1?`Ogiltig inmatning: förväntat ${C(e.values[0])}`:`Ogiltigt val: förväntade en av ${b(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`För stor(t): förväntade ${e.origin??`värdet`} att ha ${n}${e.maximum.toString()} ${r.unit??`element`}`:`För stor(t): förväntat ${e.origin??`värdet`} att ha ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`För lite(t): förväntade ${e.origin??`värdet`} att ha ${n}${e.minimum.toString()} ${r.unit}`:`För lite(t): förväntade ${e.origin??`värdet`} att ha ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Ogiltig sträng: måste börja med "${t.prefix}"`:t.format===`ends_with`?`Ogiltig sträng: måste sluta med "${t.suffix}"`:t.format===`includes`?`Ogiltig sträng: måste innehålla "${t.includes}"`:t.format===`regex`?`Ogiltig sträng: måste matcha mönstret "${t.pattern}"`:`Ogiltig(t) ${n[t.format]??e.format}`}case`not_multiple_of`:return`Ogiltigt tal: måste vara en multipel av ${e.divisor}`;case`unrecognized_keys`:return`${e.keys.length>1?`Okända nycklar`:`Okänd nyckel`}: ${b(e.keys,`, `)}`;case`invalid_key`:return`Ogiltig nyckel i ${e.origin??`värdet`}`;case`invalid_union`:return`Ogiltig input`;case`invalid_element`:return`Ogiltigt värde i ${e.origin??`värdet`}`;default:return`Ogiltig input`}}};function Ds(){return{localeError:Es()}}const Os=()=>{let e={string:{unit:`எழுத்துக்கள்`,verb:`கொண்டிருக்க வேண்டும்`},file:{unit:`பைட்டுகள்`,verb:`கொண்டிருக்க வேண்டும்`},array:{unit:`உறுப்புகள்`,verb:`கொண்டிருக்க வேண்டும்`},set:{unit:`உறுப்புகள்`,verb:`கொண்டிருக்க வேண்டும்`}};function t(t){return e[t]??null}let n={regex:`உள்ளீடு`,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 தேதி நேரம்`,date:`ISO தேதி`,time:`ISO நேரம்`,duration:`ISO கால அளவு`,ipv4:`IPv4 முகவரி`,ipv6:`IPv6 முகவரி`,cidrv4:`IPv4 வரம்பு`,cidrv6:`IPv6 வரம்பு`,base64:`base64-encoded சரம்`,base64url:`base64url-encoded சரம்`,json_string:`JSON சரம்`,e164:`E.164 எண்`,jwt:`JWT`,template_literal:`input`},r={nan:`NaN`,number:`எண்`,array:`அணி`,null:`வெறுமை`};return e=>{switch(e.code){case`invalid_type`:{let t=r[e.expected]??e.expected,n=w(e.input),i=r[n]??n;return/^[A-Z]/.test(e.expected)?`தவறான உள்ளீடு: எதிர்பார்க்கப்பட்டது instanceof ${e.expected}, பெறப்பட்டது ${i}`:`தவறான உள்ளீடு: எதிர்பார்க்கப்பட்டது ${t}, பெறப்பட்டது ${i}`}case`invalid_value`:return e.values.length===1?`தவறான உள்ளீடு: எதிர்பார்க்கப்பட்டது ${C(e.values[0])}`:`தவறான விருப்பம்: எதிர்பார்க்கப்பட்டது ${b(e.values,`|`)} இல் ஒன்று`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`மிக பெரியது: எதிர்பார்க்கப்பட்டது ${e.origin??`மதிப்பு`} ${n}${e.maximum.toString()} ${r.unit??`உறுப்புகள்`} ஆக இருக்க வேண்டும்`:`மிக பெரியது: எதிர்பார்க்கப்பட்டது ${e.origin??`மதிப்பு`} ${n}${e.maximum.toString()} ஆக இருக்க வேண்டும்`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`மிகச் சிறியது: எதிர்பார்க்கப்பட்டது ${e.origin} ${n}${e.minimum.toString()} ${r.unit} ஆக இருக்க வேண்டும்`:`மிகச் சிறியது: எதிர்பார்க்கப்பட்டது ${e.origin} ${n}${e.minimum.toString()} ஆக இருக்க வேண்டும்`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`தவறான சரம்: "${t.prefix}" இல் தொடங்க வேண்டும்`:t.format===`ends_with`?`தவறான சரம்: "${t.suffix}" இல் முடிவடைய வேண்டும்`:t.format===`includes`?`தவறான சரம்: "${t.includes}" ஐ உள்ளடக்க வேண்டும்`:t.format===`regex`?`தவறான சரம்: ${t.pattern} முறைபாட்டுடன் பொருந்த வேண்டும்`:`தவறான ${n[t.format]??e.format}`}case`not_multiple_of`:return`தவறான எண்: ${e.divisor} இன் பலமாக இருக்க வேண்டும்`;case`unrecognized_keys`:return`அடையாளம் தெரியாத விசை${e.keys.length>1?`கள்`:``}: ${b(e.keys,`, `)}`;case`invalid_key`:return`${e.origin} இல் தவறான விசை`;case`invalid_union`:return`தவறான உள்ளீடு`;case`invalid_element`:return`${e.origin} இல் தவறான மதிப்பு`;default:return`தவறான உள்ளீடு`}}};function ks(){return{localeError:Os()}}const As=()=>{let e={string:{unit:`ตัวอักษร`,verb:`ควรมี`},file:{unit:`ไบต์`,verb:`ควรมี`},array:{unit:`รายการ`,verb:`ควรมี`},set:{unit:`รายการ`,verb:`ควรมี`}};function t(t){return e[t]??null}let n={regex:`ข้อมูลที่ป้อน`,email:`ที่อยู่อีเมล`,url:`URL`,emoji:`อิโมจิ`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`วันที่เวลาแบบ ISO`,date:`วันที่แบบ ISO`,time:`เวลาแบบ ISO`,duration:`ช่วงเวลาแบบ ISO`,ipv4:`ที่อยู่ IPv4`,ipv6:`ที่อยู่ IPv6`,cidrv4:`ช่วง IP แบบ IPv4`,cidrv6:`ช่วง IP แบบ IPv6`,base64:`ข้อความแบบ Base64`,base64url:`ข้อความแบบ Base64 สำหรับ URL`,json_string:`ข้อความแบบ JSON`,e164:`เบอร์โทรศัพท์ระหว่างประเทศ (E.164)`,jwt:`โทเคน JWT`,template_literal:`ข้อมูลที่ป้อน`},r={nan:`NaN`,number:`ตัวเลข`,array:`อาร์เรย์ (Array)`,null:`ไม่มีค่า (null)`};return e=>{switch(e.code){case`invalid_type`:{let t=r[e.expected]??e.expected,n=w(e.input),i=r[n]??n;return/^[A-Z]/.test(e.expected)?`ประเภทข้อมูลไม่ถูกต้อง: ควรเป็น instanceof ${e.expected} แต่ได้รับ ${i}`:`ประเภทข้อมูลไม่ถูกต้อง: ควรเป็น ${t} แต่ได้รับ ${i}`}case`invalid_value`:return e.values.length===1?`ค่าไม่ถูกต้อง: ควรเป็น ${C(e.values[0])}`:`ตัวเลือกไม่ถูกต้อง: ควรเป็นหนึ่งใน ${b(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`ไม่เกิน`:`น้อยกว่า`,r=t(e.origin);return r?`เกินกำหนด: ${e.origin??`ค่า`} ควรมี${n} ${e.maximum.toString()} ${r.unit??`รายการ`}`:`เกินกำหนด: ${e.origin??`ค่า`} ควรมี${n} ${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`อย่างน้อย`:`มากกว่า`,r=t(e.origin);return r?`น้อยกว่ากำหนด: ${e.origin} ควรมี${n} ${e.minimum.toString()} ${r.unit}`:`น้อยกว่ากำหนด: ${e.origin} ควรมี${n} ${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`รูปแบบไม่ถูกต้อง: ข้อความต้องขึ้นต้นด้วย "${t.prefix}"`:t.format===`ends_with`?`รูปแบบไม่ถูกต้อง: ข้อความต้องลงท้ายด้วย "${t.suffix}"`:t.format===`includes`?`รูปแบบไม่ถูกต้อง: ข้อความต้องมี "${t.includes}" อยู่ในข้อความ`:t.format===`regex`?`รูปแบบไม่ถูกต้อง: ต้องตรงกับรูปแบบที่กำหนด ${t.pattern}`:`รูปแบบไม่ถูกต้อง: ${n[t.format]??e.format}`}case`not_multiple_of`:return`ตัวเลขไม่ถูกต้อง: ต้องเป็นจำนวนที่หารด้วย ${e.divisor} ได้ลงตัว`;case`unrecognized_keys`:return`พบคีย์ที่ไม่รู้จัก: ${b(e.keys,`, `)}`;case`invalid_key`:return`คีย์ไม่ถูกต้องใน ${e.origin}`;case`invalid_union`:return`ข้อมูลไม่ถูกต้อง: ไม่ตรงกับรูปแบบยูเนียนที่กำหนดไว้`;case`invalid_element`:return`ข้อมูลไม่ถูกต้องใน ${e.origin}`;default:return`ข้อมูลไม่ถูกต้อง`}}};function js(){return{localeError:As()}}const Ms=()=>{let e={string:{unit:`karakter`,verb:`olmalı`},file:{unit:`bayt`,verb:`olmalı`},array:{unit:`öğe`,verb:`olmalı`},set:{unit:`öğe`,verb:`olmalı`}};function t(t){return e[t]??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üre`,ipv4:`IPv4 adresi`,ipv6:`IPv6 adresi`,cidrv4:`IPv4 aralığı`,cidrv6:`IPv6 aralığı`,base64:`base64 ile şifrelenmiş metin`,base64url:`base64url ile şifrelenmiş metin`,json_string:`JSON dizesi`,e164:`E.164 sayısı`,jwt:`JWT`,template_literal:`Şablon dizesi`},r={nan:`NaN`};return e=>{switch(e.code){case`invalid_type`:{let t=r[e.expected]??e.expected,n=w(e.input),i=r[n]??n;return/^[A-Z]/.test(e.expected)?`Geçersiz değer: beklenen instanceof ${e.expected}, alınan ${i}`:`Geçersiz değer: beklenen ${t}, alınan ${i}`}case`invalid_value`:return e.values.length===1?`Geçersiz değer: beklenen ${C(e.values[0])}`:`Geçersiz seçenek: aşağıdakilerden biri olmalı: ${b(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Çok büyük: beklenen ${e.origin??`değer`} ${n}${e.maximum.toString()} ${r.unit??`öğe`}`:`Çok büyük: beklenen ${e.origin??`değer`} ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Çok küçük: beklenen ${e.origin} ${n}${e.minimum.toString()} ${r.unit}`:`Çok küçük: beklenen ${e.origin} ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Geçersiz metin: "${t.prefix}" ile başlamalı`:t.format===`ends_with`?`Geçersiz metin: "${t.suffix}" ile bitmeli`:t.format===`includes`?`Geçersiz metin: "${t.includes}" içermeli`:t.format===`regex`?`Geçersiz metin: ${t.pattern} desenine uymalı`:`Geçersiz ${n[t.format]??e.format}`}case`not_multiple_of`:return`Geçersiz sayı: ${e.divisor} ile tam bölünebilmeli`;case`unrecognized_keys`:return`Tanınmayan anahtar${e.keys.length>1?`lar`:``}: ${b(e.keys,`, `)}`;case`invalid_key`:return`${e.origin} içinde geçersiz anahtar`;case`invalid_union`:return`Geçersiz değer`;case`invalid_element`:return`${e.origin} içinde geçersiz değer`;default:return`Geçersiz değer`}}};function Ns(){return{localeError:Ms()}}const Ps=()=>{let e={string:{unit:`символів`,verb:`матиме`},file:{unit:`байтів`,verb:`матиме`},array:{unit:`елементів`,verb:`матиме`},set:{unit:`елементів`,verb:`матиме`}};function t(t){return e[t]??null}let n={regex:`вхідні дані`,email:`адреса електронної пошти`,url:`URL`,emoji:`емодзі`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`дата та час ISO`,date:`дата ISO`,time:`час ISO`,duration:`тривалість ISO`,ipv4:`адреса IPv4`,ipv6:`адреса IPv6`,cidrv4:`діапазон IPv4`,cidrv6:`діапазон IPv6`,base64:`рядок у кодуванні base64`,base64url:`рядок у кодуванні base64url`,json_string:`рядок JSON`,e164:`номер E.164`,jwt:`JWT`,template_literal:`вхідні дані`},r={nan:`NaN`,number:`число`,array:`масив`};return e=>{switch(e.code){case`invalid_type`:{let t=r[e.expected]??e.expected,n=w(e.input),i=r[n]??n;return/^[A-Z]/.test(e.expected)?`Неправильні вхідні дані: очікується instanceof ${e.expected}, отримано ${i}`:`Неправильні вхідні дані: очікується ${t}, отримано ${i}`}case`invalid_value`:return e.values.length===1?`Неправильні вхідні дані: очікується ${C(e.values[0])}`:`Неправильна опція: очікується одне з ${b(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Занадто велике: очікується, що ${e.origin??`значення`} ${r.verb} ${n}${e.maximum.toString()} ${r.unit??`елементів`}`:`Занадто велике: очікується, що ${e.origin??`значення`} буде ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Занадто мале: очікується, що ${e.origin} ${r.verb} ${n}${e.minimum.toString()} ${r.unit}`:`Занадто мале: очікується, що ${e.origin} буде ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Неправильний рядок: повинен починатися з "${t.prefix}"`:t.format===`ends_with`?`Неправильний рядок: повинен закінчуватися на "${t.suffix}"`:t.format===`includes`?`Неправильний рядок: повинен містити "${t.includes}"`:t.format===`regex`?`Неправильний рядок: повинен відповідати шаблону ${t.pattern}`:`Неправильний ${n[t.format]??e.format}`}case`not_multiple_of`:return`Неправильне число: повинно бути кратним ${e.divisor}`;case`unrecognized_keys`:return`Нерозпізнаний ключ${e.keys.length>1?`і`:``}: ${b(e.keys,`, `)}`;case`invalid_key`:return`Неправильний ключ у ${e.origin}`;case`invalid_union`:return`Неправильні вхідні дані`;case`invalid_element`:return`Неправильне значення у ${e.origin}`;default:return`Неправильні вхідні дані`}}};function Fs(){return{localeError:Ps()}}function Is(){return Fs()}const Ls=()=>{let e={string:{unit:`حروف`,verb:`ہونا`},file:{unit:`بائٹس`,verb:`ہونا`},array:{unit:`آئٹمز`,verb:`ہونا`},set:{unit:`آئٹمز`,verb:`ہونا`}};function t(t){return e[t]??null}let n={regex:`ان پٹ`,email:`ای میل ایڈریس`,url:`یو آر ایل`,emoji:`ایموجی`,uuid:`یو یو آئی ڈی`,uuidv4:`یو یو آئی ڈی وی 4`,uuidv6:`یو یو آئی ڈی وی 6`,nanoid:`نینو آئی ڈی`,guid:`جی یو آئی ڈی`,cuid:`سی یو آئی ڈی`,cuid2:`سی یو آئی ڈی 2`,ulid:`یو ایل آئی ڈی`,xid:`ایکس آئی ڈی`,ksuid:`کے ایس یو آئی ڈی`,datetime:`آئی ایس او ڈیٹ ٹائم`,date:`آئی ایس او تاریخ`,time:`آئی ایس او وقت`,duration:`آئی ایس او مدت`,ipv4:`آئی پی وی 4 ایڈریس`,ipv6:`آئی پی وی 6 ایڈریس`,cidrv4:`آئی پی وی 4 رینج`,cidrv6:`آئی پی وی 6 رینج`,base64:`بیس 64 ان کوڈڈ سٹرنگ`,base64url:`بیس 64 یو آر ایل ان کوڈڈ سٹرنگ`,json_string:`جے ایس او این سٹرنگ`,e164:`ای 164 نمبر`,jwt:`جے ڈبلیو ٹی`,template_literal:`ان پٹ`},r={nan:`NaN`,number:`نمبر`,array:`آرے`,null:`نل`};return e=>{switch(e.code){case`invalid_type`:{let t=r[e.expected]??e.expected,n=w(e.input),i=r[n]??n;return/^[A-Z]/.test(e.expected)?`غلط ان پٹ: instanceof ${e.expected} متوقع تھا، ${i} موصول ہوا`:`غلط ان پٹ: ${t} متوقع تھا، ${i} موصول ہوا`}case`invalid_value`:return e.values.length===1?`غلط ان پٹ: ${C(e.values[0])} متوقع تھا`:`غلط آپشن: ${b(e.values,`|`)} میں سے ایک متوقع تھا`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`بہت بڑا: ${e.origin??`ویلیو`} کے ${n}${e.maximum.toString()} ${r.unit??`عناصر`} ہونے متوقع تھے`:`بہت بڑا: ${e.origin??`ویلیو`} کا ${n}${e.maximum.toString()} ہونا متوقع تھا`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`بہت چھوٹا: ${e.origin} کے ${n}${e.minimum.toString()} ${r.unit} ہونے متوقع تھے`:`بہت چھوٹا: ${e.origin} کا ${n}${e.minimum.toString()} ہونا متوقع تھا`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`غلط سٹرنگ: "${t.prefix}" سے شروع ہونا چاہیے`:t.format===`ends_with`?`غلط سٹرنگ: "${t.suffix}" پر ختم ہونا چاہیے`:t.format===`includes`?`غلط سٹرنگ: "${t.includes}" شامل ہونا چاہیے`:t.format===`regex`?`غلط سٹرنگ: پیٹرن ${t.pattern} سے میچ ہونا چاہیے`:`غلط ${n[t.format]??e.format}`}case`not_multiple_of`:return`غلط نمبر: ${e.divisor} کا مضاعف ہونا چاہیے`;case`unrecognized_keys`:return`غیر تسلیم شدہ کی${e.keys.length>1?`ز`:``}: ${b(e.keys,`، `)}`;case`invalid_key`:return`${e.origin} میں غلط کی`;case`invalid_union`:return`غلط ان پٹ`;case`invalid_element`:return`${e.origin} میں غلط ویلیو`;default:return`غلط ان پٹ`}}};function Rs(){return{localeError:Ls()}}const zs=()=>{let e={string:{unit:`belgi`,verb:`bo‘lishi kerak`},file:{unit:`bayt`,verb:`bo‘lishi kerak`},array:{unit:`element`,verb:`bo‘lishi kerak`},set:{unit:`element`,verb:`bo‘lishi kerak`}};function t(t){return e[t]??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`},r={nan:`NaN`,number:`raqam`,array:`massiv`};return e=>{switch(e.code){case`invalid_type`:{let t=r[e.expected]??e.expected,n=w(e.input),i=r[n]??n;return/^[A-Z]/.test(e.expected)?`Noto‘g‘ri kirish: kutilgan instanceof ${e.expected}, qabul qilingan ${i}`:`Noto‘g‘ri kirish: kutilgan ${t}, qabul qilingan ${i}`}case`invalid_value`:return e.values.length===1?`Noto‘g‘ri kirish: kutilgan ${C(e.values[0])}`:`Noto‘g‘ri variant: quyidagilardan biri kutilgan ${b(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Juda katta: kutilgan ${e.origin??`qiymat`} ${n}${e.maximum.toString()} ${r.unit} ${r.verb}`:`Juda katta: kutilgan ${e.origin??`qiymat`} ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Juda kichik: kutilgan ${e.origin} ${n}${e.minimum.toString()} ${r.unit} ${r.verb}`:`Juda kichik: kutilgan ${e.origin} ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Noto‘g‘ri satr: "${t.prefix}" bilan boshlanishi kerak`:t.format===`ends_with`?`Noto‘g‘ri satr: "${t.suffix}" bilan tugashi kerak`:t.format===`includes`?`Noto‘g‘ri satr: "${t.includes}" ni o‘z ichiga olishi kerak`:t.format===`regex`?`Noto‘g‘ri satr: ${t.pattern} shabloniga mos kelishi kerak`:`Noto‘g‘ri ${n[t.format]??e.format}`}case`not_multiple_of`:return`Noto‘g‘ri raqam: ${e.divisor} ning karralisi bo‘lishi kerak`;case`unrecognized_keys`:return`Noma’lum kalit${e.keys.length>1?`lar`:``}: ${b(e.keys,`, `)}`;case`invalid_key`:return`${e.origin} dagi kalit noto‘g‘ri`;case`invalid_union`:return`Noto‘g‘ri kirish`;case`invalid_element`:return`${e.origin} da noto‘g‘ri qiymat`;default:return`Noto‘g‘ri kirish`}}};function Bs(){return{localeError:zs()}}const Vs=()=>{let e={string:{unit:`ký tự`,verb:`có`},file:{unit:`byte`,verb:`có`},array:{unit:`phần tử`,verb:`có`},set:{unit:`phần tử`,verb:`có`}};function t(t){return e[t]??null}let n={regex:`đầu vào`,email:`địa chỉ 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ày giờ ISO`,date:`ngày ISO`,time:`giờ ISO`,duration:`khoảng thời gian ISO`,ipv4:`địa chỉ IPv4`,ipv6:`địa chỉ IPv6`,cidrv4:`dải IPv4`,cidrv6:`dải IPv6`,base64:`chuỗi mã hóa base64`,base64url:`chuỗi mã hóa base64url`,json_string:`chuỗi JSON`,e164:`số E.164`,jwt:`JWT`,template_literal:`đầu vào`},r={nan:`NaN`,number:`số`,array:`mảng`};return e=>{switch(e.code){case`invalid_type`:{let t=r[e.expected]??e.expected,n=w(e.input),i=r[n]??n;return/^[A-Z]/.test(e.expected)?`Đầu vào không hợp lệ: mong đợi instanceof ${e.expected}, nhận được ${i}`:`Đầu vào không hợp lệ: mong đợi ${t}, nhận được ${i}`}case`invalid_value`:return e.values.length===1?`Đầu vào không hợp lệ: mong đợi ${C(e.values[0])}`:`Tùy chọn không hợp lệ: mong đợi một trong các giá trị ${b(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Quá lớn: mong đợi ${e.origin??`giá trị`} ${r.verb} ${n}${e.maximum.toString()} ${r.unit??`phần tử`}`:`Quá lớn: mong đợi ${e.origin??`giá trị`} ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Quá nhỏ: mong đợi ${e.origin} ${r.verb} ${n}${e.minimum.toString()} ${r.unit}`:`Quá nhỏ: mong đợi ${e.origin} ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Chuỗi không hợp lệ: phải bắt đầu bằng "${t.prefix}"`:t.format===`ends_with`?`Chuỗi không hợp lệ: phải kết thúc bằng "${t.suffix}"`:t.format===`includes`?`Chuỗi không hợp lệ: phải bao gồm "${t.includes}"`:t.format===`regex`?`Chuỗi không hợp lệ: phải khớp với mẫu ${t.pattern}`:`${n[t.format]??e.format} không hợp lệ`}case`not_multiple_of`:return`Số không hợp lệ: phải là bội số của ${e.divisor}`;case`unrecognized_keys`:return`Khóa không được nhận dạng: ${b(e.keys,`, `)}`;case`invalid_key`:return`Khóa không hợp lệ trong ${e.origin}`;case`invalid_union`:return`Đầu vào không hợp lệ`;case`invalid_element`:return`Giá trị không hợp lệ trong ${e.origin}`;default:return`Đầu vào không hợp lệ`}}};function Hs(){return{localeError:Vs()}}const Us=()=>{let e={string:{unit:`字符`,verb:`包含`},file:{unit:`字节`,verb:`包含`},array:{unit:`项`,verb:`包含`},set:{unit:`项`,verb:`包含`}};function t(t){return e[t]??null}let n={regex:`输入`,email:`电子邮件`,url:`URL`,emoji:`表情符号`,uuid:`UUID`,uuidv4:`UUIDv4`,uuidv6:`UUIDv6`,nanoid:`nanoid`,guid:`GUID`,cuid:`cuid`,cuid2:`cuid2`,ulid:`ULID`,xid:`XID`,ksuid:`KSUID`,datetime:`ISO日期时间`,date:`ISO日期`,time:`ISO时间`,duration:`ISO时长`,ipv4:`IPv4地址`,ipv6:`IPv6地址`,cidrv4:`IPv4网段`,cidrv6:`IPv6网段`,base64:`base64编码字符串`,base64url:`base64url编码字符串`,json_string:`JSON字符串`,e164:`E.164号码`,jwt:`JWT`,template_literal:`输入`},r={nan:`NaN`,number:`数字`,array:`数组`,null:`空值(null)`};return e=>{switch(e.code){case`invalid_type`:{let t=r[e.expected]??e.expected,n=w(e.input),i=r[n]??n;return/^[A-Z]/.test(e.expected)?`无效输入:期望 instanceof ${e.expected},实际接收 ${i}`:`无效输入:期望 ${t},实际接收 ${i}`}case`invalid_value`:return e.values.length===1?`无效输入:期望 ${C(e.values[0])}`:`无效选项:期望以下之一 ${b(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`数值过大:期望 ${e.origin??`值`} ${n}${e.maximum.toString()} ${r.unit??`个元素`}`:`数值过大:期望 ${e.origin??`值`} ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`数值过小:期望 ${e.origin} ${n}${e.minimum.toString()} ${r.unit}`:`数值过小:期望 ${e.origin} ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`无效字符串:必须以 "${t.prefix}" 开头`:t.format===`ends_with`?`无效字符串:必须以 "${t.suffix}" 结尾`:t.format===`includes`?`无效字符串:必须包含 "${t.includes}"`:t.format===`regex`?`无效字符串:必须满足正则表达式 ${t.pattern}`:`无效${n[t.format]??e.format}`}case`not_multiple_of`:return`无效数字:必须是 ${e.divisor} 的倍数`;case`unrecognized_keys`:return`出现未知的键(key): ${b(e.keys,`, `)}`;case`invalid_key`:return`${e.origin} 中的键(key)无效`;case`invalid_union`:return`无效输入`;case`invalid_element`:return`${e.origin} 中包含无效值(value)`;default:return`无效输入`}}};function Ws(){return{localeError:Us()}}const Gs=()=>{let e={string:{unit:`字元`,verb:`擁有`},file:{unit:`位元組`,verb:`擁有`},array:{unit:`項目`,verb:`擁有`},set:{unit:`項目`,verb:`擁有`}};function t(t){return e[t]??null}let n={regex:`輸入`,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 日期時間`,date:`ISO 日期`,time:`ISO 時間`,duration:`ISO 期間`,ipv4:`IPv4 位址`,ipv6:`IPv6 位址`,cidrv4:`IPv4 範圍`,cidrv6:`IPv6 範圍`,base64:`base64 編碼字串`,base64url:`base64url 編碼字串`,json_string:`JSON 字串`,e164:`E.164 數值`,jwt:`JWT`,template_literal:`輸入`},r={nan:`NaN`};return e=>{switch(e.code){case`invalid_type`:{let t=r[e.expected]??e.expected,n=w(e.input),i=r[n]??n;return/^[A-Z]/.test(e.expected)?`無效的輸入值:預期為 instanceof ${e.expected},但收到 ${i}`:`無效的輸入值:預期為 ${t},但收到 ${i}`}case`invalid_value`:return e.values.length===1?`無效的輸入值:預期為 ${C(e.values[0])}`:`無效的選項:預期為以下其中之一 ${b(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`數值過大:預期 ${e.origin??`值`} 應為 ${n}${e.maximum.toString()} ${r.unit??`個元素`}`:`數值過大:預期 ${e.origin??`值`} 應為 ${n}${e.maximum.toString()}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`數值過小:預期 ${e.origin} 應為 ${n}${e.minimum.toString()} ${r.unit}`:`數值過小:預期 ${e.origin} 應為 ${n}${e.minimum.toString()}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`無效的字串:必須以 "${t.prefix}" 開頭`:t.format===`ends_with`?`無效的字串:必須以 "${t.suffix}" 結尾`:t.format===`includes`?`無效的字串:必須包含 "${t.includes}"`:t.format===`regex`?`無效的字串:必須符合格式 ${t.pattern}`:`無效的 ${n[t.format]??e.format}`}case`not_multiple_of`:return`無效的數字:必須為 ${e.divisor} 的倍數`;case`unrecognized_keys`:return`無法識別的鍵值${e.keys.length>1?`們`:``}:${b(e.keys,`、`)}`;case`invalid_key`:return`${e.origin} 中有無效的鍵值`;case`invalid_union`:return`無效的輸入值`;case`invalid_element`:return`${e.origin} 中有無效的值`;default:return`無效的輸入值`}}};function Ks(){return{localeError:Gs()}}const qs=()=>{let e={string:{unit:`àmi`,verb:`ní`},file:{unit:`bytes`,verb:`ní`},array:{unit:`nkan`,verb:`ní`},set:{unit:`nkan`,verb:`ní`}};function t(t){return e[t]??null}let n={regex:`ẹ̀rọ ìbáwọlé`,email:`àdírẹ́sì ìmẹ́lì`,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:`àkókò ISO`,date:`ọjọ́ ISO`,time:`àkókò ISO`,duration:`àkókò tó pé ISO`,ipv4:`àdírẹ́sì IPv4`,ipv6:`àdírẹ́sì IPv6`,cidrv4:`àgbègbè IPv4`,cidrv6:`àgbègbè IPv6`,base64:`ọ̀rọ̀ tí a kọ́ ní base64`,base64url:`ọ̀rọ̀ base64url`,json_string:`ọ̀rọ̀ JSON`,e164:`nọ́mbà E.164`,jwt:`JWT`,template_literal:`ẹ̀rọ ìbáwọlé`},r={nan:`NaN`,number:`nọ́mbà`,array:`akopọ`};return e=>{switch(e.code){case`invalid_type`:{let t=r[e.expected]??e.expected,n=w(e.input),i=r[n]??n;return/^[A-Z]/.test(e.expected)?`Ìbáwọlé aṣìṣe: a ní láti fi instanceof ${e.expected}, àmọ̀ a rí ${i}`:`Ìbáwọlé aṣìṣe: a ní láti fi ${t}, àmọ̀ a rí ${i}`}case`invalid_value`:return e.values.length===1?`Ìbáwọlé aṣìṣe: a ní láti fi ${C(e.values[0])}`:`Àṣàyàn aṣìṣe: yan ọ̀kan lára ${b(e.values,`|`)}`;case`too_big`:{let n=e.inclusive?`<=`:`<`,r=t(e.origin);return r?`Tó pọ̀ jù: a ní láti jẹ́ pé ${e.origin??`iye`} ${r.verb} ${n}${e.maximum} ${r.unit}`:`Tó pọ̀ jù: a ní láti jẹ́ ${n}${e.maximum}`}case`too_small`:{let n=e.inclusive?`>=`:`>`,r=t(e.origin);return r?`Kéré ju: a ní láti jẹ́ pé ${e.origin} ${r.verb} ${n}${e.minimum} ${r.unit}`:`Kéré ju: a ní láti jẹ́ ${n}${e.minimum}`}case`invalid_format`:{let t=e;return t.format===`starts_with`?`Ọ̀rọ̀ aṣìṣe: gbọ́dọ̀ bẹ̀rẹ̀ pẹ̀lú "${t.prefix}"`:t.format===`ends_with`?`Ọ̀rọ̀ aṣìṣe: gbọ́dọ̀ parí pẹ̀lú "${t.suffix}"`:t.format===`includes`?`Ọ̀rọ̀ aṣìṣe: gbọ́dọ̀ ní "${t.includes}"`:t.format===`regex`?`Ọ̀rọ̀ aṣìṣe: gbọ́dọ̀ bá àpẹẹrẹ mu ${t.pattern}`:`Aṣìṣe: ${n[t.format]??e.format}`}case`not_multiple_of`:return`Nọ́mbà aṣìṣe: gbọ́dọ̀ jẹ́ èyà pípín ti ${e.divisor}`;case`unrecognized_keys`:return`Bọtìnì àìmọ̀: ${b(e.keys,`, `)}`;case`invalid_key`:return`Bọtìnì aṣìṣe nínú ${e.origin}`;case`invalid_union`:return`Ìbáwọlé aṣìṣe`;case`invalid_element`:return`Iye aṣìṣe nínú ${e.origin}`;default:return`Ìbáwọlé aṣìṣe`}}};function Js(){return{localeError:qs()}}var Ys=Pe({ar:()=>to,az:()=>ro,be:()=>oo,bg:()=>co,ca:()=>uo,cs:()=>po,da:()=>ho,de:()=>_o,en:()=>yo,eo:()=>xo,es:()=>Co,fa:()=>To,fi:()=>Do,fr:()=>ko,frCA:()=>jo,he:()=>No,hu:()=>Fo,hy:()=>zo,id:()=>Vo,is:()=>Uo,it:()=>Go,ja:()=>qo,ka:()=>Yo,kh:()=>Qo,km:()=>Zo,ko:()=>es,lt:()=>is,mk:()=>os,ms:()=>cs,nl:()=>us,no:()=>fs,ota:()=>ms,pl:()=>vs,ps:()=>gs,pt:()=>bs,ru:()=>Cs,sl:()=>Ts,sv:()=>Ds,ta:()=>ks,th:()=>js,tr:()=>Ns,ua:()=>Is,uk:()=>Fs,ur:()=>Rs,uz:()=>Bs,vi:()=>Hs,yo:()=>Js,zhCN:()=>Ws,zhTW:()=>Ks}),Xs;const Zs=Symbol(`ZodOutput`),Qs=Symbol(`ZodInput`);var $s=class{constructor(){this._map=new WeakMap,this._idmap=new Map}add(e,...t){let n=t[0];return this._map.set(e,n),n&&typeof n==`object`&&`id`in n&&this._idmap.set(n.id,e),this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(e){let t=this._map.get(e);return t&&typeof t==`object`&&`id`in t&&this._idmap.delete(t.id),this._map.delete(e),this}get(e){let t=e._zod.parent;if(t){let n={...this.get(t)??{}};delete n.id;let r={...n,...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 ec(){return new $s}(Xs=globalThis).__zod_globalRegistry??(Xs.__zod_globalRegistry=ec());const tc=globalThis.__zod_globalRegistry;function nc(e,t){return new e({type:`string`,...S(t)})}function rc(e,t){return new e({type:`string`,coerce:!0,...S(t)})}function ic(e,t){return new e({type:`string`,format:`email`,check:`string_format`,abort:!1,...S(t)})}function ac(e,t){return new e({type:`string`,format:`guid`,check:`string_format`,abort:!1,...S(t)})}function oc(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,...S(t)})}function sc(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v4`,...S(t)})}function cc(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v6`,...S(t)})}function lc(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v7`,...S(t)})}function uc(e,t){return new e({type:`string`,format:`url`,check:`string_format`,abort:!1,...S(t)})}function dc(e,t){return new e({type:`string`,format:`emoji`,check:`string_format`,abort:!1,...S(t)})}function fc(e,t){return new e({type:`string`,format:`nanoid`,check:`string_format`,abort:!1,...S(t)})}function pc(e,t){return new e({type:`string`,format:`cuid`,check:`string_format`,abort:!1,...S(t)})}function mc(e,t){return new e({type:`string`,format:`cuid2`,check:`string_format`,abort:!1,...S(t)})}function hc(e,t){return new e({type:`string`,format:`ulid`,check:`string_format`,abort:!1,...S(t)})}function gc(e,t){return new e({type:`string`,format:`xid`,check:`string_format`,abort:!1,...S(t)})}function _c(e,t){return new e({type:`string`,format:`ksuid`,check:`string_format`,abort:!1,...S(t)})}function vc(e,t){return new e({type:`string`,format:`ipv4`,check:`string_format`,abort:!1,...S(t)})}function yc(e,t){return new e({type:`string`,format:`ipv6`,check:`string_format`,abort:!1,...S(t)})}function bc(e,t){return new e({type:`string`,format:`mac`,check:`string_format`,abort:!1,...S(t)})}function xc(e,t){return new e({type:`string`,format:`cidrv4`,check:`string_format`,abort:!1,...S(t)})}function Sc(e,t){return new e({type:`string`,format:`cidrv6`,check:`string_format`,abort:!1,...S(t)})}function Cc(e,t){return new e({type:`string`,format:`base64`,check:`string_format`,abort:!1,...S(t)})}function wc(e,t){return new e({type:`string`,format:`base64url`,check:`string_format`,abort:!1,...S(t)})}function Tc(e,t){return new e({type:`string`,format:`e164`,check:`string_format`,abort:!1,...S(t)})}function Ec(e,t){return new e({type:`string`,format:`jwt`,check:`string_format`,abort:!1,...S(t)})}const Dc={Any:null,Minute:-1,Second:0,Millisecond:3,Microsecond:6};function Oc(e,t){return new e({type:`string`,format:`datetime`,check:`string_format`,offset:!1,local:!1,precision:null,...S(t)})}function kc(e,t){return new e({type:`string`,format:`date`,check:`string_format`,...S(t)})}function Ac(e,t){return new e({type:`string`,format:`time`,check:`string_format`,precision:null,...S(t)})}function jc(e,t){return new e({type:`string`,format:`duration`,check:`string_format`,...S(t)})}function Mc(e,t){return new e({type:`number`,checks:[],...S(t)})}function Nc(e,t){return new e({type:`number`,coerce:!0,checks:[],...S(t)})}function Pc(e,t){return new e({type:`number`,check:`number_format`,abort:!1,format:`safeint`,...S(t)})}function Fc(e,t){return new e({type:`number`,check:`number_format`,abort:!1,format:`float32`,...S(t)})}function Ic(e,t){return new e({type:`number`,check:`number_format`,abort:!1,format:`float64`,...S(t)})}function Lc(e,t){return new e({type:`number`,check:`number_format`,abort:!1,format:`int32`,...S(t)})}function Rc(e,t){return new e({type:`number`,check:`number_format`,abort:!1,format:`uint32`,...S(t)})}function zc(e,t){return new e({type:`boolean`,...S(t)})}function Bc(e,t){return new e({type:`boolean`,coerce:!0,...S(t)})}function Vc(e,t){return new e({type:`bigint`,...S(t)})}function Hc(e,t){return new e({type:`bigint`,coerce:!0,...S(t)})}function Uc(e,t){return new e({type:`bigint`,check:`bigint_format`,abort:!1,format:`int64`,...S(t)})}function Wc(e,t){return new e({type:`bigint`,check:`bigint_format`,abort:!1,format:`uint64`,...S(t)})}function Gc(e,t){return new e({type:`symbol`,...S(t)})}function Kc(e,t){return new e({type:`undefined`,...S(t)})}function qc(e,t){return new e({type:`null`,...S(t)})}function Jc(e){return new e({type:`any`})}function Yc(e){return new e({type:`unknown`})}function Xc(e,t){return new e({type:`never`,...S(t)})}function Zc(e,t){return new e({type:`void`,...S(t)})}function Qc(e,t){return new e({type:`date`,...S(t)})}function $c(e,t){return new e({type:`date`,coerce:!0,...S(t)})}function el(e,t){return new e({type:`nan`,...S(t)})}function tl(e,t){return new Gr({check:`less_than`,...S(t),value:e,inclusive:!1})}function nl(e,t){return new Gr({check:`less_than`,...S(t),value:e,inclusive:!0})}function rl(e,t){return new Kr({check:`greater_than`,...S(t),value:e,inclusive:!1})}function il(e,t){return new Kr({check:`greater_than`,...S(t),value:e,inclusive:!0})}function al(e){return rl(0,e)}function ol(e){return tl(0,e)}function sl(e){return nl(0,e)}function cl(e){return il(0,e)}function ll(e,t){return new qr({check:`multiple_of`,...S(t),value:e})}function ul(e,t){return new Xr({check:`max_size`,...S(t),maximum:e})}function dl(e,t){return new Zr({check:`min_size`,...S(t),minimum:e})}function fl(e,t){return new Qr({check:`size_equals`,...S(t),size:e})}function pl(e,t){return new $r({check:`max_length`,...S(t),maximum:e})}function ml(e,t){return new ei({check:`min_length`,...S(t),minimum:e})}function hl(e,t){return new ti({check:`length_equals`,...S(t),length:e})}function gl(e,t){return new ri({check:`string_format`,format:`regex`,...S(t),pattern:e})}function _l(e){return new ii({check:`string_format`,format:`lowercase`,...S(e)})}function vl(e){return new ai({check:`string_format`,format:`uppercase`,...S(e)})}function yl(e,t){return new oi({check:`string_format`,format:`includes`,...S(t),includes:e})}function bl(e,t){return new si({check:`string_format`,format:`starts_with`,...S(t),prefix:e})}function xl(e,t){return new ci({check:`string_format`,format:`ends_with`,...S(t),suffix:e})}function Sl(e,t,n){return new ui({check:`property`,property:e,schema:t,...S(n)})}function Cl(e,t){return new di({check:`mime_type`,mime:e,...S(t)})}function wl(e){return new fi({check:`overwrite`,tx:e})}function Tl(e){return wl(t=>t.normalize(e))}function El(){return wl(e=>e.trim())}function Dl(){return wl(e=>e.toLowerCase())}function Ol(){return wl(e=>e.toUpperCase())}function kl(){return wl(e=>vt(e))}function Al(e,t,n){return new e({type:`array`,element:t,...S(n)})}function jl(e,t,n){return new e({type:`union`,options:t,...S(n)})}function Ml(e,t,n){return new e({type:`union`,options:t,inclusive:!1,...S(n)})}function Nl(e,t,n,r){return new e({type:`union`,options:n,discriminator:t,...S(r)})}function Pl(e,t,n){return new e({type:`intersection`,left:t,right:n})}function Fl(e,t,n,r){let i=n instanceof E;return new e({type:`tuple`,items:t,rest:i?n:null,...S(i?r:n)})}function Il(e,t,n,r){return new e({type:`record`,keyType:t,valueType:n,...S(r)})}function Ll(e,t,n,r){return new e({type:`map`,keyType:t,valueType:n,...S(r)})}function Rl(e,t,n){return new e({type:`set`,valueType:t,...S(n)})}function zl(e,t,n){return new e({type:`enum`,entries:Array.isArray(t)?Object.fromEntries(t.map(e=>[e,e])):t,...S(n)})}function Bl(e,t,n){return new e({type:`enum`,entries:t,...S(n)})}function Vl(e,t,n){return new e({type:`literal`,values:Array.isArray(t)?t:[t],...S(n)})}function Hl(e,t){return new e({type:`file`,...S(t)})}function Ul(e,t){return new e({type:`transform`,transform:t})}function Wl(e,t){return new e({type:`optional`,innerType:t})}function Gl(e,t){return new e({type:`nullable`,innerType:t})}function Kl(e,t,n){return new e({type:`default`,innerType:t,get defaultValue(){return typeof n==`function`?n():Ct(n)}})}function ql(e,t,n){return new e({type:`nonoptional`,innerType:t,...S(n)})}function Jl(e,t){return new e({type:`success`,innerType:t})}function Yl(e,t,n){return new e({type:`catch`,innerType:t,catchValue:typeof n==`function`?n:()=>n})}function Xl(e,t,n){return new e({type:`pipe`,in:t,out:n})}function Zl(e,t){return new e({type:`readonly`,innerType:t})}function Ql(e,t,n){return new e({type:`template_literal`,parts:t,...S(n)})}function $l(e,t){return new e({type:`lazy`,getter:t})}function eu(e,t){return new e({type:`promise`,innerType:t})}function tu(e,t,n){let r=S(n);return r.abort??=!0,new e({type:`custom`,check:`custom`,fn:t,...r})}function nu(e,t,n){return new e({type:`custom`,check:`custom`,fn:t,...S(n)})}function ru(e){let t=iu(n=>(n.addIssue=e=>{if(typeof e==`string`)n.issues.push(qt(e,n.value,t._zod.def));else{let r=e;r.fatal&&(r.continue=!1),r.code??=`custom`,r.input??=n.value,r.inst??=t,r.continue??=!t._zod.def.abort,n.issues.push(qt(r))}},e(n.value,n)));return t}function iu(e,t){let n=new T({check:`custom`,...S(t)});return n._zod.check=e,n}function au(e){let t=new T({check:`describe`});return t._zod.onattach=[t=>{let n=tc.get(t)??{};tc.add(t,{...n,description:e})}],t._zod.check=()=>{},t}function ou(e){let t=new T({check:`meta`});return t._zod.onattach=[t=>{let n=tc.get(t)??{};tc.add(t,{...n,...e})}],t._zod.check=()=>{},t}function su(e,t){let n=S(t),r=n.truthy??[`true`,`1`,`yes`,`on`,`y`,`enabled`],i=n.falsy??[`false`,`0`,`no`,`off`,`n`,`disabled`];n.case!==`sensitive`&&(r=r.map(e=>typeof e==`string`?e.toLowerCase():e),i=i.map(e=>typeof e==`string`?e.toLowerCase():e));let a=new Set(r),o=new Set(i),s=e.Codec??Ua,c=e.Boolean??Ki,l=new s({type:`pipe`,in:new(e.String??hi)({type:`string`,error:n.error}),out:new c({type:`boolean`,error:n.error}),transform:((e,t)=>{let r=e;return n.case!==`sensitive`&&(r=r.toLowerCase()),a.has(r)?!0:o.has(r)?!1:(t.issues.push({code:`invalid_value`,expected:`stringbool`,values:[...a,...o],input:t.value,inst:l,continue:!1}),{})}),reverseTransform:((e,t)=>e===!0?r[0]||`true`:i[0]||`false`),error:n.error});return l}function cu(e,t,n,r={}){let i=S(r),a={...S(r),check:`string_format`,type:`string`,format:t,fn:typeof n==`function`?n:e=>n.test(e),...i};return n instanceof RegExp&&(a.pattern=n),new e(a)}function lu(e){let t=e?.target??`draft-2020-12`;return t===`draft-4`&&(t=`draft-04`),t===`draft-7`&&(t=`draft-07`),{processors:e.processors??{},metadataRegistry:e?.metadata??tc,target:t,unrepresentable:e?.unrepresentable??`throw`,override:e?.override??(()=>{}),io:e?.io??`output`,counter:0,seen:new Map,cycles:e?.cycles??`ref`,reused:e?.reused??`inline`,external:e?.external??void 0}}function O(e,t,n={path:[],schemaPath:[]}){var r;let i=e._zod.def,a=t.seen.get(e);if(a)return a.count++,n.schemaPath.includes(e)&&(a.cycle=n.path),a.schema;let o={schema:{},count:1,cycle:void 0,path:n.path};t.seen.set(e,o);let s=e._zod.toJSONSchema?.();if(s)o.schema=s;else{let r={...n,schemaPath:[...n.schemaPath,e],path:n.path};if(e._zod.processJSONSchema)e._zod.processJSONSchema(t,o.schema,r);else{let n=o.schema,a=t.processors[i.type];if(!a)throw Error(`[toJSONSchema]: Non-representable type encountered: ${i.type}`);a(e,t,n,r)}let a=e._zod.parent;a&&(o.ref||=a,O(a,t,r),t.seen.get(a).isParent=!0)}let c=t.metadataRegistry.get(e);return c&&Object.assign(o.schema,c),t.io===`input`&&k(e)&&(delete o.schema.examples,delete o.schema.default),t.io===`input`&&o.schema._prefault&&((r=o.schema).default??(r.default=o.schema._prefault)),delete o.schema._prefault,t.seen.get(e).schema}function uu(e,t){let n=e.seen.get(t);if(!n)throw Error(`Unprocessed schema. This is a bug in Zod.`);let r=new Map;for(let t of e.seen.entries()){let n=e.metadataRegistry.get(t[0])?.id;if(n){let e=r.get(n);if(e&&e!==t[0])throw Error(`Duplicate schema id "${n}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);r.set(n,t[0])}}let i=t=>{let r=e.target===`draft-2020-12`?`$defs`:`definitions`;if(e.external){let n=e.external.registry.get(t[0])?.id,i=e.external.uri??(e=>e);if(n)return{ref:i(n)};let a=t[1].defId??t[1].schema.id??`schema${e.counter++}`;return t[1].defId=a,{defId:a,ref:`${i(`__shared`)}#/${r}/${a}`}}if(t[1]===n)return{ref:`#`};let i=`#/${r}/`,a=t[1].schema.id??`__schema${e.counter++}`;return{defId:a,ref:i+a}},a=e=>{if(e[1].schema.$ref)return;let t=e[1],{ref:n,defId:r}=i(e);t.def={...t.schema},r&&(t.defId=r);let a=t.schema;for(let e in a)delete a[e];a.$ref=n};if(e.cycles===`throw`)for(let t of e.seen.entries()){let e=t[1];if(e.cycle)throw Error(`Cycle detected: #/${e.cycle?.join(`/`)}/<root>
|
|
48
|
-
|
|
49
|
-
Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let n of e.seen.entries()){let r=n[1];if(t===n[0]){a(n);continue}if(e.external){let r=e.external.registry.get(n[0])?.id;if(t!==n[0]&&r){a(n);continue}}if(e.metadataRegistry.get(n[0])?.id){a(n);continue}if(r.cycle){a(n);continue}if(r.count>1&&e.reused===`ref`){a(n);continue}}}function du(e,t){let n=e.seen.get(t);if(!n)throw Error(`Unprocessed schema. This is a bug in Zod.`);let r=t=>{let n=e.seen.get(t);if(n.ref===null)return;let i=n.def??n.schema,a={...i},o=n.ref;if(n.ref=null,o){r(o);let n=e.seen.get(o),s=n.schema;if(s.$ref&&(e.target===`draft-07`||e.target===`draft-04`||e.target===`openapi-3.0`)?(i.allOf=i.allOf??[],i.allOf.push(s)):Object.assign(i,s),Object.assign(i,a),t._zod.parent===o)for(let e in i)e===`$ref`||e===`allOf`||e in a||delete i[e];if(s.$ref)for(let e in i)e===`$ref`||e===`allOf`||e in n.def&&JSON.stringify(i[e])===JSON.stringify(n.def[e])&&delete i[e]}let s=t._zod.parent;if(s&&s!==o){r(s);let t=e.seen.get(s);if(t?.schema.$ref&&(i.$ref=t.schema.$ref,t.def))for(let e in i)e===`$ref`||e===`allOf`||e in t.def&&JSON.stringify(i[e])===JSON.stringify(t.def[e])&&delete i[e]}e.override({zodSchema:t,jsonSchema:i,path:n.path??[]})};for(let t of[...e.seen.entries()].reverse())r(t[0]);let i={};if(e.target===`draft-2020-12`?i.$schema=`https://json-schema.org/draft/2020-12/schema`:e.target===`draft-07`?i.$schema=`http://json-schema.org/draft-07/schema#`:e.target===`draft-04`?i.$schema=`http://json-schema.org/draft-04/schema#`:e.target,e.external?.uri){let n=e.external.registry.get(t)?.id;if(!n)throw Error("Schema is missing an `id` property");i.$id=e.external.uri(n)}Object.assign(i,n.def??n.schema);let a=e.external?.defs??{};for(let t of e.seen.entries()){let e=t[1];e.def&&e.defId&&(a[e.defId]=e.def)}e.external||Object.keys(a).length>0&&(e.target===`draft-2020-12`?i.$defs=a:i.definitions=a);try{let n=JSON.parse(JSON.stringify(i));return Object.defineProperty(n,`~standard`,{value:{...t[`~standard`],jsonSchema:{input:pu(t,`input`,e.processors),output:pu(t,`output`,e.processors)}},enumerable:!1,writable:!1}),n}catch{throw Error(`Error converting schema to JSON.`)}}function k(e,t){let n=t??{seen:new Set};if(n.seen.has(e))return!1;n.seen.add(e);let r=e._zod.def;if(r.type===`transform`)return!0;if(r.type===`array`)return k(r.element,n);if(r.type===`set`)return k(r.valueType,n);if(r.type===`lazy`)return k(r.getter(),n);if(r.type===`promise`||r.type===`optional`||r.type===`nonoptional`||r.type===`nullable`||r.type===`readonly`||r.type===`default`||r.type===`prefault`)return k(r.innerType,n);if(r.type===`intersection`)return k(r.left,n)||k(r.right,n);if(r.type===`record`||r.type===`map`)return k(r.keyType,n)||k(r.valueType,n);if(r.type===`pipe`)return k(r.in,n)||k(r.out,n);if(r.type===`object`){for(let e in r.shape)if(k(r.shape[e],n))return!0;return!1}if(r.type===`union`){for(let e of r.options)if(k(e,n))return!0;return!1}if(r.type===`tuple`){for(let e of r.items)if(k(e,n))return!0;return!!(r.rest&&k(r.rest,n))}return!1}const fu=(e,t={})=>n=>{let r=lu({...n,processors:t});return O(e,r),uu(r,e),du(r,e)},pu=(e,t,n={})=>r=>{let{libraryOptions:i,target:a}=r??{},o=lu({...i??{},target:a,io:t,processors:n});return O(e,o),uu(o,e),du(o,e)},mu={guid:`uuid`,url:`uri`,datetime:`date-time`,json_string:`json-string`,regex:``},hu=(e,t,n,r)=>{let i=n;i.type=`string`;let{minimum:a,maximum:o,format:s,patterns:c,contentEncoding:l}=e._zod.bag;if(typeof a==`number`&&(i.minLength=a),typeof o==`number`&&(i.maxLength=o),s&&(i.format=mu[s]??s,i.format===``&&delete i.format,s===`time`&&delete i.format),l&&(i.contentEncoding=l),c&&c.size>0){let e=[...c];e.length===1?i.pattern=e[0].source:e.length>1&&(i.allOf=[...e.map(e=>({...t.target===`draft-07`||t.target===`draft-04`||t.target===`openapi-3.0`?{type:`string`}:{},pattern:e.source}))])}},gu=(e,t,n,r)=>{let i=n,{minimum:a,maximum:o,format:s,multipleOf:c,exclusiveMaximum:l,exclusiveMinimum:u}=e._zod.bag;typeof s==`string`&&s.includes(`int`)?i.type=`integer`:i.type=`number`,typeof u==`number`&&(t.target===`draft-04`||t.target===`openapi-3.0`?(i.minimum=u,i.exclusiveMinimum=!0):i.exclusiveMinimum=u),typeof a==`number`&&(i.minimum=a,typeof u==`number`&&t.target!==`draft-04`&&(u>=a?delete i.minimum:delete i.exclusiveMinimum)),typeof l==`number`&&(t.target===`draft-04`||t.target===`openapi-3.0`?(i.maximum=l,i.exclusiveMaximum=!0):i.exclusiveMaximum=l),typeof o==`number`&&(i.maximum=o,typeof l==`number`&&t.target!==`draft-04`&&(l<=o?delete i.maximum:delete i.exclusiveMaximum)),typeof c==`number`&&(i.multipleOf=c)},_u=(e,t,n,r)=>{n.type=`boolean`},vu=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`BigInt cannot be represented in JSON Schema`)},yu=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Symbols cannot be represented in JSON Schema`)},bu=(e,t,n,r)=>{t.target===`openapi-3.0`?(n.type=`string`,n.nullable=!0,n.enum=[null]):n.type=`null`},xu=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Undefined cannot be represented in JSON Schema`)},Su=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Void cannot be represented in JSON Schema`)},Cu=(e,t,n,r)=>{n.not={}},wu=(e,t,n,r)=>{},Tu=(e,t,n,r)=>{},Eu=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Date cannot be represented in JSON Schema`)},Du=(e,t,n,r)=>{let i=e._zod.def,a=rt(i.entries);a.every(e=>typeof e==`number`)&&(n.type=`number`),a.every(e=>typeof e==`string`)&&(n.type=`string`),n.enum=a},Ou=(e,t,n,r)=>{let i=e._zod.def,a=[];for(let e of i.values)if(e===void 0){if(t.unrepresentable===`throw`)throw Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof e==`bigint`){if(t.unrepresentable===`throw`)throw Error(`BigInt literals cannot be represented in JSON Schema`);a.push(Number(e))}else a.push(e);if(a.length!==0)if(a.length===1){let e=a[0];n.type=e===null?`null`:typeof e,t.target===`draft-04`||t.target===`openapi-3.0`?n.enum=[e]:n.const=e}else a.every(e=>typeof e==`number`)&&(n.type=`number`),a.every(e=>typeof e==`string`)&&(n.type=`string`),a.every(e=>typeof e==`boolean`)&&(n.type=`boolean`),a.every(e=>e===null)&&(n.type=`null`),n.enum=a},ku=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`NaN cannot be represented in JSON Schema`)},Au=(e,t,n,r)=>{let i=n,a=e._zod.pattern;if(!a)throw Error(`Pattern not found in template literal`);i.type=`string`,i.pattern=a.source},ju=(e,t,n,r)=>{let i=n,a={type:`string`,format:`binary`,contentEncoding:`binary`},{minimum:o,maximum:s,mime:c}=e._zod.bag;o!==void 0&&(a.minLength=o),s!==void 0&&(a.maxLength=s),c?c.length===1?(a.contentMediaType=c[0],Object.assign(i,a)):(Object.assign(i,a),i.anyOf=c.map(e=>({contentMediaType:e}))):Object.assign(i,a)},Mu=(e,t,n,r)=>{n.type=`boolean`},Nu=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Custom types cannot be represented in JSON Schema`)},Pu=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Function types cannot be represented in JSON Schema`)},Fu=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Transforms cannot be represented in JSON Schema`)},Iu=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Map cannot be represented in JSON Schema`)},Lu=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Set cannot be represented in JSON Schema`)},Ru=(e,t,n,r)=>{let i=n,a=e._zod.def,{minimum:o,maximum:s}=e._zod.bag;typeof o==`number`&&(i.minItems=o),typeof s==`number`&&(i.maxItems=s),i.type=`array`,i.items=O(a.element,t,{...r,path:[...r.path,`items`]})},zu=(e,t,n,r)=>{let i=n,a=e._zod.def;i.type=`object`,i.properties={};let o=a.shape;for(let e in o)i.properties[e]=O(o[e],t,{...r,path:[...r.path,`properties`,e]});let s=new Set(Object.keys(o)),c=new Set([...s].filter(e=>{let n=a.shape[e]._zod;return t.io===`input`?n.optin===void 0:n.optout===void 0}));c.size>0&&(i.required=Array.from(c)),a.catchall?._zod.def.type===`never`?i.additionalProperties=!1:a.catchall?a.catchall&&(i.additionalProperties=O(a.catchall,t,{...r,path:[...r.path,`additionalProperties`]})):t.io===`output`&&(i.additionalProperties=!1)},Bu=(e,t,n,r)=>{let i=e._zod.def,a=i.inclusive===!1,o=i.options.map((e,n)=>O(e,t,{...r,path:[...r.path,a?`oneOf`:`anyOf`,n]}));a?n.oneOf=o:n.anyOf=o},Vu=(e,t,n,r)=>{let i=e._zod.def,a=O(i.left,t,{...r,path:[...r.path,`allOf`,0]}),o=O(i.right,t,{...r,path:[...r.path,`allOf`,1]}),s=e=>`allOf`in e&&Object.keys(e).length===1;n.allOf=[...s(a)?a.allOf:[a],...s(o)?o.allOf:[o]]},Hu=(e,t,n,r)=>{let i=n,a=e._zod.def;i.type=`array`;let o=t.target===`draft-2020-12`?`prefixItems`:`items`,s=t.target===`draft-2020-12`||t.target===`openapi-3.0`?`items`:`additionalItems`,c=a.items.map((e,n)=>O(e,t,{...r,path:[...r.path,o,n]})),l=a.rest?O(a.rest,t,{...r,path:[...r.path,s,...t.target===`openapi-3.0`?[a.items.length]:[]]}):null;t.target===`draft-2020-12`?(i.prefixItems=c,l&&(i.items=l)):t.target===`openapi-3.0`?(i.items={anyOf:c},l&&i.items.anyOf.push(l),i.minItems=c.length,l||(i.maxItems=c.length)):(i.items=c,l&&(i.additionalItems=l));let{minimum:u,maximum:d}=e._zod.bag;typeof u==`number`&&(i.minItems=u),typeof d==`number`&&(i.maxItems=d)},Uu=(e,t,n,r)=>{let i=n,a=e._zod.def;i.type=`object`;let o=a.keyType,s=o._zod.bag?.patterns;if(a.mode===`loose`&&s&&s.size>0){let e=O(a.valueType,t,{...r,path:[...r.path,`patternProperties`,`*`]});i.patternProperties={};for(let t of s)i.patternProperties[t.source]=e}else (t.target===`draft-07`||t.target===`draft-2020-12`)&&(i.propertyNames=O(a.keyType,t,{...r,path:[...r.path,`propertyNames`]})),i.additionalProperties=O(a.valueType,t,{...r,path:[...r.path,`additionalProperties`]});let c=o._zod.values;if(c){let e=[...c].filter(e=>typeof e==`string`||typeof e==`number`);e.length>0&&(i.required=e)}},Wu=(e,t,n,r)=>{let i=e._zod.def,a=O(i.innerType,t,r),o=t.seen.get(e);t.target===`openapi-3.0`?(o.ref=i.innerType,n.nullable=!0):n.anyOf=[a,{type:`null`}]},Gu=(e,t,n,r)=>{let i=e._zod.def;O(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},Ku=(e,t,n,r)=>{let i=e._zod.def;O(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,n.default=JSON.parse(JSON.stringify(i.defaultValue))},qu=(e,t,n,r)=>{let i=e._zod.def;O(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,t.io===`input`&&(n._prefault=JSON.parse(JSON.stringify(i.defaultValue)))},Ju=(e,t,n,r)=>{let i=e._zod.def;O(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType;let o;try{o=i.catchValue(void 0)}catch{throw Error(`Dynamic catch values are not supported in JSON Schema`)}n.default=o},Yu=(e,t,n,r)=>{let i=e._zod.def,a=t.io===`input`?i.in._zod.def.type===`transform`?i.out:i.in:i.out;O(a,t,r);let o=t.seen.get(e);o.ref=a},Xu=(e,t,n,r)=>{let i=e._zod.def;O(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,n.readOnly=!0},Zu=(e,t,n,r)=>{let i=e._zod.def;O(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},Qu=(e,t,n,r)=>{let i=e._zod.def;O(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},$u=(e,t,n,r)=>{let i=e._zod.innerType;O(i,t,r);let a=t.seen.get(e);a.ref=i},ed={string:hu,number:gu,boolean:_u,bigint:vu,symbol:yu,null:bu,undefined:xu,void:Su,never:Cu,any:wu,unknown:Tu,date:Eu,enum:Du,literal:Ou,nan:ku,template_literal:Au,file:ju,success:Mu,custom:Nu,function:Pu,transform:Fu,map:Iu,set:Lu,array:Ru,object:zu,union:Bu,intersection:Vu,tuple:Hu,record:Uu,nullable:Wu,nonoptional:Gu,default:Ku,prefault:qu,catch:Ju,pipe:Yu,readonly:Xu,promise:Zu,optional:Qu,lazy:$u};function td(e,t){if(`_idmap`in e){let n=e,r=lu({...t,processors:ed}),i={};for(let e of n._idmap.entries()){let[t,n]=e;O(n,r)}let a={};r.external={registry:n,uri:t?.uri,defs:i};for(let e of n._idmap.entries()){let[t,n]=e;uu(r,n),a[t]=du(r,n)}return Object.keys(i).length>0&&(a.__shared={[r.target===`draft-2020-12`?`$defs`:`definitions`]:i}),{schemas:a}}let n=lu({...t,processors:ed});return O(e,n),uu(n,e),du(n,e)}var nd=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 t=e?.target??`draft-2020-12`;t===`draft-4`&&(t=`draft-04`),t===`draft-7`&&(t=`draft-07`),this.ctx=lu({processors:ed,target:t,...e?.metadata&&{metadata:e.metadata},...e?.unrepresentable&&{unrepresentable:e.unrepresentable},...e?.override&&{override:e.override},...e?.io&&{io:e.io}})}process(e,t={path:[],schemaPath:[]}){return O(e,this.ctx,t)}emit(e,t){t&&(t.cycles&&(this.ctx.cycles=t.cycles),t.reused&&(this.ctx.reused=t.reused),t.external&&(this.ctx.external=t.external)),uu(this.ctx,e);let{"~standard":n,...r}=du(this.ctx,e);return r}},rd=Pe({}),id=Pe({$ZodAny:()=>Qi,$ZodArray:()=>ia,$ZodAsyncError:()=>Je,$ZodBase64:()=>Li,$ZodBase64URL:()=>zi,$ZodBigInt:()=>qi,$ZodBigIntFormat:()=>Ji,$ZodBoolean:()=>Ki,$ZodCIDRv4:()=>Pi,$ZodCIDRv6:()=>Fi,$ZodCUID:()=>Si,$ZodCUID2:()=>Ci,$ZodCatch:()=>za,$ZodCheck:()=>T,$ZodCheckBigIntFormat:()=>Yr,$ZodCheckEndsWith:()=>ci,$ZodCheckGreaterThan:()=>Kr,$ZodCheckIncludes:()=>oi,$ZodCheckLengthEquals:()=>ti,$ZodCheckLessThan:()=>Gr,$ZodCheckLowerCase:()=>ii,$ZodCheckMaxLength:()=>$r,$ZodCheckMaxSize:()=>Xr,$ZodCheckMimeType:()=>di,$ZodCheckMinLength:()=>ei,$ZodCheckMinSize:()=>Zr,$ZodCheckMultipleOf:()=>qr,$ZodCheckNumberFormat:()=>Jr,$ZodCheckOverwrite:()=>fi,$ZodCheckProperty:()=>ui,$ZodCheckRegex:()=>ri,$ZodCheckSizeEquals:()=>Qr,$ZodCheckStartsWith:()=>si,$ZodCheckStringFormat:()=>ni,$ZodCheckUpperCase:()=>ai,$ZodCodec:()=>Ua,$ZodCustom:()=>Qa,$ZodCustomStringFormat:()=>Ui,$ZodDate:()=>na,$ZodDefault:()=>Na,$ZodDiscriminatedUnion:()=>ma,$ZodE164:()=>Bi,$ZodEmail:()=>vi,$ZodEmoji:()=>bi,$ZodEncodeError:()=>Ye,$ZodEnum:()=>Ta,$ZodError:()=>rn,$ZodExactOptional:()=>ja,$ZodFile:()=>Da,$ZodFunction:()=>Ya,$ZodGUID:()=>gi,$ZodIPv4:()=>ji,$ZodIPv6:()=>Mi,$ZodISODate:()=>Oi,$ZodISODateTime:()=>Di,$ZodISODuration:()=>Ai,$ZodISOTime:()=>ki,$ZodIntersection:()=>ha,$ZodJWT:()=>Hi,$ZodKSUID:()=>Ei,$ZodLazy:()=>Za,$ZodLiteral:()=>Ea,$ZodMAC:()=>Ni,$ZodMap:()=>xa,$ZodNaN:()=>Ba,$ZodNanoID:()=>xi,$ZodNever:()=>ea,$ZodNonOptional:()=>Ia,$ZodNull:()=>Zi,$ZodNullable:()=>Ma,$ZodNumber:()=>Wi,$ZodNumberFormat:()=>Gi,$ZodObject:()=>ca,$ZodObjectJIT:()=>la,$ZodOptional:()=>Aa,$ZodPipe:()=>Va,$ZodPrefault:()=>Fa,$ZodPromise:()=>Xa,$ZodReadonly:()=>Ka,$ZodRealError:()=>an,$ZodRecord:()=>ba,$ZodRegistry:()=>$s,$ZodSet:()=>Ca,$ZodString:()=>hi,$ZodStringFormat:()=>D,$ZodSuccess:()=>Ra,$ZodSymbol:()=>Yi,$ZodTemplateLiteral:()=>Ja,$ZodTransform:()=>Oa,$ZodTuple:()=>va,$ZodType:()=>E,$ZodULID:()=>wi,$ZodURL:()=>yi,$ZodUUID:()=>_i,$ZodUndefined:()=>Xi,$ZodUnion:()=>da,$ZodUnknown:()=>$i,$ZodVoid:()=>ta,$ZodXID:()=>Ti,$ZodXor:()=>pa,$brand:()=>qe,$constructor:()=>v,$input:()=>Qs,$output:()=>Zs,Doc:()=>pi,JSONSchema:()=>rd,JSONSchemaGenerator:()=>nd,NEVER:()=>Ke,TimePrecision:()=>Dc,_any:()=>Jc,_array:()=>Al,_base64:()=>Cc,_base64url:()=>wc,_bigint:()=>Vc,_boolean:()=>zc,_catch:()=>Yl,_check:()=>iu,_cidrv4:()=>xc,_cidrv6:()=>Sc,_coercedBigint:()=>Hc,_coercedBoolean:()=>Bc,_coercedDate:()=>$c,_coercedNumber:()=>Nc,_coercedString:()=>rc,_cuid:()=>pc,_cuid2:()=>mc,_custom:()=>tu,_date:()=>Qc,_decode:()=>xn,_decodeAsync:()=>Tn,_default:()=>Kl,_discriminatedUnion:()=>Nl,_e164:()=>Tc,_email:()=>ic,_emoji:()=>dc,_encode:()=>yn,_encodeAsync:()=>Cn,_endsWith:()=>xl,_enum:()=>zl,_file:()=>Hl,_float32:()=>Fc,_float64:()=>Ic,_gt:()=>rl,_gte:()=>il,_guid:()=>ac,_includes:()=>yl,_int:()=>Pc,_int32:()=>Lc,_int64:()=>Uc,_intersection:()=>Pl,_ipv4:()=>vc,_ipv6:()=>yc,_isoDate:()=>kc,_isoDateTime:()=>Oc,_isoDuration:()=>jc,_isoTime:()=>Ac,_jwt:()=>Ec,_ksuid:()=>_c,_lazy:()=>$l,_length:()=>hl,_literal:()=>Vl,_lowercase:()=>_l,_lt:()=>tl,_lte:()=>nl,_mac:()=>bc,_map:()=>Ll,_max:()=>nl,_maxLength:()=>pl,_maxSize:()=>ul,_mime:()=>Cl,_min:()=>il,_minLength:()=>ml,_minSize:()=>dl,_multipleOf:()=>ll,_nan:()=>el,_nanoid:()=>fc,_nativeEnum:()=>Bl,_negative:()=>ol,_never:()=>Xc,_nonnegative:()=>cl,_nonoptional:()=>ql,_nonpositive:()=>sl,_normalize:()=>Tl,_null:()=>qc,_nullable:()=>Gl,_number:()=>Mc,_optional:()=>Wl,_overwrite:()=>wl,_parse:()=>dn,_parseAsync:()=>pn,_pipe:()=>Xl,_positive:()=>al,_promise:()=>eu,_property:()=>Sl,_readonly:()=>Zl,_record:()=>Il,_refine:()=>nu,_regex:()=>gl,_safeDecode:()=>kn,_safeDecodeAsync:()=>Nn,_safeEncode:()=>Dn,_safeEncodeAsync:()=>jn,_safeParse:()=>hn,_safeParseAsync:()=>_n,_set:()=>Rl,_size:()=>fl,_slugify:()=>kl,_startsWith:()=>bl,_string:()=>nc,_stringFormat:()=>cu,_stringbool:()=>su,_success:()=>Jl,_superRefine:()=>ru,_symbol:()=>Gc,_templateLiteral:()=>Ql,_toLowerCase:()=>Dl,_toUpperCase:()=>Ol,_transform:()=>Ul,_trim:()=>El,_tuple:()=>Fl,_uint32:()=>Rc,_uint64:()=>Wc,_ulid:()=>hc,_undefined:()=>Kc,_union:()=>jl,_unknown:()=>Yc,_uppercase:()=>vl,_url:()=>uc,_uuid:()=>oc,_uuidv4:()=>sc,_uuidv6:()=>cc,_uuidv7:()=>lc,_void:()=>Zc,_xid:()=>gc,_xor:()=>Ml,clone:()=>kt,config:()=>y,createStandardJSONSchemaMethod:()=>pu,createToJSONSchemaMethod:()=>fu,decode:()=>Sn,decodeAsync:()=>En,describe:()=>au,encode:()=>bn,encodeAsync:()=>wn,extractDefs:()=>uu,finalize:()=>du,flattenError:()=>on,formatError:()=>sn,globalConfig:()=>Xe,globalRegistry:()=>tc,initializeContext:()=>lu,isValidBase64:()=>Ii,isValidBase64URL:()=>Ri,isValidJWT:()=>Vi,locales:()=>Ys,meta:()=>ou,parse:()=>fn,parseAsync:()=>mn,prettifyError:()=>un,process:()=>O,regexes:()=>Fn,registry:()=>ec,safeDecode:()=>An,safeDecodeAsync:()=>Pn,safeEncode:()=>On,safeEncodeAsync:()=>Mn,safeParse:()=>gn,safeParseAsync:()=>vn,toDotPath:()=>ln,toJSONSchema:()=>td,treeifyError:()=>cn,util:()=>Ze,version:()=>mi}),ad=Pe({endsWith:()=>xl,gt:()=>rl,gte:()=>il,includes:()=>yl,length:()=>hl,lowercase:()=>_l,lt:()=>tl,lte:()=>nl,maxLength:()=>pl,maxSize:()=>ul,mime:()=>Cl,minLength:()=>ml,minSize:()=>dl,multipleOf:()=>ll,negative:()=>ol,nonnegative:()=>cl,nonpositive:()=>sl,normalize:()=>Tl,overwrite:()=>wl,positive:()=>al,property:()=>Sl,regex:()=>gl,size:()=>fl,slugify:()=>kl,startsWith:()=>bl,toLowerCase:()=>Dl,toUpperCase:()=>Ol,trim:()=>El,uppercase:()=>vl}),od=Pe({ZodISODate:()=>ld,ZodISODateTime:()=>sd,ZodISODuration:()=>pd,ZodISOTime:()=>dd,date:()=>ud,datetime:()=>cd,duration:()=>md,time:()=>fd});const sd=v(`ZodISODateTime`,(e,t)=>{Di.init(e,t),M.init(e,t)});function cd(e){return Oc(sd,e)}const ld=v(`ZodISODate`,(e,t)=>{Oi.init(e,t),M.init(e,t)});function ud(e){return kc(ld,e)}const dd=v(`ZodISOTime`,(e,t)=>{ki.init(e,t),M.init(e,t)});function fd(e){return Ac(dd,e)}const pd=v(`ZodISODuration`,(e,t)=>{Ai.init(e,t),M.init(e,t)});function md(e){return jc(pd,e)}const hd=(e,t)=>{rn.init(e,t),e.name=`ZodError`,Object.defineProperties(e,{format:{value:t=>sn(e,t)},flatten:{value:t=>on(e,t)},addIssue:{value:t=>{e.issues.push(t),e.message=JSON.stringify(e.issues,it,2)}},addIssues:{value:t=>{e.issues.push(...t),e.message=JSON.stringify(e.issues,it,2)}},isEmpty:{get(){return e.issues.length===0}}})},gd=v(`ZodError`,hd),_d=v(`ZodError`,hd,{Parent:Error}),vd=dn(_d),yd=pn(_d),bd=hn(_d),xd=_n(_d),Sd=yn(_d),Cd=xn(_d),wd=Cn(_d),Td=Tn(_d),Ed=Dn(_d),Dd=kn(_d),Od=jn(_d),kd=Nn(_d);var Ad=Pe({ZodAny:()=>Xf,ZodArray:()=>op,ZodBase64:()=>gf,ZodBase64URL:()=>vf,ZodBigInt:()=>zf,ZodBigIntFormat:()=>Vf,ZodBoolean:()=>Lf,ZodCIDRv4:()=>ff,ZodCIDRv6:()=>mf,ZodCUID:()=>Yd,ZodCUID2:()=>Zd,ZodCatch:()=>$p,ZodCodec:()=>am,ZodCustom:()=>_m,ZodCustomStringFormat:()=>wf,ZodDate:()=>ip,ZodDefault:()=>Gp,ZodDiscriminatedUnion:()=>gp,ZodE164:()=>bf,ZodEmail:()=>Nd,ZodEmoji:()=>Gd,ZodEnum:()=>Ap,ZodExactOptional:()=>Bp,ZodFile:()=>Pp,ZodFunction:()=>hm,ZodGUID:()=>Fd,ZodIPv4:()=>of,ZodIPv6:()=>uf,ZodIntersection:()=>vp,ZodJWT:()=>Sf,ZodKSUID:()=>rf,ZodLazy:()=>dm,ZodLiteral:()=>Mp,ZodMAC:()=>cf,ZodMap:()=>Ep,ZodNaN:()=>tm,ZodNanoID:()=>qd,ZodNever:()=>ep,ZodNonOptional:()=>Yp,ZodNull:()=>Jf,ZodNullable:()=>Hp,ZodNumber:()=>kf,ZodNumberFormat:()=>jf,ZodObject:()=>lp,ZodOptional:()=>Rp,ZodPipe:()=>rm,ZodPrefault:()=>qp,ZodPromise:()=>pm,ZodReadonly:()=>sm,ZodRecord:()=>Sp,ZodSet:()=>Op,ZodString:()=>Md,ZodStringFormat:()=>M,ZodSuccess:()=>Zp,ZodSymbol:()=>Wf,ZodTemplateLiteral:()=>lm,ZodTransform:()=>Ip,ZodTuple:()=>bp,ZodType:()=>A,ZodULID:()=>$d,ZodURL:()=>Hd,ZodUUID:()=>Ld,ZodUndefined:()=>Kf,ZodUnion:()=>fp,ZodUnknown:()=>Qf,ZodVoid:()=>np,ZodXID:()=>tf,ZodXor:()=>mp,_ZodString:()=>jd,_default:()=>Kp,_function:()=>gm,any:()=>Zf,array:()=>sp,base64:()=>_f,base64url:()=>yf,bigint:()=>Bf,boolean:()=>Rf,catch:()=>em,check:()=>vm,cidrv4:()=>pf,cidrv6:()=>hf,codec:()=>om,cuid:()=>Xd,cuid2:()=>Qd,custom:()=>ym,date:()=>ap,describe:()=>Sm,discriminatedUnion:()=>_p,e164:()=>xf,email:()=>Pd,emoji:()=>Kd,enum:()=>P,exactOptional:()=>Vp,file:()=>Fp,float32:()=>Nf,float64:()=>Pf,function:()=>gm,guid:()=>Id,hash:()=>Of,hex:()=>Df,hostname:()=>Ef,httpUrl:()=>Wd,instanceof:()=>wm,int:()=>Mf,int32:()=>Ff,int64:()=>Hf,intersection:()=>yp,ipv4:()=>sf,ipv6:()=>df,json:()=>Em,jwt:()=>Cf,keyof:()=>cp,ksuid:()=>af,lazy:()=>fm,literal:()=>Np,looseObject:()=>dp,looseRecord:()=>Tp,mac:()=>lf,map:()=>Dp,meta:()=>Cm,nan:()=>nm,nanoid:()=>Jd,nativeEnum:()=>jp,never:()=>tp,nonoptional:()=>Xp,null:()=>Yf,nullable:()=>Up,nullish:()=>Wp,number:()=>Af,object:()=>N,optional:()=>zp,partialRecord:()=>wp,pipe:()=>im,prefault:()=>Jp,preprocess:()=>Dm,promise:()=>mm,readonly:()=>cm,record:()=>Cp,refine:()=>bm,set:()=>kp,strictObject:()=>up,string:()=>j,stringFormat:()=>Tf,stringbool:()=>Tm,success:()=>Qp,superRefine:()=>xm,symbol:()=>Gf,templateLiteral:()=>um,transform:()=>Lp,tuple:()=>xp,uint32:()=>If,uint64:()=>Uf,ulid:()=>ef,undefined:()=>qf,union:()=>pp,unknown:()=>$f,url:()=>Ud,uuid:()=>Rd,uuidv4:()=>zd,uuidv6:()=>Bd,uuidv7:()=>Vd,void:()=>rp,xid:()=>nf,xor:()=>hp});const A=v(`ZodType`,(e,t)=>(E.init(e,t),Object.assign(e[`~standard`],{jsonSchema:{input:pu(e,`input`),output:pu(e,`output`)}}),e.toJSONSchema=fu(e,{}),e.def=t,e.type=t.type,Object.defineProperty(e,`_def`,{value:t}),e.check=(...n)=>e.clone(ft(t,{checks:[...t.checks??[],...n.map(e=>typeof e==`function`?{_zod:{check:e,def:{check:`custom`},onattach:[]}}:e)]}),{parent:!0}),e.with=e.check,e.clone=(t,n)=>kt(e,t,n),e.brand=()=>e,e.register=((t,n)=>(t.add(e,n),e)),e.parse=(t,n)=>vd(e,t,n,{callee:e.parse}),e.safeParse=(t,n)=>bd(e,t,n),e.parseAsync=async(t,n)=>yd(e,t,n,{callee:e.parseAsync}),e.safeParseAsync=async(t,n)=>xd(e,t,n),e.spa=e.safeParseAsync,e.encode=(t,n)=>Sd(e,t,n),e.decode=(t,n)=>Cd(e,t,n),e.encodeAsync=async(t,n)=>wd(e,t,n),e.decodeAsync=async(t,n)=>Td(e,t,n),e.safeEncode=(t,n)=>Ed(e,t,n),e.safeDecode=(t,n)=>Dd(e,t,n),e.safeEncodeAsync=async(t,n)=>Od(e,t,n),e.safeDecodeAsync=async(t,n)=>kd(e,t,n),e.refine=(t,n)=>e.check(bm(t,n)),e.superRefine=t=>e.check(xm(t)),e.overwrite=t=>e.check(wl(t)),e.optional=()=>zp(e),e.exactOptional=()=>Vp(e),e.nullable=()=>Up(e),e.nullish=()=>zp(Up(e)),e.nonoptional=t=>Xp(e,t),e.array=()=>sp(e),e.or=t=>pp([e,t]),e.and=t=>yp(e,t),e.transform=t=>im(e,Lp(t)),e.default=t=>Kp(e,t),e.prefault=t=>Jp(e,t),e.catch=t=>em(e,t),e.pipe=t=>im(e,t),e.readonly=()=>cm(e),e.describe=t=>{let n=e.clone();return tc.add(n,{description:t}),n},Object.defineProperty(e,`description`,{get(){return tc.get(e)?.description},configurable:!0}),e.meta=(...t)=>{if(t.length===0)return tc.get(e);let n=e.clone();return tc.add(n,t[0]),n},e.isOptional=()=>e.safeParse(void 0).success,e.isNullable=()=>e.safeParse(null).success,e.apply=t=>t(e),e)),jd=v(`_ZodString`,(e,t)=>{hi.init(e,t),A.init(e,t),e._zod.processJSONSchema=(t,n,r)=>hu(e,t,n,r);let n=e._zod.bag;e.format=n.format??null,e.minLength=n.minimum??null,e.maxLength=n.maximum??null,e.regex=(...t)=>e.check(gl(...t)),e.includes=(...t)=>e.check(yl(...t)),e.startsWith=(...t)=>e.check(bl(...t)),e.endsWith=(...t)=>e.check(xl(...t)),e.min=(...t)=>e.check(ml(...t)),e.max=(...t)=>e.check(pl(...t)),e.length=(...t)=>e.check(hl(...t)),e.nonempty=(...t)=>e.check(ml(1,...t)),e.lowercase=t=>e.check(_l(t)),e.uppercase=t=>e.check(vl(t)),e.trim=()=>e.check(El()),e.normalize=(...t)=>e.check(Tl(...t)),e.toLowerCase=()=>e.check(Dl()),e.toUpperCase=()=>e.check(Ol()),e.slugify=()=>e.check(kl())}),Md=v(`ZodString`,(e,t)=>{hi.init(e,t),jd.init(e,t),e.email=t=>e.check(ic(Nd,t)),e.url=t=>e.check(uc(Hd,t)),e.jwt=t=>e.check(Ec(Sf,t)),e.emoji=t=>e.check(dc(Gd,t)),e.guid=t=>e.check(ac(Fd,t)),e.uuid=t=>e.check(oc(Ld,t)),e.uuidv4=t=>e.check(sc(Ld,t)),e.uuidv6=t=>e.check(cc(Ld,t)),e.uuidv7=t=>e.check(lc(Ld,t)),e.nanoid=t=>e.check(fc(qd,t)),e.guid=t=>e.check(ac(Fd,t)),e.cuid=t=>e.check(pc(Yd,t)),e.cuid2=t=>e.check(mc(Zd,t)),e.ulid=t=>e.check(hc($d,t)),e.base64=t=>e.check(Cc(gf,t)),e.base64url=t=>e.check(wc(vf,t)),e.xid=t=>e.check(gc(tf,t)),e.ksuid=t=>e.check(_c(rf,t)),e.ipv4=t=>e.check(vc(of,t)),e.ipv6=t=>e.check(yc(uf,t)),e.cidrv4=t=>e.check(xc(ff,t)),e.cidrv6=t=>e.check(Sc(mf,t)),e.e164=t=>e.check(Tc(bf,t)),e.datetime=t=>e.check(cd(t)),e.date=t=>e.check(ud(t)),e.time=t=>e.check(fd(t)),e.duration=t=>e.check(md(t))});function j(e){return nc(Md,e)}const M=v(`ZodStringFormat`,(e,t)=>{D.init(e,t),jd.init(e,t)}),Nd=v(`ZodEmail`,(e,t)=>{vi.init(e,t),M.init(e,t)});function Pd(e){return ic(Nd,e)}const Fd=v(`ZodGUID`,(e,t)=>{gi.init(e,t),M.init(e,t)});function Id(e){return ac(Fd,e)}const Ld=v(`ZodUUID`,(e,t)=>{_i.init(e,t),M.init(e,t)});function Rd(e){return oc(Ld,e)}function zd(e){return sc(Ld,e)}function Bd(e){return cc(Ld,e)}function Vd(e){return lc(Ld,e)}const Hd=v(`ZodURL`,(e,t)=>{yi.init(e,t),M.init(e,t)});function Ud(e){return uc(Hd,e)}function Wd(e){return uc(Hd,{protocol:/^https?$/,hostname:ur,...S(e)})}const Gd=v(`ZodEmoji`,(e,t)=>{bi.init(e,t),M.init(e,t)});function Kd(e){return dc(Gd,e)}const qd=v(`ZodNanoID`,(e,t)=>{xi.init(e,t),M.init(e,t)});function Jd(e){return fc(qd,e)}const Yd=v(`ZodCUID`,(e,t)=>{Si.init(e,t),M.init(e,t)});function Xd(e){return pc(Yd,e)}const Zd=v(`ZodCUID2`,(e,t)=>{Ci.init(e,t),M.init(e,t)});function Qd(e){return mc(Zd,e)}const $d=v(`ZodULID`,(e,t)=>{wi.init(e,t),M.init(e,t)});function ef(e){return hc($d,e)}const tf=v(`ZodXID`,(e,t)=>{Ti.init(e,t),M.init(e,t)});function nf(e){return gc(tf,e)}const rf=v(`ZodKSUID`,(e,t)=>{Ei.init(e,t),M.init(e,t)});function af(e){return _c(rf,e)}const of=v(`ZodIPv4`,(e,t)=>{ji.init(e,t),M.init(e,t)});function sf(e){return vc(of,e)}const cf=v(`ZodMAC`,(e,t)=>{Ni.init(e,t),M.init(e,t)});function lf(e){return bc(cf,e)}const uf=v(`ZodIPv6`,(e,t)=>{Mi.init(e,t),M.init(e,t)});function df(e){return yc(uf,e)}const ff=v(`ZodCIDRv4`,(e,t)=>{Pi.init(e,t),M.init(e,t)});function pf(e){return xc(ff,e)}const mf=v(`ZodCIDRv6`,(e,t)=>{Fi.init(e,t),M.init(e,t)});function hf(e){return Sc(mf,e)}const gf=v(`ZodBase64`,(e,t)=>{Li.init(e,t),M.init(e,t)});function _f(e){return Cc(gf,e)}const vf=v(`ZodBase64URL`,(e,t)=>{zi.init(e,t),M.init(e,t)});function yf(e){return wc(vf,e)}const bf=v(`ZodE164`,(e,t)=>{Bi.init(e,t),M.init(e,t)});function xf(e){return Tc(bf,e)}const Sf=v(`ZodJWT`,(e,t)=>{Hi.init(e,t),M.init(e,t)});function Cf(e){return Ec(Sf,e)}const wf=v(`ZodCustomStringFormat`,(e,t)=>{Ui.init(e,t),M.init(e,t)});function Tf(e,t,n={}){return cu(wf,e,t,n)}function Ef(e){return cu(wf,`hostname`,lr,e)}function Df(e){return cu(wf,`hex`,Er,e)}function Of(e,t){let n=`${e}_${t?.enc??`hex`}`,r=Fn[n];if(!r)throw Error(`Unrecognized hash format: ${n}`);return cu(wf,n,r,t)}const kf=v(`ZodNumber`,(e,t)=>{Wi.init(e,t),A.init(e,t),e._zod.processJSONSchema=(t,n,r)=>gu(e,t,n,r),e.gt=(t,n)=>e.check(rl(t,n)),e.gte=(t,n)=>e.check(il(t,n)),e.min=(t,n)=>e.check(il(t,n)),e.lt=(t,n)=>e.check(tl(t,n)),e.lte=(t,n)=>e.check(nl(t,n)),e.max=(t,n)=>e.check(nl(t,n)),e.int=t=>e.check(Mf(t)),e.safe=t=>e.check(Mf(t)),e.positive=t=>e.check(rl(0,t)),e.nonnegative=t=>e.check(il(0,t)),e.negative=t=>e.check(tl(0,t)),e.nonpositive=t=>e.check(nl(0,t)),e.multipleOf=(t,n)=>e.check(ll(t,n)),e.step=(t,n)=>e.check(ll(t,n)),e.finite=()=>e;let n=e._zod.bag;e.minValue=Math.max(n.minimum??-1/0,n.exclusiveMinimum??-1/0)??null,e.maxValue=Math.min(n.maximum??1/0,n.exclusiveMaximum??1/0)??null,e.isInt=(n.format??``).includes(`int`)||Number.isSafeInteger(n.multipleOf??.5),e.isFinite=!0,e.format=n.format??null});function Af(e){return Mc(kf,e)}const jf=v(`ZodNumberFormat`,(e,t)=>{Gi.init(e,t),kf.init(e,t)});function Mf(e){return Pc(jf,e)}function Nf(e){return Fc(jf,e)}function Pf(e){return Ic(jf,e)}function Ff(e){return Lc(jf,e)}function If(e){return Rc(jf,e)}const Lf=v(`ZodBoolean`,(e,t)=>{Ki.init(e,t),A.init(e,t),e._zod.processJSONSchema=(t,n,r)=>_u(e,t,n,r)});function Rf(e){return zc(Lf,e)}const zf=v(`ZodBigInt`,(e,t)=>{qi.init(e,t),A.init(e,t),e._zod.processJSONSchema=(t,n,r)=>vu(e,t,n,r),e.gte=(t,n)=>e.check(il(t,n)),e.min=(t,n)=>e.check(il(t,n)),e.gt=(t,n)=>e.check(rl(t,n)),e.gte=(t,n)=>e.check(il(t,n)),e.min=(t,n)=>e.check(il(t,n)),e.lt=(t,n)=>e.check(tl(t,n)),e.lte=(t,n)=>e.check(nl(t,n)),e.max=(t,n)=>e.check(nl(t,n)),e.positive=t=>e.check(rl(BigInt(0),t)),e.negative=t=>e.check(tl(BigInt(0),t)),e.nonpositive=t=>e.check(nl(BigInt(0),t)),e.nonnegative=t=>e.check(il(BigInt(0),t)),e.multipleOf=(t,n)=>e.check(ll(t,n));let n=e._zod.bag;e.minValue=n.minimum??null,e.maxValue=n.maximum??null,e.format=n.format??null});function Bf(e){return Vc(zf,e)}const Vf=v(`ZodBigIntFormat`,(e,t)=>{Ji.init(e,t),zf.init(e,t)});function Hf(e){return Uc(Vf,e)}function Uf(e){return Wc(Vf,e)}const Wf=v(`ZodSymbol`,(e,t)=>{Yi.init(e,t),A.init(e,t),e._zod.processJSONSchema=(t,n,r)=>yu(e,t,n,r)});function Gf(e){return Gc(Wf,e)}const Kf=v(`ZodUndefined`,(e,t)=>{Xi.init(e,t),A.init(e,t),e._zod.processJSONSchema=(t,n,r)=>xu(e,t,n,r)});function qf(e){return Kc(Kf,e)}const Jf=v(`ZodNull`,(e,t)=>{Zi.init(e,t),A.init(e,t),e._zod.processJSONSchema=(t,n,r)=>bu(e,t,n,r)});function Yf(e){return qc(Jf,e)}const Xf=v(`ZodAny`,(e,t)=>{Qi.init(e,t),A.init(e,t),e._zod.processJSONSchema=(e,t,n)=>void 0});function Zf(){return Jc(Xf)}const Qf=v(`ZodUnknown`,(e,t)=>{$i.init(e,t),A.init(e,t),e._zod.processJSONSchema=(e,t,n)=>void 0});function $f(){return Yc(Qf)}const ep=v(`ZodNever`,(e,t)=>{ea.init(e,t),A.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Cu(e,t,n,r)});function tp(e){return Xc(ep,e)}const np=v(`ZodVoid`,(e,t)=>{ta.init(e,t),A.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Su(e,t,n,r)});function rp(e){return Zc(np,e)}const ip=v(`ZodDate`,(e,t)=>{na.init(e,t),A.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Eu(e,t,n,r),e.min=(t,n)=>e.check(il(t,n)),e.max=(t,n)=>e.check(nl(t,n));let n=e._zod.bag;e.minDate=n.minimum?new Date(n.minimum):null,e.maxDate=n.maximum?new Date(n.maximum):null});function ap(e){return Qc(ip,e)}const op=v(`ZodArray`,(e,t)=>{ia.init(e,t),A.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ru(e,t,n,r),e.element=t.element,e.min=(t,n)=>e.check(ml(t,n)),e.nonempty=t=>e.check(ml(1,t)),e.max=(t,n)=>e.check(pl(t,n)),e.length=(t,n)=>e.check(hl(t,n)),e.unwrap=()=>e.element});function sp(e,t){return Al(op,e,t)}function cp(e){let t=e._zod.def.shape;return P(Object.keys(t))}const lp=v(`ZodObject`,(e,t)=>{la.init(e,t),A.init(e,t),e._zod.processJSONSchema=(t,n,r)=>zu(e,t,n,r),x(e,`shape`,()=>t.shape),e.keyof=()=>P(Object.keys(e._zod.def.shape)),e.catchall=t=>e.clone({...e._zod.def,catchall:t}),e.passthrough=()=>e.clone({...e._zod.def,catchall:$f()}),e.loose=()=>e.clone({...e._zod.def,catchall:$f()}),e.strict=()=>e.clone({...e._zod.def,catchall:tp()}),e.strip=()=>e.clone({...e._zod.def,catchall:void 0}),e.extend=t=>It(e,t),e.safeExtend=t=>Lt(e,t),e.merge=t=>Rt(e,t),e.pick=t=>Pt(e,t),e.omit=t=>Ft(e,t),e.partial=(...t)=>zt(Rp,e,t[0]),e.required=(...t)=>Bt(Yp,e,t[0])});function N(e,t){return new lp({type:`object`,shape:e??{},...S(t)})}function up(e,t){return new lp({type:`object`,shape:e,catchall:tp(),...S(t)})}function dp(e,t){return new lp({type:`object`,shape:e,catchall:$f(),...S(t)})}const fp=v(`ZodUnion`,(e,t)=>{da.init(e,t),A.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Bu(e,t,n,r),e.options=t.options});function pp(e,t){return new fp({type:`union`,options:e,...S(t)})}const mp=v(`ZodXor`,(e,t)=>{fp.init(e,t),pa.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Bu(e,t,n,r),e.options=t.options});function hp(e,t){return new mp({type:`union`,options:e,inclusive:!1,...S(t)})}const gp=v(`ZodDiscriminatedUnion`,(e,t)=>{fp.init(e,t),ma.init(e,t)});function _p(e,t,n){return new gp({type:`union`,options:t,discriminator:e,...S(n)})}const vp=v(`ZodIntersection`,(e,t)=>{ha.init(e,t),A.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Vu(e,t,n,r)});function yp(e,t){return new vp({type:`intersection`,left:e,right:t})}const bp=v(`ZodTuple`,(e,t)=>{va.init(e,t),A.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Hu(e,t,n,r),e.rest=t=>e.clone({...e._zod.def,rest:t})});function xp(e,t,n){let r=t instanceof E;return new bp({type:`tuple`,items:e,rest:r?t:null,...S(r?n:t)})}const Sp=v(`ZodRecord`,(e,t)=>{ba.init(e,t),A.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Uu(e,t,n,r),e.keyType=t.keyType,e.valueType=t.valueType});function Cp(e,t,n){return new Sp({type:`record`,keyType:e,valueType:t,...S(n)})}function wp(e,t,n){let r=kt(e);return r._zod.values=void 0,new Sp({type:`record`,keyType:r,valueType:t,...S(n)})}function Tp(e,t,n){return new Sp({type:`record`,keyType:e,valueType:t,mode:`loose`,...S(n)})}const Ep=v(`ZodMap`,(e,t)=>{xa.init(e,t),A.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Iu(e,t,n,r),e.keyType=t.keyType,e.valueType=t.valueType,e.min=(...t)=>e.check(dl(...t)),e.nonempty=t=>e.check(dl(1,t)),e.max=(...t)=>e.check(ul(...t)),e.size=(...t)=>e.check(fl(...t))});function Dp(e,t,n){return new Ep({type:`map`,keyType:e,valueType:t,...S(n)})}const Op=v(`ZodSet`,(e,t)=>{Ca.init(e,t),A.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Lu(e,t,n,r),e.min=(...t)=>e.check(dl(...t)),e.nonempty=t=>e.check(dl(1,t)),e.max=(...t)=>e.check(ul(...t)),e.size=(...t)=>e.check(fl(...t))});function kp(e,t){return new Op({type:`set`,valueType:e,...S(t)})}const Ap=v(`ZodEnum`,(e,t)=>{Ta.init(e,t),A.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Du(e,t,n,r),e.enum=t.entries,e.options=Object.values(t.entries);let n=new Set(Object.keys(t.entries));e.extract=(e,r)=>{let i={};for(let r of e)if(n.has(r))i[r]=t.entries[r];else throw Error(`Key ${r} not found in enum`);return new Ap({...t,checks:[],...S(r),entries:i})},e.exclude=(e,r)=>{let i={...t.entries};for(let t of e)if(n.has(t))delete i[t];else throw Error(`Key ${t} not found in enum`);return new Ap({...t,checks:[],...S(r),entries:i})}});function P(e,t){return new Ap({type:`enum`,entries:Array.isArray(e)?Object.fromEntries(e.map(e=>[e,e])):e,...S(t)})}function jp(e,t){return new Ap({type:`enum`,entries:e,...S(t)})}const Mp=v(`ZodLiteral`,(e,t)=>{Ea.init(e,t),A.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ou(e,t,n,r),e.values=new Set(t.values),Object.defineProperty(e,`value`,{get(){if(t.values.length>1)throw Error("This schema contains multiple valid literal values. Use `.values` instead.");return t.values[0]}})});function Np(e,t){return new Mp({type:`literal`,values:Array.isArray(e)?e:[e],...S(t)})}const Pp=v(`ZodFile`,(e,t)=>{Da.init(e,t),A.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ju(e,t,n,r),e.min=(t,n)=>e.check(dl(t,n)),e.max=(t,n)=>e.check(ul(t,n)),e.mime=(t,n)=>e.check(Cl(Array.isArray(t)?t:[t],n))});function Fp(e){return Hl(Pp,e)}const Ip=v(`ZodTransform`,(e,t)=>{Oa.init(e,t),A.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Fu(e,t,n,r),e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new Ye(e.constructor.name);n.addIssue=r=>{if(typeof r==`string`)n.issues.push(qt(r,n.value,t));else{let t=r;t.fatal&&(t.continue=!1),t.code??=`custom`,t.input??=n.value,t.inst??=e,n.issues.push(qt(t))}};let i=t.transform(n.value,n);return i instanceof Promise?i.then(e=>(n.value=e,n)):(n.value=i,n)}});function Lp(e){return new Ip({type:`transform`,transform:e})}const Rp=v(`ZodOptional`,(e,t)=>{Aa.init(e,t),A.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Qu(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function zp(e){return new Rp({type:`optional`,innerType:e})}const Bp=v(`ZodExactOptional`,(e,t)=>{ja.init(e,t),A.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Qu(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Vp(e){return new Bp({type:`optional`,innerType:e})}const Hp=v(`ZodNullable`,(e,t)=>{Ma.init(e,t),A.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Wu(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Up(e){return new Hp({type:`nullable`,innerType:e})}function Wp(e){return zp(Up(e))}const Gp=v(`ZodDefault`,(e,t)=>{Na.init(e,t),A.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ku(e,t,n,r),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function Kp(e,t){return new Gp({type:`default`,innerType:e,get defaultValue(){return typeof t==`function`?t():Ct(t)}})}const qp=v(`ZodPrefault`,(e,t)=>{Fa.init(e,t),A.init(e,t),e._zod.processJSONSchema=(t,n,r)=>qu(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Jp(e,t){return new qp({type:`prefault`,innerType:e,get defaultValue(){return typeof t==`function`?t():Ct(t)}})}const Yp=v(`ZodNonOptional`,(e,t)=>{Ia.init(e,t),A.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Gu(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Xp(e,t){return new Yp({type:`nonoptional`,innerType:e,...S(t)})}const Zp=v(`ZodSuccess`,(e,t)=>{Ra.init(e,t),A.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Mu(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Qp(e){return new Zp({type:`success`,innerType:e})}const $p=v(`ZodCatch`,(e,t)=>{za.init(e,t),A.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ju(e,t,n,r),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function em(e,t){return new $p({type:`catch`,innerType:e,catchValue:typeof t==`function`?t:()=>t})}const tm=v(`ZodNaN`,(e,t)=>{Ba.init(e,t),A.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ku(e,t,n,r)});function nm(e){return el(tm,e)}const rm=v(`ZodPipe`,(e,t)=>{Va.init(e,t),A.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Yu(e,t,n,r),e.in=t.in,e.out=t.out});function im(e,t){return new rm({type:`pipe`,in:e,out:t})}const am=v(`ZodCodec`,(e,t)=>{rm.init(e,t),Ua.init(e,t)});function om(e,t,n){return new am({type:`pipe`,in:e,out:t,transform:n.decode,reverseTransform:n.encode})}const sm=v(`ZodReadonly`,(e,t)=>{Ka.init(e,t),A.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Xu(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function cm(e){return new sm({type:`readonly`,innerType:e})}const lm=v(`ZodTemplateLiteral`,(e,t)=>{Ja.init(e,t),A.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Au(e,t,n,r)});function um(e,t){return new lm({type:`template_literal`,parts:e,...S(t)})}const dm=v(`ZodLazy`,(e,t)=>{Za.init(e,t),A.init(e,t),e._zod.processJSONSchema=(t,n,r)=>$u(e,t,n,r),e.unwrap=()=>e._zod.def.getter()});function fm(e){return new dm({type:`lazy`,getter:e})}const pm=v(`ZodPromise`,(e,t)=>{Xa.init(e,t),A.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Zu(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function mm(e){return new pm({type:`promise`,innerType:e})}const hm=v(`ZodFunction`,(e,t)=>{Ya.init(e,t),A.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Pu(e,t,n,r)});function gm(e){return new hm({type:`function`,input:Array.isArray(e?.input)?xp(e?.input):e?.input??sp($f()),output:e?.output??$f()})}const _m=v(`ZodCustom`,(e,t)=>{Qa.init(e,t),A.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Nu(e,t,n,r)});function vm(e){let t=new T({check:`custom`});return t._zod.check=e,t}function ym(e,t){return tu(_m,e??(()=>!0),t)}function bm(e,t={}){return nu(_m,e,t)}function xm(e){return ru(e)}const Sm=au,Cm=ou;function wm(e,t={}){let n=new _m({type:`custom`,check:`custom`,fn:t=>t instanceof e,abort:!0,...S(t)});return n._zod.bag.Class=e,n._zod.check=t=>{t.value instanceof e||t.issues.push({code:`invalid_type`,expected:e.name,input:t.value,inst:n,path:[...n._zod.def.path??[]]})},n}const Tm=(...e)=>su({Codec:am,Boolean:Lf,String:Md},...e);function Em(e){let t=fm(()=>pp([j(e),Af(),Rf(),Yf(),sp(t),Cp(j(),t)]));return t}function Dm(e,t){return im(Lp(e),t)}const Om={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 km(e){y({customError:e})}function Am(){return y().customError}var jm;(function(e){})(jm||={});const F={...Ad,...ad,iso:od},Mm=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`.split(`.`));function Nm(e,t){let n=e.$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`:t??`draft-2020-12`}function Pm(e,t){if(!e.startsWith(`#`))throw Error(`External $ref is not supported, only local refs (#/...) are allowed`);let n=e.slice(1).split(`/`).filter(Boolean);if(n.length===0)return t.rootSchema;let r=t.version===`draft-2020-12`?`$defs`:`definitions`;if(n[0]===r){let r=n[1];if(!r||!t.defs[r])throw Error(`Reference not found: ${e}`);return t.defs[r]}throw Error(`Reference not found: ${e}`)}function Fm(e,t){if(e.not!==void 0){if(typeof e.not==`object`&&Object.keys(e.not).length===0)return F.never();throw Error(`not is not supported in Zod (except { not: {} } for never)`)}if(e.unevaluatedItems!==void 0)throw Error(`unevaluatedItems is not supported`);if(e.unevaluatedProperties!==void 0)throw Error(`unevaluatedProperties is not supported`);if(e.if!==void 0||e.then!==void 0||e.else!==void 0)throw Error(`Conditional schemas (if/then/else) are not supported`);if(e.dependentSchemas!==void 0||e.dependentRequired!==void 0)throw Error(`dependentSchemas and dependentRequired are not supported`);if(e.$ref){let n=e.$ref;if(t.refs.has(n))return t.refs.get(n);if(t.processing.has(n))return F.lazy(()=>{if(!t.refs.has(n))throw Error(`Circular reference not resolved: ${n}`);return t.refs.get(n)});t.processing.add(n);let r=I(Pm(n,t),t);return t.refs.set(n,r),t.processing.delete(n),r}if(e.enum!==void 0){let n=e.enum;if(t.version===`openapi-3.0`&&e.nullable===!0&&n.length===1&&n[0]===null)return F.null();if(n.length===0)return F.never();if(n.length===1)return F.literal(n[0]);if(n.every(e=>typeof e==`string`))return F.enum(n);let r=n.map(e=>F.literal(e));return r.length<2?r[0]:F.union([r[0],r[1],...r.slice(2)])}if(e.const!==void 0)return F.literal(e.const);let n=e.type;if(Array.isArray(n)){let r=n.map(n=>Fm({...e,type:n},t));return r.length===0?F.never():r.length===1?r[0]:F.union(r)}if(!n)return F.any();let r;switch(n){case`string`:{let t=F.string();if(e.format){let n=e.format;n===`email`?t=t.check(F.email()):n===`uri`||n===`uri-reference`?t=t.check(F.url()):n===`uuid`||n===`guid`?t=t.check(F.uuid()):n===`date-time`?t=t.check(F.iso.datetime()):n===`date`?t=t.check(F.iso.date()):n===`time`?t=t.check(F.iso.time()):n===`duration`?t=t.check(F.iso.duration()):n===`ipv4`?t=t.check(F.ipv4()):n===`ipv6`?t=t.check(F.ipv6()):n===`mac`?t=t.check(F.mac()):n===`cidr`?t=t.check(F.cidrv4()):n===`cidr-v6`?t=t.check(F.cidrv6()):n===`base64`?t=t.check(F.base64()):n===`base64url`?t=t.check(F.base64url()):n===`e164`?t=t.check(F.e164()):n===`jwt`?t=t.check(F.jwt()):n===`emoji`?t=t.check(F.emoji()):n===`nanoid`?t=t.check(F.nanoid()):n===`cuid`?t=t.check(F.cuid()):n===`cuid2`?t=t.check(F.cuid2()):n===`ulid`?t=t.check(F.ulid()):n===`xid`?t=t.check(F.xid()):n===`ksuid`&&(t=t.check(F.ksuid()))}typeof e.minLength==`number`&&(t=t.min(e.minLength)),typeof e.maxLength==`number`&&(t=t.max(e.maxLength)),e.pattern&&(t=t.regex(new RegExp(e.pattern))),r=t;break}case`number`:case`integer`:{let t=n===`integer`?F.number().int():F.number();typeof e.minimum==`number`&&(t=t.min(e.minimum)),typeof e.maximum==`number`&&(t=t.max(e.maximum)),typeof e.exclusiveMinimum==`number`?t=t.gt(e.exclusiveMinimum):e.exclusiveMinimum===!0&&typeof e.minimum==`number`&&(t=t.gt(e.minimum)),typeof e.exclusiveMaximum==`number`?t=t.lt(e.exclusiveMaximum):e.exclusiveMaximum===!0&&typeof e.maximum==`number`&&(t=t.lt(e.maximum)),typeof e.multipleOf==`number`&&(t=t.multipleOf(e.multipleOf)),r=t;break}case`boolean`:r=F.boolean();break;case`null`:r=F.null();break;case`object`:{let n={},i=e.properties||{},a=new Set(e.required||[]);for(let[e,r]of Object.entries(i)){let i=I(r,t);n[e]=a.has(e)?i:i.optional()}if(e.propertyNames){let i=I(e.propertyNames,t),a=e.additionalProperties&&typeof e.additionalProperties==`object`?I(e.additionalProperties,t):F.any();if(Object.keys(n).length===0){r=F.record(i,a);break}let o=F.object(n).passthrough(),s=F.looseRecord(i,a);r=F.intersection(o,s);break}if(e.patternProperties){let i=e.patternProperties,a=Object.keys(i),o=[];for(let e of a){let n=I(i[e],t),r=F.string().regex(new RegExp(e));o.push(F.looseRecord(r,n))}let s=[];if(Object.keys(n).length>0&&s.push(F.object(n).passthrough()),s.push(...o),s.length===0)r=F.object({}).passthrough();else if(s.length===1)r=s[0];else{let e=F.intersection(s[0],s[1]);for(let t=2;t<s.length;t++)e=F.intersection(e,s[t]);r=e}break}let o=F.object(n);r=e.additionalProperties===!1?o.strict():typeof e.additionalProperties==`object`?o.catchall(I(e.additionalProperties,t)):o.passthrough();break}case`array`:{let n=e.prefixItems,i=e.items;if(n&&Array.isArray(n)){let a=n.map(e=>I(e,t)),o=i&&typeof i==`object`&&!Array.isArray(i)?I(i,t):void 0;r=o?F.tuple(a).rest(o):F.tuple(a),typeof e.minItems==`number`&&(r=r.check(F.minLength(e.minItems))),typeof e.maxItems==`number`&&(r=r.check(F.maxLength(e.maxItems)))}else if(Array.isArray(i)){let n=i.map(e=>I(e,t)),a=e.additionalItems&&typeof e.additionalItems==`object`?I(e.additionalItems,t):void 0;r=a?F.tuple(n).rest(a):F.tuple(n),typeof e.minItems==`number`&&(r=r.check(F.minLength(e.minItems))),typeof e.maxItems==`number`&&(r=r.check(F.maxLength(e.maxItems)))}else if(i!==void 0){let n=I(i,t),a=F.array(n);typeof e.minItems==`number`&&(a=a.min(e.minItems)),typeof e.maxItems==`number`&&(a=a.max(e.maxItems)),r=a}else r=F.array(F.any());break}default:throw Error(`Unsupported type: ${n}`)}return e.description&&(r=r.describe(e.description)),e.default!==void 0&&(r=r.default(e.default)),r}function I(e,t){if(typeof e==`boolean`)return e?F.any():F.never();let n=Fm(e,t),r=e.type||e.enum!==void 0||e.const!==void 0;if(e.anyOf&&Array.isArray(e.anyOf)){let i=e.anyOf.map(e=>I(e,t)),a=F.union(i);n=r?F.intersection(n,a):a}if(e.oneOf&&Array.isArray(e.oneOf)){let i=e.oneOf.map(e=>I(e,t)),a=F.xor(i);n=r?F.intersection(n,a):a}if(e.allOf&&Array.isArray(e.allOf))if(e.allOf.length===0)n=r?n:F.any();else{let i=r?n:I(e.allOf[0],t),a=r?0:1;for(let n=a;n<e.allOf.length;n++)i=F.intersection(i,I(e.allOf[n],t));n=i}e.nullable===!0&&t.version===`openapi-3.0`&&(n=F.nullable(n)),e.readOnly===!0&&(n=F.readonly(n));let i={};for(let t of[`$id`,`id`,`$comment`,`$anchor`,`$vocabulary`,`$dynamicRef`,`$dynamicAnchor`])t in e&&(i[t]=e[t]);for(let t of[`contentEncoding`,`contentMediaType`,`contentSchema`])t in e&&(i[t]=e[t]);for(let t of Object.keys(e))Mm.has(t)||(i[t]=e[t]);return Object.keys(i).length>0&&t.registry.add(n,i),n}function Im(e,t){return typeof e==`boolean`?e?F.any():F.never():I(e,{version:Nm(e,t?.defaultTarget),defs:e.$defs||e.definitions||{},refs:new Map,processing:new Set,rootSchema:e,registry:t?.registry??tc})}var Lm=Pe({bigint:()=>Vm,boolean:()=>Bm,date:()=>Hm,number:()=>zm,string:()=>Rm});function Rm(e){return rc(Md,e)}function zm(e){return Nc(kf,e)}function Bm(e){return Bc(Lf,e)}function Vm(e){return Hc(zf,e)}function Hm(e){return $c(ip,e)}var Um=Pe({$brand:()=>qe,$input:()=>Qs,$output:()=>Zs,NEVER:()=>Ke,TimePrecision:()=>Dc,ZodAny:()=>Xf,ZodArray:()=>op,ZodBase64:()=>gf,ZodBase64URL:()=>vf,ZodBigInt:()=>zf,ZodBigIntFormat:()=>Vf,ZodBoolean:()=>Lf,ZodCIDRv4:()=>ff,ZodCIDRv6:()=>mf,ZodCUID:()=>Yd,ZodCUID2:()=>Zd,ZodCatch:()=>$p,ZodCodec:()=>am,ZodCustom:()=>_m,ZodCustomStringFormat:()=>wf,ZodDate:()=>ip,ZodDefault:()=>Gp,ZodDiscriminatedUnion:()=>gp,ZodE164:()=>bf,ZodEmail:()=>Nd,ZodEmoji:()=>Gd,ZodEnum:()=>Ap,ZodError:()=>gd,ZodExactOptional:()=>Bp,ZodFile:()=>Pp,ZodFirstPartyTypeKind:()=>jm,ZodFunction:()=>hm,ZodGUID:()=>Fd,ZodIPv4:()=>of,ZodIPv6:()=>uf,ZodISODate:()=>ld,ZodISODateTime:()=>sd,ZodISODuration:()=>pd,ZodISOTime:()=>dd,ZodIntersection:()=>vp,ZodIssueCode:()=>Om,ZodJWT:()=>Sf,ZodKSUID:()=>rf,ZodLazy:()=>dm,ZodLiteral:()=>Mp,ZodMAC:()=>cf,ZodMap:()=>Ep,ZodNaN:()=>tm,ZodNanoID:()=>qd,ZodNever:()=>ep,ZodNonOptional:()=>Yp,ZodNull:()=>Jf,ZodNullable:()=>Hp,ZodNumber:()=>kf,ZodNumberFormat:()=>jf,ZodObject:()=>lp,ZodOptional:()=>Rp,ZodPipe:()=>rm,ZodPrefault:()=>qp,ZodPromise:()=>pm,ZodReadonly:()=>sm,ZodRealError:()=>_d,ZodRecord:()=>Sp,ZodSet:()=>Op,ZodString:()=>Md,ZodStringFormat:()=>M,ZodSuccess:()=>Zp,ZodSymbol:()=>Wf,ZodTemplateLiteral:()=>lm,ZodTransform:()=>Ip,ZodTuple:()=>bp,ZodType:()=>A,ZodULID:()=>$d,ZodURL:()=>Hd,ZodUUID:()=>Ld,ZodUndefined:()=>Kf,ZodUnion:()=>fp,ZodUnknown:()=>Qf,ZodVoid:()=>np,ZodXID:()=>tf,ZodXor:()=>mp,_ZodString:()=>jd,_default:()=>Kp,_function:()=>gm,any:()=>Zf,array:()=>sp,base64:()=>_f,base64url:()=>yf,bigint:()=>Bf,boolean:()=>Rf,catch:()=>em,check:()=>vm,cidrv4:()=>pf,cidrv6:()=>hf,clone:()=>kt,codec:()=>om,coerce:()=>Lm,config:()=>y,core:()=>id,cuid:()=>Xd,cuid2:()=>Qd,custom:()=>ym,date:()=>ap,decode:()=>Cd,decodeAsync:()=>Td,describe:()=>Sm,discriminatedUnion:()=>_p,e164:()=>xf,email:()=>Pd,emoji:()=>Kd,encode:()=>Sd,encodeAsync:()=>wd,endsWith:()=>xl,enum:()=>P,exactOptional:()=>Vp,file:()=>Fp,flattenError:()=>on,float32:()=>Nf,float64:()=>Pf,formatError:()=>sn,fromJSONSchema:()=>Im,function:()=>gm,getErrorMap:()=>Am,globalRegistry:()=>tc,gt:()=>rl,gte:()=>il,guid:()=>Id,hash:()=>Of,hex:()=>Df,hostname:()=>Ef,httpUrl:()=>Wd,includes:()=>yl,instanceof:()=>wm,int:()=>Mf,int32:()=>Ff,int64:()=>Hf,intersection:()=>yp,ipv4:()=>sf,ipv6:()=>df,iso:()=>od,json:()=>Em,jwt:()=>Cf,keyof:()=>cp,ksuid:()=>af,lazy:()=>fm,length:()=>hl,literal:()=>Np,locales:()=>Ys,looseObject:()=>dp,looseRecord:()=>Tp,lowercase:()=>_l,lt:()=>tl,lte:()=>nl,mac:()=>lf,map:()=>Dp,maxLength:()=>pl,maxSize:()=>ul,meta:()=>Cm,mime:()=>Cl,minLength:()=>ml,minSize:()=>dl,multipleOf:()=>ll,nan:()=>nm,nanoid:()=>Jd,nativeEnum:()=>jp,negative:()=>ol,never:()=>tp,nonnegative:()=>cl,nonoptional:()=>Xp,nonpositive:()=>sl,normalize:()=>Tl,null:()=>Yf,nullable:()=>Up,nullish:()=>Wp,number:()=>Af,object:()=>N,optional:()=>zp,overwrite:()=>wl,parse:()=>vd,parseAsync:()=>yd,partialRecord:()=>wp,pipe:()=>im,positive:()=>al,prefault:()=>Jp,preprocess:()=>Dm,prettifyError:()=>un,promise:()=>mm,property:()=>Sl,readonly:()=>cm,record:()=>Cp,refine:()=>bm,regex:()=>gl,regexes:()=>Fn,registry:()=>ec,safeDecode:()=>Dd,safeDecodeAsync:()=>kd,safeEncode:()=>Ed,safeEncodeAsync:()=>Od,safeParse:()=>bd,safeParseAsync:()=>xd,set:()=>kp,setErrorMap:()=>km,size:()=>fl,slugify:()=>kl,startsWith:()=>bl,strictObject:()=>up,string:()=>j,stringFormat:()=>Tf,stringbool:()=>Tm,success:()=>Qp,superRefine:()=>xm,symbol:()=>Gf,templateLiteral:()=>um,toJSONSchema:()=>td,toLowerCase:()=>Dl,toUpperCase:()=>Ol,transform:()=>Lp,treeifyError:()=>cn,trim:()=>El,tuple:()=>xp,uint32:()=>If,uint64:()=>Uf,ulid:()=>ef,undefined:()=>qf,union:()=>pp,unknown:()=>$f,uppercase:()=>vl,url:()=>Ud,util:()=>Ze,uuid:()=>Rd,uuidv4:()=>zd,uuidv6:()=>Bd,uuidv7:()=>Vd,void:()=>rp,xid:()=>nf,xor:()=>hp});y(yo());var L=Um;const Wm=N({ci:Rf().default(!1),debug:Rf().default(!1),localBuild:Rf().default(!1),baseCommand:P([`add`,`init`,`deploy`,`upgrade`,`remove`]).optional().catch(void 0),appType:P([`browser`,`webviewer`]).optional().catch(void 0),ui:P([`shadcn`,`mantine`]).optional().catch(`mantine`),projectDir:j().default(process.cwd()),authType:P([`clerk`,`fmaddon`]).optional(),emailProvider:P([`plunk`,`resend`,`none`]).optional(),dataSource:P([`filemaker`,`none`]).optional()}).passthrough();let R=Wm.parse({});function Gm(e){let t=Wm.safeParse(e);t.success&&(R={...R,...t.data})}const Km=()=>{let e=process.env.npm_config_user_agent;return e?e.startsWith(`yarn`)?`yarn`:e.startsWith(`pnpm`)?`pnpm`:e.startsWith(`bun`)?`bun`:`npm`:`pnpm`},z={error(...e){console.log(c.red(...e))},warn(...e){console.log(c.yellow(...e))},info(...e){console.log(c.cyan(...e))},success(...e){console.log(c.green(...e))},dim(...e){console.log(c.dim(...e))}},qm=async(e,t,n)=>{let{onDataHandle:r,args:i=[`install`],stdout:a=`pipe`}=n;process.env.PROOFKIT_ENV===`development`&&i.push(`--prefer-offline`);let o=re(n.loadingMessage??`Running ${t} ${i.join(` `)} ...`).start(),s=f(t,i,{cwd:e,stdout:a,stderr:`pipe`});return await new Promise((e,n)=>{let a=``,c=``;r?s.stdout?.on(`data`,r(o)):s.stdout?.on(`data`,e=>{a+=e.toString()}),s.stderr?.on(`data`,e=>{c+=e.toString()}),s.on(`error`,e=>n(e)),s.on(`close`,r=>{if(r===0)e();else{let e=[a,c].filter(e=>e.trim()).join(`
|
|
50
|
-
`).trim().replace(/^- Checking registry\.$/gm,``).replace(/^\s*$/gm,``).trim()||`Command failed with exit code ${r}: ${t} ${i.join(` `)}`;n(Error(e))}})}),o},Jm=async(e,t)=>{switch(e){case`npm`:return await f(e,[`install`],{cwd:t,stderr:`inherit`}),null;case`pnpm`:return qm(t,e,{onDataHandle:e=>t=>{let n=t.toString();n.includes(`Progress`)&&(e.text=n.includes(`|`)?n.split(` | `)[1]??``:n)}});case`yarn`:return qm(t,e,{onDataHandle:e=>t=>{e.text=t.toString()}});case`bun`:return qm(t,e,{stdout:`ignore`});default:throw Error(`Unknown package manager: ${e}`)}},Ym=async e=>{let{projectDir:t=R.projectDir}=e??{};z.info(`Installing dependencies...`),(await Jm(Km(),t)??re()).succeed(c.green(`Successfully installed dependencies!
|
|
51
|
-
`))},Xm={"next-auth":`beta`,"next-auth-adapter-filemaker":`beta`,"@auth/prisma-adapter":`^1.6.0`,"@auth/drizzle-adapter":`^1.1.0`,prisma:`^5.14.0`,"@prisma/client":`^5.14.0`,"@prisma/adapter-planetscale":`^5.14.0`,"drizzle-orm":`^0.30.10`,"drizzle-kit":`^0.21.4`,mysql2:`^3.9.7`,"@planetscale/database":`^1.18.0`,postgres:`^3.4.4`,"@libsql/client":`^0.6.0`,tailwindcss:`^4.1.10`,postcss:`^8.4.41`,"@tailwindcss/postcss":`^4.1.10`,"class-variance-authority":`^0.7.1`,clsx:`^2.1.1`,"tailwind-merge":`^3.3.1`,"tw-animate-css":`^1.3.4`,"@trpc/client":`^11.0.0-rc.446`,"@trpc/server":`^11.0.0-rc.446`,"@trpc/react-query":`^11.0.0-rc.446`,"@trpc/next":`^11.0.0-rc.446`,superjson:`^2.2.1`,"server-only":`^0.0.1`,"@clerk/nextjs":`^6.3.1`,"@clerk/themes":`^2.1.33`,"@proofkit/fmdapi":`^${Ie()}`,"@proofkit/cli":`^${Fe()}`,"@tanstack/react-query":`^5.59.0`,"@tanstack/react-query-devtools":`^5.59.0`,"@node-rs/argon2":`^2.0.2`,"@oslojs/binary":`^1.0.0`,"@oslojs/crypto":`^1.0.1`,"@oslojs/encoding":`^1.1.0`,"js-cookie":`^3.0.5`,"@types/js-cookie":`^3.0.6`,"@react-email/components":`^0.5.0`,"@react-email/render":`1.2.0`,"@react-email/preview-server":`^4.2.8`,"@plunk/node":`^3.0.3`,"react-email":`^4.2.8`,resend:`^4.0.0`,"@sendgrid/mail":`^8.1.4`,"@types/node":`^${Le()}`,"@radix-ui/react-slot":`^1.2.3`,"lucide-react":`^0.518.0`,"better-auth":`^1.3.4`,"@proofkit/better-auth":`${Re()}`,"@daveyplate/better-auth-ui":`^2.1.3`,"@mantine/core":`^7.15.0`,"@mantine/dates":`^7.15.0`,"@mantine/hooks":`^7.15.0`,"@mantine/modals":`^7.15.0`,"@mantine/notifications":`^7.15.0`,"mantine-react-table":`^2.0.0`,"next-themes":`^0.4.6`,zod:`^4`},B=e=>{let{dependencies:t,devMode:n,projectDir:r=R.projectDir}=e,i=p.readJSONSync(d.join(r,`package.json`));for(let e of t){let t=Xm[e];n&&i.devDependencies?i.devDependencies[e]=t:i.dependencies&&(i.dependencies[e]=t)}let a=se(i);p.writeJSONSync(d.join(r,`package.json`),a,{spaces:2})},Zm=()=>{let e=`
|
|
52
|
-
# When adding additional environment variables, the schema in "${Qm(!1)??`./src/config/env.ts`}"
|
|
53
|
-
# should be updated accordingly.
|
|
54
|
-
|
|
55
|
-
`.trim().concat(`
|
|
56
|
-
`),t=d.join(R.projectDir,`.env`);p.writeFileSync(t,e,`utf-8`)};function Qm(e){for(let e of[`src/config/env.ts`,`src/lib/env.ts`,`src/env.ts`,`lib/env.ts`,`env.ts`,`config/env.ts`]){let t=d.join(R.projectDir,e);if(p.existsSync(t))return t}if(e===!1)return null;throw z.warn(`Could not find T3 env files. Run "proofkit add utils/t3-env" to initialize them.`),Error(`T3 env file not found`)}async function $m(e){await e.save();try{await f(`npx`,[`@biomejs/biome`,`format`,`--write`,R.projectDir],{cwd:R.projectDir})}catch(e){R.debug&&(console.log(`Error formatting files with biome`),console.error(e))}}function eh(e){let t=e?.getExpressionIfKind(g.ParenthesizedExpression)?.getExpression()??e?.getExpression();return t?.isKind(g.JsxFragment)||e?.replaceWithText(`return <>${t}</>;`),e}function th(e){return new ae({tsConfigFilePath:d.join(e??process.cwd(),`tsconfig.json`)})}async function nh({projectDir:e=R.projectDir,envs:t,envFileDescription:n,...r}){let i=Qm(),a=r.project??th(e),o=a.addSourceFileAtPath(i);if(!o)throw Error(`Schema file not found`);let s=o.getDescendantsOfKind(g.CallExpression).find(e=>e.getExpression().getText()===`createEnv`);if(!s)throw Error(`Could not find createEnv call in schema file. Make sure you have a valid env.ts file with createEnv setup.`);let c=s.getArguments()[0];if(!c)throw Error(`createEnv call is missing options argument`);let l=c.getDescendantsOfKind(g.PropertyAssignment).find(e=>e.getName()===`server`)?.getFirstDescendantByKind(g.ObjectLiteralExpression),u=c.getDescendantsOfKind(g.PropertyAssignment).find(e=>e.getName()===`client`)?.getFirstDescendantByKind(g.ObjectLiteralExpression),f=c.getDescendantsOfKind(g.PropertyAssignment).find(e=>e.getName()===`experimental__runtimeEnv`)?.getFirstDescendantByKind(g.ObjectLiteralExpression),m=t.filter(e=>e.type===`server`),h=t.filter(e=>e.type===`client`);for(let e of m)l?.addPropertyAssignment({name:e.name,initializer:e.zodValue});for(let e of h)u?.addPropertyAssignment({name:e.name,initializer:e.zodValue}),f?.addPropertyAssignment({name:e.name,initializer:`process.env.${e.name}`});let ee=t.filter(e=>e.addToRuntimeEnv??!0).map(e=>`${e.name}=${e.defaultValue??``}`).join(`
|
|
57
|
-
`),te=d.join(e,`.env`);if(p.existsSync(te)){let t=p.readFileSync(te,`utf-8`),r=d.join(e,`.gitignore`);try{let t=``;p.existsSync(r)&&(t=p.readFileSync(r,`utf-8`)),t.includes(`.env`)||ce(`echo ".env" >> "${r}"`,{cwd:e})}catch{}let i=`${t}
|
|
58
|
-
${n?`# ${n}\n${ee}`:ee}
|
|
59
|
-
`;p.writeFileSync(te,i)}return r.project||await $m(a),o}function rh(e,t){e.addImportDeclaration({defaultImport:`UserMenu`,moduleSpecifier:t});let n=e.getImportDeclaration(e=>e.getModuleSpecifierValue()===`@mantine/core`);n?n.getNamedImports().find(e=>e.getName()===`Group`)||n.addNamedImport({name:`Group`}):e.addImportDeclaration({namedImports:[{name:`Group`}],moduleSpecifier:`@mantine/core`});let r=eh(e.getFunction(e=>e.isDefaultExport())?.getBody()?.getFirstDescendantByKind(g.ReturnStatement)),i=r?.getFirstDescendantByKind(g.JsxOpeningFragment)?.getParentIfKind(g.JsxFragment)?.getFirstDescendantByKind(g.SyntaxList)?.getText();if(!i){console.log(`Failed to inject into header slot at ${e.getFilePath()}`);return}r?.replaceWithText(`return (<><Group>${i}<UserMenu /></Group></>)`),r?.formatText(),e.saveSync()}const ih=async({projectDir:e})=>{B({projectDir:e,dependencies:[`@clerk/nextjs`,`@clerk/themes`],devMode:!1});let t=d.join(_,`template/extras`),n=d.join(e,`src/middleware.ts`);if(p.existsSync(n))console.log(c.yellow(`Middleware already exists. To require auth for your app, be sure to follow the guide to setup Clerk middleware. https://clerk.com/docs/references/nextjs/clerk-middleware#clerk-middleware-next-js`));else{let e=d.join(t,`src/middleware/clerk.ts`);p.copySync(e,n)}p.copySync(d.join(t,`src/app/clerk-auth`),d.join(e,`src/app/auth`)),p.copySync(d.join(t,`src/components/clerk-auth`),d.join(e,`src/components/clerk-auth`));let r=d.join(e,`src/app/layout.tsx`),i=th(e);ah(i.addSourceFileAtPath(r)),rh(i.addSourceFileAtPath(d.join(e,`src/components/AppShell/slot-header-right.tsx`)),`@/components/clerk-auth/user-menu`),rh(i.addSourceFileAtPath(d.join(e,`src/components/AppShell/slot-header-mobile-content.tsx`)),`@/components/clerk-auth/user-menu-mobile`),oh(i.addSourceFileAtPathIfExists(d.join(e,`src/server/safe-action.ts`))),await nh({projectDir:e,project:i,envs:[{name:`NEXT_PUBLIC_CLERK_SIGN_IN_URL`,zodValue:`z.string()`,defaultValue:`/auth/signin`,type:`client`},{name:`NEXT_PUBLIC_CLERK_SIGN_UP_URL`,zodValue:`z.string()`,defaultValue:`/auth/signup`,type:`client`},{name:`CLERK_SECRET_KEY`,zodValue:`z.string().startsWith('sk_').min(1, {
|
|
60
|
-
message:
|
|
61
|
-
"No Clerk Secret Key found. Did you create your Clerk app and copy the environment variables to you .env file?",
|
|
62
|
-
})`,type:`server`},{name:`NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY`,zodValue:`z.string().startsWith('pk_').min(1, {
|
|
63
|
-
message:
|
|
64
|
-
"No Clerk Public Key found. Did you create your Clerk app and copy the environment variables to you .env file?",
|
|
65
|
-
})`,type:`client`}],envFileDescription:`Hosted auth with Clerk. Set up a new app at https://dashboard.clerk.com/apps/new to get these values.`}),await $m(i)};function ah(e){e.addImportDeclaration({namedImports:[{name:`ClerkAuthProvider`}],moduleSpecifier:`@/components/clerk-auth/clerk-provider`});let t=e.getFunction(e=>e.isDefaultExport())?.getBody()?.getFirstDescendantByKind(g.ReturnStatement)?.getDescendantsOfKind(g.JsxOpeningElement).find(e=>e.getTagNameNode().getText()===`MantineProvider`)?.getParentIfKind(g.JsxElement),n=t?.getJsxChildren().map(e=>e.getText()).filter(Boolean).join(`
|
|
66
|
-
`);t?.getChildSyntaxList()?.replaceWithText(`<ClerkAuthProvider>
|
|
67
|
-
${n}
|
|
68
|
-
</ClerkAuthProvider>`)}function oh(e){if(!e){console.log(c.yellow(`Failed to inject into safe-action-client. Did you move the safe-action.ts file?`));return}e.addImportDeclaration({namedImports:[{name:`auth`,alias:`getAuth`}],moduleSpecifier:`@clerk/nextjs/server`}),e.addStatements(e=>e.writeLine(`export const authedActionClient = actionClient.use(async ({ next, ctx }) => {
|
|
69
|
-
const auth = getAuth();
|
|
70
|
-
if (!auth.userId) {
|
|
71
|
-
throw new Error("Unauthorized");
|
|
72
|
-
}
|
|
73
|
-
return next({ ctx: { ...ctx, auth } });
|
|
74
|
-
});
|
|
75
|
-
|
|
76
|
-
`))}async function sh({dataApiKey:e,fmFile:t,server:n}){return uh((await de({adapter:new fe({auth:{apiKey:e},db:t,server:n}),layout:``}).layouts()).layouts)}function ch(e){return`isFolder`in e?(e.folderLayoutNames??[]).flatMap(ch):[e.name]}const lh=[`API_`,`API `,`dapi_`,`dapi`];function uh(e){return e.flatMap(ch).sort((e,t)=>{let n=lh.find(t=>e.startsWith(t)),r=lh.find(e=>t.startsWith(e));return n&&r?e.localeCompare(t):n?-1:r?1:e.localeCompare(t)})}const dh=_p(`type`,[N({type:Np(`clerk`)}),N({type:Np(`next-auth`)}),N({type:Np(`proofkit`).transform(()=>`fmaddon`)}),N({type:Np(`fmaddon`)}),N({type:Np(`better-auth`)}),N({type:Np(`none`)})]).default({type:`none`}),fh=N({database:j().default(`FM_DATABASE`),server:j().default(`FM_SERVER`),apiKey:j().default(`OTTO_API_KEY`)}),ph=_p(`type`,[N({type:Np(`fm`),name:j(),envNames:fh}),N({type:Np(`supabase`),name:j()})]),mh=[`browser`,`webviewer`],hh=_p(`ui`,[N({ui:Np(`mantine`),appType:P(mh).default(`browser`),auth:dh,envFile:j().optional(),dataSources:sp(ph).default([]),tanstackQuery:Rf().catch(!1),replacedMainPage:Rf().catch(!1),reactEmail:Rf().catch(!1),reactEmailServer:Rf().catch(!1),appliedUpgrades:sp(j()).default([]),registryUrl:Ud().optional(),registryTemplates:sp(j()).default([])}),N({ui:Np(`shadcn`),appType:P(mh).default(`browser`),envFile:j().optional(),dataSources:sp(ph).default([]),replacedMainPage:Rf().catch(!1),registryUrl:Ud().optional(),registryTemplates:sp(j()).default([])})]),gh=hh.parse({auth:{type:`none`},ui:`shadcn`,appType:`browser`,dataSources:[],replacedMainPage:!1,registryTemplates:[]});let _h;const V=()=>{if(_h)return _h;let e=d.join(R.projectDir,`proofkit.json`);if(!p.existsSync(e))throw Error(`ProofKit settings file not found at: ${e}`);let t=p.readJSONSync(e);typeof t==`object`&&t&&!(`ui`in t)&&(t={...t,ui:`mantine`});let n=hh.parse(t);return R.appType=n.appType,n};function vh(e){let t={...V(),...e};yh(hh.parse(t))}function yh(e){return p.writeJSONSync(d.join(R.projectDir,`proofkit.json`),e,{spaces:2}),_h=e,_h}function bh(e=`.env`){let t=V(),n=d.join(R.projectDir,e);if(p.existsSync(n))return yh({...t,envFile:e}),e;if(t.envFile){let{envFile:e,...n}=t;yh(n)}}const xh=({commandName:e})=>{p.existsSync(d.join(process.cwd(),`proofkit.json`))||(console.log(c.yellow(`The "${e}" command requires an existing ProofKit project.
|
|
77
|
-
Please run " ${Ve} init" first, or try this command again when inside a ProofKit project.`)),process.exit(1));try{return V()}catch(e){console.log(c.red(`Error parsing ProofKit settings file:`)),e instanceof gd?console.log(L.prettifyError(e)):console.log(e),process.exit(1)}};var Sh=class extends Error{};function H(e){if(i(e))throw t(),new Sh;return e}function Ch(e){return!(`type`in e)||e.type===void 0?{...e,type:`fmdapi`}:e}function wh(e){return Array.isArray(e)?e.map(Ch):Ch(e)}async function Th(e){if(!p.existsSync(e))return null;try{let t=ge(await p.readFile(e,`utf8`));return t.config&&=wh(t.config),t}catch(t){return console.error(`Error reading or parsing JSONC config at ${e}:`,t),{$schema:`https://proofkit.dev/typegen-config-schema.json`,config:[]}}}async function Eh(e,t){if(p.existsSync(e)){let n=await p.readFile(e,`utf8`),r=me(n,he(n,[`config`],t.config,{formattingOptions:{tabSize:2,insertSpaces:!0,eol:`
|
|
78
|
-
`}}));await p.writeFile(e,r,`utf8`)}else await p.writeJson(e,t,{spaces:2})}async function Dh({projectDir:e=process.cwd(),schemas:t,runCodegen:n=!0,dataSourceName:r}){let i=d.join(e,`proofkit-typegen.config.jsonc`),a=await Th(i);a||={$schema:`https://proofkit.dev/typegen-config-schema.json`,config:[]};let o=a.config,s;Array.isArray(o)?s=o:(s=[o],a.config=s);let c=t.map(e=>({layoutName:e.layoutName,schemaName:e.schemaName,valueLists:e.valueLists,generateClient:e.generateClient,strictNumbers:e.strictNumbers})),l=s.find(e=>e.type===`fmdapi`&&(e.path?.endsWith(r)||e.path?.endsWith(`${r}/`)||e.path===r));l?l.layouts=l.layouts||[]:(l={type:`fmdapi`,layouts:[],path:`./src/config/schemas/${r}`,envNames:void 0},s.push(l)),l.layouts.push(...c),await Eh(i,a),n&&await kh()}async function Oh({config:e,projectDir:t,runCodegen:n=!0}){let r=d.join(t,`proofkit-typegen.config.jsonc`),i=await Th(r),a=Array.isArray(e)?e:[e];i?Array.isArray(i.config)?i.config.push(...a):i.config=[i.config,...a]:i={$schema:`https://proofkit.dev/typegen-config-schema.json`,config:a},await Eh(r,i),n&&await kh()}async function kh(){let e=R.projectDir,t=V();if(t.dataSources.length===0){console.log(`no data sources found, skipping typegen`);return}if(t.dataSources.some(e=>e.type===`fm`)){let t=await Th(d.join(e,`proofkit-typegen.config.jsonc`));if(!t)throw Error(`proofkit-typegen.config.jsonc not found`);ue({path:d.join(e,`.env`)}),await pe(t.config,{cwd:e})}}function Ah({projectDir:e=process.cwd(),dataSourceName:t}){let n=d.join(e,`proofkit-typegen.config.jsonc`);if(!p.existsSync(n))return`Client`;try{let e=wh(ge(p.readFileSync(n,`utf8`)).config);return(Array.isArray(e)?e:[e]).find(e=>e.type===`fmdapi`&&(e.path?.endsWith(t)||e.path?.endsWith(`${t}/`)||e.path===t))?.clientSuffix??`Client`}catch(e){return console.error(`Error reading or parsing JSONC config for getClientSuffix: ${n}`,e),`Client`}}function jh({projectDir:e=process.cwd(),dataSourceName:t}){let n=d.join(e,`proofkit-typegen.config.jsonc`);if(!p.existsSync(n))return[];try{let e=wh(ge(p.readFileSync(n,`utf8`)).config),r=(Array.isArray(e)?e:[e]).find(e=>e.type===`fmdapi`&&(e.path?.endsWith(t)||e.path?.endsWith(`${t}/`)||e.path===t));return r?.layouts?r.layouts.map(e=>({layout:e.layoutName,schemaName:e.schemaName})):[]}catch(e){return console.error(`Error reading or parsing JSONC config for getExistingSchemas: ${n}`,e),[]}}async function Mh({dataSourceName:e,envNames:t}){let n=R.projectDir,r=d.join(n,`proofkit-typegen.config.jsonc`),i=await Th(r),a={type:`fmdapi`,layouts:[],path:`./src/config/schemas/${e}`,envNames:void 0,clearOldFiles:!0,clientSuffix:`Layout`};if(t&&(a.envNames={server:t.server,db:t.database,auth:{apiKey:t.apiKey}}),R.appType===`webviewer`&&(a.webviewerScriptName=`ExecuteDataApi`),i){let e;Array.isArray(i.config)?e=i.config:(e=[i.config],i.config=e);let t=e.findIndex(e=>e.type===`fmdapi`&&e.path===a.path);if(t===-1)e.push(a);else{let n=e[t];e[t]={...n,...a,layouts:a.layouts.length>0?a.layouts:n.layouts||[]}}}else i={$schema:`https://proofkit.dev/typegen-config-schema.json`,config:[a]};await Eh(r,i)}function Nh({schemaName:e,dataSourceName:t}){let n=R.projectDir,r=th(n),i=d.join(n,`src/config/schemas/${t}/generated/${e}.ts`),a=d.join(n,`src/config/schemas/${t}/${e}.ts`),o=i;if(!p.existsSync(i))if(p.existsSync(a))o=a;else return[];let s=r.addSourceFileAtPath(o),c=s.getVariableDeclaration(`Z${e}`);return c?(c.getInitializer()?.getFirstDescendantByKind(g.ObjectLiteralExpression)?.getProperties())?.map(e=>e.asKind(g.PropertyAssignment)?.getName()?.replace(/"/g,``)).filter(Boolean)??[]:(s.getTypeAlias(`T${e}`)?.getFirstDescendantByKind(g.TypeLiteral)?.getProperties())?.map(e=>e.asKind(g.PropertySignature)?.getName()?.replace(/"/g,``)).filter(Boolean)??[]}async function Ph({dataSourceName:e}){let t=R.projectDir,n=d.join(t,`proofkit-typegen.config.jsonc`),r=await Th(n);if(!r)return;let i=`./src/config/schemas/${e}`;if(Array.isArray(r.config))r.config=r.config.filter(e=>!(e.type===`fmdapi`&&e.path===i));else{let e=r.config;e.type===`fmdapi`&&e.path===i&&(r.config=[])}await Eh(n,r)}async function Fh({projectDir:e=R.projectDir,schemaName:t,dataSourceName:n,runCodegen:r=!0}){let i=d.join(e,`proofkit-typegen.config.jsonc`),a=await Th(i);if(!a)throw Error(`proofkit-typegen.config.jsonc not found, cannot remove layout.`);let o=!1,s=`./src/config/schemas/${n}`,c;Array.isArray(a.config)?c=a.config:(c=[a.config],a.config=c);let l=c.find(e=>e.type===`fmdapi`&&e.path===s);if(l?.layouts){let e=l.layouts.length;l.layouts=l.layouts.filter(e=>e.schemaName!==t),l.layouts.length<e&&(o=!0)}o&&await Eh(i,a);let u=d.join(e,`src`,`config`,`schemas`,n,`${t}.ts`);p.existsSync(u)&&p.removeSync(u),r&&o&&await kh()}async function Ih(e){let t=R.projectDir,n=V();if(n.ui===`shadcn`||n.tanstackQuery)return!1;B({projectDir:t,dependencies:[`@tanstack/react-query`],devMode:!1}),B({projectDir:t,dependencies:[`@tanstack/react-query-devtools`],devMode:!0});let r=d.join(_,`template`,`extras`);R.appType===`browser`?(p.copySync(d.join(r,`config`,`get-query-client.ts`),d.join(t,`src/config/get-query-client.ts`)),p.copySync(d.join(r,`config`,`query-provider.tsx`),d.join(t,`src/config/query-provider.tsx`))):R.appType===`webviewer`&&p.copySync(d.join(r,`config`,`query-provider-vite.tsx`),d.join(t,`src/config/query-provider.tsx`));let i=e?.project??th(t),a=i.addSourceFileAtPath(d.join(t,R.appType===`browser`?`src/app/layout.tsx`:`src/main.tsx`));if(a.addImportDeclaration({moduleSpecifier:`@/config/query-provider`,defaultImport:`QueryProvider`}),R.appType===`browser`){let e=a.getFunction(e=>e.isDefaultExport())?.getBody()?.getFirstDescendantByKind(g.ReturnStatement)?.getDescendantsOfKind(g.JsxOpeningElement).find(e=>e.getTagNameNode().getText()===`body`)?.getParentIfKind(g.JsxElement),t=e?.getJsxChildren().map(e=>e.getText()).filter(Boolean).join(`
|
|
79
|
-
`);e?.getChildSyntaxList()?.replaceWithText(`<QueryProvider>
|
|
80
|
-
${t}
|
|
81
|
-
</QueryProvider>`)}else if(R.appType===`webviewer`){let e=a.getDescendantsOfKind(g.JsxElement).find(e=>e.getOpeningElement().getTagNameNode().getText()===`MantineProvider`);e?.replaceWithText(`<QueryProvider>
|
|
82
|
-
${e.getText()}
|
|
83
|
-
</QueryProvider>`)}return e?.project||await $m(i),yh({...n,tanstackQuery:!0}),!0}async function Lh({addonName:e}){let t=e===`auth`?`FM Auth Add-on`:`ProofKit WebViewer`,n=null;if(process.platform===`win32`?n=d.join(_e.homedir(),`AppData`,`Local`,`FileMaker`,`Extensions`,`AddonModules`):process.platform===`darwin`&&(n=d.join(_e.homedir(),`Library`,`Application Support`,`FileMaker`,`Extensions`,`AddonModules`)),!n){z.warn(`Could not install the ${t} addon. You will need to do this manually.`);return}let r=e===`auth`?`ProofKitAuth`:`ProofKitWV`;await p.copy(d.join(_,`template/fm-addon/${r}`),d.join(n,r),{overwrite:!0}),console.log(``),console.log(c.bgYellow(` ACTION REQUIRED: `)),e===`auth`?console.log(`${c.yellowBright(`You must install the FM Auth addon in your FileMaker file to continue.`)} ${c.dim(`(Learn more: https://proofkit.dev/auth/fm-addon)`)}`):console.log(`${c.yellowBright(`You must install the ProofKit WebViewer addon in your FileMaker file to continue.`)} ${c.dim(`(Learn more: https://proofkit.dev/webviewer)`)}`),[`Restart FileMaker Pro (if it's currently running)`,`Open your FileMaker file, go to layout mode, and install the ${t} addon to the file`,`Come back here to continue the installation`].forEach((e,t)=>{console.log(`${t+1}. ${e}`)})}async function Rh({...e}){let t=R.projectDir,n=V();if(n.ui===`shadcn`||n.reactEmail)return!1;p.ensureDirSync(d.join(t,`src/emails`)),B({dependencies:[`@react-email/components`,`@react-email/render`],devMode:!1,projectDir:t}),B({dependencies:[`react-email`,`@react-email/preview-server`],devMode:!0,projectDir:t});let r=p.readJSONSync(d.join(t,`package.json`));r.scripts||={},r.scripts[`email:preview`]=`email dev --port 3010 --dir=src/emails`,p.writeJSONSync(d.join(t,`package.json`),r,{spaces:2});let i=e.project??th(t);if(e.installServerFiles){let e=R.emailProvider;e===`plunk`?await zh({project:i}):e===`resend`?await Bh({project:i}):await p.copy(d.join(_,`template/extras/emailProviders/none/email.tsx`),d.join(t,`src/server/auth/email.tsx`))}return await p.copy(d.join(_,`template/extras/emailTemplates/generic.tsx`),d.join(t,`src/emails/generic.tsx`)),e.installServerFiles&&await p.copy(d.join(_,`template/extras/emailTemplates/auth-code.tsx`),d.join(t,`src/emails/auth-code.tsx`)),e.project||await $m(i),yh({...n,reactEmail:!0,reactEmailServer:!!e.installServerFiles||n.reactEmailServer}),e.noInstall||await Ym({projectDir:t}),!0}async function zh({project:t}){let n=R.projectDir;B({dependencies:[`@plunk/node`],devMode:!1,projectDir:n});let r;r=typeof R.apiKey==`string`?R.apiKey:R.ci?``:H(await e.text({message:`Enter your Plunk API key\n${c.dim(`Enter your Secret API Key from https://app.useplunk.com/settings/api`)}`,placeholder:`...or leave blank to do this later`})),r||z.warn(`You will need to add your Plunk API key to the .env file manually for your app to run.`),console.log(``),await nh({projectDir:n,project:t,envs:[{name:`PLUNK_API_KEY`,zodValue:`z.string().startsWith("sk_")`,type:`server`,defaultValue:r}]}),await p.copy(d.join(_,`template/extras/emailProviders/plunk/service.ts`),d.join(n,`src/server/services/plunk.ts`)),await p.copy(d.join(_,`template/extras/emailProviders/plunk/email.tsx`),d.join(n,`src/server/auth/email.tsx`))}async function Bh({project:t}){let n=R.projectDir;B({dependencies:[`resend`],devMode:!1,projectDir:n});let r;r=typeof R.apiKey==`string`?R.apiKey:R.ci?``:H(await e.text({message:`Enter your Resend API key\n${c.dim(`Only "Sending Access" permission required: https://resend.com/api-keys`)}`,placeholder:`...or leave blank to do this later`})),r||z.warn(`You will need to add your Resend API key to the .env file manually for your app to run.`),console.log(``),await nh({projectDir:n,project:t,envs:[{name:`RESEND_API_KEY`,zodValue:`z.string().startsWith("re_")`,type:`server`,defaultValue:r}]}),await p.copy(d.join(_,`template/extras/emailProviders/resend/service.ts`),d.join(n,`src/server/services/resend.ts`)),await p.copy(d.join(_,`template/extras/emailProviders/resend/email.tsx`),d.join(n,`src/server/auth/email.tsx`))}const Vh=async()=>{let t=re(`Installing files for auth...`).start(),n=R.projectDir;B({projectDir:n,dependencies:[`@node-rs/argon2`,`@oslojs/binary`,`@oslojs/crypto`,`@oslojs/encoding`,`js-cookie`],devMode:!1}),B({projectDir:n,dependencies:[`@types/js-cookie`],devMode:!0}),await p.copy(d.join(_,`template/extras/fmaddon-auth`),d.join(n,`src`));let r=th(n);await Ih({project:r}),rh(r.addSourceFileAtPath(d.join(n,`src/components/AppShell/slot-header-right.tsx`)),`@/components/auth/user-menu`),Hh(r.addSourceFileAtPathIfExists(d.join(n,`src/server/safe-action.ts`))),await Oh({config:{type:`fmdapi`,envNames:void 0,clientSuffix:`Layout`,layouts:[{layoutName:`proofkit_auth_sessions`,schemaName:`sessions`,strictNumbers:!0},{layoutName:`proofkit_auth_users`,schemaName:`users`,strictNumbers:!0},{layoutName:`proofkit_auth_email_verification`,schemaName:`emailVerification`,strictNumbers:!0},{layoutName:`proofkit_auth_password_reset`,schemaName:`passwordReset`,strictNumbers:!0}],clearOldFiles:!0,validator:!1,path:`./src/server/auth/db`},projectDir:n,runCodegen:!1}),await Rh({project:r,installServerFiles:!0}),Uh(r.addSourceFileAtPath(d.join(n,`src/app/(main)/layout.tsx`))),await $m(r);let i=!1;for(;!i;)if(i=await Wh(n,t),i)t.text=`Successfully detected all required layouts in your FileMaker file.`;else if(!H(await e.confirm({message:`I have followed the above instructions, continue installing`,initialValue:!0,active:`Continue`,inactive:`Abort`})))throw new Sh;await kh(),t.succeed(`Auth installed successfully`)};function Hh(e){if(!e){console.log(c.yellow(`Failed to inject into safe-action-client. Did you move the safe-action.ts file?`));return}e.addImportDeclaration({namedImports:[{name:`getCurrentSession`}],moduleSpecifier:`./auth/utils/session`}),e.addStatements(e=>e.writeLine(`export const authedActionClient = actionClient.use(async ({ next, ctx }) => {
|
|
84
|
-
const { session, user } = await getCurrentSession();
|
|
85
|
-
if (session === null) {
|
|
86
|
-
throw new Error("Unauthorized");
|
|
87
|
-
}
|
|
88
|
-
|
|
89
|
-
return next({ ctx: { ...ctx, session, user } });
|
|
90
|
-
});
|
|
91
|
-
`))}function Uh(e){e.addImportDeclaration({defaultImport:`Protect`,moduleSpecifier:`@/components/auth/protect`});let t=e.getFunction(e=>e.isDefaultExport())?.getBody()?.getFirstDescendantByKind(g.ReturnStatement)?.getFirstDescendantByKind(g.JsxElement);t?.replaceWithText(`<Protect>
|
|
92
|
-
${t?.getText()}
|
|
93
|
-
</Protect>`)}async function Wh(e,t){let n=V(),r=n.dataSources.filter(e=>e.type===`fm`).find(e=>e.name===`filemaker`);if(!r)return!1;n.envFile&&le.config({path:d.join(e,n.envFile)});let i=process.env[r.envNames.apiKey],a=process.env[r.envNames.database],o=process.env[r.envNames.server];if(!(i&&a&&o))return!1;let s=await sh({dataApiKey:i,fmFile:a,server:o});return[`proofkit_auth_sessions`,`proofkit_auth_users`,`proofkit_auth_email_verification`,`proofkit_auth_password_reset`].every(e=>s.some(t=>t===e))?!0:(t.warn(`Required layouts not found`),await Lh({addonName:`auth`}),!1)}async function Gh({options:e,noInstall:t=!1,projectDir:n=process.cwd()}){let r=V();if(r.ui===`shadcn`)throw Error(`Shadcn projects should add auth using the template registry`);if(r.auth.type!==`none`)throw Error(`Auth already exists`);if(!r.dataSources.some(e=>e.type===`fm`)&&e.type===`fmaddon`)throw Error(`A FileMaker data source is required to use the FM Add-on Auth`);if(!r.dataSources.some(e=>e.type===`fm`)&&e.type===`better-auth`)throw Error(`A FileMaker data source is required to use the Better-Auth`);e.type===`clerk`?await Kh({projectDir:n}):e.type===`fmaddon`&&await qh(),await Jh(),t||await Ym({projectDir:n})}async function Kh({projectDir:e=process.cwd()}){await ih({projectDir:e}),vh({auth:{type:`clerk`}})}async function qh(){await Vh(),vh({auth:{type:`fmaddon`}})}async function Jh(){let e=R.projectDir,t=await ne(`src/app/(main)/**/actions.ts`,{cwd:e});for(let n of t){let t=d.join(e,n);te(t,ee(t,`utf-8`).replace(/actionClient/g,`authedActionClient`))}}const Yh=new u(`--ci`,`Run in CI mode`).default(!1),Xh=new u(`--debug`,`Run in debug mode`).default(!1),Zh=e=>{let{packages:t}=e;z.info(`Adding boilerplate...`);for(let[n,r]of Object.entries(t))r.inUse&&r.installer(e);z.info(``)};async function Qh(){let e=R.projectDir,t=d.join(_,`template/extras`),n=d.join(t,`_cursor/rules`),r=d.join(e,`.cursor/rules`);if(!p.existsSync(n))return;let i=Km();await p.ensureDir(r),await p.copy(n,r);let a=d.join(t,`_cursor/conditional-rules`),o={pnpm:`pnpm.mdc`,npm:`npm.mdc`,yarn:`yarn.mdc`}[i];if(o){let e=d.join(a,o),t=d.join(r,`package-manager.mdc`);p.existsSync(e)&&await p.copy(e,t,{overwrite:!0})}}const $h=async({projectName:t,pkgManager:n,noInstall:r})=>{let i=R.projectDir,a=d.join(_,R.appType===`browser`?`template/${R.ui===`mantine`?`nextjs-mantine`:`nextjs-shadcn`}`:`template/vite-wv`);r?z.info(``):z.info(`\nUsing: ${c.cyan.bold(n)}\n`);let o=re(`Scaffolding in: ${i}...\n`).start();if(p.existsSync(i))if(p.readdirSync(i).length===0)t!==`.`&&o.info(`${c.cyan.bold(t)} exists but is empty, continuing...\n`);else{o.stopAndPersist();let n=await e.select({message:`${c.redBright.bold(`Warning:`)} ${c.cyan.bold(t)} already exists and isn't empty. How would you like to proceed?`,options:[{label:`Abort installation (recommended)`,value:`abort`},{label:`Clear the directory and continue installation`,value:`clear`},{label:`Continue installation and overwrite conflicting files`,value:`overwrite`}],initialValue:`abort`});n===`abort`&&(o.fail(`Aborting installation...`),process.exit(1));let r=n===`clear`?`clear the directory`:`overwrite conflicting files`;await e.confirm({message:`Are you sure you want to ${r}?`,initialValue:!1})||(o.fail(`Aborting installation...`),process.exit(1)),n===`clear`&&(o.info(`Emptying ${c.cyan.bold(t)} and creating new ProofKit app..\n`),p.emptyDirSync(i))}o.start(),p.copySync(a,i),Qh(),p.renameSync(d.join(i,`_gitignore`),d.join(i,`.gitignore`));let s=t===`.`?`App`:c.cyan.bold(t);o.succeed(`${s} ${c.green(`scaffolded successfully!`)}\n`)};function eg(e,t,n){let r=h.readdirSync(e);for(let i of r){let r=d.join(e,i);if(h.statSync(r).isDirectory())eg(r,t,n);else{let e=h.readFileSync(r,`utf8`).replace(new RegExp(t,`g`),n);h.writeFileSync(r,e,`utf8`)}}}const tg=async({projectName:e,scopedAppName:t,packages:n,noInstall:r})=>{let i=Km();R.projectDir=d.resolve(process.cwd(),e),await $h({projectName:e,pkgManager:i,scopedAppName:t,noInstall:r}),B({dependencies:[`@proofkit/cli`,`@types/node`],devMode:!0});let a=[`@radix-ui/react-slot`,`@tailwindcss/postcss`,`class-variance-authority`,`clsx`,`lucide-react`,`tailwind-merge`,`tailwindcss`,`tw-animate-css`,`next-themes`],o=[],s=[`@mantine/core`,`@mantine/dates`,`@mantine/hooks`,`@mantine/modals`,`@mantine/notifications`,`mantine-react-table`],c=[`postcss`,`postcss-preset-mantine`,`postcss-simple-vars`];if(R.ui===`mantine`)B({dependencies:s,devMode:!1}),B({dependencies:c,devMode:!0});else if(R.ui===`shadcn`)B({dependencies:a,devMode:!1}),B({dependencies:o,devMode:!0}),B({dependencies:[`zod`],devMode:!1});else throw Error(`Unsupported UI library: ${R.ui}`);Zh({projectName:e,scopedAppName:t,pkgManager:i,packages:n,noInstall:r});let l;return l=i===`pnpm`?`pnpm`:i===`bun`?`bun`:i===`yarn`?`yarn`:`npm run`,eg(R.projectDir,`__PNPM_COMMAND__`,l),R.projectDir},ng=e=>{try{return ce(`git --version`,{cwd:e}),!0}catch{return!1}},rg=e=>p.existsSync(d.join(e,`.git`)),ig=async e=>{try{return await f(`git`,[`rev-parse`,`--is-inside-work-tree`],{cwd:e,stdout:`ignore`}),!0}catch{return!1}},ag=()=>{let e=ce(`git --version`).toString().trim().split(` `)[2],t=e?.split(`.`)[0],n=e?.split(`.`)[1];return{major:Number(t),minor:Number(n)}},og=()=>ce(`git config --global init.defaultBranch || echo main`).toString().trim(),sg=async t=>{if(z.info(`Initializing Git...`),!ng(t)){z.warn(`Git is not installed. Skipping Git initialization.`);return}let n=re(`Creating a new git repo...
|
|
94
|
-
`).start(),r=rg(t),i=await ig(t),a=d.parse(t).name;if(i&&r){if(n.stop(),!await e.confirm({message:`${c.redBright.bold(`Warning:`)} Git is already initialized in "${a}". Initializing a new git repository would delete the previous history. Would you like to continue anyways?`,initialValue:!1})){n.info(`Skipping Git initialization.`);return}p.removeSync(d.join(t,`.git`))}else if(i&&!r&&(n.stop(),!await e.confirm({message:`${c.redBright.bold(`Warning:`)} "${a}" is already in a git worktree. Would you still like to initialize a new git repository in this directory?`,initialValue:!1}))){n.info(`Skipping Git initialization.`);return}try{let e=og(),{major:r,minor:i}=ag();r<2||r===2&&i<28?(await f(`git`,[`init`],{cwd:t}),await f(`git`,[`symbolic-ref`,`HEAD`,`refs/heads/${e}`],{cwd:t})):await f(`git`,[`init`,`--initial-branch=${e}`],{cwd:t}),await f(`git`,[`add`,`.`],{cwd:t}),await f(`git`,[`commit`,`-m`,`Initial commit`],{cwd:t}),n.succeed(`${c.green(`Successfully initialized and staged`)} ${c.green.bold(`git`)}\n`)}catch{n.fail(`${c.bold.red(`Failed:`)} could not initialize git. Update git to the latest version!\n`)}},cg=({projectName:e=`my-proofkit-app`,noInstall:t})=>{let n=Km();z.info(c.bold(`Next steps:`)),z.dim(`
|
|
95
|
-
Navigate to the project directory:`),e!==`.`&&z.info(` cd ${e}`),z.dim(`(or open in your code editor, and run the rest of these commands from there)`),t&&(z.dim(`
|
|
96
|
-
Install dependencies:`),n===`yarn`?z.info(` ${n}`):z.info(` ${n} install`)),z.dim(`
|
|
97
|
-
Start the dev server to view your app in a browser:`),[`npm`,`bun`].includes(n)?z.info(` ${n} run dev`):z.info(` ${n} dev`),z.dim(`
|
|
98
|
-
Or, run the ProofKit command again to add more to your project:`),[`npm`,`bun`].includes(n)?z.info(` ${n} run proofkit`):z.info(` ${n} proofkit`),z.dim(`(Must be inside the project directory)`)},lg=/[^/]$/,ug=(e,t)=>{eg(e,`~/`,t.replace(/\*/g,``).replace(lg,`$&/`))},dg=()=>({envVariables:{inUse:!0,installer:Zm}});async function fg(){let e=V(),t=e.dataSources.filter(e=>e.type===`fm`).find(e=>e.name===`filemaker`);if(!t)return!1;e.envFile&&le.config({path:d.join(R.projectDir,e.envFile)});let n=process.env[t.envNames.apiKey],r=process.env[t.envNames.database],i=process.env[t.envNames.server];if(!(n&&r&&i))return!1;let a=await sh({dataApiKey:n,fmFile:r,server:i});return[`ProofKitWV`].every(e=>a.some(t=>t===e))?(console.log(c.green(`Successfully detected all required layouts for ProofKit WebViewer in your FileMaker file.`)),!0):(await Lh({addonName:`wv`}),!1)}async function pg(){let t=!1;for(;!t;)if(t=await fg(),!t&&!H(await e.confirm({message:`I have followed the above instructions, continue installing`,initialValue:!0,active:`Continue`,inactive:`Abort`})))throw new Sh}const mg=e=>e.length>1&&e.endsWith(`/`)?e.slice(0,-1):e,hg=e=>{let t=mg(e).split(`/`),n=t.at(-1)??``;if(n===`.`){let e=d.resolve(process.cwd());n=d.basename(e)}let r=t.findIndex(e=>e.startsWith(`@`));t.findIndex(e=>e.startsWith(`@`))!==-1&&(n=t.slice(r).join(`/`));let i=t.filter(e=>!e.startsWith(`@`)).join(`/`);return[n,i]},gg=/^(?:@[a-z0-9-*~][a-z0-9-*._~]*\/)?[a-z0-9-~][a-z0-9-._~]*$/,_g=e=>{let t=mg(e),n=t.split(`/`),r=n.findIndex(e=>e.startsWith(`@`)),i=n.at(-1);if(n.findIndex(e=>e.startsWith(`@`))!==-1&&(i=n.slice(r).join(`/`)),!(t===`.`||gg.test(i??``)))return`Name must consist of only lowercase alphanumeric characters, '-', and '_'`};async function vg({url:t}){let n=we.generate({length:18,charset:`alphanumeric`}),r=new URL(`/otto/wizard/${n}`,t.origin),i=r.toString();e.log.info(`${c.bold(`If the browser window didn't open automatically, please open the following link to login into your OttoFMS server:`)}\n\n${c.cyan(i)}`),Ce(r.toString()).catch(()=>{});let a=e.spinner();a.start(`Waiting for you to log in using the link above`);let o=await new Promise(e=>{let r=setInterval(()=>{xe.get(`${t.origin}/otto/api/cli/checkHash/${n}`,{headers:{"Accept-Encoding":`deflate`}}).then(a=>{e(a.data.response),clearTimeout(i),clearInterval(r),xe.delete(`${t.origin}/otto/api/cli/checkHash/${n}`,{headers:{"Accept-Encoding":`deflate`}}).catch(()=>{})}).catch(()=>{})},500),i=setTimeout(()=>{clearInterval(r),a.stop(`Login timed out. No worries - it happens to the best of us.`)},18e4)});return a.stop(`Login complete.`),o}async function yg({url:e,token:t}){return(await xe.get(`${e.origin}/otto/fmi/admin/api/v2/databases`,{headers:{Authorization:`Bearer ${t}`}})).data.response.databases}async function bg({url:e,token:t}){return(await xe.get(`${e.origin}/otto/api/api-key`,{headers:{Authorization:`Bearer ${t}`}})).data.response[`api-keys`]}async function xg({url:t,filename:n}){for(e.log.info(`${c.cyan(`Creating a Data API Key`)}\nEnter FileMaker credentials for ${c.bold(n)}.\n${c.dim(`The account must have the fmrest extended privilege enabled.`)}`);;){let r=H(await e.text({message:`Enter the account name for ${c.bold(n)}`})),i=H(await e.password({message:`Enter the password for ${c.bold(r)}`}));try{return await Sg({url:t,filename:n,username:r,password:i})}catch(n){if(n instanceof Se){let r=n.response?.data&&`messages`in n.response.data?n.response.data.messages?.[0]?.text:void 0;e.log.error(`${c.red(`Error creating Data API key:`)} ${r??`Error code ${n.response?.status}`}
|
|
99
|
-
${c.dim(n.response?.status===400&&`Common reasons this might happen:
|
|
100
|
-
- The provided credentials are incorrect.
|
|
101
|
-
- The account does not have the fmrest extended privilege enabled.
|
|
102
|
-
|
|
103
|
-
You may also want to try to create an API directly in the OttoFMS dashboard:
|
|
104
|
-
${t.origin}/otto/app/api-keys`)}
|
|
105
|
-
`)}else e.log.error(`${c.red(`Error creating Data API key:`)} Unknown error`);if(!H(await e.confirm({message:`Do you want to try and enter credentials again?`,active:`Yes, try again`,inactive:`No, abort`})))throw Error(`User cancelled`)}}}async function Sg({url:e,filename:t,username:n,password:r}){return{apiKey:(await xe.post(`${e.origin}/otto/api/api-key/create-only`,{database:t,label:`For FM Web App`,user:n,pass:r})).data.response.key}}async function Cg({payload:e,url:t,token:n}){let r=N({response:N({started:Rf(),batchId:Af(),subDeploymentIds:sp(Af())}),messages:sp(N({code:Af(),text:j()}))}),i=await xe.post(`${t.origin}/otto/api/deployment`,e,{headers:{Authorization:`Bearer ${n}`}}).catch(e=>{throw console.error(e.response.data),e});return r.parse(i.data)}async function wg({url:e,token:t,deploymentId:n}){let r=N({response:N({id:Af(),status:P([`queued`,`running`,`scheduled`,`complete`,`aborted`,`unknown`]),running:Bm(),created_at:j(),started_at:j(),updated_at:j()}),messages:sp(N({code:Af(),text:j()}))}),i=await xe.get(`${e.origin}/otto/api/deployment/${n}`,{headers:{Authorization:`Bearer ${t}`}});return r.parse(i.data)}const Tg=()=>{};function Eg(e,t,n){return new Proxy(Tg,{get(n,r){if(!(typeof r!=`string`||r===`then`))return Eg(e,[...t,r])},apply(n,r,i){let a=t[t.length-1],o={args:i,path:t};return a===`call`?o={args:i.length>=2?[i[1]]:[],path:t.slice(0,-1)}:a===`apply`&&(o={args:i.length>=2?i[1]:[],path:t.slice(0,-1)}),e(o)}})}const Dg=e=>Eg(e,[]);function Og(e,...t){let n=Object.assign(Object.create(null),e);for(let e of t)for(let t in e){if(t in n&&n[t]!==e[t])throw Error(`Duplicate key ${t}`);n[t]=e[t]}return n}function kg(e){return!!e&&!Array.isArray(e)&&typeof e==`object`}function Ag(e){return typeof e==`function`}function jg(e){return Object.assign(Object.create(null),e)}var Mg=class extends Error{};function Ng(e){if(e instanceof Error)return e;let t=typeof e;if(!(t===`undefined`||t===`function`||e===null)){if(t!==`object`)return Error(String(e));if(kg(e)){let t=new Mg;for(let n in e)t[n]=e[n];return t}}}function Pg(e){if(e instanceof Fg||e instanceof Error&&e.name===`TRPCError`)return e;let t=new Fg({code:`INTERNAL_SERVER_ERROR`,cause:e});return e instanceof Error&&e.stack&&(t.stack=e.stack),t}var Fg=class extends Error{constructor(e){let t=Ng(e.cause),n=e.message??t?.message??e.code;super(n,{cause:t}),this.code=e.code,this.name=`TRPCError`,this.cause||=t}};function Ig(e){return`input`in e?e:{input:e,output:e}}const Lg={input:{serialize:e=>e,deserialize:e=>e},output:{serialize:e=>e,deserialize:e=>e}},Rg=({shape:e})=>e,zg=`middlewareMarker`;function Bg(){function e(t){return{_middlewares:t,unstable_pipe(n){let r=`_middlewares`in n?n._middlewares:[n];return e([...t,...r])}}}function t(t){return e([t])}return t}function Vg(e){let t=async function(t){let n,r=await t.getRawInput();try{n=await e(r)}catch(e){throw new Fg({code:`BAD_REQUEST`,cause:e})}let i=kg(t.input)&&kg(n)?{...t.input,...n}:n;return t.next({input:i})};return t._type=`input`,t}function Hg(e){let t=async function({next:t}){let n=await t();if(!n.ok)return n;try{let t=await e(n.data);return{...n,data:t}}catch(e){throw new Fg({message:`Output validation failed`,code:`INTERNAL_SERVER_ERROR`,cause:e})}};return t._type=`output`,t}function Ug(e){let t=e;if(typeof t==`function`)return t;if(typeof t.parseAsync==`function`)return t.parseAsync.bind(t);if(typeof t.parse==`function`)return t.parse.bind(t);if(typeof t.validateSync==`function`)return t.validateSync.bind(t);if(typeof t.create==`function`)return t.create.bind(t);if(typeof t.assert==`function`)return e=>(t.assert(e),e);throw Error(`Could not find a validator fn`)}function Wg(e,t){let{middlewares:n=[],inputs:r,meta:i,...a}=t;return Gg({...Og(e,a),inputs:[...e.inputs,...r??[]],middlewares:[...e.middlewares,...n],meta:e.meta&&i?{...e.meta,...i}:i??e.meta})}function Gg(e={}){let t={procedure:!0,inputs:[],middlewares:[],...e};return{_def:t,input(e){let n=Ug(e);return Wg(t,{inputs:[e],middlewares:[Vg(n)]})},output(e){return Wg(t,{output:e,middlewares:[Hg(Ug(e))]})},meta(e){return Wg(t,{meta:e})},use(e){return Wg(t,{middlewares:`_middlewares`in e?e._middlewares:[e]})},unstable_concat(e){return Wg(t,e._def)},query(e){return Kg({...t,type:`query`},e)},mutation(e){return Kg({...t,type:`mutation`},e)},subscription(e){return Kg({...t,type:`subscription`},e)},experimental_caller(e){return Wg(t,{caller:e})}}}function Kg(e,t){let n=Wg(e,{resolver:t,middlewares:[async function(e){return{marker:zg,ok:!0,data:await t(e),ctx:e.ctx}}]}),r={...n._def,type:e.type,experimental_caller:!!n._def.caller,meta:n._def.meta,$types:null},i=qg(n._def),a=n._def.caller;if(!a)return i;let o=async(...e)=>await a({args:e,invoke:i,_def:r});return o._def=r,o}function qg(e){async function t(t){if(!t||!(`getRawInput`in t))throw Error(`This is a client-only function.
|
|
106
|
-
If you want to call this function on the server, see https://trpc.io/docs/v11/server/server-side-calls`);async function n(r={index:0,ctx:t.ctx}){try{let i=e.middlewares[r.index];return await i({ctx:r.ctx,type:t.type,path:t.path,getRawInput:r.getRawInput??t.getRawInput,meta:e.meta,input:r.input,next(e){let t=e;return n({index:r.index+1,ctx:t&&`ctx`in t?{...r.ctx,...t.ctx}:r.ctx,input:t&&`input`in t?t.input:r.input,getRawInput:t&&`getRawInput`in t?t.getRawInput:r.getRawInput})}})}catch(e){return{ok:!1,error:Pg(e),marker:zg}}}let r=await n();if(!r)throw new Fg({code:`INTERNAL_SERVER_ERROR`,message:"No result from middlewares - did you forget to `return next()`?"});if(!r.ok)throw r.error;return r.data}return t._def=e,t}const Jg=typeof window>`u`||`Deno`in window||globalThis.process?.env?.NODE_ENV===`test`||!!globalThis.process?.env?.JEST_WORKER_ID||!!globalThis.process?.env?.VITEST_WORKER_ID;function Yg(e){return e._def&&`router`in e._def}const Xg={_ctx:null,_errorShape:null,_meta:null,queries:{},mutations:{},subscriptions:{},errorFormatter:Rg,transformer:Lg},Zg=[`then`,`call`,`apply`];function Qg(e){function t(t){let n=new Set(Object.keys(t).filter(e=>Zg.includes(e)));if(n.size>0)throw Error("Reserved words used in `router({})` call: "+Array.from(n).join(`, `));let r=jg({});function i(e,t=[]){let n=jg({});for(let[a,o]of Object.entries(e??{})){if(Yg(o)){n[a]=i(o._def.record,[...t,a]);continue}if(!$g(o)){n[a]=i(o,[...t,a]);continue}let e=[...t,a].join(`.`);if(r[e])throw Error(`Duplicate key: ${e}`);r[e]=o,n[a]=o}return n}let a=i(t),o={_config:e,router:!0,procedures:r,...Xg,record:a};return{...a,_def:o,createCaller:e_()({_def:o})}}return t}function $g(e){return typeof e==`function`}function e_(){return function(e){let t=e._def;return function(e,n){return Dg(async({path:r,args:i})=>{let a=r.join(`.`);if(r.length===1&&r[0]===`_def`)return t;let o=t.procedures[a],s;try{return s=Ag(e)?await Promise.resolve(e()):e,await o({path:a,getRawInput:async()=>i[0],ctx:s,type:o._def.type})}catch(e){throw n?.onError?.({ctx:s,error:Pg(e),input:i[0],path:a,type:o._def.type}),e}})}}}function t_(...e){let t=Og({},...e.map(e=>e._def.record));return Qg({errorFormatter:e.reduce((e,t)=>{if(t._def._config.errorFormatter&&t._def._config.errorFormatter!==Rg){if(e!==Rg&&e!==t._def._config.errorFormatter)throw Error(`You seem to have several error formatters`);return t._def._config.errorFormatter}return e},Rg),transformer:e.reduce((e,t)=>{if(t._def._config.transformer&&t._def._config.transformer!==Lg){if(e!==Lg&&e!==t._def._config.transformer)throw Error(`You seem to have several transformers`);return t._def._config.transformer}return e},Lg),isDev:e.every(e=>e._def._config.isDev),allowOutsideOfServer:e.every(e=>e._def._config.allowOutsideOfServer),isServer:e.every(e=>e._def._config.isServer),$types:e[0]?._def._config.$types})(t)}new class e{context(){return new e}meta(){return new e}create(e){let t={transformer:Ig(e?.transformer??Lg),isDev:e?.isDev??globalThis.process?.env.NODE_ENV!==`production`,allowOutsideOfServer:e?.allowOutsideOfServer??!1,errorFormatter:e?.errorFormatter??Rg,isServer:e?.isServer??Jg,$types:null,experimental:e?.experimental??{}};if(!(e?.isServer??Jg)&&e?.allowOutsideOfServer!==!0)throw Error(`You're trying to use @trpc/server in a non-server environment. This is not supported by default.`);return{_config:t,procedure:Gg({meta:e?.defaultMeta}),middleware:Bg(),router:Qg(t),mergeRouters:t_,createCallerFactory:e_()}}};async function n_({url:e,ottoPort:t=3030}){return{fmsInfo:await i_(e),ottoInfo:await s_({url:e,ottoPort:t})}}const r_=L.object({data:L.object({APIVersion:L.number().optional(),AcceptEARPassword:L.boolean().optional(),AcceptEncrypted:L.boolean().optional(),AcceptUnencrypted:L.boolean().optional(),AdminLocalAuth:L.string().optional(),AllowChangeUploadDBFolder:L.boolean().optional(),AutoOpenForUpload:L.boolean().optional(),DenyGuestAndAutoLogin:L.string().optional(),Hostname:L.string().optional(),IsAppleInternal:L.boolean().optional(),IsETS:L.boolean().optional(),PremisesType:L.string().optional(),ProductVersion:L.string().optional(),PublicKey:L.string().optional(),RequiresDBPasswords:L.boolean().optional(),ServerID:L.string().optional(),ServerVersion:L.string()}),result:L.number()});async function i_(e){let t=new URL(e);t.pathname=`/fmws/serverinfo`;let n=await u_(t.toString()).then(e=>r_.safeParse(e.data));if(!n.success)throw console.error(`fmsInfoResult.error`,n.error.issues),new Fg({code:`BAD_REQUEST`,message:`Invalid FileMaker Server URL`});return n.data.data}const a_=L.object({Otto:L.object({version:L.string(),serverNickname:L.string().default(``),isLicenseValid:L.boolean().optional()}),migratorVersion:L.string().optional(),FileMakerServer:L.object({version:L.object({long:L.string(),short:L.string()}),running:L.boolean().optional()}),isMac:L.boolean().optional(),platform:L.string().optional(),host:L.string().optional()}),o_=L.object({response:a_});async function s_({url:e,ottoPort:t=3030}){let n=await c_(e);return n||=await l_(e,t),n}async function c_(e){try{let t=new URL(e);return t.pathname=`/otto/api/info`,await u_(t.toString()).then(e=>o_.parse(e.data).response)}catch{return console.log(`unable to fetch otto4 info, trying otto3`),null}}async function l_(e,t){try{let n=new URL(e);return n.port=t?t.toString():`3030`,n.pathname=`/api/otto/info`,await u_(n.toString()).then(e=>a_.parse(e.data))}catch(e){return e instanceof Error&&console.error(`otto3 fetch error`,e.message),null}}async function u_(e){let t=new Te.Agent({rejectUnauthorized:!1});return await xe.get(e,{validateStatus:null,headers:{Connection:`close`},httpsAgent:t,timeout:1e4})}const d_=/^[a-zA-Z_$][a-zA-Z_$0-9]*$/,f_=async t=>{let n=V(),r=R.projectDir,i=t?.sourceName;if(i)i=t?.sourceName;else if(n.dataSources.filter(e=>e.type===`fm`).length>1){let t=await e.select({message:`Which FileMaker data source do you want to add a layout to?`,options:n.dataSources.filter(e=>e.type===`fm`).map(e=>({label:e.name,value:e.name}))});e.isCancel(t)&&(e.cancel(),process.exit(0)),i=j().parse(t)}i||=`filemaker`;let a=n.dataSources.filter(e=>e.type===`fm`).find(e=>e.name===i);if(!a)throw Error(`FileMaker data source ${i} not found in your ProofKit config`);let o=e.spinner();o.start(`Loading layouts from your FileMaker file...`),n.envFile&&le.config({path:d.join(r,n.envFile)});let s=process.env[a.envNames.apiKey],l=process.env[a.envNames.database],u=process.env[a.envNames.server];s&&l&&u||(o.stop(`Failed to load layouts`),e.cancel(`Missing required environment variables. Please check your .env file.`),process.exit(1)),s.startsWith(`KEY_`)||s.startsWith(`dk_`)||(o.stop(`Failed to load layouts`),e.cancel(`Invalid API key format. API key must start with 'KEY_' or 'dk_'.`),process.exit(1));let f=await sh({dataApiKey:s,fmFile:l,server:u}),p=jh({projectDir:r,dataSourceName:i}),m=p.map(e=>e.layout).filter(Boolean),h=p.map(e=>e.schemaName).filter(Boolean);o.stop(`Loaded layouts from your FileMaker file`),m.length>0&&e.note(m.join(`
|
|
107
|
-
`),`Detected existing layouts in your project`),m.push(`-`);let ee=t?.layoutName;(ee===``||!f.includes(ee??``))&&(ee=void 0);let te=ee??H(await e.select({message:`Select a new layout to read data from`,maxItems:10,options:f.filter(e=>!m.includes(e)).map(e=>({label:e,value:e}))})),ne=m_(te),re=t?.schemaName||H(await e.text({message:`Enter a friendly name for the new schema.\n${c.dim(`This will the name by which you refer to this layout in your codebase`)}`,defaultValue:ne,placeholder:ne,validate:e=>{if(e!==``){if(!d_.test(e))return`Name must consist of only alphanumeric characters, '_', and must not start with a number`;if(h.includes(e))return`Schema name must be unique`}}})).toString(),ie=t?.valueLists??await e.select({message:`Should we use value lists on this layout?\n${c.dim(`This will allow fields that contain a value list to be auto-completed in typescript and also validated to prevent incorrect values`)}`,options:[{label:`Yes, but allow empty fields`,value:`allowEmpty`,hint:`Empty fields or values that don't match the value list will be converted to an empty string`},{label:`Yes; empty values should fail validation`,value:`strict`,hint:`Empty fields or values that don't match the value list will cause validation to fail`},{label:`No, ignore value lists`,value:`ignore`,hint:`Fields will just be typed as strings`}]}),ae=P([`ignore`,`allowEmpty`,`strict`]).catch(`ignore`).parse(ie);await Dh({runCodegen:!0,projectDir:r,dataSourceName:i,schemas:[{layoutName:te,schemaName:re,valueLists:ae}]}),e.outro(`Layout "${te}" added to your project as "${re}"`)},p_=()=>new l(`layout`).alias(`schema`).description(`Add a new layout to your fmschema file`).action(async e=>{let t=e.settings;await f_({settings:t})});function m_(e){let t=e.replace(/[-\s]/g,`_`);for(let e of lh)t.startsWith(e)&&(t=t.replace(e,``));return t}const h_=`ProofKitDemo.fmp12`;async function g_({url:t,token:n,operation:r}){let i={scheduled:!1,label:`Install ProofKit Demo`,deployments:[{name:`Install ProofKit Demo`,source:{type:`url`,url:`https://proofkit.dev/proofkit-demo/manifest.json`},fileOperations:[{target:{fileName:h_},operation:r,source:{fileName:`ProofKitDemo.fmp12`},location:{folder:`default`,subFolder:``}}],concurrency:1,options:{closeFilesAfterBuild:!1,keepFilesClosedAfterComplete:!1,transferContainerData:!1}}],abortRemaining:!1},a=e.spinner();a.start(`Deploying ProofKit Demo file...`);let{response:{subDeploymentIds:o}}=await Cg({payload:i,url:t,token:n}),s=o[0];if(!s)throw Error(`No deployment ID returned from the server`);for(;;){await new Promise(e=>setTimeout(e,2500));let{response:{status:e,running:r}}=await wg({url:t,token:n,deploymentId:s});if(!r){if(e!==`complete`)throw Error(`Deployment didn't complete`);break}}let{apiKey:c}=await Sg({filename:h_,username:`admin`,password:`admin`,url:t});return a.stop(),{apiKey:c}}async function __({projectDir:t,...n}){let r=V(),i=r.dataSources.filter(e=>e.type===`fm`).map(e=>e.name),a=await v_(n.server);if(!(a.ottoVersion&&a.ottoVersion.compare(new be(`4.7.0`))>0||n.adminApiKey))return e.cancel(`OttoFMS 4.7.0 or later is required to auto-login with this CLI. Please install/upgrade OttoFMS on your server, or pass an Admin API key with the --adminApiKey flag then try again`);let o=n.adminApiKey||(await vg({url:a.url})).token,s=await yg({url:a.url,token:o}),l=s.map(e=>e.filename.replace(`.fmp12`,``)).includes(h_.replace(`.fmp12`,``)),u=n.fileName;for(;(u=n.fileName||H(await e.select({message:`Which file would you like to connect to? ${c.dim(`(TIP: Select the file where your data is stored)`)}`,maxItems:10,options:[{value:`$deployDemoFile`,label:`Deploy NEW ProofKit Demo File`,hint:`Use OttoFMS to deploy a new file for testing`},...s.sort((e,t)=>e.filename.localeCompare(t.filename)).map(e=>({value:e.filename,label:e.filename}))]})),u===`$deployDemoFile`)&&l&&!H(await e.confirm({message:`The demo file already exists, do you want to replace it with a fresh copy?`,active:`Yes, replace`,inactive:`No, select another file`,initialValue:!1})););if(!u)throw Error(`No file selected`);let d=n.dataApiKey;if(u===`$deployDemoFile`){let{apiKey:e}=await g_({url:a.url,token:o,operation:l?`replace`:`install`});d=e,u=h_,n.layoutName=n.layoutName??`API_Contacts`,n.schemaName=n.schemaName??`Contacts`}else{let t=(await bg({url:a.url,token:o})).filter(e=>e.database===u);if(!d&&t.length>0){let n=H(await e.select({message:`Which OttoFMS Data API key would you like to use? ${c.dim(`(This determines the access that you'll have to the data in this file)`)}`,options:[...t.map(e=>({value:e.key,label:`${c.bold(e.label)} - ${e.user}`,hint:`${e.key.slice(0,5)}...${e.key.slice(-4)}`})),{value:`create`,label:`Create a new API key`,hint:`Requires FileMaker credentials for this file`}]}));if(typeof n!=`string`)throw Error(`Invalid key`);n!==`create`&&(d=n)}d||=(await xg({filename:u,url:a.url})).apiKey}if(!d)throw Error(`No API key`);let f=i.length===0?`filemaker`:n.name??H(await e.text({message:`What do you want to call this data source?`,validate:e=>e===`filemaker`?`That name is reserved`:i?.includes(e)?`That name is already in use in this project, pick something unique`:_g(e)})),p={type:`fm`,name:f,envNames:f===`filemaker`?{database:`FM_DATABASE`,server:`FM_SERVER`,apiKey:`OTTO_API_KEY`}:{database:`${f.toUpperCase()}_FM_DATABASE`,server:`${f.toUpperCase()}_FM_SERVER`,apiKey:`${f.toUpperCase()}_OTTO_API_KEY`}},m=th(t),h=await nh({projectDir:t,project:m,envs:[{name:p.envNames.database,zodValue:`z.string().endsWith(".fmp12")`,defaultValue:u,type:`server`},{name:p.envNames.server,zodValue:`z.string().url()`,type:`server`,defaultValue:a.url.origin},{name:p.envNames.apiKey,zodValue:`z.string().startsWith("dk_") as z.ZodType<OttoAPIKey>`,type:`server`,defaultValue:d}]}),ee=h.getImportDeclaration(e=>e.getModuleSpecifierValue()===`@proofkit/fmdapi`);ee?(ee.getNamedImports().find(e=>e.getName()===`OttoAPIKey`)?.remove(),ee.addNamedImport({name:`OttoAPIKey`,isTypeOnly:!0})):h.addImportDeclaration({namedImports:[{name:`OttoAPIKey`,isTypeOnly:!0}],moduleSpecifier:`@proofkit/fmdapi`}),B({projectDir:t,dependencies:[`@proofkit/fmdapi`],devMode:!1}),r.dataSources.push(p),yh(r),Mh({dataSourceName:f,envNames:f===`filemaker`?void 0:p.envNames}),await $m(m),await f_({settings:r,sourceName:f,projectDir:t,layoutName:n.layoutName,schemaName:n.schemaName,valueLists:`allowEmpty`})}async function v_(t){let n=e.spinner(),r=null,i=null,a=null,o=t;for(;i===null;){let t=o??H(await e.text({message:`What is the URL of your FileMaker Server?\n${c.cyan(`TIP: You can copy any valid path on the server and paste it here.`)}`,validate:e=>{try{let t=e;t.startsWith(`https://`)||(t=t.startsWith(`http://`)?t.replace(`http://`,`https://`):`https://${t}`),new URL(t);return}catch{return`Please enter a valid URL`}}}));try{r=new URL(t)}catch{e.log.error(`Invalid URL: ${t.toString()}`);continue}n.start(`Validating Server URL...`);let{fmsInfo:s,ottoInfo:l}=await n_({url:r.origin});n.stop();let u=s.ServerVersion.split(` `)[0];if(!u){e.log.error(`Unable to parse FileMaker Server version`),o=void 0;continue}i=new be(u),a=l?.Otto.version?new be(l.Otto.version):null,o=void 0}if(r===null)throw Error(`Unable to get FileMaker Server URL`);return e.note(`🎉 FileMaker Server version ${i} detected \n
|
|
108
|
-
${a?`🎉 OttoFMS version ${a} detected`:`❌ OttoFMS not detected`}`),{url:r,ottoVersion:a,fmsVersion:i}}const y_={noGit:!1,noInstall:!1,default:!1,CI:!1,tailwind:!1,trpc:!1,prisma:!1,drizzle:!1,importAlias:`~/`,appRouter:!1,auth:`none`,server:void 0,fileName:``,layoutName:``,schemaName:``,dataApiKey:``,fmServerURL:``,dataSource:void 0,ui:`shadcn`},b_=()=>{let e=new l(`init`).description(`Create a new project with ProofKit`).argument(`[dir]`,`The name of the application, as well as the name of the directory to create`).option(`--appType [type]`,`The type of app to create`,void 0).option(`--ui [ui]`,void 0,void 0).option(`--server [url]`,`The URL of your FileMaker Server`,void 0).option(`--adminApiKey [key]`,`Admin API key for OttoFMS. If provided, will skip login prompt`,void 0).option(`--fileName [name]`,`The name of the FileMaker file to use for the web app`,void 0).option(`--layoutName [name]`,`The name of the FileMaker layout to use for the web app`,void 0).option(`--schemaName [name]`,`The name for the generated layout client in your schemas`,void 0).option(`--dataApiKey [key]`,`The API key to use for the FileMaker Data API`,void 0).option(`--auth [type]`,`The authentication provider to use for the web app`,void 0).option(`--dataSource [type]`,`The data source to use for the web app (filemaker or none)`,void 0).option(`--noGit`,`Explicitly tell the CLI to not initialize a new git repo in the project`,!1).option(`--noInstall`,`Explicitly tell the CLI to not run the package manager's install command`,!1).addOption(Yh).addOption(Xh).action(S_);return e.hook(`preAction`,e=>{Gm(e.opts()),R.baseCommand=`init`}),e};async function x_({projectDir:e}){let t=`none`;t===`clerk`?await Gh({options:{type:`clerk`},projectDir:e,noInstall:!0}):t===`fmaddon`&&await Gh({options:{type:`fmaddon`},projectDir:e,noInstall:!0})}const S_=async(e,t)=>{let n=Km(),r=t??y_;R.ui=r.ui??`shadcn`;let i=e||H(await s({message:`What will your project be called?`,defaultValue:`my-proofkit-app`,validate:_g})).toString();R.appType||=R.ci?`browser`:H(await o({message:`What kind of app do you want to build?`,options:[{value:`browser`,label:`Web App for Browsers`,hint:`Uses Next.js, will require hosting`},{value:`webviewer`,label:`FileMaker Web Viewer (beta)`,hint:`Uses Vite, can be embedded in FileMaker or hosted`}]}));let a=dg(),[c,l]=hg(i),u=await tg({projectName:l,scopedAppName:c,packages:a,noInstall:r.noInstall,appRouter:r.appRouter});ug(u,`@/`);let m=p.readJSONSync(d.join(u,`package.json`));if(m.name=c,m.proofkitMetadata={initVersion:Fe()},n!==`bun`){let{stdout:e}=await f(n,[`-v`],{cwd:u});m.packageManager=`${n}@${e.trim()}`}p.writeJSONSync(d.join(u,`package.json`),m,{spaces:2}),yh(R.ui===`mantine`?{appType:R.appType??`browser`,ui:`mantine`,auth:{type:`none`},envFile:`.env`,dataSources:[],tanstackQuery:!1,replacedMainPage:!1,appliedUpgrades:[`cursorRules`],reactEmail:!1,reactEmailServer:!1,registryTemplates:[]}:{appType:R.appType??`browser`,ui:`shadcn`,envFile:`.env`,dataSources:[],replacedMainPage:!1,registryTemplates:[]});let h=R.appType===`webviewer`?`filemaker`:r.dataSource;h||=H(await o({message:`Do you want to connect to a FileMaker Database now?`,options:[{value:`filemaker`,label:`Yes`,hint:`Requires OttoFMS and Admin Server credentials`},{value:`none`,label:`No`,hint:`You'll be able to add a new data source later`}]})),h===`filemaker`&&(await __({projectDir:u,name:`filemaker`,adminApiKey:r.adminApiKey,dataApiKey:r.dataApiKey,server:r.server,fileName:r.fileName,layoutName:r.layoutName,schemaName:r.schemaName}),R.appType===`webviewer`&&await pg()),await x_({projectDir:u}),await Ym({projectDir:u}),await kh(),r.noGit||await sg(u),cg({projectName:l,noInstall:r.noInstall})},C_=Ee(Object.values({purple:`#89216B`,lightPurple:`#D15ABB`,orange:`#FF595E`})),w_=()=>{let e=Km();(e===`yarn`||e===`pnpm`)&&console.log(``),console.log(C_.multiline(Ge))},T_=async({noInstall:t,installServerFiles:n}={})=>{let r=e.spinner();r.start(`Adding React Email`),await Rh({noInstall:t,installServerFiles:n}),r.stop(`React Email added`)},E_=async()=>{let t=e.spinner();t.start(`Adding Tanstack Query`),await Ih(),t.stop(`Tanstack Query added`)};async function D_(){let e=V();if(e.appType!==`browser`)return t(`Auth is not supported for your app type.`);if(e.ui===`shadcn`)return t(`Adding auth is not yet supported for shadcn-based projects.`);let n=R.authType??H(await o({message:`What auth provider do you want to use?`,options:[{value:`fmaddon`,label:`FM Add-on Auth`,hint:`Self-hosted auth with email/password`},{value:`clerk`,label:`Clerk`,hint:`Hosted auth service with many providers`}]})),r=P([`clerk`,`fmaddon`]).parse(n);if(R.authType=r,r===`fmaddon`){let e=R.emailProvider??(R.ci?`none`:void 0)??H(await o({message:`What email provider do you want to use?\n${c.dim(`Used to send email verification codes. If you skip this, the codes will be displayed here in your terminal.`)}`,options:[{label:`Resend`,value:`resend`,hint:`Great dev experience`},{label:`Plunk`,value:`plunk`,hint:`Cheapest for <20k emails/mo, self-hostable`},{label:`Other / I'll do it myself later`,value:`none`}]})),t=P([`plunk`,`resend`,`none`]).parse(e);R.emailProvider=t,await Gh({options:{type:r,emailProvider:t===`none`?void 0:t}})}else await Gh({options:{type:r}})}const O_=()=>{let e=new l(`auth`).description(`Add authentication to your project`).option(`--authType <authType>`,`Type of auth provider to use`).option(`--emailProvider <emailProvider>`,`Email provider to use (only for FM Add-on Auth)`).option(`--apiKey <apiKey>`,`API key to use for the email provider (only for FM Add-on Auth)`).addOption(Yh).addOption(Xh).action(async()=>{let e=V();if(e.ui===`shadcn`)throw Error(`Shadcn projects should add auth using the template registry`);if(e.auth.type!==`none`)throw Error(`Auth already exists`);await D_()});return e.hook(`preAction`,e=>{Gm(e.opts())}),e},k_=P([`fm`,`supabase`]),A_=async()=>{let t=k_.parse(await e.select({message:`Which data souce do you want to add?`,options:[{label:`FileMaker`,value:`fm`},{label:`Supabase`,value:`supabase`}]}));if(t===`supabase`)throw Error(`Not implemented`);if(t===`fm`)await __({projectDir:process.cwd()});else throw Error(`Invalid data source`)},j_=()=>{let e=new l(`data`);return e.description(`Add a new data source to your project`),e.hook(`preAction`,(e,t)=>{let n=xh({commandName:`add`});t.setOptionValue(`settings`,n)}),e},M_=/^[a-zA-Z_$][a-zA-Z0-9_$]*$/,N_=async({projectDir:e,pageDir:t,dataSource:n,schemaName:r})=>{if(!n)throw Error(`DataSource is required for table page`);if(!r)throw Error(`SchemaName is required for table page`);if(n.type!==`fm`)throw Error(`FileMaker DataSource is required for table page`);let i=Ah({projectDir:e,dataSourceName:n.name}),a=Nh({schemaName:r,dataSourceName:n.name}),o=V();if(o.ui===`shadcn`)return;let s=o.auth,c={__SOURCE_NAME__:n.name,__TYPE_NAME__:`T${r}`,__ZOD_TYPE_NAME__:`Z${r}`,__CLIENT_NAME__:`${r}${i}`,__SCHEMA_NAME__:r,__ACTION_CLIENT__:s.type===`none`?`actionClient`:`authedActionClient`,__FIRST_FIELD_NAME__:a[0]??`NO_FIELDS_ON_YOUR_LAYOUT`},l=await p.readdir(t);for await(let e of l){let n=d.join(t,e),r=await p.readFile(n,`utf8`);for(let[e,t]of Object.entries(c))r=r.replace(new RegExp(e,`g`),t);await p.writeFile(n,r,`utf8`)}let u=th(e),f=u.addSourceFileAtPath(d.join(t,R.appType===`browser`?`table.tsx`:`index.tsx`)).getVariableDeclaration(`columns`)?.getInitializerIfKind(g.ArrayLiteralExpression),m=I_(a.filter(Boolean));for await(let e of m)f?.addElement(t=>t.inlineBlock(()=>{P_(e)?t.write(`accessorFn: (row) => row["${e}"],`):t.write(`accessorFn: (row) => row.${e},`),t.write(`header: "${e}",`)}).write(`,`).newLine());R.appType===`webviewer`&&await Ih({project:u})&&await Ym(),await $m(u)};function P_(e){return!M_.test(e)}const F_=[`id`,`pk`,`createdat`,`updatedat`,`primarykey`,`createdby`,`modifiedby`,`creationtimestamp`,`modificationtimestamp`];function I_(e){return e.filter(e=>!F_.includes(e.toLowerCase())||e.startsWith(`_`))}const L_=async e=>{await N_(e),await Ih()&&await Ym()},R_={blank:{requireData:!1,label:`Blank`,templatePath:`nextjs/blank`},table:{requireData:!0,label:`Basic Table`,hint:`Use to load and show multiple records`,templatePath:`nextjs/table`,postIntallFn:N_},tableEdit:{requireData:!0,label:`Basic Table (editable)`,hint:`Use to load and show multiple records with inline edit functionality`,templatePath:`nextjs/table-edit`,postIntallFn:N_},tableInfinite:{requireData:!0,label:`Infinite Table`,hint:`Automatically load more records when the user scrolls to the bottom`,templatePath:`nextjs/table-infinite`,postIntallFn:L_},tableInfiniteEdit:{requireData:!0,label:`Infinite Table (editable)`,hint:`Automatically load more records when the user scrolls to the bottom with inline edit functionality`,templatePath:`nextjs/table-infinite-edit`,postIntallFn:L_}},z_={blank:{requireData:!1,label:`Blank`,templatePath:`vite-wv/blank`},table:{requireData:!0,label:`Basic Table`,hint:`Use to load and show multiple records`,templatePath:`vite-wv/table`,postIntallFn:N_},tableEdit:{requireData:!0,label:`Basic Table (editable)`,hint:`Use to load and show multiple records with inline edit functionality`,templatePath:`vite-wv/table-edit`,postIntallFn:N_}};async function B_({projectDir:e,navType:t,...n}){let r=d.join(e,`src/app/navigation.tsx`);if(!p.existsSync(r))return;let i=th(e);i.addSourceFileAtPath(r).getVariableDeclaration(t===`primary`?`primaryRoutes`:`secondaryRoutes`)?.getInitializerIfKind(g.ArrayLiteralExpression)?.addElement(e=>e.block(()=>{e.write(`
|
|
109
|
-
label: "${n.label}",
|
|
110
|
-
type: "link",
|
|
111
|
-
href: "${n.href}",`)}).write(`,`)),await $m(i)}const V_=async t=>{let n=R.projectDir,r=V();if(r.ui===`shadcn`)return e.cancel(`Adding pages is not yet supported for shadcn-based projects.`);let i=R.appType===`browser`?Object.entries(R_):Object.entries(z_);if(i.length===0)return e.cancel(`No templates found for your app type. Check back soon!`);let a=t?.routeName,o=r.replacedMainPage;if(R.appType===`webviewer`&&!o&&!R.ci&&!a){let t=H(await e.select({message:`Do you want to replace the default page?`,options:[{label:`Yes`,value:`yes`},{label:`No, maybe later`,value:`no`},{label:`No, don't ask again`,value:`never`}]}));(t===`never`||t===`yes`)&&(o=!0),t===`yes`&&(a=`/`)}a||=H(await e.text({message:`Enter the URL PATH for your new page`,placeholder:`/my-page`,validate:e=>{if(e.length===0)return`URL path is required`}})),a.startsWith(`/`)||(a=`/${a}`);let s=De(a.replace(`/`,``).trim()),l=t?.template??H(await e.select({message:`What template should be used for this page?`,options:i.map(([e,t])=>({value:e,label:`${t.label}`,hint:t.hint}))})),u=i.find(([e])=>e===l)?.[1];if(!u)return e.cancel(`Page template ${l} not found`);let f,m;if(u.requireData){if(r.dataSources.length===0)return e.cancel(`This template requires a data source, but you don't have any. Add a data source first, or choose another page template`);let i=t?.dataSourceName??(r.dataSources.length>1?H(await e.select({message:`Which data source should be used for this page?`,options:r.dataSources.map(e=>({value:e.name,label:e.name}))})):r.dataSources[0]?.name);if(f=r.dataSources.find(e=>e.name===i),!f)return e.cancel(`Data source ${i} not found`);m=await U_({projectDir:n,dataSource:f})}let h=e.spinner();h.start(`Adding page from template`);let ee=d.join(_,`template/pages`,u.templatePath),te=R.appType===`browser`?d.join(n,`src/app/(main)`,a):d.join(n,`src/routes`,a);await p.copy(ee,te),R.appType===`browser`?s&&s!==``&&await B_({projectDir:process.cwd(),navType:`primary`,label:s,href:a}):R.appType,await u.postIntallFn?.({projectDir:n,pageDir:te,dataSource:f,schemaName:m}),o!==r.replacedMainPage&&vh({replacedMainPage:o}),h.stop(`Added page!`);let ne=Km();console.log(`\n${c.green(`Next steps:`)}\nTo preview this page, restart your dev server using the ${c.cyan(`${ne===`npm`?`npm run`:ne} dev`)} command\n`)},H_=()=>{let e=new l(`page`).description(`Add a new page to your project`).action(async()=>{await V_()});return e.addOption(Yh),e.addOption(Xh),e.hook(`preAction`,()=>{Gm(e.opts()),R.baseCommand=`add`,xh({commandName:`add`})}),e};async function U_({projectDir:t=process.cwd(),dataSource:n}){if(n.type===`supabase`)throw Error(`Not implemented`);let r=jh({projectDir:t,dataSourceName:n.name}).map(e=>e.schemaName).filter(Boolean);if(r.length===0){e.cancel(`This data source doesn't have any schemas to load data from`);return}return r.length===1?r[0]:H(await e.select({message:`Which schema should this page load data from?`,options:r.map(e=>({label:e,value:e??``}))}))}var U;(function(e){e.assertEqual=e=>{};function t(e){}e.assertIs=t;function n(e){throw Error()}e.assertNever=n,e.arrayToEnum=e=>{let t={};for(let n of e)t[n]=n;return t},e.getValidEnumValues=t=>{let n=e.objectKeys(t).filter(e=>typeof t[t[e]]!=`number`),r={};for(let e of n)r[e]=t[e];return e.objectValues(r)},e.objectValues=t=>e.objectKeys(t).map(function(e){return t[e]}),e.objectKeys=typeof Object.keys==`function`?e=>Object.keys(e):e=>{let t=[];for(let n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.push(n);return t},e.find=(e,t)=>{for(let n of e)if(t(n))return n},e.isInteger=typeof Number.isInteger==`function`?e=>Number.isInteger(e):e=>typeof e==`number`&&Number.isFinite(e)&&Math.floor(e)===e;function r(e,t=` | `){return e.map(e=>typeof e==`string`?`'${e}'`:e).join(t)}e.joinValues=r,e.jsonStringifyReplacer=(e,t)=>typeof t==`bigint`?t.toString():t})(U||={});var W_;(function(e){e.mergeShapes=(e,t)=>({...e,...t})})(W_||={});const W=U.arrayToEnum([`string`,`nan`,`number`,`integer`,`float`,`boolean`,`date`,`bigint`,`symbol`,`function`,`undefined`,`null`,`array`,`object`,`unknown`,`promise`,`void`,`never`,`map`,`set`]),G_=e=>{switch(typeof e){case`undefined`:return W.undefined;case`string`:return W.string;case`number`:return Number.isNaN(e)?W.nan:W.number;case`boolean`:return W.boolean;case`function`:return W.function;case`bigint`:return W.bigint;case`symbol`:return W.symbol;case`object`:return Array.isArray(e)?W.array:e===null?W.null:e.then&&typeof e.then==`function`&&e.catch&&typeof e.catch==`function`?W.promise:typeof Map<`u`&&e instanceof Map?W.map:typeof Set<`u`&&e instanceof Set?W.set:typeof Date<`u`&&e instanceof Date?W.date:W.object;default:return W.unknown}},G=U.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 K_=class e extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=e=>{this.issues=[...this.issues,e]},this.addIssues=(e=[])=>{this.issues=[...this.issues,...e]};let t=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,t):this.__proto__=t,this.name=`ZodError`,this.issues=e}format(e){let t=e||function(e){return e.message},n={_errors:[]},r=e=>{for(let i of e.issues)if(i.code===`invalid_union`)i.unionErrors.map(r);else if(i.code===`invalid_return_type`)r(i.returnTypeError);else if(i.code===`invalid_arguments`)r(i.argumentsError);else if(i.path.length===0)n._errors.push(t(i));else{let e=n,r=0;for(;r<i.path.length;){let n=i.path[r];r===i.path.length-1?(e[n]=e[n]||{_errors:[]},e[n]._errors.push(t(i))):e[n]=e[n]||{_errors:[]},e=e[n],r++}}};return r(this),n}static assert(t){if(!(t instanceof e))throw Error(`Not a ZodError: ${t}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,U.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=e=>e.message){let t=Object.create(null),n=[];for(let r of this.issues)if(r.path.length>0){let n=r.path[0];t[n]=t[n]||[],t[n].push(e(r))}else n.push(e(r));return{formErrors:n,fieldErrors:t}}get formErrors(){return this.flatten()}};K_.create=e=>new K_(e);const q_=(e,t)=>{let n;switch(e.code){case G.invalid_type:n=e.received===W.undefined?`Required`:`Expected ${e.expected}, received ${e.received}`;break;case G.invalid_literal:n=`Invalid literal value, expected ${JSON.stringify(e.expected,U.jsonStringifyReplacer)}`;break;case G.unrecognized_keys:n=`Unrecognized key(s) in object: ${U.joinValues(e.keys,`, `)}`;break;case G.invalid_union:n=`Invalid input`;break;case G.invalid_union_discriminator:n=`Invalid discriminator value. Expected ${U.joinValues(e.options)}`;break;case G.invalid_enum_value:n=`Invalid enum value. Expected ${U.joinValues(e.options)}, received '${e.received}'`;break;case G.invalid_arguments:n=`Invalid function arguments`;break;case G.invalid_return_type:n=`Invalid function return type`;break;case G.invalid_date:n=`Invalid date`;break;case G.invalid_string:typeof e.validation==`object`?`includes`in e.validation?(n=`Invalid input: must include "${e.validation.includes}"`,typeof e.validation.position==`number`&&(n=`${n} at one or more positions greater than or equal to ${e.validation.position}`)):`startsWith`in e.validation?n=`Invalid input: must start with "${e.validation.startsWith}"`:`endsWith`in e.validation?n=`Invalid input: must end with "${e.validation.endsWith}"`:U.assertNever(e.validation):n=e.validation===`regex`?`Invalid`:`Invalid ${e.validation}`;break;case G.too_small:n=e.type===`array`?`Array must contain ${e.exact?`exactly`:e.inclusive?`at least`:`more than`} ${e.minimum} element(s)`:e.type===`string`?`String must contain ${e.exact?`exactly`:e.inclusive?`at least`:`over`} ${e.minimum} character(s)`:e.type===`number`||e.type===`bigint`?`Number must be ${e.exact?`exactly equal to `:e.inclusive?`greater than or equal to `:`greater than `}${e.minimum}`:e.type===`date`?`Date must be ${e.exact?`exactly equal to `:e.inclusive?`greater than or equal to `:`greater than `}${new Date(Number(e.minimum))}`:`Invalid input`;break;case G.too_big:n=e.type===`array`?`Array must contain ${e.exact?`exactly`:e.inclusive?`at most`:`less than`} ${e.maximum} element(s)`:e.type===`string`?`String must contain ${e.exact?`exactly`:e.inclusive?`at most`:`under`} ${e.maximum} character(s)`:e.type===`number`?`Number must be ${e.exact?`exactly`:e.inclusive?`less than or equal to`:`less than`} ${e.maximum}`:e.type===`bigint`?`BigInt must be ${e.exact?`exactly`:e.inclusive?`less than or equal to`:`less than`} ${e.maximum}`:e.type===`date`?`Date must be ${e.exact?`exactly`:e.inclusive?`smaller than or equal to`:`smaller than`} ${new Date(Number(e.maximum))}`:`Invalid input`;break;case G.custom:n=`Invalid input`;break;case G.invalid_intersection_types:n=`Intersection results could not be merged`;break;case G.not_multiple_of:n=`Number must be a multiple of ${e.multipleOf}`;break;case G.not_finite:n=`Number must be finite`;break;default:n=t.defaultError,U.assertNever(e)}return{message:n}};let J_=q_;function Y_(){return J_}const X_=e=>{let{data:t,path:n,errorMaps:r,issueData:i}=e,a=[...n,...i.path||[]],o={...i,path:a};if(i.message!==void 0)return{...i,path:a,message:i.message};let s=``,c=r.filter(e=>!!e).slice().reverse();for(let e of c)s=e(o,{data:t,defaultError:s}).message;return{...i,path:a,message:s}};function K(e,t){let n=Y_(),r=X_({issueData:t,data:e.data,path:e.path,errorMaps:[e.common.contextualErrorMap,e.schemaErrorMap,n,n===q_?void 0:q_].filter(e=>!!e)});e.common.issues.push(r)}var Z_=class e{constructor(){this.value=`valid`}dirty(){this.value===`valid`&&(this.value=`dirty`)}abort(){this.value!==`aborted`&&(this.value=`aborted`)}static mergeArray(e,t){let n=[];for(let r of t){if(r.status===`aborted`)return q;r.status===`dirty`&&e.dirty(),n.push(r.value)}return{status:e.value,value:n}}static async mergeObjectAsync(t,n){let r=[];for(let e of n){let t=await e.key,n=await e.value;r.push({key:t,value:n})}return e.mergeObjectSync(t,r)}static mergeObjectSync(e,t){let n={};for(let r of t){let{key:t,value:i}=r;if(t.status===`aborted`||i.status===`aborted`)return q;t.status===`dirty`&&e.dirty(),i.status===`dirty`&&e.dirty(),t.value!==`__proto__`&&(i.value!==void 0||r.alwaysSet)&&(n[t.value]=i.value)}return{status:e.value,value:n}}};const q=Object.freeze({status:`aborted`}),Q_=e=>({status:`dirty`,value:e}),$_=e=>({status:`valid`,value:e}),ev=e=>e.status===`aborted`,tv=e=>e.status===`dirty`,nv=e=>e.status===`valid`,rv=e=>typeof Promise<`u`&&e instanceof Promise;var J;(function(e){e.errToObj=e=>typeof e==`string`?{message:e}:e||{},e.toString=e=>typeof e==`string`?e:e?.message})(J||={});var iv=class{constructor(e,t,n,r){this._cachedPath=[],this.parent=e,this.data=t,this._path=n,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}};const av=(e,t)=>{if(nv(t))return{success:!0,data:t.value};if(!e.common.issues.length)throw Error(`Validation failed but no issues detected.`);return{success:!1,get error(){return this._error||=new K_(e.common.issues),this._error}}};function Y(e){if(!e)return{};let{errorMap:t,invalid_type_error:n,required_error:r,description:i}=e;if(t&&(n||r))throw Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return t?{errorMap:t,description:i}:{errorMap:(t,i)=>{let{message:a}=e;return t.code===`invalid_enum_value`?{message:a??i.defaultError}:i.data===void 0?{message:a??r??i.defaultError}:t.code===`invalid_type`?{message:a??n??i.defaultError}:{message:i.defaultError}},description:i}}var X=class{get description(){return this._def.description}_getType(e){return G_(e.data)}_getOrReturnCtx(e,t){return t||{common:e.parent.common,data:e.data,parsedType:G_(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new Z_,ctx:{common:e.parent.common,data:e.data,parsedType:G_(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let t=this._parse(e);if(rv(t))throw Error(`Synchronous parse encountered promise.`);return t}_parseAsync(e){let t=this._parse(e);return Promise.resolve(t)}parse(e,t){let n=this.safeParse(e,t);if(n.success)return n.data;throw n.error}safeParse(e,t){let n={common:{issues:[],async:t?.async??!1,contextualErrorMap:t?.errorMap},path:t?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:G_(e)};return av(n,this._parseSync({data:e,path:n.path,parent:n}))}"~validate"(e){let t={common:{issues:[],async:!!this[`~standard`].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:G_(e)};if(!this[`~standard`].async)try{let n=this._parseSync({data:e,path:[],parent:t});return nv(n)?{value:n.value}:{issues:t.common.issues}}catch(e){e?.message?.toLowerCase()?.includes(`encountered`)&&(this[`~standard`].async=!0),t.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:t}).then(e=>nv(e)?{value:e.value}:{issues:t.common.issues})}async parseAsync(e,t){let n=await this.safeParseAsync(e,t);if(n.success)return n.data;throw n.error}async safeParseAsync(e,t){let n={common:{issues:[],contextualErrorMap:t?.errorMap,async:!0},path:t?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:G_(e)},r=this._parse({data:e,path:n.path,parent:n});return av(n,await(rv(r)?r:Promise.resolve(r)))}refine(e,t){let n=e=>typeof t==`string`||t===void 0?{message:t}:typeof t==`function`?t(e):t;return this._refinement((t,r)=>{let i=e(t),a=()=>r.addIssue({code:G.custom,...n(t)});return typeof Promise<`u`&&i instanceof Promise?i.then(e=>e?!0:(a(),!1)):i?!0:(a(),!1)})}refinement(e,t){return this._refinement((n,r)=>e(n)?!0:(r.addIssue(typeof t==`function`?t(n,r):t),!1))}_refinement(e){return new sy({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:e=>this[`~validate`](e)}}optional(){return cy.create(this,this._def)}nullable(){return ly.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Hv.create(this)}promise(){return oy.create(this,this._def)}or(e){return Gv.create([this,e],this._def)}and(e){return Yv.create(this,e,this._def)}transform(e){return new sy({...Y(this._def),schema:this,typeName:Z.ZodEffects,effect:{type:`transform`,transform:e}})}default(e){let t=typeof e==`function`?e:()=>e;return new uy({...Y(this._def),innerType:this,defaultValue:t,typeName:Z.ZodDefault})}brand(){return new py({typeName:Z.ZodBranded,type:this,...Y(this._def)})}catch(e){let t=typeof e==`function`?e:()=>e;return new dy({...Y(this._def),innerType:this,catchValue:t,typeName:Z.ZodCatch})}describe(e){let t=this.constructor;return new t({...this._def,description:e})}pipe(e){return my.create(this,e)}readonly(){return hy.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}};const ov=/^c[^\s-]{8,}$/i,sv=/^[0-9a-z]+$/,cv=/^[0-9A-HJKMNP-TV-Z]{26}$/i,lv=/^[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,uv=/^[a-z0-9_-]{21}$/i,dv=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,fv=/^[-+]?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)?)??$/,pv=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i;let mv;const hv=/^(?:(?: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])$/,gv=/^(?:(?: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])$/,_v=/^(([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]))$/,vv=/^(([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])$/,yv=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,bv=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,xv=`((\\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])))`,Sv=RegExp(`^${xv}$`);function Cv(e){let t=`[0-5]\\d`;e.precision?t=`${t}\\.\\d{${e.precision}}`:e.precision??(t=`${t}(\\.\\d+)?`);let n=e.precision?`+`:`?`;return`([01]\\d|2[0-3]):[0-5]\\d(:${t})${n}`}function wv(e){return RegExp(`^${Cv(e)}$`)}function Tv(e){let t=`${xv}T${Cv(e)}`,n=[];return n.push(e.local?`Z?`:`Z`),e.offset&&n.push(`([+-]\\d{2}:?\\d{2})`),t=`${t}(${n.join(`|`)})`,RegExp(`^${t}$`)}function Ev(e,t){return!!((t===`v4`||!t)&&hv.test(e)||(t===`v6`||!t)&&_v.test(e))}function Dv(e,t){if(!dv.test(e))return!1;try{let[n]=e.split(`.`);if(!n)return!1;let r=n.replace(/-/g,`+`).replace(/_/g,`/`).padEnd(n.length+(4-n.length%4)%4,`=`),i=JSON.parse(atob(r));return!(typeof i!=`object`||!i||`typ`in i&&i?.typ!==`JWT`||!i.alg||t&&i.alg!==t)}catch{return!1}}function Ov(e,t){return!!((t===`v4`||!t)&&gv.test(e)||(t===`v6`||!t)&&vv.test(e))}var kv=class e extends X{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==W.string){let t=this._getOrReturnCtx(e);return K(t,{code:G.invalid_type,expected:W.string,received:t.parsedType}),q}let t=new Z_,n;for(let r of this._def.checks)if(r.kind===`min`)e.data.length<r.value&&(n=this._getOrReturnCtx(e,n),K(n,{code:G.too_small,minimum:r.value,type:`string`,inclusive:!0,exact:!1,message:r.message}),t.dirty());else if(r.kind===`max`)e.data.length>r.value&&(n=this._getOrReturnCtx(e,n),K(n,{code:G.too_big,maximum:r.value,type:`string`,inclusive:!0,exact:!1,message:r.message}),t.dirty());else if(r.kind===`length`){let i=e.data.length>r.value,a=e.data.length<r.value;(i||a)&&(n=this._getOrReturnCtx(e,n),i?K(n,{code:G.too_big,maximum:r.value,type:`string`,inclusive:!0,exact:!0,message:r.message}):a&&K(n,{code:G.too_small,minimum:r.value,type:`string`,inclusive:!0,exact:!0,message:r.message}),t.dirty())}else if(r.kind===`email`)pv.test(e.data)||(n=this._getOrReturnCtx(e,n),K(n,{validation:`email`,code:G.invalid_string,message:r.message}),t.dirty());else if(r.kind===`emoji`)mv||=RegExp(`^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$`,`u`),mv.test(e.data)||(n=this._getOrReturnCtx(e,n),K(n,{validation:`emoji`,code:G.invalid_string,message:r.message}),t.dirty());else if(r.kind===`uuid`)lv.test(e.data)||(n=this._getOrReturnCtx(e,n),K(n,{validation:`uuid`,code:G.invalid_string,message:r.message}),t.dirty());else if(r.kind===`nanoid`)uv.test(e.data)||(n=this._getOrReturnCtx(e,n),K(n,{validation:`nanoid`,code:G.invalid_string,message:r.message}),t.dirty());else if(r.kind===`cuid`)ov.test(e.data)||(n=this._getOrReturnCtx(e,n),K(n,{validation:`cuid`,code:G.invalid_string,message:r.message}),t.dirty());else if(r.kind===`cuid2`)sv.test(e.data)||(n=this._getOrReturnCtx(e,n),K(n,{validation:`cuid2`,code:G.invalid_string,message:r.message}),t.dirty());else if(r.kind===`ulid`)cv.test(e.data)||(n=this._getOrReturnCtx(e,n),K(n,{validation:`ulid`,code:G.invalid_string,message:r.message}),t.dirty());else if(r.kind===`url`)try{new URL(e.data)}catch{n=this._getOrReturnCtx(e,n),K(n,{validation:`url`,code:G.invalid_string,message:r.message}),t.dirty()}else r.kind===`regex`?(r.regex.lastIndex=0,r.regex.test(e.data)||(n=this._getOrReturnCtx(e,n),K(n,{validation:`regex`,code:G.invalid_string,message:r.message}),t.dirty())):r.kind===`trim`?e.data=e.data.trim():r.kind===`includes`?e.data.includes(r.value,r.position)||(n=this._getOrReturnCtx(e,n),K(n,{code:G.invalid_string,validation:{includes:r.value,position:r.position},message:r.message}),t.dirty()):r.kind===`toLowerCase`?e.data=e.data.toLowerCase():r.kind===`toUpperCase`?e.data=e.data.toUpperCase():r.kind===`startsWith`?e.data.startsWith(r.value)||(n=this._getOrReturnCtx(e,n),K(n,{code:G.invalid_string,validation:{startsWith:r.value},message:r.message}),t.dirty()):r.kind===`endsWith`?e.data.endsWith(r.value)||(n=this._getOrReturnCtx(e,n),K(n,{code:G.invalid_string,validation:{endsWith:r.value},message:r.message}),t.dirty()):r.kind===`datetime`?Tv(r).test(e.data)||(n=this._getOrReturnCtx(e,n),K(n,{code:G.invalid_string,validation:`datetime`,message:r.message}),t.dirty()):r.kind===`date`?Sv.test(e.data)||(n=this._getOrReturnCtx(e,n),K(n,{code:G.invalid_string,validation:`date`,message:r.message}),t.dirty()):r.kind===`time`?wv(r).test(e.data)||(n=this._getOrReturnCtx(e,n),K(n,{code:G.invalid_string,validation:`time`,message:r.message}),t.dirty()):r.kind===`duration`?fv.test(e.data)||(n=this._getOrReturnCtx(e,n),K(n,{validation:`duration`,code:G.invalid_string,message:r.message}),t.dirty()):r.kind===`ip`?Ev(e.data,r.version)||(n=this._getOrReturnCtx(e,n),K(n,{validation:`ip`,code:G.invalid_string,message:r.message}),t.dirty()):r.kind===`jwt`?Dv(e.data,r.alg)||(n=this._getOrReturnCtx(e,n),K(n,{validation:`jwt`,code:G.invalid_string,message:r.message}),t.dirty()):r.kind===`cidr`?Ov(e.data,r.version)||(n=this._getOrReturnCtx(e,n),K(n,{validation:`cidr`,code:G.invalid_string,message:r.message}),t.dirty()):r.kind===`base64`?yv.test(e.data)||(n=this._getOrReturnCtx(e,n),K(n,{validation:`base64`,code:G.invalid_string,message:r.message}),t.dirty()):r.kind===`base64url`?bv.test(e.data)||(n=this._getOrReturnCtx(e,n),K(n,{validation:`base64url`,code:G.invalid_string,message:r.message}),t.dirty()):U.assertNever(r);return{status:t.value,value:e.data}}_regex(e,t,n){return this.refinement(t=>e.test(t),{validation:t,code:G.invalid_string,...J.errToObj(n)})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}email(e){return this._addCheck({kind:`email`,...J.errToObj(e)})}url(e){return this._addCheck({kind:`url`,...J.errToObj(e)})}emoji(e){return this._addCheck({kind:`emoji`,...J.errToObj(e)})}uuid(e){return this._addCheck({kind:`uuid`,...J.errToObj(e)})}nanoid(e){return this._addCheck({kind:`nanoid`,...J.errToObj(e)})}cuid(e){return this._addCheck({kind:`cuid`,...J.errToObj(e)})}cuid2(e){return this._addCheck({kind:`cuid2`,...J.errToObj(e)})}ulid(e){return this._addCheck({kind:`ulid`,...J.errToObj(e)})}base64(e){return this._addCheck({kind:`base64`,...J.errToObj(e)})}base64url(e){return this._addCheck({kind:`base64url`,...J.errToObj(e)})}jwt(e){return this._addCheck({kind:`jwt`,...J.errToObj(e)})}ip(e){return this._addCheck({kind:`ip`,...J.errToObj(e)})}cidr(e){return this._addCheck({kind:`cidr`,...J.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:e?.precision===void 0?null:e?.precision,offset:e?.offset??!1,local:e?.local??!1,...J.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:e?.precision===void 0?null:e?.precision,...J.errToObj(e?.message)})}duration(e){return this._addCheck({kind:`duration`,...J.errToObj(e)})}regex(e,t){return this._addCheck({kind:`regex`,regex:e,...J.errToObj(t)})}includes(e,t){return this._addCheck({kind:`includes`,value:e,position:t?.position,...J.errToObj(t?.message)})}startsWith(e,t){return this._addCheck({kind:`startsWith`,value:e,...J.errToObj(t)})}endsWith(e,t){return this._addCheck({kind:`endsWith`,value:e,...J.errToObj(t)})}min(e,t){return this._addCheck({kind:`min`,value:e,...J.errToObj(t)})}max(e,t){return this._addCheck({kind:`max`,value:e,...J.errToObj(t)})}length(e,t){return this._addCheck({kind:`length`,value:e,...J.errToObj(t)})}nonempty(e){return this.min(1,J.errToObj(e))}trim(){return new e({...this._def,checks:[...this._def.checks,{kind:`trim`}]})}toLowerCase(){return new e({...this._def,checks:[...this._def.checks,{kind:`toLowerCase`}]})}toUpperCase(){return new e({...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 t of this._def.checks)t.kind===`min`&&(e===null||t.value>e)&&(e=t.value);return e}get maxLength(){let e=null;for(let t of this._def.checks)t.kind===`max`&&(e===null||t.value<e)&&(e=t.value);return e}};kv.create=e=>new kv({checks:[],typeName:Z.ZodString,coerce:e?.coerce??!1,...Y(e)});function Av(e,t){let n=(e.toString().split(`.`)[1]||``).length,r=(t.toString().split(`.`)[1]||``).length,i=n>r?n:r;return Number.parseInt(e.toFixed(i).replace(`.`,``))%Number.parseInt(t.toFixed(i).replace(`.`,``))/10**i}var jv=class e extends X{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)!==W.number){let t=this._getOrReturnCtx(e);return K(t,{code:G.invalid_type,expected:W.number,received:t.parsedType}),q}let t,n=new Z_;for(let r of this._def.checks)r.kind===`int`?U.isInteger(e.data)||(t=this._getOrReturnCtx(e,t),K(t,{code:G.invalid_type,expected:`integer`,received:`float`,message:r.message}),n.dirty()):r.kind===`min`?(r.inclusive?e.data<r.value:e.data<=r.value)&&(t=this._getOrReturnCtx(e,t),K(t,{code:G.too_small,minimum:r.value,type:`number`,inclusive:r.inclusive,exact:!1,message:r.message}),n.dirty()):r.kind===`max`?(r.inclusive?e.data>r.value:e.data>=r.value)&&(t=this._getOrReturnCtx(e,t),K(t,{code:G.too_big,maximum:r.value,type:`number`,inclusive:r.inclusive,exact:!1,message:r.message}),n.dirty()):r.kind===`multipleOf`?Av(e.data,r.value)!==0&&(t=this._getOrReturnCtx(e,t),K(t,{code:G.not_multiple_of,multipleOf:r.value,message:r.message}),n.dirty()):r.kind===`finite`?Number.isFinite(e.data)||(t=this._getOrReturnCtx(e,t),K(t,{code:G.not_finite,message:r.message}),n.dirty()):U.assertNever(r);return{status:n.value,value:e.data}}gte(e,t){return this.setLimit(`min`,e,!0,J.toString(t))}gt(e,t){return this.setLimit(`min`,e,!1,J.toString(t))}lte(e,t){return this.setLimit(`max`,e,!0,J.toString(t))}lt(e,t){return this.setLimit(`max`,e,!1,J.toString(t))}setLimit(t,n,r,i){return new e({...this._def,checks:[...this._def.checks,{kind:t,value:n,inclusive:r,message:J.toString(i)}]})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}int(e){return this._addCheck({kind:`int`,message:J.toString(e)})}positive(e){return this._addCheck({kind:`min`,value:0,inclusive:!1,message:J.toString(e)})}negative(e){return this._addCheck({kind:`max`,value:0,inclusive:!1,message:J.toString(e)})}nonpositive(e){return this._addCheck({kind:`max`,value:0,inclusive:!0,message:J.toString(e)})}nonnegative(e){return this._addCheck({kind:`min`,value:0,inclusive:!0,message:J.toString(e)})}multipleOf(e,t){return this._addCheck({kind:`multipleOf`,value:e,message:J.toString(t)})}finite(e){return this._addCheck({kind:`finite`,message:J.toString(e)})}safe(e){return this._addCheck({kind:`min`,inclusive:!0,value:-(2**53-1),message:J.toString(e)})._addCheck({kind:`max`,inclusive:!0,value:2**53-1,message:J.toString(e)})}get minValue(){let e=null;for(let t of this._def.checks)t.kind===`min`&&(e===null||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(let t of this._def.checks)t.kind===`max`&&(e===null||t.value<e)&&(e=t.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind===`int`||e.kind===`multipleOf`&&U.isInteger(e.value))}get isFinite(){let e=null,t=null;for(let n of this._def.checks)if(n.kind===`finite`||n.kind===`int`||n.kind===`multipleOf`)return!0;else n.kind===`min`?(t===null||n.value>t)&&(t=n.value):n.kind===`max`&&(e===null||n.value<e)&&(e=n.value);return Number.isFinite(t)&&Number.isFinite(e)}};jv.create=e=>new jv({checks:[],typeName:Z.ZodNumber,coerce:e?.coerce||!1,...Y(e)});var Mv=class e extends X{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)!==W.bigint)return this._getInvalidInput(e);let t,n=new Z_;for(let r of this._def.checks)r.kind===`min`?(r.inclusive?e.data<r.value:e.data<=r.value)&&(t=this._getOrReturnCtx(e,t),K(t,{code:G.too_small,type:`bigint`,minimum:r.value,inclusive:r.inclusive,message:r.message}),n.dirty()):r.kind===`max`?(r.inclusive?e.data>r.value:e.data>=r.value)&&(t=this._getOrReturnCtx(e,t),K(t,{code:G.too_big,type:`bigint`,maximum:r.value,inclusive:r.inclusive,message:r.message}),n.dirty()):r.kind===`multipleOf`?e.data%r.value!==BigInt(0)&&(t=this._getOrReturnCtx(e,t),K(t,{code:G.not_multiple_of,multipleOf:r.value,message:r.message}),n.dirty()):U.assertNever(r);return{status:n.value,value:e.data}}_getInvalidInput(e){let t=this._getOrReturnCtx(e);return K(t,{code:G.invalid_type,expected:W.bigint,received:t.parsedType}),q}gte(e,t){return this.setLimit(`min`,e,!0,J.toString(t))}gt(e,t){return this.setLimit(`min`,e,!1,J.toString(t))}lte(e,t){return this.setLimit(`max`,e,!0,J.toString(t))}lt(e,t){return this.setLimit(`max`,e,!1,J.toString(t))}setLimit(t,n,r,i){return new e({...this._def,checks:[...this._def.checks,{kind:t,value:n,inclusive:r,message:J.toString(i)}]})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}positive(e){return this._addCheck({kind:`min`,value:BigInt(0),inclusive:!1,message:J.toString(e)})}negative(e){return this._addCheck({kind:`max`,value:BigInt(0),inclusive:!1,message:J.toString(e)})}nonpositive(e){return this._addCheck({kind:`max`,value:BigInt(0),inclusive:!0,message:J.toString(e)})}nonnegative(e){return this._addCheck({kind:`min`,value:BigInt(0),inclusive:!0,message:J.toString(e)})}multipleOf(e,t){return this._addCheck({kind:`multipleOf`,value:e,message:J.toString(t)})}get minValue(){let e=null;for(let t of this._def.checks)t.kind===`min`&&(e===null||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(let t of this._def.checks)t.kind===`max`&&(e===null||t.value<e)&&(e=t.value);return e}};Mv.create=e=>new Mv({checks:[],typeName:Z.ZodBigInt,coerce:e?.coerce??!1,...Y(e)});var Nv=class extends X{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==W.boolean){let t=this._getOrReturnCtx(e);return K(t,{code:G.invalid_type,expected:W.boolean,received:t.parsedType}),q}return $_(e.data)}};Nv.create=e=>new Nv({typeName:Z.ZodBoolean,coerce:e?.coerce||!1,...Y(e)});var Pv=class e extends X{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==W.date){let t=this._getOrReturnCtx(e);return K(t,{code:G.invalid_type,expected:W.date,received:t.parsedType}),q}if(Number.isNaN(e.data.getTime()))return K(this._getOrReturnCtx(e),{code:G.invalid_date}),q;let t=new Z_,n;for(let r of this._def.checks)r.kind===`min`?e.data.getTime()<r.value&&(n=this._getOrReturnCtx(e,n),K(n,{code:G.too_small,message:r.message,inclusive:!0,exact:!1,minimum:r.value,type:`date`}),t.dirty()):r.kind===`max`?e.data.getTime()>r.value&&(n=this._getOrReturnCtx(e,n),K(n,{code:G.too_big,message:r.message,inclusive:!0,exact:!1,maximum:r.value,type:`date`}),t.dirty()):U.assertNever(r);return{status:t.value,value:new Date(e.data.getTime())}}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}min(e,t){return this._addCheck({kind:`min`,value:e.getTime(),message:J.toString(t)})}max(e,t){return this._addCheck({kind:`max`,value:e.getTime(),message:J.toString(t)})}get minDate(){let e=null;for(let t of this._def.checks)t.kind===`min`&&(e===null||t.value>e)&&(e=t.value);return e==null?null:new Date(e)}get maxDate(){let e=null;for(let t of this._def.checks)t.kind===`max`&&(e===null||t.value<e)&&(e=t.value);return e==null?null:new Date(e)}};Pv.create=e=>new Pv({checks:[],coerce:e?.coerce||!1,typeName:Z.ZodDate,...Y(e)});var Fv=class extends X{_parse(e){if(this._getType(e)!==W.symbol){let t=this._getOrReturnCtx(e);return K(t,{code:G.invalid_type,expected:W.symbol,received:t.parsedType}),q}return $_(e.data)}};Fv.create=e=>new Fv({typeName:Z.ZodSymbol,...Y(e)});var Iv=class extends X{_parse(e){if(this._getType(e)!==W.undefined){let t=this._getOrReturnCtx(e);return K(t,{code:G.invalid_type,expected:W.undefined,received:t.parsedType}),q}return $_(e.data)}};Iv.create=e=>new Iv({typeName:Z.ZodUndefined,...Y(e)});var Lv=class extends X{_parse(e){if(this._getType(e)!==W.null){let t=this._getOrReturnCtx(e);return K(t,{code:G.invalid_type,expected:W.null,received:t.parsedType}),q}return $_(e.data)}};Lv.create=e=>new Lv({typeName:Z.ZodNull,...Y(e)});var Rv=class extends X{constructor(){super(...arguments),this._any=!0}_parse(e){return $_(e.data)}};Rv.create=e=>new Rv({typeName:Z.ZodAny,...Y(e)});var zv=class extends X{constructor(){super(...arguments),this._unknown=!0}_parse(e){return $_(e.data)}};zv.create=e=>new zv({typeName:Z.ZodUnknown,...Y(e)});var Bv=class extends X{_parse(e){let t=this._getOrReturnCtx(e);return K(t,{code:G.invalid_type,expected:W.never,received:t.parsedType}),q}};Bv.create=e=>new Bv({typeName:Z.ZodNever,...Y(e)});var Vv=class extends X{_parse(e){if(this._getType(e)!==W.undefined){let t=this._getOrReturnCtx(e);return K(t,{code:G.invalid_type,expected:W.void,received:t.parsedType}),q}return $_(e.data)}};Vv.create=e=>new Vv({typeName:Z.ZodVoid,...Y(e)});var Hv=class e extends X{_parse(e){let{ctx:t,status:n}=this._processInputParams(e),r=this._def;if(t.parsedType!==W.array)return K(t,{code:G.invalid_type,expected:W.array,received:t.parsedType}),q;if(r.exactLength!==null){let e=t.data.length>r.exactLength.value,i=t.data.length<r.exactLength.value;(e||i)&&(K(t,{code:e?G.too_big:G.too_small,minimum:i?r.exactLength.value:void 0,maximum:e?r.exactLength.value:void 0,type:`array`,inclusive:!0,exact:!0,message:r.exactLength.message}),n.dirty())}if(r.minLength!==null&&t.data.length<r.minLength.value&&(K(t,{code:G.too_small,minimum:r.minLength.value,type:`array`,inclusive:!0,exact:!1,message:r.minLength.message}),n.dirty()),r.maxLength!==null&&t.data.length>r.maxLength.value&&(K(t,{code:G.too_big,maximum:r.maxLength.value,type:`array`,inclusive:!0,exact:!1,message:r.maxLength.message}),n.dirty()),t.common.async)return Promise.all([...t.data].map((e,n)=>r.type._parseAsync(new iv(t,e,t.path,n)))).then(e=>Z_.mergeArray(n,e));let i=[...t.data].map((e,n)=>r.type._parseSync(new iv(t,e,t.path,n)));return Z_.mergeArray(n,i)}get element(){return this._def.type}min(t,n){return new e({...this._def,minLength:{value:t,message:J.toString(n)}})}max(t,n){return new e({...this._def,maxLength:{value:t,message:J.toString(n)}})}length(t,n){return new e({...this._def,exactLength:{value:t,message:J.toString(n)}})}nonempty(e){return this.min(1,e)}};Hv.create=(e,t)=>new Hv({type:e,minLength:null,maxLength:null,exactLength:null,typeName:Z.ZodArray,...Y(t)});function Uv(e){if(e instanceof Wv){let t={};for(let n in e.shape){let r=e.shape[n];t[n]=cy.create(Uv(r))}return new Wv({...e._def,shape:()=>t})}else if(e instanceof Hv)return new Hv({...e._def,type:Uv(e.element)});else if(e instanceof cy)return cy.create(Uv(e.unwrap()));else if(e instanceof ly)return ly.create(Uv(e.unwrap()));else if(e instanceof Xv)return Xv.create(e.items.map(e=>Uv(e)));else return e}var Wv=class e extends X{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();return this._cached={shape:e,keys:U.objectKeys(e)},this._cached}_parse(e){if(this._getType(e)!==W.object){let t=this._getOrReturnCtx(e);return K(t,{code:G.invalid_type,expected:W.object,received:t.parsedType}),q}let{status:t,ctx:n}=this._processInputParams(e),{shape:r,keys:i}=this._getCached(),a=[];if(!(this._def.catchall instanceof Bv&&this._def.unknownKeys===`strip`))for(let e in n.data)i.includes(e)||a.push(e);let o=[];for(let e of i){let t=r[e],i=n.data[e];o.push({key:{status:`valid`,value:e},value:t._parse(new iv(n,i,n.path,e)),alwaysSet:e in n.data})}if(this._def.catchall instanceof Bv){let e=this._def.unknownKeys;if(e===`passthrough`)for(let e of a)o.push({key:{status:`valid`,value:e},value:{status:`valid`,value:n.data[e]}});else if(e===`strict`)a.length>0&&(K(n,{code:G.unrecognized_keys,keys:a}),t.dirty());else if(e!==`strip`)throw Error(`Internal ZodObject error: invalid unknownKeys value.`)}else{let e=this._def.catchall;for(let t of a){let r=n.data[t];o.push({key:{status:`valid`,value:t},value:e._parse(new iv(n,r,n.path,t)),alwaysSet:t in n.data})}}return n.common.async?Promise.resolve().then(async()=>{let e=[];for(let t of o){let n=await t.key,r=await t.value;e.push({key:n,value:r,alwaysSet:t.alwaysSet})}return e}).then(e=>Z_.mergeObjectSync(t,e)):Z_.mergeObjectSync(t,o)}get shape(){return this._def.shape()}strict(t){return J.errToObj,new e({...this._def,unknownKeys:`strict`,...t===void 0?{}:{errorMap:(e,n)=>{let r=this._def.errorMap?.(e,n).message??n.defaultError;return e.code===`unrecognized_keys`?{message:J.errToObj(t).message??r}:{message:r}}}})}strip(){return new e({...this._def,unknownKeys:`strip`})}passthrough(){return new e({...this._def,unknownKeys:`passthrough`})}extend(t){return new e({...this._def,shape:()=>({...this._def.shape(),...t})})}merge(t){return new e({unknownKeys:t._def.unknownKeys,catchall:t._def.catchall,shape:()=>({...this._def.shape(),...t._def.shape()}),typeName:Z.ZodObject})}setKey(e,t){return this.augment({[e]:t})}catchall(t){return new e({...this._def,catchall:t})}pick(t){let n={};for(let e of U.objectKeys(t))t[e]&&this.shape[e]&&(n[e]=this.shape[e]);return new e({...this._def,shape:()=>n})}omit(t){let n={};for(let e of U.objectKeys(this.shape))t[e]||(n[e]=this.shape[e]);return new e({...this._def,shape:()=>n})}deepPartial(){return Uv(this)}partial(t){let n={};for(let e of U.objectKeys(this.shape)){let r=this.shape[e];t&&!t[e]?n[e]=r:n[e]=r.optional()}return new e({...this._def,shape:()=>n})}required(t){let n={};for(let e of U.objectKeys(this.shape))if(t&&!t[e])n[e]=this.shape[e];else{let t=this.shape[e];for(;t instanceof cy;)t=t._def.innerType;n[e]=t}return new e({...this._def,shape:()=>n})}keyof(){return ry(U.objectKeys(this.shape))}};Wv.create=(e,t)=>new Wv({shape:()=>e,unknownKeys:`strip`,catchall:Bv.create(),typeName:Z.ZodObject,...Y(t)}),Wv.strictCreate=(e,t)=>new Wv({shape:()=>e,unknownKeys:`strict`,catchall:Bv.create(),typeName:Z.ZodObject,...Y(t)}),Wv.lazycreate=(e,t)=>new Wv({shape:e,unknownKeys:`strip`,catchall:Bv.create(),typeName:Z.ZodObject,...Y(t)});var Gv=class extends X{_parse(e){let{ctx:t}=this._processInputParams(e),n=this._def.options;function r(e){for(let t of e)if(t.result.status===`valid`)return t.result;for(let n of e)if(n.result.status===`dirty`)return t.common.issues.push(...n.ctx.common.issues),n.result;let n=e.map(e=>new K_(e.ctx.common.issues));return K(t,{code:G.invalid_union,unionErrors:n}),q}if(t.common.async)return Promise.all(n.map(async e=>{let n={...t,common:{...t.common,issues:[]},parent:null};return{result:await e._parseAsync({data:t.data,path:t.path,parent:n}),ctx:n}})).then(r);{let e,r=[];for(let i of n){let n={...t,common:{...t.common,issues:[]},parent:null},a=i._parseSync({data:t.data,path:t.path,parent:n});if(a.status===`valid`)return a;a.status===`dirty`&&!e&&(e={result:a,ctx:n}),n.common.issues.length&&r.push(n.common.issues)}if(e)return t.common.issues.push(...e.ctx.common.issues),e.result;let i=r.map(e=>new K_(e));return K(t,{code:G.invalid_union,unionErrors:i}),q}}get options(){return this._def.options}};Gv.create=(e,t)=>new Gv({options:e,typeName:Z.ZodUnion,...Y(t)});const Kv=e=>e instanceof ty?Kv(e.schema):e instanceof sy?Kv(e.innerType()):e instanceof ny?[e.value]:e instanceof iy?e.options:e instanceof ay?U.objectValues(e.enum):e instanceof uy?Kv(e._def.innerType):e instanceof Iv?[void 0]:e instanceof Lv?[null]:e instanceof cy?[void 0,...Kv(e.unwrap())]:e instanceof ly?[null,...Kv(e.unwrap())]:e instanceof py||e instanceof hy?Kv(e.unwrap()):e instanceof dy?Kv(e._def.innerType):[];var qv=class e extends X{_parse(e){let{ctx:t}=this._processInputParams(e);if(t.parsedType!==W.object)return K(t,{code:G.invalid_type,expected:W.object,received:t.parsedType}),q;let n=this.discriminator,r=t.data[n],i=this.optionsMap.get(r);return i?t.common.async?i._parseAsync({data:t.data,path:t.path,parent:t}):i._parseSync({data:t.data,path:t.path,parent:t}):(K(t,{code:G.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),q)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(t,n,r){let i=new Map;for(let e of n){let n=Kv(e.shape[t]);if(!n.length)throw Error(`A discriminator value for key \`${t}\` could not be extracted from all schema options`);for(let r of n){if(i.has(r))throw Error(`Discriminator property ${String(t)} has duplicate value ${String(r)}`);i.set(r,e)}}return new e({typeName:Z.ZodDiscriminatedUnion,discriminator:t,options:n,optionsMap:i,...Y(r)})}};function Jv(e,t){let n=G_(e),r=G_(t);if(e===t)return{valid:!0,data:e};if(n===W.object&&r===W.object){let n=U.objectKeys(t),r=U.objectKeys(e).filter(e=>n.indexOf(e)!==-1),i={...e,...t};for(let n of r){let r=Jv(e[n],t[n]);if(!r.valid)return{valid:!1};i[n]=r.data}return{valid:!0,data:i}}else if(n===W.array&&r===W.array){if(e.length!==t.length)return{valid:!1};let n=[];for(let r=0;r<e.length;r++){let i=e[r],a=t[r],o=Jv(i,a);if(!o.valid)return{valid:!1};n.push(o.data)}return{valid:!0,data:n}}else if(n===W.date&&r===W.date&&+e==+t)return{valid:!0,data:e};else return{valid:!1}}var Yv=class extends X{_parse(e){let{status:t,ctx:n}=this._processInputParams(e),r=(e,r)=>{if(ev(e)||ev(r))return q;let i=Jv(e.value,r.value);return i.valid?((tv(e)||tv(r))&&t.dirty(),{status:t.value,value:i.data}):(K(n,{code:G.invalid_intersection_types}),q)};return n.common.async?Promise.all([this._def.left._parseAsync({data:n.data,path:n.path,parent:n}),this._def.right._parseAsync({data:n.data,path:n.path,parent:n})]).then(([e,t])=>r(e,t)):r(this._def.left._parseSync({data:n.data,path:n.path,parent:n}),this._def.right._parseSync({data:n.data,path:n.path,parent:n}))}};Yv.create=(e,t,n)=>new Yv({left:e,right:t,typeName:Z.ZodIntersection,...Y(n)});var Xv=class e extends X{_parse(e){let{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==W.array)return K(n,{code:G.invalid_type,expected:W.array,received:n.parsedType}),q;if(n.data.length<this._def.items.length)return K(n,{code:G.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:`array`}),q;!this._def.rest&&n.data.length>this._def.items.length&&(K(n,{code:G.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:`array`}),t.dirty());let r=[...n.data].map((e,t)=>{let r=this._def.items[t]||this._def.rest;return r?r._parse(new iv(n,e,n.path,t)):null}).filter(e=>!!e);return n.common.async?Promise.all(r).then(e=>Z_.mergeArray(t,e)):Z_.mergeArray(t,r)}get items(){return this._def.items}rest(t){return new e({...this._def,rest:t})}};Xv.create=(e,t)=>{if(!Array.isArray(e))throw Error(`You must pass an array of schemas to z.tuple([ ... ])`);return new Xv({items:e,typeName:Z.ZodTuple,rest:null,...Y(t)})};var Zv=class e extends X{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==W.object)return K(n,{code:G.invalid_type,expected:W.object,received:n.parsedType}),q;let r=[],i=this._def.keyType,a=this._def.valueType;for(let e in n.data)r.push({key:i._parse(new iv(n,e,n.path,e)),value:a._parse(new iv(n,n.data[e],n.path,e)),alwaysSet:e in n.data});return n.common.async?Z_.mergeObjectAsync(t,r):Z_.mergeObjectSync(t,r)}get element(){return this._def.valueType}static create(t,n,r){return n instanceof X?new e({keyType:t,valueType:n,typeName:Z.ZodRecord,...Y(r)}):new e({keyType:kv.create(),valueType:t,typeName:Z.ZodRecord,...Y(n)})}},Qv=class extends X{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==W.map)return K(n,{code:G.invalid_type,expected:W.map,received:n.parsedType}),q;let r=this._def.keyType,i=this._def.valueType,a=[...n.data.entries()].map(([e,t],a)=>({key:r._parse(new iv(n,e,n.path,[a,`key`])),value:i._parse(new iv(n,t,n.path,[a,`value`]))}));if(n.common.async){let e=new Map;return Promise.resolve().then(async()=>{for(let n of a){let r=await n.key,i=await n.value;if(r.status===`aborted`||i.status===`aborted`)return q;(r.status===`dirty`||i.status===`dirty`)&&t.dirty(),e.set(r.value,i.value)}return{status:t.value,value:e}})}else{let e=new Map;for(let n of a){let r=n.key,i=n.value;if(r.status===`aborted`||i.status===`aborted`)return q;(r.status===`dirty`||i.status===`dirty`)&&t.dirty(),e.set(r.value,i.value)}return{status:t.value,value:e}}}};Qv.create=(e,t,n)=>new Qv({valueType:t,keyType:e,typeName:Z.ZodMap,...Y(n)});var $v=class e extends X{_parse(e){let{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==W.set)return K(n,{code:G.invalid_type,expected:W.set,received:n.parsedType}),q;let r=this._def;r.minSize!==null&&n.data.size<r.minSize.value&&(K(n,{code:G.too_small,minimum:r.minSize.value,type:`set`,inclusive:!0,exact:!1,message:r.minSize.message}),t.dirty()),r.maxSize!==null&&n.data.size>r.maxSize.value&&(K(n,{code:G.too_big,maximum:r.maxSize.value,type:`set`,inclusive:!0,exact:!1,message:r.maxSize.message}),t.dirty());let i=this._def.valueType;function a(e){let n=new Set;for(let r of e){if(r.status===`aborted`)return q;r.status===`dirty`&&t.dirty(),n.add(r.value)}return{status:t.value,value:n}}let o=[...n.data.values()].map((e,t)=>i._parse(new iv(n,e,n.path,t)));return n.common.async?Promise.all(o).then(e=>a(e)):a(o)}min(t,n){return new e({...this._def,minSize:{value:t,message:J.toString(n)}})}max(t,n){return new e({...this._def,maxSize:{value:t,message:J.toString(n)}})}size(e,t){return this.min(e,t).max(e,t)}nonempty(e){return this.min(1,e)}};$v.create=(e,t)=>new $v({valueType:e,minSize:null,maxSize:null,typeName:Z.ZodSet,...Y(t)});var ey=class e extends X{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:t}=this._processInputParams(e);if(t.parsedType!==W.function)return K(t,{code:G.invalid_type,expected:W.function,received:t.parsedType}),q;function n(e,n){return X_({data:e,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,Y_(),q_].filter(e=>!!e),issueData:{code:G.invalid_arguments,argumentsError:n}})}function r(e,n){return X_({data:e,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,Y_(),q_].filter(e=>!!e),issueData:{code:G.invalid_return_type,returnTypeError:n}})}let i={errorMap:t.common.contextualErrorMap},a=t.data;if(this._def.returns instanceof oy){let e=this;return $_(async function(...t){let o=new K_([]),s=await e._def.args.parseAsync(t,i).catch(e=>{throw o.addIssue(n(t,e)),o}),c=await Reflect.apply(a,this,s);return await e._def.returns._def.type.parseAsync(c,i).catch(e=>{throw o.addIssue(r(c,e)),o})})}else{let e=this;return $_(function(...t){let o=e._def.args.safeParse(t,i);if(!o.success)throw new K_([n(t,o.error)]);let s=Reflect.apply(a,this,o.data),c=e._def.returns.safeParse(s,i);if(!c.success)throw new K_([r(s,c.error)]);return c.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...t){return new e({...this._def,args:Xv.create(t).rest(zv.create())})}returns(t){return new e({...this._def,returns:t})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(t,n,r){return new e({args:t||Xv.create([]).rest(zv.create()),returns:n||zv.create(),typeName:Z.ZodFunction,...Y(r)})}},ty=class extends X{get schema(){return this._def.getter()}_parse(e){let{ctx:t}=this._processInputParams(e);return this._def.getter()._parse({data:t.data,path:t.path,parent:t})}};ty.create=(e,t)=>new ty({getter:e,typeName:Z.ZodLazy,...Y(t)});var ny=class extends X{_parse(e){if(e.data!==this._def.value){let t=this._getOrReturnCtx(e);return K(t,{received:t.data,code:G.invalid_literal,expected:this._def.value}),q}return{status:`valid`,value:e.data}}get value(){return this._def.value}};ny.create=(e,t)=>new ny({value:e,typeName:Z.ZodLiteral,...Y(t)});function ry(e,t){return new iy({values:e,typeName:Z.ZodEnum,...Y(t)})}var iy=class e extends X{_parse(e){if(typeof e.data!=`string`){let t=this._getOrReturnCtx(e),n=this._def.values;return K(t,{expected:U.joinValues(n),received:t.parsedType,code:G.invalid_type}),q}if(this._cache||=new Set(this._def.values),!this._cache.has(e.data)){let t=this._getOrReturnCtx(e),n=this._def.values;return K(t,{received:t.data,code:G.invalid_enum_value,options:n}),q}return $_(e.data)}get options(){return this._def.values}get enum(){let e={};for(let t of this._def.values)e[t]=t;return e}get Values(){let e={};for(let t of this._def.values)e[t]=t;return e}get Enum(){let e={};for(let t of this._def.values)e[t]=t;return e}extract(t,n=this._def){return e.create(t,{...this._def,...n})}exclude(t,n=this._def){return e.create(this.options.filter(e=>!t.includes(e)),{...this._def,...n})}};iy.create=ry;var ay=class extends X{_parse(e){let t=U.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==W.string&&n.parsedType!==W.number){let e=U.objectValues(t);return K(n,{expected:U.joinValues(e),received:n.parsedType,code:G.invalid_type}),q}if(this._cache||=new Set(U.getValidEnumValues(this._def.values)),!this._cache.has(e.data)){let e=U.objectValues(t);return K(n,{received:n.data,code:G.invalid_enum_value,options:e}),q}return $_(e.data)}get enum(){return this._def.values}};ay.create=(e,t)=>new ay({values:e,typeName:Z.ZodNativeEnum,...Y(t)});var oy=class extends X{unwrap(){return this._def.type}_parse(e){let{ctx:t}=this._processInputParams(e);return t.parsedType!==W.promise&&t.common.async===!1?(K(t,{code:G.invalid_type,expected:W.promise,received:t.parsedType}),q):$_((t.parsedType===W.promise?t.data:Promise.resolve(t.data)).then(e=>this._def.type.parseAsync(e,{path:t.path,errorMap:t.common.contextualErrorMap})))}};oy.create=(e,t)=>new oy({type:e,typeName:Z.ZodPromise,...Y(t)});var sy=class extends X{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:t,ctx:n}=this._processInputParams(e),r=this._def.effect||null,i={addIssue:e=>{K(n,e),e.fatal?t.abort():t.dirty()},get path(){return n.path}};if(i.addIssue=i.addIssue.bind(i),r.type===`preprocess`){let e=r.transform(n.data,i);if(n.common.async)return Promise.resolve(e).then(async e=>{if(t.value===`aborted`)return q;let r=await this._def.schema._parseAsync({data:e,path:n.path,parent:n});return r.status===`aborted`?q:r.status===`dirty`||t.value===`dirty`?Q_(r.value):r});{if(t.value===`aborted`)return q;let r=this._def.schema._parseSync({data:e,path:n.path,parent:n});return r.status===`aborted`?q:r.status===`dirty`||t.value===`dirty`?Q_(r.value):r}}if(r.type===`refinement`){let e=e=>{let t=r.refinement(e,i);if(n.common.async)return Promise.resolve(t);if(t instanceof Promise)throw Error(`Async refinement encountered during synchronous parse operation. Use .parseAsync instead.`);return e};if(n.common.async===!1){let r=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});return r.status===`aborted`?q:(r.status===`dirty`&&t.dirty(),e(r.value),{status:t.value,value:r.value})}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(n=>n.status===`aborted`?q:(n.status===`dirty`&&t.dirty(),e(n.value).then(()=>({status:t.value,value:n.value}))))}if(r.type===`transform`)if(n.common.async===!1){let e=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});if(!nv(e))return q;let a=r.transform(e.value,i);if(a instanceof Promise)throw Error(`Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.`);return{status:t.value,value:a}}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(e=>nv(e)?Promise.resolve(r.transform(e.value,i)).then(e=>({status:t.value,value:e})):q);U.assertNever(r)}};sy.create=(e,t,n)=>new sy({schema:e,typeName:Z.ZodEffects,effect:t,...Y(n)}),sy.createWithPreprocess=(e,t,n)=>new sy({schema:t,effect:{type:`preprocess`,transform:e},typeName:Z.ZodEffects,...Y(n)});var cy=class extends X{_parse(e){return this._getType(e)===W.undefined?$_(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};cy.create=(e,t)=>new cy({innerType:e,typeName:Z.ZodOptional,...Y(t)});var ly=class extends X{_parse(e){return this._getType(e)===W.null?$_(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};ly.create=(e,t)=>new ly({innerType:e,typeName:Z.ZodNullable,...Y(t)});var uy=class extends X{_parse(e){let{ctx:t}=this._processInputParams(e),n=t.data;return t.parsedType===W.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:t.path,parent:t})}removeDefault(){return this._def.innerType}};uy.create=(e,t)=>new uy({innerType:e,typeName:Z.ZodDefault,defaultValue:typeof t.default==`function`?t.default:()=>t.default,...Y(t)});var dy=class extends X{_parse(e){let{ctx:t}=this._processInputParams(e),n={...t,common:{...t.common,issues:[]}},r=this._def.innerType._parse({data:n.data,path:n.path,parent:{...n}});return rv(r)?r.then(e=>({status:`valid`,value:e.status===`valid`?e.value:this._def.catchValue({get error(){return new K_(n.common.issues)},input:n.data})})):{status:`valid`,value:r.status===`valid`?r.value:this._def.catchValue({get error(){return new K_(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};dy.create=(e,t)=>new dy({innerType:e,typeName:Z.ZodCatch,catchValue:typeof t.catch==`function`?t.catch:()=>t.catch,...Y(t)});var fy=class extends X{_parse(e){if(this._getType(e)!==W.nan){let t=this._getOrReturnCtx(e);return K(t,{code:G.invalid_type,expected:W.nan,received:t.parsedType}),q}return{status:`valid`,value:e.data}}};fy.create=e=>new fy({typeName:Z.ZodNaN,...Y(e)});var py=class extends X{_parse(e){let{ctx:t}=this._processInputParams(e),n=t.data;return this._def.type._parse({data:n,path:t.path,parent:t})}unwrap(){return this._def.type}},my=class e extends X{_parse(e){let{status:t,ctx:n}=this._processInputParams(e);if(n.common.async)return(async()=>{let e=await this._def.in._parseAsync({data:n.data,path:n.path,parent:n});return e.status===`aborted`?q:e.status===`dirty`?(t.dirty(),Q_(e.value)):this._def.out._parseAsync({data:e.value,path:n.path,parent:n})})();{let e=this._def.in._parseSync({data:n.data,path:n.path,parent:n});return e.status===`aborted`?q:e.status===`dirty`?(t.dirty(),{status:`dirty`,value:e.value}):this._def.out._parseSync({data:e.value,path:n.path,parent:n})}}static create(t,n){return new e({in:t,out:n,typeName:Z.ZodPipeline})}},hy=class extends X{_parse(e){let t=this._def.innerType._parse(e),n=e=>(nv(e)&&(e.value=Object.freeze(e.value)),e);return rv(t)?t.then(e=>n(e)):n(t)}unwrap(){return this._def.innerType}};hy.create=(e,t)=>new hy({innerType:e,typeName:Z.ZodReadonly,...Y(t)}),Wv.lazycreate;var Z;(function(e){e.ZodString=`ZodString`,e.ZodNumber=`ZodNumber`,e.ZodNaN=`ZodNaN`,e.ZodBigInt=`ZodBigInt`,e.ZodBoolean=`ZodBoolean`,e.ZodDate=`ZodDate`,e.ZodSymbol=`ZodSymbol`,e.ZodUndefined=`ZodUndefined`,e.ZodNull=`ZodNull`,e.ZodAny=`ZodAny`,e.ZodUnknown=`ZodUnknown`,e.ZodNever=`ZodNever`,e.ZodVoid=`ZodVoid`,e.ZodArray=`ZodArray`,e.ZodObject=`ZodObject`,e.ZodUnion=`ZodUnion`,e.ZodDiscriminatedUnion=`ZodDiscriminatedUnion`,e.ZodIntersection=`ZodIntersection`,e.ZodTuple=`ZodTuple`,e.ZodRecord=`ZodRecord`,e.ZodMap=`ZodMap`,e.ZodSet=`ZodSet`,e.ZodFunction=`ZodFunction`,e.ZodLazy=`ZodLazy`,e.ZodLiteral=`ZodLiteral`,e.ZodEnum=`ZodEnum`,e.ZodEffects=`ZodEffects`,e.ZodNativeEnum=`ZodNativeEnum`,e.ZodOptional=`ZodOptional`,e.ZodNullable=`ZodNullable`,e.ZodDefault=`ZodDefault`,e.ZodCatch=`ZodCatch`,e.ZodPromise=`ZodPromise`,e.ZodBranded=`ZodBranded`,e.ZodPipeline=`ZodPipeline`,e.ZodReadonly=`ZodReadonly`})(Z||={});const Q=kv.create;jv.create,fy.create,Mv.create;const gy=Nv.create;Pv.create,Fv.create,Iv.create,Lv.create;const _y=Rv.create;zv.create,Bv.create,Vv.create;const vy=Hv.create,$=Wv.create;Wv.strictCreate,Gv.create;const yy=qv.create;Yv.create,Xv.create;const by=Zv.create;Qv.create,$v.create,ey.create,ty.create;const xy=ny.create,Sy=iy.create;ay.create,oy.create,sy.create,cy.create,ly.create,sy.createWithPreprocess,my.create;const Cy=Sy([`registry:lib`,`registry:block`,`registry:component`,`registry:ui`,`registry:hook`,`registry:page`,`registry:file`,`registry:theme`,`registry:style`,`registry:item`,`registry:example`,`registry:internal`]).describe(`The type property is used to specify the type of your registry item. This is used to determine the type and target path of the item when resolved for a project.`);yy(`type`,[$({path:Q(),content:Q().optional(),type:Cy.extract([`registry:file`,`registry:page`]),target:Q()}),$({path:Q(),content:Q().optional(),type:Cy.exclude([`registry:file`,`registry:page`]),target:Q().optional()})]);const wy=$({$schema:Q().optional(),extends:Q().optional(),title:Q().optional(),author:Q().optional(),description:Q().optional(),dependencies:vy(Q()).optional(),devDependencies:vy(Q()).optional(),registryDependencies:vy(Q()).optional(),tailwind:$({config:$({content:vy(Q()).optional(),theme:by(Q(),_y()).optional(),plugins:vy(Q()).optional()}).optional()}).optional(),cssVars:$({theme:by(Q(),Q()).optional(),light:by(Q(),Q()).optional(),dark:by(Q(),Q()).optional()}).optional(),css:by(Q(),_y()).optional(),envVars:by(Q(),Q()).optional(),meta:by(Q(),_y()).optional(),categories:vy(Q()).optional()}),Ty=yy(`type`,[$({sourceFileName:Q(),destinationPath:Q().optional(),type:Cy.extract([`registry:file`,`registry:page`]),handlebars:gy().optional()}),$({sourceFileName:Q(),destinationPath:Q().optional(),type:Cy.exclude([`registry:file`,`registry:page`]),handlebars:gy().optional()})]),Ey=(e,t)=>$({action:xy(e),data:t,_from:Q().optional()}),Dy=yy(`action`,[Ey(`next-steps`,$({message:Q()})),Ey(`package.json script`,$({scriptName:Q(),scriptCommand:Q()})),Ey(`env`,$({envs:$({name:Q(),zodValue:Q(),defaultValue:Q().optional().describe("This value will be added to the .env file, unless `addToRuntimeEnv` is set to `false`."),type:Sy([`server`,`client`]),addToRuntimeEnv:gy().optional().describe(`Whether to add the env to the runtime env.`)}).array()})),Ey(`wrap provider`,$({providerOpenTag:Q().describe(`The opening tag to use for the provider. This is used to wrap the provider in the correct location.`),providerCloseTag:Q().describe(`The closing tag to use for the provider.`),imports:vy($({moduleSpecifier:Q().describe(`The module to import from (e.g., '@/config/query-provider')`),defaultImport:Q().optional().describe(`The default import name (e.g., 'QueryProvider')`),namedImports:vy(Q()).optional().describe(`Array of named imports (e.g., ['QueryProvider', 'useQuery'])`)})).describe(`Array of import configurations for the provider. Each import should have either defaultImport or namedImports.`),parentTag:vy(Q()).optional().describe(`If set, the provider will attempt to go inside of the parent tag. The first found tag will be used as the parent. If not set or none of the tags are found, the provider will be wrapped at the very top level.`)}))]),Oy=Sy([`component`,`page`,`utility`,`hook`,`email`]),ky=Sy([`next-pages`,`next-app`,`manual`]),Ay=wy.extend({title:Q(),description:Q().optional(),category:Oy,files:vy(Ty),registryType:Cy,postInstall:vy(Dy).optional().describe(`Steps that should be run by the ProofKit CLI after shadcn CLI is done`),minimumProofKitVersion:Q().describe(`The minimum version of ProofKit required to use this template`).optional(),allowedFrameworks:vy(ky).optional(),schemaRequired:gy().optional().describe(`Whether this template requires a database schema to be selected`)}),jy=$({name:Q(),title:Q(),category:Oy,description:Q().optional()}).array(),My=m(import.meta.url),Ny=d.dirname(My);d.resolve(Ny,`../templates`);function Py(e){return e.replace(/^\/+|\/+$/g,``)}function Fy(e){return(e.registryDependencies??[]).filter(e=>e.startsWith(`{proofkit}/r/`)).map(e=>e.replace(`{proofkit}/r/`,``)).map(Py)}const Iy={"{{schema.schemaName}}":`__HB_SCHEMA_NAME__`,"{{schema.sourceName}}":`__HB_SOURCE_NAME__`,"{{schema.clientSuffix}}":`__HB_CLIENT_SUFFIX__`};function Ly(e){let t=e;for(let[e,n]of Object.entries(Iy))t=t.replace(new RegExp(Ry(n),`g`),e);return t}function Ry(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}async function zy(e,t){let n=[`shadcn@latest`,`add`,...Array.isArray(e)?e:[e]];try{await f(`pnpm`,[`dlx`,...n],{stdio:`inherit`,cwd:R.projectDir??process.cwd()})}catch(e){throw z.error(`Failed to run shadcn add: ${e}`),e}}function By(){let e;try{e=V().registryUrl??`https://proofkit.dev`}catch{e=`https://proofkit.dev`}return e.endsWith(`/`)?e.slice(0,-1):e}function Vy(){let e=d.join(R.projectDir,`components.json`);return JSON.parse(h.readFileSync(e,`utf8`))}const Hy=je({"@get/meta/:name":{output:Ay},"@get/":{output:jy}}),Uy=Ae({baseURL:`${By()}/r`,schema:Hy});async function Wy(e){let t=await Uy(`@get/meta/:name`,{params:{name:e}});if(t.error){if(t.error.status===404)return null;throw Error(t.error.message)}return t.data}Me.registerHelper(`eq`,(e,t)=>e===t),Me.registerHelper(`findFirst`,function(e,t,n){if(!(e&&Array.isArray(e)))return n.inverse(this);for(let r of e)if(t===`fm`&&r.type===`fm`)return n.fn(r);return n.inverse(this)});const Gy=[`id`,`pk`,`createdat`,`updatedat`,`primarykey`,`createdby`,`modifiedby`,`creationtimestamp`,`modificationtimestamp`];function Ky(e){return e.filter(e=>!Gy.includes(e.toLowerCase())||e.startsWith(`_`))}function qy(e){let{dataSource:t,schemaName:n}=e,r=Ah({projectDir:R.projectDir??process.cwd(),dataSourceName:t.name}),i=Nh({schemaName:n,dataSourceName:t.name}).filter(Boolean);return{sourceName:t.name,schemaName:n,clientSuffix:r,allFieldNames:i,fieldNames:Ky(i)}}function Jy(e){return{proofkit:V(),shadcn:Vy(),schema:e?qy(e):{sourceName:`UnknownDataSource`,schemaName:`UnknownSchema`,clientSuffix:`UnknownClientSuffix`,allFieldNames:[`UnknownFieldName`],fieldNames:[`UnknownFieldName`]}}}async function Yy(e,t){let n=Xy(e,t),r=await p.readFile(n,`utf8`);r=Ly(r);let i=Me.compile(r)(t);await p.writeFile(n,i)}function Xy(e,t){let n=e.sourceFileName;if(e.destinationPath)return e.destinationPath;let r=R.projectDir??process.cwd(),{shadcn:i}=t,a=`src/components/blocks`;i?.aliases?.components&&(a=i.aliases.components.startsWith(`@/`)?`${i.aliases.components.replace(`@/`,`src/`)}/blocks`:`src/${i.aliases.components}/blocks`);let o={"registry:lib":i?.aliases?.lib||i?.aliases?.utils,"registry:component":i?.aliases?.components,"registry:ui":i?.aliases?.ui||i?.aliases?.components,"registry:hook":i?.aliases?.hooks,"registry:file":`src`,"registry:page":`src/app`,"registry:block":a,"registry:theme":`src/theme`,"registry:style":`src/styles`}[e.type];if(o){if(o.startsWith(`@/`)){let e=o.replace(`@/`,`src/`);return d.join(r,e,n)}return o.startsWith(`/`)||o.includes(`src/`)?d.join(r,o,n):d.join(r,`src`,o,n)}switch(e.type){case`registry:lib`:return d.join(r,`src`,`lib`,n);case`registry:file`:return d.join(r,`src`,n);case`registry:page`:{let e=`routeName`in t?t.routeName:void 0;if(e){let t=e===`/`?``:e;return d.join(r,`src`,`app`,`(main)`,t,n)}return d.join(r,`src`,`app`,n)}case`registry:block`:return d.join(r,`src`,`components`,`blocks`,n);case`registry:component`:return d.join(r,`src`,`components`,n);case`registry:ui`:return d.join(r,`src`,`components`,n);case`registry:hook`:return d.join(r,`src`,`hooks`,n);case`registry:theme`:return d.join(r,`src`,`theme`,n);case`registry:style`:return d.join(r,`src`,`styles`,n);default:return n}}function Zy(e){let t=d.join(R.projectDir,`package.json`),n=JSON.parse(h.readFileSync(t,`utf8`));n.scripts[e.data.scriptName]=e.data.scriptCommand,h.writeFileSync(t,JSON.stringify(n,null,2))}async function Qy(e){let{parentTag:t,imports:n,providerCloseTag:r,providerOpenTag:i}=e.data;try{let e=R.projectDir,a=th(e),o=(e=>e.startsWith(`@/`)?e.replace(`@/`,`src/`):e.startsWith(`./`)?e.substring(2):e)(Vy().aliases.components),s=d.join(e,o,`providers.tsx`),c=a.addSourceFileAtPath(s);for(let e of n){let t={moduleSpecifier:e.moduleSpecifier,kind:oe.ImportDeclaration};e.defaultImport&&(t.defaultImport=e.defaultImport),e.namedImports&&e.namedImports.length>0&&(t.namedImports=e.namedImports),c.addImportDeclaration(t)}let l=c.getFunction(e=>e.isDefaultExport());if(!l){z.warn(`No default export function found in ${s}`);return}let u=l?.getBody()?.getFirstDescendantByKind(g.ReturnStatement);if(!u){z.warn(`No return statement found in default export function`);return}let f;if(t&&t.length>0){for(let e of t)if(f=u?.getDescendantsOfKind(g.JsxOpeningElement).find(t=>t.getTagNameNode().getText()===e)?.getParentIfKind(g.JsxElement),f)break}if(f){let e=`${i}
|
|
112
|
-
${f?.getJsxChildren().map(e=>e.getText()).filter(Boolean).join(`
|
|
113
|
-
`)}
|
|
114
|
-
${r}`;f.getChildSyntaxList()?.replaceWithText(e)}else{let e=u?.getExpression();if(e){let t=e.getKind()===g.ParenthesizedExpression,n;n=t?e.asKindOrThrow(g.ParenthesizedExpression).getExpression().getText():e.getText();let a=`return (
|
|
115
|
-
${i}
|
|
116
|
-
${n}
|
|
117
|
-
${r}
|
|
118
|
-
);`;u?.replaceWithText(a)}else z.warn(`No return expression found to wrap`)}await $m(a),z.success(`Successfully wrapped provider in ${s}`)}catch(e){throw z.error(`Failed to wrap provider: ${e}`),e}}async function $y(e){e.action===`package.json script`?Zy(e):e.action===`wrap provider`?await Qy(e):e.action===`next-steps`?z.info(e.data.message):e.action===`env`?await nh({envs:e.data.envs}):z.error(`Unknown post-install step: ${e}`)}async function eb(){await p.pathExists(`proofkit.json`)||(yh(gh),bh())}async function tb(){let e=R.projectDir??process.cwd();if(!await p.pathExists(d.join(e,`components.json`)))throw Error("Shadcn is not installed. Please run `pnpm dlx shadcn@latest init` to install it.");await eb()}async function nb({projectDir:t=process.cwd(),dataSource:n}){if(n.type===`supabase`)throw Error(`Not implemented`);let r=jh({projectDir:t,dataSourceName:n.name}).map(e=>e.schemaName).filter(Boolean);if(r.length===0){e.cancel(`This data source doesn't have any schemas to load data from`);return}return r.length===1?r[0]:H(await e.select({message:`Which schema should this template use?`,options:r.map(e=>({label:e,value:e??``}))}))}async function rb(t){let n=re(`Validating template`).start();try{await tb();let r=await Wy(t);if(!r){n.fail(`Template ${t} not found in the ProofKit registry`);return}if(r.minimumProofKitVersion&&ye.gt(r.minimumProofKitVersion,Fe())){z.error(`Template ${t} requires ProofKit version ${r.minimumProofKitVersion}, but you are using version ${Fe()}`),n.fail(`Template is not compatible with your ProofKit version`);return}n.succeed();let i=Fy(r),a=V().registryTemplates,o,s,c,l;if(r.schemaRequired){let t=V();if(t.dataSources.length===0){n.fail(`This template requires a data source, but you don't have any. Add a data source first.`);return}let r=t.dataSources.length>1?H(await e.select({message:`Which data source should be used for this template?`,options:t.dataSources.map(e=>({value:e.name,label:e.name}))})):t.dataSources[0]?.name;if(o=t.dataSources.find(e=>e.name===r),!o){n.fail(`Data source ${r} not found`);return}if(s=await nb({projectDir:R.projectDir,dataSource:o}),!s){n.fail(`Schema selection was cancelled`);return}}r.category===`page`&&(c=H(await e.text({message:`Enter the URL PATH for your new page`,placeholder:`/my-page`,validate:e=>{if(e.length===0)return`URL path is required`}})),c.startsWith(`/`)&&(c=c.slice(1)),l=De(c.replace(`/`,``).trim()));let u=new URL(`${By()}/r/${t}`);r.category===`page`&&u.searchParams.set(`routeName`,`/(main)/${c??t}`),t===`fmdapi`&&!a.includes(`utils/t3-env`)&&r.registryDependencies?.find(e=>e.includes(`utils/t3-env`))===void 0&&(await rb(`utils/t3-env`),a=V().registryTemplates),await zy([u.toString()],r.title);let d=r.files.filter(e=>e.handlebars);if(d.length>0){let e={...o&&s?Jy({dataSource:o,schemaName:s}):Jy(),...c&&{routeName:c},...l&&{pageName:l}},n=d.map(e=>({...e,destinationPath:e.destinationPath?.replace(`__PATH__`,`/(main)/${c??t}`)}));for(let t of n)await Yy(t,e)}if(r.category===`page`&&c&&l&&await B_({projectDir:R.projectDir,navType:`primary`,label:l,href:`/${c}`}),r.postInstall)for(let e of r.postInstall)e._from&&a.includes(e._from)||await $y(e);vh({registryTemplates:ke([...a,t,...i])})}catch(e){n.fail(`Failed to fetch template metadata.`),z.error(e)}}async function ib(){let{data:e,error:t}=await Uy(`@get/`);if(t)throw Error(`Failed to fetch items from registry: ${t.message}`);return e}const ab=async e=>{let t=V(),n=re(`Loading available components...`).start(),r;try{r=await ib()}catch(e){n.fail(`Failed to load registry components`),z.error(e);return}let i=r.filter(e=>!t.registryTemplates.includes(e.name)),a=Oe(i,e=>e.category),s=ke(i.map(e=>e.category));n.succeed();let c=H(await o({message:`What do you want to add to your project?`,options:[...s.includes(`page`)?[{label:`Page`,value:`page`}]:[],...t.dataSources.length>0?[{label:`Schema`,value:`schema`,hint:`load data from a new table or layout from an existing data source`}]:[],{label:`Data Source`,value:`data`,hint:`to connect to a new database or FileMaker file`},...s.filter(e=>e!==`page`).map(e=>({label:De(e),value:e}))]}));if(c===`schema`)await f_();else if(c===`data`)await A_();else if(s.includes(c)){let e=a[c];await rb(H(await o({message:`Select a ${c} to add to your project`,options:e.map(e=>({label:e.title,hint:e.description,value:e.name}))})))}else z.error(`Could not find any available components in the category "${c}"`)},ob=async(e,t)=>{if(e===`tanstack-query`)return await E_();if(e!==void 0)return await rb(e);let n;try{n=V()}catch{return await tb(),await ab(t)}if(n.ui===`shadcn`)return await ab(t);xh({commandName:`add`});let r=H(await o({message:`What do you want to add to your project?`,options:[{label:`Page`,value:`page`},...n.dataSources.length>0?[{label:`Schema`,value:`schema`,hint:`load data from a new table or layout from an existing data source`}]:[],{label:`React Email`,value:`react-email`},{label:`Data Source`,value:`data`,hint:`to connect to a new database or FileMaker file`},...n.auth.type===`none`&&n.appType===`browser`?[{label:`Auth`,value:`auth`}]:[]]}));r===`auth`?await D_():r===`data`?await A_():r===`page`?await V_():r===`schema`?await f_():r===`react-email`&&await T_({noInstall:t?.noInstall})},sb=()=>{let e=new l(`add`).description(`Add a new component to your project`).argument(`[name]`,`Type of component to add`).addOption(Yh).addOption(Xh).option(`--noInstall`,`Do not run your package manager install command`,!1).action(async(e,t)=>{await ob(e,t)});return e.hook(`preAction`,(e,t)=>{Gm(t.opts()),R.baseCommand=`add`}),e.hook(`preSubcommand`,(e,t)=>{Gm(t.opts()),R.baseCommand=`add`}),e.addCommand(O_()),e.addCommand(H_()),e.addCommand(p_()),e.addCommand(j_()),e},cb=/^[✔\s]+/,lb=/\s{2,}/,ub=/^v/;async function db(){try{return await f(`vercel`,[`--version`]),!0}catch{return!1}}async function fb(){let t=Km(),n=e.spinner();n.start(`Installing Vercel CLI...`);try{return await f(t,[t===`npm`?`install`:`add`,`-g`,`vercel`]),n.stop(`Vercel CLI installed successfully`),!0}catch(e){return n.stop(`Failed to install Vercel CLI`),console.error(c.red(`Error installing Vercel CLI:`),e),!1}}async function pb(){try{return!!(await p.readJSON(`.vercel/project.json`)).projectId}catch{return R.debug&&console.log(`
|
|
119
|
-
Debug: No Vercel project configuration found`),!1}}async function mb(){try{R.debug&&console.log(`
|
|
120
|
-
Debug: Running vercel teams list command...`);let e=await f(`vercel`,[`teams`,`list`],{all:!0});R.debug&&console.log(`
|
|
121
|
-
Debug: Command output:`,e.all);let t=(e.all??``).split(`
|
|
122
|
-
`).filter(Boolean),n=t.findIndex(e=>e.includes(`id`));if(n===-1)return[];let r=t.slice(n+1);if(R.debug){console.log(`
|
|
123
|
-
Debug: Team lines:`);for(let e of r)console.log(`"${e}"`)}let i=r.map(e=>{let[t,...n]=e.replace(cb,``).trim().split(lb);return!t||n.length===0?null:{slug:t,name:n.join(` `).trim()}}).filter(e=>e!==null);return R.debug&&console.log(`
|
|
124
|
-
Debug: Parsed teams:`,i),i}catch(e){return R.debug&&console.error(`Error getting Vercel teams:`,e),[]}}async function hb(){let t=e.spinner();try{let n=(await p.readJSON(`package.json`)).name,r=await mb(),i=``;if(r.length>1){let t=await e.select({message:`Select a team to deploy under:`,options:[...r.map(e=>({value:e.slug,label:e.name}))]});if(e.isCancel(t))return console.log(c.yellow(`
|
|
125
|
-
Operation cancelled`)),!1;t&&typeof t==`string`&&(i=`--scope=${t}`)}return t.start(`Creating Vercel project...`),await f(`vercel`,[`link`,`--yes`,...i?[i]:[]],{env:{VERCEL_PROJECT_NAME:n}}),t.message(`Pulling project settings...`),await f(`vercel`,[`pull`,`--yes`],{stdio:`inherit`}),t.stop(`Vercel project created successfully`),!0}catch(e){return t.stop(`Failed to set up Vercel project`),console.error(c.red(`Error setting up Vercel project:`),e),!1}}async function gb(){let t=e.spinner();t.start(`Pushing environment variables to Vercel...`);try{let e=V(),n=d.join(process.cwd(),e.envFile??`.env`);if(!p.existsSync(n))return t.stop(`No environment file found`),!0;let r=(await p.readFile(n,`utf-8`)).split(`
|
|
126
|
-
`).filter(e=>e.trim()&&!e.startsWith(`#`)).map(e=>{let[t,...n]=e.split(`=`);if(!t)return null;let r=n.join(`=`);return{key:t.trim(),value:r.trim()}}).filter(e=>e!==null);if(R.debug){t.stop(),console.log(`
|
|
127
|
-
Debug: Parsed environment variables:`);for(let{key:e,value:t}of r)console.log(` ${e}=${t.substring(0,3)}...`);t.start(`Pushing environment variables to Vercel...`)}let i=0,a=r.length;for(let e=0;e<a;e++){let n=r[e];if(!n)continue;let{key:o,value:s}=n;t.message(`Pushing environment variables to Vercel... (${e+1}/${a})`);try{R.debug&&console.log(`\nDebug: Attempting to add ${o} to Vercel...`);let e=await f(`vercel`,[`env`,`add`,o,`production`],{input:s,stdio:`pipe`,reject:!1});if(R.debug&&(console.log(`Debug: Command exit code: ${e.exitCode}`),e.stdout&&console.log(`Debug: stdout:`,e.stdout),e.stderr&&console.log(`Debug: stderr:`,e.stderr)),e.exitCode!==0)throw Error(`Command failed with exit code ${e.exitCode}`)}catch(e){i++,R.debug&&(console.error(c.yellow(`\nDebug: Failed to add ${o}`)),console.error(`Debug: Full error:`,e))}}return i>0?t.stop(c.yellow(`Environment variables pushed with ${i} failures`)):t.stop(`Environment variables pushed successfully`),i<a}catch(e){return t.stop(`Failed to push environment variables`),R.debug&&(console.error(`
|
|
128
|
-
Debug: Top-level error in pushEnvironmentVariables:`),console.error(e)),!1}}async function _b(){let e=process.version.replace(ub,``).split(`.`)[0];try{let t=`.vercel/project.json`;if(!p.existsSync(t))return R.debug&&console.log(`Debug: No project.json found`),!1;let n=await p.readJSON(t);return R.debug&&console.log(`Debug: Current project config:`,n),n.settings={...n.settings,nodeVersion:`${e}.x`},await p.writeJSON(t,n,{spaces:2}),R.debug&&console.log(`Debug: Updated Node.js version to ${e}.x`),!0}catch(e){return R.debug&&console.error(`Debug: Failed to update Node.js version:`,e),!1}}async function vb(){try{let e=await f(`vercel`,[`whoami`],{stdio:`pipe`,reject:!1});return R.debug&&console.log(`
|
|
129
|
-
Debug: Vercel whoami result:`,e),e.exitCode===0}catch(e){return R.debug&&console.error(`Debug: Error checking Vercel login status:`,e),!1}}async function yb(){console.log(c.blue(`
|
|
130
|
-
You need to log in to Vercel first.`));try{return await f(`vercel`,[`login`],{stdio:`inherit`}),!0}catch(e){return console.error(c.red(`
|
|
131
|
-
Failed to log in to Vercel:`),e),!1}}async function bb(){if(R.debug&&console.log(`Running deploy...`),!await db()&&!await fb()){console.log(c.red(`
|
|
132
|
-
Failed to install Vercel CLI. Please install it manually using:`)),console.log(c.blue(`
|
|
133
|
-
npm install -g vercel`));return}if(!await vb()&&!await yb()){console.log(c.red(`
|
|
134
|
-
Failed to log in to Vercel. Please try again.`));return}if(!await pb()){if(console.log(c.blue(`
|
|
135
|
-
Setting up new Vercel project...`)),!await hb()){console.log(c.red(`
|
|
136
|
-
Failed to set up Vercel project automatically.`));return}if(!await gb()){console.log(c.red(`
|
|
137
|
-
Failed to push environment variables. Aborting deployment.`));return}}console.log(c.blue(`
|
|
138
|
-
Pulling latest project settings...`));try{await f(`vercel`,[`pull`,`--yes`],{stdio:`inherit`})}catch(e){console.error(c.red(`
|
|
139
|
-
Failed to pull project settings:`),e);return}if(await _b()||console.error(c.red(`
|
|
140
|
-
Failed to set Node.js version. Continuing anyway...`)),R.localBuild){console.log(c.blue(`
|
|
141
|
-
Preparing local build for Vercel...`));try{if((await f(`vercel`,[`build`],{stdio:`inherit`,reject:!1})).exitCode===0)console.log(c.green(`
|
|
142
|
-
✓ Local build successful!`));else{console.error(c.red(`
|
|
143
|
-
✖ Local build failed`)),console.log(c.yellow(`Fix the errors above and then try again.`));return}}catch(e){console.error(c.red(`
|
|
144
|
-
Vercel build failed:`),e);return}console.log(c.blue(`
|
|
145
|
-
Deploying to Vercel...`)),(await f(`vercel`,[`deploy`,`--prebuilt`,`--yes`],{stdio:`inherit`,reject:!1})).exitCode===0&&console.log(c.green(`
|
|
146
|
-
✓ Deployment successful!`))}else{console.log(c.blue(`
|
|
147
|
-
Deploying to Vercel...`));try{if((await f(`vercel`,[`deploy`,`--yes`],{stdio:`inherit`,reject:!1})).exitCode===0)console.log(c.green(`
|
|
148
|
-
✓ Deployment successful!`));else{let e=Km(),t=e===`npm`?`npm run`:e;console.error(c.red(`
|
|
149
|
-
✖ Deployment failed`)),console.log(c.yellow(`
|
|
150
|
-
Troubleshooting Tips:`)),console.log(c.dim(`You can check for most errors before deploying for a faster iteration cycle`)),console.log(`${c.dim(`Run`)} ${t} tsc ${c.dim(`to check for TypeScript errors (most common build errors)`)}`),console.log(`${c.dim(`Run`)} ${t} build ${c.dim(`to run the full production build locally`)}`)}}catch{return}}}const xb=()=>{let e=new l(`deploy`).description(`Deploy your ProofKit application to Vercel`).addOption(Yh).addOption(Xh).addOption(new u(`--local-build`,`Build locally before deploying`)).action(bb);return e.hook(`preAction`,e=>{Gm(e.opts()),R.baseCommand=`deploy`,xh({commandName:`deploy`})}),e},Sb=[`@radix-ui/react-slot`,`@tailwindcss/postcss`,`class-variance-authority`,`clsx`,`lucide-react`,`tailwind-merge`,`tailwindcss`,`tw-animate-css`],Cb=[];async function wb(){let e=R.projectDir,t=d.join(_,`template/nextjs`);B({dependencies:Sb,devMode:!1,projectDir:e}),B({dependencies:Cb,devMode:!0,projectDir:e}),p.copySync(d.join(t,`components.json`),d.join(e,`components.json`)),p.copySync(d.join(t,`postcss.config.cjs`),d.join(e,`postcss.config.cjs`)),p.copySync(d.join(t,`src/utils/styles.ts`),d.join(e,`src/utils/styles.ts`)),p.copySync(d.join(t,`src/config/theme/globals.css`),d.join(e,`src/config/theme/globals.css`)),await Ym(),console.log(`
|
|
151
|
-
✅ shadcn/ui + Tailwind v4 upgrade complete!
|
|
152
|
-
`)}const Tb=[{key:`cursorRules`,title:`Upgrade Cursor Rules`,description:`Upgrade the .cursor rules in your project to the latest version.`,appType:[`browser`],function:Qh},{key:`shadcn`,title:`Add Shadcn`,description:`Add Shadcn to your project, to support easily adding new components from a variety of component registries.`,appType:[`browser`,`webviewer`],function:wb}];function Eb(){let e=V();if(e.ui===`shadcn`)return[];let t=e.appliedUpgrades;return Tb.filter(n=>!t.includes(n.key)&&n.appType.includes(e.appType)).map(({key:e,title:t,description:n})=>({key:e,title:t,description:n}))}async function Db(){let e=Eb(),t=V();if(t.ui!==`shadcn`)for(let n of e){let e=Tb.find(e=>e.key===n.key)?.function;if(e){await e();let r=t.appliedUpgrades;vh({appliedUpgrades:[...r,n.key]})}}}function Ob(e){if(e.type!==`fm`)return e.type;let t=d.join(R.projectDir,`.env`);p.existsSync(t)&&le.config({path:t});let n=process.env[e.envNames.server]||`unknown server`,r=process.env[e.envNames.database]||`unknown database`;try{return`${new URL(n).hostname}/${r}`}catch(e){return R.debug&&console.error(`Error parsing server URL:`,e),`${n}/${r}`}}const kb=async t=>{let n=V();if(n.dataSources.length===0){e.note(`No data sources found in your project.`);return}let r=t;if(r){if(!n.dataSources.some(e=>e.name===r))throw Error(`Data source "${r}" not found in your project.`)}else r=H(await e.select({message:`Which data source do you want to remove?`,options:n.dataSources.map(e=>{let t=``;try{t=Ob(e)}catch(e){R.debug&&console.error(`Error getting data source info:`,e),t=`unknown connection`}return{label:`${e.name} (${t})`,value:e.name}})}));let i=!0;if(!R.ci&&(i=H(await e.confirm({message:`Are you sure you want to remove the data source "${r}"? This will only remove it from your configuration, not replace any possible usage, which may cause TypeScript errors.`})),!i))throw new Sh;let a=n.dataSources.find(e=>e.name===r);if(n.dataSources=n.dataSources.filter(e=>e.name!==r),yh(n),a?.type===`fm`){Ph({dataSourceName:r}),R.debug&&e.note(`Removed schemas from fmschema.config.mjs`);let t=d.join(R.projectDir,`src`,`config`,`schemas`,r);p.existsSync(t)&&(p.removeSync(t),R.debug&&e.note(`Removed schema folder at ${t}`)),await kh(),R.debug&&e.note(`Successfully regenerated types`)}e.note(`Successfully removed data source "${r}"`)},Ab=()=>{let e=new l(`data`).description(`Remove a data source from your project`).option(`--name <name>`,`Name of the data source to remove`).addOption(Yh).addOption(Xh).action(async e=>{await kb(N({name:j().optional()}).parse(e).name)});return e.hook(`preAction`,(e,t)=>{Gm(t.opts()),R.baseCommand=`remove`,xh({commandName:`remove`})}),e},jb=e=>{let t=d.join(R.projectDir,`src/app/navigation.tsx`);if(!p.existsSync(t))return[];let n=e.addSourceFileAtPath(t),r=[],i=n.getVariableDeclaration(`primaryRoutes`)?.getInitializerIfKind(g.ArrayLiteralExpression)?.getElements();if(i){for(let e of i)if(ie.isObjectLiteralExpression(e)){let t=e.getProperties().find(e=>ie.isPropertyAssignment(e)&&e.getName()===`label`),n=e.getProperties().find(e=>ie.isPropertyAssignment(e)&&e.getName()===`href`),i=t?.getInitializer()?.getText().replace(/['"]/g,``),a=n?.getInitializer()?.getText().replace(/['"]/g,``);i&&a&&r.push({label:i,href:a})}}let a=n.getVariableDeclaration(`secondaryRoutes`)?.getInitializerIfKind(g.ArrayLiteralExpression)?.getElements();if(a){for(let e of a)if(ie.isObjectLiteralExpression(e)){let t=e.getProperties().find(e=>ie.isPropertyAssignment(e)&&e.getName()===`label`),n=e.getProperties().find(e=>ie.isPropertyAssignment(e)&&e.getName()===`href`),i=t?.getInitializer()?.getText().replace(/['"]/g,``),a=n?.getInitializer()?.getText().replace(/['"]/g,``);i&&a&&r.push({label:i,href:a})}}return r},Mb=async(e,t)=>{let n=d.join(R.projectDir,`src/app/navigation.tsx`);if(!p.existsSync(n))return;let r=e.addSourceFileAtPath(n),i=r.getVariableDeclaration(`primaryRoutes`)?.getInitializerIfKind(g.ArrayLiteralExpression);if(i){let e=i.getElements();for(let n=e.length-1;n>=0;n--){let r=e[n];ie.isObjectLiteralExpression(r)&&r.getProperties().find(e=>ie.isPropertyAssignment(e)&&e.getName()===`href`)?.getInitializer()?.getText().replace(/['"]/g,``)===t&&i.removeElement(n)}}let a=r.getVariableDeclaration(`secondaryRoutes`)?.getInitializerIfKind(g.ArrayLiteralExpression);if(a){let e=a.getElements();for(let n=e.length-1;n>=0;n--){let r=e[n];ie.isObjectLiteralExpression(r)&&r.getProperties().find(e=>ie.isPropertyAssignment(e)&&e.getName()===`href`)?.getInitializer()?.getText().replace(/['"]/g,``)===t&&a.removeElement(n)}}await $m(e)},Nb=async t=>{V();let n=R.projectDir,r=th(n),i=jb(r);if(i.length===0)return e.cancel(`No pages found in the navigation.`);let a=t;a||=H(await e.select({message:`Select the page to remove`,options:i.map(e=>({label:`${e.label} (${e.href})`,value:e.href}))})),a.startsWith(`/`)||(a=`/${a}`);let o=R.appType===`browser`?d.join(n,`src/app/(main)`,a):d.join(n,`src/routes`,a),s=e.spinner();s.start(`Removing page`);try{if(!p.existsSync(o))return s.stop(`Page not found!`),e.cancel(`Page at ${a} does not exist`);await Mb(r,a),await p.remove(o),s.stop(`Page removed successfully!`)}catch(e){s.stop(`Failed to remove page!`),console.error(`Error removing page:`,e),process.exit(1)}},Pb=()=>{let e=new l(`page`).description(`Remove a page from your project`).argument(`[route]`,`The route of the page to remove`).addOption(Yh).addOption(Xh).action(async e=>{await Nb(e)});return e.hook(`preAction`,(e,t)=>{Gm(t.opts()),R.baseCommand=`remove`,xh({commandName:`remove`})}),e},Fb=async t=>{let n=t?.settings??V(),r=t?.projectDir??R.projectDir,i=t?.sourceName;if(!i&&n.dataSources.filter(e=>e.type===`fm`).length>1){let t=await e.select({message:`Which FileMaker data source do you want to remove a layout from?`,options:n.dataSources.filter(e=>e.type===`fm`).map(e=>({label:e.name,value:e.name}))});e.isCancel(t)&&(e.cancel(),process.exit(0)),i=j().parse(t)}if(i||=`filemaker`,!n.dataSources.filter(e=>e.type===`fm`).find(e=>e.name===i))throw Error(`FileMaker data source ${i} not found in your ProofKit config`);let a=jh({projectDir:r,dataSourceName:i});if(a.length===0){e.note(`No layouts found in data source "${i}"`,`Nothing to remove`);return}let o=t?.schemaName??H(await e.select({message:`Select a layout to remove`,options:a.map(e=>({label:`${e.layout} (${e.schemaName})`,value:e.schemaName??``})).filter(e=>e.value!==``)})),s=await e.confirm({message:`Are you sure you want to remove the layout "${o}"?`,initialValue:!1});(e.isCancel(s)||!s)&&(e.cancel(`Operation cancelled`),process.exit(0)),await Fh({projectDir:r,dataSourceName:i,schemaName:o,runCodegen:!0}),e.outro(`Layout "${o}" has been removed from your project`)},Ib=()=>new l(`layout`).alias(`schema`).description(`Remove a layout from your fmschema file`).action(async e=>{let t=e.settings;await Fb({settings:t})}),Lb=async t=>{let n=V(),r=H(await e.select({message:`What do you want to remove from your project?`,options:[{label:`Page`,value:`page`},{label:`Schema`,value:`schema`,hint:`remove a table or layout schema`},...n.appType===`browser`?[{label:`Data Source`,value:`data`,hint:`remove a database or FileMaker connection`}]:[]]}));r===`data`?await kb():r===`page`?await Nb():r===`schema`&&await Fb()};function Rb(){let e=new l(`remove`).description(`Remove a component from your project`).argument(`[name]`,`Type of component to remove`).addOption(Yh).addOption(Xh).action(Lb);return e.hook(`preAction`,(e,t)=>{Gm(t.opts()),R.baseCommand=`remove`,xh({commandName:`remove`})}),e.hook(`preSubcommand`,(e,t)=>{Gm(t.opts()),R.baseCommand=`remove`,xh({commandName:`remove`})}),e.addCommand(Ab()),e.addCommand(Pb()),e.addCommand(Ib()),e}async function zb(e){let t=e.settings.dataSources,n=!1;for await(let e of t){if(e.type===`supabase`)throw Error(`Supabase is not supported yet`);if(e.type===`fm`)console.log(`Detected FileMaker database, generating types for ${e.name}...`),n=!0;else throw Error(`Unable to generate types for unknown database type`)}n&&await kh()}const Bb=()=>{let e=new l(`typegen`).description(`Generate types for your project`).action(zb);return e.hook(`preAction`,(e,t)=>{let n=xh({commandName:`typegen`});t.setOptionValue(`settings`,n)}),e},Vb=async()=>{Gm({}),R.baseCommand=`upgrade`,xh({commandName:`upgrade`}),z.info(`
|
|
153
|
-
Upgrading ProofKit components...
|
|
154
|
-
`);try{await Db(),z.info(c.green(`✔ Successfully upgraded components
|
|
155
|
-
`))}catch(e){z.error(`Failed to upgrade components:`,e),process.exit(1)}};new l().name(`upgrade`).description(`Upgrade ProofKit components in your project`).action(Vb);const Hb=async()=>{let e=V(),t=Eb();t.length>0&&(a.info(`${c.yellow(`There are upgrades available for your ProofKit project`)}\n${t.map(e=>`- ${e.title}`).join(`
|
|
156
|
-
`)}`),H(await n({message:`Would you like to run them now?`,initialValue:!0}))?(await Db(),a.success(c.green(`Successfully ran all upgrades`))):a.info(`You can apply the upgrades later by running ${c.cyan(`proofkit upgrade`)}`));let r=H(await o({message:`What would you like to do?`,options:[{label:`Add Components`,value:`add`,hint:`Add new pages, schemas, data sources, etc.`},{label:`Remove Components`,value:`remove`,hint:`Remove pages, schemas, data sources, etc.`},{label:`Generate Types`,value:`typegen`,hint:`Update field definitions from your data sources`},{label:`Deploy`,value:`deploy`,hint:`Deploy your app to Vercel`},{label:`Upgrade Components`,value:`upgrade`,hint:`Update ProofKit components to latest version`},{label:`View Documentation`,value:`docs`,hint:`Open ProofKit documentation`}]}));switch(r){case`add`:await ob(void 0);break;case`remove`:await Lb(void 0);break;case`docs`:a.info(`Opening ${c.cyan(He)} in your browser...`),await Ce(He);break;case`typegen`:await zb({settings:e});break;case`deploy`:await bb();break;case`upgrade`:await Vb();break;default:throw Error(`Unknown menu choice: ${r}`)}},Ub=()=>{let e=new l(`upgrade`).description(`Upgrade ProofKit components in your project`).addOption(Yh).action(async e=>{Gm(e),await Vb()});return e.hook(`preAction`,(e,t)=>{Gm(t.opts()),R.baseCommand=`upgrade`,xh({commandName:`upgrade`})}),e};function Wb(){return new Promise((e,t)=>{Te.get(`https://registry.npmjs.org/-/package/@proofkit/cli/dist-tags`,n=>{if(n.statusCode===200){let t=``;n.on(`data`,e=>{t+=e}),n.on(`end`,()=>{e(JSON.parse(t).latest)})}else t()}).on(`error`,()=>{t()})})}const Gb=async()=>Wb().catch(()=>{try{return ce(`npm view proofkit version`).toString().trim()}catch{return null}}),Kb=async()=>{let t=await Gb(),n=Fe();if(t&&ve.valid(n)&&ve.valid(t)&&ve.lt(n,t)){let r=Km();e.log.warn(`${c.yellow(`You are using an outdated version of proofkit.`)} Your version: ${n}. Latest version: ${t}.
|
|
157
|
-
Run ${c.magenta.bold(`${r} install ${Ve}@latest`)} to get the latest updates.`)}return{npmVersion:t,currentVersion:n}},qb=Fe();(async()=>{let e=new l;w_(),await Kb(),e.name(Ve).version(qb).command(`default`,{hidden:!0,isDefault:!0}).addOption(Yh).action(async e=>{Gm(e);let t;try{t=V()}catch{}R.ci&&z.warn(`Running in CI mode`),t?(r(`Found ${C_(`ProofKit`)} project`),await Hb()):(r(`No ${C_(`ProofKit`)} project found, running \`init\``),await S_())}).addHelpText(`afterAll`,`\n The ProofKit CLI was inspired by the ${c.hex(`#E8DCFF`).bold(`t3 stack`)}\n`),e.addCommand(b_()),e.addCommand(sb()),e.addCommand(Rb()),e.addCommand(Bb()),e.addCommand(xb()),e.addCommand(Ub()),await e.parseAsync(process.argv),process.exit(0)})().catch(e=>{e instanceof Sh?process.exit(0):e instanceof Error?(z.error(`Aborting installation...`),z.error(e)):(z.error(`An unknown error has occurred. Please open an issue on github with the below:`),console.log(e)),process.exit(1)});export{};
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import{a as e,i as t,n,o as r,s as i,t as a}from"./consts-BZnOMxpW.js";import{readFileSync as o}from"node:fs";import s from"node:path";import{fileURLToPath as c}from"node:url";import{optional as l,text as u,withDescription as d}from"@effect/cli/Args";import{make as f,run as p,withDescription as m,withSubcommands as h}from"@effect/cli/Command";import{boolean as g,choice as _,optional as v,text as ee,withAlias as te,withDescription as y}from"@effect/cli/Options";import{isValidationError as ne}from"@effect/cli/ValidationError";import{layer as re}from"@effect/platform-node/NodeContext";import{Cause as b,Context as x,Effect as S,Exit as ie,Layer as C}from"effect";import{getOrUndefined as w}from"effect/Option";import{Chalk as ae}from"chalk";import oe from"sort-package-json";import{applyEdits as se,modify as ce,parse as le}from"jsonc-parser";import{randomUUID as ue}from"node:crypto";import{execa as T}from"execa";import E from"fs-extra";import de from"open";import fe from"node:https";import D from"axios";import{intro as pe,isCancel as me,log as he,note as ge,spinner as _e}from"@clack/prompts";import{checkbox as ve,confirm as ye,input as be,password as xe,search as Se,select as Ce}from"@inquirer/prompts";import we from"gradient-string";const O=x.GenericTag(`@proofkit/cli/CliContext`),k=x.GenericTag(`@proofkit/cli/PromptService`),A=x.GenericTag(`@proofkit/cli/ConsoleService`),j=x.GenericTag(`@proofkit/cli/FileSystemService`),Te=x.GenericTag(`@proofkit/cli/TemplateService`),M=x.GenericTag(`@proofkit/cli/PackageManagerService`),Ee=x.GenericTag(`@proofkit/cli/ProcessService`),De=x.GenericTag(`@proofkit/cli/GitService`),Oe=x.GenericTag(`@proofkit/cli/SettingsService`),N=x.GenericTag(`@proofkit/cli/FileMakerService`),ke=x.GenericTag(`@proofkit/cli/CodegenService`);var P=class extends Error{constructor(e=`User aborted the operation`){super(e),this.name=`UserAbortedError`}};const Ae=[`API_`,`API `,`dapi_`,`dapi`],je=/[^/]$/,Me=new Set([`.ts`,`.tsx`,`.js`,`.jsx`,`.json`,`.jsonc`,`.md`,`.css`,`.scss`,`.html`,`.mjs`,`.cjs`]);function Ne(e){let t=e.replace(/[-\s]/g,`_`);for(let e of Ae)t.startsWith(e)&&(t=t.replace(e,``));return t}function F(e){if(e===`filemaker`)return{database:`FM_DATABASE`,server:`FM_SERVER`,apiKey:`OTTO_API_KEY`};let t=e.toUpperCase();return{database:`${t}_FM_DATABASE`,server:`${t}_FM_SERVER`,apiKey:`${t}_OTTO_API_KEY`}}function I(e,t){return[`npm`,`bun`].includes(e)?`${e} run ${t}`:`${e} ${t}`}function Pe(e){return e===`npm`?`npm run`:e}function Fe(e){return e.replace(/\*/g,``).replace(je,`$&/`)}async function L(e,t,n,r){let i=await e.readdir(t);for(let a of i){let i=s.join(t,a);if(await e.readdir(i).catch(e=>{if((typeof e==`object`&&e&&`code`in e&&typeof e.code==`string`?e.code:void 0)!==`ENOTDIR`)throw e})){await L(e,i,n,r);continue}let o=s.extname(a);if(!Me.has(o))continue;let c=await e.readFile(i).catch(()=>void 0);c?.includes(n)&&await e.writeFile(i,c.replaceAll(n,r))}}async function Ie(e,t,n){let r=s.join(t,`src/lib/env.ts`);if(!await e.exists(r))return;let i=await e.readFile(r),a=i.indexOf(` server: {`);if(a===-1)return;let o=i.indexOf(` },`,a);if(o===-1)return;let c=n.filter(e=>!i.includes(`${e.name}:`)).map(e=>` ${e.name}: ${e.zodSchema},`).join(`
|
|
3
|
+
`);c&&(i=`${i.slice(0,o)}${c}\n${i.slice(o)}`,await e.writeFile(r,i))}async function Le(e,t,n){let r=s.join(t,`proofkit-typegen.config.jsonc`),i=`./src/config/schemas/${n.dataSourceName}`,a={type:`fmdapi`,layouts:[],path:i,clearOldFiles:!0,clientSuffix:`Layout`};n.envNames&&(a.envNames={server:n.envNames.server,db:n.envNames.database,auth:{apiKey:n.envNames.apiKey}}),n.appType===`webviewer`&&(a.webviewerScriptName=`ExecuteDataApi`),n.fmMcpBaseUrl&&(a.fmMcp={enabled:!0,baseUrl:n.fmMcpBaseUrl,...n.connectedFileName?{connectedFileName:n.connectedFileName}:{}});let o=n.layoutName&&n.schemaName?{layoutName:n.layoutName,schemaName:n.schemaName,valueLists:`allowEmpty`}:void 0;if(o&&(a.layouts=[o]),!await e.exists(r)){let t={$schema:`https://proofkit.dev/typegen-config-schema.json`,config:[a]};await e.writeFile(r,`${JSON.stringify(t,null,2)}\n`);return}let c=await e.readFile(r),l=le(c),u=Array.isArray(l.config)?l.config:[l.config],d=u.findIndex(e=>e.path===i);if(d===-1)u.push(a);else{let e=u[d]??{},t=Array.isArray(e.layouts)?e.layouts:[],n=t;o&&!t.some(e=>e?.layoutName===o.layoutName)&&(n=[...t,o]),u[d]={...e,...a,layouts:n}}let f=ce(c,[`config`],Array.isArray(l.config)?u:u[0]??a,{formattingOptions:{insertSpaces:!0,tabSize:2,eol:`
|
|
4
|
+
`}});await e.writeFile(r,se(c,f))}function Re(){let e=[s.resolve(t,`package.json`),s.resolve(t,`../cli/package.json`)];for(let t of e)try{let e=JSON.parse(o(t,`utf8`));if(e.version&&e.version!==`0.0.0-private`)return e.version}catch{}return`0.0.0-private`}function ze(){return`beta`}function Be(){return process.versions.node.split(`.`)[0]??`22`}function Ve(e){return{ui:e.ui,appType:e.appType,envFile:`.env`,dataSources:[],replacedMainPage:!1,registryTemplates:[]}}function He(){return[`# When adding additional environment variables, update the schema alongside this file.`,``].join(`
|
|
5
|
+
`)}const Ue={"@radix-ui/react-slot":`^1.2.3`,"class-variance-authority":`^0.7.1`,clsx:`^2.1.1`,"lucide-react":`^0.577.0`,"tailwind-merge":`^3.5.0`,tailwindcss:`^4.1.10`,"tw-animate-css":`^1.4.0`};function We(e,t){let n=s.resolve(e.cwd,e.appDir),r=ze(),i=Ve(e),a=Pe(e.packageManager),o={name:e.scopedAppName,packageManager:t.packageManagerVersion?`${e.packageManager}@${t.packageManagerVersion}`:void 0,proofkitMetadata:{initVersion:Re(),scaffoldPackage:`@proofkit/cli`},dependencies:{},devDependencies:{"@proofkit/cli":r,"@types/node":`^${Be()}`}};return e.appType===`browser`&&(Object.assign(o.dependencies,Ue),o.dependencies[`@tailwindcss/postcss`]=`^4.1.10`,o.dependencies[`next-themes`]=`^0.4.6`),e.appType===`webviewer`&&(Object.assign(o.dependencies,Ue),o.dependencies[`@proofkit/fmdapi`]=r,o.dependencies[`@proofkit/webviewer`]=r,o.dependencies[`@tanstack/react-query`]=`^5.90.21`,o.dependencies[`@tanstack/react-router`]=`^1.167.4`,o.dependencies.zod=`^4`,o.devDependencies[`@proofkit/typegen`]=r,o.devDependencies[`@tailwindcss/vite`]=`^4.2.1`,o.devDependencies.ultracite=`7.0.8`),{request:e,targetDir:n,templateDir:t.templateDir,packageManagerCommand:a,packageJson:o,settings:i,envFile:{path:s.join(n,`.env`),content:He()},writes:[],commands:[...e.noInstall?[]:[{type:`install`}],...e.dataSource===`filemaker`&&!e.skipFileMakerSetup&&!(e.appType===`webviewer`&&e.nonInteractive&&!e.hasExplicitFileMakerInputs)?[{type:`codegen`}]:[],...e.noGit?[]:[{type:`git-init`}]],tasks:{bootstrapFileMaker:e.dataSource===`filemaker`&&!e.skipFileMakerSetup,checkWebViewerAddon:e.appType===`webviewer`,runInstall:!e.noInstall,runInitialCodegen:e.dataSource===`filemaker`&&!e.skipFileMakerSetup&&!(e.appType===`webviewer`&&e.nonInteractive&&!e.hasExplicitFileMakerInputs),initializeGit:!e.noGit},nextSteps:[`cd ${e.appDir}`,...e.noInstall?[e.packageManager===`yarn`?`yarn`:`${e.packageManager} install`]:[],`npx @tanstack/intent@latest install`,I(e.packageManager,`dev`),...e.appType===`webviewer`?[I(e.packageManager,`typegen`),I(e.packageManager,`launch-fm`)]:[],I(e.packageManager,`proofkit`)]}}function Ge(e,t,n=!0){e.name=t.name,e.proofkitMetadata=t.proofkitMetadata,t.packageManager&&(e.packageManager=t.packageManager),e.dependencies||={},e.devDependencies||={};let r=(e,t)=>{for(let[r,i]of Object.entries(t))(n||!(r in e))&&(e[r]=i)};return r(e.dependencies,t.dependencies),r(e.devDependencies,t.devDependencies),e}const Ke=new Set([`.agents`,`.claude`,`.clawed`,`.clinerules`,`.cursor`,`.windsurf`]),qe=/\*/g,Je=/\/?$/,R=new ae({level:1}),z=e=>R.cyan(e),B=e=>R.bold(e),Ye=e=>R.yellow(e);function Xe(e,t=[]){let n=[`${B(`Project root:`)} ${z(`cd ${Ye(e.request.appDir)}`)}`,``,B(`Agent setup:`),`Have your agent run this in the new project and complete the interactive prompt so it can load the right skills:`,` ${z(`npx @tanstack/intent@latest install`)}`];return e.request.noInstall&&n.push(``,B(`Install dependencies:`),` ${z(e.request.packageManager===`yarn`?`yarn`:`${e.request.packageManager} install`)}`),n.push(``,B(`Start the app:`),` ${z(`${e.packageManagerCommand} dev`)}`),e.request.appType===`webviewer`&&(n.push(``,B(`When your FileMaker file is ready:`),` ${z(`${e.packageManagerCommand} typegen`)}`,` ${z(`${e.packageManagerCommand} launch-fm`)}`),t.length>0&&n.push(...t.map(e=>` ${z(e)}`))),n.push(``,B(`More ProofKit commands:`),` ${z(`${e.packageManagerCommand} proofkit`)}`),n.join(`
|
|
6
|
+
`)}function Ze(e){return e.filter(e=>Ke.has(e)?!1:e===`.gitignore`?!0:!e.startsWith(`.`))}const Qe=e=>S.gen(function*(){let t=yield*j,n=yield*A,r=yield*O,i=yield*k;if(!(yield*S.promise(()=>t.exists(e.targetDir)))||Ze(yield*S.promise(()=>t.readdir(e.targetDir))).length===0)return;if(e.request.force){yield*S.promise(()=>t.emptyDir(e.targetDir));return}if(r.nonInteractive)throw Error(`${e.request.appDir} already exists and isn't empty. Remove the existing files or choose a different directory.`);let a=yield*S.promise(()=>i.select({message:`${e.request.appDir} already exists and isn't empty. How would you like to proceed?`,options:[{value:`abort`,label:`Abort installation`},{value:`clear`,label:`Clear the directory and continue`},{value:`overwrite`,label:`Continue and overwrite conflicting files`}]}));if(a===`abort`)throw new P;if(a===`clear`){if(!(yield*S.promise(()=>i.confirm({message:`Are you sure you want to clear the directory?`,initialValue:!1}))))throw new P;yield*S.promise(()=>t.emptyDir(e.targetDir));return}n.warn(`Continuing in ${e.request.appDir} and overwriting conflicting files when needed.`)}),$e=e=>S.gen(function*(){let t=yield*O,n=yield*j,r=yield*A,i=yield*Oe,o=yield*N,c=yield*Ee,l=yield*De,u=yield*ke,d=yield*M,f=[];yield*Qe(e),r.info(`Scaffolding in ${e.targetDir}`),yield*S.promise(()=>n.copyDir(e.templateDir,e.targetDir,{overwrite:!0}));let p=s.join(e.targetDir,`_gitignore`),m=s.join(e.targetDir,`.gitignore`);(yield*S.promise(()=>n.exists(p)))&&((yield*S.promise(()=>n.exists(m)))?yield*S.promise(()=>n.remove(p)):yield*S.promise(()=>n.rename(p,m)));let h=s.join(e.targetDir,`package.json`),g=oe(Ge(yield*S.promise(()=>n.readJson(h)),e.packageJson));yield*S.promise(()=>n.writeJson(h,g)),yield*S.promise(()=>i.writeSettings(e.targetDir,e.settings)),yield*S.promise(()=>n.writeFile(e.envFile.path,e.envFile.content));for(let t of e.writes)yield*S.promise(()=>n.writeFile(t.path,t.content));yield*S.promise(()=>L(n,e.targetDir,`__PNPM_COMMAND__`,e.packageManagerCommand)),yield*S.promise(()=>L(n,e.targetDir,`__PACKAGE_MANAGER__`,e.request.packageManager)),yield*S.promise(()=>L(n,e.targetDir,`__AGENT_INSTRUCTIONS__`,a)),e.request.importAlias!==`~/`&&(yield*S.promise(()=>L(n,e.targetDir,`~/`,Fe(e.request.importAlias))),yield*S.promise(()=>L(n,e.targetDir,`@/`,e.request.importAlias.replace(qe,``).replace(Je,`/`))));let _=e.settings;if(e.tasks.bootstrapFileMaker&&e.request.fileMaker){let t=e.request.fileMaker;_=yield*S.promise(()=>o.bootstrap(e.targetDir,_,t,e.request.appType)),yield*S.promise(()=>i.writeSettings(e.targetDir,_))}if(e.tasks.checkWebViewerAddon&&(yield*S.promise(async()=>{try{let{checkForWebViewerLayouts:n,getWebViewerAddonMessages:i}=await import(`./proofkit-webviewer-73IB1OBU.js`),a=i(await n(e.targetDir));for(let e of a.warn)r.warn(e);for(let e of a.info)r.info(e);t.nonInteractive&&f.push(...a.nextSteps)}catch(e){let t=e instanceof Error?e.message:String(e);r.warn(`Could not inspect the ProofKit WebViewer add-on (${t}).`)}})),e.tasks.runInstall){let t=[`install`];e.request.packageManager===`yarn`&&(t=[]),yield*S.promise(()=>c.run(e.request.packageManager,t,{cwd:e.targetDir,stdout:`pipe`,stderr:`pipe`}))}e.tasks.runInitialCodegen&&(yield*S.promise(()=>u.runInitial(e.targetDir,e.request.packageManager))),e.tasks.initializeGit&&(yield*S.promise(()=>l.initialize(e.targetDir)));let v=yield*S.promise(()=>d.getVersion(e.request.packageManager,e.targetDir));return r.success(`Created ${e.request.scopedAppName} in ${e.targetDir}${v?` using ${e.request.packageManager}@${v}`:``}`),r.info(R.bold(`Next steps:`)),r.info(Xe(e,Array.from(new Set(f)))),e}),et=/\/+$/,tt=/\\/g,nt=/^(?:@[a-z0-9-*~][a-z0-9-*._~]*\/)?[a-z0-9-~][a-z0-9-._~]*$/;function rt(e){return e.replace(tt,`/`)}function it(e){return rt(e).replace(et,``)}function at(e){let t=it(e).split(`/`),n=t.at(-1)??``;n===`.`&&(n=s.basename(s.resolve(process.cwd())));let r=t.findIndex(e=>e.startsWith(`@`));r!==-1&&(n=t.slice(r).join(`/`));let i=t.filter(e=>!e.startsWith(`@`)).join(`/`);return[n,i]}function ot(e){let t=it(e);if(t===`.`){let e=s.basename(s.resolve(process.cwd()));return nt.test(e)?void 0:`Name must consist of only lowercase alphanumeric characters, '-', and '_'`}let n=t.split(`/`),r=n.findIndex(e=>e.startsWith(`@`)),i=n.at(-1);if(r!==-1&&(i=n.slice(r).join(`/`)),!nt.test(i??``))return`Name must consist of only lowercase alphanumeric characters, '-', and '_'`}const st={noGit:!1,noInstall:!1,force:!1,default:!1,CI:!1,importAlias:`~/`};function ct(e,t){let n=e.split(`.`).map(e=>Number.parseInt(e,10)||0),r=t.split(`.`).map(e=>Number.parseInt(e,10)||0);for(let e=0;e<Math.max(n.length,r.length);e+=1){let t=n[e]??0,i=r[e]??0;if(t>i)return 1;if(t<i)return-1}return 0}function lt(e){if(!!e.layoutName!=!!e.schemaName)throw Error(`Both --layout-name and --schema-name must be provided together.`)}async function ut({prompt:e,fileMakerService:t,flags:n,nonInteractive:r}){if(lt(n),!n.server&&r)throw Error(`Missing required hosted FileMaker inputs in non-interactive mode: --server, --file-name, and --data-api-key.`);let i=n.server??await e.text({message:`What is the URL of your FileMaker Server?`,validate:e=>{try{let t=e.startsWith(`http`)?e:`https://${e}`;new URL(t);return}catch{return`Please enter a valid URL`}}}),{normalizedUrl:a,versions:o}=await t.validateHostedServerUrl(i),s=new URL(a),c=n.fileName,l=n.dataApiKey,u=n.layoutName,d=n.schemaName,f,p=[],m=()=>{if(!f)throw Error(`OttoFMS authentication is required for hosted setup.`);return f};if(!(c&&l)){if(!(n.adminApiKey||o.ottoVersion&&ct(o.ottoVersion,`4.7.0`)>=0))throw Error(`OttoFMS 4.7.0 or later is required to auto-login. Upgrade OttoFMS or pass --admin-api-key for hosted setup.`);f=n.adminApiKey??(await t.getOttoFMSToken({url:s})).token}if(!c){if(r)throw Error(`Missing required FileMaker inputs in non-interactive mode: --file-name, --data-api-key.`);p=await t.listFiles({url:s,token:m()}),c=await e.searchSelect({message:`Which file would you like to connect to?`,options:[{value:`$deploy-demo`,label:`Deploy NEW ProofKit Demo File`,hint:`Use OttoFMS to deploy a new file for testing`,keywords:[`demo`,`proofkit`]},...p.slice().sort((e,t)=>e.filename.localeCompare(t.filename)).map(e=>({value:e.filename,label:e.filename,hint:e.status,keywords:[e.filename]}))]})}if(!c)throw Error(`No FileMaker file was selected.`);if(c===`$deploy-demo`){p.length===0&&(p=await t.listFiles({url:s,token:m()}));let n=p.some(e=>e.filename===`ProofKitDemo.fmp12`),i=n&&!r?await e.confirm({message:`The demo file already exists. Do you want to replace it with a fresh copy?`,initialValue:!1}):n,a=await t.deployDemoFile({url:s,token:m(),operation:i?`replace`:`install`});c=a.filename,l=a.apiKey,u??=`API_Contacts`,d??=`Contacts`}if(!l&&r)throw Error(`Missing required FileMaker inputs in non-interactive mode: --data-api-key.`);if(!l){let n=(await t.listAPIKeys({url:s,token:m()})).filter(e=>e.database===c),r=n.length===0?`create`:await e.searchSelect({message:`Which OttoFMS Data API key would you like to use?`,options:[...n.map(e=>({value:e.key,label:`${e.label} - ${e.user}`,hint:`${e.key.slice(0,5)}...${e.key.slice(-4)}`,keywords:[e.label,e.user,e.database]})),{value:`create`,label:`Create a new API key`,hint:`Requires FileMaker credentials for this file`,keywords:[`create`,`new`]}]});if(r===`create`){let n=await e.text({message:`Enter the account name for ${c}`,validate:e=>e?void 0:`An account name is required`}),r=await e.password({message:`Enter the password for ${n}`,validate:e=>e?void 0:`A password is required`});l=(await t.createDataAPIKeyWithCredentials({url:s,filename:c,username:n,password:r})).apiKey}else l=r}if(!l)throw Error(`No FileMaker Data API key was selected.`);let h=await t.listLayouts({dataApiKey:l,fmFile:c,server:s.origin});if(u&&!h.includes(u))throw Error(`Layout "${u}" was not found in ${c}.`);return r||u||d||await e.confirm({message:`Do you want to configure an initial layout for type generation now?`,initialValue:!1})&&(u=await e.searchSelect({message:`Select a layout to read data from`,options:h.map(e=>({value:e,label:e,keywords:[e]}))}),d=await e.text({message:`What should the generated schema be called?`,defaultValue:Ne(u),validate:e=>e?void 0:`A schema name is required`})),{mode:`hosted-otto`,dataSourceName:`filemaker`,envNames:F(`filemaker`),server:s.origin,fileName:c,dataApiKey:l,layoutName:u,schemaName:d,adminApiKey:n.adminApiKey,fmsVersion:o.fmsVersion,ottoVersion:o.ottoVersion}}async function dt({prompt:e,fileMakerService:t,flags:n,appType:r,nonInteractive:i}){if(n.dataSource!==`filemaker`)return{fileMaker:void 0,skipFileMakerSetup:!1};if(lt(n),r===`webviewer`&&!n.server)for(;;){let r=await t.detectLocalFmMcp();if(r.healthy&&r.connectedFiles[0])return{fileMaker:{mode:`local-fm-mcp`,dataSourceName:`filemaker`,envNames:F(`filemaker`),fmMcpBaseUrl:r.baseUrl,fileName:r.connectedFiles[0],layoutName:n.layoutName,schemaName:n.schemaName},skipFileMakerSetup:!1};if(i)throw r.healthy?Error(`ProofKit MCP Server was detected, but no FileMaker files are open. Open a file in FileMaker and rerun, or pass --server.`):Error(`ProofKit MCP Server was not detected and no FileMaker server was provided. Start the ProofKit MCP Server locally or rerun with --server.`);let a=await e.select({message:r.healthy?`I noticed you have the ProofKit MCP Server installed, but no files are open. How would you like to continue?`:`ProofKit MCP Server was not detected. How would you like to continue?`,options:[{value:`retry`,label:`Try again`,hint:r.healthy?`Open a FileMaker file, then retry detection`:`Retry ProofKit MCP Server detection`},{value:`hosted`,label:`Continue with hosted setup`,hint:`Use OttoFMS and a hosted FileMaker server`},{value:`skip`,label:`Skip for now`,hint:`Create the project and configure FileMaker later`}]});if(a!==`retry`){if(a===`skip`)return{fileMaker:void 0,skipFileMakerSetup:!0};break}}return{fileMaker:await ut({prompt:e,fileMakerService:t,flags:n,nonInteractive:i}),skipFileMakerSetup:!1}}const ft=(e,t)=>S.gen(function*(){let r={...st,...t},i=yield*k,a=yield*N,o=yield*O,s=o.nonInteractive||r.CI||r.nonInteractive===!0,c=e;if(!c){if(s)return yield*S.fail(Error(`Project name is required in non-interactive mode.`));c=yield*S.promise(()=>i.text({message:`What will your project be called?`,defaultValue:n,validate:ot}))}if(!c)return yield*S.fail(Error(`Project name is required.`));let l=ot(c);if(l)return yield*S.fail(Error(l));let u=r.appType??`browser`;r.appType||s||(u=yield*S.promise(()=>i.select({message:`What kind of app do you want to build?`,options:[{value:`browser`,label:`Web App for Browsers`,hint:`Uses Next.js and hosted deployment`},{value:`webviewer`,label:`FileMaker Web Viewer`,hint:`Uses Vite for FileMaker web viewers`}]})).pipe(S.map(e=>e)));let d=!!(r.server||r.adminApiKey||r.dataApiKey||r.fileName||r.layoutName||r.schemaName),f=`none`;if(r.dataSource?f=r.dataSource:u===`webviewer`&&(f=d||!(s&&!r.server)?`filemaker`:`none`),!(s||r.dataSource)&&u!==`webviewer`&&(f=yield*S.promise(()=>i.select({message:`Do you want to connect to a FileMaker Database now?`,options:[{value:`filemaker`,label:`Yes`,hint:`Set up env, datasource config, and typegen now`},{value:`none`,label:`No`,hint:`You can add a data source later`}]})).pipe(S.map(e=>e))),s&&!r.dataSource&&d||s&&f!==`filemaker`&&d)return yield*S.fail(Error(`FileMaker flags require --data-source filemaker in non-interactive mode.`));let{fileMaker:p,skipFileMakerSetup:m}=yield*S.promise(()=>dt({prompt:i,fileMakerService:a,flags:{...r,dataSource:f},appType:u,nonInteractive:s})),[h,g]=at(c);return{projectName:c,scopedAppName:h,appDir:g,appType:u,ui:r.ui??`shadcn`,dataSource:f,packageManager:o.packageManager,noInstall:r.noInstall,noGit:r.noGit,force:r.force,cwd:o.cwd,importAlias:r.importAlias,nonInteractive:s,debug:o.debug,fileMaker:p,skipFileMakerSetup:m,hasExplicitFileMakerInputs:d}});async function pt(e){try{await de(e)}catch{}}function mt(){return new fe.Agent({rejectUnauthorized:process.env.PROOFKIT_ALLOW_INSECURE_TLS!==`1`})}async function V(e,t){return await D.get(e,{headers:t?.headers,httpsAgent:mt(),timeout:t?.timeout??1e4,validateStatus:null})}async function ht(e,t,n){return await D.post(e,t,{headers:n?.headers,httpsAgent:mt(),timeout:n?.timeout??1e4,validateStatus:null})}async function gt(e,t){return await D.delete(e,{headers:t?.headers,httpsAgent:mt(),timeout:t?.timeout??1e4,validateStatus:null})}function _t(){let e=process.env.npm_config_user_agent;return e?e.startsWith(`yarn`)?`yarn`:e.startsWith(`pnpm`)?`pnpm`:e.startsWith(`bun`)?`bun`:`npm`:`npm`}const vt=Symbol.for(`@proofkit/new/prompt-cancelled`),yt=pe,H=he,bt=ge,xt=_e;function St(e){return e instanceof Error&&e.name===`ExitPromptError`}function U(e){return e().catch(e=>{if(St(e))return vt;throw e})}function Ct(e){return e===vt||me(e)}function wt(e){if(e)return t=>e(t)??!0}function Tt(e,t){return[e.label,e.hint??``,...e.keywords??[]].join(` `).toLowerCase().includes(t.trim().toLowerCase())}function W(e){return typeof e==`string`?e:e?!0:void 0}function Et(e,t){let n=t?.trim();return n?e.filter(e=>Tt(e,n)):e}function Dt(e){return U(()=>be({message:e.message,default:e.defaultValue,validate:wt(e.validate)}))}function Ot(e){return U(()=>xe({message:e.message,validate:wt(e.validate)}))}function kt(e){return U(()=>ye({message:e.message,default:e.initialValue}))}function At(e){return U(()=>Ce({message:e.message,pageSize:10,choices:e.options.map(e=>({value:e.value,name:e.label,description:e.hint,disabled:W(e.disabled)}))}))}function jt(e){return U(()=>Se({message:e.message,pageSize:10,source:t=>{let n=Et(e.options,t);return n.length===0?[{value:`__no_matches__`,name:e.emptyMessage??`No matches found. Keep typing to refine your search.`,disabled:e.emptyMessage??`No matches found`}]:n.map(e=>({value:e.value,name:e.label,description:e.hint,disabled:W(e.disabled)}))}}))}function Mt(e){return U(()=>ve({message:e.message,pageSize:10,required:e.required,choices:e.options.map(e=>({value:e.value,name:e.label,description:e.hint,disabled:W(e.disabled)}))}))}function G(e){if(Ct(e))throw new P;return e}function Nt(e){return e.startsWith(`https://`)?e:e.startsWith(`http://`)?e.replace(`http://`,`https://`):`https://${e}`}function Pt(e){let t=e=>e.isFolder===!0?(Array.isArray(e.folderLayoutNames)?e.folderLayoutNames:[]).flatMap(e=>t(e)):typeof e.name==`string`?[e.name]:[];return e.flatMap(t).sort((e,t)=>e.localeCompare(t))}const Ft={text:async e=>G(await Dt({message:e.message,defaultValue:e.defaultValue,validate:e.validate})).toString(),password:async e=>G(await Ot({message:e.message,validate:e.validate})).toString(),select:async e=>G(await At({message:e.message,options:e.options})),searchSelect:async e=>G(await jt(e)),multiSearchSelect:async e=>G(await Mt(e)),confirm:async e=>G(await kt({message:e.message,initialValue:e.initialValue}))},It={info:e=>H.info(e),warn:e=>H.warn(e),error:e=>H.error(e),success:e=>H.success(e),note:(e,t)=>bt(e,t)},K={exists:async e=>E.pathExists(e),readdir:async e=>E.readdir(e),emptyDir:async e=>E.emptyDir(e),copyDir:async(e,t,n)=>E.copy(e,t,{overwrite:n?.overwrite??!0}),rename:async(e,t)=>E.rename(e,t),remove:async e=>E.remove(e),readJson:async e=>E.readJson(e),writeJson:async(e,t)=>E.writeJson(e,t,{spaces:2}),writeFile:async(e,t)=>E.writeFile(e,t,`utf8`),readFile:async e=>E.readFile(e,`utf8`)},Lt={getTemplateDir:(t,n)=>t===`webviewer`?s.join(e,`vite-wv`):n===`mantine`?s.join(e,`nextjs-mantine`):s.join(e,`nextjs-shadcn`)},Rt={getVersion:async(e,t)=>{if(e===`bun`)return;let{stdout:n}=await T(e,[`-v`],{cwd:t});return n.trim()}},zt={run:async(e,t,n)=>{let r=await T(e,t,{cwd:n.cwd,stdout:n.stdout??`pipe`,stderr:n.stderr??`pipe`});return{stdout:r.stdout??``,stderr:r.stderr??``}}},Bt={initialize:async e=>{await T(`git`,[`init`],{cwd:e}),await T(`git`,[`add`,`.`],{cwd:e}),await T(`git`,[`commit`,`-m`,`Initial commit`],{cwd:e})}},Vt={writeSettings:async(e,t)=>E.writeJson(s.join(e,`proofkit.json`),t,{spaces:2}),appendEnvVars:async(e,t)=>{let n=s.join(e,`.env`),r=await E.pathExists(n)?await E.readFile(n,`utf8`):``,i=Object.entries(t).map(([e,t])=>`${e}=${t}`).join(`
|
|
7
|
+
`),a=[r.trimEnd(),i].filter(Boolean).join(`
|
|
8
|
+
`).concat(`
|
|
9
|
+
`);await E.writeFile(n,a,`utf8`)},ensureTypegenConfig:async(e,t)=>void 0};function Ht(e){return{type:`fm`,name:e,envNames:F(e)}}function Ut(e,t,n){let r=Ht(t.dataSourceName),i={...e,dataSources:e.dataSources.some(e=>e.name===r.name)?e.dataSources:[...e.dataSources,r]};return t.mode===`local-fm-mcp`?Promise.resolve({settings:i,envVars:{},envSchemaEntries:[],typegenConfig:{mode:t.mode,dataSourceName:t.dataSourceName,fmMcpBaseUrl:t.fmMcpBaseUrl,connectedFileName:t.fileName,layoutName:t.layoutName,schemaName:t.schemaName,appType:n}}):Promise.resolve({settings:i,envVars:{[t.envNames.database]:t.fileName,[t.envNames.server]:t.server,[t.envNames.apiKey]:t.dataApiKey},envSchemaEntries:[{name:t.envNames.database,zodSchema:`z.string().endsWith(".fmp12")`,defaultValue:t.fileName},{name:t.envNames.server,zodSchema:`z.string().url()`,defaultValue:t.server},{name:t.envNames.apiKey,zodSchema:`z.string().startsWith("dk_")`,defaultValue:t.dataApiKey}],typegenConfig:{mode:t.mode,dataSourceName:t.dataSourceName,envNames:t.envNames,layoutName:t.layoutName,schemaName:t.schemaName,appType:n}})}const q={detectLocalFmMcp:async(e=process.env.FM_MCP_BASE_URL??`http://127.0.0.1:1365`)=>{try{if(!(await fetch(`${e}/health`,{signal:AbortSignal.timeout(3e3)})).ok)return{baseUrl:e,healthy:!1,connectedFiles:[]};let t=await fetch(`${e}/connectedFiles`,{signal:AbortSignal.timeout(3e3)}).then(async e=>e.ok?await e.json():[]).catch(()=>[]);return{baseUrl:e,healthy:!0,connectedFiles:Array.isArray(t)?t.filter(e=>typeof e==`string`):[]}}catch{return{baseUrl:e,healthy:!1,connectedFiles:[]}}},validateHostedServerUrl:async(e,t)=>{let n=Nt(e),r=(await V(new URL(`/fmws/serverinfo`,n).toString())).data?.data?.ServerVersion?.split(` `)[0];if(!r)throw Error(`Invalid FileMaker Server URL: ${n}`);let i=null;if(i=(await V(new URL(`/otto/api/info`,n).toString()).catch(()=>void 0))?.data?.response?.Otto?.version??null,!i){let e=new URL(n);e.port=t?String(t):`3030`,e.pathname=`/api/otto/info`,i=(await V(e.toString()).catch(()=>void 0))?.data?.Otto?.version??null}return{normalizedUrl:new URL(n).origin,versions:{fmsVersion:r,ottoVersion:i}}},getOttoFMSToken:async({url:e})=>{let t=ue().replaceAll(`-`,``).slice(0,18),n=new URL(`/otto/wizard/${t}`,e.origin);H.info(`If the browser window didn't open automatically, use this Otto login URL:\n${n.toString()}`),await pt(n.toString());let r=xt();r.start(`Waiting for OttoFMS login`);let i=Date.now()+18e4;for(;Date.now()<i;){let n=(await V(`${e.origin}/otto/api/cli/checkHash/${t}`,{headers:{"Accept-Encoding":`deflate`},timeout:5e3}).catch(()=>void 0))?.data?.response?.token;if(n)return r.stop(`Login complete`),await gt(`${e.origin}/otto/api/cli/checkHash/${t}`,{headers:{"Accept-Encoding":`deflate`}}).catch(()=>void 0),{token:n};await new Promise(e=>setTimeout(e,500))}throw r.stop(`Login timed out`),Error(`OttoFMS login timed out after 3 minutes.`)},listFiles:async({url:e,token:t})=>((await V(`${e.origin}/otto/fmi/admin/api/v2/databases`,{headers:{Authorization:`Bearer ${t}`}})).data?.response?.databases??[]).filter(e=>typeof e.filename==`string`).map(e=>({filename:e.filename,status:e.status??`unknown`})),listAPIKeys:async({url:e,token:t})=>((await V(`${e.origin}/otto/api/api-key`,{headers:{Authorization:`Bearer ${t}`}})).data?.response?.[`api-keys`]??[]).filter(e=>typeof e.key==`string`&&typeof e.user==`string`&&typeof e.database==`string`&&typeof e.label==`string`).map(e=>({key:e.key,user:e.user,database:e.database,label:e.label})),createDataAPIKeyWithCredentials:async({url:e,filename:t,username:n,password:r})=>{let i=(await ht(`${e.origin}/otto/api/api-key/create-only`,{database:t,label:`For FM Web App`,user:n,pass:r})).data?.response?.key;if(!i)throw Error(`Failed to create a Data API key for ${t}.`);return{apiKey:i}},startDeployment:async({payload:e,url:t,token:n})=>ht(`${t.origin}/otto/api/deployment`,e,{headers:{Authorization:`Bearer ${n}`}}),getDeploymentStatus:async({url:e,token:t,deploymentId:n})=>V(`${e.origin}/otto/api/deployment/${n}`,{headers:{Authorization:`Bearer ${t}`}}),deployDemoFile:async({url:e,token:t,operation:n})=>{let r=`ProofKitDemo.fmp12`,i=xt();i.start(`Deploying ProofKit Demo file`);let a={scheduled:!1,label:`Install ProofKit Demo`,deployments:[{name:`Install ProofKit Demo`,source:{type:`url`,url:`https://proofkit.dev/proofkit-demo/manifest.json`},fileOperations:[{target:{fileName:r},operation:n,source:{fileName:r},location:{folder:`default`,subFolder:``}}],concurrency:1,options:{closeFilesAfterBuild:!1,keepFilesClosedAfterComplete:!1,transferContainerData:!1}}],abortRemaining:!1},o=(await q.startDeployment({payload:a,url:e,token:t})).data?.response?.subDeploymentIds?.[0];if(!o)throw i.stop(`Demo deployment failed`),Error(`No deployment ID was returned when deploying the demo file.`);let s=Date.now()+3e5,c=!1;for(;Date.now()<s;){await new Promise(e=>setTimeout(e,2500));let n=await q.getDeploymentStatus({url:e,token:t,deploymentId:o});if(!n.data?.response?.running){if(n.data?.response?.status!==`complete`)throw i.stop(`Demo deployment failed`),Error(`ProofKit Demo deployment did not complete successfully.`);c=!0;break}}if(!c)throw i.stop(`Demo deployment timed out`),Error(`ProofKit Demo deployment timed out after 5 minutes.`);let l=await q.createDataAPIKeyWithCredentials({url:e,filename:r,username:`admin`,password:`admin`});return i.stop(`Demo file deployed`),{apiKey:l.apiKey,filename:r}},listLayouts:async({dataApiKey:e,fmFile:t,server:n})=>Pt((await V(`${n}/otto/fmi/data/vLatest/databases/${encodeURIComponent(t)}/layouts`,{headers:{Authorization:`Bearer ${e}`}})).data?.response?.layouts??[]),createFileMakerBootstrapArtifacts:Ut,bootstrap:async(e,t,n,r)=>{let i=await Ut(t,n,r);return Object.keys(i.envVars).length>0&&(await Vt.appendEnvVars(e,i.envVars),await Ie(K,e,i.envSchemaEntries)),await Le(K,e,{appType:i.typegenConfig.appType,dataSourceName:i.typegenConfig.dataSourceName,envNames:i.typegenConfig.envNames,fmMcpBaseUrl:i.typegenConfig.fmMcpBaseUrl,connectedFileName:i.typegenConfig.connectedFileName,layoutName:i.typegenConfig.layoutName,schemaName:i.typegenConfig.schemaName}),i.settings}},Wt={runInitial:async(e,t)=>{let n;n=t===`npm`?[`npm`,`run`,`typegen`]:t===`bun`?[`bun`,`run`,`typegen`]:[t,`typegen`];let r=n[0];if(!r)throw Error(`Unable to resolve the codegen command`);await T(r,n.slice(1),{cwd:e})}};function J(e){let t={cwd:e.cwd,debug:e.debug,nonInteractive:e.nonInteractive,packageManager:_t()},n=C.mergeAll(C.succeed(O,t),C.succeed(k,Ft),C.succeed(A,It),C.succeed(j,K),C.succeed(Te,Lt),C.succeed(M,Rt),C.succeed(Ee,zt),C.succeed(De,Bt),C.succeed(Oe,Vt),C.succeed(N,q),C.succeed(ke,Wt));return e=>S.provide(e,n)}const Y=we(Object.values({purple:`#89216B`,lightPurple:`#D15ABB`,orange:`#FF595E`}));function Gt(e=`0.0.0-private`){let t=_t();(t===`yarn`||t===`pnpm`)&&console.log(``),console.log(Y.multiline(i(e)))}const X={noGit:!1,noInstall:!1,force:!1,default:!1,CI:!1,importAlias:`~/`};function Kt(){try{let e=new URL(`../package.json`,import.meta.url);return JSON.parse(o(c(e),`utf8`)).version??`0.0.0-private`}catch{return`0.0.0-private`}}const Z=(e,t)=>S.gen(function*(){let n=yield*Te,r=yield*M,i=yield*ft(e,{...X,...t}),a=We(i,{templateDir:n.getTemplateDir(i.appType,i.ui),packageManagerVersion:yield*S.promise(()=>r.getVersion(i.packageManager,i.cwd))});return yield*$e(a),{request:i,plan:a}}),qt=e=>S.gen(function*(){let t=yield*O,n=yield*j,r=yield*A,i={...X,...e};if(t.nonInteractive||i.CI||i.nonInteractive)throw Error("The default command is interactive-only in non-interactive mode. Run an explicit command such as `proofkit init <name> --non-interactive`.");let a=s.join(t.cwd,`proofkit.json`);if(yield*S.promise(()=>n.exists(a))){yt(`Found ${Y(`ProofKit`)} project`),r.note([`Project command routing is being migrated into the Effect CLI surface.`,"Use an explicit command such as `proofkit add`, `proofkit remove`, `proofkit typegen`, `proofkit deploy`, or `proofkit upgrade`."].join(`
|
|
10
|
+
`),`Project commands`);return}yt(`No ${Y(`ProofKit`)} project found, running \`init\``),yield*Z(void 0,{...i,default:!0})}),Jt=l(u({name:`dir`})).pipe(d(`The project name or target directory`));function Q(e,t){return v(ee(e).pipe(y(t)))}function Yt(e,t,n){return v(_(e,t).pipe(y(n)))}function $(e,t){return J({cwd:process.cwd(),debug:t?.debug===!0,nonInteractive:t?.nonInteractive===!0})(S.promise(e))}function Xt(){return f(`init`,{dir:Jt,appType:Yt(`app-type`,[`browser`,`webviewer`],`The type of app to create`),ui:Yt(`ui`,[`shadcn`,`mantine`],`The UI scaffold to create`),server:Q(`server`,`The URL of your FileMaker Server`),adminApiKey:Q(`admin-api-key`,`Admin API key for OttoFMS`),fileName:Q(`file-name`,`The name of the FileMaker file`),layoutName:Q(`layout-name`,`The FileMaker layout name to scaffold`),schemaName:Q(`schema-name`,`The generated schema name`),dataApiKey:Q(`data-api-key`,`The Otto Data API key to use`),dataSource:Yt(`data-source`,[`filemaker`,`none`],`The data source to use`),noGit:g(`no-git`).pipe(y(`Skip git initialization`)),noInstall:g(`no-install`).pipe(y(`Skip package installation`)),force:g(`force`).pipe(te(`f`),y(`Force overwrite target directory when it already contains files`)),CI:g(`ci`).pipe(y(`Deprecated alias for --non-interactive`)),nonInteractive:g(`non-interactive`).pipe(y(`Never prompt for input; fail when required values are missing`)),debug:g(`debug`).pipe(y(`Run in debug mode`))},({dir:e,...t})=>{let n={...X,appType:w(t.appType),ui:w(t.ui),server:w(t.server),adminApiKey:w(t.adminApiKey),fileName:w(t.fileName),layoutName:w(t.layoutName),schemaName:w(t.schemaName),dataApiKey:w(t.dataApiKey),dataSource:w(t.dataSource),noGit:t.noGit,noInstall:t.noInstall,force:t.force,CI:t.CI,nonInteractive:t.nonInteractive,debug:t.debug};return J({cwd:process.cwd(),debug:n.debug===!0,nonInteractive:!!(n.CI||n.nonInteractive)})(Z(w(e),n))}).pipe(m(`Create a new project with ProofKit`))}function Zt(){return f(`add`,{name:l(u({name:`name`})).pipe(d(`Component or registry item to add`)),target:l(u({name:`target`})).pipe(d(`Optional add target`)),noInstall:g(`no-install`).pipe(y(`Skip package installation`)),CI:g(`ci`).pipe(y(`Deprecated alias for --non-interactive`)),nonInteractive:g(`non-interactive`).pipe(y(`Never prompt for input; fail when required values are missing`)),debug:g(`debug`).pipe(y(`Run in debug mode`))},({name:e,target:t,noInstall:n,CI:r,nonInteractive:i,debug:a})=>$(async()=>{let[{runAdd:o},{initProgramState:s,state:c}]=await Promise.all([import(`./add-DrcID6d6.js`),import(`./state-BVEcvFT3.js`).then(e=>e.i)]);s({noInstall:n,ci:r,nonInteractive:i,debug:a}),c.baseCommand=`add`,c.projectDir=process.cwd(),await o(w(e),{noInstall:n,target:w(t)})},{nonInteractive:r||i,debug:a})).pipe(m(`Add a new component to your project`))}function Qt(){return f(`remove`,{name:l(u({name:`name`})).pipe(d(`Component type to remove`)),CI:g(`ci`).pipe(y(`Deprecated alias for --non-interactive`)),nonInteractive:g(`non-interactive`).pipe(y(`Never prompt for input; fail when required values are missing`)),debug:g(`debug`).pipe(y(`Run in debug mode`))},({name:e,CI:t,nonInteractive:n,debug:r})=>$(async()=>{let[{runRemove:i},{initProgramState:a,state:o}]=await Promise.all([import(`./remove-BOCU6In3.js`),import(`./state-BVEcvFT3.js`).then(e=>e.i)]);a({ci:t,nonInteractive:n,debug:r}),o.baseCommand=`remove`,o.projectDir=process.cwd(),await i(w(e))},{nonInteractive:t||n,debug:r})).pipe(m(`Remove a component from your project`))}function $t(){return f(`typegen`,{debug:g(`debug`).pipe(y(`Run in debug mode`))},({debug:e})=>$(async()=>{let[{runTypegen:e},{state:t}]=await Promise.all([import(`./typegen-DyXaif5O.js`),import(`./state-BVEcvFT3.js`).then(e=>e.i)]);t.projectDir=process.cwd(),await e({settings:(await import(`./parseSettings-DJ2m9sgJ.js`).then(e=>e.i)).getSettings()})},{debug:e})).pipe(m(`Generate types for your project`))}function en(){return f(`deploy`,{debug:g(`debug`).pipe(y(`Run in debug mode`))},({debug:e})=>$(async()=>{let[{runDeploy:t},{initProgramState:n,state:r}]=await Promise.all([import(`./deploy-D25sPO7K.js`),import(`./state-BVEcvFT3.js`).then(e=>e.i)]);n({debug:e}),r.baseCommand=`deploy`,r.projectDir=process.cwd(),await t()},{debug:e})).pipe(m(`Deploy your app`))}function tn(){return f(`upgrade`,{CI:g(`ci`).pipe(y(`Deprecated alias for --non-interactive`)),nonInteractive:g(`non-interactive`).pipe(y(`Never prompt for input; fail when required values are missing`)),debug:g(`debug`).pipe(y(`Run in debug mode`))},({CI:e,nonInteractive:t,debug:n})=>$(async()=>{let[{runUpgrade:r},{initProgramState:i,state:a}]=await Promise.all([import(`./update-FX71y5b3.js`),import(`./state-BVEcvFT3.js`).then(e=>e.i)]);i({ci:e,nonInteractive:t,debug:n}),a.baseCommand=`upgrade`,a.projectDir=process.cwd(),await r()},{nonInteractive:e||t,debug:n})).pipe(m(`Upgrade ProofKit components in your project`))}const nn=p(f(r,{CI:g(`ci`).pipe(y(`Deprecated alias for --non-interactive`)),nonInteractive:g(`non-interactive`).pipe(y(`Never prompt for input; fail when required values are missing`)),debug:g(`debug`).pipe(y(`Run in debug mode`))},e=>J({cwd:process.cwd(),debug:e.debug===!0,nonInteractive:!!(e.CI||e.nonInteractive)})(qt({...X,CI:e.CI,nonInteractive:e.nonInteractive,debug:e.debug}))).pipe(m(`Interactive CLI to scaffold and manage ProofKit projects`),h([Xt(),Zt(),Qt(),$t(),en(),tn()])),{name:`ProofKit`,version:Kt()}),rn=process.argv[1]&&s.resolve(process.argv[1])===c(import.meta.url),an=new Set([`--debug`]);function on(e){return e.some(e=>an.has(e))}function sn(e,t){let n=w(b.failureOption(e));if(!(n&&ne(n))){let t=b.squash(e);console.error(t instanceof Error?t.message:String(t))}t&&console.error(`\n[debug] ${b.pretty(e)}`)}async function cn(e){let t=on(e),n=await S.runPromiseExit(nn(e).pipe(S.provide(re)));ie.isFailure(n)&&(sn(n.cause,t),process.exitCode=1)}rn&&(Gt(Kt()),cn(process.argv).catch(e=>{console.error(e instanceof Error?e.message:String(e)),process.exitCode=1}));export{nn as cli,qt as runDefaultCommand,Z as runInit};
|
|
158
11
|
//# sourceMappingURL=index.js.map
|