import{aM as B,I as E,r as F,cE as I,k as S,a5 as V,aG as M}from"./index.17037962789732.js";import"./index.170379627897314.js";import"./index.170379627897315.js";import"./index.170379627897316.js";import"./index.170379627897317.js";import"./index.1703796278973301.js";import"./index.170379627897318.js";import"./index.170379627897319.js";import{_ as J}from"./ExpandsForm.vue_vue_type_script_setup_true_name_ExpandsForm_lang.1703796278973.js";import{V as f,v as N}from"./ValueTypeForm.1703796278973.js";import{u as $}from"./product.17037962789738.js";import{h as w}from"./product.17037962789737.js";import{J as L}from"./index.1703796278973158.js";import{E as O,a as P}from"./data.17037962789732.js";import{u as A}from"./metadata.1703796278973.js";import{d as k,k as D,p as G,o as s,x as p,b as l,a as n,u as i,F as d,B as c,t as b}from"./vue.1703796278973.js";import{_ as R}from"./_plugin-vue_export-helper.1703796278973.js";import"./index.17037962789733.js";import"./dayjs.min.1703796278973.js";import"./isArray.1703796278973.js";import"./editor.api.1703796278973.js";import"./preload-helper.1703796278973.js";import"./monaco.contribution.1703796278973.js";import"./index.170379627897336.js";import"./index.1703796278973319.js";import"./index.170379627897325.js";import"./index.1703796278973312.js";import"./index.170379627897338.js";import"./index.170379627897332.js";import"./index.170379627897337.js";import"./index.1703796278973310.js";import"./index.1703796278973305.js";import"./index.1703796278973302.js";import"./index.1703796278973303.js";import"./index.170379627897339.js";import"./index.1703796278973304.js";import"./index.1703796278973320.js";import"./moment.1703796278973.js";import"./system.1703796278973.js";import"./comm.1703796278973.js";import"./index.170379627897333.js";import"./index.170379627897334.js";import"./default.1703796278973.js";import"./permission.1703796278973.js";import"./consts.1703796278973.js";import"./404.1703796278973.js";import"./index.170379627897320.js";import"./index.170379627897322.js";import"./index.170379627897323.js";import"./instance.1703796278973.js";import"./index.1703796278973313.js";import"./encodeQuery.1703796278973.js";import"./index.170379627897327.js";import"./utils.1703796278973.js";const Z=k({name:"BaseForm"}),H=k({...Z,props:{type:{type:String,required:!0,default:"product"},value:{type:Object,default:()=>({})},modelType:{type:String,default:""}},setup(e){const u=e,U=A();(u.modelType==="events"||u.modelType==="tags")&&(u.value.expands||(u.value.expands={}));const j=$(),T=D([]),g=B.debounce(async()=>{var y;if(u.type!=="product")return;const{valueType:v,id:a}=u.value,{type:m}=v||{},o=(y=j.current)==null?void 0:y.id;if(!o||!a||!m)return;const r=await w({deviceId:o,metadata:{id:a,type:"property",dataType:m}});r.status===200&&(T.value=r.result)},500);G(()=>{u.modelType==="properties"&&g()});const C=v=>{var a;u.type==="product"&&["int","float","double","long","date","string","boolean"].includes(v)?u.value.expands.metrics=[]:(a=u.value.expands)==null||delete a.metrics,g()};return(v,a)=>{const m=E,o=F,r=I,y=S,x=V,q=M;return s(),p(d,null,[l(o,{label:"标识",name:"id",rules:[{required:!0,message:"请输入标识"},{max:64,message:"最多可输入64个字符"},{pattern:/^[a-zA-Z0-9_\-]+$/,message:"ID只能由数字、字母、下划线、中划线组成"}]},{default:n(()=>[l(m,{value:e.value.id,"onUpdate:value":a[0]||(a[0]=t=>e.value.id=t),size:"small",onChange:i(g),disabled:i(U).model.action==="edit",placeholder:"请输入标识"},null,8,["value","onChange","disabled"])]),_:1}),l(o,{label:"名称",name:"name",rules:[{required:!0,message:"请输入名称"},{max:64,message:"最多可输入64个字符"}]},{default:n(()=>[l(m,{value:e.value.name,"onUpdate:value":a[1]||(a[1]=t=>e.value.name=t),size:"small",placeholder:"请输入名称"},null,8,["value"])]),_:1}),e.modelType==="properties"?(s(),p(d,{key:0},[l(f,{name:["valueType"],value:e.value.valueType,"onUpdate:value":a[2]||(a[2]=t=>e.value.valueType=t),key:"property",title:"数据类型",onChangeType:C},null,8,["value"]),l(J,{name:["expands"],value:e.value.expands,"onUpdate:value":a[3]||(a[3]=t=>e.value.expands=t),type:e.type,id:e.value.id,config:i(T),valueType:e.value.valueType},null,8,["value","type","id","config","valueType"])],64)):c("",!0),e.modelType==="functions"?(s(),p(d,{key:1},[l(o,{label:"是否异步",name:"async",rules:[{required:!0,message:"请选择是否异步"}]},{default:n(()=>[l(y,{value:e.value.async,"onUpdate:value":a[4]||(a[4]=t=>e.value.async=t)},{default:n(()=>[l(r,{value:!0},{default:n(()=>[b("是")]),_:1}),l(r,{value:!1},{default:n(()=>[b("否")]),_:1})]),_:1},8,["value"])]),_:1}),l(o,{label:"输入参数",name:"inputs",rules:[{validator:(t,z)=>i(N)(t,z,"输入参数",!1)}]},{default:n(()=>[l(L,{value:e.value.inputs,"onUpdate:value":a[5]||(a[5]=t=>e.value.inputs=t),name:["inputs"],"is-sub":!1},null,8,["value"])]),_:1},8,["rules"]),l(f,{name:["output"],value:e.value.output,"onUpdate:value":a[6]||(a[6]=t=>e.value.output=t),key:"function",title:"输出参数",required:!1},null,8,["value"])],64)):c("",!0),e.modelType==="events"?(s(),p(d,{key:2},[l(o,{label:"级别",name:["expands","level"],rules:[{required:!0,message:"请选择级别"}]},{default:n(()=>[l(x,{value:e.value.expands.level,"onUpdate:value":a[7]||(a[7]=t=>e.value.expands.level=t),options:i(O),size:"small",placeholder:"请选择级别"},null,8,["value","options"])]),_:1}),l(f,{name:["valueType"],value:e.value.valueType,"onUpdate:value":a[8]||(a[8]=t=>e.value.valueType=t),key:"function",title:"输出参数","only-object":""},null,8,["value"])],64)):c("",!0),e.modelType==="tags"?(s(),p(d,{key:3},[l(f,{name:["valueType"],value:e.value.valueType,"onUpdate:value":a[9]||(a[9]=t=>e.value.valueType=t),key:"property",title:"数据类型"},null,8,["value"]),l(o,{label:"标签类型",name:["expands","type"],rules:[{required:!0,message:"请选择标签类型"}]},{default:n(()=>[l(x,{value:e.value.expands.type,"onUpdate:value":a[10]||(a[10]=t=>e.value.expands.type=t),options:i(P),mode:"multiple",size:"small",placeholder:"请选择标签类型"},null,8,["value","options"])]),_:1})],64)):c("",!0),l(o,{label:"说明",name:"description",rules:[{max:200,message:"最多可输入200个字符"}]},{default:n(()=>[l(q,{value:e.value.description,"onUpdate:value":a[11]||(a[11]=t=>e.value.description=t),size:"small",placeholder:"请输入说明"},null,8,["value"])]),_:1})],64)}}});const Ke=R(H,[["__scopeId","data-v-78ca84ee"]]);export{Ke as default};