llm-simple-router 0.4.2 → 0.4.3
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/frontend-dist/assets/{CardContent-3ytnac7B.js → CardContent-BIgWZo6N.js} +1 -1
- package/frontend-dist/assets/{CardTitle-BHZE8Rty.js → CardTitle-BVVp36Pq.js} +1 -1
- package/frontend-dist/assets/{Checkbox-CMYgDuxw.js → Checkbox-CnvHc21k.js} +1 -1
- package/frontend-dist/assets/{CollapsibleTrigger-DooxvEnx.js → CollapsibleTrigger-DG8JZQfm.js} +1 -1
- package/frontend-dist/assets/{Collection-GDvpW_uY.js → Collection-B4yfvPwd.js} +1 -1
- package/frontend-dist/assets/{Dashboard-BJslVTg8.js → Dashboard-D9ZMKiZw.js} +1 -1
- package/frontend-dist/assets/{DialogTitle-lj6NAA5R.js → DialogTitle-C7Wl7fWN.js} +1 -1
- package/frontend-dist/assets/{Input-JApdUstN.js → Input-BA5UO-Ab.js} +1 -1
- package/frontend-dist/assets/{Label-IbQFgxLe.js → Label-CmG21jDR.js} +1 -1
- package/frontend-dist/assets/{Login-BjuVvrPV.js → Login-Dqwj0s5l.js} +1 -1
- package/frontend-dist/assets/Logs-CGzGzcDa.js +1 -0
- package/frontend-dist/assets/{ModelMappings-DWVmxMy6.js → ModelMappings-qxaFWRsq.js} +1 -1
- package/frontend-dist/assets/{Monitor-BTEW0evp.js → Monitor-Zy3O9UQA.js} +1 -1
- package/frontend-dist/assets/{PopperContent-ZhhkKJo0.js → PopperContent-B48BBgdW.js} +1 -1
- package/frontend-dist/assets/{Providers-BqLSKXuv.js → Providers-DRMSjTlb.js} +1 -1
- package/frontend-dist/assets/{ProxyEnhancement-TAHOKnxW.js → ProxyEnhancement-CtlDQ_oK.js} +1 -1
- package/frontend-dist/assets/{RetryRules-Cn6KHzgB.js → RetryRules-CxbZt6dv.js} +1 -1
- package/frontend-dist/assets/{RouterKeys-CBgWAJ6-.js → RouterKeys-drAASJqH.js} +1 -1
- package/frontend-dist/assets/{SelectValue-DS4Z8y0u.js → SelectValue-Ct22fmR7.js} +1 -1
- package/frontend-dist/assets/{Setup-QKmeMDtB.js → Setup-CfscyFFo.js} +1 -1
- package/frontend-dist/assets/{Switch-BYebebrY.js → Switch-ROnHu48E.js} +1 -1
- package/frontend-dist/assets/{TableHeader-B2A48qgy.js → TableHeader-R3y9M8qo.js} +1 -1
- package/frontend-dist/assets/{TabsContent-BcNBY5CB.js → TabsContent-CtT2wglf.js} +1 -1
- package/frontend-dist/assets/{TabsTrigger-8W_mNsGI.js → TabsTrigger-D2S77VwS.js} +1 -1
- package/frontend-dist/assets/UnifiedRequestDialog-BhGWzOYY.js +3 -0
- package/frontend-dist/assets/UnifiedRequestDialog-CotaDyW7.css +1 -0
- package/frontend-dist/assets/{VisuallyHidden-DPKPka_x.js → VisuallyHidden-ppNQPfSR.js} +1 -1
- package/frontend-dist/assets/{VisuallyHiddenInput-Bnglr6yR.js → VisuallyHiddenInput-DOdhvOHf.js} +1 -1
- package/frontend-dist/assets/{alert-dialog-BzyDZnoE.js → alert-dialog-BbI_a1Xz.js} +1 -1
- package/frontend-dist/assets/{badge-BTjuxlp4.js → badge-CcgNasyU.js} +1 -1
- package/frontend-dist/assets/{button-BKJB3nEQ.js → button-BkhL20Qz.js} +2 -2
- package/frontend-dist/assets/{createLucideIcon-igIAnu_Y.js → createLucideIcon-D2A5NyBH.js} +1 -1
- package/frontend-dist/assets/{dialog-C0B-Xn-S.js → dialog-BeetdYQi.js} +1 -1
- package/frontend-dist/assets/{file-text-Ci7Mgh3F.js → file-text-D-Vekfc6.js} +1 -1
- package/frontend-dist/assets/{index-BrDOp_gc.js → index-Bgqc9Lca.js} +1 -1
- package/frontend-dist/assets/index-hzTjKE_2.css +1 -0
- package/frontend-dist/assets/{lib-BGW4QyKP.js → lib-BAWhmkfz.js} +1 -1
- package/frontend-dist/assets/{ohash.D__AXeF1-CsY_LBk-.js → ohash.D__AXeF1-B5oxGXRD.js} +1 -1
- package/frontend-dist/assets/{useClipboard-wnGQAe3I.js → useClipboard-D3mHD2V6.js} +1 -1
- package/frontend-dist/assets/{useForwardExpose-bqtcPo63.js → useForwardExpose-Pf45y-q1.js} +1 -1
- package/frontend-dist/assets/useNonce-Dfbnp6Co.js +1 -0
- package/frontend-dist/assets/x-CrCHzImd.js +1 -0
- package/frontend-dist/index.html +8 -8
- package/package.json +1 -1
- package/frontend-dist/assets/Logs-J08HyZWA.js +0 -1
- package/frontend-dist/assets/UnifiedRequestDialog-BmEamR1L.js +0 -3
- package/frontend-dist/assets/UnifiedRequestDialog-Dk3IIDDx.css +0 -1
- package/frontend-dist/assets/index-DMdVJThL.css +0 -1
- package/frontend-dist/assets/useNonce-DN0Hrw3l.js +0 -1
- package/frontend-dist/assets/x-Cy_v5hrA.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{B as e,Et as t,F as n,G as r,H as i,I as a,It as o,K as s,L as c,O as l,Pt as u,U as d,V as f,W as p,at as m,n as h,nt as ee,st as g,ut as te,vt as _,z as ne,zt as v}from"./button-BKJB3nEQ.js";import{t as re}from"./createLucideIcon-igIAnu_Y.js";import{n as ie}from"./ohash.D__AXeF1-CsY_LBk-.js";import{a as ae,i as oe,n as se,r as ce,t as le}from"./SelectValue-DS4Z8y0u.js";import{t as ue}from"./Checkbox-CMYgDuxw.js";import{a as de,n as fe,o as pe,r as me,t as he}from"./dialog-C0B-Xn-S.js";import{a as ge,c as _e,i as ve,n as ye,o as be,r as xe,t as Se}from"./alert-dialog-BzyDZnoE.js";import{a as Ce,i as y,n as b,o as we,r as Te,t as Ee}from"./TableHeader-B2A48qgy.js";import{t as x}from"./Label-IbQFgxLe.js";import{t as De}from"./Switch-BYebebrY.js";import{t as Oe}from"./badge-BTjuxlp4.js";import{n as ke}from"./lib-BGW4QyKP.js";import{t as S}from"./Input-JApdUstN.js";var Ae=re(`copy`,[[`rect`,{width:`14`,height:`14`,x:`8`,y:`8`,rx:`2`,ry:`2`,key:`17jyea`}],[`path`,{d:`M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2`,key:`zix9uf`}]]),C;(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})(C||={});var je;(function(e){e.mergeShapes=(e,t)=>({...e,...t})})(je||={});var w=C.arrayToEnum([`string`,`nan`,`number`,`integer`,`float`,`boolean`,`date`,`bigint`,`symbol`,`function`,`undefined`,`null`,`array`,`object`,`unknown`,`promise`,`void`,`never`,`map`,`set`]),T=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}},E=C.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`]),D=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,C.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=e=>e.message){let t={},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()}};D.create=e=>new D(e);var O=(e,t)=>{let n;switch(e.code){case E.invalid_type:n=e.received===w.undefined?`Required`:`Expected ${e.expected}, received ${e.received}`;break;case E.invalid_literal:n=`Invalid literal value, expected ${JSON.stringify(e.expected,C.jsonStringifyReplacer)}`;break;case E.unrecognized_keys:n=`Unrecognized key(s) in object: ${C.joinValues(e.keys,`, `)}`;break;case E.invalid_union:n=`Invalid input`;break;case E.invalid_union_discriminator:n=`Invalid discriminator value. Expected ${C.joinValues(e.options)}`;break;case E.invalid_enum_value:n=`Invalid enum value. Expected ${C.joinValues(e.options)}, received '${e.received}'`;break;case E.invalid_arguments:n=`Invalid function arguments`;break;case E.invalid_return_type:n=`Invalid function return type`;break;case E.invalid_date:n=`Invalid date`;break;case E.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}"`:C.assertNever(e.validation):n=e.validation===`regex`?`Invalid`:`Invalid ${e.validation}`;break;case E.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 E.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 E.custom:n=`Invalid input`;break;case E.invalid_intersection_types:n=`Intersection results could not be merged`;break;case E.not_multiple_of:n=`Number must be a multiple of ${e.multipleOf}`;break;case E.not_finite:n=`Number must be finite`;break;default:n=t.defaultError,C.assertNever(e)}return{message:n}},k=O;function A(){return k}var j=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 M(e,t){let n=A(),r=j({issueData:t,data:e.data,path:e.path,errorMaps:[e.common.contextualErrorMap,e.schemaErrorMap,n,n===O?void 0:O].filter(e=>!!e)});e.common.issues.push(r)}var N=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 P;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 P;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}}},P=Object.freeze({status:`aborted`}),Me=e=>({status:`dirty`,value:e}),F=e=>({status:`valid`,value:e}),I=e=>e.status===`aborted`,Ne=e=>e.status===`dirty`,L=e=>e.status===`valid`,R=e=>typeof Promise<`u`&&e instanceof Promise,z;(function(e){e.errToObj=e=>typeof e==`string`?{message:e}:e||{},e.toString=e=>typeof e==`string`?e:e?.message})(z||={});var B=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}},Pe=(e,t)=>{if(L(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 D(e.common.issues),this._error}}};function V(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 H=class{get description(){return this._def.description}_getType(e){return T(e.data)}_getOrReturnCtx(e,t){return t||{common:e.parent.common,data:e.data,parsedType:T(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new N,ctx:{common:e.parent.common,data:e.data,parsedType:T(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let t=this._parse(e);if(R(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:T(e)};return Pe(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:T(e)};if(!this[`~standard`].async)try{let n=this._parseSync({data:e,path:[],parent:t});return L(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=>L(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:T(e)},r=this._parse({data:e,path:n.path,parent:n});return Pe(n,await(R(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:E.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 X({schema:this,typeName:$.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 Z.create(this,this._def)}nullable(){return Q.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return G.create(this)}promise(){return kt.create(this,this._def)}or(e){return gt.create([this,e],this._def)}and(e){return yt.create(this,e,this._def)}transform(e){return new X({...V(this._def),schema:this,typeName:$.ZodEffects,effect:{type:`transform`,transform:e}})}default(e){let t=typeof e==`function`?e:()=>e;return new At({...V(this._def),innerType:this,defaultValue:t,typeName:$.ZodDefault})}brand(){return new Nt({typeName:$.ZodBranded,type:this,...V(this._def)})}catch(e){let t=typeof e==`function`?e:()=>e;return new jt({...V(this._def),innerType:this,catchValue:t,typeName:$.ZodCatch})}describe(e){let t=this.constructor;return new t({...this._def,description:e})}pipe(e){return Pt.create(this,e)}readonly(){return Ft.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},Fe=/^c[^\s-]{8,}$/i,Ie=/^[0-9a-z]+$/,Le=/^[0-9A-HJKMNP-TV-Z]{26}$/i,Re=/^[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,ze=/^[a-z0-9_-]{21}$/i,Be=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,Ve=/^[-+]?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)?)??$/,He=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,Ue=`^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$`,We,Ge=/^(?:(?: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])$/,Ke=/^(?:(?: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])$/,qe=/^(([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]))$/,Je=/^(([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])$/,Ye=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,Xe=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,Ze=`((\\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])))`,Qe=RegExp(`^${Ze}$`);function $e(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 et(e){return RegExp(`^${$e(e)}$`)}function tt(e){let t=`${Ze}T${$e(e)}`,n=[];return n.push(e.local?`Z?`:`Z`),e.offset&&n.push(`([+-]\\d{2}:?\\d{2})`),t=`${t}(${n.join(`|`)})`,RegExp(`^${t}$`)}function nt(e,t){return!!((t===`v4`||!t)&&Ge.test(e)||(t===`v6`||!t)&&qe.test(e))}function rt(e,t){if(!Be.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 it(e,t){return!!((t===`v4`||!t)&&Ke.test(e)||(t===`v6`||!t)&&Je.test(e))}var at=class e extends H{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==w.string){let t=this._getOrReturnCtx(e);return M(t,{code:E.invalid_type,expected:w.string,received:t.parsedType}),P}let t=new N,n;for(let r of this._def.checks)if(r.kind===`min`)e.data.length<r.value&&(n=this._getOrReturnCtx(e,n),M(n,{code:E.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),M(n,{code:E.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?M(n,{code:E.too_big,maximum:r.value,type:`string`,inclusive:!0,exact:!0,message:r.message}):a&&M(n,{code:E.too_small,minimum:r.value,type:`string`,inclusive:!0,exact:!0,message:r.message}),t.dirty())}else if(r.kind===`email`)He.test(e.data)||(n=this._getOrReturnCtx(e,n),M(n,{validation:`email`,code:E.invalid_string,message:r.message}),t.dirty());else if(r.kind===`emoji`)We||=new RegExp(Ue,`u`),We.test(e.data)||(n=this._getOrReturnCtx(e,n),M(n,{validation:`emoji`,code:E.invalid_string,message:r.message}),t.dirty());else if(r.kind===`uuid`)Re.test(e.data)||(n=this._getOrReturnCtx(e,n),M(n,{validation:`uuid`,code:E.invalid_string,message:r.message}),t.dirty());else if(r.kind===`nanoid`)ze.test(e.data)||(n=this._getOrReturnCtx(e,n),M(n,{validation:`nanoid`,code:E.invalid_string,message:r.message}),t.dirty());else if(r.kind===`cuid`)Fe.test(e.data)||(n=this._getOrReturnCtx(e,n),M(n,{validation:`cuid`,code:E.invalid_string,message:r.message}),t.dirty());else if(r.kind===`cuid2`)Ie.test(e.data)||(n=this._getOrReturnCtx(e,n),M(n,{validation:`cuid2`,code:E.invalid_string,message:r.message}),t.dirty());else if(r.kind===`ulid`)Le.test(e.data)||(n=this._getOrReturnCtx(e,n),M(n,{validation:`ulid`,code:E.invalid_string,message:r.message}),t.dirty());else if(r.kind===`url`)try{new URL(e.data)}catch{n=this._getOrReturnCtx(e,n),M(n,{validation:`url`,code:E.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),M(n,{validation:`regex`,code:E.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),M(n,{code:E.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),M(n,{code:E.invalid_string,validation:{startsWith:r.value},message:r.message}),t.dirty()):r.kind===`endsWith`?e.data.endsWith(r.value)||(n=this._getOrReturnCtx(e,n),M(n,{code:E.invalid_string,validation:{endsWith:r.value},message:r.message}),t.dirty()):r.kind===`datetime`?tt(r).test(e.data)||(n=this._getOrReturnCtx(e,n),M(n,{code:E.invalid_string,validation:`datetime`,message:r.message}),t.dirty()):r.kind===`date`?Qe.test(e.data)||(n=this._getOrReturnCtx(e,n),M(n,{code:E.invalid_string,validation:`date`,message:r.message}),t.dirty()):r.kind===`time`?et(r).test(e.data)||(n=this._getOrReturnCtx(e,n),M(n,{code:E.invalid_string,validation:`time`,message:r.message}),t.dirty()):r.kind===`duration`?Ve.test(e.data)||(n=this._getOrReturnCtx(e,n),M(n,{validation:`duration`,code:E.invalid_string,message:r.message}),t.dirty()):r.kind===`ip`?nt(e.data,r.version)||(n=this._getOrReturnCtx(e,n),M(n,{validation:`ip`,code:E.invalid_string,message:r.message}),t.dirty()):r.kind===`jwt`?rt(e.data,r.alg)||(n=this._getOrReturnCtx(e,n),M(n,{validation:`jwt`,code:E.invalid_string,message:r.message}),t.dirty()):r.kind===`cidr`?it(e.data,r.version)||(n=this._getOrReturnCtx(e,n),M(n,{validation:`cidr`,code:E.invalid_string,message:r.message}),t.dirty()):r.kind===`base64`?Ye.test(e.data)||(n=this._getOrReturnCtx(e,n),M(n,{validation:`base64`,code:E.invalid_string,message:r.message}),t.dirty()):r.kind===`base64url`?Xe.test(e.data)||(n=this._getOrReturnCtx(e,n),M(n,{validation:`base64url`,code:E.invalid_string,message:r.message}),t.dirty()):C.assertNever(r);return{status:t.value,value:e.data}}_regex(e,t,n){return this.refinement(t=>e.test(t),{validation:t,code:E.invalid_string,...z.errToObj(n)})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}email(e){return this._addCheck({kind:`email`,...z.errToObj(e)})}url(e){return this._addCheck({kind:`url`,...z.errToObj(e)})}emoji(e){return this._addCheck({kind:`emoji`,...z.errToObj(e)})}uuid(e){return this._addCheck({kind:`uuid`,...z.errToObj(e)})}nanoid(e){return this._addCheck({kind:`nanoid`,...z.errToObj(e)})}cuid(e){return this._addCheck({kind:`cuid`,...z.errToObj(e)})}cuid2(e){return this._addCheck({kind:`cuid2`,...z.errToObj(e)})}ulid(e){return this._addCheck({kind:`ulid`,...z.errToObj(e)})}base64(e){return this._addCheck({kind:`base64`,...z.errToObj(e)})}base64url(e){return this._addCheck({kind:`base64url`,...z.errToObj(e)})}jwt(e){return this._addCheck({kind:`jwt`,...z.errToObj(e)})}ip(e){return this._addCheck({kind:`ip`,...z.errToObj(e)})}cidr(e){return this._addCheck({kind:`cidr`,...z.errToObj(e)})}datetime(e){return typeof e==`string`?this._addCheck({kind:`datetime`,precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:`datetime`,precision:e?.precision===void 0?null:e?.precision,offset:e?.offset??!1,local:e?.local??!1,...z.errToObj(e?.message)})}date(e){return this._addCheck({kind:`date`,message:e})}time(e){return typeof e==`string`?this._addCheck({kind:`time`,precision:null,message:e}):this._addCheck({kind:`time`,precision:e?.precision===void 0?null:e?.precision,...z.errToObj(e?.message)})}duration(e){return this._addCheck({kind:`duration`,...z.errToObj(e)})}regex(e,t){return this._addCheck({kind:`regex`,regex:e,...z.errToObj(t)})}includes(e,t){return this._addCheck({kind:`includes`,value:e,position:t?.position,...z.errToObj(t?.message)})}startsWith(e,t){return this._addCheck({kind:`startsWith`,value:e,...z.errToObj(t)})}endsWith(e,t){return this._addCheck({kind:`endsWith`,value:e,...z.errToObj(t)})}min(e,t){return this._addCheck({kind:`min`,value:e,...z.errToObj(t)})}max(e,t){return this._addCheck({kind:`max`,value:e,...z.errToObj(t)})}length(e,t){return this._addCheck({kind:`length`,value:e,...z.errToObj(t)})}nonempty(e){return this.min(1,z.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}};at.create=e=>new at({checks:[],typeName:$.ZodString,coerce:e?.coerce??!1,...V(e)});function ot(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 st=class e extends H{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 M(t,{code:E.invalid_type,expected:w.number,received:t.parsedType}),P}let t,n=new N;for(let r of this._def.checks)r.kind===`int`?C.isInteger(e.data)||(t=this._getOrReturnCtx(e,t),M(t,{code:E.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),M(t,{code:E.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),M(t,{code:E.too_big,maximum:r.value,type:`number`,inclusive:r.inclusive,exact:!1,message:r.message}),n.dirty()):r.kind===`multipleOf`?ot(e.data,r.value)!==0&&(t=this._getOrReturnCtx(e,t),M(t,{code:E.not_multiple_of,multipleOf:r.value,message:r.message}),n.dirty()):r.kind===`finite`?Number.isFinite(e.data)||(t=this._getOrReturnCtx(e,t),M(t,{code:E.not_finite,message:r.message}),n.dirty()):C.assertNever(r);return{status:n.value,value:e.data}}gte(e,t){return this.setLimit(`min`,e,!0,z.toString(t))}gt(e,t){return this.setLimit(`min`,e,!1,z.toString(t))}lte(e,t){return this.setLimit(`max`,e,!0,z.toString(t))}lt(e,t){return this.setLimit(`max`,e,!1,z.toString(t))}setLimit(t,n,r,i){return new e({...this._def,checks:[...this._def.checks,{kind:t,value:n,inclusive:r,message:z.toString(i)}]})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}int(e){return this._addCheck({kind:`int`,message:z.toString(e)})}positive(e){return this._addCheck({kind:`min`,value:0,inclusive:!1,message:z.toString(e)})}negative(e){return this._addCheck({kind:`max`,value:0,inclusive:!1,message:z.toString(e)})}nonpositive(e){return this._addCheck({kind:`max`,value:0,inclusive:!0,message:z.toString(e)})}nonnegative(e){return this._addCheck({kind:`min`,value:0,inclusive:!0,message:z.toString(e)})}multipleOf(e,t){return this._addCheck({kind:`multipleOf`,value:e,message:z.toString(t)})}finite(e){return this._addCheck({kind:`finite`,message:z.toString(e)})}safe(e){return this._addCheck({kind:`min`,inclusive:!0,value:-(2**53-1),message:z.toString(e)})._addCheck({kind:`max`,inclusive:!0,value:2**53-1,message:z.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`&&C.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)}};st.create=e=>new st({checks:[],typeName:$.ZodNumber,coerce:e?.coerce||!1,...V(e)});var ct=class e extends H{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 N;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),M(t,{code:E.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),M(t,{code:E.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),M(t,{code:E.not_multiple_of,multipleOf:r.value,message:r.message}),n.dirty()):C.assertNever(r);return{status:n.value,value:e.data}}_getInvalidInput(e){let t=this._getOrReturnCtx(e);return M(t,{code:E.invalid_type,expected:w.bigint,received:t.parsedType}),P}gte(e,t){return this.setLimit(`min`,e,!0,z.toString(t))}gt(e,t){return this.setLimit(`min`,e,!1,z.toString(t))}lte(e,t){return this.setLimit(`max`,e,!0,z.toString(t))}lt(e,t){return this.setLimit(`max`,e,!1,z.toString(t))}setLimit(t,n,r,i){return new e({...this._def,checks:[...this._def.checks,{kind:t,value:n,inclusive:r,message:z.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:z.toString(e)})}negative(e){return this._addCheck({kind:`max`,value:BigInt(0),inclusive:!1,message:z.toString(e)})}nonpositive(e){return this._addCheck({kind:`max`,value:BigInt(0),inclusive:!0,message:z.toString(e)})}nonnegative(e){return this._addCheck({kind:`min`,value:BigInt(0),inclusive:!0,message:z.toString(e)})}multipleOf(e,t){return this._addCheck({kind:`multipleOf`,value:e,message:z.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}};ct.create=e=>new ct({checks:[],typeName:$.ZodBigInt,coerce:e?.coerce??!1,...V(e)});var lt=class extends H{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==w.boolean){let t=this._getOrReturnCtx(e);return M(t,{code:E.invalid_type,expected:w.boolean,received:t.parsedType}),P}return F(e.data)}};lt.create=e=>new lt({typeName:$.ZodBoolean,coerce:e?.coerce||!1,...V(e)});var ut=class e extends H{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==w.date){let t=this._getOrReturnCtx(e);return M(t,{code:E.invalid_type,expected:w.date,received:t.parsedType}),P}if(Number.isNaN(e.data.getTime()))return M(this._getOrReturnCtx(e),{code:E.invalid_date}),P;let t=new N,n;for(let r of this._def.checks)r.kind===`min`?e.data.getTime()<r.value&&(n=this._getOrReturnCtx(e,n),M(n,{code:E.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),M(n,{code:E.too_big,message:r.message,inclusive:!0,exact:!1,maximum:r.value,type:`date`}),t.dirty()):C.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:z.toString(t)})}max(e,t){return this._addCheck({kind:`max`,value:e.getTime(),message:z.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)}};ut.create=e=>new ut({checks:[],coerce:e?.coerce||!1,typeName:$.ZodDate,...V(e)});var dt=class extends H{_parse(e){if(this._getType(e)!==w.symbol){let t=this._getOrReturnCtx(e);return M(t,{code:E.invalid_type,expected:w.symbol,received:t.parsedType}),P}return F(e.data)}};dt.create=e=>new dt({typeName:$.ZodSymbol,...V(e)});var ft=class extends H{_parse(e){if(this._getType(e)!==w.undefined){let t=this._getOrReturnCtx(e);return M(t,{code:E.invalid_type,expected:w.undefined,received:t.parsedType}),P}return F(e.data)}};ft.create=e=>new ft({typeName:$.ZodUndefined,...V(e)});var pt=class extends H{_parse(e){if(this._getType(e)!==w.null){let t=this._getOrReturnCtx(e);return M(t,{code:E.invalid_type,expected:w.null,received:t.parsedType}),P}return F(e.data)}};pt.create=e=>new pt({typeName:$.ZodNull,...V(e)});var mt=class extends H{constructor(){super(...arguments),this._any=!0}_parse(e){return F(e.data)}};mt.create=e=>new mt({typeName:$.ZodAny,...V(e)});var U=class extends H{constructor(){super(...arguments),this._unknown=!0}_parse(e){return F(e.data)}};U.create=e=>new U({typeName:$.ZodUnknown,...V(e)});var W=class extends H{_parse(e){let t=this._getOrReturnCtx(e);return M(t,{code:E.invalid_type,expected:w.never,received:t.parsedType}),P}};W.create=e=>new W({typeName:$.ZodNever,...V(e)});var ht=class extends H{_parse(e){if(this._getType(e)!==w.undefined){let t=this._getOrReturnCtx(e);return M(t,{code:E.invalid_type,expected:w.void,received:t.parsedType}),P}return F(e.data)}};ht.create=e=>new ht({typeName:$.ZodVoid,...V(e)});var G=class e extends H{_parse(e){let{ctx:t,status:n}=this._processInputParams(e),r=this._def;if(t.parsedType!==w.array)return M(t,{code:E.invalid_type,expected:w.array,received:t.parsedType}),P;if(r.exactLength!==null){let e=t.data.length>r.exactLength.value,i=t.data.length<r.exactLength.value;(e||i)&&(M(t,{code:e?E.too_big:E.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&&(M(t,{code:E.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&&(M(t,{code:E.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 B(t,e,t.path,n)))).then(e=>N.mergeArray(n,e));let i=[...t.data].map((e,n)=>r.type._parseSync(new B(t,e,t.path,n)));return N.mergeArray(n,i)}get element(){return this._def.type}min(t,n){return new e({...this._def,minLength:{value:t,message:z.toString(n)}})}max(t,n){return new e({...this._def,maxLength:{value:t,message:z.toString(n)}})}length(t,n){return new e({...this._def,exactLength:{value:t,message:z.toString(n)}})}nonempty(e){return this.min(1,e)}};G.create=(e,t)=>new G({type:e,minLength:null,maxLength:null,exactLength:null,typeName:$.ZodArray,...V(t)});function K(e){if(e instanceof q){let t={};for(let n in e.shape){let r=e.shape[n];t[n]=Z.create(K(r))}return new q({...e._def,shape:()=>t})}else if(e instanceof G)return new G({...e._def,type:K(e.element)});else if(e instanceof Z)return Z.create(K(e.unwrap()));else if(e instanceof Q)return Q.create(K(e.unwrap()));else if(e instanceof Y)return Y.create(e.items.map(e=>K(e)));else return e}var q=class e extends H{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:C.objectKeys(e)},this._cached}_parse(e){if(this._getType(e)!==w.object){let t=this._getOrReturnCtx(e);return M(t,{code:E.invalid_type,expected:w.object,received:t.parsedType}),P}let{status:t,ctx:n}=this._processInputParams(e),{shape:r,keys:i}=this._getCached(),a=[];if(!(this._def.catchall instanceof W&&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 B(n,i,n.path,e)),alwaysSet:e in n.data})}if(this._def.catchall instanceof W){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&&(M(n,{code:E.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 B(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=>N.mergeObjectSync(t,e)):N.mergeObjectSync(t,o)}get shape(){return this._def.shape()}strict(t){return z.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:z.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:$.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 C.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 C.objectKeys(this.shape))t[e]||(n[e]=this.shape[e]);return new e({...this._def,shape:()=>n})}deepPartial(){return K(this)}partial(t){let n={};for(let e of C.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 C.objectKeys(this.shape))if(t&&!t[e])n[e]=this.shape[e];else{let t=this.shape[e];for(;t instanceof Z;)t=t._def.innerType;n[e]=t}return new e({...this._def,shape:()=>n})}keyof(){return Et(C.objectKeys(this.shape))}};q.create=(e,t)=>new q({shape:()=>e,unknownKeys:`strip`,catchall:W.create(),typeName:$.ZodObject,...V(t)}),q.strictCreate=(e,t)=>new q({shape:()=>e,unknownKeys:`strict`,catchall:W.create(),typeName:$.ZodObject,...V(t)}),q.lazycreate=(e,t)=>new q({shape:e,unknownKeys:`strip`,catchall:W.create(),typeName:$.ZodObject,...V(t)});var gt=class extends H{_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 D(e.ctx.common.issues));return M(t,{code:E.invalid_union,unionErrors:n}),P}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 D(e));return M(t,{code:E.invalid_union,unionErrors:i}),P}}get options(){return this._def.options}};gt.create=(e,t)=>new gt({options:e,typeName:$.ZodUnion,...V(t)});var J=e=>e instanceof wt?J(e.schema):e instanceof X?J(e.innerType()):e instanceof Tt?[e.value]:e instanceof Dt?e.options:e instanceof Ot?C.objectValues(e.enum):e instanceof At?J(e._def.innerType):e instanceof ft?[void 0]:e instanceof pt?[null]:e instanceof Z?[void 0,...J(e.unwrap())]:e instanceof Q?[null,...J(e.unwrap())]:e instanceof Nt||e instanceof Ft?J(e.unwrap()):e instanceof jt?J(e._def.innerType):[],_t=class e extends H{_parse(e){let{ctx:t}=this._processInputParams(e);if(t.parsedType!==w.object)return M(t,{code:E.invalid_type,expected:w.object,received:t.parsedType}),P;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}):(M(t,{code:E.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),P)}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=J(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:$.ZodDiscriminatedUnion,discriminator:t,options:n,optionsMap:i,...V(r)})}};function vt(e,t){let n=T(e),r=T(t);if(e===t)return{valid:!0,data:e};if(n===w.object&&r===w.object){let n=C.objectKeys(t),r=C.objectKeys(e).filter(e=>n.indexOf(e)!==-1),i={...e,...t};for(let n of r){let r=vt(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=vt(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 yt=class extends H{_parse(e){let{status:t,ctx:n}=this._processInputParams(e),r=(e,r)=>{if(I(e)||I(r))return P;let i=vt(e.value,r.value);return i.valid?((Ne(e)||Ne(r))&&t.dirty(),{status:t.value,value:i.data}):(M(n,{code:E.invalid_intersection_types}),P)};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}))}};yt.create=(e,t,n)=>new yt({left:e,right:t,typeName:$.ZodIntersection,...V(n)});var Y=class e extends H{_parse(e){let{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==w.array)return M(n,{code:E.invalid_type,expected:w.array,received:n.parsedType}),P;if(n.data.length<this._def.items.length)return M(n,{code:E.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:`array`}),P;!this._def.rest&&n.data.length>this._def.items.length&&(M(n,{code:E.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 B(n,e,n.path,t)):null}).filter(e=>!!e);return n.common.async?Promise.all(r).then(e=>N.mergeArray(t,e)):N.mergeArray(t,r)}get items(){return this._def.items}rest(t){return new e({...this._def,rest:t})}};Y.create=(e,t)=>{if(!Array.isArray(e))throw Error(`You must pass an array of schemas to z.tuple([ ... ])`);return new Y({items:e,typeName:$.ZodTuple,rest:null,...V(t)})};var bt=class e extends H{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 M(n,{code:E.invalid_type,expected:w.object,received:n.parsedType}),P;let r=[],i=this._def.keyType,a=this._def.valueType;for(let e in n.data)r.push({key:i._parse(new B(n,e,n.path,e)),value:a._parse(new B(n,n.data[e],n.path,e)),alwaysSet:e in n.data});return n.common.async?N.mergeObjectAsync(t,r):N.mergeObjectSync(t,r)}get element(){return this._def.valueType}static create(t,n,r){return n instanceof H?new e({keyType:t,valueType:n,typeName:$.ZodRecord,...V(r)}):new e({keyType:at.create(),valueType:t,typeName:$.ZodRecord,...V(n)})}},xt=class extends H{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 M(n,{code:E.invalid_type,expected:w.map,received:n.parsedType}),P;let r=this._def.keyType,i=this._def.valueType,a=[...n.data.entries()].map(([e,t],a)=>({key:r._parse(new B(n,e,n.path,[a,`key`])),value:i._parse(new B(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 P;(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 P;(r.status===`dirty`||i.status===`dirty`)&&t.dirty(),e.set(r.value,i.value)}return{status:t.value,value:e}}}};xt.create=(e,t,n)=>new xt({valueType:t,keyType:e,typeName:$.ZodMap,...V(n)});var St=class e extends H{_parse(e){let{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==w.set)return M(n,{code:E.invalid_type,expected:w.set,received:n.parsedType}),P;let r=this._def;r.minSize!==null&&n.data.size<r.minSize.value&&(M(n,{code:E.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&&(M(n,{code:E.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 P;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 B(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:z.toString(n)}})}max(t,n){return new e({...this._def,maxSize:{value:t,message:z.toString(n)}})}size(e,t){return this.min(e,t).max(e,t)}nonempty(e){return this.min(1,e)}};St.create=(e,t)=>new St({valueType:e,minSize:null,maxSize:null,typeName:$.ZodSet,...V(t)});var Ct=class e extends H{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:t}=this._processInputParams(e);if(t.parsedType!==w.function)return M(t,{code:E.invalid_type,expected:w.function,received:t.parsedType}),P;function n(e,n){return j({data:e,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,A(),O].filter(e=>!!e),issueData:{code:E.invalid_arguments,argumentsError:n}})}function r(e,n){return j({data:e,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,A(),O].filter(e=>!!e),issueData:{code:E.invalid_return_type,returnTypeError:n}})}let i={errorMap:t.common.contextualErrorMap},a=t.data;if(this._def.returns instanceof kt){let e=this;return F(async function(...t){let o=new D([]),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 F(function(...t){let o=e._def.args.safeParse(t,i);if(!o.success)throw new D([n(t,o.error)]);let s=Reflect.apply(a,this,o.data),c=e._def.returns.safeParse(s,i);if(!c.success)throw new D([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:Y.create(t).rest(U.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||Y.create([]).rest(U.create()),returns:n||U.create(),typeName:$.ZodFunction,...V(r)})}},wt=class extends H{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})}};wt.create=(e,t)=>new wt({getter:e,typeName:$.ZodLazy,...V(t)});var Tt=class extends H{_parse(e){if(e.data!==this._def.value){let t=this._getOrReturnCtx(e);return M(t,{received:t.data,code:E.invalid_literal,expected:this._def.value}),P}return{status:`valid`,value:e.data}}get value(){return this._def.value}};Tt.create=(e,t)=>new Tt({value:e,typeName:$.ZodLiteral,...V(t)});function Et(e,t){return new Dt({values:e,typeName:$.ZodEnum,...V(t)})}var Dt=class e extends H{_parse(e){if(typeof e.data!=`string`){let t=this._getOrReturnCtx(e),n=this._def.values;return M(t,{expected:C.joinValues(n),received:t.parsedType,code:E.invalid_type}),P}if(this._cache||=new Set(this._def.values),!this._cache.has(e.data)){let t=this._getOrReturnCtx(e),n=this._def.values;return M(t,{received:t.data,code:E.invalid_enum_value,options:n}),P}return F(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})}};Dt.create=Et;var Ot=class extends H{_parse(e){let t=C.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==w.string&&n.parsedType!==w.number){let e=C.objectValues(t);return M(n,{expected:C.joinValues(e),received:n.parsedType,code:E.invalid_type}),P}if(this._cache||=new Set(C.getValidEnumValues(this._def.values)),!this._cache.has(e.data)){let e=C.objectValues(t);return M(n,{received:n.data,code:E.invalid_enum_value,options:e}),P}return F(e.data)}get enum(){return this._def.values}};Ot.create=(e,t)=>new Ot({values:e,typeName:$.ZodNativeEnum,...V(t)});var kt=class extends H{unwrap(){return this._def.type}_parse(e){let{ctx:t}=this._processInputParams(e);return t.parsedType!==w.promise&&t.common.async===!1?(M(t,{code:E.invalid_type,expected:w.promise,received:t.parsedType}),P):F((t.parsedType===w.promise?t.data:Promise.resolve(t.data)).then(e=>this._def.type.parseAsync(e,{path:t.path,errorMap:t.common.contextualErrorMap})))}};kt.create=(e,t)=>new kt({type:e,typeName:$.ZodPromise,...V(t)});var X=class extends H{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===$.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=>{M(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 P;let r=await this._def.schema._parseAsync({data:e,path:n.path,parent:n});return r.status===`aborted`?P:r.status===`dirty`||t.value===`dirty`?Me(r.value):r});{if(t.value===`aborted`)return P;let r=this._def.schema._parseSync({data:e,path:n.path,parent:n});return r.status===`aborted`?P:r.status===`dirty`||t.value===`dirty`?Me(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`?P:(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`?P:(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(!L(e))return P;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=>L(e)?Promise.resolve(r.transform(e.value,i)).then(e=>({status:t.value,value:e})):P);C.assertNever(r)}};X.create=(e,t,n)=>new X({schema:e,typeName:$.ZodEffects,effect:t,...V(n)}),X.createWithPreprocess=(e,t,n)=>new X({schema:t,effect:{type:`preprocess`,transform:e},typeName:$.ZodEffects,...V(n)});var Z=class extends H{_parse(e){return this._getType(e)===w.undefined?F(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Z.create=(e,t)=>new Z({innerType:e,typeName:$.ZodOptional,...V(t)});var Q=class extends H{_parse(e){return this._getType(e)===w.null?F(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Q.create=(e,t)=>new Q({innerType:e,typeName:$.ZodNullable,...V(t)});var At=class extends H{_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}};At.create=(e,t)=>new At({innerType:e,typeName:$.ZodDefault,defaultValue:typeof t.default==`function`?t.default:()=>t.default,...V(t)});var jt=class extends H{_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 R(r)?r.then(e=>({status:`valid`,value:e.status===`valid`?e.value:this._def.catchValue({get error(){return new D(n.common.issues)},input:n.data})})):{status:`valid`,value:r.status===`valid`?r.value:this._def.catchValue({get error(){return new D(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};jt.create=(e,t)=>new jt({innerType:e,typeName:$.ZodCatch,catchValue:typeof t.catch==`function`?t.catch:()=>t.catch,...V(t)});var Mt=class extends H{_parse(e){if(this._getType(e)!==w.nan){let t=this._getOrReturnCtx(e);return M(t,{code:E.invalid_type,expected:w.nan,received:t.parsedType}),P}return{status:`valid`,value:e.data}}};Mt.create=e=>new Mt({typeName:$.ZodNaN,...V(e)});var Nt=class extends H{_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}},Pt=class e extends H{_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`?P:e.status===`dirty`?(t.dirty(),Me(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`?P: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:$.ZodPipeline})}},Ft=class extends H{_parse(e){let t=this._def.innerType._parse(e),n=e=>(L(e)&&(e.value=Object.freeze(e.value)),e);return R(t)?t.then(e=>n(e)):n(t)}unwrap(){return this._def.innerType}};Ft.create=(e,t)=>new Ft({innerType:e,typeName:$.ZodReadonly,...V(t)}),q.lazycreate;var $;(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`})($||={});var It=at.create;st.create,Mt.create,ct.create,lt.create,ut.create,dt.create,ft.create,pt.create,mt.create,U.create,W.create,ht.create,G.create;var Lt=q.create;q.strictCreate,gt.create,_t.create,yt.create,Y.create,bt.create,xt.create,St.create,Ct.create,wt.create,Tt.create,Dt.create,Ot.create,kt.create,X.create,Z.create,Q.create,X.createWithPreprocess,Pt.create;var Rt={class:`p-6`},zt={class:`flex items-center justify-between mb-4`},Bt={class:`bg-card rounded-lg border overflow-hidden`},Vt={class:`flex items-center gap-1`},Ht={class:`font-mono text-xs text-muted-foreground`},Ut={class:`flex flex-wrap gap-1`},Wt={key:0,class:`text-muted-foreground text-xs`},Gt={key:1,class:`text-muted-foreground`},Kt={class:`rounded-md border bg-muted/40 p-3 space-y-2`},qt={class:`flex gap-2`},Jt={key:0,class:`text-sm text-destructive mt-1`},Yt={key:0,class:`text-sm text-destructive mt-1`},Xt={key:0,class:`text-sm text-destructive mt-1`},Zt={class:`flex flex-wrap gap-1.5 mb-1.5`},Qt={class:`flex gap-2`},$t={class:`flex items-center gap-2 mb-1`},en={key:0,class:`mt-2 space-y-2`},tn={key:0,class:`text-sm text-destructive mt-1`},nn={key:0,class:`text-sm text-destructive mt-1`},rn={key:0,class:`text-sm text-destructive mt-1`},an={class:`flex items-center gap-2`},on=3,sn=12e4,cn=10,ln=100,un=1e3,dn=7,fn=7,pn=2e3,mn=s({__name:`Providers`,setup(s){let re={name:``,api_type:`anthropic`,base_url:``,api_key:``,models:[],is_active:!0,max_concurrency:on,queue_timeout_ms:sn,max_queue_size:cn},C=t(``),je=t([]),w=t([]),T=t(!1),E=t(null),D=t(null),O=t({...re}),k=t({}),A=t(!1),j=t(null),M=Lt({name:It().min(1,`请输入名称`).regex(/^[a-zA-Z0-9_-]+$/,`仅允许英文、数字、横线和下划线`),base_url:It().min(1,`请输入 Base URL`).url(`请输入合法的 URL`)});function N(){let e={},t=M.safeParse({name:O.value.name.trim(),base_url:O.value.base_url.trim()});if(!t.success)for(let n of t.error.issues){let t=n.path[0];e[t]||(e[t]=n.message)}if(!E.value&&!O.value.api_key.trim()&&(e.api_key=`请输入 API Key`),A.value){let t=O.value.max_concurrency;(!t||t<1||t>ln)&&(e.max_concurrency=`范围 1-${ln}`),O.value.queue_timeout_ms<0&&(e.queue_timeout_ms=`不能为负数`);let n=O.value.max_queue_size;(!n||n<1||n>un)&&(e.max_queue_size=`范围 1-${un}`)}return k.value=e,Object.keys(e).length===0}function P(e){return e?e.slice(0,dn)+`*`.repeat(fn):``}async function Me(e,t){await navigator.clipboard.writeText(e),j.value=t,setTimeout(()=>{j.value=null},pn)}let F=t(``),I=t(``),Ne=ne(()=>F.value?w.value.find(e=>e.group===F.value)?.presets??[]:[]);function L(){let e=w.value.find(e=>e.group===F.value)?.presets;e?.length?(I.value=e[0].plan,R()):I.value=``}function R(){let e=Ne.value.find(e=>e.plan===I.value);e&&(O.value.name=e.presetName,O.value.api_type=`anthropic`,O.value.base_url=e.baseUrl,O.value.models=[...e.models])}async function z(){try{je.value=await l.getProviders()}catch(e){console.error(`Failed to load providers:`,e),ke.error(`加载供应商失败`)}}function B(){let e=C.value.trim();if(!e)return;let t=e.split(/[,,]/).map(e=>e.trim()).filter(Boolean);for(let e of t)O.value.models.includes(e)||O.value.models.push(e);C.value=``}function Pe(e){O.value.models.splice(e,1)}function V(){E.value=null,O.value={...re},A.value=!0,C.value=``,F.value=``,I.value=``,k.value={},T.value=!0}function H(e){E.value=e.id,O.value={name:e.name,api_type:`anthropic`,base_url:e.base_url,api_key:``,models:[...e.models||[]],is_active:!!e.is_active,max_concurrency:e.max_concurrency??on,queue_timeout_ms:e.queue_timeout_ms??sn,max_queue_size:e.max_queue_size??cn},A.value=(e.max_concurrency??0)>0,C.value=``,F.value=``,I.value=``,k.value={},T.value=!0}function Fe(){let e={name:O.value.name,api_type:`anthropic`,base_url:O.value.base_url,models:O.value.models,is_active:+!!O.value.is_active,max_concurrency:A.value?O.value.max_concurrency:0,queue_timeout_ms:A.value?O.value.queue_timeout_ms:0,max_queue_size:A.value?O.value.max_queue_size:cn};return O.value.api_key&&(e.api_key=O.value.api_key),e}async function Ie(){if(N())try{let e=Fe();e.name=O.value.name.trim(),E.value?await l.updateProvider(E.value,e):(e.api_key=O.value.api_key,await l.createProvider(e)),T.value=!1,await z()}catch(e){console.error(`Failed to save provider:`,e),ke.error(`保存供应商失败`)}}function Le(e){D.value=e}async function Re(){let e=D.value;if(e){D.value=null;try{await l.deleteProvider(e.id),await z()}catch(e){console.error(`Failed to delete provider:`,e),ke.error(`删除供应商失败`)}}}return ee(async()=>{try{w.value=await l.recommended.getProviders()}catch{w.value=[]}await z()}),(t,s)=>(m(),d(`div`,Rt,[e(`div`,zt,[s[21]||=e(`h2`,{class:`text-lg font-semibold text-foreground`},`供应商`,-1),r(u(h),{onClick:V,class:`flex items-center gap-1`},{default:_(()=>[...s[20]||=[e(`svg`,{class:`w-4 h-4`,fill:`none`,stroke:`currentColor`,viewBox:`0 0 24 24`},[e(`path`,{"stroke-linecap":`round`,"stroke-linejoin":`round`,"stroke-width":`2`,d:`M12 4v16m8-8H4`})],-1),p(` 添加供应商 `,-1)]]),_:1})]),e(`div`,Bt,[r(u(we),null,{default:_(()=>[r(u(Ee),null,{default:_(()=>[r(u(Te),{class:`bg-muted`},{default:_(()=>[r(u(b),{class:`text-muted-foreground`},{default:_(()=>[...s[22]||=[p(`名称`,-1)]]),_:1}),r(u(b),{class:`text-muted-foreground`},{default:_(()=>[...s[23]||=[p(`类型`,-1)]]),_:1}),r(u(b),{class:`text-muted-foreground`},{default:_(()=>[...s[24]||=[p(`Base URL`,-1)]]),_:1}),r(u(b),{class:`text-muted-foreground`},{default:_(()=>[...s[25]||=[p(`API Key`,-1)]]),_:1}),r(u(b),{class:`text-muted-foreground`},{default:_(()=>[...s[26]||=[p(`模型`,-1)]]),_:1}),r(u(b),{class:`text-muted-foreground`},{default:_(()=>[...s[27]||=[p(`并发`,-1)]]),_:1}),r(u(b),{class:`text-muted-foreground`},{default:_(()=>[...s[28]||=[p(`状态`,-1)]]),_:1}),r(u(b),{class:`text-right text-muted-foreground`},{default:_(()=>[...s[29]||=[p(`操作`,-1)]]),_:1})]),_:1})]),_:1}),r(u(Ce),null,{default:_(()=>[(m(!0),d(c,null,g(je.value,t=>(m(),f(u(Te),{key:t.id,class:o({"opacity-60":!t.is_active})},{default:_(()=>[r(u(y),{class:`font-medium`},{default:_(()=>[p(v(t.name),1)]),_:2},1024),r(u(y),null,{default:_(()=>[r(u(Oe),{variant:`secondary`},{default:_(()=>[p(v(t.api_type),1)]),_:2},1024)]),_:2},1024),r(u(y),{class:`text-muted-foreground`},{default:_(()=>[p(v(t.base_url),1)]),_:2},1024),r(u(y),null,{default:_(()=>[e(`div`,Vt,[e(`span`,Ht,v(P(t.api_key)),1),r(u(h),{variant:`ghost`,size:`sm`,class:`h-6 w-6 p-0`,onClick:e=>Me(t.api_key,t.id)},{default:_(()=>[(m(),f(te(j.value===t.id?u(ie):u(Ae)),{class:o([`w-3.5 h-3.5`,{"text-green-500":j.value===t.id}])},null,8,[`class`]))]),_:2},1032,[`onClick`])])]),_:2},1024),r(u(y),null,{default:_(()=>[e(`div`,Ut,[(m(!0),d(c,null,g(t.models||[],e=>(m(),f(u(Oe),{key:e,variant:`secondary`,class:`text-xs`},{default:_(()=>[p(v(e),1)]),_:2},1024))),128)),t.models?.length?i(``,!0):(m(),d(`span`,Wt,`-`))])]),_:2},1024),r(u(y),null,{default:_(()=>[t.max_concurrency>0?(m(),f(u(Oe),{key:0,variant:`secondary`},{default:_(()=>[p(v(t.max_concurrency),1)]),_:2},1024)):(m(),d(`span`,Gt,`-`))]),_:2},1024),r(u(y),null,{default:_(()=>[r(u(Oe),{variant:t.is_active?`default`:`secondary`},{default:_(()=>[p(v(t.is_active?`启用`:`禁用`),1)]),_:2},1032,[`variant`])]),_:2},1024),r(u(y),{class:`text-right`},{default:_(()=>[r(u(h),{variant:`ghost`,size:`sm`,onClick:e=>H(t),class:`text-muted-foreground hover:text-primary mr-2`},{default:_(()=>[...s[30]||=[p(`编辑`,-1)]]),_:1},8,[`onClick`]),r(u(h),{variant:`ghost`,size:`sm`,onClick:e=>Le(t),class:`text-muted-foreground hover:text-destructive`},{default:_(()=>[...s[31]||=[p(`删除`,-1)]]),_:1},8,[`onClick`])]),_:2},1024)]),_:2},1032,[`class`]))),128)),je.value.length===0?(m(),f(u(Te),{key:0},{default:_(()=>[r(u(y),{colspan:`8`,class:`text-center text-muted-foreground py-8`},{default:_(()=>[...s[32]||=[p(`暂无供应商`,-1)]]),_:1})]),_:1})):i(``,!0)]),_:1})]),_:1})]),r(u(pe),{open:T.value,"onUpdate:open":s[18]||=e=>T.value=e},{default:_(()=>[r(u(de),null,{default:_(()=>[r(u(fe),null,{default:_(()=>[r(u(he),null,{default:_(()=>[p(v(E.value?`编辑供应商`:`添加供应商`),1)]),_:1})]),_:1}),e(`form`,{onSubmit:a(Ie,[`prevent`]),class:`space-y-3`},[e(`div`,Kt,[s[33]||=e(`div`,{class:`text-xs font-medium text-muted-foreground`},`快速配置`,-1),e(`div`,qt,[r(u(ae),{modelValue:F.value,"onUpdate:modelValue":[s[0]||=e=>F.value=e,L]},{default:_(()=>[r(u(se),{class:`flex-1`},{default:_(()=>[r(u(le),{placeholder:`选择供应商`})]),_:1}),r(u(oe),null,{default:_(()=>[(m(!0),d(c,null,g(w.value,e=>(m(),f(u(ce),{key:e.group,value:e.group},{default:_(()=>[p(v(e.group),1)]),_:2},1032,[`value`]))),128))]),_:1})]),_:1},8,[`modelValue`]),r(u(ae),{modelValue:I.value,"onUpdate:modelValue":[s[1]||=e=>I.value=e,R],disabled:!F.value},{default:_(()=>[r(u(se),{class:`flex-1`},{default:_(()=>[r(u(le),{placeholder:`选择套餐`})]),_:1}),r(u(oe),null,{default:_(()=>[(m(!0),d(c,null,g(Ne.value,e=>(m(),f(u(ce),{key:e.plan,value:e.plan},{default:_(()=>[p(v(e.plan),1)]),_:2},1032,[`value`]))),128))]),_:1})]),_:1},8,[`modelValue`,`disabled`])])]),e(`div`,null,[r(u(x),{class:`block text-sm font-medium text-foreground mb-1`},{default:_(()=>[...s[34]||=[p(`名称`,-1)]]),_:1}),r(u(S),{modelValue:O.value.name,"onUpdate:modelValue":s[2]||=e=>O.value.name=e,type:`text`,required:``,onInput:s[3]||=e=>delete k.value.name},null,8,[`modelValue`]),k.value.name?(m(),d(`p`,Jt,v(k.value.name),1)):i(``,!0)]),e(`div`,null,[r(u(x),{class:`block text-sm font-medium text-foreground mb-1`},{default:_(()=>[...s[35]||=[p(`Base URL`,-1)]]),_:1}),r(u(S),{modelValue:O.value.base_url,"onUpdate:modelValue":s[4]||=e=>O.value.base_url=e,type:`url`,required:``,onInput:s[5]||=e=>delete k.value.base_url},null,8,[`modelValue`]),k.value.base_url?(m(),d(`p`,Yt,v(k.value.base_url),1)):i(``,!0)]),e(`div`,null,[r(u(x),{class:`block text-sm font-medium text-foreground mb-1`},{default:_(()=>[...s[36]||=[p(`API Key`,-1)]]),_:1}),r(u(S),{modelValue:O.value.api_key,"onUpdate:modelValue":s[6]||=e=>O.value.api_key=e,type:`text`,required:!E.value,placeholder:E.value?`留空则保持原密钥不变`:``,onInput:s[7]||=e=>delete k.value.api_key},null,8,[`modelValue`,`required`,`placeholder`]),k.value.api_key?(m(),d(`p`,Xt,v(k.value.api_key),1)):i(``,!0)]),e(`div`,null,[r(u(x),{class:`block text-sm font-medium text-foreground mb-1`},{default:_(()=>[...s[37]||=[p(`可用模型`,-1)]]),_:1}),e(`div`,Zt,[(m(!0),d(c,null,g(O.value.models,(e,t)=>(m(),f(u(Oe),{key:t,variant:`secondary`,class:`gap-1 pr-1`},{default:_(()=>[p(v(e)+` `,1),r(u(h),{type:`button`,variant:`ghost`,size:`icon`,class:`h-4 w-4 rounded-full hover:bg-muted p-0 text-xs leading-none`,onClick:e=>Pe(t)},{default:_(()=>[...s[38]||=[p(`×`,-1)]]),_:1},8,[`onClick`])]),_:2},1024))),128))]),e(`div`,Qt,[r(u(S),{modelValue:C.value,"onUpdate:modelValue":s[8]||=e=>C.value=e,placeholder:`输入模型名称,多个用逗号分隔`,onKeydown:n(a(B,[`prevent`]),[`enter`]),class:`flex-1`},null,8,[`modelValue`,`onKeydown`]),r(u(h),{type:`button`,variant:`outline`,size:`sm`,onClick:B,disabled:!C.value.trim()},{default:_(()=>[...s[39]||=[p(`添加`,-1)]]),_:1},8,[`disabled`])])]),e(`div`,null,[e(`div`,$t,[r(u(De),{modelValue:A.value,"onUpdate:modelValue":s[9]||=e=>A.value=e,id:`concurrency-switch`},null,8,[`modelValue`]),r(u(x),{for:`concurrency-switch`,class:`text-sm text-foreground`},{default:_(()=>[...s[40]||=[p(`并发控制`,-1)]]),_:1})]),A.value?(m(),d(`div`,en,[e(`div`,null,[r(u(x),{class:`block text-sm font-medium text-foreground mb-1`},{default:_(()=>[...s[41]||=[p(`最大并发数`,-1)]]),_:1}),r(u(S),{modelValue:O.value.max_concurrency,"onUpdate:modelValue":s[10]||=e=>O.value.max_concurrency=e,modelModifiers:{number:!0},type:`number`,min:`1`,max:ln,placeholder:`3`,onInput:s[11]||=e=>delete k.value.max_concurrency},null,8,[`modelValue`]),k.value.max_concurrency?(m(),d(`p`,tn,v(k.value.max_concurrency),1)):i(``,!0)]),e(`div`,null,[r(u(x),{class:`block text-sm font-medium text-foreground mb-1`},{default:_(()=>[...s[42]||=[p(`队列超时 (ms)`,-1)]]),_:1}),r(u(S),{modelValue:O.value.queue_timeout_ms,"onUpdate:modelValue":s[12]||=e=>O.value.queue_timeout_ms=e,modelModifiers:{number:!0},type:`number`,min:`0`,placeholder:`0 = 无限等待`,onInput:s[13]||=e=>delete k.value.queue_timeout_ms},null,8,[`modelValue`]),k.value.queue_timeout_ms?(m(),d(`p`,nn,v(k.value.queue_timeout_ms),1)):i(``,!0)]),e(`div`,null,[r(u(x),{class:`block text-sm font-medium text-foreground mb-1`},{default:_(()=>[...s[43]||=[p(`最大队列长度`,-1)]]),_:1}),r(u(S),{modelValue:O.value.max_queue_size,"onUpdate:modelValue":s[14]||=e=>O.value.max_queue_size=e,modelModifiers:{number:!0},type:`number`,min:`1`,max:un,placeholder:cn,onInput:s[15]||=e=>delete k.value.max_queue_size},null,8,[`modelValue`]),k.value.max_queue_size?(m(),d(`p`,rn,v(k.value.max_queue_size),1)):i(``,!0)])])):i(``,!0)]),e(`div`,an,[r(u(ue),{modelValue:O.value.is_active,"onUpdate:modelValue":s[16]||=e=>O.value.is_active=e,id:`svc-active`},null,8,[`modelValue`]),r(u(x),{for:`svc-active`,class:`text-sm text-foreground`},{default:_(()=>[...s[44]||=[p(`启用`,-1)]]),_:1})]),r(u(me),null,{default:_(()=>[r(u(h),{type:`button`,variant:`outline`,onClick:s[17]||=e=>T.value=!1},{default:_(()=>[...s[45]||=[p(`取消`,-1)]]),_:1}),r(u(h),{type:`submit`},{default:_(()=>[...s[46]||=[p(`保存`,-1)]]),_:1})]),_:1})],32)]),_:1})]),_:1},8,[`open`]),r(u(_e),{open:!!D.value,"onUpdate:open":s[19]||=e=>{e||(D.value=null)}},{default:_(()=>[r(u(ge),null,{default:_(()=>[r(u(ye),null,{default:_(()=>[r(u(Se),null,{default:_(()=>[...s[47]||=[p(`确认删除`,-1)]]),_:1}),r(u(ve),null,{default:_(()=>[p(`确定要删除供应商「`+v(D.value?.name)+`」吗?此操作不可撤销。`,1)]),_:1})]),_:1}),r(u(xe),null,{default:_(()=>[r(u(be),null,{default:_(()=>[...s[48]||=[p(`取消`,-1)]]),_:1}),r(u(h),{variant:`destructive`,onClick:Re},{default:_(()=>[...s[49]||=[p(`删除`,-1)]]),_:1})]),_:1})]),_:1})]),_:1},8,[`open`])]))}});export{mn as default};
|
|
1
|
+
import{B as e,Et as t,F as n,G as r,H as i,I as a,It as o,K as s,L as c,O as l,Pt as u,U as d,V as f,W as p,at as m,n as h,nt as ee,st as g,ut as te,vt as _,z as ne,zt as v}from"./button-BkhL20Qz.js";import{t as re}from"./createLucideIcon-D2A5NyBH.js";import{n as ie}from"./ohash.D__AXeF1-B5oxGXRD.js";import{a as ae,i as oe,n as se,r as ce,t as le}from"./SelectValue-Ct22fmR7.js";import{t as ue}from"./Checkbox-CnvHc21k.js";import{a as de,n as fe,o as pe,r as me,t as he}from"./dialog-BeetdYQi.js";import{a as ge,c as _e,i as ve,n as ye,o as be,r as xe,t as Se}from"./alert-dialog-BbI_a1Xz.js";import{a as Ce,i as y,n as b,o as we,r as Te,t as Ee}from"./TableHeader-R3y9M8qo.js";import{t as x}from"./Label-CmG21jDR.js";import{t as De}from"./Switch-ROnHu48E.js";import{t as Oe}from"./badge-CcgNasyU.js";import{n as ke}from"./lib-BAWhmkfz.js";import{t as S}from"./Input-BA5UO-Ab.js";var Ae=re(`copy`,[[`rect`,{width:`14`,height:`14`,x:`8`,y:`8`,rx:`2`,ry:`2`,key:`17jyea`}],[`path`,{d:`M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2`,key:`zix9uf`}]]),C;(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})(C||={});var je;(function(e){e.mergeShapes=(e,t)=>({...e,...t})})(je||={});var w=C.arrayToEnum([`string`,`nan`,`number`,`integer`,`float`,`boolean`,`date`,`bigint`,`symbol`,`function`,`undefined`,`null`,`array`,`object`,`unknown`,`promise`,`void`,`never`,`map`,`set`]),T=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}},E=C.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`]),D=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,C.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=e=>e.message){let t={},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()}};D.create=e=>new D(e);var O=(e,t)=>{let n;switch(e.code){case E.invalid_type:n=e.received===w.undefined?`Required`:`Expected ${e.expected}, received ${e.received}`;break;case E.invalid_literal:n=`Invalid literal value, expected ${JSON.stringify(e.expected,C.jsonStringifyReplacer)}`;break;case E.unrecognized_keys:n=`Unrecognized key(s) in object: ${C.joinValues(e.keys,`, `)}`;break;case E.invalid_union:n=`Invalid input`;break;case E.invalid_union_discriminator:n=`Invalid discriminator value. Expected ${C.joinValues(e.options)}`;break;case E.invalid_enum_value:n=`Invalid enum value. Expected ${C.joinValues(e.options)}, received '${e.received}'`;break;case E.invalid_arguments:n=`Invalid function arguments`;break;case E.invalid_return_type:n=`Invalid function return type`;break;case E.invalid_date:n=`Invalid date`;break;case E.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}"`:C.assertNever(e.validation):n=e.validation===`regex`?`Invalid`:`Invalid ${e.validation}`;break;case E.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 E.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 E.custom:n=`Invalid input`;break;case E.invalid_intersection_types:n=`Intersection results could not be merged`;break;case E.not_multiple_of:n=`Number must be a multiple of ${e.multipleOf}`;break;case E.not_finite:n=`Number must be finite`;break;default:n=t.defaultError,C.assertNever(e)}return{message:n}},k=O;function A(){return k}var j=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 M(e,t){let n=A(),r=j({issueData:t,data:e.data,path:e.path,errorMaps:[e.common.contextualErrorMap,e.schemaErrorMap,n,n===O?void 0:O].filter(e=>!!e)});e.common.issues.push(r)}var N=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 P;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 P;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}}},P=Object.freeze({status:`aborted`}),Me=e=>({status:`dirty`,value:e}),F=e=>({status:`valid`,value:e}),I=e=>e.status===`aborted`,Ne=e=>e.status===`dirty`,L=e=>e.status===`valid`,R=e=>typeof Promise<`u`&&e instanceof Promise,z;(function(e){e.errToObj=e=>typeof e==`string`?{message:e}:e||{},e.toString=e=>typeof e==`string`?e:e?.message})(z||={});var B=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}},Pe=(e,t)=>{if(L(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 D(e.common.issues),this._error}}};function V(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 H=class{get description(){return this._def.description}_getType(e){return T(e.data)}_getOrReturnCtx(e,t){return t||{common:e.parent.common,data:e.data,parsedType:T(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new N,ctx:{common:e.parent.common,data:e.data,parsedType:T(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let t=this._parse(e);if(R(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:T(e)};return Pe(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:T(e)};if(!this[`~standard`].async)try{let n=this._parseSync({data:e,path:[],parent:t});return L(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=>L(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:T(e)},r=this._parse({data:e,path:n.path,parent:n});return Pe(n,await(R(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:E.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 X({schema:this,typeName:$.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 Z.create(this,this._def)}nullable(){return Q.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return G.create(this)}promise(){return kt.create(this,this._def)}or(e){return gt.create([this,e],this._def)}and(e){return yt.create(this,e,this._def)}transform(e){return new X({...V(this._def),schema:this,typeName:$.ZodEffects,effect:{type:`transform`,transform:e}})}default(e){let t=typeof e==`function`?e:()=>e;return new At({...V(this._def),innerType:this,defaultValue:t,typeName:$.ZodDefault})}brand(){return new Nt({typeName:$.ZodBranded,type:this,...V(this._def)})}catch(e){let t=typeof e==`function`?e:()=>e;return new jt({...V(this._def),innerType:this,catchValue:t,typeName:$.ZodCatch})}describe(e){let t=this.constructor;return new t({...this._def,description:e})}pipe(e){return Pt.create(this,e)}readonly(){return Ft.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},Fe=/^c[^\s-]{8,}$/i,Ie=/^[0-9a-z]+$/,Le=/^[0-9A-HJKMNP-TV-Z]{26}$/i,Re=/^[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,ze=/^[a-z0-9_-]{21}$/i,Be=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,Ve=/^[-+]?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)?)??$/,He=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,Ue=`^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$`,We,Ge=/^(?:(?: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])$/,Ke=/^(?:(?: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])$/,qe=/^(([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]))$/,Je=/^(([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])$/,Ye=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,Xe=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,Ze=`((\\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])))`,Qe=RegExp(`^${Ze}$`);function $e(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 et(e){return RegExp(`^${$e(e)}$`)}function tt(e){let t=`${Ze}T${$e(e)}`,n=[];return n.push(e.local?`Z?`:`Z`),e.offset&&n.push(`([+-]\\d{2}:?\\d{2})`),t=`${t}(${n.join(`|`)})`,RegExp(`^${t}$`)}function nt(e,t){return!!((t===`v4`||!t)&&Ge.test(e)||(t===`v6`||!t)&&qe.test(e))}function rt(e,t){if(!Be.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 it(e,t){return!!((t===`v4`||!t)&&Ke.test(e)||(t===`v6`||!t)&&Je.test(e))}var at=class e extends H{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==w.string){let t=this._getOrReturnCtx(e);return M(t,{code:E.invalid_type,expected:w.string,received:t.parsedType}),P}let t=new N,n;for(let r of this._def.checks)if(r.kind===`min`)e.data.length<r.value&&(n=this._getOrReturnCtx(e,n),M(n,{code:E.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),M(n,{code:E.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?M(n,{code:E.too_big,maximum:r.value,type:`string`,inclusive:!0,exact:!0,message:r.message}):a&&M(n,{code:E.too_small,minimum:r.value,type:`string`,inclusive:!0,exact:!0,message:r.message}),t.dirty())}else if(r.kind===`email`)He.test(e.data)||(n=this._getOrReturnCtx(e,n),M(n,{validation:`email`,code:E.invalid_string,message:r.message}),t.dirty());else if(r.kind===`emoji`)We||=new RegExp(Ue,`u`),We.test(e.data)||(n=this._getOrReturnCtx(e,n),M(n,{validation:`emoji`,code:E.invalid_string,message:r.message}),t.dirty());else if(r.kind===`uuid`)Re.test(e.data)||(n=this._getOrReturnCtx(e,n),M(n,{validation:`uuid`,code:E.invalid_string,message:r.message}),t.dirty());else if(r.kind===`nanoid`)ze.test(e.data)||(n=this._getOrReturnCtx(e,n),M(n,{validation:`nanoid`,code:E.invalid_string,message:r.message}),t.dirty());else if(r.kind===`cuid`)Fe.test(e.data)||(n=this._getOrReturnCtx(e,n),M(n,{validation:`cuid`,code:E.invalid_string,message:r.message}),t.dirty());else if(r.kind===`cuid2`)Ie.test(e.data)||(n=this._getOrReturnCtx(e,n),M(n,{validation:`cuid2`,code:E.invalid_string,message:r.message}),t.dirty());else if(r.kind===`ulid`)Le.test(e.data)||(n=this._getOrReturnCtx(e,n),M(n,{validation:`ulid`,code:E.invalid_string,message:r.message}),t.dirty());else if(r.kind===`url`)try{new URL(e.data)}catch{n=this._getOrReturnCtx(e,n),M(n,{validation:`url`,code:E.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),M(n,{validation:`regex`,code:E.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),M(n,{code:E.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),M(n,{code:E.invalid_string,validation:{startsWith:r.value},message:r.message}),t.dirty()):r.kind===`endsWith`?e.data.endsWith(r.value)||(n=this._getOrReturnCtx(e,n),M(n,{code:E.invalid_string,validation:{endsWith:r.value},message:r.message}),t.dirty()):r.kind===`datetime`?tt(r).test(e.data)||(n=this._getOrReturnCtx(e,n),M(n,{code:E.invalid_string,validation:`datetime`,message:r.message}),t.dirty()):r.kind===`date`?Qe.test(e.data)||(n=this._getOrReturnCtx(e,n),M(n,{code:E.invalid_string,validation:`date`,message:r.message}),t.dirty()):r.kind===`time`?et(r).test(e.data)||(n=this._getOrReturnCtx(e,n),M(n,{code:E.invalid_string,validation:`time`,message:r.message}),t.dirty()):r.kind===`duration`?Ve.test(e.data)||(n=this._getOrReturnCtx(e,n),M(n,{validation:`duration`,code:E.invalid_string,message:r.message}),t.dirty()):r.kind===`ip`?nt(e.data,r.version)||(n=this._getOrReturnCtx(e,n),M(n,{validation:`ip`,code:E.invalid_string,message:r.message}),t.dirty()):r.kind===`jwt`?rt(e.data,r.alg)||(n=this._getOrReturnCtx(e,n),M(n,{validation:`jwt`,code:E.invalid_string,message:r.message}),t.dirty()):r.kind===`cidr`?it(e.data,r.version)||(n=this._getOrReturnCtx(e,n),M(n,{validation:`cidr`,code:E.invalid_string,message:r.message}),t.dirty()):r.kind===`base64`?Ye.test(e.data)||(n=this._getOrReturnCtx(e,n),M(n,{validation:`base64`,code:E.invalid_string,message:r.message}),t.dirty()):r.kind===`base64url`?Xe.test(e.data)||(n=this._getOrReturnCtx(e,n),M(n,{validation:`base64url`,code:E.invalid_string,message:r.message}),t.dirty()):C.assertNever(r);return{status:t.value,value:e.data}}_regex(e,t,n){return this.refinement(t=>e.test(t),{validation:t,code:E.invalid_string,...z.errToObj(n)})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}email(e){return this._addCheck({kind:`email`,...z.errToObj(e)})}url(e){return this._addCheck({kind:`url`,...z.errToObj(e)})}emoji(e){return this._addCheck({kind:`emoji`,...z.errToObj(e)})}uuid(e){return this._addCheck({kind:`uuid`,...z.errToObj(e)})}nanoid(e){return this._addCheck({kind:`nanoid`,...z.errToObj(e)})}cuid(e){return this._addCheck({kind:`cuid`,...z.errToObj(e)})}cuid2(e){return this._addCheck({kind:`cuid2`,...z.errToObj(e)})}ulid(e){return this._addCheck({kind:`ulid`,...z.errToObj(e)})}base64(e){return this._addCheck({kind:`base64`,...z.errToObj(e)})}base64url(e){return this._addCheck({kind:`base64url`,...z.errToObj(e)})}jwt(e){return this._addCheck({kind:`jwt`,...z.errToObj(e)})}ip(e){return this._addCheck({kind:`ip`,...z.errToObj(e)})}cidr(e){return this._addCheck({kind:`cidr`,...z.errToObj(e)})}datetime(e){return typeof e==`string`?this._addCheck({kind:`datetime`,precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:`datetime`,precision:e?.precision===void 0?null:e?.precision,offset:e?.offset??!1,local:e?.local??!1,...z.errToObj(e?.message)})}date(e){return this._addCheck({kind:`date`,message:e})}time(e){return typeof e==`string`?this._addCheck({kind:`time`,precision:null,message:e}):this._addCheck({kind:`time`,precision:e?.precision===void 0?null:e?.precision,...z.errToObj(e?.message)})}duration(e){return this._addCheck({kind:`duration`,...z.errToObj(e)})}regex(e,t){return this._addCheck({kind:`regex`,regex:e,...z.errToObj(t)})}includes(e,t){return this._addCheck({kind:`includes`,value:e,position:t?.position,...z.errToObj(t?.message)})}startsWith(e,t){return this._addCheck({kind:`startsWith`,value:e,...z.errToObj(t)})}endsWith(e,t){return this._addCheck({kind:`endsWith`,value:e,...z.errToObj(t)})}min(e,t){return this._addCheck({kind:`min`,value:e,...z.errToObj(t)})}max(e,t){return this._addCheck({kind:`max`,value:e,...z.errToObj(t)})}length(e,t){return this._addCheck({kind:`length`,value:e,...z.errToObj(t)})}nonempty(e){return this.min(1,z.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}};at.create=e=>new at({checks:[],typeName:$.ZodString,coerce:e?.coerce??!1,...V(e)});function ot(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 st=class e extends H{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 M(t,{code:E.invalid_type,expected:w.number,received:t.parsedType}),P}let t,n=new N;for(let r of this._def.checks)r.kind===`int`?C.isInteger(e.data)||(t=this._getOrReturnCtx(e,t),M(t,{code:E.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),M(t,{code:E.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),M(t,{code:E.too_big,maximum:r.value,type:`number`,inclusive:r.inclusive,exact:!1,message:r.message}),n.dirty()):r.kind===`multipleOf`?ot(e.data,r.value)!==0&&(t=this._getOrReturnCtx(e,t),M(t,{code:E.not_multiple_of,multipleOf:r.value,message:r.message}),n.dirty()):r.kind===`finite`?Number.isFinite(e.data)||(t=this._getOrReturnCtx(e,t),M(t,{code:E.not_finite,message:r.message}),n.dirty()):C.assertNever(r);return{status:n.value,value:e.data}}gte(e,t){return this.setLimit(`min`,e,!0,z.toString(t))}gt(e,t){return this.setLimit(`min`,e,!1,z.toString(t))}lte(e,t){return this.setLimit(`max`,e,!0,z.toString(t))}lt(e,t){return this.setLimit(`max`,e,!1,z.toString(t))}setLimit(t,n,r,i){return new e({...this._def,checks:[...this._def.checks,{kind:t,value:n,inclusive:r,message:z.toString(i)}]})}_addCheck(t){return new e({...this._def,checks:[...this._def.checks,t]})}int(e){return this._addCheck({kind:`int`,message:z.toString(e)})}positive(e){return this._addCheck({kind:`min`,value:0,inclusive:!1,message:z.toString(e)})}negative(e){return this._addCheck({kind:`max`,value:0,inclusive:!1,message:z.toString(e)})}nonpositive(e){return this._addCheck({kind:`max`,value:0,inclusive:!0,message:z.toString(e)})}nonnegative(e){return this._addCheck({kind:`min`,value:0,inclusive:!0,message:z.toString(e)})}multipleOf(e,t){return this._addCheck({kind:`multipleOf`,value:e,message:z.toString(t)})}finite(e){return this._addCheck({kind:`finite`,message:z.toString(e)})}safe(e){return this._addCheck({kind:`min`,inclusive:!0,value:-(2**53-1),message:z.toString(e)})._addCheck({kind:`max`,inclusive:!0,value:2**53-1,message:z.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`&&C.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)}};st.create=e=>new st({checks:[],typeName:$.ZodNumber,coerce:e?.coerce||!1,...V(e)});var ct=class e extends H{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 N;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),M(t,{code:E.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),M(t,{code:E.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),M(t,{code:E.not_multiple_of,multipleOf:r.value,message:r.message}),n.dirty()):C.assertNever(r);return{status:n.value,value:e.data}}_getInvalidInput(e){let t=this._getOrReturnCtx(e);return M(t,{code:E.invalid_type,expected:w.bigint,received:t.parsedType}),P}gte(e,t){return this.setLimit(`min`,e,!0,z.toString(t))}gt(e,t){return this.setLimit(`min`,e,!1,z.toString(t))}lte(e,t){return this.setLimit(`max`,e,!0,z.toString(t))}lt(e,t){return this.setLimit(`max`,e,!1,z.toString(t))}setLimit(t,n,r,i){return new e({...this._def,checks:[...this._def.checks,{kind:t,value:n,inclusive:r,message:z.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:z.toString(e)})}negative(e){return this._addCheck({kind:`max`,value:BigInt(0),inclusive:!1,message:z.toString(e)})}nonpositive(e){return this._addCheck({kind:`max`,value:BigInt(0),inclusive:!0,message:z.toString(e)})}nonnegative(e){return this._addCheck({kind:`min`,value:BigInt(0),inclusive:!0,message:z.toString(e)})}multipleOf(e,t){return this._addCheck({kind:`multipleOf`,value:e,message:z.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}};ct.create=e=>new ct({checks:[],typeName:$.ZodBigInt,coerce:e?.coerce??!1,...V(e)});var lt=class extends H{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==w.boolean){let t=this._getOrReturnCtx(e);return M(t,{code:E.invalid_type,expected:w.boolean,received:t.parsedType}),P}return F(e.data)}};lt.create=e=>new lt({typeName:$.ZodBoolean,coerce:e?.coerce||!1,...V(e)});var ut=class e extends H{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==w.date){let t=this._getOrReturnCtx(e);return M(t,{code:E.invalid_type,expected:w.date,received:t.parsedType}),P}if(Number.isNaN(e.data.getTime()))return M(this._getOrReturnCtx(e),{code:E.invalid_date}),P;let t=new N,n;for(let r of this._def.checks)r.kind===`min`?e.data.getTime()<r.value&&(n=this._getOrReturnCtx(e,n),M(n,{code:E.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),M(n,{code:E.too_big,message:r.message,inclusive:!0,exact:!1,maximum:r.value,type:`date`}),t.dirty()):C.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:z.toString(t)})}max(e,t){return this._addCheck({kind:`max`,value:e.getTime(),message:z.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)}};ut.create=e=>new ut({checks:[],coerce:e?.coerce||!1,typeName:$.ZodDate,...V(e)});var dt=class extends H{_parse(e){if(this._getType(e)!==w.symbol){let t=this._getOrReturnCtx(e);return M(t,{code:E.invalid_type,expected:w.symbol,received:t.parsedType}),P}return F(e.data)}};dt.create=e=>new dt({typeName:$.ZodSymbol,...V(e)});var ft=class extends H{_parse(e){if(this._getType(e)!==w.undefined){let t=this._getOrReturnCtx(e);return M(t,{code:E.invalid_type,expected:w.undefined,received:t.parsedType}),P}return F(e.data)}};ft.create=e=>new ft({typeName:$.ZodUndefined,...V(e)});var pt=class extends H{_parse(e){if(this._getType(e)!==w.null){let t=this._getOrReturnCtx(e);return M(t,{code:E.invalid_type,expected:w.null,received:t.parsedType}),P}return F(e.data)}};pt.create=e=>new pt({typeName:$.ZodNull,...V(e)});var mt=class extends H{constructor(){super(...arguments),this._any=!0}_parse(e){return F(e.data)}};mt.create=e=>new mt({typeName:$.ZodAny,...V(e)});var U=class extends H{constructor(){super(...arguments),this._unknown=!0}_parse(e){return F(e.data)}};U.create=e=>new U({typeName:$.ZodUnknown,...V(e)});var W=class extends H{_parse(e){let t=this._getOrReturnCtx(e);return M(t,{code:E.invalid_type,expected:w.never,received:t.parsedType}),P}};W.create=e=>new W({typeName:$.ZodNever,...V(e)});var ht=class extends H{_parse(e){if(this._getType(e)!==w.undefined){let t=this._getOrReturnCtx(e);return M(t,{code:E.invalid_type,expected:w.void,received:t.parsedType}),P}return F(e.data)}};ht.create=e=>new ht({typeName:$.ZodVoid,...V(e)});var G=class e extends H{_parse(e){let{ctx:t,status:n}=this._processInputParams(e),r=this._def;if(t.parsedType!==w.array)return M(t,{code:E.invalid_type,expected:w.array,received:t.parsedType}),P;if(r.exactLength!==null){let e=t.data.length>r.exactLength.value,i=t.data.length<r.exactLength.value;(e||i)&&(M(t,{code:e?E.too_big:E.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&&(M(t,{code:E.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&&(M(t,{code:E.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 B(t,e,t.path,n)))).then(e=>N.mergeArray(n,e));let i=[...t.data].map((e,n)=>r.type._parseSync(new B(t,e,t.path,n)));return N.mergeArray(n,i)}get element(){return this._def.type}min(t,n){return new e({...this._def,minLength:{value:t,message:z.toString(n)}})}max(t,n){return new e({...this._def,maxLength:{value:t,message:z.toString(n)}})}length(t,n){return new e({...this._def,exactLength:{value:t,message:z.toString(n)}})}nonempty(e){return this.min(1,e)}};G.create=(e,t)=>new G({type:e,minLength:null,maxLength:null,exactLength:null,typeName:$.ZodArray,...V(t)});function K(e){if(e instanceof q){let t={};for(let n in e.shape){let r=e.shape[n];t[n]=Z.create(K(r))}return new q({...e._def,shape:()=>t})}else if(e instanceof G)return new G({...e._def,type:K(e.element)});else if(e instanceof Z)return Z.create(K(e.unwrap()));else if(e instanceof Q)return Q.create(K(e.unwrap()));else if(e instanceof Y)return Y.create(e.items.map(e=>K(e)));else return e}var q=class e extends H{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:C.objectKeys(e)},this._cached}_parse(e){if(this._getType(e)!==w.object){let t=this._getOrReturnCtx(e);return M(t,{code:E.invalid_type,expected:w.object,received:t.parsedType}),P}let{status:t,ctx:n}=this._processInputParams(e),{shape:r,keys:i}=this._getCached(),a=[];if(!(this._def.catchall instanceof W&&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 B(n,i,n.path,e)),alwaysSet:e in n.data})}if(this._def.catchall instanceof W){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&&(M(n,{code:E.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 B(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=>N.mergeObjectSync(t,e)):N.mergeObjectSync(t,o)}get shape(){return this._def.shape()}strict(t){return z.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:z.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:$.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 C.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 C.objectKeys(this.shape))t[e]||(n[e]=this.shape[e]);return new e({...this._def,shape:()=>n})}deepPartial(){return K(this)}partial(t){let n={};for(let e of C.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 C.objectKeys(this.shape))if(t&&!t[e])n[e]=this.shape[e];else{let t=this.shape[e];for(;t instanceof Z;)t=t._def.innerType;n[e]=t}return new e({...this._def,shape:()=>n})}keyof(){return Et(C.objectKeys(this.shape))}};q.create=(e,t)=>new q({shape:()=>e,unknownKeys:`strip`,catchall:W.create(),typeName:$.ZodObject,...V(t)}),q.strictCreate=(e,t)=>new q({shape:()=>e,unknownKeys:`strict`,catchall:W.create(),typeName:$.ZodObject,...V(t)}),q.lazycreate=(e,t)=>new q({shape:e,unknownKeys:`strip`,catchall:W.create(),typeName:$.ZodObject,...V(t)});var gt=class extends H{_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 D(e.ctx.common.issues));return M(t,{code:E.invalid_union,unionErrors:n}),P}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 D(e));return M(t,{code:E.invalid_union,unionErrors:i}),P}}get options(){return this._def.options}};gt.create=(e,t)=>new gt({options:e,typeName:$.ZodUnion,...V(t)});var J=e=>e instanceof wt?J(e.schema):e instanceof X?J(e.innerType()):e instanceof Tt?[e.value]:e instanceof Dt?e.options:e instanceof Ot?C.objectValues(e.enum):e instanceof At?J(e._def.innerType):e instanceof ft?[void 0]:e instanceof pt?[null]:e instanceof Z?[void 0,...J(e.unwrap())]:e instanceof Q?[null,...J(e.unwrap())]:e instanceof Nt||e instanceof Ft?J(e.unwrap()):e instanceof jt?J(e._def.innerType):[],_t=class e extends H{_parse(e){let{ctx:t}=this._processInputParams(e);if(t.parsedType!==w.object)return M(t,{code:E.invalid_type,expected:w.object,received:t.parsedType}),P;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}):(M(t,{code:E.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),P)}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=J(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:$.ZodDiscriminatedUnion,discriminator:t,options:n,optionsMap:i,...V(r)})}};function vt(e,t){let n=T(e),r=T(t);if(e===t)return{valid:!0,data:e};if(n===w.object&&r===w.object){let n=C.objectKeys(t),r=C.objectKeys(e).filter(e=>n.indexOf(e)!==-1),i={...e,...t};for(let n of r){let r=vt(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=vt(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 yt=class extends H{_parse(e){let{status:t,ctx:n}=this._processInputParams(e),r=(e,r)=>{if(I(e)||I(r))return P;let i=vt(e.value,r.value);return i.valid?((Ne(e)||Ne(r))&&t.dirty(),{status:t.value,value:i.data}):(M(n,{code:E.invalid_intersection_types}),P)};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}))}};yt.create=(e,t,n)=>new yt({left:e,right:t,typeName:$.ZodIntersection,...V(n)});var Y=class e extends H{_parse(e){let{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==w.array)return M(n,{code:E.invalid_type,expected:w.array,received:n.parsedType}),P;if(n.data.length<this._def.items.length)return M(n,{code:E.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:`array`}),P;!this._def.rest&&n.data.length>this._def.items.length&&(M(n,{code:E.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 B(n,e,n.path,t)):null}).filter(e=>!!e);return n.common.async?Promise.all(r).then(e=>N.mergeArray(t,e)):N.mergeArray(t,r)}get items(){return this._def.items}rest(t){return new e({...this._def,rest:t})}};Y.create=(e,t)=>{if(!Array.isArray(e))throw Error(`You must pass an array of schemas to z.tuple([ ... ])`);return new Y({items:e,typeName:$.ZodTuple,rest:null,...V(t)})};var bt=class e extends H{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 M(n,{code:E.invalid_type,expected:w.object,received:n.parsedType}),P;let r=[],i=this._def.keyType,a=this._def.valueType;for(let e in n.data)r.push({key:i._parse(new B(n,e,n.path,e)),value:a._parse(new B(n,n.data[e],n.path,e)),alwaysSet:e in n.data});return n.common.async?N.mergeObjectAsync(t,r):N.mergeObjectSync(t,r)}get element(){return this._def.valueType}static create(t,n,r){return n instanceof H?new e({keyType:t,valueType:n,typeName:$.ZodRecord,...V(r)}):new e({keyType:at.create(),valueType:t,typeName:$.ZodRecord,...V(n)})}},xt=class extends H{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 M(n,{code:E.invalid_type,expected:w.map,received:n.parsedType}),P;let r=this._def.keyType,i=this._def.valueType,a=[...n.data.entries()].map(([e,t],a)=>({key:r._parse(new B(n,e,n.path,[a,`key`])),value:i._parse(new B(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 P;(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 P;(r.status===`dirty`||i.status===`dirty`)&&t.dirty(),e.set(r.value,i.value)}return{status:t.value,value:e}}}};xt.create=(e,t,n)=>new xt({valueType:t,keyType:e,typeName:$.ZodMap,...V(n)});var St=class e extends H{_parse(e){let{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==w.set)return M(n,{code:E.invalid_type,expected:w.set,received:n.parsedType}),P;let r=this._def;r.minSize!==null&&n.data.size<r.minSize.value&&(M(n,{code:E.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&&(M(n,{code:E.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 P;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 B(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:z.toString(n)}})}max(t,n){return new e({...this._def,maxSize:{value:t,message:z.toString(n)}})}size(e,t){return this.min(e,t).max(e,t)}nonempty(e){return this.min(1,e)}};St.create=(e,t)=>new St({valueType:e,minSize:null,maxSize:null,typeName:$.ZodSet,...V(t)});var Ct=class e extends H{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:t}=this._processInputParams(e);if(t.parsedType!==w.function)return M(t,{code:E.invalid_type,expected:w.function,received:t.parsedType}),P;function n(e,n){return j({data:e,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,A(),O].filter(e=>!!e),issueData:{code:E.invalid_arguments,argumentsError:n}})}function r(e,n){return j({data:e,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,A(),O].filter(e=>!!e),issueData:{code:E.invalid_return_type,returnTypeError:n}})}let i={errorMap:t.common.contextualErrorMap},a=t.data;if(this._def.returns instanceof kt){let e=this;return F(async function(...t){let o=new D([]),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 F(function(...t){let o=e._def.args.safeParse(t,i);if(!o.success)throw new D([n(t,o.error)]);let s=Reflect.apply(a,this,o.data),c=e._def.returns.safeParse(s,i);if(!c.success)throw new D([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:Y.create(t).rest(U.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||Y.create([]).rest(U.create()),returns:n||U.create(),typeName:$.ZodFunction,...V(r)})}},wt=class extends H{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})}};wt.create=(e,t)=>new wt({getter:e,typeName:$.ZodLazy,...V(t)});var Tt=class extends H{_parse(e){if(e.data!==this._def.value){let t=this._getOrReturnCtx(e);return M(t,{received:t.data,code:E.invalid_literal,expected:this._def.value}),P}return{status:`valid`,value:e.data}}get value(){return this._def.value}};Tt.create=(e,t)=>new Tt({value:e,typeName:$.ZodLiteral,...V(t)});function Et(e,t){return new Dt({values:e,typeName:$.ZodEnum,...V(t)})}var Dt=class e extends H{_parse(e){if(typeof e.data!=`string`){let t=this._getOrReturnCtx(e),n=this._def.values;return M(t,{expected:C.joinValues(n),received:t.parsedType,code:E.invalid_type}),P}if(this._cache||=new Set(this._def.values),!this._cache.has(e.data)){let t=this._getOrReturnCtx(e),n=this._def.values;return M(t,{received:t.data,code:E.invalid_enum_value,options:n}),P}return F(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})}};Dt.create=Et;var Ot=class extends H{_parse(e){let t=C.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==w.string&&n.parsedType!==w.number){let e=C.objectValues(t);return M(n,{expected:C.joinValues(e),received:n.parsedType,code:E.invalid_type}),P}if(this._cache||=new Set(C.getValidEnumValues(this._def.values)),!this._cache.has(e.data)){let e=C.objectValues(t);return M(n,{received:n.data,code:E.invalid_enum_value,options:e}),P}return F(e.data)}get enum(){return this._def.values}};Ot.create=(e,t)=>new Ot({values:e,typeName:$.ZodNativeEnum,...V(t)});var kt=class extends H{unwrap(){return this._def.type}_parse(e){let{ctx:t}=this._processInputParams(e);return t.parsedType!==w.promise&&t.common.async===!1?(M(t,{code:E.invalid_type,expected:w.promise,received:t.parsedType}),P):F((t.parsedType===w.promise?t.data:Promise.resolve(t.data)).then(e=>this._def.type.parseAsync(e,{path:t.path,errorMap:t.common.contextualErrorMap})))}};kt.create=(e,t)=>new kt({type:e,typeName:$.ZodPromise,...V(t)});var X=class extends H{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===$.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=>{M(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 P;let r=await this._def.schema._parseAsync({data:e,path:n.path,parent:n});return r.status===`aborted`?P:r.status===`dirty`||t.value===`dirty`?Me(r.value):r});{if(t.value===`aborted`)return P;let r=this._def.schema._parseSync({data:e,path:n.path,parent:n});return r.status===`aborted`?P:r.status===`dirty`||t.value===`dirty`?Me(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`?P:(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`?P:(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(!L(e))return P;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=>L(e)?Promise.resolve(r.transform(e.value,i)).then(e=>({status:t.value,value:e})):P);C.assertNever(r)}};X.create=(e,t,n)=>new X({schema:e,typeName:$.ZodEffects,effect:t,...V(n)}),X.createWithPreprocess=(e,t,n)=>new X({schema:t,effect:{type:`preprocess`,transform:e},typeName:$.ZodEffects,...V(n)});var Z=class extends H{_parse(e){return this._getType(e)===w.undefined?F(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Z.create=(e,t)=>new Z({innerType:e,typeName:$.ZodOptional,...V(t)});var Q=class extends H{_parse(e){return this._getType(e)===w.null?F(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Q.create=(e,t)=>new Q({innerType:e,typeName:$.ZodNullable,...V(t)});var At=class extends H{_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}};At.create=(e,t)=>new At({innerType:e,typeName:$.ZodDefault,defaultValue:typeof t.default==`function`?t.default:()=>t.default,...V(t)});var jt=class extends H{_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 R(r)?r.then(e=>({status:`valid`,value:e.status===`valid`?e.value:this._def.catchValue({get error(){return new D(n.common.issues)},input:n.data})})):{status:`valid`,value:r.status===`valid`?r.value:this._def.catchValue({get error(){return new D(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};jt.create=(e,t)=>new jt({innerType:e,typeName:$.ZodCatch,catchValue:typeof t.catch==`function`?t.catch:()=>t.catch,...V(t)});var Mt=class extends H{_parse(e){if(this._getType(e)!==w.nan){let t=this._getOrReturnCtx(e);return M(t,{code:E.invalid_type,expected:w.nan,received:t.parsedType}),P}return{status:`valid`,value:e.data}}};Mt.create=e=>new Mt({typeName:$.ZodNaN,...V(e)});var Nt=class extends H{_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}},Pt=class e extends H{_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`?P:e.status===`dirty`?(t.dirty(),Me(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`?P: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:$.ZodPipeline})}},Ft=class extends H{_parse(e){let t=this._def.innerType._parse(e),n=e=>(L(e)&&(e.value=Object.freeze(e.value)),e);return R(t)?t.then(e=>n(e)):n(t)}unwrap(){return this._def.innerType}};Ft.create=(e,t)=>new Ft({innerType:e,typeName:$.ZodReadonly,...V(t)}),q.lazycreate;var $;(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`})($||={});var It=at.create;st.create,Mt.create,ct.create,lt.create,ut.create,dt.create,ft.create,pt.create,mt.create,U.create,W.create,ht.create,G.create;var Lt=q.create;q.strictCreate,gt.create,_t.create,yt.create,Y.create,bt.create,xt.create,St.create,Ct.create,wt.create,Tt.create,Dt.create,Ot.create,kt.create,X.create,Z.create,Q.create,X.createWithPreprocess,Pt.create;var Rt={class:`p-6`},zt={class:`flex items-center justify-between mb-4`},Bt={class:`bg-card rounded-lg border overflow-hidden`},Vt={class:`flex items-center gap-1`},Ht={class:`font-mono text-xs text-muted-foreground`},Ut={class:`flex flex-wrap gap-1`},Wt={key:0,class:`text-muted-foreground text-xs`},Gt={key:1,class:`text-muted-foreground`},Kt={class:`rounded-md border bg-muted/40 p-3 space-y-2`},qt={class:`flex gap-2`},Jt={key:0,class:`text-sm text-destructive mt-1`},Yt={key:0,class:`text-sm text-destructive mt-1`},Xt={key:0,class:`text-sm text-destructive mt-1`},Zt={class:`flex flex-wrap gap-1.5 mb-1.5`},Qt={class:`flex gap-2`},$t={class:`flex items-center gap-2 mb-1`},en={key:0,class:`mt-2 space-y-2`},tn={key:0,class:`text-sm text-destructive mt-1`},nn={key:0,class:`text-sm text-destructive mt-1`},rn={key:0,class:`text-sm text-destructive mt-1`},an={class:`flex items-center gap-2`},on=3,sn=12e4,cn=10,ln=100,un=1e3,dn=7,fn=7,pn=2e3,mn=s({__name:`Providers`,setup(s){let re={name:``,api_type:`anthropic`,base_url:``,api_key:``,models:[],is_active:!0,max_concurrency:on,queue_timeout_ms:sn,max_queue_size:cn},C=t(``),je=t([]),w=t([]),T=t(!1),E=t(null),D=t(null),O=t({...re}),k=t({}),A=t(!1),j=t(null),M=Lt({name:It().min(1,`请输入名称`).regex(/^[a-zA-Z0-9_-]+$/,`仅允许英文、数字、横线和下划线`),base_url:It().min(1,`请输入 Base URL`).url(`请输入合法的 URL`)});function N(){let e={},t=M.safeParse({name:O.value.name.trim(),base_url:O.value.base_url.trim()});if(!t.success)for(let n of t.error.issues){let t=n.path[0];e[t]||(e[t]=n.message)}if(!E.value&&!O.value.api_key.trim()&&(e.api_key=`请输入 API Key`),A.value){let t=O.value.max_concurrency;(!t||t<1||t>ln)&&(e.max_concurrency=`范围 1-${ln}`),O.value.queue_timeout_ms<0&&(e.queue_timeout_ms=`不能为负数`);let n=O.value.max_queue_size;(!n||n<1||n>un)&&(e.max_queue_size=`范围 1-${un}`)}return k.value=e,Object.keys(e).length===0}function P(e){return e?e.slice(0,dn)+`*`.repeat(fn):``}async function Me(e,t){await navigator.clipboard.writeText(e),j.value=t,setTimeout(()=>{j.value=null},pn)}let F=t(``),I=t(``),Ne=ne(()=>F.value?w.value.find(e=>e.group===F.value)?.presets??[]:[]);function L(){let e=w.value.find(e=>e.group===F.value)?.presets;e?.length?(I.value=e[0].plan,R()):I.value=``}function R(){let e=Ne.value.find(e=>e.plan===I.value);e&&(O.value.name=e.presetName,O.value.api_type=`anthropic`,O.value.base_url=e.baseUrl,O.value.models=[...e.models])}async function z(){try{je.value=await l.getProviders()}catch(e){console.error(`Failed to load providers:`,e),ke.error(`加载供应商失败`)}}function B(){let e=C.value.trim();if(!e)return;let t=e.split(/[,,]/).map(e=>e.trim()).filter(Boolean);for(let e of t)O.value.models.includes(e)||O.value.models.push(e);C.value=``}function Pe(e){O.value.models.splice(e,1)}function V(){E.value=null,O.value={...re},A.value=!0,C.value=``,F.value=``,I.value=``,k.value={},T.value=!0}function H(e){E.value=e.id,O.value={name:e.name,api_type:`anthropic`,base_url:e.base_url,api_key:``,models:[...e.models||[]],is_active:!!e.is_active,max_concurrency:e.max_concurrency??on,queue_timeout_ms:e.queue_timeout_ms??sn,max_queue_size:e.max_queue_size??cn},A.value=(e.max_concurrency??0)>0,C.value=``,F.value=``,I.value=``,k.value={},T.value=!0}function Fe(){let e={name:O.value.name,api_type:`anthropic`,base_url:O.value.base_url,models:O.value.models,is_active:+!!O.value.is_active,max_concurrency:A.value?O.value.max_concurrency:0,queue_timeout_ms:A.value?O.value.queue_timeout_ms:0,max_queue_size:A.value?O.value.max_queue_size:cn};return O.value.api_key&&(e.api_key=O.value.api_key),e}async function Ie(){if(N())try{let e=Fe();e.name=O.value.name.trim(),E.value?await l.updateProvider(E.value,e):(e.api_key=O.value.api_key,await l.createProvider(e)),T.value=!1,await z()}catch(e){console.error(`Failed to save provider:`,e),ke.error(`保存供应商失败`)}}function Le(e){D.value=e}async function Re(){let e=D.value;if(e){D.value=null;try{await l.deleteProvider(e.id),await z()}catch(e){console.error(`Failed to delete provider:`,e),ke.error(`删除供应商失败`)}}}return ee(async()=>{try{w.value=await l.recommended.getProviders()}catch{w.value=[]}await z()}),(t,s)=>(m(),d(`div`,Rt,[e(`div`,zt,[s[21]||=e(`h2`,{class:`text-lg font-semibold text-foreground`},`供应商`,-1),r(u(h),{onClick:V,class:`flex items-center gap-1`},{default:_(()=>[...s[20]||=[e(`svg`,{class:`w-4 h-4`,fill:`none`,stroke:`currentColor`,viewBox:`0 0 24 24`},[e(`path`,{"stroke-linecap":`round`,"stroke-linejoin":`round`,"stroke-width":`2`,d:`M12 4v16m8-8H4`})],-1),p(` 添加供应商 `,-1)]]),_:1})]),e(`div`,Bt,[r(u(we),null,{default:_(()=>[r(u(Ee),null,{default:_(()=>[r(u(Te),{class:`bg-muted`},{default:_(()=>[r(u(b),{class:`text-muted-foreground`},{default:_(()=>[...s[22]||=[p(`名称`,-1)]]),_:1}),r(u(b),{class:`text-muted-foreground`},{default:_(()=>[...s[23]||=[p(`类型`,-1)]]),_:1}),r(u(b),{class:`text-muted-foreground`},{default:_(()=>[...s[24]||=[p(`Base URL`,-1)]]),_:1}),r(u(b),{class:`text-muted-foreground`},{default:_(()=>[...s[25]||=[p(`API Key`,-1)]]),_:1}),r(u(b),{class:`text-muted-foreground`},{default:_(()=>[...s[26]||=[p(`模型`,-1)]]),_:1}),r(u(b),{class:`text-muted-foreground`},{default:_(()=>[...s[27]||=[p(`并发`,-1)]]),_:1}),r(u(b),{class:`text-muted-foreground`},{default:_(()=>[...s[28]||=[p(`状态`,-1)]]),_:1}),r(u(b),{class:`text-right text-muted-foreground`},{default:_(()=>[...s[29]||=[p(`操作`,-1)]]),_:1})]),_:1})]),_:1}),r(u(Ce),null,{default:_(()=>[(m(!0),d(c,null,g(je.value,t=>(m(),f(u(Te),{key:t.id,class:o({"opacity-60":!t.is_active})},{default:_(()=>[r(u(y),{class:`font-medium`},{default:_(()=>[p(v(t.name),1)]),_:2},1024),r(u(y),null,{default:_(()=>[r(u(Oe),{variant:`secondary`},{default:_(()=>[p(v(t.api_type),1)]),_:2},1024)]),_:2},1024),r(u(y),{class:`text-muted-foreground`},{default:_(()=>[p(v(t.base_url),1)]),_:2},1024),r(u(y),null,{default:_(()=>[e(`div`,Vt,[e(`span`,Ht,v(P(t.api_key)),1),r(u(h),{variant:`ghost`,size:`sm`,class:`h-6 w-6 p-0`,onClick:e=>Me(t.api_key,t.id)},{default:_(()=>[(m(),f(te(j.value===t.id?u(ie):u(Ae)),{class:o([`w-3.5 h-3.5`,{"text-green-500":j.value===t.id}])},null,8,[`class`]))]),_:2},1032,[`onClick`])])]),_:2},1024),r(u(y),null,{default:_(()=>[e(`div`,Ut,[(m(!0),d(c,null,g(t.models||[],e=>(m(),f(u(Oe),{key:e,variant:`secondary`,class:`text-xs`},{default:_(()=>[p(v(e),1)]),_:2},1024))),128)),t.models?.length?i(``,!0):(m(),d(`span`,Wt,`-`))])]),_:2},1024),r(u(y),null,{default:_(()=>[t.max_concurrency>0?(m(),f(u(Oe),{key:0,variant:`secondary`},{default:_(()=>[p(v(t.max_concurrency),1)]),_:2},1024)):(m(),d(`span`,Gt,`-`))]),_:2},1024),r(u(y),null,{default:_(()=>[r(u(Oe),{variant:t.is_active?`default`:`secondary`},{default:_(()=>[p(v(t.is_active?`启用`:`禁用`),1)]),_:2},1032,[`variant`])]),_:2},1024),r(u(y),{class:`text-right`},{default:_(()=>[r(u(h),{variant:`ghost`,size:`sm`,onClick:e=>H(t),class:`text-muted-foreground hover:text-primary mr-2`},{default:_(()=>[...s[30]||=[p(`编辑`,-1)]]),_:1},8,[`onClick`]),r(u(h),{variant:`ghost`,size:`sm`,onClick:e=>Le(t),class:`text-muted-foreground hover:text-destructive`},{default:_(()=>[...s[31]||=[p(`删除`,-1)]]),_:1},8,[`onClick`])]),_:2},1024)]),_:2},1032,[`class`]))),128)),je.value.length===0?(m(),f(u(Te),{key:0},{default:_(()=>[r(u(y),{colspan:`8`,class:`text-center text-muted-foreground py-8`},{default:_(()=>[...s[32]||=[p(`暂无供应商`,-1)]]),_:1})]),_:1})):i(``,!0)]),_:1})]),_:1})]),r(u(pe),{open:T.value,"onUpdate:open":s[18]||=e=>T.value=e},{default:_(()=>[r(u(de),null,{default:_(()=>[r(u(fe),null,{default:_(()=>[r(u(he),null,{default:_(()=>[p(v(E.value?`编辑供应商`:`添加供应商`),1)]),_:1})]),_:1}),e(`form`,{onSubmit:a(Ie,[`prevent`]),class:`space-y-3`},[e(`div`,Kt,[s[33]||=e(`div`,{class:`text-xs font-medium text-muted-foreground`},`快速配置`,-1),e(`div`,qt,[r(u(ae),{modelValue:F.value,"onUpdate:modelValue":[s[0]||=e=>F.value=e,L]},{default:_(()=>[r(u(se),{class:`flex-1`},{default:_(()=>[r(u(le),{placeholder:`选择供应商`})]),_:1}),r(u(oe),null,{default:_(()=>[(m(!0),d(c,null,g(w.value,e=>(m(),f(u(ce),{key:e.group,value:e.group},{default:_(()=>[p(v(e.group),1)]),_:2},1032,[`value`]))),128))]),_:1})]),_:1},8,[`modelValue`]),r(u(ae),{modelValue:I.value,"onUpdate:modelValue":[s[1]||=e=>I.value=e,R],disabled:!F.value},{default:_(()=>[r(u(se),{class:`flex-1`},{default:_(()=>[r(u(le),{placeholder:`选择套餐`})]),_:1}),r(u(oe),null,{default:_(()=>[(m(!0),d(c,null,g(Ne.value,e=>(m(),f(u(ce),{key:e.plan,value:e.plan},{default:_(()=>[p(v(e.plan),1)]),_:2},1032,[`value`]))),128))]),_:1})]),_:1},8,[`modelValue`,`disabled`])])]),e(`div`,null,[r(u(x),{class:`block text-sm font-medium text-foreground mb-1`},{default:_(()=>[...s[34]||=[p(`名称`,-1)]]),_:1}),r(u(S),{modelValue:O.value.name,"onUpdate:modelValue":s[2]||=e=>O.value.name=e,type:`text`,required:``,onInput:s[3]||=e=>delete k.value.name},null,8,[`modelValue`]),k.value.name?(m(),d(`p`,Jt,v(k.value.name),1)):i(``,!0)]),e(`div`,null,[r(u(x),{class:`block text-sm font-medium text-foreground mb-1`},{default:_(()=>[...s[35]||=[p(`Base URL`,-1)]]),_:1}),r(u(S),{modelValue:O.value.base_url,"onUpdate:modelValue":s[4]||=e=>O.value.base_url=e,type:`url`,required:``,onInput:s[5]||=e=>delete k.value.base_url},null,8,[`modelValue`]),k.value.base_url?(m(),d(`p`,Yt,v(k.value.base_url),1)):i(``,!0)]),e(`div`,null,[r(u(x),{class:`block text-sm font-medium text-foreground mb-1`},{default:_(()=>[...s[36]||=[p(`API Key`,-1)]]),_:1}),r(u(S),{modelValue:O.value.api_key,"onUpdate:modelValue":s[6]||=e=>O.value.api_key=e,type:`text`,required:!E.value,placeholder:E.value?`留空则保持原密钥不变`:``,onInput:s[7]||=e=>delete k.value.api_key},null,8,[`modelValue`,`required`,`placeholder`]),k.value.api_key?(m(),d(`p`,Xt,v(k.value.api_key),1)):i(``,!0)]),e(`div`,null,[r(u(x),{class:`block text-sm font-medium text-foreground mb-1`},{default:_(()=>[...s[37]||=[p(`可用模型`,-1)]]),_:1}),e(`div`,Zt,[(m(!0),d(c,null,g(O.value.models,(e,t)=>(m(),f(u(Oe),{key:t,variant:`secondary`,class:`gap-1 pr-1`},{default:_(()=>[p(v(e)+` `,1),r(u(h),{type:`button`,variant:`ghost`,size:`icon`,class:`h-4 w-4 rounded-full hover:bg-muted p-0 text-xs leading-none`,onClick:e=>Pe(t)},{default:_(()=>[...s[38]||=[p(`×`,-1)]]),_:1},8,[`onClick`])]),_:2},1024))),128))]),e(`div`,Qt,[r(u(S),{modelValue:C.value,"onUpdate:modelValue":s[8]||=e=>C.value=e,placeholder:`输入模型名称,多个用逗号分隔`,onKeydown:n(a(B,[`prevent`]),[`enter`]),class:`flex-1`},null,8,[`modelValue`,`onKeydown`]),r(u(h),{type:`button`,variant:`outline`,size:`sm`,onClick:B,disabled:!C.value.trim()},{default:_(()=>[...s[39]||=[p(`添加`,-1)]]),_:1},8,[`disabled`])])]),e(`div`,null,[e(`div`,$t,[r(u(De),{modelValue:A.value,"onUpdate:modelValue":s[9]||=e=>A.value=e,id:`concurrency-switch`},null,8,[`modelValue`]),r(u(x),{for:`concurrency-switch`,class:`text-sm text-foreground`},{default:_(()=>[...s[40]||=[p(`并发控制`,-1)]]),_:1})]),A.value?(m(),d(`div`,en,[e(`div`,null,[r(u(x),{class:`block text-sm font-medium text-foreground mb-1`},{default:_(()=>[...s[41]||=[p(`最大并发数`,-1)]]),_:1}),r(u(S),{modelValue:O.value.max_concurrency,"onUpdate:modelValue":s[10]||=e=>O.value.max_concurrency=e,modelModifiers:{number:!0},type:`number`,min:`1`,max:ln,placeholder:`3`,onInput:s[11]||=e=>delete k.value.max_concurrency},null,8,[`modelValue`]),k.value.max_concurrency?(m(),d(`p`,tn,v(k.value.max_concurrency),1)):i(``,!0)]),e(`div`,null,[r(u(x),{class:`block text-sm font-medium text-foreground mb-1`},{default:_(()=>[...s[42]||=[p(`队列超时 (ms)`,-1)]]),_:1}),r(u(S),{modelValue:O.value.queue_timeout_ms,"onUpdate:modelValue":s[12]||=e=>O.value.queue_timeout_ms=e,modelModifiers:{number:!0},type:`number`,min:`0`,placeholder:`0 = 无限等待`,onInput:s[13]||=e=>delete k.value.queue_timeout_ms},null,8,[`modelValue`]),k.value.queue_timeout_ms?(m(),d(`p`,nn,v(k.value.queue_timeout_ms),1)):i(``,!0)]),e(`div`,null,[r(u(x),{class:`block text-sm font-medium text-foreground mb-1`},{default:_(()=>[...s[43]||=[p(`最大队列长度`,-1)]]),_:1}),r(u(S),{modelValue:O.value.max_queue_size,"onUpdate:modelValue":s[14]||=e=>O.value.max_queue_size=e,modelModifiers:{number:!0},type:`number`,min:`1`,max:un,placeholder:cn,onInput:s[15]||=e=>delete k.value.max_queue_size},null,8,[`modelValue`]),k.value.max_queue_size?(m(),d(`p`,rn,v(k.value.max_queue_size),1)):i(``,!0)])])):i(``,!0)]),e(`div`,an,[r(u(ue),{modelValue:O.value.is_active,"onUpdate:modelValue":s[16]||=e=>O.value.is_active=e,id:`svc-active`},null,8,[`modelValue`]),r(u(x),{for:`svc-active`,class:`text-sm text-foreground`},{default:_(()=>[...s[44]||=[p(`启用`,-1)]]),_:1})]),r(u(me),null,{default:_(()=>[r(u(h),{type:`button`,variant:`outline`,onClick:s[17]||=e=>T.value=!1},{default:_(()=>[...s[45]||=[p(`取消`,-1)]]),_:1}),r(u(h),{type:`submit`},{default:_(()=>[...s[46]||=[p(`保存`,-1)]]),_:1})]),_:1})],32)]),_:1})]),_:1},8,[`open`]),r(u(_e),{open:!!D.value,"onUpdate:open":s[19]||=e=>{e||(D.value=null)}},{default:_(()=>[r(u(ge),null,{default:_(()=>[r(u(ye),null,{default:_(()=>[r(u(Se),null,{default:_(()=>[...s[47]||=[p(`确认删除`,-1)]]),_:1}),r(u(ve),null,{default:_(()=>[p(`确定要删除供应商「`+v(D.value?.name)+`」吗?此操作不可撤销。`,1)]),_:1})]),_:1}),r(u(xe),null,{default:_(()=>[r(u(be),null,{default:_(()=>[...s[48]||=[p(`取消`,-1)]]),_:1}),r(u(h),{variant:`destructive`,onClick:Re},{default:_(()=>[...s[49]||=[p(`删除`,-1)]]),_:1})]),_:1})]),_:1})]),_:1},8,[`open`])]))}});export{mn as default};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{B as e,Et as t,G as n,H as r,It as i,K as a,L as o,O as s,Pt as c,U as l,V as u,W as d,at as f,ct as p,n as m,nt as h,r as g,st as _,vt as v,zt as y}from"./button-
|
|
1
|
+
import{B as e,Et as t,G as n,H as r,It as i,K as a,L as o,O as s,Pt as c,U as l,V as u,W as d,at as f,ct as p,n as m,nt as h,r as g,st as _,vt as v,zt as y}from"./button-BkhL20Qz.js";import{a as b,i as x,n as S,r as C,t as w}from"./TabsContent-CtT2wglf.js";import{n as T,r as E,t as D}from"./CollapsibleTrigger-DG8JZQfm.js";import{a as O,c as k,i as ee,n as A,o as j,r as M,s as N,t as P}from"./alert-dialog-BbI_a1Xz.js";import{a as F,i as I,n as L,o as te,r as R,t as ne}from"./TableHeader-R3y9M8qo.js";import{t as re}from"./Label-CmG21jDR.js";import{t as z}from"./Switch-ROnHu48E.js";import{n as B,r as V,t as H}from"./TabsTrigger-D2S77VwS.js";import{t as U}from"./badge-CcgNasyU.js";import{n as W}from"./lib-BAWhmkfz.js";import{n as G,t as K}from"./CardContent-BIgWZo6N.js";import{n as q,t as J}from"./CardTitle-BVVp36Pq.js";import{t as Y}from"./format-CPdJtjZ5.js";var X=a({__name:`CardDescription`,props:{class:{type:[Boolean,null,String,Object,Array]}},setup(e){let t=e;return(e,n)=>(f(),l(`div`,{"data-slot":`card-description`,class:i(c(g)(`text-muted-foreground text-sm`,t.class))},[p(e.$slots,`default`)],2))}}),ie={key:0,class:`py-8 text-center text-muted-foreground`},ae={key:1,class:`py-8 text-center text-muted-foreground`},oe={class:`cursor-default font-mono text-xs`},se={class:`font-mono text-xs`},ce={key:0,class:`text-muted-foreground`},le={key:1,class:`text-muted-foreground`},ue={class:`flex items-center gap-2`},de={class:`space-y-2`},fe={class:`text-muted-foreground whitespace-nowrap`},pe={class:`text-muted-foreground`},me={class:`font-medium`},he=8,Z=6e4,Q=60,$=24,ge=a({__name:`SessionTable`,props:{sessions:{},loading:{type:Boolean},historyMap:{}},emits:[`clear`,`viewHistory`],setup(i,{emit:a}){let s=a,p=t(!1),h=t(null);function g(e){h.value=e,p.value=!0}function w(){h.value&&=(s(`clear`,h.value),null)}function T(e){return e.slice(0,he)+`...`}function E(e){let t=Date.now()-new Date(e).getTime(),n=Math.floor(t/Z);if(n<1)return`刚刚`;if(n<Q)return`${n} 分钟前`;let r=Math.floor(n/Q);return r<$?`${r} 小时前`:`${Math.floor(r/$)} 天前`}return(t,a)=>(f(),l(o,null,[i.loading?(f(),l(`div`,ie,`加载中...`)):i.sessions.length===0?(f(),l(`div`,ae,`暂无活跃 Session`)):(f(),u(c(te),{key:2},{default:v(()=>[n(c(ne),null,{default:v(()=>[n(c(R),null,{default:v(()=>[n(c(L),null,{default:v(()=>[...a[1]||=[d(`密钥名称`,-1)]]),_:1}),n(c(L),null,{default:v(()=>[...a[2]||=[d(`Session ID`,-1)]]),_:1}),n(c(L),null,{default:v(()=>[...a[3]||=[d(`当前模型`,-1)]]),_:1}),n(c(L),null,{default:v(()=>[...a[4]||=[d(`原始模型`,-1)]]),_:1}),n(c(L),null,{default:v(()=>[...a[5]||=[d(`最后活跃`,-1)]]),_:1}),n(c(L),null,{default:v(()=>[...a[6]||=[d(`操作`,-1)]]),_:1})]),_:1})]),_:1}),n(c(F),null,{default:v(()=>[(f(!0),l(o,null,_(i.sessions,s=>(f(),l(o,{key:s.id},[n(c(R),null,{default:v(()=>[n(c(I),{class:`font-medium`},{default:v(()=>[d(y(s.router_key_name),1)]),_:2},1024),n(c(I),null,{default:v(()=>[n(c(C),null,{default:v(()=>[n(c(b),null,{default:v(()=>[n(c(S),{"as-child":``},{default:v(()=>[e(`span`,oe,y(T(s.session_id)),1)]),_:2},1024),n(c(x),null,{default:v(()=>[e(`p`,se,y(s.session_id),1)]),_:2},1024)]),_:2},1024)]),_:2},1024)]),_:2},1024),n(c(I),null,{default:v(()=>[n(c(U),{variant:`secondary`},{default:v(()=>[d(y(s.current_model),1)]),_:2},1024)]),_:2},1024),n(c(I),null,{default:v(()=>[s.original_model?(f(),l(`span`,ce,y(s.original_model),1)):(f(),l(`span`,le,`-`))]),_:2},1024),n(c(I),{class:`text-muted-foreground text-sm`},{default:v(()=>[d(y(E(s.last_active_at)),1)]),_:2},1024),n(c(I),null,{default:v(()=>[e(`div`,ue,[n(c(m),{variant:`ghost`,size:`sm`,onClick:e=>t.$emit(`viewHistory`,s)},{default:v(()=>[d(y(i.historyMap[s.session_id]?`收起`:`历史`),1)]),_:2},1032,[`onClick`]),n(c(m),{variant:`ghost`,size:`sm`,class:`text-destructive hover:text-destructive`,onClick:e=>g(s)},{default:v(()=>[...a[7]||=[d(` 清除 `,-1)]]),_:1},8,[`onClick`])])]),_:2},1024)]),_:2},1024),i.historyMap[s.session_id]?(f(),u(c(R),{key:0},{default:v(()=>[n(c(I),{colspan:`6`,class:`bg-muted/50 px-6 py-3`},{default:v(()=>[e(`div`,de,[a[9]||=e(`p`,{class:`text-sm font-medium text-foreground`},`切换历史`,-1),(f(!0),l(o,null,_(i.historyMap[s.session_id],t=>(f(),l(`div`,{key:t.id,class:`flex items-center gap-3 text-sm`},[e(`span`,fe,y(c(Y)(t.created_at)),1),n(c(U),{variant:`outline`,class:`text-xs`},{default:v(()=>[d(y(t.trigger_type),1)]),_:2},1024),e(`span`,null,[e(`span`,pe,y(t.old_model||`默认`),1),a[8]||=e(`span`,{class:`mx-1`},`→`,-1),e(`span`,me,y(t.new_model),1)])]))),128))])]),_:2},1024)]),_:2},1024)):r(``,!0)],64))),128))]),_:1})]),_:1})),n(c(k),{open:p.value,"onUpdate:open":a[0]||=e=>p.value=e},{default:v(()=>[n(c(O),null,{default:v(()=>[n(c(A),null,{default:v(()=>[n(c(P),null,{default:v(()=>[...a[10]||=[d(`确认清除 Session`,-1)]]),_:1}),n(c(ee),null,{default:v(()=>[...a[11]||=[d(` 清除后,该 Session 将恢复使用默认模型映射。此操作不可撤销。 `,-1)]]),_:1})]),_:1}),n(c(M),null,{default:v(()=>[n(c(j),null,{default:v(()=>[...a[12]||=[d(`取消`,-1)]]),_:1}),n(c(N),{onClick:w},{default:v(()=>[...a[13]||=[d(`确认清除`,-1)]]),_:1})]),_:1})]),_:1})]),_:1},8,[`open`])],64))}}),_e={class:`p-6`},ve={class:`flex items-center justify-between mb-4`},ye={key:0,class:`flex items-center gap-1`},be={key:1},xe={class:`flex items-center gap-3`},Se={class:`flex items-center justify-between`},Ce=`---
|
|
2
2
|
description: 切换代理路由模型
|
|
3
3
|
---
|
|
4
4
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{B as e,Et as t,G as n,H as r,I as i,It as a,K as o,L as s,O as c,Pt as l,U as u,V as d,W as f,at as p,n as m,nt as ee,st as h,vt as g,z as _,zt as v}from"./button-BKJB3nEQ.js";import{r as te}from"./useNonce-DN0Hrw3l.js";import{a as ne,i as re,n as ie,r as y,t as ae}from"./SelectValue-DS4Z8y0u.js";import{t as b}from"./Checkbox-CMYgDuxw.js";import{n as oe,r as se,t as ce}from"./CollapsibleTrigger-DooxvEnx.js";import{a as le,n as ue,o as de,r as fe,t as pe}from"./dialog-C0B-Xn-S.js";import{a as x,c as S,i as me,n as he,o as ge,r as _e,t as ve}from"./alert-dialog-BzyDZnoE.js";import{a as C,i as w,n as T,o as E,r as D,t as O}from"./TableHeader-B2A48qgy.js";import{t as k}from"./Label-IbQFgxLe.js";import{t as A}from"./badge-BTjuxlp4.js";import{n as j}from"./lib-BGW4QyKP.js";import{n as M,t as N}from"./CardContent-3ytnac7B.js";import{n as P,t as F}from"./CardTitle-BHZE8Rty.js";import{t as I}from"./Input-JApdUstN.js";var ye={class:`p-6`},be={class:`flex items-center justify-between mb-4`},xe={class:`bg-card rounded-lg border overflow-hidden`},Se={class:`flex items-center gap-2`},Ce={class:`text-xs text-muted-foreground`},we={key:0,class:`text-sm text-destructive mt-1`},Te={key:0,class:`text-sm text-destructive mt-1`},Ee={key:0,class:`text-sm text-destructive mt-1`},De={class:`grid grid-cols-2 gap-3`},Oe={key:0,class:`text-sm text-destructive mt-1`},L={key:0,class:`text-sm text-destructive mt-1`},ke={key:0},Ae={key:0,class:`text-sm text-destructive mt-1`},je={class:`flex items-center gap-2`},Me={class:`flex items-center justify-between`},Ne={class:`flex items-center justify-between mb-3`},Pe={class:`flex items-center gap-2`},R=100,z=599,B=100,V=100,H=o({__name:`RetryRules`,setup(o){let H={name:``,status_code:429,body_pattern:``,is_active:!0,retry_strategy:`exponential`,retry_delay_ms:5e3,max_retries:10,max_delay_ms:6e4},U=t([]),W=t(!1),G=t(null),K=t(null),q=t({...H}),J=t({});function Fe(){let e={};q.value.name.trim()||(e.name=`请输入名称`);let t=Number(q.value.status_code);if((!Number.isInteger(t)||t<R||t>z)&&(e.status_code=`范围 ${R}-${z}`),!q.value.body_pattern.trim())e.body_pattern=`请输入匹配规则`;else try{new RegExp(q.value.body_pattern)}catch{e.body_pattern=`不是合法的正则表达式`}let n=Number(q.value.retry_delay_ms);(!n||n<B)&&(e.retry_delay_ms=`不能小于 ${B}ms`);let r=Number(q.value.max_retries);if((!Number.isInteger(r)||r<0||r>V)&&(e.max_retries=`范围 0-${V}`),q.value.retry_strategy===`exponential`){let t=Number(q.value.max_delay_ms);(!t||t<B)&&(e.max_delay_ms=`不能小于 ${B}ms`)}return J.value=e,Object.keys(e).length===0}async function Y(){try{U.value=await c.getRetryRules()}catch(e){console.error(`Failed to load retry rules:`,e),j.error(`加载数据失败`)}}function Ie(){G.value=null,q.value={...H},J.value={},W.value=!0}function Le(e){G.value=e.id,q.value={name:e.name,status_code:e.status_code,body_pattern:e.body_pattern,is_active:!!e.is_active,retry_strategy:e.retry_strategy,retry_delay_ms:e.retry_delay_ms,max_retries:e.max_retries,max_delay_ms:e.max_delay_ms},J.value={},W.value=!0}async function Re(){if(Fe())try{let e={name:q.value.name,status_code:Number(q.value.status_code),body_pattern:q.value.body_pattern,is_active:+!!q.value.is_active,retry_strategy:q.value.retry_strategy,retry_delay_ms:Number(q.value.retry_delay_ms),max_retries:Number(q.value.max_retries),max_delay_ms:Number(q.value.max_delay_ms)};G.value?await c.updateRetryRule(G.value,e):await c.createRetryRule(e),W.value=!1,await Y()}catch(e){console.error(`Failed to save retry rule:`,e),j.error(`保存规则失败`)}}function ze(e){K.value=e}async function Be(){let e=K.value;if(e){K.value=null;try{await c.deleteRetryRule(e.id),await Y()}catch(e){console.error(`Failed to delete retry rule:`,e),j.error(`删除规则失败`)}}}let X=t(!1),Z=t([]),Q=t(new Set),Ve=_(()=>Z.value.length>0&&Q.value.size===Z.value.length);async function $(){try{Z.value=await c.recommended.getRetryRules()}catch{Z.value=[]}}function He(e){let t=new Set(Q.value);t.has(e)?t.delete(e):t.add(e),Q.value=t}function Ue(e){Q.value=e===!0?new Set(Z.value.map(e=>e.name)):new Set}async function We(){let e=Z.value.filter(e=>Q.value.has(e.name));for(let t of e)await c.createRetryRule({name:t.name,status_code:t.status_code,body_pattern:t.body_pattern,is_active:1,retry_strategy:t.retry_strategy,retry_delay_ms:t.retry_delay_ms,max_retries:t.max_retries,max_delay_ms:t.max_delay_ms});j.success(`已添加 ${e.length} 条规则`),Q.value=new Set,await Promise.allSettled([$(),Y()])}return ee(()=>{Y(),$()}),(t,o)=>(p(),u(`div`,ye,[e(`div`,be,[o[19]||=e(`h2`,{class:`text-lg font-semibold text-foreground`},`重试规则`,-1),n(l(m),{onClick:Ie,class:`flex items-center gap-1`},{default:g(()=>[...o[18]||=[e(`svg`,{class:`w-4 h-4`,fill:`none`,stroke:`currentColor`,viewBox:`0 0 24 24`},[e(`path`,{"stroke-linecap":`round`,"stroke-linejoin":`round`,"stroke-width":`2`,d:`M12 4v16m8-8H4`})],-1),f(` 添加规则 `,-1)]]),_:1})]),e(`div`,xe,[n(l(E),null,{default:g(()=>[n(l(O),null,{default:g(()=>[n(l(D),{class:`bg-muted`},{default:g(()=>[n(l(T),{class:`text-muted-foreground`},{default:g(()=>[...o[20]||=[f(`名称`,-1)]]),_:1}),n(l(T),{class:`text-muted-foreground`},{default:g(()=>[...o[21]||=[f(`HTTP 状态码`,-1)]]),_:1}),n(l(T),{class:`text-muted-foreground`},{default:g(()=>[...o[22]||=[f(`响应体匹配`,-1)]]),_:1}),n(l(T),{class:`text-muted-foreground`},{default:g(()=>[...o[23]||=[f(`重试策略`,-1)]]),_:1}),n(l(T),{class:`text-muted-foreground`},{default:g(()=>[...o[24]||=[f(`状态`,-1)]]),_:1}),n(l(T),{class:`text-right text-muted-foreground`},{default:g(()=>[...o[25]||=[f(`操作`,-1)]]),_:1})]),_:1})]),_:1}),n(l(C),null,{default:g(()=>[(p(!0),u(s,null,h(U.value,t=>(p(),d(l(D),{key:t.id},{default:g(()=>[n(l(w),{class:`font-mono text-sm`},{default:g(()=>[f(v(t.name),1)]),_:2},1024),n(l(w),null,{default:g(()=>[f(v(t.status_code),1)]),_:2},1024),n(l(w),{class:`font-mono text-xs text-muted-foreground`},{default:g(()=>[f(v(t.body_pattern),1)]),_:2},1024),n(l(w),null,{default:g(()=>[e(`div`,Se,[n(l(A),{variant:`outline`},{default:g(()=>[f(v(t.retry_strategy===`fixed`?`固定间隔`:`指数退避`),1)]),_:2},1024),e(`span`,Ce,[f(v(t.retry_delay_ms/1e3)+`s · `+v(t.max_retries)+`次 `,1),t.retry_strategy===`exponential`?(p(),u(s,{key:0},[f(` · 上限`+v(t.max_delay_ms/1e3)+`s`,1)],64)):r(``,!0)])])]),_:2},1024),n(l(w),null,{default:g(()=>[n(l(A),{variant:t.is_active?`default`:`secondary`},{default:g(()=>[f(v(t.is_active?`启用`:`禁用`),1)]),_:2},1032,[`variant`])]),_:2},1024),n(l(w),{class:`text-right`},{default:g(()=>[n(l(m),{variant:`ghost`,size:`sm`,onClick:e=>Le(t),class:`mr-2`},{default:g(()=>[...o[26]||=[f(`编辑`,-1)]]),_:1},8,[`onClick`]),n(l(m),{variant:`ghost`,size:`sm`,class:`text-destructive hover:text-destructive`,onClick:e=>ze(t)},{default:g(()=>[...o[27]||=[f(`删除`,-1)]]),_:1},8,[`onClick`])]),_:2},1024)]),_:2},1024))),128)),U.value.length===0?(p(),d(l(D),{key:0},{default:g(()=>[n(l(w),{colspan:`6`,class:`text-center text-muted-foreground py-8`},{default:g(()=>[...o[28]||=[f(`暂无规则`,-1)]]),_:1})]),_:1})):r(``,!0)]),_:1})]),_:1})]),n(l(de),{open:W.value,"onUpdate:open":o[15]||=e=>W.value=e},{default:g(()=>[n(l(le),null,{default:g(()=>[n(l(ue),null,{default:g(()=>[n(l(pe),null,{default:g(()=>[f(v(G.value?`编辑规则`:`添加规则`),1)]),_:1})]),_:1}),e(`form`,{onSubmit:i(Re,[`prevent`]),class:`space-y-3`},[e(`div`,null,[n(l(k),{class:`block text-sm font-medium text-foreground mb-1`},{default:g(()=>[...o[29]||=[f(`名称`,-1)]]),_:1}),n(l(I),{modelValue:q.value.name,"onUpdate:modelValue":o[0]||=e=>q.value.name=e,type:`text`,required:``,onInput:o[1]||=e=>delete J.value.name},null,8,[`modelValue`]),J.value.name?(p(),u(`p`,we,v(J.value.name),1)):r(``,!0)]),e(`div`,null,[n(l(k),{class:`block text-sm font-medium text-foreground mb-1`},{default:g(()=>[...o[30]||=[f(`HTTP 状态码`,-1)]]),_:1}),n(l(I),{modelValue:q.value.status_code,"onUpdate:modelValue":o[2]||=e=>q.value.status_code=e,modelModifiers:{number:!0},type:`number`,required:``,onInput:o[3]||=e=>delete J.value.status_code},null,8,[`modelValue`]),J.value.status_code?(p(),u(`p`,Te,v(J.value.status_code),1)):r(``,!0)]),e(`div`,null,[n(l(k),{class:`block text-sm font-medium text-foreground mb-1`},{default:g(()=>[...o[31]||=[f(`响应体匹配`,-1)]]),_:1}),n(l(I),{modelValue:q.value.body_pattern,"onUpdate:modelValue":o[4]||=e=>q.value.body_pattern=e,type:`text`,placeholder:`正则表达式,例如 .*rate_limit.*`,required:``,onInput:o[5]||=e=>delete J.value.body_pattern},null,8,[`modelValue`]),J.value.body_pattern?(p(),u(`p`,Ee,v(J.value.body_pattern),1)):r(``,!0)]),e(`div`,null,[n(l(k),{class:`block text-sm font-medium text-foreground mb-1`},{default:g(()=>[...o[32]||=[f(`重试策略`,-1)]]),_:1}),n(l(ne),{modelValue:q.value.retry_strategy,"onUpdate:modelValue":o[6]||=e=>q.value.retry_strategy=e},{default:g(()=>[n(l(ie),{class:`w-full`},{default:g(()=>[n(l(ae),{placeholder:`选择策略`})]),_:1}),n(l(re),null,{default:g(()=>[n(l(y),{value:`exponential`},{default:g(()=>[...o[33]||=[f(`指数退避`,-1)]]),_:1}),n(l(y),{value:`fixed`},{default:g(()=>[...o[34]||=[f(`固定间隔`,-1)]]),_:1})]),_:1})]),_:1},8,[`modelValue`])]),e(`div`,De,[e(`div`,null,[n(l(k),{class:`block text-sm font-medium text-foreground mb-1`},{default:g(()=>[f(v(q.value.retry_strategy===`fixed`?`间隔时间 (ms)`:`初始延迟 (ms)`),1)]),_:1}),n(l(I),{modelValue:q.value.retry_delay_ms,"onUpdate:modelValue":o[7]||=e=>q.value.retry_delay_ms=e,modelModifiers:{number:!0},type:`number`,min:100,required:``,onInput:o[8]||=e=>delete J.value.retry_delay_ms},null,8,[`modelValue`]),J.value.retry_delay_ms?(p(),u(`p`,Oe,v(J.value.retry_delay_ms),1)):r(``,!0)]),e(`div`,null,[n(l(k),{class:`block text-sm font-medium text-foreground mb-1`},{default:g(()=>[...o[35]||=[f(`最大重试次数`,-1)]]),_:1}),n(l(I),{modelValue:q.value.max_retries,"onUpdate:modelValue":o[9]||=e=>q.value.max_retries=e,modelModifiers:{number:!0},type:`number`,min:0,max:100,required:``,onInput:o[10]||=e=>delete J.value.max_retries},null,8,[`modelValue`]),J.value.max_retries?(p(),u(`p`,L,v(J.value.max_retries),1)):r(``,!0)])]),q.value.retry_strategy===`exponential`?(p(),u(`div`,ke,[n(l(k),{class:`block text-sm font-medium text-foreground mb-1`},{default:g(()=>[...o[36]||=[f(`延迟上限 (ms)`,-1)]]),_:1}),n(l(I),{modelValue:q.value.max_delay_ms,"onUpdate:modelValue":o[11]||=e=>q.value.max_delay_ms=e,modelModifiers:{number:!0},type:`number`,min:100,required:``,onInput:o[12]||=e=>delete J.value.max_delay_ms},null,8,[`modelValue`]),J.value.max_delay_ms?(p(),u(`p`,Ae,v(J.value.max_delay_ms),1)):r(``,!0)])):r(``,!0),e(`div`,je,[n(l(b),{modelValue:q.value.is_active,"onUpdate:modelValue":o[13]||=e=>q.value.is_active=e,id:`rule-active`},null,8,[`modelValue`]),n(l(k),{for:`rule-active`,class:`text-sm text-foreground`},{default:g(()=>[...o[37]||=[f(`启用`,-1)]]),_:1})]),n(l(fe),null,{default:g(()=>[n(l(m),{type:`button`,variant:`outline`,onClick:o[14]||=e=>W.value=!1},{default:g(()=>[...o[38]||=[f(`取消`,-1)]]),_:1}),n(l(m),{type:`submit`},{default:g(()=>[...o[39]||=[f(`保存`,-1)]]),_:1})]),_:1})],32)]),_:1})]),_:1},8,[`open`]),n(l(S),{open:!!K.value,"onUpdate:open":o[16]||=e=>{e||(K.value=null)}},{default:g(()=>[n(l(x),null,{default:g(()=>[n(l(he),null,{default:g(()=>[n(l(ve),null,{default:g(()=>[...o[40]||=[f(`确认删除`,-1)]]),_:1}),n(l(me),null,{default:g(()=>[f(`确定要删除规则「`+v(K.value?.name)+`」吗?`,1)]),_:1})]),_:1}),n(l(_e),null,{default:g(()=>[n(l(ge),null,{default:g(()=>[...o[41]||=[f(`取消`,-1)]]),_:1}),n(l(m),{variant:`destructive`,onClick:Be},{default:g(()=>[...o[42]||=[f(`删除`,-1)]]),_:1})]),_:1})]),_:1})]),_:1},8,[`open`]),Z.value.length>0?(p(),d(l(M),{key:0,class:`mt-6`},{default:g(()=>[n(l(se),{open:X.value,"onUpdate:open":o[17]||=e=>X.value=e},{default:g(()=>[n(l(ce),{"as-child":``},{default:g(()=>[n(l(P),{class:`cursor-pointer hover:bg-muted/50 transition-colors`},{default:g(()=>[e(`div`,Me,[n(l(F),{class:`text-sm font-medium`},{default:g(()=>[f(`推荐重试规则 (`+v(Z.value.length)+`)`,1)]),_:1}),n(l(te),{class:a([`h-4 w-4 text-muted-foreground transition-transform`,{"rotate-180":X.value}])},null,8,[`class`])])]),_:1})]),_:1}),n(l(oe),null,{default:g(()=>[n(l(N),null,{default:g(()=>[e(`div`,Ne,[e(`div`,Pe,[n(l(b),{"model-value":Ve.value,"onUpdate:modelValue":Ue},null,8,[`model-value`]),o[43]||=e(`span`,{class:`text-sm text-muted-foreground`},`全选`,-1)]),n(l(m),{size:`sm`,disabled:Q.value.size===0,onClick:We},{default:g(()=>[f(` 添加选中 (`+v(Q.value.size)+`) `,1)]),_:1},8,[`disabled`])]),n(l(E),null,{default:g(()=>[n(l(O),null,{default:g(()=>[n(l(D),null,{default:g(()=>[n(l(T),{class:`w-10`}),n(l(T),null,{default:g(()=>[...o[44]||=[f(`名称`,-1)]]),_:1}),n(l(T),null,{default:g(()=>[...o[45]||=[f(`状态码`,-1)]]),_:1}),n(l(T),null,{default:g(()=>[...o[46]||=[f(`匹配模式`,-1)]]),_:1}),n(l(T),null,{default:g(()=>[...o[47]||=[f(`策略`,-1)]]),_:1})]),_:1})]),_:1}),n(l(C),null,{default:g(()=>[(p(!0),u(s,null,h(Z.value,e=>(p(),d(l(D),{key:e.name},{default:g(()=>[n(l(w),null,{default:g(()=>[n(l(b),{"model-value":Q.value.has(e.name),"onUpdate:modelValue":()=>He(e.name)},null,8,[`model-value`,`onUpdate:modelValue`])]),_:2},1024),n(l(w),null,{default:g(()=>[f(v(e.name),1)]),_:2},1024),n(l(w),null,{default:g(()=>[f(v(e.status_code),1)]),_:2},1024),n(l(w),{class:`font-mono text-xs max-w-[200px] truncate`},{default:g(()=>[f(v(e.body_pattern),1)]),_:2},1024),n(l(w),null,{default:g(()=>[f(v(e.retry_strategy===`fixed`?`固定间隔`:`指数退避`),1)]),_:2},1024)]),_:2},1024))),128))]),_:1})]),_:1})]),_:1})]),_:1})]),_:1},8,[`open`])]),_:1})):r(``,!0)]))}});export{H as default};
|
|
1
|
+
import{B as e,Et as t,G as n,H as r,I as i,It as a,K as o,L as s,O as c,Pt as l,U as u,V as d,W as f,at as p,n as m,nt as ee,st as h,vt as g,z as _,zt as v}from"./button-BkhL20Qz.js";import{r as te}from"./useNonce-Dfbnp6Co.js";import{a as ne,i as re,n as ie,r as y,t as ae}from"./SelectValue-Ct22fmR7.js";import{t as b}from"./Checkbox-CnvHc21k.js";import{n as oe,r as se,t as ce}from"./CollapsibleTrigger-DG8JZQfm.js";import{a as le,n as ue,o as de,r as fe,t as pe}from"./dialog-BeetdYQi.js";import{a as x,c as S,i as me,n as he,o as ge,r as _e,t as ve}from"./alert-dialog-BbI_a1Xz.js";import{a as C,i as w,n as T,o as E,r as D,t as O}from"./TableHeader-R3y9M8qo.js";import{t as k}from"./Label-CmG21jDR.js";import{t as A}from"./badge-CcgNasyU.js";import{n as j}from"./lib-BAWhmkfz.js";import{n as M,t as N}from"./CardContent-BIgWZo6N.js";import{n as P,t as F}from"./CardTitle-BVVp36Pq.js";import{t as I}from"./Input-BA5UO-Ab.js";var ye={class:`p-6`},be={class:`flex items-center justify-between mb-4`},xe={class:`bg-card rounded-lg border overflow-hidden`},Se={class:`flex items-center gap-2`},Ce={class:`text-xs text-muted-foreground`},we={key:0,class:`text-sm text-destructive mt-1`},Te={key:0,class:`text-sm text-destructive mt-1`},Ee={key:0,class:`text-sm text-destructive mt-1`},De={class:`grid grid-cols-2 gap-3`},Oe={key:0,class:`text-sm text-destructive mt-1`},L={key:0,class:`text-sm text-destructive mt-1`},ke={key:0},Ae={key:0,class:`text-sm text-destructive mt-1`},je={class:`flex items-center gap-2`},Me={class:`flex items-center justify-between`},Ne={class:`flex items-center justify-between mb-3`},Pe={class:`flex items-center gap-2`},R=100,z=599,B=100,V=100,H=o({__name:`RetryRules`,setup(o){let H={name:``,status_code:429,body_pattern:``,is_active:!0,retry_strategy:`exponential`,retry_delay_ms:5e3,max_retries:10,max_delay_ms:6e4},U=t([]),W=t(!1),G=t(null),K=t(null),q=t({...H}),J=t({});function Fe(){let e={};q.value.name.trim()||(e.name=`请输入名称`);let t=Number(q.value.status_code);if((!Number.isInteger(t)||t<R||t>z)&&(e.status_code=`范围 ${R}-${z}`),!q.value.body_pattern.trim())e.body_pattern=`请输入匹配规则`;else try{new RegExp(q.value.body_pattern)}catch{e.body_pattern=`不是合法的正则表达式`}let n=Number(q.value.retry_delay_ms);(!n||n<B)&&(e.retry_delay_ms=`不能小于 ${B}ms`);let r=Number(q.value.max_retries);if((!Number.isInteger(r)||r<0||r>V)&&(e.max_retries=`范围 0-${V}`),q.value.retry_strategy===`exponential`){let t=Number(q.value.max_delay_ms);(!t||t<B)&&(e.max_delay_ms=`不能小于 ${B}ms`)}return J.value=e,Object.keys(e).length===0}async function Y(){try{U.value=await c.getRetryRules()}catch(e){console.error(`Failed to load retry rules:`,e),j.error(`加载数据失败`)}}function Ie(){G.value=null,q.value={...H},J.value={},W.value=!0}function Le(e){G.value=e.id,q.value={name:e.name,status_code:e.status_code,body_pattern:e.body_pattern,is_active:!!e.is_active,retry_strategy:e.retry_strategy,retry_delay_ms:e.retry_delay_ms,max_retries:e.max_retries,max_delay_ms:e.max_delay_ms},J.value={},W.value=!0}async function Re(){if(Fe())try{let e={name:q.value.name,status_code:Number(q.value.status_code),body_pattern:q.value.body_pattern,is_active:+!!q.value.is_active,retry_strategy:q.value.retry_strategy,retry_delay_ms:Number(q.value.retry_delay_ms),max_retries:Number(q.value.max_retries),max_delay_ms:Number(q.value.max_delay_ms)};G.value?await c.updateRetryRule(G.value,e):await c.createRetryRule(e),W.value=!1,await Y()}catch(e){console.error(`Failed to save retry rule:`,e),j.error(`保存规则失败`)}}function ze(e){K.value=e}async function Be(){let e=K.value;if(e){K.value=null;try{await c.deleteRetryRule(e.id),await Y()}catch(e){console.error(`Failed to delete retry rule:`,e),j.error(`删除规则失败`)}}}let X=t(!1),Z=t([]),Q=t(new Set),Ve=_(()=>Z.value.length>0&&Q.value.size===Z.value.length);async function $(){try{Z.value=await c.recommended.getRetryRules()}catch{Z.value=[]}}function He(e){let t=new Set(Q.value);t.has(e)?t.delete(e):t.add(e),Q.value=t}function Ue(e){Q.value=e===!0?new Set(Z.value.map(e=>e.name)):new Set}async function We(){let e=Z.value.filter(e=>Q.value.has(e.name));for(let t of e)await c.createRetryRule({name:t.name,status_code:t.status_code,body_pattern:t.body_pattern,is_active:1,retry_strategy:t.retry_strategy,retry_delay_ms:t.retry_delay_ms,max_retries:t.max_retries,max_delay_ms:t.max_delay_ms});j.success(`已添加 ${e.length} 条规则`),Q.value=new Set,await Promise.allSettled([$(),Y()])}return ee(()=>{Y(),$()}),(t,o)=>(p(),u(`div`,ye,[e(`div`,be,[o[19]||=e(`h2`,{class:`text-lg font-semibold text-foreground`},`重试规则`,-1),n(l(m),{onClick:Ie,class:`flex items-center gap-1`},{default:g(()=>[...o[18]||=[e(`svg`,{class:`w-4 h-4`,fill:`none`,stroke:`currentColor`,viewBox:`0 0 24 24`},[e(`path`,{"stroke-linecap":`round`,"stroke-linejoin":`round`,"stroke-width":`2`,d:`M12 4v16m8-8H4`})],-1),f(` 添加规则 `,-1)]]),_:1})]),e(`div`,xe,[n(l(E),null,{default:g(()=>[n(l(O),null,{default:g(()=>[n(l(D),{class:`bg-muted`},{default:g(()=>[n(l(T),{class:`text-muted-foreground`},{default:g(()=>[...o[20]||=[f(`名称`,-1)]]),_:1}),n(l(T),{class:`text-muted-foreground`},{default:g(()=>[...o[21]||=[f(`HTTP 状态码`,-1)]]),_:1}),n(l(T),{class:`text-muted-foreground`},{default:g(()=>[...o[22]||=[f(`响应体匹配`,-1)]]),_:1}),n(l(T),{class:`text-muted-foreground`},{default:g(()=>[...o[23]||=[f(`重试策略`,-1)]]),_:1}),n(l(T),{class:`text-muted-foreground`},{default:g(()=>[...o[24]||=[f(`状态`,-1)]]),_:1}),n(l(T),{class:`text-right text-muted-foreground`},{default:g(()=>[...o[25]||=[f(`操作`,-1)]]),_:1})]),_:1})]),_:1}),n(l(C),null,{default:g(()=>[(p(!0),u(s,null,h(U.value,t=>(p(),d(l(D),{key:t.id},{default:g(()=>[n(l(w),{class:`font-mono text-sm`},{default:g(()=>[f(v(t.name),1)]),_:2},1024),n(l(w),null,{default:g(()=>[f(v(t.status_code),1)]),_:2},1024),n(l(w),{class:`font-mono text-xs text-muted-foreground`},{default:g(()=>[f(v(t.body_pattern),1)]),_:2},1024),n(l(w),null,{default:g(()=>[e(`div`,Se,[n(l(A),{variant:`outline`},{default:g(()=>[f(v(t.retry_strategy===`fixed`?`固定间隔`:`指数退避`),1)]),_:2},1024),e(`span`,Ce,[f(v(t.retry_delay_ms/1e3)+`s · `+v(t.max_retries)+`次 `,1),t.retry_strategy===`exponential`?(p(),u(s,{key:0},[f(` · 上限`+v(t.max_delay_ms/1e3)+`s`,1)],64)):r(``,!0)])])]),_:2},1024),n(l(w),null,{default:g(()=>[n(l(A),{variant:t.is_active?`default`:`secondary`},{default:g(()=>[f(v(t.is_active?`启用`:`禁用`),1)]),_:2},1032,[`variant`])]),_:2},1024),n(l(w),{class:`text-right`},{default:g(()=>[n(l(m),{variant:`ghost`,size:`sm`,onClick:e=>Le(t),class:`mr-2`},{default:g(()=>[...o[26]||=[f(`编辑`,-1)]]),_:1},8,[`onClick`]),n(l(m),{variant:`ghost`,size:`sm`,class:`text-destructive hover:text-destructive`,onClick:e=>ze(t)},{default:g(()=>[...o[27]||=[f(`删除`,-1)]]),_:1},8,[`onClick`])]),_:2},1024)]),_:2},1024))),128)),U.value.length===0?(p(),d(l(D),{key:0},{default:g(()=>[n(l(w),{colspan:`6`,class:`text-center text-muted-foreground py-8`},{default:g(()=>[...o[28]||=[f(`暂无规则`,-1)]]),_:1})]),_:1})):r(``,!0)]),_:1})]),_:1})]),n(l(de),{open:W.value,"onUpdate:open":o[15]||=e=>W.value=e},{default:g(()=>[n(l(le),null,{default:g(()=>[n(l(ue),null,{default:g(()=>[n(l(pe),null,{default:g(()=>[f(v(G.value?`编辑规则`:`添加规则`),1)]),_:1})]),_:1}),e(`form`,{onSubmit:i(Re,[`prevent`]),class:`space-y-3`},[e(`div`,null,[n(l(k),{class:`block text-sm font-medium text-foreground mb-1`},{default:g(()=>[...o[29]||=[f(`名称`,-1)]]),_:1}),n(l(I),{modelValue:q.value.name,"onUpdate:modelValue":o[0]||=e=>q.value.name=e,type:`text`,required:``,onInput:o[1]||=e=>delete J.value.name},null,8,[`modelValue`]),J.value.name?(p(),u(`p`,we,v(J.value.name),1)):r(``,!0)]),e(`div`,null,[n(l(k),{class:`block text-sm font-medium text-foreground mb-1`},{default:g(()=>[...o[30]||=[f(`HTTP 状态码`,-1)]]),_:1}),n(l(I),{modelValue:q.value.status_code,"onUpdate:modelValue":o[2]||=e=>q.value.status_code=e,modelModifiers:{number:!0},type:`number`,required:``,onInput:o[3]||=e=>delete J.value.status_code},null,8,[`modelValue`]),J.value.status_code?(p(),u(`p`,Te,v(J.value.status_code),1)):r(``,!0)]),e(`div`,null,[n(l(k),{class:`block text-sm font-medium text-foreground mb-1`},{default:g(()=>[...o[31]||=[f(`响应体匹配`,-1)]]),_:1}),n(l(I),{modelValue:q.value.body_pattern,"onUpdate:modelValue":o[4]||=e=>q.value.body_pattern=e,type:`text`,placeholder:`正则表达式,例如 .*rate_limit.*`,required:``,onInput:o[5]||=e=>delete J.value.body_pattern},null,8,[`modelValue`]),J.value.body_pattern?(p(),u(`p`,Ee,v(J.value.body_pattern),1)):r(``,!0)]),e(`div`,null,[n(l(k),{class:`block text-sm font-medium text-foreground mb-1`},{default:g(()=>[...o[32]||=[f(`重试策略`,-1)]]),_:1}),n(l(ne),{modelValue:q.value.retry_strategy,"onUpdate:modelValue":o[6]||=e=>q.value.retry_strategy=e},{default:g(()=>[n(l(ie),{class:`w-full`},{default:g(()=>[n(l(ae),{placeholder:`选择策略`})]),_:1}),n(l(re),null,{default:g(()=>[n(l(y),{value:`exponential`},{default:g(()=>[...o[33]||=[f(`指数退避`,-1)]]),_:1}),n(l(y),{value:`fixed`},{default:g(()=>[...o[34]||=[f(`固定间隔`,-1)]]),_:1})]),_:1})]),_:1},8,[`modelValue`])]),e(`div`,De,[e(`div`,null,[n(l(k),{class:`block text-sm font-medium text-foreground mb-1`},{default:g(()=>[f(v(q.value.retry_strategy===`fixed`?`间隔时间 (ms)`:`初始延迟 (ms)`),1)]),_:1}),n(l(I),{modelValue:q.value.retry_delay_ms,"onUpdate:modelValue":o[7]||=e=>q.value.retry_delay_ms=e,modelModifiers:{number:!0},type:`number`,min:100,required:``,onInput:o[8]||=e=>delete J.value.retry_delay_ms},null,8,[`modelValue`]),J.value.retry_delay_ms?(p(),u(`p`,Oe,v(J.value.retry_delay_ms),1)):r(``,!0)]),e(`div`,null,[n(l(k),{class:`block text-sm font-medium text-foreground mb-1`},{default:g(()=>[...o[35]||=[f(`最大重试次数`,-1)]]),_:1}),n(l(I),{modelValue:q.value.max_retries,"onUpdate:modelValue":o[9]||=e=>q.value.max_retries=e,modelModifiers:{number:!0},type:`number`,min:0,max:100,required:``,onInput:o[10]||=e=>delete J.value.max_retries},null,8,[`modelValue`]),J.value.max_retries?(p(),u(`p`,L,v(J.value.max_retries),1)):r(``,!0)])]),q.value.retry_strategy===`exponential`?(p(),u(`div`,ke,[n(l(k),{class:`block text-sm font-medium text-foreground mb-1`},{default:g(()=>[...o[36]||=[f(`延迟上限 (ms)`,-1)]]),_:1}),n(l(I),{modelValue:q.value.max_delay_ms,"onUpdate:modelValue":o[11]||=e=>q.value.max_delay_ms=e,modelModifiers:{number:!0},type:`number`,min:100,required:``,onInput:o[12]||=e=>delete J.value.max_delay_ms},null,8,[`modelValue`]),J.value.max_delay_ms?(p(),u(`p`,Ae,v(J.value.max_delay_ms),1)):r(``,!0)])):r(``,!0),e(`div`,je,[n(l(b),{modelValue:q.value.is_active,"onUpdate:modelValue":o[13]||=e=>q.value.is_active=e,id:`rule-active`},null,8,[`modelValue`]),n(l(k),{for:`rule-active`,class:`text-sm text-foreground`},{default:g(()=>[...o[37]||=[f(`启用`,-1)]]),_:1})]),n(l(fe),null,{default:g(()=>[n(l(m),{type:`button`,variant:`outline`,onClick:o[14]||=e=>W.value=!1},{default:g(()=>[...o[38]||=[f(`取消`,-1)]]),_:1}),n(l(m),{type:`submit`},{default:g(()=>[...o[39]||=[f(`保存`,-1)]]),_:1})]),_:1})],32)]),_:1})]),_:1},8,[`open`]),n(l(S),{open:!!K.value,"onUpdate:open":o[16]||=e=>{e||(K.value=null)}},{default:g(()=>[n(l(x),null,{default:g(()=>[n(l(he),null,{default:g(()=>[n(l(ve),null,{default:g(()=>[...o[40]||=[f(`确认删除`,-1)]]),_:1}),n(l(me),null,{default:g(()=>[f(`确定要删除规则「`+v(K.value?.name)+`」吗?`,1)]),_:1})]),_:1}),n(l(_e),null,{default:g(()=>[n(l(ge),null,{default:g(()=>[...o[41]||=[f(`取消`,-1)]]),_:1}),n(l(m),{variant:`destructive`,onClick:Be},{default:g(()=>[...o[42]||=[f(`删除`,-1)]]),_:1})]),_:1})]),_:1})]),_:1},8,[`open`]),Z.value.length>0?(p(),d(l(M),{key:0,class:`mt-6`},{default:g(()=>[n(l(se),{open:X.value,"onUpdate:open":o[17]||=e=>X.value=e},{default:g(()=>[n(l(ce),{"as-child":``},{default:g(()=>[n(l(P),{class:`cursor-pointer hover:bg-muted/50 transition-colors`},{default:g(()=>[e(`div`,Me,[n(l(F),{class:`text-sm font-medium`},{default:g(()=>[f(`推荐重试规则 (`+v(Z.value.length)+`)`,1)]),_:1}),n(l(te),{class:a([`h-4 w-4 text-muted-foreground transition-transform`,{"rotate-180":X.value}])},null,8,[`class`])])]),_:1})]),_:1}),n(l(oe),null,{default:g(()=>[n(l(N),null,{default:g(()=>[e(`div`,Ne,[e(`div`,Pe,[n(l(b),{"model-value":Ve.value,"onUpdate:modelValue":Ue},null,8,[`model-value`]),o[43]||=e(`span`,{class:`text-sm text-muted-foreground`},`全选`,-1)]),n(l(m),{size:`sm`,disabled:Q.value.size===0,onClick:We},{default:g(()=>[f(` 添加选中 (`+v(Q.value.size)+`) `,1)]),_:1},8,[`disabled`])]),n(l(E),null,{default:g(()=>[n(l(O),null,{default:g(()=>[n(l(D),null,{default:g(()=>[n(l(T),{class:`w-10`}),n(l(T),null,{default:g(()=>[...o[44]||=[f(`名称`,-1)]]),_:1}),n(l(T),null,{default:g(()=>[...o[45]||=[f(`状态码`,-1)]]),_:1}),n(l(T),null,{default:g(()=>[...o[46]||=[f(`匹配模式`,-1)]]),_:1}),n(l(T),null,{default:g(()=>[...o[47]||=[f(`策略`,-1)]]),_:1})]),_:1})]),_:1}),n(l(C),null,{default:g(()=>[(p(!0),u(s,null,h(Z.value,e=>(p(),d(l(D),{key:e.name},{default:g(()=>[n(l(w),null,{default:g(()=>[n(l(b),{"model-value":Q.value.has(e.name),"onUpdate:modelValue":()=>He(e.name)},null,8,[`model-value`,`onUpdate:modelValue`])]),_:2},1024),n(l(w),null,{default:g(()=>[f(v(e.name),1)]),_:2},1024),n(l(w),null,{default:g(()=>[f(v(e.status_code),1)]),_:2},1024),n(l(w),{class:`font-mono text-xs max-w-[200px] truncate`},{default:g(()=>[f(v(e.body_pattern),1)]),_:2},1024),n(l(w),null,{default:g(()=>[f(v(e.retry_strategy===`fixed`?`固定间隔`:`指数退避`),1)]),_:2},1024)]),_:2},1024))),128))]),_:1})]),_:1})]),_:1})]),_:1})]),_:1},8,[`open`])]),_:1})):r(``,!0)]))}});export{H as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{B as e,Et as t,G as n,H as r,I as i,It as ee,K as a,L as o,O as s,Pt as c,U as l,V as u,W as d,at as f,n as p,nt as m,st as h,vt as g,zt as _}from"./button-
|
|
1
|
+
import{B as e,Et as t,G as n,H as r,I as i,It as ee,K as a,L as o,O as s,Pt as c,U as l,V as u,W as d,at as f,n as p,nt as m,st as h,vt as g,zt as _}from"./button-BkhL20Qz.js";import{t as v}from"./Checkbox-CnvHc21k.js";import{a as te,n as ne,o as re,r as ie,t as ae}from"./dialog-BeetdYQi.js";import{a as oe,c as y,i as b,n as x,o as S,r as C,t as se}from"./alert-dialog-BbI_a1Xz.js";import{a as ce,i as w,n as T,o as E,r as D,t as O}from"./TableHeader-R3y9M8qo.js";import{t as k}from"./Label-CmG21jDR.js";import{t as A}from"./badge-CcgNasyU.js";import{n as j}from"./lib-BAWhmkfz.js";import{t as M}from"./Input-BA5UO-Ab.js";import{t as N}from"./useClipboard-D3mHD2V6.js";var P={class:`p-6`},F={class:`flex items-center justify-between mb-4`},I={class:`bg-card rounded-lg border overflow-hidden`},L={class:`flex items-center gap-1`},R={class:`font-mono text-xs text-muted-foreground`},z={key:0,class:`w-3.5 h-3.5`,fill:`none`,stroke:`currentColor`,viewBox:`0 0 24 24`},B={key:1,class:`w-3.5 h-3.5 text-success`,fill:`none`,stroke:`currentColor`,viewBox:`0 0 24 24`},V={key:0,class:`flex flex-wrap gap-1`},H={key:0,class:`text-sm text-destructive mt-1`},U={class:`border rounded-md p-3 max-h-48 overflow-y-auto space-y-2 bg-muted`},le={class:`font-mono text-xs`},W={key:0,class:`text-muted-foreground text-sm text-center py-2`},ue={key:0,class:`flex flex-wrap gap-1 mt-2`},de={key:0,class:`flex items-center gap-2`},G=a({__name:`RouterKeys`,setup(a){let G={name:``,allowed_models:[],is_active:!0},K=t([]),q=t([]),J=t(!1),Y=t(null),X=t(null),Z=t({...G,allowed_models:[]}),Q=t({}),{copied:fe,copy:pe}=N();function me(e){return e?e.slice(0,7)+`*`.repeat(7):``}function he(e){return new Date(e).toLocaleString(`zh-CN`)}function ge(e){let t=Z.value.allowed_models.indexOf(e);t>=0&&Z.value.allowed_models.splice(t,1)}async function $(){try{let[e,t]=await Promise.allSettled([s.getRouterKeys(),s.getAvailableModels()]);e.status===`fulfilled`&&(K.value=e.value),t.status===`fulfilled`&&(q.value=t.value)}catch(e){console.error(`Failed to load data:`,e),j.error(`加载数据失败`)}}function _e(){Y.value=null,Z.value={...G,allowed_models:[]},Q.value={},J.value=!0}function ve(e){Y.value=e.id,Z.value={name:e.name,allowed_models:e.allowed_models?[...e.allowed_models]:[],is_active:!!e.is_active},Q.value={},J.value=!0}function ye(){return{name:Z.value.name,allowed_models:Z.value.allowed_models.length>0?Z.value.allowed_models:null,is_active:+!!Z.value.is_active}}function be(){return{name:Z.value.name,allowed_models:Z.value.allowed_models.length>0?Z.value.allowed_models:null}}async function xe(){let e={};if(Z.value.name.trim()||(e.name=`请输入名称`),Q.value=e,!(Object.keys(e).length>0))try{Y.value?await s.updateRouterKey(Y.value,ye()):await s.createRouterKey(be()),J.value=!1,await $()}catch(e){console.error(`Failed to save router key:`,e),j.error(`保存密钥失败`)}}function Se(e){X.value=e}async function Ce(){let e=X.value;if(e){X.value=null;try{await s.deleteRouterKey(e.id),await $()}catch(e){console.error(`Failed to delete router key:`,e),j.error(`删除密钥失败`)}}}return m($),(t,a)=>(f(),l(`div`,P,[e(`div`,F,[a[7]||=e(`h2`,{class:`text-lg font-semibold text-foreground`},`API 密钥`,-1),n(c(p),{onClick:_e,class:`flex items-center gap-1`},{default:g(()=>[...a[6]||=[e(`svg`,{class:`w-4 h-4`,fill:`none`,stroke:`currentColor`,viewBox:`0 0 24 24`},[e(`path`,{"stroke-linecap":`round`,"stroke-linejoin":`round`,"stroke-width":`2`,d:`M12 4v16m8-8H4`})],-1),d(` 创建密钥 `,-1)]]),_:1})]),e(`div`,I,[n(c(E),null,{default:g(()=>[n(c(O),null,{default:g(()=>[n(c(D),{class:`bg-muted`},{default:g(()=>[n(c(T),{class:`text-muted-foreground`},{default:g(()=>[...a[8]||=[d(`名称`,-1)]]),_:1}),n(c(T),{class:`text-muted-foreground`},{default:g(()=>[...a[9]||=[d(`密钥`,-1)]]),_:1}),n(c(T),{class:`text-muted-foreground`},{default:g(()=>[...a[10]||=[d(`白名单模型`,-1)]]),_:1}),n(c(T),{class:`text-muted-foreground`},{default:g(()=>[...a[11]||=[d(`状态`,-1)]]),_:1}),n(c(T),{class:`text-muted-foreground`},{default:g(()=>[...a[12]||=[d(`创建时间`,-1)]]),_:1}),n(c(T),{class:`text-right text-muted-foreground`},{default:g(()=>[...a[13]||=[d(`操作`,-1)]]),_:1})]),_:1})]),_:1}),n(c(ce),null,{default:g(()=>[(f(!0),l(o,null,h(K.value,t=>(f(),u(c(D),{key:t.id,class:ee({"opacity-60":!t.is_active})},{default:g(()=>[n(c(w),{class:`font-medium`},{default:g(()=>[d(_(t.name),1)]),_:2},1024),n(c(w),null,{default:g(()=>[e(`div`,L,[e(`span`,R,_(me(t.key)),1),n(c(p),{variant:`ghost`,size:`sm`,class:`h-6 w-6 p-0`,onClick:e=>t.key&&c(pe)(t.key)},{default:g(()=>[c(fe)?(f(),l(`svg`,B,[...a[15]||=[e(`path`,{"stroke-linecap":`round`,"stroke-linejoin":`round`,"stroke-width":`2`,d:`M5 13l4 4L19 7`},null,-1)]])):(f(),l(`svg`,z,[...a[14]||=[e(`path`,{"stroke-linecap":`round`,"stroke-linejoin":`round`,"stroke-width":`2`,d:`M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z`},null,-1)]]))]),_:1},8,[`onClick`])])]),_:2},1024),n(c(w),null,{default:g(()=>[t.allowed_models&&t.allowed_models.length>0?(f(),l(`div`,V,[(f(!0),l(o,null,h(t.allowed_models,e=>(f(),u(c(A),{key:e,variant:`outline`,class:`text-xs`},{default:g(()=>[d(_(e),1)]),_:2},1024))),128))])):(f(),u(c(A),{key:1,variant:`secondary`},{default:g(()=>[...a[16]||=[d(`全部模型`,-1)]]),_:1}))]),_:2},1024),n(c(w),null,{default:g(()=>[n(c(A),{variant:t.is_active?`default`:`secondary`},{default:g(()=>[d(_(t.is_active?`启用`:`禁用`),1)]),_:2},1032,[`variant`])]),_:2},1024),n(c(w),{class:`text-muted-foreground text-sm`},{default:g(()=>[d(_(he(t.created_at)),1)]),_:2},1024),n(c(w),{class:`text-right`},{default:g(()=>[n(c(p),{variant:`ghost`,size:`sm`,onClick:e=>ve(t),class:`text-muted-foreground hover:text-primary mr-2`},{default:g(()=>[...a[17]||=[d(`编辑`,-1)]]),_:1},8,[`onClick`]),n(c(p),{variant:`ghost`,size:`sm`,onClick:e=>Se(t),class:`text-muted-foreground hover:text-destructive`},{default:g(()=>[...a[18]||=[d(`删除`,-1)]]),_:1},8,[`onClick`])]),_:2},1024)]),_:2},1032,[`class`]))),128)),K.value.length===0?(f(),u(c(D),{key:0},{default:g(()=>[n(c(w),{colspan:`6`,class:`text-center text-muted-foreground py-8`},{default:g(()=>[...a[19]||=[d(`暂无密钥`,-1)]]),_:1})]),_:1})):r(``,!0)]),_:1})]),_:1})]),n(c(re),{open:J.value,"onUpdate:open":a[4]||=e=>J.value=e},{default:g(()=>[n(c(te),{class:`sm:max-w-lg`},{default:g(()=>[n(c(ne),null,{default:g(()=>[n(c(ae),null,{default:g(()=>[d(_(Y.value?`编辑密钥`:`创建密钥`),1)]),_:1})]),_:1}),e(`form`,{onSubmit:i(xe,[`prevent`]),class:`space-y-4`},[e(`div`,null,[n(c(k),{class:`block text-sm font-medium text-foreground mb-1`},{default:g(()=>[...a[20]||=[d(`名称`,-1)]]),_:1}),n(c(M),{modelValue:Z.value.name,"onUpdate:modelValue":a[0]||=e=>Z.value.name=e,type:`text`,required:``,placeholder:`例如:生产环境`,onInput:a[1]||=e=>delete Q.value.name},null,8,[`modelValue`]),Q.value.name?(f(),l(`p`,H,_(Q.value.name),1)):r(``,!0)]),e(`div`,null,[n(c(k),{class:`block text-sm font-medium text-foreground mb-1`},{default:g(()=>[...a[21]||=[d(`白名单模型`,-1)]]),_:1}),a[23]||=e(`div`,{class:`text-xs text-muted-foreground mb-2`},`不选择 = 允许所有模型`,-1),e(`div`,U,[(f(!0),l(o,null,h(q.value,t=>(f(),u(c(k),{key:t,class:`flex items-center gap-2 cursor-pointer text-sm font-normal`},{default:g(()=>[n(c(v),{"model-value":Z.value.allowed_models.includes(t),"onUpdate:modelValue":e=>{if(e&&e!==`indeterminate`&&!Z.value.allowed_models.includes(t))Z.value.allowed_models.push(t);else if(!e){let e=Z.value.allowed_models.indexOf(t);e>=0&&Z.value.allowed_models.splice(e,1)}}},null,8,[`model-value`,`onUpdate:modelValue`]),e(`span`,le,_(t),1)]),_:2},1024))),128)),q.value.length===0?(f(),l(`div`,W,` 暂无可用模型,请先配置模型映射 `)):r(``,!0)]),Z.value.allowed_models.length>0?(f(),l(`div`,ue,[(f(!0),l(o,null,h(Z.value.allowed_models,e=>(f(),u(c(A),{key:e,variant:`outline`,class:`text-xs`},{default:g(()=>[d(_(e)+` `,1),n(c(p),{type:`button`,variant:`ghost`,size:`sm`,class:`ml-1 h-4 w-4 p-0 text-muted-foreground hover:text-destructive`,onClick:t=>ge(e)},{default:g(()=>[...a[22]||=[d(`×`,-1)]]),_:1},8,[`onClick`])]),_:2},1024))),128))])):r(``,!0)]),Y.value?(f(),l(`div`,de,[n(c(v),{modelValue:Z.value.is_active,"onUpdate:modelValue":a[2]||=e=>Z.value.is_active=e,id:`key-active`},null,8,[`modelValue`]),n(c(k),{for:`key-active`,class:`text-sm text-foreground`},{default:g(()=>[...a[24]||=[d(`启用`,-1)]]),_:1})])):r(``,!0),n(c(ie),null,{default:g(()=>[n(c(p),{type:`button`,variant:`outline`,onClick:a[3]||=e=>J.value=!1},{default:g(()=>[...a[25]||=[d(`取消`,-1)]]),_:1}),n(c(p),{type:`submit`},{default:g(()=>[...a[26]||=[d(`保存`,-1)]]),_:1})]),_:1})],32)]),_:1})]),_:1},8,[`open`]),n(c(y),{open:!!X.value,"onUpdate:open":a[5]||=e=>{e||(X.value=null)}},{default:g(()=>[n(c(oe),null,{default:g(()=>[n(c(x),null,{default:g(()=>[n(c(se),null,{default:g(()=>[...a[27]||=[d(`确认删除`,-1)]]),_:1}),n(c(b),null,{default:g(()=>[d(`确定要删除密钥「`+_(X.value?.name)+`」吗?使用此密钥的所有请求将被拒绝,此操作不可撤销。`,1)]),_:1})]),_:1}),n(c(C),null,{default:g(()=>[n(c(S),null,{default:g(()=>[...a[28]||=[d(`取消`,-1)]]),_:1}),n(c(p),{variant:`destructive`,onClick:Ce},{default:g(()=>[...a[29]||=[d(`删除`,-1)]]),_:1})]),_:1})]),_:1})]),_:1},8,[`open`])]))}});export{G as default};
|