mirror of
https://github.com/vastxie/99AI.git
synced 2025-09-23 12:06:37 +08:00
11 lines
19 KiB
JavaScript
11 lines
19 KiB
JavaScript
|
||
/**
|
||
* 由 Fantastic-admin 提供技术支持
|
||
* Powered by Fantastic-admin
|
||
* Gitee https://gitee.com/hooray/fantastic-admin
|
||
* Github https://github.com/hooray/fantastic-admin
|
||
*/
|
||
|
||
import{_ as ge}from"./index-fd8a5577.js";import{Y as W,d as ke,r as w,Q as J,B as j,x as be,h as r,R as we,o as i,c as S,e,f as t,S as N,U as L,b as m,l as s,a as c,w as ee,I as f,t as y,J as O,V as ve,E as le,X as Te,q as te}from"./index-e656eb90.js";import{u as Ve}from"./utcformatTime-e76e5157.js";import{f as he,g as oe,M as xe,b as Ue,h as Me,i as Se}from"./index-d5406c70.js";const Q={queryModels:q=>W.get("models/query",{params:q}),setModels:q=>W.post("models/setModel",q),delModels:q=>W.post("models/delModel",q)},qe={style:{float:"right"}},Ne={class:"overflow-y-scroll w-full whitespace-nowrap"},Le={class:"input-with-text"},Ce=c("span",{class:"unit-text"},"次/小时",-1),Oe=c("div",{style:{width:"250px"}}," 关闭将在用户端隐藏此模型、但不会影响后台的调用 ",-1),Re=c("div",{style:{width:"250px"}}," 给定了部分可选的模型列表、你可以可以手动填写您需要调用的模型、请确保填写的模型是当前key支持的类型、否则可能会在调用中出现不可预知错误! ",-1),Fe=c("div",{style:{width:"250px"}}," 设置当前key的扣费类型、扣除普通积分或是高级积分。 ",-1),Be=c("div",{style:{width:"250px"}}," 设置当前key的单次调用扣除积分、建议同模型或名称key设置相同的金额、避免扣费发生异常! ",-1),De=c("div",{style:{width:"250px"}}," 填写此配置可以限制用户在选择模型时候的高级配置中的最大上下文轮次、可以通过限制此数量减少token的损耗、减低上下文的损耗量、 如果设置了模型的最大token和返回量、那么两个限制会同时生效! ",-1),ze=c("div",{style:{width:"250px"}}," 当前轮询是根据模型下的列表按顺序调用、如果权重为2则表示轮到此key的时候会调用两次之后再轮询下一个key 保证每个key的调用顺序以及限制每次调用的准确次数 ",-1),Ae=c("div",{style:{width:"250px"}}," 基于 token 计费,计费方式为(基础消费 * token消耗) ",-1),Pe=c("div",null,"选择是否开启文件上传及其格式、文件分析仅开发版支持",-1),Ie=c("div",{style:{width:"250px"}}," 开启 Token 计费后生效,每积分等价于多少 Token ",-1),Ye={class:"flex justify-end mr-5"},$e=ke({__name:"key",setup(q){w();const E=w(),X=w(0),x=w(!1),R=w(!1),ae=w(!1);w(!1);const _=J({keyType:"",model:"",status:null,page:1,size:10}),D=w(),U=w(0),a=J({keyType:1,modelName:"",key:"",modelAvatar:"",status:!0,model:"",isTokenBased:!1,tokenFeeRatio:1e3,keyWeight:1,modelOrder:1,maxModelTokens:4e3,proxyUrl:"",timeout:300,deduct:1,deductType:1,maxRounds:12,isFileUpload:0,modelLimits:999}),de=J({keyType:[{required:!0,message:"请选择调用模型类型",trigger:"blur"}],modelName:[{required:!0,message:"请填写您的模型名称",trigger:"blur"}],key:[{required:!1,message:"请填写您的调用模型key",trigger:"blur"}],status:[{required:!0,message:"请选择key的启用状态",trigger:"change"}],isFileUpload:[{required:!1,message:"请选择当前模型是否开启文件上传及支持种类",trigger:"change"}],isTokenBased:[{required:!0,message:"请选择当前key是否基于token计费",trigger:"change"}],tokenFeeRatio:[{required:!1,message:"token计费比例",trigger:"change"}],model:[{required:!0,message:"请选择当前key需要绑定的模型",trigger:"change"}],modelOrder:[{required:!0,message:"请填写当前模型排序",trigger:"blur"}],keyWeight:[{required:!0,message:"请填写key的权重值",trigger:"blur"}],maxModelTokens:[{required:!0,message:"请填写模型最大token数",trigger:"blur"}],proxyUrl:[{required:!1,message:"请填写指定代理地址",trigger:"blur"}],modelAvatar:[{required:!1,message:"请填写AI模型使用的头像, 不填写使用系统默认",trigger:"blur"}],timeout:[{required:!0,message:"请填写超时时间 默认 60 单位(秒)",trigger:"blur"}],deductType:[{required:!0,message:"请选择当前模型扣费类型",trigger:"change"}],deduct:[{required:!0,message:"请填写当前模型扣费金额(需要是正整数)",trigger:"blur"}],maxRounds:[{required:!0,message:"请填写允许用户选择的最大上下文轮次",trigger:"blur"}],modelLimits:[{required:!0,message:"请填写模型调用频率限制",trigger:"blur"}]});function re(u){U.value=0,u==null||u.resetFields()}const se=j(()=>he[a.keyType]),ue=j(()=>U.value?"修改模型":"新增模型"),ne=j(()=>U.value?"确认更新":"确认新增"),G=w([]);async function M(){try{R.value=!0;const u=await Q.queryModels(_);R.value=!1;const{rows:o,count:p}=u.data;X.value=p,G.value=o}catch{R.value=!1}}async function ie(u){const{id:o}=u;await Q.delModels({id:o}),le({type:"success",message:"操作完成!"}),M()}function pe(u){U.value=u.id;const{keyType:o,modelName:p,key:v,status:d,model:b,keyWeight:z,modelOrder:g,maxModelTokens:F,proxyUrl:C,timeout:A,deductType:T,deduct:n,maxRounds:P,modelAvatar:I,isTokenBased:Y,tokenFeeRatio:$,isFileUpload:k,modelLimits:K}=u;Te(()=>{Object.assign(a,{keyType:o,modelName:p,key:v,status:d,model:b,keyWeight:z,modelOrder:g,maxModelTokens:F,proxyUrl:C,timeout:A,deductType:T,deduct:n,maxRounds:P,modelAvatar:I,isTokenBased:Y,tokenFeeRatio:$,isFileUpload:k,modelLimits:K})}),x.value=!0}function me(u){u==null||u.resetFields(),M()}async function ce(u){u==null||u.validate(async o=>{if(o){const p=JSON.parse(JSON.stringify(a));if(delete p.id,U.value&&(p.id=U.value),Number(a.keyType)===1){const d=JSON.parse(JSON.stringify(a.key)).split(`
|
||
`);p.key=d}await Q.setModels(p),le({type:"success",message:"操作成功!"}),U.value=0,x.value=!1,M()}})}return be(()=>{M()}),(u,o)=>{const p=r("el-option"),v=r("el-select"),d=r("el-form-item"),b=r("el-button"),z=r("Plus"),g=r("el-icon"),F=r("el-form"),C=ge,A=r("el-alert"),T=r("el-tag"),n=r("el-table-column"),P=r("el-popconfirm"),I=r("el-table"),Y=r("el-pagination"),$=r("el-row"),k=r("el-input"),K=r("el-input-number"),H=r("el-switch"),V=r("QuestionFilled"),h=r("el-tooltip"),B=r("el-radio"),fe=r("el-radio-group"),ye=r("el-dialog"),Z=we("loading");return i(),S("div",null,[e(C,null,{default:t(()=>[e(F,{ref_key:"formRef",ref:E,inline:!0,model:_},{default:t(()=>[e(d,{label:"模型类型",prop:"model"},{default:t(()=>[e(v,{modelValue:_.keyType,"onUpdate:modelValue":o[0]||(o[0]=l=>_.keyType=l),filterable:"","allow-create":"",placeholder:"请选择或填写绑定的模型",clearable:""},{default:t(()=>[(i(!0),S(N,null,L(m(oe),l=>(i(),f(p,{key:l,label:l.label,value:l.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),e(d,{label:"使用模型",prop:"model"},{default:t(()=>[e(v,{modelValue:_.model,"onUpdate:modelValue":o[1]||(o[1]=l=>_.model=l),filterable:"","allow-create":"",placeholder:"请选择或填写绑定的模型",clearable:""},{default:t(()=>[(i(!0),S(N,null,L(m(xe),l=>(i(),f(p,{key:l,label:l,value:l},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),e(d,{label:"启用状态",prop:"status"},{default:t(()=>[e(v,{modelValue:_.status,"onUpdate:modelValue":o[2]||(o[2]=l=>_.status=l),placeholder:"请选择key启用状态",clearable:""},{default:t(()=>[(i(!0),S(N,null,L(m(Ue),l=>(i(),f(p,{key:l.value,label:l.label,value:l.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),e(d,null,{default:t(()=>[e(b,{type:"primary",onClick:M},{default:t(()=>[s(" 查询 ")]),_:1}),e(b,{onClick:o[3]||(o[3]=l=>me(m(E)))},{default:t(()=>[s(" 重置 ")]),_:1})]),_:1}),c("span",qe,[e(b,{type:"success",onClick:o[4]||(o[4]=l=>x.value=!0)},{default:t(()=>[s(" 添加模型Key "),e(g,{class:"ml-3"},{default:t(()=>[e(z)]),_:1})]),_:1})])]),_:1},8,["model"])]),_:1}),e(C,null,{default:t(()=>[e(A,{"show-icon":"",title:"模型配置说明",description:"模型分为(对话模型|绘画模型|特殊模型三类),对话模型和绘画模型均在前端显示,特殊模型默认隐藏,其中,开启翻译、导图、gpts均需单独配置对应模型",type:"success"})]),_:1}),e(C,{style:{width:"100%"}},{default:t(()=>[ee((i(),f(I,{border:"",data:m(G),style:{width:"100%"},size:"large"},{default:t(()=>[e(n,{prop:"keyType",label:"模型类型",width:"120"},{default:t(l=>[e(T,{type:"success"},{default:t(()=>[s(y(m(Me)[l.row.keyType]),1)]),_:2},1024)]),_:1}),e(n,{prop:"modelOrder",label:"模型排序",width:"90",align:"center"}),e(n,{prop:"modelLimits",label:"频率限制",width:"90",align:"center"}),e(n,{prop:"modelName",label:"模型名称",width:"180"}),e(n,{prop:"status",align:"center",label:"启用状态",width:"90"},{default:t(l=>[e(T,{type:l.row.status?"success":"danger"},{default:t(()=>[s(y(l.row.status?"使用中":"已暂停"),1)]),_:2},1032,["type"])]),_:1}),e(n,{prop:"key",label:"模型KEY",width:"460"},{default:t(l=>[c("div",Ne,y(l.row.key),1)]),_:1}),e(n,{prop:"model",align:"center",label:"绑定模型",width:"180"},{default:t(l=>[e(T,{type:l.row.model.includes("gpt-4")?"success":""},{default:t(()=>[s(y(l.row.model),1)]),_:2},1032,["type"])]),_:1}),e(n,{prop:"isTokenBased",align:"center",label:"Token计费",width:"120"},{default:t(l=>[e(T,{type:l.row.isTokenBased?"success":"danger"},{default:t(()=>[s(y(l.row.isTokenBased?"是":"否"),1)]),_:2},1032,["type"])]),_:1}),e(n,{prop:"deductType",align:"center",label:"扣费类型",width:"90"},{default:t(l=>[e(T,{type:l.row.deductType===1?"success":l.row.deductType===2?"warning":"info"},{default:t(()=>[s(y(l.row.deductType===1?"普通积分":l.row.deductType===2?"高级积分":"绘画积分"),1)]),_:2},1032,["type"])]),_:1}),e(n,{prop:"deduct",align:"center",label:"单次扣除",width:"90"},{default:t(l=>[e(T,{type:l.row.deductType===1?"success":"warning"},{default:t(()=>[s(y(`${l.row.deduct} 积分`),1)]),_:2},1032,["type"])]),_:1}),e(n,{prop:"useCount",align:"center",label:"调用次数",width:"90"}),e(n,{prop:"useToken",align:"center",label:"已使用Token",width:"120"}),e(n,{prop:"keyStatus",align:"center",label:"key状态",width:"110"},{default:t(l=>[e(T,{type:l.row.keyStatus===1?"success":"danger"},{default:t(()=>[s(y(l.row.keyStatus===1?"正常工作":l.row.keyStatus===-1?"已被封禁":"余额耗尽 "),1)]),_:2},1032,["type"])]),_:1}),e(n,{prop:"maxModelTokens",align:"center",label:"模型最大上下文",width:"140"},{default:t(l=>[e(b,{type:"info",text:""},{default:t(()=>[s(y(l.row.maxModelTokens||"-"),1)]),_:2},1024)]),_:1}),e(n,{prop:"proxyUrl",align:"center",label:"绑定的代理地址",width:"140"},{default:t(l=>[e(b,{type:"info",text:""},{default:t(()=>[s(y(l.row.proxyUrl||"-"),1)]),_:2},1024)]),_:1}),e(n,{prop:"proxyUrl",align:"center",label:"变更提示信息",width:"180"},{default:t(l=>[s(y(l.row.remark||"-"),1)]),_:1}),e(n,{prop:"createdAt",align:"center",label:"添加时间",width:"120"},{default:t(l=>[s(y(m(Ve)(l.row.createdAt,"YYYY-MM-DD")),1)]),_:1}),e(n,{fixed:"right",label:"操作",width:"200"},{default:t(l=>[e(b,{link:"",type:"primary",size:"small",onClick:_e=>pe(l.row)},{default:t(()=>[s(" 变更 ")]),_:2},1032,["onClick"]),e(P,{title:"确认删除此秘钥么?",width:"180","icon-color":"red",onConfirm:_e=>ie(l.row)},{reference:t(()=>[e(b,{link:"",type:"danger",size:"small"},{default:t(()=>[s(" 删除秘钥 ")]),_:1})]),_:2},1032,["onConfirm"])]),_:1})]),_:1},8,["data"])),[[Z,m(R)]]),e($,{class:"flex justify-end mt-5"},{default:t(()=>[e(Y,{"current-page":_.page,"onUpdate:currentPage":o[5]||(o[5]=l=>_.page=l),"page-size":_.size,"onUpdate:pageSize":o[6]||(o[6]=l=>_.size=l),class:"mr-5","page-sizes":[10,20,30,50],layout:"total, sizes, prev, pager, next, jumper",total:m(X),onSizeChange:M,onCurrentChange:M},null,8,["current-page","page-size","total"])]),_:1})]),_:1}),e(ye,{modelValue:m(x),"onUpdate:modelValue":o[26]||(o[26]=l=>ve(x)?x.value=l:null),"close-on-click-modal":!1,title:ue.value,width:"770",onClose:o[27]||(o[27]=l=>re(m(D)))},{footer:t(()=>[c("span",Ye,[e(b,{onClick:o[24]||(o[24]=l=>x.value=!1)},{default:t(()=>[s("取消")]),_:1}),e(b,{type:"primary",onClick:o[25]||(o[25]=l=>ce(m(D)))},{default:t(()=>[s(y(ne.value),1)]),_:1})])]),default:t(()=>[ee((i(),f(F,{ref_key:"formPackageRef",ref:D,"label-position":"right","label-width":"120px",model:a,rules:de},{default:t(()=>[e(d,{label:"模型类型选择",prop:"keyType"},{default:t(()=>[e(v,{modelValue:a.keyType,"onUpdate:modelValue":o[7]||(o[7]=l=>a.keyType=l),placeholder:"请选择模型类型",style:{width:"100%"}},{default:t(()=>[(i(!0),S(N,null,L(m(oe),l=>(i(),f(p,{key:l.value,label:l.label,value:l.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1}),e(d,{label:"模型中文名称",prop:"modelName"},{default:t(()=>[e(k,{modelValue:a.modelName,"onUpdate:modelValue":o[8]||(o[8]=l=>a.modelName=l),placeholder:"请填写模型中文名称(用户选择的)"},null,8,["modelValue"])]),_:1}),e(d,{label:"模型排序",prop:"modelOrder"},{default:t(()=>[e(k,{modelValue:a.modelOrder,"onUpdate:modelValue":o[9]||(o[9]=l=>a.modelOrder=l),modelModifiers:{number:!0},placeholder:"模型排序,越小越靠前。"},null,8,["modelValue"])]),_:1}),e(d,{label:"模型调用频率",prop:"modelLimits"},{default:t(()=>[c("div",Le,[e(K,{modelValue:a.modelLimits,"onUpdate:modelValue":o[10]||(o[10]=l=>a.modelLimits=l),max:999,min:0,step:5,"step-strictly":"",class:"input-number",style:{"margin-right":"10px"}},null,8,["modelValue"]),Ce])]),_:1}),e(d,{label:"用户端显示",prop:"status"},{default:t(()=>[e(H,{modelValue:a.status,"onUpdate:modelValue":o[11]||(o[11]=l=>a.status=l)},null,8,["modelValue"]),e(h,{class:"box-item",effect:"dark",placement:"right"},{content:t(()=>[Oe]),default:t(()=>[e(g,{class:"ml-3 cursor-pointer"},{default:t(()=>[e(V)]),_:1})]),_:1})]),_:1}),e(d,{label:"模型密钥",prop:"key"},{default:t(()=>[e(k,{modelValue:a.key,"onUpdate:modelValue":o[12]||(o[12]=l=>a.key=l),type:"text",placeholder:"请填写模型Key",style:{width:"95%"}},null,8,["modelValue"])]),_:1}),e(d,{label:"指定代理地址",prop:"proxyUrl"},{default:t(()=>[e(k,{modelValue:a.proxyUrl,"onUpdate:modelValue":o[13]||(o[13]=l=>a.proxyUrl=l),modelModifiers:{number:!0},placeholder:"如需使用代理请填写、不填写默认使用全局配置!"},null,8,["modelValue"])]),_:1}),e(d,{label:"账号关联模型",prop:"model"},{default:t(()=>[e(v,{modelValue:a.model,"onUpdate:modelValue":o[14]||(o[14]=l=>a.model=l),filterable:"",clearable:"",placeholder:"请选用或填写绑定的模型","allow-create":"",style:{width:"80%"}},{default:t(()=>[(i(!0),S(N,null,L(se.value,l=>(i(),f(p,{key:l,label:l,value:l},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),e(h,{class:"box-item",effect:"dark",placement:"right"},{content:t(()=>[Re]),default:t(()=>[e(g,{class:"ml-3 cursor-pointer"},{default:t(()=>[e(V)]),_:1})]),_:1})]),_:1}),e(d,{label:"模型扣费类型",prop:"deductType"},{default:t(()=>[e(v,{modelValue:a.deductType,"onUpdate:modelValue":o[15]||(o[15]=l=>a.deductType=l),filterable:"","allow-create":"",clearable:"",placeholder:"请选用模型扣费类型",style:{width:"80%"}},{default:t(()=>[(i(!0),S(N,null,L(m(Se),l=>(i(),f(p,{key:l.value,label:l.label,value:l.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),e(h,{class:"box-item",effect:"dark",placement:"right"},{content:t(()=>[Fe]),default:t(()=>[e(g,{class:"ml-3 cursor-pointer"},{default:t(()=>[e(V)]),_:1})]),_:1})]),_:1}),e(d,{label:"单次扣除金额",prop:"deduct"},{default:t(()=>[e(k,{modelValue:a.deduct,"onUpdate:modelValue":o[16]||(o[16]=l=>a.deduct=l),modelModifiers:{number:!0},placeholder:"请填写单次调用此key的扣费金额!",style:{width:"80%"}},null,8,["modelValue"]),e(h,{class:"box-item",effect:"dark",placement:"right"},{content:t(()=>[Be]),default:t(()=>[e(g,{class:"ml-3 cursor-pointer"},{default:t(()=>[e(V)]),_:1})]),_:1})]),_:1}),[1].includes(Number(a.keyType))?(i(),f(d,{key:0,label:"上下文限制",prop:"maxRounds"},{default:t(()=>[e(k,{modelValue:a.maxRounds,"onUpdate:modelValue":o[17]||(o[17]=l=>a.maxRounds=l),modelModifiers:{number:!0},placeholder:"请填写允许用户选择的最高上下文轮次!",style:{width:"80%"}},null,8,["modelValue"]),e(h,{class:"box-item",effect:"dark",placement:"right"},{content:t(()=>[De]),default:t(()=>[e(g,{class:"ml-3 cursor-pointer"},{default:t(()=>[e(V)]),_:1})]),_:1})]),_:1})):O("",!0),[1].includes(Number(a.keyType))?(i(),f(d,{key:1,label:"调用轮询权重",prop:"keyWeight"},{default:t(()=>[e(k,{modelValue:a.keyWeight,"onUpdate:modelValue":o[18]||(o[18]=l=>a.keyWeight=l),modelModifiers:{number:!0},placeholder:"请填写key的权重、数字越大使用评率越高!",style:{width:"80%"}},null,8,["modelValue"]),e(h,{class:"box-item",effect:"dark",placement:"right"},{content:t(()=>[ze]),default:t(()=>[e(g,{class:"ml-3 cursor-pointer"},{default:t(()=>[e(V)]),_:1})]),_:1})]),_:1})):O("",!0),[1].includes(Number(a.keyType))?(i(),f(d,{key:2,label:"模型最大Token",prop:"maxModelTokens"},{default:t(()=>[e(k,{modelValue:a.maxModelTokens,"onUpdate:modelValue":o[19]||(o[19]=l=>a.maxModelTokens=l),modelModifiers:{number:!0},placeholder:"请填写模型最大Token、不填写默认使用默认!"},null,8,["modelValue"])]),_:1})):O("",!0),e(d,{label:"调用超时时间",prop:"timeout"},{default:t(()=>[e(k,{modelValue:a.timeout,"onUpdate:modelValue":o[20]||(o[20]=l=>a.timeout=l),modelModifiers:{number:!0},placeholder:"请填写key的超时时间单位(秒)!"},null,8,["modelValue"])]),_:1}),[1,3].includes(Number(a.keyType))?(i(),f(d,{key:3,label:"设为token计费",prop:"isTokenBased"},{default:t(()=>[e(H,{modelValue:a.isTokenBased,"onUpdate:modelValue":o[21]||(o[21]=l=>a.isTokenBased=l)},null,8,["modelValue"]),e(h,{class:"box-item",effect:"dark",placement:"right"},{content:t(()=>[Ae]),default:t(()=>[e(g,{class:"ml-3 cursor-pointer"},{default:t(()=>[e(V)]),_:1})]),_:1})]),_:1})):O("",!0),e(d,{label:"文件上传",prop:"isFileUpload"},{default:t(()=>[e(fe,{modelValue:a.isFileUpload,"onUpdate:modelValue":o[22]||(o[22]=l=>a.isFileUpload=l)},{default:t(()=>[e(B,{label:0},{default:t(()=>[s("不使用")]),_:1}),e(B,{label:1},{default:t(()=>[s("ALL格式-直接附带链接")]),_:1}),e(B,{label:2},{default:t(()=>[s("4V-格式")]),_:1}),e(B,{label:3,disabled:""},{default:t(()=>[s("文件分析")]),_:1})]),_:1},8,["modelValue"]),e(h,{class:"box-item",effect:"dark",placement:"right"},{content:t(()=>[Pe]),default:t(()=>[e(g,{class:"ml-3 cursor-pointer"},{default:t(()=>[e(V)]),_:1})]),_:1})]),_:1}),[1,3].includes(Number(a.keyType))?(i(),f(d,{key:4,label:"token计费比例",prop:"tokenFeeRatio"},{default:t(()=>[e(k,{modelValue:a.tokenFeeRatio,"onUpdate:modelValue":o[23]||(o[23]=l=>a.tokenFeeRatio=l),modelModifiers:{number:!0},placeholder:"请填写token计费比例",style:{width:"80%"}},null,8,["modelValue"]),e(h,{class:"box-item",effect:"dark",placement:"right"},{content:t(()=>[Ie]),default:t(()=>[e(g,{class:"ml-3 cursor-pointer"},{default:t(()=>[e(V)]),_:1})]),_:1})]),_:1})):O("",!0)]),_:1},8,["model","rules"])),[[Z,m(ae)]])]),_:1},8,["modelValue","title"])])}}});typeof te=="function"&&te($e);export{$e as default};
|