@vtj/designer 0.7.11 → 0.7.12
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/dist/index.cjs +2 -2
- package/dist/index.mjs +2 -2
- package/package.json +8 -8
- package/types/version.d.ts +2 -2
package/dist/index.cjs
CHANGED
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
* Copyright (c) 2024, VTJ.PRO All rights reserved.
|
|
3
3
|
* @name @vtj/designer
|
|
4
4
|
* @author CHC chenhuachun1549@dingtalk.com
|
|
5
|
-
* @version 0.7.
|
|
5
|
+
* @version 0.7.12
|
|
6
6
|
* @license <a href="https://vtj.pro/license.html">MIT License</a>
|
|
7
|
-
*/const _e="0.7.11",de={width:390,height:844},me={width:1180,height:820},H=/^[A-Za-z_$][\w_-]*$/,ye=["click","dblclick","mouseenter","mouseleave","mousedown","mouseup","mouseover","contextmenu"],we=["keydown","keyup","keypress"],Ce=["GET","POST","PUT","PATCH","DELETE","JSONP"],Ve=["stop","prevent","capture","self","once","passive"];var J=(i=>(i.Block="block",i.Node="node",i))(J||{}),Be=(i=>(i.Brand="Brand",i.Toolbar="Toolbar",i.Actions="Actions",i.Apps="Apps",i.Workspace="Workspace",i.Settings="Settings",i.Status="Status",i.Preview="Preview",i))(Be||{});const xe="data:image/png;base64,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",Ke=["title","src"],Ze={key:1},Qe=e.defineComponent({name:"LogoWidget",inheritAttrs:!1,__name:"index",props:{icon:{default:xe},text:{default:"VTJ"},link:{}},setup(i){const t=i,n=()=>{t.link&&(location.href=t.link)};return(o,r)=>(e.openBlock(),e.createElementBlock("div",{class:"v-logo-widget",onClick:n},[t.icon?(e.openBlock(),e.createElementBlock("img",{key:0,title:t.text,class:"v-logo-widget__icon",src:t.icon},null,8,Ke)):(e.openBlock(),e.createElementBlock("span",Ze,e.toDisplayString(t.text),1))]))}}),Ye={class:"v-empty-widget"},et=e.defineComponent({name:"EmptyWidget",__name:"index",setup(i){return(t,n)=>(e.openBlock(),e.createElementBlock("div",Ye,"EmptyWidget"))}});function Ee(){const i=O(),t=e.computed(()=>i.project.value?.dependencies??[]);return{engine:i,dependencies:t}}function Y(i,t){const n=e.computed(()=>he.getWidgets(e.unref(i),e.unref(t)).filter(r=>!r.invisible)),o=e.ref();return{widgets:n,widgetsRef:o}}function Se(){const i=O();return{span:e.computed(()=>{const r=i.skeleton?.skeletonRef.leftWidth||400,l=Math.min(Math.floor((r-50)/120),24);return Math.floor(24/l)}),engine:i}}function tt(){const i=O(),t=e.computed(()=>i.project.value?.blocks??[]);return{engine:i,blocks:t}}const nt=(i=[])=>i.map(t=>t.name);function ot(){const i=O(),{components:t,groups:n,componentMap:o}=i.assets,r=e.reactive({}),l=e.computed(()=>{const p={};return n.value&&n.value.forEach(v=>{p[v.name]=v}),p}),s=e.computed(()=>n.value?n.value.map(p=>({label:`${p.label} (${p.count})`,name:p.name,disabled:!p.children?.length})):[]),a=e.ref(s.value[0]?.name),c=e.ref(""),d=e.computed(()=>l.value[a.value]);e.watchEffect(()=>{const p=s.value.reduce((v,f)=>(v[f.name]=nt(l.value[f.name].children),v),{});Object.assign(r,p)});const m=e.computed(()=>{const p=c.value.toLowerCase();return!p||!t?[]:t.filter(v=>v.name.toLowerCase().includes(p)||v.label?.toLowerCase().includes(p))});return{components:t,groups:n,componentMap:o,groupMap:l,tabs:s,model:r,currentTab:a,currentGroup:d,searchKey:c,searchResult:m}}function z(){const i=O(),t=e.computed(()=>i.current.value),n=e.computed(()=>i.context.value),o=e.computed(()=>i.isEmptyCurrent.value);return{engine:i,current:t,isEmpty:o,context:n}}function rt(i,t){const n=O();n.simulator.init(i,t);const o=e.computed(()=>n.simulator.designer.value),r=e.computed(()=>ce("hover",o.value?.hover.value)),l=e.computed(()=>ce("dropping",o.value?.dropping.value)),s=e.computed(()=>ce("selected",o.value?.selected.value));return e.watch(n.changed,()=>{o.value?.updateRect()}),{designer:o,dropping:l,hover:r,selected:s}}function lt(i,t=!0){const{top:n,height:o,width:r,left:l}=i||{};if(o>100&&r>200)return"inner";let s,a;return a=n>30?"top":"bottom",s=t||l<300&&r<300?"left":"right",[s,a].join("-")}function at(i){const{rect:t,type:n}=i,{left:o,width:r,top:l,height:s}=t,a={left:o,width:r,top:l,height:s};switch(n){case"left":a.left=0,a.width=0;break;case"right":a.left=a.left+a.width-4,a.width=0;break;case"bottom":a.top=a.top+a.height-4,a.height=0;break;case"top":a.height=0;break}return a}function ce(i,t){if(!t)return null;const{left:n,top:o,width:r,height:l}=i==="dropping"?at(t):t.rect,s={left:`${n}px`,top:`${o}px`,width:`${r}px`,height:`${l}px`,visibility:r||l?"visible":"hidden"};return{...t,style:s,position:lt(t.rect,i!=="selected")}}function K(){const i=O(),t=e.computed(()=>i.simulator.designer.value),n=e.computed(()=>t.value?.selected.value),o=e.computed(()=>w.isBlock(n.value?.model));return{engine:i,designer:t,selected:n,isSelectBlock:o}}function st(i,t){const n=e.ref(""),{selected:o,isSelectBlock:r}=K(),l=e.computed(()=>o.value?.model.id),s=e.computed(()=>{const c=e.toValue(i),d=e.toValue(t),m=[];if(!c)return m;const p=d?.__contextRefs[l.value||""],f=d===p||r.value?[]:Object.keys(p?.context||{}).filter(C=>!["context","ref"].includes(C)).map(C=>`this.context.${C}`);f.length&&m.push({title:"上下文",items:f});const u=c.inject.map(C=>`this.${C.name}`);u.length&&m.push({title:"注入",items:u});const h=c.props.map(C=>typeof C=="string"?`this.$props.${C}`:`this.$props.${C.name}`);h.length&&m.push({title:"属性",items:h});const g=Object.keys(c.state).map(C=>`this.state.${C}`);g.length&&m.push({title:"状态",items:g});const _=Object.keys(c.computed).map(C=>`this.${C}.value`);_.length&&m.push({title:"计算属性",items:_});const y=Object.keys(c.methods).map(C=>`this.${C}`);y.length&&m.push({title:"方法",items:y});const V=Object.keys(c.dataSources).map(C=>`this.${C}`);V.length&&m.push({title:"数据源",items:V});const N=Object.keys(d?.$refs||{}).map(C=>`this.$refs.${C}`);return N.length&&m.push({title:"refs",items:N}),m}),a=e.computed(()=>{if(!n.value)return s.value;const c=n.value.toLowerCase(),d=[];return s.value.forEach(m=>{const p=m.items.filter(v=>v.toLowerCase().includes(c));p.length&&d.push({title:m.title,items:p})}),d});return{keyword:n,options:s,searchResult:a}}const le=[{name:"StringSetter",label:"文本"},{name:"ExpressionSetter",label:"表达式"}];function it(i){const t=O(),n=e.computed(()=>{const p=i.value?.model||null;return w.isBlock(p)?null:p}),o=e.ref();e.watch(n,async p=>{p?.from?o.value=await t.assets.getBlockMaterial(p.from)||void 0:o.value=void 0},{immediate:!0});const r=e.computed(()=>n.value?[{name:"key",setters:le,value:n.value.getPropValue("key")},{name:"ref",setters:le,value:n.value.getPropValue("ref")},{name:"class",label:"class",setters:le,value:n.value.getPropValue("class")},{name:"children",label:"文本",title:"如设置组件文本,将清空子组件",setters:le,value:Array.isArray(n.value.children)?"":n.value.children}]:[]),l=e.computed(()=>{if(!n.value)return[];const p=o.value||t.assets.componentMap.get(n.value.name);return p?(p.props||[]).map(f=>({...f,value:n.value?.getPropValue(f.name)??f.defaultValue})):[]}),s=p=>r.value.some(v=>v.name===p)||l.value.some(v=>v.name===p)||p==="style",a=e.computed(()=>n.value?Object.keys(n.value.props).filter(p=>!s(p)).map(p=>({name:p,setters:"InputSetter",value:n.value?.getPropValue(p)})):[]);return{commonProps:r,componentProps:l,customProps:a,node:n,change:(p,v)=>{n.value&&(p==="children"?n.value.setChildren(v):n.value.setProp(p,v))},addCustom:p=>{p&&n.value?.setProp(p,"")},removeCustom:p=>{n.value?.removeProp(p)},isExist:s}}function $(i,t="提示"){return b.ElNotification.warning({title:t,message:i})}async function ee(i){return await b.ElMessageBox.confirm(i,"提示",{type:"warning"}).catch(()=>!1)}function W(i,t="success"){return b.ElMessage({message:i,type:t})}function L(i,t,n=!1){let o=!0;try{i.type==="JSExpression"?D.parseExpression(i,t,n,!0):D.parseFunction(i,t,n,!0)}catch(r){o=!1,b.ElNotification.error({title:"代码错误",message:r.message})}return o}function Ne(){const i=O(),t=e.computed(()=>i.simulator.designer.value),n=e.computed(()=>i.current.value?i.history.value:null),o=e.computed(()=>n.value?.items.length||0),r=()=>{t.value?.cleanHelper(),n.value?.forward()},l=()=>{n.value?.backward(),t.value?.cleanHelper()},s=d=>{t.value?.cleanHelper(),n.value?.load(d),W("已载入历史记录","success")},a=e.computed(()=>o.value<=1?!0:(n.value?.index||-1)<=0),c=e.computed(()=>o.value<=1?!0:(n.value?.index||-1)>=o.value-1);return{engine:i,history:n,total:o,forward:r,backward:l,load:s,forwardDisabled:a,backwardDisabled:c}}function se(){const i=O(),t=e.computed(()=>i.project.value);return{engine:i,project:t}}function ct(i){const t=O(),n=e.computed(()=>{const a=i.value?.model||null;return w.isBlock(a)?null:a}),o=e.ref();e.watch(n,async a=>{a?.from?o.value=await t.assets.getBlockMaterial(a.from)||void 0:o.value=void 0});const r=e.computed(()=>{if(w.isBlock(n.value))return[];const a=n.value?.events||{};return ye.map(c=>({name:c,event:a[c]}))}),l=e.computed(()=>{if(w.isBlock(n.value))return[];const a=n.value?.events||{};return we.map(c=>({name:c,event:a[c]}))}),s=e.computed(()=>{if(!n.value||w.isBlock(n.value))return[];const a=n.value.events||{};return(o.value?.events||t.assets.componentMap.get(n.value.name)?.events||[]).map(d=>{const m=typeof d=="string"?d:d.name;return{name:m,event:a[m]}})});return{mouseEventList:r,keyboardEventList:l,componentEventList:s}}const be=(i,t)=>new w.DirectiveModel({name:i,value:void 0,iterator:t}),ut=(i="modelValue")=>new w.DirectiveModel({name:"vModel",value:void 0,arg:i});function dt(i){if(!i)return[];const{props:t=[],events:n=[]}=i;if(t.length&&n.length){const o=n.filter(r=>(typeof r=="string"?r:r.name).startsWith("update:")).map(r=>r=typeof r=="string"?r:r.name);return o.length?t.filter(r=>o.some(l=>l.includes(r.name))):[]}return[]}function mt(i){const t=O(),n=e.computed(()=>{const u=i.value?.model||null;return w.isBlock(u)?null:u}),o=u=>e.computed(()=>n.value&&(n.value.directives||[]).find(h=>h.name===u)||be(u)),r=()=>e.computed(()=>{if(!n.value)return[];const u=t.assets.componentMap.get(n.value.name||"");return(u?dt(u):[]).map(g=>(n.value?.directives||[]).find(_=>_.name==="vModel"&&_.arg==g.name)||ut(g.name))}),l=o("vIf"),s=o("vShow"),a=o("vBind"),c=o("vFor"),d=r(),m={vIf:l,vShow:s,vBind:a,vFor:c};return{engine:t,node:n,vIf:l,vShow:s,vBind:a,vFor:c,vModels:d,onValueChange:(u,h)=>{const g=m[u];n.value&&(h?(g.value.value=h,n.value.setDirective(g.value)):(g.value.value=void 0,n.value.removeDirective(g.value)))},onForChange:(u,h)=>{if(n.value){if(u==="value"){h?(c.value.value=h,n.value.setDirective(c.value)):n.value.removeDirective(c.value);return}(u==="item"||u==="index")&&(c.value.iterator={...c.value.iterator,[u]:h||void 0},n.value.setDirective(c.value))}},onModelChange:(u,h)=>{if(!n.value)return;const g=parseInt(u),_=d.value[g];_&&(h?(_.value=h,n.value.setDirective(_)):(_.value=void 0,n.value.removeDirective(_)))}}}function pt(){const{engine:i,project:t}=se(),n=e.computed(()=>t.value?.apis||[]);return{engine:i,project:t,apis:n}}const ft={class:"v-switcher-widget"},vt={key:1},gt=e.defineComponent({name:"SwitcherWidget",inheritAttrs:!1,__name:"index",emits:["click"],setup(i,{emit:t}){const n=t,{engine:o}=z(),r=e.computed(()=>o.project.value?.name),l=e.computed(()=>o.project.value?.currentFile?.title),s=()=>{n("click",o.project.value)};return(a,c)=>(e.openBlock(),e.createElementBlock("div",ft,[e.createVNode(e.unref(b.ElButton),{size:"small",round:"",onClick:s},{default:e.withCtx(()=>[e.createVNode(e.unref(B.VtjIconBack),{class:"v-switcher-widget__back"}),e.createElementVNode("span",null,e.toDisplayString(r.value),1),l.value?(e.openBlock(),e.createBlock(e.unref(b.ElDivider),{key:0,direction:"vertical"})):e.createCommentVNode("",!0),l.value?(e.openBlock(),e.createElementBlock("span",vt,e.toDisplayString(l.value),1)):e.createCommentVNode("",!0)]),_:1})]))}}),ht={class:"v-toolbar-widget"},kt=e.defineComponent({name:"ToolbarWidget",inheritAttrs:!1,__name:"index",props:{preview:{type:Boolean}},setup(i,{expose:t}){const n=i,{forward:o,backward:r,forwardDisabled:l,backwardDisabled:s}=Ne(),a=e.ref("pc");return t({mode:a}),(c,d)=>(e.openBlock(),e.createElementBlock("div",ht,[e.createVNode(e.unref(b.ElRadioGroup),{size:"small",modelValue:a.value,"onUpdate:modelValue":d[0]||(d[0]=m=>a.value=m)},{default:e.withCtx(()=>[e.createVNode(e.unref(b.ElRadioButton),{label:"pc"},{default:e.withCtx(()=>[e.createVNode(e.unref(B.VtjIconPc))]),_:1}),e.createVNode(e.unref(b.ElRadioButton),{label:"mobile"},{default:e.withCtx(()=>[e.createVNode(e.unref(B.VtjIconPhone))]),_:1}),e.createVNode(e.unref(b.ElRadioButton),{label:"pad"},{default:e.withCtx(()=>[e.createVNode(e.unref(B.VtjIconPad))]),_:1})]),_:1},8,["modelValue"]),e.createCommentVNode("",!0),e.createVNode(e.unref(b.ElButtonGroup),null,{default:e.withCtx(()=>[e.createVNode(e.unref(b.ElButton),{type:"default",size:"small",onClick:e.unref(r),disabled:e.unref(s)||!!n.preview},{default:e.withCtx(()=>[e.createVNode(e.unref(B.VtjIconUndo))]),_:1},8,["onClick","disabled"]),e.createVNode(e.unref(b.ElButton),{type:"default",size:"small",onClick:e.unref(o),disabled:e.unref(l)||!!n.preview},{default:e.withCtx(()=>[e.createVNode(e.unref(B.VtjIconRedo))]),_:1},8,["onClick","disabled"])]),_:1})]))}}),bt={class:"v-actions-widget"},_t=e.createElementVNode("span",null,"发布",-1),yt=e.defineComponent({name:"ActionsWidget",inheritAttrs:!1,__name:"index",props:{coder:{type:Boolean,default:!0}},setup(i){const{engine:t,designer:n}=K(),o=e.ref(!1),r=()=>{t.current.value?(o.value?t.skeleton?.getWidget("Previewer")?.widgetRef.refresh():(n.value?.setSelected(null),t.simulator.refresh()),W("刷新完成","success")):W("请先打开文件","warning")},l=async()=>{t.current.value?(o.value&&(t.skeleton?.closePreview(),o.value=!1,await I.delay(1e3)),n.value?.setSelected(t.current.value)):W("请先打开文件","warning")},s=()=>{if(t.project.value)if(t.current.value){if(o.value){t.skeleton?.closePreview(),o.value=!1;return}t.skeleton?.openPreview(""),o.value=!0}else W("请先打开文件","warning")},a=()=>{const d=t.project.value;d&&(d.currentFile?d.publish(d.currentFile):W("请先打开文件","warning"))},c=d=>{const m=t.project.value;m&&(d==="current"?a():m.publish())};return(d,m)=>(e.openBlock(),e.createElementBlock("div",bt,[e.createVNode(e.unref(b.ElBadge),{value:0,max:99,hidden:!0},{default:e.withCtx(()=>[e.createVNode(e.unref(k.XAction),{mode:"icon",icon:e.unref(B.VtjIconBug),background:"hover"},null,8,["icon"])]),_:1}),e.createVNode(e.unref(b.ElDivider),{direction:"vertical"}),e.createVNode(e.unref(b.ElButton),{onClick:s,type:o.value?"warning":"default",size:"small",title:"预览"},{default:e.withCtx(()=>[e.createVNode(e.unref(B.VtjIconPreview))]),_:1},8,["type"]),e.createVNode(e.unref(b.ElButton),{onClick:r,type:"default",size:"small",title:"刷新"},{default:e.withCtx(()=>[e.createVNode(e.unref(B.VtjIconRefresh))]),_:1}),e.createVNode(e.unref(b.ElButton),{type:"default",size:"small",title:"页面设置",onClick:l},{default:e.withCtx(()=>[e.createVNode(e.unref(B.VtjIconSetting))]),_:1}),e.createVNode(e.unref(b.ElDivider),{direction:"vertical"}),e.createVNode(e.unref(b.ElDropdown),{"split-button":"",type:"primary",size:"small",onClick:a,onCommand:c},{dropdown:e.withCtx(()=>[e.createVNode(e.unref(b.ElDropdownMenu),null,{default:e.withCtx(()=>[e.createVNode(e.unref(b.ElDropdownItem),{command:"current"},{default:e.withCtx(()=>[e.createTextVNode("发布页面")]),_:1}),e.createVNode(e.unref(b.ElDropdownItem),{command:"project"},{default:e.withCtx(()=>[e.createTextVNode("整站发布")]),_:1})]),_:1})]),default:e.withCtx(()=>[_t]),_:1})]))}}),wt={class:"v-icon-setter"},Ct={class:"v-icon-setter__content"},Vt={class:"v-icon-setter__list"},De=e.defineComponent({name:"IconSetter",__name:"icon",props:{modelValue:{default:""},size:{default:"small"}},emits:["change","update:modelValue"],setup(i,{emit:t}){const n=i,o=t,r=e.ref(!1),l=e.ref(n.modelValue),s=e.ref(""),a=e.computed(()=>B.icons[n.modelValue]||n.modelValue),c=e.computed(()=>{const f=Object.entries(B.icons);return s.value?f.filter(u=>u[0].toLowerCase().includes(s.value)):f}),d=f=>{l.value=f},m=()=>{o("change",l.value),o("update:modelValue",l.value),r.value=!1},p=()=>{l.value="",o("change",""),o("update:modelValue",""),r.value=!1},v=()=>{r.value=!0};return(f,u)=>(e.openBlock(),e.createElementBlock("div",wt,[e.createVNode(e.unref(b.ElInput),{size:n.size,readonly:"",placeholder:"请选择图标","model-value":n.modelValue,"suffix-icon":e.unref(B.ArrowDown),onFocus:v},{prepend:e.withCtx(()=>[e.createVNode(e.unref(k.XIcon),{icon:a.value},null,8,["icon"])]),_:1},8,["size","model-value","suffix-icon"]),r.value?(e.openBlock(),e.createBlock(e.unref(k.XDialog),{key:0,title:"图标选择器",width:"1000px",height:"600px",cancel:"",submit:"",clear:"",modelValue:r.value,"onUpdate:modelValue":u[1]||(u[1]=h=>r.value=h),onSubmit:m},{extra:e.withCtx(()=>[e.createVNode(e.unref(b.ElButton),{size:"default",type:"warning",onClick:p},{default:e.withCtx(()=>[e.createTextVNode(" 清除绑定 ")]),_:1})]),default:e.withCtx(()=>[e.createElementVNode("div",Ct,[e.createVNode(e.unref(b.ElInput),{size:n.size,"prefix-icon":e.unref(B.Search),clearable:"",modelValue:s.value,"onUpdate:modelValue":u[0]||(u[0]=h=>s.value=h),placeholder:"请输入查询关键字"},null,8,["size","prefix-icon","modelValue"]),e.createElementVNode("div",Vt,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,h=>(e.openBlock(),e.createBlock(e.unref(k.XIcon),{icon:h[1],onClick:g=>d(h[0]),class:e.normalizeClass({"is-active":l.value===h[0]})},null,8,["icon","onClick","class"]))),256)),c.value.length===0?(e.openBlock(),e.createBlock(e.unref(b.ElEmpty),{key:0})):e.createCommentVNode("",!0)])])]),_:1},8,["modelValue"])):e.createCommentVNode("",!0)]))}}),Bt=e.defineComponent({name:"PageForm",__name:"form",props:{item:{},parentId:{}},setup(i){const t=i,{project:n}=se(),o=e.computed(()=>t.item?"编辑页面":"新增页面"),r=()=>({dir:!1,name:"",title:"",icon:"",mask:!0,hidden:!1,raw:!1}),l=e.ref(t.item||r()),s=[{label:"页面",value:!1},{label:"目录",value:!0}],a=d=>{l.value&&(l.value.name=I.upperFirstCamelCase(d))},c=async d=>n.value?.existPageName(d.name,[d.id])?($("页面名称已存在,请更换"),!1):(t.item?n.value?.updatePage(d):n.value?.createPage(d,t.parentId),!0);return(d,m)=>(e.openBlock(),e.createBlock(e.unref(k.XDialogForm),{title:o.value,width:"800px",height:"500px","form-props":{tooltipMessage:!1},model:l.value,"submit-method":c},{default:e.withCtx(()=>[e.createVNode(e.unref(k.XField),{name:"dir",label:"类型",editor:"radio",options:s,props:{button:!0,size:"small"},disabled:!!t.item,required:""},null,8,["disabled"]),e.createVNode(e.unref(k.XField),{name:"name",label:"名称",required:"",onChange:a,rules:{pattern:e.unref(H),message:"名称格式不正确"}},null,8,["rules"]),e.createVNode(e.unref(k.XField),{name:"title",label:"标题",required:""}),e.createVNode(e.unref(k.XField),{name:"icon",label:"菜单图标",editor:"none"},{editor:e.withCtx(()=>[e.createVNode(De,{modelValue:l.value.icon,"onUpdate:modelValue":m[0]||(m[0]=p=>l.value.icon=p),size:"default"},null,8,["modelValue"])]),_:1}),e.createVNode(e.unref(k.XField),{visible:{dir:!1},name:"mask",label:"包含母版",editor:"switch"}),e.createVNode(e.unref(k.XField),{name:"hidden",label:"隐藏菜单",editor:"switch"}),e.createVNode(e.unref(k.XField),{visible:{dir:!1},disabled:!!t.item,inline:"",name:"raw",label:"源码模式",editor:"switch",tip:"页面是非低代码开发,不能在线编辑"},null,8,["disabled"])]),_:1},8,["title","model"]))}}),pe=e.defineComponent({name:"VIcon",__name:"Icon",props:{icon:{},label:{},active:{type:Boolean,default:!1},open:{type:Boolean,default:!1}},emits:["click"],setup(i,{emit:t}){const n=i,o=t,r=e.computed(()=>({"is-active":n.active,"is-open":n.open})),l=()=>{o("click")};return(s,a)=>(e.openBlock(),e.createBlock(e.unref(b.ElTooltip),{effect:"dark",placement:"right",content:s.label,"show-after":600},{default:e.withCtx(()=>[e.createElementVNode("div",{class:e.normalizeClass(["v-apps-region__icon",r.value]),onClick:l},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(s.icon)))],2)]),_:1},8,["content"]))}}),A=e.defineComponent({name:"VPanel",__name:"panel",props:{title:{},subtitle:{},plus:{type:Boolean},back:{type:Boolean},remove:{type:Boolean},save:{type:Boolean},header:{type:Boolean,default:!0}},emits:["plus","back","remove","save"],setup(i,{emit:t}){const n=i,o=t,r=()=>{o("plus")},l=()=>{o("back")},s=()=>{o("remove")},a=()=>{o("save")},c=e.computed(()=>n.header?{content:n.title,subtitle:n.subtitle,icon:n.back?B.Back:void 0,onClickBack:n.back?l:void 0}:null);return(d,m)=>(e.openBlock(),e.createBlock(e.unref(k.XPanel),{class:"v-panel",border:!1,header:c.value,fit:""},e.createSlots({actions:e.withCtx(()=>[n.plus?(e.openBlock(),e.createBlock(e.unref(k.XAction),{key:0,size:d.$attrs.size,mode:"icon",icon:e.unref(B.VtjIconPlus),background:"hover",title:"新增",onClick:r},null,8,["size","icon"])):e.createCommentVNode("",!0),n.remove?(e.openBlock(),e.createBlock(e.unref(k.XAction),{key:1,size:d.$attrs.size,mode:"icon",icon:e.unref(B.Delete),background:"hover",title:"清除",onClick:s},null,8,["size","icon"])):e.createCommentVNode("",!0),n.save?(e.openBlock(),e.createBlock(e.unref(k.XAction),{key:2,size:d.$attrs.size,mode:"icon",icon:e.unref(B.VtjIconSave),background:"hover",title:"保存",onClick:a},null,8,["size","icon"])):e.createCommentVNode("",!0),e.renderSlot(d.$slots,"actions")]),default:e.withCtx(()=>[e.renderSlot(d.$slots,"default")]),_:2},[d.$slots.footer?{name:"footer",fn:e.withCtx(()=>[e.renderSlot(d.$slots,"footer")]),key:"0"}:void 0]),1032,["header"]))}}),xt={class:"v-tabs__header"},Et={key:0,class:"v-tabs__actions"},oe=e.defineComponent({__name:"tabs",props:{items:{default:()=>[]},menus:{},modelValue:{},stretch:{type:Boolean},checkable:{type:Boolean}},emits:["update:modelValue","command","remove"],setup(i,{emit:t}){const n=i,o=t,r=e.ref((n.modelValue||n.items[0]?.name)??"");e.watch(r,()=>{o("update:modelValue",r.value)}),e.watch(()=>n.modelValue,a=>{r.value=a});const l=a=>{o("command",a)},s=a=>{o("remove",a)};return(a,c)=>(e.openBlock(),e.createBlock(e.unref(k.XPanel),{class:"v-tabs",border:!1,fit:"",radius:!1},{header:e.withCtx(()=>[e.createElementVNode("div",xt,[e.createVNode(e.unref(k.XTabs),{class:"v-tabs__tabs",items:n.items,type:"card",modelValue:r.value,"onUpdate:modelValue":c[0]||(c[0]=d=>r.value=d),onTabRemove:s,stretch:n.stretch},null,8,["items","modelValue","stretch"]),n.menus&&n.menus.length?(e.openBlock(),e.createElementBlock("div",Et,[n.menus&&n.menus.length?(e.openBlock(),e.createBlock(e.unref(k.XAction),{key:0,mode:"icon",size:"small",icon:e.unref(B.MoreFilled),background:"hover",dropdown:{size:"small",placement:"bottom-end"},menus:n.menus,onCommand:l},{item:e.withCtx(({item:d})=>[e.createElementVNode("span",null,[n.checkable?(e.openBlock(),e.createBlock(e.unref(B.VtjIconCheck),{key:0,class:e.normalizeClass({"v-tabs__checked":!0,"is-checked":d.checked})},null,8,["class"])):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(d.label),1)])]),_:1},8,["icon","menus"])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)])]),default:e.withCtx(()=>[e.renderSlot(a.$slots,"default")]),_:3}))}}),St={key:2,class:"v-item__index"},Nt={class:"v-item__content"},Dt={key:3,class:"v-item__subtitle"},M=e.defineComponent({name:"VItem",__name:"item",props:{icon:{},index:{},tag:{},tagType:{},title:{},subtitle:{},actions:{default:()=>[]},background:{type:Boolean},border:{type:Boolean},switch:{type:Boolean},modelValue:{},active:{type:Boolean},hover:{type:Boolean},small:{type:Boolean}},emits:["click","action","update:modelValue","switch"],setup(i,{emit:t}){const n={add:{label:"创建",icon:B.VtjIconPlus},copy:{label:"复制",icon:B.VtjIconCopy},edit:{label:"编辑",icon:B.VtjIconEdit},remove:{label:"删除",icon:B.VtjIconRemove},lock:{label:"锁定",icon:B.VtjIconLock},unlock:{label:"解锁",icon:B.VtjIconUnlock},invisible:{label:"隐藏",icon:B.VtjIconInvisible},visible:{label:"显示",icon:B.VtjIconVisible},home:{label:"主页",icon:B.VtjIconHome}},o=i,r=t,l=e.ref(!!o.modelValue),s=e.computed(()=>o.actions.map(m=>{const p=n[m];return{name:m,...p}})),a=e.computed(()=>({"is-background":o.background,"is-border":o.border,"is-active":o.active,"is-hover":o.hover,"is-small":o.small})),c=()=>{r("click",o.modelValue)},d=async m=>{m==="remove"?await b.ElMessageBox.confirm("确定删除吗?","提示",{type:"warning"}).catch(()=>!1)&&r("action",{name:m,modelValue:o.modelValue}):r("action",{name:m,modelValue:o.modelValue})};return e.watch(l,m=>{r("update:modelValue",m),r("switch",m)}),e.watch(()=>o.modelValue,m=>{l.value=!!m}),(m,p)=>(e.openBlock(),e.createBlock(e.unref(k.XContainer),{class:e.normalizeClass(["v-item",a.value]),justify:"space-between",align:"center",onClick:c},{default:e.withCtx(()=>[e.createVNode(e.unref(k.XContainer),{class:"v-item__title",align:"center"},{default:e.withCtx(()=>[e.renderSlot(m.$slots,"default",{},()=>[m.icon?(e.openBlock(),e.createBlock(e.unref(k.XIcon),{key:0,icon:m.icon},null,8,["icon"])):e.createCommentVNode("",!0),o.tag?(e.openBlock(),e.createBlock(e.unref(b.ElTag),{key:1,class:"v-item__tag",size:"small",type:o.tagType},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(o.tag),1)]),_:1},8,["type"])):e.createCommentVNode("",!0),m.index!==void 0?(e.openBlock(),e.createElementBlock("span",St," # "+e.toDisplayString(m.index),1)):e.createCommentVNode("",!0),e.createElementVNode("span",Nt,e.toDisplayString(m.title),1),m.subtitle?(e.openBlock(),e.createElementBlock("span",Dt,e.toDisplayString(m.subtitle),1)):e.createCommentVNode("",!0)])]),_:3}),e.createVNode(e.unref(k.XContainer),{class:"v-item__actions",onClick:p[1]||(p[1]=e.withModifiers(()=>{},["stop"]))},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.value,v=>(e.openBlock(),e.createBlock(e.unref(k.XAction),{name:v.name,title:v.label,mode:"icon",size:"small",background:"none",type:"info",icon:v.icon,onClick:f=>d(v.name)},null,8,["name","title","icon","onClick"]))),256)),o.switch?(e.openBlock(),e.createBlock(e.unref(b.ElSwitch),{key:0,modelValue:l.value,"onUpdate:modelValue":p[0]||(p[0]=v=>l.value=v),class:"v-item__switch",size:"small"},null,8,["modelValue"])):e.createCommentVNode("",!0),e.renderSlot(m.$slots,"status")]),_:3})]),_:3},8,["class"]))}}),jt=["draggable"],At={class:"v-box__name"},Ft={class:"v-box__label"},ae=e.defineComponent({name:"VBox",__name:"box",props:{name:{},title:{},editable:{type:Boolean},active:{type:Boolean},draggable:{type:Boolean}},emits:["edit","remove","dragstart","dragend"],setup(i,{emit:t}){const n=i,o=t,r=()=>{o("edit")},l=async()=>{await b.ElMessageBox.confirm("确认删除?","提示",{type:"warning"}).catch(()=>!1)&&o("remove")},s=e.computed(()=>({"is-active":n.active,"is-draggable":n.draggable})),a=()=>{o("dragstart",n)},c=()=>{o("dragend",n)};return(d,m)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["v-box",s.value]),draggable:d.draggable,onDragstart:a,onDragend:c},[e.createVNode(e.unref(k.XContainer),{direction:"column",justify:"center",align:"center"},{default:e.withCtx(()=>[e.createElementVNode("span",At,e.toDisplayString(n.name),1),e.createElementVNode("span",Ft,e.toDisplayString(n.title),1)]),_:1}),n.editable?(e.openBlock(),e.createBlock(e.unref(k.XContainer),{key:0,class:"v-box__footer",justify:"flex-end",align:"center"},{default:e.withCtx(()=>[e.createVNode(e.unref(k.XIcon),{icon:e.unref(B.VtjIconEdit),onClick:r},null,8,["icon"]),e.createVNode(e.unref(k.XIcon),{icon:e.unref(B.VtjIconRemove),onClick:l},null,8,["icon"])]),_:1})):e.createCommentVNode("",!0)],42,jt))}}),It={class:"v-context-viewer"},je=e.defineComponent({__name:"viewer",props:{context:{}},emits:["pick","copy"],setup(i,{emit:t}){const n=i,o=t,r=["$provider","$apis","$components","context"],l=m=>{const p=m.value,v=I.toRawType(p);return v==="Object"||v==="Module"?Object.keys(p||{}).length===0:v==="Array"?p.length===0:!0},s=(m,p="this")=>typeof m=="object"?Array.isArray(m)?m.map((v,f)=>{const u=`[${f}]`;return{label:u,value:v,type:I.toRawType(v),path:`${p}${u}`}}):Object.entries(m).map(([v,f])=>({label:v,value:f,type:I.toRawType(f),path:`${p}.${v}`})).filter(v=>!v.label.startsWith("__")&&!r.includes(v.label)):[],a=(m,p)=>{if(m.level===0)p(s(n.context));else{const v=e.toRaw(m.data.value);p(s(v,m.data.path))}},c=m=>{o("copy",m.path)},d=m=>{o("pick",m.path)};return(m,p)=>(e.openBlock(),e.createElementBlock("div",It,[m.context?(e.openBlock(),e.createBlock(e.unref(b.ElTree),{key:0,lazy:"",load:a,"expand-on-click-node":!1,props:{isLeaf:l}},{default:e.withCtx(({data:v})=>[e.createVNode(M,{title:v.label,clickable:"",onClick:f=>d(v),background:"",actions:["copy"],onAction:f=>c(v),grow:"",small:""},null,8,["title","onClick","onAction"])]),_:1},8,["props"])):e.createCommentVNode("",!0)]))}}),ie=e.defineComponent({__name:"binder",props:{title:{},context:{},block:{},model:{},rules:{},modelValue:{type:Boolean},submitMethod:{type:Function},unbindEnabled:{type:Boolean}},emits:["unbind","submit","cancel","pick","update:modelValue","close"],setup(i,{emit:t}){const n=i,o=t,{searchResult:r,keyword:l}=st(n.block,n.context),{copy:s}=ve.useClipboard({}),a=[{name:"normal",label:"常用"},{name:"viewer",label:"高级"}],c=e.ref("normal"),d=e.ref(),m=async _=>{o("submit",_),n.submitMethod?await n.submitMethod(_)&&p():p()},p=()=>{o("update:modelValue",!1),o("close")},v=()=>{o("unbind")},f=()=>{p()},u=async()=>{d.value?.submit()},h=_=>{o("pick",_)},g=_=>{s(_),b.ElMessage.success({message:"已经复制到粘贴板"})};return(_,y)=>(e.openBlock(),e.createBlock(e.unref(k.XDialog),{"model-value":n.modelValue,class:"v-binder",title:_.title,width:"1000px",height:"600px","body-padding":!1,maximizable:!1,minimizable:!1,onClose:p},{default:e.withCtx(()=>[e.createVNode(e.unref(k.XContainer),{fit:"",direction:"row",overflow:"hidden"},{default:e.withCtx(()=>[e.createVNode(e.unref(k.XContainer),{width:"30%",height:"100%"},{default:e.withCtx(()=>[e.createVNode(oe,{class:"v-binder__tabs",items:a,modelValue:c.value,"onUpdate:modelValue":y[1]||(y[1]=V=>c.value=V)},{default:e.withCtx(()=>[e.createVNode(e.unref(k.XContainer),{class:"v-binder__tab-content",fit:"",padding:"",flex:!1},{default:e.withCtx(()=>[e.withDirectives(e.createElementVNode("div",null,[e.createVNode(e.unref(b.ElInput),{modelValue:e.unref(l),"onUpdate:modelValue":y[0]||(y[0]=V=>e.isRef(l)?l.value=V:null),size:"small",clearable:"","prefix-icon":e.unref(B.Search),placeholder:"筛选可用项"},null,8,["modelValue","prefix-icon"]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(r),V=>(e.openBlock(),e.createElementBlock("div",null,[e.createVNode(e.unref(b.ElDivider),{"border-style":"dotted"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(V.title),1)]),_:2},1024),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(V.items,N=>(e.openBlock(),e.createBlock(M,{title:N,background:"",actions:["copy"],small:"",onClick:C=>h(N),onAction:C=>g(N)},null,8,["title","onClick","onAction"]))),256))]))),256)),e.unref(r).length?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(b.ElEmpty),{key:0}))],512),[[e.vShow,c.value==="normal"]]),e.withDirectives(e.createVNode(je,{context:n.context,onCopy:g,onPick:h},null,8,["context"]),[[e.vShow,c.value==="viewer"]])]),_:1})]),_:1},8,["modelValue"])]),_:1}),e.createVNode(e.unref(k.XPanel),{grow:"",header:null,border:!1},{footer:e.withCtx(()=>[e.createVNode(e.unref(k.XContainer),{justify:"space-between"},{default:e.withCtx(()=>[e.createVNode(e.unref(k.XContainer),null,{default:e.withCtx(()=>[_.unbindEnabled?(e.openBlock(),e.createBlock(e.unref(b.ElButton),{key:0,type:"warning",size:"default",onClick:v},{default:e.withCtx(()=>[e.createTextVNode(" 移除绑定 ")]),_:1})):e.createCommentVNode("",!0)]),_:1}),e.createVNode(e.unref(k.XContainer),null,{default:e.withCtx(()=>[e.createVNode(e.unref(b.ElButton),{type:"default",size:"default",onClick:f},{default:e.withCtx(()=>[e.createTextVNode(" 取消 ")]),_:1}),e.createVNode(e.unref(b.ElButton),{type:"primary",size:"default",onClick:u},{default:e.withCtx(()=>[e.createTextVNode(" 确定 ")]),_:1})]),_:1})]),_:1})]),default:e.withCtx(()=>[e.createVNode(e.unref(k.XForm),{ref_key:"formRef",ref:d,class:"v-binder__form",footer:!1,"label-position":"top","tooltip-message":!1,model:n.model,rules:n.rules,"submit-method":m},{default:e.withCtx(()=>[e.renderSlot(_.$slots,"default")]),_:3},8,["model","rules"])]),_:3})]),_:3})]),_:3},8,["model-value","title"]))}}),Pt={class:"v-slots-picker__sn"},Ae=e.defineComponent({__name:"slots",props:{slots:{default:()=>[]}},emits:["submit","update:modelValue"],setup(i,{emit:t}){const n=i,o=t,r=e.ref(),l=e.computed(()=>`${50*Math.ceil(n.slots.length/4)+180}px`),s=c=>{r.value=c},a=()=>{r.value?(o("submit",r.value),o("update:modelValue",!1)):$("请选择插槽")};return(c,d)=>(e.openBlock(),e.createBlock(e.unref(k.XDialog),e.mergeProps({class:"v-slots-picker",title:"选择插槽",width:"600px",height:l.value,submit:"",cancel:"",onSubmit:a},c.$attrs),{default:e.withCtx(()=>[e.createVNode(e.unref(b.ElAlert),{title:"该组件支持多个插槽,请选择放置到其中一个",type:"warning",closable:!1}),e.createVNode(e.unref(k.XContainer),{class:"v-slots-picker__content",justify:"space-around",alignContent:"flex-start",gap:"",wrap:"wrap"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.slots,(m,p)=>(e.openBlock(),e.createBlock(e.unref(k.XContainer),{class:e.normalizeClass(["v-slots-picker__item",{"is-active":m.name===r.value?.name}]),grow:"",flex:!1,onClick:v=>s(m)},{default:e.withCtx(()=>[e.createElementVNode("span",Pt,"#"+e.toDisplayString(p+1),1),e.createTextVNode(" "+e.toDisplayString(m.name),1)]),_:2},1032,["class","onClick"]))),256))]),_:1})]),_:1},16,["height"]))}}),ge=e.defineComponent({name:"Viewport",__name:"viewport",props:{mode:{default:"pc"},width:{},height:{}},setup(i){const t=i,n=e.computed(()=>[`is-${t.mode}`]),o=e.computed(()=>{if(t.mode==="pc")return 1;const l=t.mode==="mobile"?de:me,{width:s,height:a}=l,c=s>0?(t.width||0)/s:1,d=a>0?(t.height||0)/a:1;return Math.min(c,d)}),r=e.computed(()=>{if(t.mode==="pc")return{};const l=t.mode==="mobile"?de:me,{width:s,height:a}=l;return{width:`${s}px`,height:`${a}px`,left:"50%",top:"50%",transform:`translate(-50%, -50%) scale(${o.value})`}});return(l,s)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["v-viewport",n.value]),style:e.normalizeStyle(r.value)},[e.renderSlot(l.$slots,"default")],6))}}),Rt=e.defineComponent({name:"PagesWidget",__name:"index",setup(i){const{project:t,engine:n}=se(),o=e.computed(()=>t.value?.pages||[]),{current:r}=z(),l=e.ref(!1),s=e.ref(),a=e.ref(),c=()=>{a.value=void 0,s.value=void 0,l.value=!0},d=async f=>{const{name:u,modelValue:h}=f,{data:g,node:_}=h;if(u==="add"&&(s.value=void 0,a.value=g.id,l.value=!0),u==="edit"&&(s.value=I.cloneDeep(g),a.value=void 0,l.value=!0),u==="remove"){if(g.dir){const y=t.value?.getPage(g.id);if(y&&y.children?.length){$("请先删除子页面");return}}t.value?.removePage(g.id)}if(u==="copy"){const y=_.parent?.data.id;t.value?.clonePage(g,y)}u==="home"&&(t.value?.setHomepage(g.id),W("设置主页成功","success"))},m=async f=>{f.raw&&W("这是源码模式页面,不能低代码设计","warning"),f.dir||f.raw?n.project.value?.deactivate():n.project.value?.active(f)},p=(f,u,h)=>h==="inner"?!!u.data.dir:!0,v=()=>{t.value?.update({pages:e.toValue(o)})};return(f,u)=>(e.openBlock(),e.createBlock(e.unref(A),{class:"v-pages-widget",title:"页面管理",plus:"",subtitle:"(共 0 条)",onPlus:c},{default:e.withCtx(()=>[e.createVNode(e.unref(b.ElTree),{data:o.value,"node-key":"id","default-expand-all":"",draggable:"","allow-drop":p,onNodeDrop:v},{default:e.withCtx(({data:h,node:g})=>[e.createVNode(e.unref(M),{class:"v-pages-widget__item",icon:e.unref(B.icons)[h.icon],title:h.title,subtitle:h.name,"model-value":{data:h,node:g},actions:h.dir?["add","edit","remove"]:h.raw?["home","edit","remove"]:["home","copy","edit","remove"],onAction:d,onClick:_=>m(h),active:e.unref(r)?.id===h.id,tag:e.unref(t)?.homepage===h.id?"主页":void 0,"tag-type":"success",grow:"",small:"",background:"",hover:""},null,8,["icon","title","subtitle","model-value","actions","onClick","active","tag"])]),_:1},8,["data"]),l.value?(e.openBlock(),e.createBlock(Bt,{key:0,modelValue:l.value,"onUpdate:modelValue":u[0]||(u[0]=h=>l.value=h),item:s.value,"parent-id":a.value},null,8,["modelValue","item","parent-id"])):e.createCommentVNode("",!0)]),_:1}))}}),Tt=e.defineComponent({name:"BlocksWidget",__name:"index",setup(i){const{span:t}=Se(),{blocks:n,engine:o}=tt(),r=e.ref(void 0),{current:l}=z(),s=e.ref(!1),a=e.computed(()=>r.value?.id?"编辑":"新增"),c=e.computed(()=>`(共 ${n.value.length} 个)`),d=()=>({name:"",title:"",type:"block"}),m=async y=>{const V=y,N=o.project.value;if(!N)return!1;if(y.id)if(!N.existBlockName(V.name,[V.id]))N.updateBlock(V);else return $(`名称【${V.name}】已经存在,请更换名称`),!1;else if(!N.existBlockName(V.name))N.createBlock(V);else return $(`名称【${V.name}】已经存在,请更换名称`),!1;return!0},p=()=>{r.value=d(),s.value=!0},v=y=>{r.value=I.cloneDeep(y),s.value=!0},f=y=>{o.project.value?.removeBlock(y.id)},u=y=>{r.value&&(r.value.name=I.upperFirstCamelCase(y))},h=async y=>{o.project.value?.active(y)},g=async y=>{const V={type:"Schema",id:y.id},N=await o.assets.getBlockMaterial(V),C=o.skeleton?.getWidget("Designer")?.widgetRef?.designer;C&&N&&C.setDragging(N)},_=()=>{const y=o.skeleton?.getWidget("Designer")?.widgetRef?.designer;y&&y.setDragging(null)};return(y,V)=>(e.openBlock(),e.createBlock(e.unref(A),{class:"v-blocks-widget",title:"区块管理",subtitle:c.value,plus:"",onPlus:p},{default:e.withCtx(()=>[e.createVNode(e.unref(b.ElRow),{wrap:"wrap",gutter:5},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(n),N=>(e.openBlock(),e.createBlock(e.unref(b.ElCol),{key:N.id,span:e.unref(t)},{default:e.withCtx(()=>[e.createVNode(e.unref(ae),{name:N.name,title:N.title,active:e.unref(l)?.id===N.id,editable:"",onEdit:C=>v(N),onRemove:C=>f(N),onClick:C=>h(N),draggable:e.unref(l)?.id!==N.id,onDragstart:C=>g(N),onDragend:_},null,8,["name","title","active","onEdit","onRemove","onClick","draggable","onDragstart"])]),_:2},1032,["span"]))),128))]),_:1}),e.unref(n).length?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(b.ElEmpty),{key:0})),e.createVNode(e.unref(k.XDialogForm),{modelValue:s.value,"onUpdate:modelValue":V[0]||(V[0]=N=>s.value=N),title:a.value,model:r.value,width:"600px",height:"250px","form-props":{tooltipMessage:!1},"submit-method":m},{default:e.withCtx(()=>[e.createVNode(e.unref(k.XField),{name:"name",label:"名称",required:"",tip:"名称为英文驼峰格式",rules:{message:"名称格式错误",pattern:e.unref(H)},onChange:u},null,8,["rules"]),e.createVNode(e.unref(k.XField),{name:"title",label:"标题",required:""})]),_:1},8,["modelValue","title","model"])]),_:1},8,["subtitle"]))}}),$t={class:"v-components-widget__search"},Mt={key:0,class:"v-components-widget__result"},Lt={class:"v-components-widget__list"},zt=e.defineComponent({name:"ComponentsWidget",__name:"index",setup(i){const{span:t,engine:n}=Se(),{tabs:o,currentTab:r,currentGroup:l,model:s,searchKey:a,searchResult:c}=ot(),d=p=>{const v=n.skeleton?.getWidget("Designer")?.widgetRef?.designer;v&&v.setDragging(p)},m=()=>{const p=n.skeleton?.getWidget("Designer")?.widgetRef?.designer;p&&p.setDragging(null)};return(p,v)=>(e.openBlock(),e.createBlock(e.unref(A),{class:"v-components-widget",title:"组件库",body:{flex:!0,direction:"column"}},{default:e.withCtx(()=>[e.createElementVNode("div",$t,[e.createVNode(e.unref(b.ElInput),{modelValue:e.unref(a),"onUpdate:modelValue":v[0]||(v[0]=f=>e.isRef(a)?a.value=f:null),placeholder:"搜索组件",clearable:"",size:"small"},{prefix:e.withCtx(()=>[e.createVNode(e.unref(B.VtjIconSearch))]),_:1},8,["modelValue"])]),e.unref(a)?(e.openBlock(),e.createElementBlock("div",Mt,[e.createVNode(e.unref(b.ElRow),{wrap:"wrap",gutter:5},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(c),f=>(e.openBlock(),e.createBlock(e.unref(b.ElCol),{span:e.unref(t),key:f.name},{default:e.withCtx(()=>[e.createVNode(e.unref(ae),{name:f.name,title:f.label||f.name,draggable:"",onDragstart:u=>d(f),onDragend:m},null,8,["name","title","onDragstart"])]),_:2},1032,["span"]))),128))]),_:1}),e.unref(c).length?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(b.ElEmpty),{key:0}))])):(e.openBlock(),e.createBlock(e.unref(k.XTabs),{key:1,items:e.unref(o),modelValue:e.unref(r),"onUpdate:modelValue":v[2]||(v[2]=f=>e.isRef(r)?r.value=f:null)},{default:e.withCtx(()=>[e.createElementVNode("div",Lt,[e.unref(l)?(e.openBlock(),e.createBlock(e.unref(b.ElCollapse),{key:0,modelValue:e.unref(s)[e.unref(r)],"onUpdate:modelValue":v[1]||(v[1]=f=>e.unref(s)[e.unref(r)]=f)},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(l).children,f=>(e.openBlock(),e.createBlock(e.unref(b.ElCollapseItem),{key:f.name,name:f.name,title:`${f.label} (${f.count})`},{default:e.withCtx(()=>[f.components?(e.openBlock(),e.createBlock(e.unref(b.ElRow),{key:0,wrap:"wrap",gutter:5},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(f.components,u=>(e.openBlock(),e.createBlock(e.unref(b.ElCol),{span:e.unref(t),key:u.name},{default:e.withCtx(()=>[e.createVNode(e.unref(ae),{name:u.name,title:u.label||u.name,draggable:"",onDragstart:h=>d(u),onDragend:m},null,8,["name","title","onDragstart"])]),_:2},1032,["span"]))),128))]),_:2},1024)):e.createCommentVNode("",!0)]),_:2},1032,["name","title"]))),128))]),_:1},8,["modelValue"])):e.createCommentVNode("",!0)])]),_:1},8,["items","modelValue"]))]),_:1}))}}),Ot=e.defineComponent({name:"OutlineWidget",__name:"index",setup(i){const{engine:t,designer:n,selected:o}=K(),{current:r}=z(),l=e.ref([]),s=C=>{if(w.isBlock(C))return C.locked?["unlock"]:["lock"];const S=C.parent;return S&&(S.locked||S.invisible)?[]:r.value?.locked?[]:C.locked?["unlock"]:C.invisible?["visible"]:["lock","invisible","copy","remove"]},a=C=>{const S=[];return C.forEach(x=>{const R={id:x.id,label:x.name,type:x.id,model:x};Array.isArray(x.children)&&(R.children=a(x.children)),S.push(R)}),S},c=()=>{if(!r.value)return[];const{id:C,name:S,nodes:x}=r.value;return[{id:C,label:S,type:C,model:r.value,children:a(x)}]},d=async()=>{l.value=c(),o.value?.model&&(await e.nextTick(),n.value?.setSelected(o.value.model))},m=e.computed(()=>o.value?.model.id),p=C=>{const S=C.data;if(w.isBlock(S.model)||S.model.locked||S.model.name==="template")return!1;const x=t.assets.componentMap.get(S.model.name);return x?(n.value?.setDragging(x),!0):!1},v=async(C,S,x)=>{const R=S.data,Q={prev:"top",next:"bottom",inner:"inner"}[x];let j=!1;if(w.isBlock(R.model))j=x==="inner",n.value?.setDropping(j?R.model:null,"inner");else{const P=R.model;j=!!await n.value?.allowDrop(P,Q),n.value?.setDropping(j?P:null,"inner")}return j},f=C=>{const S=C?.model;!S||S.invisible||(n.value?.setSelected(S),n.value?.setHover(null))},u=async(C,S,x)=>{const R=C.data,U=S.data;if(w.isBlock(U.model)){n.value?.setDropping(null),n.value?.setDragging(null);return}const Q=U.model,j={before:"left",after:"right"}[x]||"inner";if(!await n.value?.allowDrop(Q,j)){n.value?.setDropping(null),d(),b.ElMessage.warning({message:`${R.model.name}不能放置到该位置`}),n.value?.setDragging(null);return}const E=await n.value?.getDropSlot(x==="inner"?Q:Q.parent);if(E!==null){const te=R.model;te.slot=E,r.value?.move(te,Q,j)}else d();n.value?.setDropping(null),n.value?.setDragging(null),t.simulator.refresh()},h=C=>{w.isBlock(C.model)?n.value?.setHover(C.model):(n.value?.setHover(C.model),C.model.invisible&&n.value?.setHover(null),C.model.name==="slot"&&n.value?.setHover(null))},g=()=>{n.value?.setHover(null)},_=C=>{const S=C.data;S.dragging=!0;const x=t.assets.componentMap.get(S.model.name);x&&n.value?.setDragging(x)},y=async C=>{const S=C.data;S.dragging=!1},V=(C,S)=>{C&&((C.id===S.id||!w.isBlock(C)&&S.isChild(C))&&n.value?.setSelected(null),n.value?.setHover(null))},N=C=>{const{name:S,modelValue:x}=C,R=o.value?.model;switch(S){case"lock":V(R,x),x.lock();break;case"unlock":V(R,x),x.unlock();break;case"invisible":V(R,x),x.setVisible(!1);break;case"visible":x.setVisible(!0);break;case"copy":const U=r.value?.cloneNode(x);U&&n.value?.setSelected(U);break;case"remove":V(R,x),r.value?.removeNode(x);break}};return e.watch(t.changed,d,{immediate:!0}),(C,S)=>(e.openBlock(),e.createBlock(e.unref(A),{class:"v-outline-widget",title:"大纲树"},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.unref(b.ElTree),{key:e.unref(t).changed.value,data:l.value,"node-key":"id","default-expand-all":"",draggable:"","empty-text":"请新建或打开文件","current-node-key":m.value,"highlight-current":!0,"expand-on-click-node":!1,"allow-drop":v,"allow-drag":p,onCurrentChange:f,onNodeDrop:u,onNodeDragStart:_,onNodeDragEnd:y},{default:e.withCtx(({data:x,node:R})=>[e.createVNode(e.unref(M),{class:e.normalizeClass(["v-outline-widget__item",{"is-locked":x.model.locked,"is-invisible":x.model.invisible,"is-dragging":x.dragging}]),active:!x.model.invisible&&R.isCurrent,grow:"",small:"",background:"",hover:"","model-value":x.model,icon:x.model.locked?e.unref(B.VtjIconLock):x.model.invisible?e.unref(B.VtjIconInvisible):void 0,title:x.label,subtitle:x.type,actions:s(x.model),onAction:N,onMouseenter:U=>h(x),onMouseleave:g},null,8,["class","active","model-value","icon","title","subtitle","actions","onMouseenter"])]),_:1},8,["data","current-node-key"]))]),_:1}))}}),Xt=e.defineComponent({name:"HistoryWidget",__name:"index",setup(i){const{history:t,load:n,total:o}=Ne(),r=e.computed(()=>`(共 ${o.value} 条)`),l=a=>{a.name==="remove"&&t.value?.remove(a.modelValue.id)},s=async()=>{await ee("确定要清空历史记录吗?")&&t.value?.clear()};return(a,c)=>(e.openBlock(),e.createBlock(e.unref(A),{class:"v-history-widget",title:"历史记录",subtitle:r.value,remove:!!e.unref(o),onRemove:s},{default:e.withCtx(()=>[e.unref(o)===0?(e.openBlock(),e.createBlock(e.unref(b.ElEmpty),{key:0,"image-size":50})):e.createCommentVNode("",!0),e.unref(t)?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(e.unref(t).items,(d,m)=>(e.openBlock(),e.createBlock(e.unref(M),{index:m+1,title:d.label,"model-value":d,active:m==e.unref(t).index,small:"",background:"",actions:["remove"],onAction:l,onClick:p=>e.unref(n)(d.id)},null,8,["index","title","model-value","active","onClick"]))),256)):e.createCommentVNode("",!0)]),_:1},8,["subtitle","remove"]))}}),T=e.defineAsyncComponent({loader:()=>Promise.resolve().then(()=>require("./Editor-ragV9vX2.cjs")),loadingComponent:e.defineComponent({render(){return e.h("div","正在拼命加载...")}}),errorComponent:e.defineComponent({render(){return e.h("div","组件加载失败!")}})}),Wt=e.defineComponent({name:"ApisWidget",__name:"index",setup(i){const t=e.ref(!1),n=e.ref(null),o=e.ref(!1),r=e.computed(()=>o.value?"编辑API":"新增API"),l=e.computed(()=>s.value?.apis||[]),{project:s}=se(),a=()=>({method:"get",name:"",label:"",url:"",settings:{loading:!0,failMessage:!0,validSuccess:!0,originResponse:!1,injectHeaders:!1,type:"form",headers:{type:"JSExpression",value:"({})"}}}),c=()=>{t.value=!0,o.value=!1,n.value=a()},d=Ce.map(g=>({label:g,value:g.toLowerCase()})),m={get:"success",post:"primary",put:"warning",delete:"danger",patch:"warning",jsonp:"info"},p=[{label:"表单",value:"form"},{label:"JSON",value:"json"},{label:"文件",value:"data"}],v=(g,_,y)=>{L({type:"JSExpression",value:_},window)?y():y(new Error("代码错误"))},f=g=>{g.name==="edit"&&u(g.modelValue),g.name==="remove"&&s.value?.removeApi(g.modelValue.name)},u=g=>{o.value=!0,n.value=I.cloneDeep(g),t.value=!0},h=async g=>s.value?.existApiName(g.name,o.value?[g.id]:[])?($(`API名称 [ ${g.name} ] 已存在`),!1):(s.value?.setApi(g),!0);return(g,_)=>(e.openBlock(),e.createBlock(e.unref(A),{class:"v-apis-widget",title:"API管理",plus:"",onPlus:c},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.value,y=>(e.openBlock(),e.createBlock(e.unref(M),{key:y.id,small:"",title:y.name,subtitle:y.label,"model-value":y,tag:y.method?.toUpperCase(),"tag-type":m[y.method||"get"],background:"",actions:["edit","remove"],onClick:V=>u(y),onAction:f},null,8,["title","subtitle","model-value","tag","tag-type","onClick"]))),128)),l.value.length===0?(e.openBlock(),e.createBlock(e.unref(b.ElEmpty),{key:0,"image-size":50})):e.createCommentVNode("",!0),e.createVNode(e.unref(k.XDialogForm),{modelValue:t.value,"onUpdate:modelValue":_[1]||(_[1]=y=>t.value=y),model:n.value,title:r.value,width:"1000px",height:"600px","form-props":{labelPosition:"top",tooltipMessage:!1,size:"default"},"submit-method":h},{default:e.withCtx(()=>[e.createVNode(e.unref(k.XContainer),{gap:"",fit:""},{default:e.withCtx(()=>[e.createVNode(e.unref(k.XContainer),{direction:"column",grow:"",width:"50%",shrink:""},{default:e.withCtx(()=>[e.createVNode(e.unref(k.XField),{name:"method",label:"请求类型",required:"",editor:"radio",options:e.unref(d),props:{button:!0}},null,8,["options"]),e.createVNode(e.unref(k.XField),{name:"name",label:"接口名称",required:"",rules:{pattern:e.unref(H),message:"名称格式不正确"}},null,8,["rules"]),e.createVNode(e.unref(k.XField),{name:"label",label:"备注说明",required:""}),e.createVNode(e.unref(k.XField),{name:"url",label:"接口URL",required:""})]),_:1}),e.createVNode(e.unref(k.XContainer),{direction:"column",grow:"",width:"50%",shrink:""},{default:e.withCtx(()=>[n.value.method!=="jsonp"?(e.openBlock(),e.createBlock(e.unref(A),{key:0,title:"请求配置",subtitle:n.value.method,border:""},{default:e.withCtx(()=>[e.createVNode(e.unref(k.XContainer),{justify:"space-around"},{default:e.withCtx(()=>[e.createVNode(e.unref(k.XField),{name:"settings.loading",size:"small",label:"加载提示",editor:"switch"}),e.createVNode(e.unref(k.XField),{size:"small",name:"settings.failMessage",label:"失败提示",editor:"switch"}),e.createVNode(e.unref(k.XField),{size:"small",name:"settings.validSuccess",label:"校验成功",editor:"switch"}),e.createVNode(e.unref(k.XField),{size:"small",name:"settings.originResponse",label:"原始响应",editor:"switch"}),e.createVNode(e.unref(k.XField),{size:"small",name:"settings.injectHeaders",label:"注入请求头",editor:"switch"})]),_:1}),e.createVNode(e.unref(k.XField),{size:"small",name:"settings.type",label:"发送数据类型",editor:"radio",options:p,props:{button:!0}}),e.createVNode(e.unref(k.XField),{size:"small",name:"settings.headers.value",label:"请求头配置",tip:"支持 JSExpression 或 JSFunction",rules:{validator:v}},{editor:e.withCtx(()=>[e.createVNode(e.unref(T),{modelValue:n.value.settings.headers.value,"onUpdate:modelValue":_[0]||(_[0]=y=>n.value.settings.headers.value=y),dark:"",height:"200px"},null,8,["modelValue"])]),_:1},8,["rules"])]),_:1},8,["subtitle"])):e.createCommentVNode("",!0),n.value.method==="jsonp"?(e.openBlock(),e.createBlock(e.unref(A),{key:1,title:"请求配置",subtitle:n.value.method,border:""},{default:e.withCtx(()=>[e.createVNode(e.unref(k.XField),{name:"jsonpOptions.jsonpCallback",size:"small",label:"jsonpCallback"}),e.createVNode(e.unref(k.XField),{name:"jsonpOptions.jsonpCallbackFunction",size:"small",label:"jsonpCallbackFunction"}),e.createVNode(e.unref(k.XField),{name:"jsonpOptions.timeout",size:"small",label:"timeout",editor:"number"}),e.createVNode(e.unref(k.XField),{name:"jsonpOptions.crossorigin",size:"small",label:"crossorigin",editor:"switch"})]),_:1},8,["subtitle"])):e.createCommentVNode("",!0)]),_:1})]),_:1})]),_:1},8,["modelValue","model","title"])]),_:1}))}}),Jt=e.defineComponent({name:"DepsWidget",__name:"index",setup(i){const{dependencies:t,engine:n}=Ee(),o=e.ref(!1),r=e.ref(!1),l=e.ref({}),s=e.computed(()=>r.value?"查看依赖":l.value?"编辑依赖":"新增依赖"),a=u=>u.required||u.official?[]:["edit","remove"],c=u=>u.official&&!u.required,d=async u=>(u.urls=u.urls.split(`
|
|
7
|
+
*/const _e="0.7.12",de={width:390,height:844},me={width:1180,height:820},H=/^[A-Za-z_$][\w_-]*$/,ye=["click","dblclick","mouseenter","mouseleave","mousedown","mouseup","mouseover","contextmenu"],we=["keydown","keyup","keypress"],Ce=["GET","POST","PUT","PATCH","DELETE","JSONP"],Ve=["stop","prevent","capture","self","once","passive"];var J=(i=>(i.Block="block",i.Node="node",i))(J||{}),Be=(i=>(i.Brand="Brand",i.Toolbar="Toolbar",i.Actions="Actions",i.Apps="Apps",i.Workspace="Workspace",i.Settings="Settings",i.Status="Status",i.Preview="Preview",i))(Be||{});const xe="data:image/png;base64,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",Ke=["title","src"],Ze={key:1},Qe=e.defineComponent({name:"LogoWidget",inheritAttrs:!1,__name:"index",props:{icon:{default:xe},text:{default:"VTJ"},link:{}},setup(i){const t=i,n=()=>{t.link&&(location.href=t.link)};return(o,r)=>(e.openBlock(),e.createElementBlock("div",{class:"v-logo-widget",onClick:n},[t.icon?(e.openBlock(),e.createElementBlock("img",{key:0,title:t.text,class:"v-logo-widget__icon",src:t.icon},null,8,Ke)):(e.openBlock(),e.createElementBlock("span",Ze,e.toDisplayString(t.text),1))]))}}),Ye={class:"v-empty-widget"},et=e.defineComponent({name:"EmptyWidget",__name:"index",setup(i){return(t,n)=>(e.openBlock(),e.createElementBlock("div",Ye,"EmptyWidget"))}});function Ee(){const i=O(),t=e.computed(()=>i.project.value?.dependencies??[]);return{engine:i,dependencies:t}}function Y(i,t){const n=e.computed(()=>he.getWidgets(e.unref(i),e.unref(t)).filter(r=>!r.invisible)),o=e.ref();return{widgets:n,widgetsRef:o}}function Se(){const i=O();return{span:e.computed(()=>{const r=i.skeleton?.skeletonRef.leftWidth||400,l=Math.min(Math.floor((r-50)/120),24);return Math.floor(24/l)}),engine:i}}function tt(){const i=O(),t=e.computed(()=>i.project.value?.blocks??[]);return{engine:i,blocks:t}}const nt=(i=[])=>i.map(t=>t.name);function ot(){const i=O(),{components:t,groups:n,componentMap:o}=i.assets,r=e.reactive({}),l=e.computed(()=>{const p={};return n.value&&n.value.forEach(v=>{p[v.name]=v}),p}),s=e.computed(()=>n.value?n.value.map(p=>({label:`${p.label} (${p.count})`,name:p.name,disabled:!p.children?.length})):[]),a=e.ref(s.value[0]?.name),c=e.ref(""),d=e.computed(()=>l.value[a.value]);e.watchEffect(()=>{const p=s.value.reduce((v,f)=>(v[f.name]=nt(l.value[f.name].children),v),{});Object.assign(r,p)});const m=e.computed(()=>{const p=c.value.toLowerCase();return!p||!t?[]:t.filter(v=>v.name.toLowerCase().includes(p)||v.label?.toLowerCase().includes(p))});return{components:t,groups:n,componentMap:o,groupMap:l,tabs:s,model:r,currentTab:a,currentGroup:d,searchKey:c,searchResult:m}}function z(){const i=O(),t=e.computed(()=>i.current.value),n=e.computed(()=>i.context.value),o=e.computed(()=>i.isEmptyCurrent.value);return{engine:i,current:t,isEmpty:o,context:n}}function rt(i,t){const n=O();n.simulator.init(i,t);const o=e.computed(()=>n.simulator.designer.value),r=e.computed(()=>ce("hover",o.value?.hover.value)),l=e.computed(()=>ce("dropping",o.value?.dropping.value)),s=e.computed(()=>ce("selected",o.value?.selected.value));return e.watch(n.changed,()=>{o.value?.updateRect()}),{designer:o,dropping:l,hover:r,selected:s}}function lt(i,t=!0){const{top:n,height:o,width:r,left:l}=i||{};if(o>100&&r>200)return"inner";let s,a;return a=n>30?"top":"bottom",s=t||l<300&&r<300?"left":"right",[s,a].join("-")}function at(i){const{rect:t,type:n}=i,{left:o,width:r,top:l,height:s}=t,a={left:o,width:r,top:l,height:s};switch(n){case"left":a.left=0,a.width=0;break;case"right":a.left=a.left+a.width-4,a.width=0;break;case"bottom":a.top=a.top+a.height-4,a.height=0;break;case"top":a.height=0;break}return a}function ce(i,t){if(!t)return null;const{left:n,top:o,width:r,height:l}=i==="dropping"?at(t):t.rect,s={left:`${n}px`,top:`${o}px`,width:`${r}px`,height:`${l}px`,visibility:r||l?"visible":"hidden"};return{...t,style:s,position:lt(t.rect,i!=="selected")}}function K(){const i=O(),t=e.computed(()=>i.simulator.designer.value),n=e.computed(()=>t.value?.selected.value),o=e.computed(()=>w.isBlock(n.value?.model));return{engine:i,designer:t,selected:n,isSelectBlock:o}}function st(i,t){const n=e.ref(""),{selected:o,isSelectBlock:r}=K(),l=e.computed(()=>o.value?.model.id),s=e.computed(()=>{const c=e.toValue(i),d=e.toValue(t),m=[];if(!c)return m;const p=d?.__contextRefs[l.value||""],f=d===p||r.value?[]:Object.keys(p?.context||{}).filter(C=>!["context","ref"].includes(C)).map(C=>`this.context.${C}`);f.length&&m.push({title:"上下文",items:f});const u=c.inject.map(C=>`this.${C.name}`);u.length&&m.push({title:"注入",items:u});const h=c.props.map(C=>typeof C=="string"?`this.$props.${C}`:`this.$props.${C.name}`);h.length&&m.push({title:"属性",items:h});const g=Object.keys(c.state).map(C=>`this.state.${C}`);g.length&&m.push({title:"状态",items:g});const _=Object.keys(c.computed).map(C=>`this.${C}.value`);_.length&&m.push({title:"计算属性",items:_});const y=Object.keys(c.methods).map(C=>`this.${C}`);y.length&&m.push({title:"方法",items:y});const V=Object.keys(c.dataSources).map(C=>`this.${C}`);V.length&&m.push({title:"数据源",items:V});const N=Object.keys(d?.$refs||{}).map(C=>`this.$refs.${C}`);return N.length&&m.push({title:"refs",items:N}),m}),a=e.computed(()=>{if(!n.value)return s.value;const c=n.value.toLowerCase(),d=[];return s.value.forEach(m=>{const p=m.items.filter(v=>v.toLowerCase().includes(c));p.length&&d.push({title:m.title,items:p})}),d});return{keyword:n,options:s,searchResult:a}}const le=[{name:"StringSetter",label:"文本"},{name:"ExpressionSetter",label:"表达式"}];function it(i){const t=O(),n=e.computed(()=>{const p=i.value?.model||null;return w.isBlock(p)?null:p}),o=e.ref();e.watch(n,async p=>{p?.from?o.value=await t.assets.getBlockMaterial(p.from)||void 0:o.value=void 0},{immediate:!0});const r=e.computed(()=>n.value?[{name:"key",setters:le,value:n.value.getPropValue("key")},{name:"ref",setters:le,value:n.value.getPropValue("ref")},{name:"class",label:"class",setters:le,value:n.value.getPropValue("class")},{name:"children",label:"文本",title:"如设置组件文本,将清空子组件",setters:le,value:Array.isArray(n.value.children)?"":n.value.children}]:[]),l=e.computed(()=>{if(!n.value)return[];const p=o.value||t.assets.componentMap.get(n.value.name);return p?(p.props||[]).map(f=>({...f,value:n.value?.getPropValue(f.name)??f.defaultValue})):[]}),s=p=>r.value.some(v=>v.name===p)||l.value.some(v=>v.name===p)||p==="style",a=e.computed(()=>n.value?Object.keys(n.value.props).filter(p=>!s(p)).map(p=>({name:p,setters:"InputSetter",value:n.value?.getPropValue(p)})):[]);return{commonProps:r,componentProps:l,customProps:a,node:n,change:(p,v)=>{n.value&&(p==="children"?n.value.setChildren(v):n.value.setProp(p,v))},addCustom:p=>{p&&n.value?.setProp(p,"")},removeCustom:p=>{n.value?.removeProp(p)},isExist:s}}function $(i,t="提示"){return b.ElNotification.warning({title:t,message:i})}async function ee(i){return await b.ElMessageBox.confirm(i,"提示",{type:"warning"}).catch(()=>!1)}function W(i,t="success"){return b.ElMessage({message:i,type:t})}function L(i,t,n=!1){let o=!0;try{i.type==="JSExpression"?D.parseExpression(i,t,n,!0):D.parseFunction(i,t,n,!0)}catch(r){o=!1,b.ElNotification.error({title:"代码错误",message:r.message})}return o}function Ne(){const i=O(),t=e.computed(()=>i.simulator.designer.value),n=e.computed(()=>i.current.value?i.history.value:null),o=e.computed(()=>n.value?.items.length||0),r=()=>{t.value?.cleanHelper(),n.value?.forward()},l=()=>{n.value?.backward(),t.value?.cleanHelper()},s=d=>{t.value?.cleanHelper(),n.value?.load(d),W("已载入历史记录","success")},a=e.computed(()=>o.value<=1?!0:(n.value?.index||-1)<=0),c=e.computed(()=>o.value<=1?!0:(n.value?.index||-1)>=o.value-1);return{engine:i,history:n,total:o,forward:r,backward:l,load:s,forwardDisabled:a,backwardDisabled:c}}function se(){const i=O(),t=e.computed(()=>i.project.value);return{engine:i,project:t}}function ct(i){const t=O(),n=e.computed(()=>{const a=i.value?.model||null;return w.isBlock(a)?null:a}),o=e.ref();e.watch(n,async a=>{a?.from?o.value=await t.assets.getBlockMaterial(a.from)||void 0:o.value=void 0});const r=e.computed(()=>{if(w.isBlock(n.value))return[];const a=n.value?.events||{};return ye.map(c=>({name:c,event:a[c]}))}),l=e.computed(()=>{if(w.isBlock(n.value))return[];const a=n.value?.events||{};return we.map(c=>({name:c,event:a[c]}))}),s=e.computed(()=>{if(!n.value||w.isBlock(n.value))return[];const a=n.value.events||{};return(o.value?.events||t.assets.componentMap.get(n.value.name)?.events||[]).map(d=>{const m=typeof d=="string"?d:d.name;return{name:m,event:a[m]}})});return{mouseEventList:r,keyboardEventList:l,componentEventList:s}}const be=(i,t)=>new w.DirectiveModel({name:i,value:void 0,iterator:t}),ut=(i="modelValue")=>new w.DirectiveModel({name:"vModel",value:void 0,arg:i});function dt(i){if(!i)return[];const{props:t=[],events:n=[]}=i;if(t.length&&n.length){const o=n.filter(r=>(typeof r=="string"?r:r.name).startsWith("update:")).map(r=>r=typeof r=="string"?r:r.name);return o.length?t.filter(r=>o.some(l=>l.includes(r.name))):[]}return[]}function mt(i){const t=O(),n=e.computed(()=>{const u=i.value?.model||null;return w.isBlock(u)?null:u}),o=u=>e.computed(()=>n.value&&(n.value.directives||[]).find(h=>h.name===u)||be(u)),r=()=>e.computed(()=>{if(!n.value)return[];const u=t.assets.componentMap.get(n.value.name||"");return(u?dt(u):[]).map(g=>(n.value?.directives||[]).find(_=>_.name==="vModel"&&_.arg==g.name)||ut(g.name))}),l=o("vIf"),s=o("vShow"),a=o("vBind"),c=o("vFor"),d=r(),m={vIf:l,vShow:s,vBind:a,vFor:c};return{engine:t,node:n,vIf:l,vShow:s,vBind:a,vFor:c,vModels:d,onValueChange:(u,h)=>{const g=m[u];n.value&&(h?(g.value.value=h,n.value.setDirective(g.value)):(g.value.value=void 0,n.value.removeDirective(g.value)))},onForChange:(u,h)=>{if(n.value){if(u==="value"){h?(c.value.value=h,n.value.setDirective(c.value)):n.value.removeDirective(c.value);return}(u==="item"||u==="index")&&(c.value.iterator={...c.value.iterator,[u]:h||void 0},n.value.setDirective(c.value))}},onModelChange:(u,h)=>{if(!n.value)return;const g=parseInt(u),_=d.value[g];_&&(h?(_.value=h,n.value.setDirective(_)):(_.value=void 0,n.value.removeDirective(_)))}}}function pt(){const{engine:i,project:t}=se(),n=e.computed(()=>t.value?.apis||[]);return{engine:i,project:t,apis:n}}const ft={class:"v-switcher-widget"},vt={key:1},gt=e.defineComponent({name:"SwitcherWidget",inheritAttrs:!1,__name:"index",emits:["click"],setup(i,{emit:t}){const n=t,{engine:o}=z(),r=e.computed(()=>o.project.value?.name),l=e.computed(()=>o.project.value?.currentFile?.title),s=()=>{n("click",o.project.value)};return(a,c)=>(e.openBlock(),e.createElementBlock("div",ft,[e.createVNode(e.unref(b.ElButton),{size:"small",round:"",onClick:s},{default:e.withCtx(()=>[e.createVNode(e.unref(B.VtjIconBack),{class:"v-switcher-widget__back"}),e.createElementVNode("span",null,e.toDisplayString(r.value),1),l.value?(e.openBlock(),e.createBlock(e.unref(b.ElDivider),{key:0,direction:"vertical"})):e.createCommentVNode("",!0),l.value?(e.openBlock(),e.createElementBlock("span",vt,e.toDisplayString(l.value),1)):e.createCommentVNode("",!0)]),_:1})]))}}),ht={class:"v-toolbar-widget"},kt=e.defineComponent({name:"ToolbarWidget",inheritAttrs:!1,__name:"index",props:{preview:{type:Boolean}},setup(i,{expose:t}){const n=i,{forward:o,backward:r,forwardDisabled:l,backwardDisabled:s}=Ne(),a=e.ref("pc");return t({mode:a}),(c,d)=>(e.openBlock(),e.createElementBlock("div",ht,[e.createVNode(e.unref(b.ElRadioGroup),{size:"small",modelValue:a.value,"onUpdate:modelValue":d[0]||(d[0]=m=>a.value=m)},{default:e.withCtx(()=>[e.createVNode(e.unref(b.ElRadioButton),{label:"pc"},{default:e.withCtx(()=>[e.createVNode(e.unref(B.VtjIconPc))]),_:1}),e.createVNode(e.unref(b.ElRadioButton),{label:"mobile"},{default:e.withCtx(()=>[e.createVNode(e.unref(B.VtjIconPhone))]),_:1}),e.createVNode(e.unref(b.ElRadioButton),{label:"pad"},{default:e.withCtx(()=>[e.createVNode(e.unref(B.VtjIconPad))]),_:1})]),_:1},8,["modelValue"]),e.createCommentVNode("",!0),e.createVNode(e.unref(b.ElButtonGroup),null,{default:e.withCtx(()=>[e.createVNode(e.unref(b.ElButton),{type:"default",size:"small",onClick:e.unref(r),disabled:e.unref(s)||!!n.preview},{default:e.withCtx(()=>[e.createVNode(e.unref(B.VtjIconUndo))]),_:1},8,["onClick","disabled"]),e.createVNode(e.unref(b.ElButton),{type:"default",size:"small",onClick:e.unref(o),disabled:e.unref(l)||!!n.preview},{default:e.withCtx(()=>[e.createVNode(e.unref(B.VtjIconRedo))]),_:1},8,["onClick","disabled"])]),_:1})]))}}),bt={class:"v-actions-widget"},_t=e.createElementVNode("span",null,"发布",-1),yt=e.defineComponent({name:"ActionsWidget",inheritAttrs:!1,__name:"index",props:{coder:{type:Boolean,default:!0}},setup(i){const{engine:t,designer:n}=K(),o=e.ref(!1),r=()=>{t.current.value?(o.value?t.skeleton?.getWidget("Previewer")?.widgetRef.refresh():(n.value?.setSelected(null),t.simulator.refresh()),W("刷新完成","success")):W("请先打开文件","warning")},l=async()=>{t.current.value?(o.value&&(t.skeleton?.closePreview(),o.value=!1,await I.delay(1e3)),n.value?.setSelected(t.current.value)):W("请先打开文件","warning")},s=()=>{if(t.project.value)if(t.current.value){if(o.value){t.skeleton?.closePreview(),o.value=!1;return}t.skeleton?.openPreview(""),o.value=!0}else W("请先打开文件","warning")},a=()=>{const d=t.project.value;d&&(d.currentFile?d.publish(d.currentFile):W("请先打开文件","warning"))},c=d=>{const m=t.project.value;m&&(d==="current"?a():m.publish())};return(d,m)=>(e.openBlock(),e.createElementBlock("div",bt,[e.createVNode(e.unref(b.ElBadge),{value:0,max:99,hidden:!0},{default:e.withCtx(()=>[e.createVNode(e.unref(k.XAction),{mode:"icon",icon:e.unref(B.VtjIconBug),background:"hover"},null,8,["icon"])]),_:1}),e.createVNode(e.unref(b.ElDivider),{direction:"vertical"}),e.createVNode(e.unref(b.ElButton),{onClick:s,type:o.value?"warning":"default",size:"small",title:"预览"},{default:e.withCtx(()=>[e.createVNode(e.unref(B.VtjIconPreview))]),_:1},8,["type"]),e.createVNode(e.unref(b.ElButton),{onClick:r,type:"default",size:"small",title:"刷新"},{default:e.withCtx(()=>[e.createVNode(e.unref(B.VtjIconRefresh))]),_:1}),e.createVNode(e.unref(b.ElButton),{type:"default",size:"small",title:"页面设置",onClick:l},{default:e.withCtx(()=>[e.createVNode(e.unref(B.VtjIconSetting))]),_:1}),e.createVNode(e.unref(b.ElDivider),{direction:"vertical"}),e.createVNode(e.unref(b.ElDropdown),{"split-button":"",type:"primary",size:"small",onClick:a,onCommand:c},{dropdown:e.withCtx(()=>[e.createVNode(e.unref(b.ElDropdownMenu),null,{default:e.withCtx(()=>[e.createVNode(e.unref(b.ElDropdownItem),{command:"current"},{default:e.withCtx(()=>[e.createTextVNode("发布页面")]),_:1}),e.createVNode(e.unref(b.ElDropdownItem),{command:"project"},{default:e.withCtx(()=>[e.createTextVNode("整站发布")]),_:1})]),_:1})]),default:e.withCtx(()=>[_t]),_:1})]))}}),wt={class:"v-icon-setter"},Ct={class:"v-icon-setter__content"},Vt={class:"v-icon-setter__list"},De=e.defineComponent({name:"IconSetter",__name:"icon",props:{modelValue:{default:""},size:{default:"small"}},emits:["change","update:modelValue"],setup(i,{emit:t}){const n=i,o=t,r=e.ref(!1),l=e.ref(n.modelValue),s=e.ref(""),a=e.computed(()=>B.icons[n.modelValue]||n.modelValue),c=e.computed(()=>{const f=Object.entries(B.icons);return s.value?f.filter(u=>u[0].toLowerCase().includes(s.value)):f}),d=f=>{l.value=f},m=()=>{o("change",l.value),o("update:modelValue",l.value),r.value=!1},p=()=>{l.value="",o("change",""),o("update:modelValue",""),r.value=!1},v=()=>{r.value=!0};return(f,u)=>(e.openBlock(),e.createElementBlock("div",wt,[e.createVNode(e.unref(b.ElInput),{size:n.size,readonly:"",placeholder:"请选择图标","model-value":n.modelValue,"suffix-icon":e.unref(B.ArrowDown),onFocus:v},{prepend:e.withCtx(()=>[e.createVNode(e.unref(k.XIcon),{icon:a.value},null,8,["icon"])]),_:1},8,["size","model-value","suffix-icon"]),r.value?(e.openBlock(),e.createBlock(e.unref(k.XDialog),{key:0,title:"图标选择器",width:"1000px",height:"600px",cancel:"",submit:"",clear:"",modelValue:r.value,"onUpdate:modelValue":u[1]||(u[1]=h=>r.value=h),onSubmit:m},{extra:e.withCtx(()=>[e.createVNode(e.unref(b.ElButton),{size:"default",type:"warning",onClick:p},{default:e.withCtx(()=>[e.createTextVNode(" 清除绑定 ")]),_:1})]),default:e.withCtx(()=>[e.createElementVNode("div",Ct,[e.createVNode(e.unref(b.ElInput),{size:n.size,"prefix-icon":e.unref(B.Search),clearable:"",modelValue:s.value,"onUpdate:modelValue":u[0]||(u[0]=h=>s.value=h),placeholder:"请输入查询关键字"},null,8,["size","prefix-icon","modelValue"]),e.createElementVNode("div",Vt,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(c.value,h=>(e.openBlock(),e.createBlock(e.unref(k.XIcon),{icon:h[1],onClick:g=>d(h[0]),class:e.normalizeClass({"is-active":l.value===h[0]})},null,8,["icon","onClick","class"]))),256)),c.value.length===0?(e.openBlock(),e.createBlock(e.unref(b.ElEmpty),{key:0})):e.createCommentVNode("",!0)])])]),_:1},8,["modelValue"])):e.createCommentVNode("",!0)]))}}),Bt=e.defineComponent({name:"PageForm",__name:"form",props:{item:{},parentId:{}},setup(i){const t=i,{project:n}=se(),o=e.computed(()=>t.item?"编辑页面":"新增页面"),r=()=>({dir:!1,name:"",title:"",icon:"",mask:!0,hidden:!1,raw:!1}),l=e.ref(t.item||r()),s=[{label:"页面",value:!1},{label:"目录",value:!0}],a=d=>{l.value&&(l.value.name=I.upperFirstCamelCase(d))},c=async d=>n.value?.existPageName(d.name,[d.id])?($("页面名称已存在,请更换"),!1):(t.item?n.value?.updatePage(d):n.value?.createPage(d,t.parentId),!0);return(d,m)=>(e.openBlock(),e.createBlock(e.unref(k.XDialogForm),{title:o.value,width:"800px",height:"500px","form-props":{tooltipMessage:!1},model:l.value,"submit-method":c},{default:e.withCtx(()=>[e.createVNode(e.unref(k.XField),{name:"dir",label:"类型",editor:"radio",options:s,props:{button:!0,size:"small"},disabled:!!t.item,required:""},null,8,["disabled"]),e.createVNode(e.unref(k.XField),{name:"name",label:"名称",required:"",onChange:a,rules:{pattern:e.unref(H),message:"名称格式不正确"}},null,8,["rules"]),e.createVNode(e.unref(k.XField),{name:"title",label:"标题",required:""}),e.createVNode(e.unref(k.XField),{name:"icon",label:"菜单图标",editor:"none"},{editor:e.withCtx(()=>[e.createVNode(De,{modelValue:l.value.icon,"onUpdate:modelValue":m[0]||(m[0]=p=>l.value.icon=p),size:"default"},null,8,["modelValue"])]),_:1}),e.createVNode(e.unref(k.XField),{visible:{dir:!1},name:"mask",label:"包含母版",editor:"switch"}),e.createVNode(e.unref(k.XField),{name:"hidden",label:"隐藏菜单",editor:"switch"}),e.createVNode(e.unref(k.XField),{visible:{dir:!1},disabled:!!t.item,inline:"",name:"raw",label:"源码模式",editor:"switch",tip:"页面是非低代码开发,不能在线编辑"},null,8,["disabled"])]),_:1},8,["title","model"]))}}),pe=e.defineComponent({name:"VIcon",__name:"Icon",props:{icon:{},label:{},active:{type:Boolean,default:!1},open:{type:Boolean,default:!1}},emits:["click"],setup(i,{emit:t}){const n=i,o=t,r=e.computed(()=>({"is-active":n.active,"is-open":n.open})),l=()=>{o("click")};return(s,a)=>(e.openBlock(),e.createBlock(e.unref(b.ElTooltip),{effect:"dark",placement:"right",content:s.label,"show-after":600},{default:e.withCtx(()=>[e.createElementVNode("div",{class:e.normalizeClass(["v-apps-region__icon",r.value]),onClick:l},[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(s.icon)))],2)]),_:1},8,["content"]))}}),A=e.defineComponent({name:"VPanel",__name:"panel",props:{title:{},subtitle:{},plus:{type:Boolean},back:{type:Boolean},remove:{type:Boolean},save:{type:Boolean},header:{type:Boolean,default:!0}},emits:["plus","back","remove","save"],setup(i,{emit:t}){const n=i,o=t,r=()=>{o("plus")},l=()=>{o("back")},s=()=>{o("remove")},a=()=>{o("save")},c=e.computed(()=>n.header?{content:n.title,subtitle:n.subtitle,icon:n.back?B.Back:void 0,onClickBack:n.back?l:void 0}:null);return(d,m)=>(e.openBlock(),e.createBlock(e.unref(k.XPanel),{class:"v-panel",border:!1,header:c.value,fit:""},e.createSlots({actions:e.withCtx(()=>[n.plus?(e.openBlock(),e.createBlock(e.unref(k.XAction),{key:0,size:d.$attrs.size,mode:"icon",icon:e.unref(B.VtjIconPlus),background:"hover",title:"新增",onClick:r},null,8,["size","icon"])):e.createCommentVNode("",!0),n.remove?(e.openBlock(),e.createBlock(e.unref(k.XAction),{key:1,size:d.$attrs.size,mode:"icon",icon:e.unref(B.Delete),background:"hover",title:"清除",onClick:s},null,8,["size","icon"])):e.createCommentVNode("",!0),n.save?(e.openBlock(),e.createBlock(e.unref(k.XAction),{key:2,size:d.$attrs.size,mode:"icon",icon:e.unref(B.VtjIconSave),background:"hover",title:"保存",onClick:a},null,8,["size","icon"])):e.createCommentVNode("",!0),e.renderSlot(d.$slots,"actions")]),default:e.withCtx(()=>[e.renderSlot(d.$slots,"default")]),_:2},[d.$slots.footer?{name:"footer",fn:e.withCtx(()=>[e.renderSlot(d.$slots,"footer")]),key:"0"}:void 0]),1032,["header"]))}}),xt={class:"v-tabs__header"},Et={key:0,class:"v-tabs__actions"},oe=e.defineComponent({__name:"tabs",props:{items:{default:()=>[]},menus:{},modelValue:{},stretch:{type:Boolean},checkable:{type:Boolean}},emits:["update:modelValue","command","remove"],setup(i,{emit:t}){const n=i,o=t,r=e.ref((n.modelValue||n.items[0]?.name)??"");e.watch(r,()=>{o("update:modelValue",r.value)}),e.watch(()=>n.modelValue,a=>{r.value=a});const l=a=>{o("command",a)},s=a=>{o("remove",a)};return(a,c)=>(e.openBlock(),e.createBlock(e.unref(k.XPanel),{class:"v-tabs",border:!1,fit:"",radius:!1},{header:e.withCtx(()=>[e.createElementVNode("div",xt,[e.createVNode(e.unref(k.XTabs),{class:"v-tabs__tabs",items:n.items,type:"card",modelValue:r.value,"onUpdate:modelValue":c[0]||(c[0]=d=>r.value=d),onTabRemove:s,stretch:n.stretch},null,8,["items","modelValue","stretch"]),n.menus&&n.menus.length?(e.openBlock(),e.createElementBlock("div",Et,[n.menus&&n.menus.length?(e.openBlock(),e.createBlock(e.unref(k.XAction),{key:0,mode:"icon",size:"small",icon:e.unref(B.MoreFilled),background:"hover",dropdown:{size:"small",placement:"bottom-end"},menus:n.menus,onCommand:l},{item:e.withCtx(({item:d})=>[e.createElementVNode("span",null,[n.checkable?(e.openBlock(),e.createBlock(e.unref(B.VtjIconCheck),{key:0,class:e.normalizeClass({"v-tabs__checked":!0,"is-checked":d.checked})},null,8,["class"])):e.createCommentVNode("",!0),e.createTextVNode(" "+e.toDisplayString(d.label),1)])]),_:1},8,["icon","menus"])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)])]),default:e.withCtx(()=>[e.renderSlot(a.$slots,"default")]),_:3}))}}),St={key:2,class:"v-item__index"},Nt={class:"v-item__content"},Dt={key:3,class:"v-item__subtitle"},M=e.defineComponent({name:"VItem",__name:"item",props:{icon:{},index:{},tag:{},tagType:{},title:{},subtitle:{},actions:{default:()=>[]},background:{type:Boolean},border:{type:Boolean},switch:{type:Boolean},modelValue:{},active:{type:Boolean},hover:{type:Boolean},small:{type:Boolean}},emits:["click","action","update:modelValue","switch"],setup(i,{emit:t}){const n={add:{label:"创建",icon:B.VtjIconPlus},copy:{label:"复制",icon:B.VtjIconCopy},edit:{label:"编辑",icon:B.VtjIconEdit},remove:{label:"删除",icon:B.VtjIconRemove},lock:{label:"锁定",icon:B.VtjIconLock},unlock:{label:"解锁",icon:B.VtjIconUnlock},invisible:{label:"隐藏",icon:B.VtjIconInvisible},visible:{label:"显示",icon:B.VtjIconVisible},home:{label:"主页",icon:B.VtjIconHome}},o=i,r=t,l=e.ref(!!o.modelValue),s=e.computed(()=>o.actions.map(m=>{const p=n[m];return{name:m,...p}})),a=e.computed(()=>({"is-background":o.background,"is-border":o.border,"is-active":o.active,"is-hover":o.hover,"is-small":o.small})),c=()=>{r("click",o.modelValue)},d=async m=>{m==="remove"?await b.ElMessageBox.confirm("确定删除吗?","提示",{type:"warning"}).catch(()=>!1)&&r("action",{name:m,modelValue:o.modelValue}):r("action",{name:m,modelValue:o.modelValue})};return e.watch(l,m=>{r("update:modelValue",m),r("switch",m)}),e.watch(()=>o.modelValue,m=>{l.value=!!m}),(m,p)=>(e.openBlock(),e.createBlock(e.unref(k.XContainer),{class:e.normalizeClass(["v-item",a.value]),justify:"space-between",align:"center",onClick:c},{default:e.withCtx(()=>[e.createVNode(e.unref(k.XContainer),{class:"v-item__title",align:"center"},{default:e.withCtx(()=>[e.renderSlot(m.$slots,"default",{},()=>[m.icon?(e.openBlock(),e.createBlock(e.unref(k.XIcon),{key:0,icon:m.icon},null,8,["icon"])):e.createCommentVNode("",!0),o.tag?(e.openBlock(),e.createBlock(e.unref(b.ElTag),{key:1,class:"v-item__tag",size:"small",type:o.tagType},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(o.tag),1)]),_:1},8,["type"])):e.createCommentVNode("",!0),m.index!==void 0?(e.openBlock(),e.createElementBlock("span",St," # "+e.toDisplayString(m.index),1)):e.createCommentVNode("",!0),e.createElementVNode("span",Nt,e.toDisplayString(m.title),1),m.subtitle?(e.openBlock(),e.createElementBlock("span",Dt,e.toDisplayString(m.subtitle),1)):e.createCommentVNode("",!0)])]),_:3}),e.createVNode(e.unref(k.XContainer),{class:"v-item__actions",onClick:p[1]||(p[1]=e.withModifiers(()=>{},["stop"]))},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.value,v=>(e.openBlock(),e.createBlock(e.unref(k.XAction),{name:v.name,title:v.label,mode:"icon",size:"small",background:"none",type:"info",icon:v.icon,onClick:f=>d(v.name)},null,8,["name","title","icon","onClick"]))),256)),o.switch?(e.openBlock(),e.createBlock(e.unref(b.ElSwitch),{key:0,modelValue:l.value,"onUpdate:modelValue":p[0]||(p[0]=v=>l.value=v),class:"v-item__switch",size:"small"},null,8,["modelValue"])):e.createCommentVNode("",!0),e.renderSlot(m.$slots,"status")]),_:3})]),_:3},8,["class"]))}}),jt=["draggable"],At={class:"v-box__name"},Ft={class:"v-box__label"},ae=e.defineComponent({name:"VBox",__name:"box",props:{name:{},title:{},editable:{type:Boolean},active:{type:Boolean},draggable:{type:Boolean}},emits:["edit","remove","dragstart","dragend"],setup(i,{emit:t}){const n=i,o=t,r=()=>{o("edit")},l=async()=>{await b.ElMessageBox.confirm("确认删除?","提示",{type:"warning"}).catch(()=>!1)&&o("remove")},s=e.computed(()=>({"is-active":n.active,"is-draggable":n.draggable})),a=()=>{o("dragstart",n)},c=()=>{o("dragend",n)};return(d,m)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["v-box",s.value]),draggable:d.draggable,onDragstart:a,onDragend:c},[e.createVNode(e.unref(k.XContainer),{direction:"column",justify:"center",align:"center"},{default:e.withCtx(()=>[e.createElementVNode("span",At,e.toDisplayString(n.name),1),e.createElementVNode("span",Ft,e.toDisplayString(n.title),1)]),_:1}),n.editable?(e.openBlock(),e.createBlock(e.unref(k.XContainer),{key:0,class:"v-box__footer",justify:"flex-end",align:"center"},{default:e.withCtx(()=>[e.createVNode(e.unref(k.XIcon),{icon:e.unref(B.VtjIconEdit),onClick:r},null,8,["icon"]),e.createVNode(e.unref(k.XIcon),{icon:e.unref(B.VtjIconRemove),onClick:l},null,8,["icon"])]),_:1})):e.createCommentVNode("",!0)],42,jt))}}),It={class:"v-context-viewer"},je=e.defineComponent({__name:"viewer",props:{context:{}},emits:["pick","copy"],setup(i,{emit:t}){const n=i,o=t,r=["$provider","$apis","$components","context"],l=m=>{const p=m.value,v=I.toRawType(p);return v==="Object"||v==="Module"?Object.keys(p||{}).length===0:v==="Array"?p.length===0:!0},s=(m,p="this")=>typeof m=="object"?Array.isArray(m)?m.map((v,f)=>{const u=`[${f}]`;return{label:u,value:v,type:I.toRawType(v),path:`${p}${u}`}}):Object.entries(m).map(([v,f])=>({label:v,value:f,type:I.toRawType(f),path:`${p}.${v}`})).filter(v=>!v.label.startsWith("__")&&!r.includes(v.label)):[],a=(m,p)=>{if(m.level===0)p(s(n.context));else{const v=e.toRaw(m.data.value);p(s(v,m.data.path))}},c=m=>{o("copy",m.path)},d=m=>{o("pick",m.path)};return(m,p)=>(e.openBlock(),e.createElementBlock("div",It,[m.context?(e.openBlock(),e.createBlock(e.unref(b.ElTree),{key:0,lazy:"",load:a,"expand-on-click-node":!1,props:{isLeaf:l}},{default:e.withCtx(({data:v})=>[e.createVNode(M,{title:v.label,clickable:"",onClick:f=>d(v),background:"",actions:["copy"],onAction:f=>c(v),grow:"",small:""},null,8,["title","onClick","onAction"])]),_:1},8,["props"])):e.createCommentVNode("",!0)]))}}),ie=e.defineComponent({__name:"binder",props:{title:{},context:{},block:{},model:{},rules:{},modelValue:{type:Boolean},submitMethod:{type:Function},unbindEnabled:{type:Boolean}},emits:["unbind","submit","cancel","pick","update:modelValue","close"],setup(i,{emit:t}){const n=i,o=t,{searchResult:r,keyword:l}=st(n.block,n.context),{copy:s}=ve.useClipboard({}),a=[{name:"normal",label:"常用"},{name:"viewer",label:"高级"}],c=e.ref("normal"),d=e.ref(),m=async _=>{o("submit",_),n.submitMethod?await n.submitMethod(_)&&p():p()},p=()=>{o("update:modelValue",!1),o("close")},v=()=>{o("unbind")},f=()=>{p()},u=async()=>{d.value?.submit()},h=_=>{o("pick",_)},g=_=>{s(_),b.ElMessage.success({message:"已经复制到粘贴板"})};return(_,y)=>(e.openBlock(),e.createBlock(e.unref(k.XDialog),{"model-value":n.modelValue,class:"v-binder",title:_.title,width:"1000px",height:"600px","body-padding":!1,maximizable:!1,minimizable:!1,onClose:p},{default:e.withCtx(()=>[e.createVNode(e.unref(k.XContainer),{fit:"",direction:"row",overflow:"hidden"},{default:e.withCtx(()=>[e.createVNode(e.unref(k.XContainer),{width:"30%",height:"100%"},{default:e.withCtx(()=>[e.createVNode(oe,{class:"v-binder__tabs",items:a,modelValue:c.value,"onUpdate:modelValue":y[1]||(y[1]=V=>c.value=V)},{default:e.withCtx(()=>[e.createVNode(e.unref(k.XContainer),{class:"v-binder__tab-content",fit:"",padding:"",flex:!1},{default:e.withCtx(()=>[e.withDirectives(e.createElementVNode("div",null,[e.createVNode(e.unref(b.ElInput),{modelValue:e.unref(l),"onUpdate:modelValue":y[0]||(y[0]=V=>e.isRef(l)?l.value=V:null),size:"small",clearable:"","prefix-icon":e.unref(B.Search),placeholder:"筛选可用项"},null,8,["modelValue","prefix-icon"]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(r),V=>(e.openBlock(),e.createElementBlock("div",null,[e.createVNode(e.unref(b.ElDivider),{"border-style":"dotted"},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(V.title),1)]),_:2},1024),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(V.items,N=>(e.openBlock(),e.createBlock(M,{title:N,background:"",actions:["copy"],small:"",onClick:C=>h(N),onAction:C=>g(N)},null,8,["title","onClick","onAction"]))),256))]))),256)),e.unref(r).length?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(b.ElEmpty),{key:0}))],512),[[e.vShow,c.value==="normal"]]),e.withDirectives(e.createVNode(je,{context:n.context,onCopy:g,onPick:h},null,8,["context"]),[[e.vShow,c.value==="viewer"]])]),_:1})]),_:1},8,["modelValue"])]),_:1}),e.createVNode(e.unref(k.XPanel),{grow:"",header:null,border:!1},{footer:e.withCtx(()=>[e.createVNode(e.unref(k.XContainer),{justify:"space-between"},{default:e.withCtx(()=>[e.createVNode(e.unref(k.XContainer),null,{default:e.withCtx(()=>[_.unbindEnabled?(e.openBlock(),e.createBlock(e.unref(b.ElButton),{key:0,type:"warning",size:"default",onClick:v},{default:e.withCtx(()=>[e.createTextVNode(" 移除绑定 ")]),_:1})):e.createCommentVNode("",!0)]),_:1}),e.createVNode(e.unref(k.XContainer),null,{default:e.withCtx(()=>[e.createVNode(e.unref(b.ElButton),{type:"default",size:"default",onClick:f},{default:e.withCtx(()=>[e.createTextVNode(" 取消 ")]),_:1}),e.createVNode(e.unref(b.ElButton),{type:"primary",size:"default",onClick:u},{default:e.withCtx(()=>[e.createTextVNode(" 确定 ")]),_:1})]),_:1})]),_:1})]),default:e.withCtx(()=>[e.createVNode(e.unref(k.XForm),{ref_key:"formRef",ref:d,class:"v-binder__form",footer:!1,"label-position":"top","tooltip-message":!1,model:n.model,rules:n.rules,"submit-method":m},{default:e.withCtx(()=>[e.renderSlot(_.$slots,"default")]),_:3},8,["model","rules"])]),_:3})]),_:3})]),_:3},8,["model-value","title"]))}}),Pt={class:"v-slots-picker__sn"},Ae=e.defineComponent({__name:"slots",props:{slots:{default:()=>[]}},emits:["submit","update:modelValue"],setup(i,{emit:t}){const n=i,o=t,r=e.ref(),l=e.computed(()=>`${50*Math.ceil(n.slots.length/4)+180}px`),s=c=>{r.value=c},a=()=>{r.value?(o("submit",r.value),o("update:modelValue",!1)):$("请选择插槽")};return(c,d)=>(e.openBlock(),e.createBlock(e.unref(k.XDialog),e.mergeProps({class:"v-slots-picker",title:"选择插槽",width:"600px",height:l.value,submit:"",cancel:"",onSubmit:a},c.$attrs),{default:e.withCtx(()=>[e.createVNode(e.unref(b.ElAlert),{title:"该组件支持多个插槽,请选择放置到其中一个",type:"warning",closable:!1}),e.createVNode(e.unref(k.XContainer),{class:"v-slots-picker__content",justify:"space-around",alignContent:"flex-start",gap:"",wrap:"wrap"},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.slots,(m,p)=>(e.openBlock(),e.createBlock(e.unref(k.XContainer),{class:e.normalizeClass(["v-slots-picker__item",{"is-active":m.name===r.value?.name}]),grow:"",flex:!1,onClick:v=>s(m)},{default:e.withCtx(()=>[e.createElementVNode("span",Pt,"#"+e.toDisplayString(p+1),1),e.createTextVNode(" "+e.toDisplayString(m.name),1)]),_:2},1032,["class","onClick"]))),256))]),_:1})]),_:1},16,["height"]))}}),ge=e.defineComponent({name:"Viewport",__name:"viewport",props:{mode:{default:"pc"},width:{},height:{}},setup(i){const t=i,n=e.computed(()=>[`is-${t.mode}`]),o=e.computed(()=>{if(t.mode==="pc")return 1;const l=t.mode==="mobile"?de:me,{width:s,height:a}=l,c=s>0?(t.width||0)/s:1,d=a>0?(t.height||0)/a:1;return Math.min(c,d)}),r=e.computed(()=>{if(t.mode==="pc")return{};const l=t.mode==="mobile"?de:me,{width:s,height:a}=l;return{width:`${s}px`,height:`${a}px`,left:"50%",top:"50%",transform:`translate(-50%, -50%) scale(${o.value})`}});return(l,s)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["v-viewport",n.value]),style:e.normalizeStyle(r.value)},[e.renderSlot(l.$slots,"default")],6))}}),Rt=e.defineComponent({name:"PagesWidget",__name:"index",setup(i){const{project:t,engine:n}=se(),o=e.computed(()=>t.value?.pages||[]),{current:r}=z(),l=e.ref(!1),s=e.ref(),a=e.ref(),c=()=>{a.value=void 0,s.value=void 0,l.value=!0},d=async f=>{const{name:u,modelValue:h}=f,{data:g,node:_}=h;if(u==="add"&&(s.value=void 0,a.value=g.id,l.value=!0),u==="edit"&&(s.value=I.cloneDeep(g),a.value=void 0,l.value=!0),u==="remove"){if(g.dir){const y=t.value?.getPage(g.id);if(y&&y.children?.length){$("请先删除子页面");return}}t.value?.removePage(g.id)}if(u==="copy"){const y=_.parent?.data.id;t.value?.clonePage(g,y)}u==="home"&&(t.value?.setHomepage(g.id),W("设置主页成功","success"))},m=async f=>{f.raw&&W("这是源码模式页面,不能低代码设计","warning"),f.dir||f.raw?n.project.value?.deactivate():n.project.value?.active(f)},p=(f,u,h)=>h==="inner"?!!u.data.dir:!0,v=()=>{t.value?.update({pages:e.toValue(o)})};return(f,u)=>(e.openBlock(),e.createBlock(e.unref(A),{class:"v-pages-widget",title:"页面管理",plus:"",subtitle:"(共 0 条)",onPlus:c},{default:e.withCtx(()=>[e.createVNode(e.unref(b.ElTree),{data:o.value,"node-key":"id","default-expand-all":"",draggable:"","allow-drop":p,onNodeDrop:v},{default:e.withCtx(({data:h,node:g})=>[e.createVNode(e.unref(M),{class:"v-pages-widget__item",icon:e.unref(B.icons)[h.icon],title:h.title,subtitle:h.name,"model-value":{data:h,node:g},actions:h.dir?["add","edit","remove"]:h.raw?["home","edit","remove"]:["home","copy","edit","remove"],onAction:d,onClick:_=>m(h),active:e.unref(r)?.id===h.id,tag:e.unref(t)?.homepage===h.id?"主页":void 0,"tag-type":"success",grow:"",small:"",background:"",hover:""},null,8,["icon","title","subtitle","model-value","actions","onClick","active","tag"])]),_:1},8,["data"]),l.value?(e.openBlock(),e.createBlock(Bt,{key:0,modelValue:l.value,"onUpdate:modelValue":u[0]||(u[0]=h=>l.value=h),item:s.value,"parent-id":a.value},null,8,["modelValue","item","parent-id"])):e.createCommentVNode("",!0)]),_:1}))}}),Tt=e.defineComponent({name:"BlocksWidget",__name:"index",setup(i){const{span:t}=Se(),{blocks:n,engine:o}=tt(),r=e.ref(void 0),{current:l}=z(),s=e.ref(!1),a=e.computed(()=>r.value?.id?"编辑":"新增"),c=e.computed(()=>`(共 ${n.value.length} 个)`),d=()=>({name:"",title:"",type:"block"}),m=async y=>{const V=y,N=o.project.value;if(!N)return!1;if(y.id)if(!N.existBlockName(V.name,[V.id]))N.updateBlock(V);else return $(`名称【${V.name}】已经存在,请更换名称`),!1;else if(!N.existBlockName(V.name))N.createBlock(V);else return $(`名称【${V.name}】已经存在,请更换名称`),!1;return!0},p=()=>{r.value=d(),s.value=!0},v=y=>{r.value=I.cloneDeep(y),s.value=!0},f=y=>{o.project.value?.removeBlock(y.id)},u=y=>{r.value&&(r.value.name=I.upperFirstCamelCase(y))},h=async y=>{o.project.value?.active(y)},g=async y=>{const V={type:"Schema",id:y.id},N=await o.assets.getBlockMaterial(V),C=o.skeleton?.getWidget("Designer")?.widgetRef?.designer;C&&N&&C.setDragging(N)},_=()=>{const y=o.skeleton?.getWidget("Designer")?.widgetRef?.designer;y&&y.setDragging(null)};return(y,V)=>(e.openBlock(),e.createBlock(e.unref(A),{class:"v-blocks-widget",title:"区块管理",subtitle:c.value,plus:"",onPlus:p},{default:e.withCtx(()=>[e.createVNode(e.unref(b.ElRow),{wrap:"wrap",gutter:5},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(n),N=>(e.openBlock(),e.createBlock(e.unref(b.ElCol),{key:N.id,span:e.unref(t)},{default:e.withCtx(()=>[e.createVNode(e.unref(ae),{name:N.name,title:N.title,active:e.unref(l)?.id===N.id,editable:"",onEdit:C=>v(N),onRemove:C=>f(N),onClick:C=>h(N),draggable:e.unref(l)?.id!==N.id,onDragstart:C=>g(N),onDragend:_},null,8,["name","title","active","onEdit","onRemove","onClick","draggable","onDragstart"])]),_:2},1032,["span"]))),128))]),_:1}),e.unref(n).length?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(b.ElEmpty),{key:0})),e.createVNode(e.unref(k.XDialogForm),{modelValue:s.value,"onUpdate:modelValue":V[0]||(V[0]=N=>s.value=N),title:a.value,model:r.value,width:"600px",height:"250px","form-props":{tooltipMessage:!1},"submit-method":m},{default:e.withCtx(()=>[e.createVNode(e.unref(k.XField),{name:"name",label:"名称",required:"",tip:"名称为英文驼峰格式",rules:{message:"名称格式错误",pattern:e.unref(H)},onChange:u},null,8,["rules"]),e.createVNode(e.unref(k.XField),{name:"title",label:"标题",required:""})]),_:1},8,["modelValue","title","model"])]),_:1},8,["subtitle"]))}}),$t={class:"v-components-widget__search"},Mt={key:0,class:"v-components-widget__result"},Lt={class:"v-components-widget__list"},zt=e.defineComponent({name:"ComponentsWidget",__name:"index",setup(i){const{span:t,engine:n}=Se(),{tabs:o,currentTab:r,currentGroup:l,model:s,searchKey:a,searchResult:c}=ot(),d=p=>{const v=n.skeleton?.getWidget("Designer")?.widgetRef?.designer;v&&v.setDragging(p)},m=()=>{const p=n.skeleton?.getWidget("Designer")?.widgetRef?.designer;p&&p.setDragging(null)};return(p,v)=>(e.openBlock(),e.createBlock(e.unref(A),{class:"v-components-widget",title:"组件库",body:{flex:!0,direction:"column"}},{default:e.withCtx(()=>[e.createElementVNode("div",$t,[e.createVNode(e.unref(b.ElInput),{modelValue:e.unref(a),"onUpdate:modelValue":v[0]||(v[0]=f=>e.isRef(a)?a.value=f:null),placeholder:"搜索组件",clearable:"",size:"small"},{prefix:e.withCtx(()=>[e.createVNode(e.unref(B.VtjIconSearch))]),_:1},8,["modelValue"])]),e.unref(a)?(e.openBlock(),e.createElementBlock("div",Mt,[e.createVNode(e.unref(b.ElRow),{wrap:"wrap",gutter:5},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(c),f=>(e.openBlock(),e.createBlock(e.unref(b.ElCol),{span:e.unref(t),key:f.name},{default:e.withCtx(()=>[e.createVNode(e.unref(ae),{name:f.name,title:f.label||f.name,draggable:"",onDragstart:u=>d(f),onDragend:m},null,8,["name","title","onDragstart"])]),_:2},1032,["span"]))),128))]),_:1}),e.unref(c).length?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(b.ElEmpty),{key:0}))])):(e.openBlock(),e.createBlock(e.unref(k.XTabs),{key:1,items:e.unref(o),modelValue:e.unref(r),"onUpdate:modelValue":v[2]||(v[2]=f=>e.isRef(r)?r.value=f:null)},{default:e.withCtx(()=>[e.createElementVNode("div",Lt,[e.unref(l)?(e.openBlock(),e.createBlock(e.unref(b.ElCollapse),{key:0,modelValue:e.unref(s)[e.unref(r)],"onUpdate:modelValue":v[1]||(v[1]=f=>e.unref(s)[e.unref(r)]=f)},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(l).children,f=>(e.openBlock(),e.createBlock(e.unref(b.ElCollapseItem),{key:f.name,name:f.name,title:`${f.label} (${f.count})`},{default:e.withCtx(()=>[f.components?(e.openBlock(),e.createBlock(e.unref(b.ElRow),{key:0,wrap:"wrap",gutter:5},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(f.components,u=>(e.openBlock(),e.createBlock(e.unref(b.ElCol),{span:e.unref(t),key:u.name},{default:e.withCtx(()=>[e.createVNode(e.unref(ae),{name:u.name,title:u.label||u.name,draggable:"",onDragstart:h=>d(u),onDragend:m},null,8,["name","title","onDragstart"])]),_:2},1032,["span"]))),128))]),_:2},1024)):e.createCommentVNode("",!0)]),_:2},1032,["name","title"]))),128))]),_:1},8,["modelValue"])):e.createCommentVNode("",!0)])]),_:1},8,["items","modelValue"]))]),_:1}))}}),Ot=e.defineComponent({name:"OutlineWidget",__name:"index",setup(i){const{engine:t,designer:n,selected:o}=K(),{current:r}=z(),l=e.ref([]),s=C=>{if(w.isBlock(C))return C.locked?["unlock"]:["lock"];const S=C.parent;return S&&(S.locked||S.invisible)?[]:r.value?.locked?[]:C.locked?["unlock"]:C.invisible?["visible"]:["lock","invisible","copy","remove"]},a=C=>{const S=[];return C.forEach(x=>{const R={id:x.id,label:x.name,type:x.id,model:x};Array.isArray(x.children)&&(R.children=a(x.children)),S.push(R)}),S},c=()=>{if(!r.value)return[];const{id:C,name:S,nodes:x}=r.value;return[{id:C,label:S,type:C,model:r.value,children:a(x)}]},d=async()=>{l.value=c(),o.value?.model&&(await e.nextTick(),n.value?.setSelected(o.value.model))},m=e.computed(()=>o.value?.model.id),p=C=>{const S=C.data;if(w.isBlock(S.model)||S.model.locked||S.model.name==="template")return!1;const x=t.assets.componentMap.get(S.model.name);return x?(n.value?.setDragging(x),!0):!1},v=async(C,S,x)=>{const R=S.data,Q={prev:"top",next:"bottom",inner:"inner"}[x];let j=!1;if(w.isBlock(R.model))j=x==="inner",n.value?.setDropping(j?R.model:null,"inner");else{const P=R.model;j=!!await n.value?.allowDrop(P,Q),n.value?.setDropping(j?P:null,"inner")}return j},f=C=>{const S=C?.model;!S||S.invisible||(n.value?.setSelected(S),n.value?.setHover(null))},u=async(C,S,x)=>{const R=C.data,U=S.data;if(w.isBlock(U.model)){n.value?.setDropping(null),n.value?.setDragging(null);return}const Q=U.model,j={before:"left",after:"right"}[x]||"inner";if(!await n.value?.allowDrop(Q,j)){n.value?.setDropping(null),d(),b.ElMessage.warning({message:`${R.model.name}不能放置到该位置`}),n.value?.setDragging(null);return}const E=await n.value?.getDropSlot(x==="inner"?Q:Q.parent);if(E!==null){const te=R.model;te.slot=E,r.value?.move(te,Q,j)}else d();n.value?.setDropping(null),n.value?.setDragging(null),t.simulator.refresh()},h=C=>{w.isBlock(C.model)?n.value?.setHover(C.model):(n.value?.setHover(C.model),C.model.invisible&&n.value?.setHover(null),C.model.name==="slot"&&n.value?.setHover(null))},g=()=>{n.value?.setHover(null)},_=C=>{const S=C.data;S.dragging=!0;const x=t.assets.componentMap.get(S.model.name);x&&n.value?.setDragging(x)},y=async C=>{const S=C.data;S.dragging=!1},V=(C,S)=>{C&&((C.id===S.id||!w.isBlock(C)&&S.isChild(C))&&n.value?.setSelected(null),n.value?.setHover(null))},N=C=>{const{name:S,modelValue:x}=C,R=o.value?.model;switch(S){case"lock":V(R,x),x.lock();break;case"unlock":V(R,x),x.unlock();break;case"invisible":V(R,x),x.setVisible(!1);break;case"visible":x.setVisible(!0);break;case"copy":const U=r.value?.cloneNode(x);U&&n.value?.setSelected(U);break;case"remove":V(R,x),r.value?.removeNode(x);break}};return e.watch(t.changed,d,{immediate:!0}),(C,S)=>(e.openBlock(),e.createBlock(e.unref(A),{class:"v-outline-widget",title:"大纲树"},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.unref(b.ElTree),{key:e.unref(t).changed.value,data:l.value,"node-key":"id","default-expand-all":"",draggable:"","empty-text":"请新建或打开文件","current-node-key":m.value,"highlight-current":!0,"expand-on-click-node":!1,"allow-drop":v,"allow-drag":p,onCurrentChange:f,onNodeDrop:u,onNodeDragStart:_,onNodeDragEnd:y},{default:e.withCtx(({data:x,node:R})=>[e.createVNode(e.unref(M),{class:e.normalizeClass(["v-outline-widget__item",{"is-locked":x.model.locked,"is-invisible":x.model.invisible,"is-dragging":x.dragging}]),active:!x.model.invisible&&R.isCurrent,grow:"",small:"",background:"",hover:"","model-value":x.model,icon:x.model.locked?e.unref(B.VtjIconLock):x.model.invisible?e.unref(B.VtjIconInvisible):void 0,title:x.label,subtitle:x.type,actions:s(x.model),onAction:N,onMouseenter:U=>h(x),onMouseleave:g},null,8,["class","active","model-value","icon","title","subtitle","actions","onMouseenter"])]),_:1},8,["data","current-node-key"]))]),_:1}))}}),Xt=e.defineComponent({name:"HistoryWidget",__name:"index",setup(i){const{history:t,load:n,total:o}=Ne(),r=e.computed(()=>`(共 ${o.value} 条)`),l=a=>{a.name==="remove"&&t.value?.remove(a.modelValue.id)},s=async()=>{await ee("确定要清空历史记录吗?")&&t.value?.clear()};return(a,c)=>(e.openBlock(),e.createBlock(e.unref(A),{class:"v-history-widget",title:"历史记录",subtitle:r.value,remove:!!e.unref(o),onRemove:s},{default:e.withCtx(()=>[e.unref(o)===0?(e.openBlock(),e.createBlock(e.unref(b.ElEmpty),{key:0,"image-size":50})):e.createCommentVNode("",!0),e.unref(t)?(e.openBlock(!0),e.createElementBlock(e.Fragment,{key:1},e.renderList(e.unref(t).items,(d,m)=>(e.openBlock(),e.createBlock(e.unref(M),{index:m+1,title:d.label,"model-value":d,active:m==e.unref(t).index,small:"",background:"",actions:["remove"],onAction:l,onClick:p=>e.unref(n)(d.id)},null,8,["index","title","model-value","active","onClick"]))),256)):e.createCommentVNode("",!0)]),_:1},8,["subtitle","remove"]))}}),T=e.defineAsyncComponent({loader:()=>Promise.resolve().then(()=>require("./Editor-ragV9vX2.cjs")),loadingComponent:e.defineComponent({render(){return e.h("div","正在拼命加载...")}}),errorComponent:e.defineComponent({render(){return e.h("div","组件加载失败!")}})}),Wt=e.defineComponent({name:"ApisWidget",__name:"index",setup(i){const t=e.ref(!1),n=e.ref(null),o=e.ref(!1),r=e.computed(()=>o.value?"编辑API":"新增API"),l=e.computed(()=>s.value?.apis||[]),{project:s}=se(),a=()=>({method:"get",name:"",label:"",url:"",settings:{loading:!0,failMessage:!0,validSuccess:!0,originResponse:!1,injectHeaders:!1,type:"form",headers:{type:"JSExpression",value:"({})"}}}),c=()=>{t.value=!0,o.value=!1,n.value=a()},d=Ce.map(g=>({label:g,value:g.toLowerCase()})),m={get:"success",post:"primary",put:"warning",delete:"danger",patch:"warning",jsonp:"info"},p=[{label:"表单",value:"form"},{label:"JSON",value:"json"},{label:"文件",value:"data"}],v=(g,_,y)=>{L({type:"JSExpression",value:_},window)?y():y(new Error("代码错误"))},f=g=>{g.name==="edit"&&u(g.modelValue),g.name==="remove"&&s.value?.removeApi(g.modelValue.name)},u=g=>{o.value=!0,n.value=I.cloneDeep(g),t.value=!0},h=async g=>s.value?.existApiName(g.name,o.value?[g.id]:[])?($(`API名称 [ ${g.name} ] 已存在`),!1):(s.value?.setApi(g),!0);return(g,_)=>(e.openBlock(),e.createBlock(e.unref(A),{class:"v-apis-widget",title:"API管理",plus:"",onPlus:c},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.value,y=>(e.openBlock(),e.createBlock(e.unref(M),{key:y.id,small:"",title:y.name,subtitle:y.label,"model-value":y,tag:y.method?.toUpperCase(),"tag-type":m[y.method||"get"],background:"",actions:["edit","remove"],onClick:V=>u(y),onAction:f},null,8,["title","subtitle","model-value","tag","tag-type","onClick"]))),128)),l.value.length===0?(e.openBlock(),e.createBlock(e.unref(b.ElEmpty),{key:0,"image-size":50})):e.createCommentVNode("",!0),e.createVNode(e.unref(k.XDialogForm),{modelValue:t.value,"onUpdate:modelValue":_[1]||(_[1]=y=>t.value=y),model:n.value,title:r.value,width:"1000px",height:"600px","form-props":{labelPosition:"top",tooltipMessage:!1,size:"default"},"submit-method":h},{default:e.withCtx(()=>[e.createVNode(e.unref(k.XContainer),{gap:"",fit:""},{default:e.withCtx(()=>[e.createVNode(e.unref(k.XContainer),{direction:"column",grow:"",width:"50%",shrink:""},{default:e.withCtx(()=>[e.createVNode(e.unref(k.XField),{name:"method",label:"请求类型",required:"",editor:"radio",options:e.unref(d),props:{button:!0}},null,8,["options"]),e.createVNode(e.unref(k.XField),{name:"name",label:"接口名称",required:"",rules:{pattern:e.unref(H),message:"名称格式不正确"}},null,8,["rules"]),e.createVNode(e.unref(k.XField),{name:"label",label:"备注说明",required:""}),e.createVNode(e.unref(k.XField),{name:"url",label:"接口URL",required:""})]),_:1}),e.createVNode(e.unref(k.XContainer),{direction:"column",grow:"",width:"50%",shrink:""},{default:e.withCtx(()=>[n.value.method!=="jsonp"?(e.openBlock(),e.createBlock(e.unref(A),{key:0,title:"请求配置",subtitle:n.value.method,border:""},{default:e.withCtx(()=>[e.createVNode(e.unref(k.XContainer),{justify:"space-around"},{default:e.withCtx(()=>[e.createVNode(e.unref(k.XField),{name:"settings.loading",size:"small",label:"加载提示",editor:"switch"}),e.createVNode(e.unref(k.XField),{size:"small",name:"settings.failMessage",label:"失败提示",editor:"switch"}),e.createVNode(e.unref(k.XField),{size:"small",name:"settings.validSuccess",label:"校验成功",editor:"switch"}),e.createVNode(e.unref(k.XField),{size:"small",name:"settings.originResponse",label:"原始响应",editor:"switch"}),e.createVNode(e.unref(k.XField),{size:"small",name:"settings.injectHeaders",label:"注入请求头",editor:"switch"})]),_:1}),e.createVNode(e.unref(k.XField),{size:"small",name:"settings.type",label:"发送数据类型",editor:"radio",options:p,props:{button:!0}}),e.createVNode(e.unref(k.XField),{size:"small",name:"settings.headers.value",label:"请求头配置",tip:"支持 JSExpression 或 JSFunction",rules:{validator:v}},{editor:e.withCtx(()=>[e.createVNode(e.unref(T),{modelValue:n.value.settings.headers.value,"onUpdate:modelValue":_[0]||(_[0]=y=>n.value.settings.headers.value=y),dark:"",height:"200px"},null,8,["modelValue"])]),_:1},8,["rules"])]),_:1},8,["subtitle"])):e.createCommentVNode("",!0),n.value.method==="jsonp"?(e.openBlock(),e.createBlock(e.unref(A),{key:1,title:"请求配置",subtitle:n.value.method,border:""},{default:e.withCtx(()=>[e.createVNode(e.unref(k.XField),{name:"jsonpOptions.jsonpCallback",size:"small",label:"jsonpCallback"}),e.createVNode(e.unref(k.XField),{name:"jsonpOptions.jsonpCallbackFunction",size:"small",label:"jsonpCallbackFunction"}),e.createVNode(e.unref(k.XField),{name:"jsonpOptions.timeout",size:"small",label:"timeout",editor:"number"}),e.createVNode(e.unref(k.XField),{name:"jsonpOptions.crossorigin",size:"small",label:"crossorigin",editor:"switch"})]),_:1},8,["subtitle"])):e.createCommentVNode("",!0)]),_:1})]),_:1})]),_:1},8,["modelValue","model","title"])]),_:1}))}}),Jt=e.defineComponent({name:"DepsWidget",__name:"index",setup(i){const{dependencies:t,engine:n}=Ee(),o=e.ref(!1),r=e.ref(!1),l=e.ref({}),s=e.computed(()=>r.value?"查看依赖":l.value?"编辑依赖":"新增依赖"),a=u=>u.required||u.official?[]:["edit","remove"],c=u=>u.official&&!u.required,d=async u=>(u.urls=u.urls.split(`
|
|
8
8
|
`),n.project.value?.setDeps(u),!0),m=u=>{n.project.value?.setDeps(u)},p=()=>{r.value=!1,o.value=!0,l.value=null},v=u=>{r.value=!0,l.value={...u,urls:u.urls.join(`
|
|
9
9
|
`)},o.value=!0},f=(u,h)=>{h.name==="edit"&&(l.value={...u,urls:u.urls.join(`
|
|
10
10
|
`)},r.value=!1,o.value=!0),h.name==="remove"&&n.project.value?.removeDeps(u)};return(u,h)=>(e.openBlock(),e.createBlock(e.unref(A),{class:"v-deps-widget",title:"依赖管理",plus:"",onPlus:p},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(t),g=>(e.openBlock(),e.createBlock(e.unref(M),{key:g.package,title:g.package,subtitle:g.version,actions:a(g),background:"",switch:c(g),modelValue:g.enabled,"onUpdate:modelValue":_=>g.enabled=_,onSwitch:_=>m(g),onClick:_=>v(g),onAction:_=>f(g,_)},null,8,["title","subtitle","actions","switch","modelValue","onUpdate:modelValue","onSwitch","onClick","onAction"]))),128)),e.createVNode(e.unref(k.XDialogForm),{modelValue:o.value,"onUpdate:modelValue":h[0]||(h[0]=g=>o.value=g),width:"600px",height:"500px",title:s.value,model:l.value,submitMethod:d,formProps:{disabled:r.value,tooltipMessage:!1}},{default:e.withCtx(()=>[e.createVNode(e.unref(k.XField),{name:"package",label:"包名",required:"",disabled:!!l.value},null,8,["disabled"]),e.createVNode(e.unref(k.XField),{name:"version",label:"版本",required:""}),e.createVNode(e.unref(k.XField),{name:"library",label:"导出名称",required:""}),e.createVNode(e.unref(k.XField),{name:"urls",label:"资源文件",editor:"textarea",props:{rows:3},tip:"多个资源可以换行输入",required:""}),e.createVNode(e.unref(k.XField),{name:"assetsUrl",label:"物料URL"}),e.createVNode(e.unref(k.XField),{name:"assetsLibrary",label:"物料名称"})]),_:1},8,["modelValue","title","model","formProps"])]),_:1}))}}),Ut=e.defineComponent({__name:"actions",props:{position:{},model:{},path:{default:()=>[]}},emits:["action"],setup(i,{emit:t}){const n=i,o=t,r=e.computed(()=>n.model.name),l=e.computed(()=>!w.isBlock(n.model)&&!n.model.locked),s=e.computed(()=>n.path.map(m=>({command:m,label:m.name,onMouseenter:()=>{o("action",{type:"hover",model:m})}}))),a=[{name:"prev",icon:B.VtjIconArrowUp,title:"向前移动"},{name:"next",icon:B.VtjIconArrowDown,title:"向后移动"},{name:"copy",icon:B.VtjIconCopy,title:"复制"},{name:"remove",icon:B.VtjIconRemove,title:"删除"}],c=m=>{o("action",{type:"selected",model:m.command})},d=async m=>{m.name==="remove"?await ee("确定删除?")&&o("action",{type:m.name,model:n.model}):o("action",{type:m.name,model:n.model})};return(m,p)=>(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["v-actions",[`is-${n.position}`]])},[e.createVNode(e.unref(k.XAction),{mode:"icon",size:"small",icon:e.unref(B.VtjIconLayers),label:r.value,menus:s.value,background:"none",onCommand:c},null,8,["icon","label","menus"]),e.createVNode(e.unref(k.XActionBar),{disabled:!l.value,mode:"icon",size:"small",items:a,background:"none",onClick:d},null,8,["disabled"])],2))}}),Ht={key:1,class:"v-designer__placeholder"},qt=e.defineComponent({name:"VDesigner",inheritAttrs:!1,__name:"index",setup(i,{expose:t}){const n=e.ref(),o=e.ref(),{width:r,height:l}=ve.useElementSize(n),{dependencies:s,engine:a}=Ee(),{current:c,isEmpty:d}=z(),m=e.computed(()=>a.skeleton?.getWidget("Toolbar")?.widgetRef.mode??"pc"),{designer:p,hover:v,dropping:f,selected:u}=rt(o,s),h=g=>{const _=g.type,y=g.model;if(c.value)switch(_){case"remove":c.value.removeNode(y),p.value?.setSelected(null);break;case"copy":const V=c.value.cloneNode(y);p.value?.setSelected(V);break;case"prev":c.value.movePrev(y),p.value?.setSelected(y);break;case"next":c.value.moveNext(y),p.value?.setSelected(y);break;case"hover":p.value?.setHover(y);break;case"selected":p.value?.setSelected(y);break}};return t({designer:p,mode:m}),(g,_)=>(e.openBlock(),e.createElementBlock("div",{ref_key:"container",ref:n,class:"v-designer"},[e.createVNode(e.unref(ge),{mode:m.value,width:e.unref(r),height:e.unref(l)},{default:e.withCtx(()=>[e.createElementVNode("iframe",{ref_key:"iframe",ref:o,frameborder:"0"},null,512),e.unref(f)?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["v-designer__dropping","is-inner"]),style:e.normalizeStyle(e.unref(f).style)},null,4)):e.createCommentVNode("",!0),e.unref(v)?(e.openBlock(),e.createElementBlock("div",{key:1,class:"v-designer__hover",style:e.normalizeStyle(e.unref(v).style)},[e.createElementVNode("span",{class:e.normalizeClass(`is-${e.unref(v).position}`)},[e.createTextVNode(e.toDisplayString(e.unref(v).model.name)+": ",1),e.createElementVNode("i",null,e.toDisplayString(e.unref(v).model.id),1)],2)],4)):e.createCommentVNode("",!0),e.unref(u)?(e.openBlock(),e.createElementBlock("div",{key:2,class:"v-designer__selected",style:e.normalizeStyle(e.unref(u).style)},[e.createVNode(Ut,{position:e.unref(u).position,model:e.unref(u).model,path:e.unref(u).path,onAction:h},null,8,["position","model","path"])],4)):e.createCommentVNode("",!0)]),_:1},8,["mode","width","height"]),e.unref(c)?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(b.ElEmpty),{key:0,description:"请新建或打开文件"})),e.unref(c)&&e.unref(d)?(e.openBlock(),e.createElementBlock("div",Ht," 您可以拖拽组件放置到这里 ")):e.createCommentVNode("",!0)],512))}}),re=e.defineComponent({__name:"group",props:{context:{},current:{},title:{},nameLabel:{},valueLabel:{},createEmpty:{},list:{},remove:{},submit:{},itemTitle:{type:Function,default:i=>i.name}},setup(i){const t=i,n=e.ref(),o=e.ref(),r=e.ref(!1),l=e.ref(t.createEmpty()),s=e.ref(!1),a=e.computed(()=>s.value?`编辑${t.title}`:`新增${t.title}`),c=()=>{s.value=!1,l.value=t.createEmpty(),r.value=!0},d=(u,h)=>{switch(h.name){case"edit":p(u);break;case"remove":t.remove(u);break}},m=u=>{l.value.value=u},p=u=>{s.value=!0,l.value={...u},r.value=!0},v=async u=>t.submit(u,s.value),f=()=>{o.value?.itemRef.validate()};return(u,h)=>(e.openBlock(),e.createBlock(e.unref(A),{title:t.title,class:"v-sub-panel",size:"small",fit:!1,plus:"",onPlus:c},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(u.list,g=>(e.openBlock(),e.createBlock(e.unref(M),{title:t.itemTitle(g),border:"",actions:["edit","remove"],onAction:_=>d(g,_),onClick:_=>p(g)},null,8,["title","onAction","onClick"]))),256)),u.list.length?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(b.ElEmpty),{key:0,"image-size":40})),e.createVNode(e.unref(ie),{modelValue:r.value,"onUpdate:modelValue":h[1]||(h[1]=g=>r.value=g),title:a.value,"submit-method":v,model:l.value,block:u.current,context:u.context,onPick:m},{default:e.withCtx(()=>[e.renderSlot(u.$slots,"fields",e.normalizeProps(e.guardReactiveProps({model:l.value,isEdit:s.value,nameLabel:u.nameLabel,valueLabel:u.valueLabel})),()=>[e.createVNode(e.unref(k.XField),{name:"name",label:u.nameLabel,required:"",disabled:s.value},null,8,["label","disabled"]),e.createVNode(e.unref(k.XField),{ref_key:"codeFieldRef",ref:o,name:"value",label:u.valueLabel,required:""},{editor:e.withCtx(()=>[e.createVNode(e.unref(T),{ref_key:"editorRef",ref:n,dark:"",height:"350px",modelValue:l.value.value,"onUpdate:modelValue":h[0]||(h[0]=g=>l.value.value=g),onBlur:f},null,8,["modelValue"])]),_:1},8,["label"])])]),_:3},8,["modelValue","title","model","block","context"])]),_:3},8,["title"]))}}),Gt=e.defineComponent({__name:"state",props:{context:{},current:{}},setup(i){const t=i,n=e.computed(()=>Object.entries(t.current?.state||{}).map(([a,c])=>({name:a,value:D.JSCodeToString(c)}))),o=()=>({name:"",value:""}),r=s=>t.current?.removeState(s.name),l=async(s,a)=>{const{name:c,value:d}=s;if(!a&&t.current?.state[c])return $(`名称 ${c} 已存在,请更换!`),!1;const m={type:"JSExpression",value:d};return L(m,t.context,!0)?(t.current?.setState(c,m),!0):!1};return(s,a)=>(e.openBlock(),e.createBlock(re,{title:"状态数据",current:t.current,context:t.context,list:n.value,nameLabel:"状态数据名称",valueLabel:"状态初始值 [ JSExpression ]",createEmpty:o,remove:r,submit:l},null,8,["current","context","list"]))}}),Kt=e.defineComponent({__name:"computed",props:{context:{},current:{}},setup(i){const t=i,n=e.computed(()=>Object.entries(t.current?.computed||{}).map(([a,c])=>({name:a,value:D.JSCodeToString(c)}))),o=()=>({name:"",value:"() => { }"}),r=s=>t.current?.removeFunction("computed",s.name),l=async(s,a)=>{const{name:c,value:d}=s;if(!a&&t.current?.computed[c])return $(`名称 ${c} 已存在,请更换!`),!1;const m={type:"JSFunction",value:d};return L(m,t.context,!0)?(t.current?.setFunction("computed",c,m),!0):!1};return(s,a)=>(e.openBlock(),e.createBlock(re,{title:"计算属性",current:t.current,context:t.context,list:n.value,nameLabel:"计算属性名称",valueLabel:"计算函数 [ JSFunction ]",createEmpty:o,remove:r,submit:l},null,8,["current","context","list"]))}}),Zt=e.defineComponent({__name:"methods",props:{context:{},current:{}},setup(i){const t=i,n=e.computed(()=>Object.entries(t.current?.methods||{}).map(([a,c])=>({name:a,value:D.JSCodeToString(c)}))),o=()=>({name:"",value:"() => { }"}),r=s=>t.current?.removeFunction("methods",s.name),l=async(s,a)=>{const{name:c,value:d}=s;if(!a&&t.current?.methods[c])return $(`名称 ${c} 已存在,请更换!`),!1;const m={type:"JSFunction",value:d};return L(m,t.context,!0)?(t.current?.setFunction("methods",c,m),!0):!1};return(s,a)=>(e.openBlock(),e.createBlock(re,{title:"组件方法",current:t.current,context:t.context,list:n.value,nameLabel:"方法名称",valueLabel:"方法函数 [ JSFunction ]",createEmpty:o,remove:r,submit:l},null,8,["current","context","list"]))}}),Qt=e.defineComponent({__name:"lifeCycles",props:{context:{},current:{}},setup(i){const t=i,n=e.computed(()=>D.LIFE_CYCLES_LIST.map(a=>({label:a,value:a}))),o=e.computed(()=>Object.entries(t.current?.lifeCycles||{}).map(([c,d])=>({name:c,value:D.JSCodeToString(d)}))),r=()=>({name:"",value:"() => { }"}),l=a=>t.current?.removeFunction("lifeCycles",a.name),s=async(a,c)=>{const{name:d,value:m}=a;if(!c&&t.current?.lifeCycles[d])return $(`名称 ${d} 已存在,请更换!`),!1;const p={type:"JSFunction",value:m};return L(p,t.context,!0)?(t.current?.setFunction("lifeCycles",d,p),!0):!1};return(a,c)=>(e.openBlock(),e.createBlock(re,{title:"生命周期",current:t.current,context:t.context,list:o.value,nameLabel:"名称",valueLabel:"函数 [ JSFunction ]",createEmpty:r,remove:l,submit:s},{fields:e.withCtx(({model:d,nameLabel:m,isEdit:p,valueLabel:v})=>[e.createVNode(e.unref(k.XField),{name:"name",label:m,editor:"select",options:n.value,required:"",disabled:p},null,8,["label","options","disabled"]),e.createVNode(e.unref(k.XField),{name:"value",label:v,required:""},{editor:e.withCtx(()=>[e.createVNode(e.unref(T),{ref:"editorRef",dark:"",height:"350px",modelValue:d.value,"onUpdate:modelValue":f=>d.value=f},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1032,["label"])]),_:1},8,["current","context","list"]))}}),Yt=e.defineComponent({__name:"watch",props:{context:{},current:{}},setup(i){const t=i,n=e.computed(()=>(t.current?.watch||[]).map(a=>({...a,source:D.JSCodeToString(a.source),handler:D.JSCodeToString(a.handler)}))),o=()=>({source:"() => { }",deep:!1,immediate:!1,handler:"() => { }"}),r=a=>a.source,l=a=>t.current?.removeWatch(a),s=async(a,c)=>{const d={type:"JSFunction",value:a.source},m={type:"JSFunction",value:a.handler};if(!L(d,t.context,!0)||!L(m,t.context,!0))return!1;const p={...a,source:d,handler:m};return t.current?.setWatch(p),!0};return(a,c)=>(e.openBlock(),e.createBlock(re,{title:"侦听器",current:t.current,context:t.context,list:n.value,nameLabel:"侦听源 [ JSFunction ]",valueLabel:"处理函数 [ JSFunction ]",createEmpty:o,remove:l,submit:s,itemTitle:r,grow:""},{fields:e.withCtx(({model:d,nameLabel:m,valueLabel:p})=>[e.createVNode(e.unref(k.XField),{name:"source",label:m,required:""},{editor:e.withCtx(()=>[e.createVNode(e.unref(T),{dark:"",height:"100px",modelValue:d.source,"onUpdate:modelValue":v=>d.source=v},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1032,["label"]),e.createVNode(e.unref(k.XField),{name:"deep",modelValue:d.deep,"onUpdate:modelValue":v=>d.deep=v,label:"深度监听",editor:"switch"},null,8,["modelValue","onUpdate:modelValue"]),e.createVNode(e.unref(k.XField),{name:"immediate",modelValue:d.immediate,"onUpdate:modelValue":v=>d.immediate=v,label:"立即执行",editor:"switch"},null,8,["modelValue","onUpdate:modelValue"]),e.createVNode(e.unref(k.XField),{name:"handler",label:p,required:""},{editor:e.withCtx(()=>[e.createVNode(e.unref(T),{dark:"",height:"130px",modelValue:d.handler,"onUpdate:modelValue":v=>d.handler=v},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1032,["label"])]),_:1},8,["current","context","list"]))}}),en=e.defineComponent({__name:"index",setup(i){const{current:t,context:n}=z();return(o,r)=>(e.openBlock(),e.createBlock(e.unref(k.XContainer),{class:"v-scripts-widget",direction:"column",fit:""},{default:e.withCtx(()=>[e.createVNode(Gt,{current:e.unref(t),context:e.unref(n)},null,8,["current","context"]),e.createVNode(Kt,{current:e.unref(t),context:e.unref(n)},null,8,["current","context"]),e.createVNode(Zt,{current:e.unref(t),context:e.unref(n)},null,8,["current","context"]),e.createVNode(Qt,{current:e.unref(t),context:e.unref(n)},null,8,["current","context"]),e.createVNode(Yt,{current:e.unref(t),context:e.unref(n)},null,8,["current","context"])]),_:1}))}}),ue=e.defineComponent({__name:"setters",props:{context:{},current:{},title:{},items:{},node:{},removable:{type:Boolean}},emits:["change","remove"],setup(i,{emit:t}){const n=i,o=t,r=(s,a)=>{o("change",s,a)},l=s=>{o("remove",s)};return(s,a)=>(e.openBlock(),e.createBlock(e.unref(A),{title:n.title,class:"v-sub-panel",size:"small",fit:!1},{default:e.withCtx(()=>[e.createVNode(e.unref(b.ElForm),{class:"v-properties-widget__form",size:"small","label-width":"90px",onKeydown:a[0]||(a[0]=e.withKeys(e.withModifiers(()=>{},["prevent","stop"]),["enter"]))},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(n.items,c=>(e.openBlock(),e.createBlock(e.unref(G),e.mergeProps(c,{key:`${c.name}_${n.node.id}`,current:n.current,context:n.context,removable:n.removable,onChange:r,onRemove:l}),null,16,["current","context","removable"]))),128))]),_:1})]),_:1},8,["title"]))}}),tn=e.defineComponent({name:"PropertiesWidget",__name:"index",setup(i){const{current:t,context:n}=z(),{selected:o}=K(),{node:r,commonProps:l,change:s,componentProps:a,customProps:c,addCustom:d,removeCustom:m,isExist:p}=it(o),v=e.ref(!1),f=e.ref(),u=()=>{v.value=!0,f.value={name:""}},h=async _=>{const y=Object.keys(r.value?.props||{});return!p(_.name)&&!y.includes(_.name)?(d(_.name),!0):($("已存在该属性名称"),!1)},g=async _=>{await ee("确定删除?")&&m(_)};return(_,y)=>e.unref(t)?(e.openBlock(),e.createBlock(e.unref(k.XContainer),{key:0,class:"v-properties-widget",direction:"column",fit:""},{default:e.withCtx(()=>[e.unref(r)?(e.openBlock(),e.createBlock(ue,{key:0,title:"通用属性",current:e.unref(t),context:e.unref(n),node:e.unref(r),items:e.unref(l),onChange:e.unref(s)},null,8,["current","context","node","items","onChange"])):e.createCommentVNode("",!0),e.unref(r)?(e.openBlock(),e.createBlock(ue,{key:1,title:"组件属性",current:e.unref(t),context:e.unref(n),node:e.unref(r),items:e.unref(a),onChange:e.unref(s)},null,8,["current","context","node","items","onChange"])):e.createCommentVNode("",!0),e.unref(r)?(e.openBlock(),e.createBlock(ue,{key:2,title:"自定义属性",current:e.unref(t),context:e.unref(n),node:e.unref(r),items:e.unref(c),onChange:e.unref(s),removable:"",plus:"",grow:"",onPlus:u,onRemove:g},null,8,["current","context","node","items","onChange"])):e.createCommentVNode("",!0),e.createVNode(e.unref(k.XDialogForm),{modelValue:v.value,"onUpdate:modelValue":y[0]||(y[0]=V=>v.value=V),title:"新增自定义属性",width:"400px",height:"150px","submit-method":h,formProps:{tooltipMessage:!1},model:f.value},{default:e.withCtx(()=>[e.createVNode(e.unref(k.XField),{name:"name",label:"属性名称",required:"",rules:{message:"名称格式错误",pattern:e.unref(H)}},null,8,["rules"])]),_:1},8,["modelValue","model"])]),_:1})):e.createCommentVNode("",!0)}}),Fe=e.defineComponent({name:"VariableBinder",__name:"variable",props:{context:{},current:{},value:{}},setup(i){const t=i,n=e.ref(),o=e.reactive({type:"JSExpression",value:t.value}),r=l=>{n.value.getEditor().setValue(l),o.value=l};return(l,s)=>(e.openBlock(),e.createBlock(e.unref(ie),{title:"绑定变量","unbind-enabled":"",block:t.current,context:t.context,model:o,onPick:r},{default:e.withCtx(()=>[e.createVNode(e.unref(k.XField),{name:"value",label:"绑定内容 [ JSExpression ]",required:""},{editor:e.withCtx(()=>[e.createVNode(e.unref(T),{ref_key:"editorRef",ref:n,modelValue:o.value,"onUpdate:modelValue":s[0]||(s[0]=a=>o.value=a),dark:"",height:"450px"},null,8,["modelValue"])]),_:1})]),_:1},8,["block","context","model"]))}}),Ie=e.defineComponent({name:"EventBinder",__name:"event",props:{context:{},current:{},name:{},event:{}},setup(i){const t=i,n=e.ref(),o=()=>({name:t.name,...t.event,modifiers:Object.keys(t.event?.modifiers||{}),handler:{type:"JSFunction",value:t.event?.handler?.value||"() => {}"}}),r=e.reactive(o()),l=Ve.map(a=>({label:a,value:a})),s=a=>{n.value.getEditor().setValue(a),r.handler.value=a};return(a,c)=>(e.openBlock(),e.createBlock(e.unref(ie),{title:"绑定事件","unbind-enabled":"",block:t.current,context:t.context,model:r,onPick:s},{default:e.withCtx(()=>[e.createVNode(e.unref(k.XField),{name:"modifiers",label:"事件修饰符",editor:"checkbox",options:e.unref(l)},null,8,["options"]),e.createVNode(e.unref(k.XField),{name:"handler.value",label:"事件处理函数 [ JSFunction ]",required:""},{editor:e.withCtx(()=>[e.createVNode(e.unref(T),{ref_key:"editorRef",ref:n,modelValue:r.handler.value,"onUpdate:modelValue":c[0]||(c[0]=d=>r.handler.value=d),dark:"",height:"350px"},null,8,["modelValue"])]),_:1})]),_:1},8,["block","context","model"]))}}),nn=e.defineComponent({name:"EventsWidget",__name:"index",setup(i){const{current:t,context:n}=z(),{selected:o}=K(),{mouseEventList:r,keyboardEventList:l,componentEventList:s}=ct(o),a=e.ref({name:"",event:void 0}),c=e.ref(!1),d=u=>{a.value=I.cloneDeep(u),c.value=!0},m=async u=>{const h={...u,modifiers:u.modifiers.reduce((_,y)=>(_[y]=!0,_),{})};return L(h.handler,n.value,!0)?((o.value?.model).setEvent(h),!0):!1},p=async u=>{const h=o.value?.model;u.name&&(h.removeEvent(u.name),c.value=!1)},v=async()=>{a.value.name&&await ee("确定要删除该事件吗?")&&p(a.value)},f=u=>{const{name:h,modelValue:g}=u;h==="edit"&&d(g),h==="remove"&&p(g)};return(u,h)=>(e.openBlock(),e.createBlock(e.unref(k.XContainer),{class:"v-events-widget",direction:"column",fit:""},{default:e.withCtx(()=>[e.createVNode(e.unref(A),{title:"组件事件",class:"v-sub-panel",size:"small",fit:!1},{default:e.withCtx(()=>[e.unref(s).length?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(b.ElEmpty),{key:0,"image-size":50,description:"该组件无自带事件"})),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(s),g=>(e.openBlock(),e.createBlock(e.unref(M),{title:g.name,"model-value":g,border:"",small:"",actions:g.event?["edit","remove"]:["edit"],active:!!g.event,onClick:_=>d(g),onAction:f},null,8,["title","model-value","actions","active","onClick"]))),256))]),_:1}),e.createVNode(e.unref(A),{title:"鼠标事件",class:"v-sub-panel",size:"small",fit:!1},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(r),g=>(e.openBlock(),e.createBlock(e.unref(M),{title:g.name,"model-value":g,border:"",small:"",actions:g.event?["edit","remove"]:["edit"],active:!!g.event,onClick:_=>d(g),onAction:f},null,8,["title","model-value","actions","active","onClick"]))),256))]),_:1}),e.createVNode(e.unref(A),{title:"键盘事件",class:"v-sub-panel",size:"small",grow:"",fit:!1},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(l),g=>(e.openBlock(),e.createBlock(e.unref(M),{title:g.name,"model-value":g,border:"",small:"",actions:g.event?["edit","remove"]:["edit"],active:!!g.event,onClick:_=>d(g),onAction:f},null,8,["title","model-value","actions","active","onClick"]))),256))]),_:1}),c.value?(e.openBlock(),e.createBlock(e.unref(Ie),{key:0,modelValue:c.value,"onUpdate:modelValue":h[0]||(h[0]=g=>c.value=g),context:e.unref(n),current:e.unref(t),name:a.value.name,event:a.value.event,submitMethod:m,onUnbind:v},null,8,["modelValue","context","current","name","event"])):e.createCommentVNode("",!0)]),_:1}))}}),on=e.defineComponent({name:"CssWidget",__name:"index",setup(i){const{current:t}=z(),n=e.ref(),o=e.computed(()=>t.value?.css||""),r=s=>{t.value?.setCss(s)},l=()=>{const a=(n.value?.getEditor()).getValue();r(a),W("保存成功")};return(s,a)=>(e.openBlock(),e.createBlock(e.unref(A),{class:"v-css-widget v-sub-panel",title:"lang:css scoped",size:"small",fit:"",save:"",onSave:l},{default:e.withCtx(()=>[e.createVNode(e.unref(T),{ref_key:"editorRef",ref:n,"model-value":o.value,height:"100%",lang:"css",dark:"",onBlur:r},null,8,["model-value"])]),_:1}))}}),rn=e.defineComponent({name:"DirectivesWidget",__name:"index",setup(i){const{current:t,context:n}=z(),{selected:o}=K(),{vIf:r,vShow:l,vBind:s,vFor:a,vModels:c,onValueChange:d,onForChange:m,onModelChange:p}=mt(o),v=f=>f.arg?typeof f.arg=="string"?f.arg:D.parseExpression(f.arg,{}):"modelValue";return(f,u)=>(e.openBlock(),e.createBlock(e.unref(k.XContainer),{class:"v-directives-widget",direction:"column",fit:""},{default:e.withCtx(()=>[e.createVNode(e.unref(A),{class:"v-sub-panel",title:"内置指令",size:"small",fit:!1},{default:e.withCtx(()=>[e.createVNode(e.unref(b.ElForm),{size:"small","label-width":"80px",onKeydown:u[0]||(u[0]=e.withKeys(e.withModifiers(()=>{},["prevent","stop"]),["enter"]))},{default:e.withCtx(()=>[e.createVNode(e.unref(G),{name:"vIf",label:"v-if",setters:"ExpressionSetter",current:e.unref(t),context:e.unref(n),value:e.unref(r).value,onChange:e.unref(d)},null,8,["current","context","value","onChange"]),e.createVNode(e.unref(G),{name:"vShow",label:"v-show",setters:"ExpressionSetter",current:e.unref(t),context:e.unref(n),value:e.unref(l).value,onChange:e.unref(d)},null,8,["current","context","value","onChange"]),e.createVNode(e.unref(G),{name:"vBind",label:"v-bind",setters:"ExpressionSetter",current:e.unref(t),context:e.unref(n),value:e.unref(s).value,onChange:e.unref(d)},null,8,["current","context","value","onChange"])]),_:1})]),_:1}),e.createVNode(e.unref(A),{class:"v-sub-panel",title:"循环",size:"small",fit:!1},{default:e.withCtx(()=>[e.createVNode(e.unref(b.ElForm),{size:"small","label-width":"80px",onKeydown:u[1]||(u[1]=e.withKeys(e.withModifiers(()=>{},["prevent","stop"]),["enter"]))},{default:e.withCtx(()=>[e.createVNode(e.unref(G),{name:"value",label:"循环数据",setters:"ExpressionSetter",current:e.unref(t),context:e.unref(n),value:e.unref(a).value,onChange:e.unref(m)},null,8,["current","context","value","onChange"]),e.createVNode(e.unref(G),{name:"item",label:"迭代变量名",setters:{name:"StringSetter",props:{placeholder:"item"}},current:e.unref(t),context:e.unref(n),value:e.unref(a).iterator?.item,onChange:e.unref(m)},null,8,["current","context","value","onChange"]),e.createVNode(e.unref(G),{name:"index",label:"索引变量名",setters:{name:"StringSetter",props:{placeholder:"index"}},current:e.unref(t),context:e.unref(n),value:e.unref(a).iterator?.index,onChange:e.unref(m)},null,8,["current","context","value","onChange"])]),_:1})]),_:1}),e.createVNode(e.unref(A),{class:"v-sub-panel",title:"双向绑定",size:"small",fit:!1,grow:""},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(e.unref(c),(h,g)=>(e.openBlock(),e.createBlock(e.unref(A),{card:"",border:"",class:"v-sub-panel",size:"small",title:`v-model: ${v(h)}`,body:{grow:!1},fit:!1},{default:e.withCtx(()=>[e.createVNode(e.unref(b.ElForm),{size:"small","label-width":"60px",onKeydown:u[2]||(u[2]=e.withKeys(e.withModifiers(()=>{},["prevent","stop"]),["enter"]))},{default:e.withCtx(()=>[e.createVNode(e.unref(G),{name:g.toString(),label:"绑定变量",setters:"ExpressionSetter",current:e.unref(t),context:e.unref(n),value:h.value,onChange:e.unref(p)},null,8,["name","current","context","value","onChange"])]),_:2},1024)]),_:2},1032,["title"]))),256)),e.unref(c).length?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(b.ElEmpty),{key:0,description:"当前组件没有双向绑定属性","image-size":50}))]),_:1})]),_:1}))}}),ln=e.defineComponent({name:"DefinedPropsDialog",__name:"props",props:{item:{},current:{},context:{}},setup(i){const t=i,n=e.computed(()=>t.item?"编辑定义属性":"新增定义属性"),o=e.ref(Object.assign({default:{type:"JSExpression",value:""}},t.item)),r=Object.keys(D.DATA_TYPES).map(s=>({label:s,value:s})),l=async s=>{const a=s.default;return a&&!L(a,t.context,!0)?!1:(t.current.setProp(s),!0)};return(s,a)=>(e.openBlock(),e.createBlock(e.unref(k.XDialogForm),{title:n.value,width:"800px",height:"500px",model:o.value,"form-props":{tooltipMessage:!1},"submit-method":l},{default:e.withCtx(()=>[e.createVNode(e.unref(k.XField),{name:"name",label:"属性名称",required:"",tip:"名称为英文驼峰格式",disabled:!!t.item,rules:{message:"名称格式错误",pattern:e.unref(H)}},null,8,["disabled","rules"]),e.createVNode(e.unref(k.XField),{name:"type",label:"数据类型",editor:"checkbox",props:{button:!0,size:"small"},options:e.unref(r),required:""},null,8,["options"]),e.createVNode(e.unref(k.XField),{name:"required",label:"必须",editor:"switch"}),e.createVNode(e.unref(k.XField),{name:"default.value",label:"默认值",editor:"none"},{default:e.withCtx(()=>[e.createVNode(e.unref(T),{modelValue:o.value.default.value,"onUpdate:modelValue":a[0]||(a[0]=c=>o.value.default.value=c),height:"200px",dark:""},null,8,["modelValue"])]),_:1})]),_:1},8,["title","model"]))}}),an=e.defineComponent({name:"DefinedEventsDialog",__name:"events",props:{item:{},current:{},context:{}},setup(i){const t=i,n=e.computed(()=>t.item?"编辑定义事件":"新增定义事件"),o=e.ref({name:t.item}),r=async l=>(t.item&&t.current.removeEmit(t.item,!0),t.current.setEmit(l.name),!0);return(l,s)=>(e.openBlock(),e.createBlock(e.unref(k.XDialogForm),{title:n.value,width:"600px",height:"200px",model:o.value,"form-props":{tooltipMessage:!1},"submit-method":r},{default:e.withCtx(()=>[e.createVNode(e.unref(k.XField),{name:"name",label:"事件名称",required:"",disabled:!!t.item,rules:{message:"名称格式错误",pattern:e.unref(H)}},null,8,["disabled","rules"])]),_:1},8,["title","model"]))}}),sn=e.defineComponent({name:"DefinedSlotsDialog",__name:"slots",props:{item:{},current:{},context:{}},setup(i){const t=i,n=e.computed(()=>t.item?"编辑定义插槽":"新增定义插槽"),o=e.ref({name:t.item}),r=async l=>(t.item&&t.current.removeSlot(t.item,!0),t.current.setSlot(l.name),!0);return(l,s)=>(e.openBlock(),e.createBlock(e.unref(k.XDialogForm),{title:n.value,width:"600px",height:"200px",model:o.value,"form-props":{tooltipMessage:!1},"submit-method":r},{default:e.withCtx(()=>[e.createVNode(e.unref(k.XField),{name:"name",label:"插槽名称",disabled:!!t.item,required:"",rules:{message:"名称格式错误",pattern:e.unref(H)}},null,8,["disabled","rules"])]),_:1},8,["title","model"]))}}),cn=e.defineComponent({name:"DefinedInjectsDialog",__name:"injects",props:{item:{},current:{},context:{}},setup(i){const t=i,n=e.computed(()=>t.item?"编辑注入":"新增注入"),o=e.ref(Object.assign({default:{type:"JSExpression",value:""}},t.item)),r=async l=>{const s=l.default;return s&&!L(s,t.context,!0)?!1:(t.current.setInject(l),!0)};return(l,s)=>(e.openBlock(),e.createBlock(e.unref(k.XDialogForm),{title:n.value,width:"800px",height:"500px",model:o.value,"form-props":{tooltipMessage:!1},"submit-method":r},{default:e.withCtx(()=>[e.createVNode(e.unref(k.XField),{name:"name",label:"注入名称",required:"",tip:"名称为英文驼峰格式",disabled:!!t.item,rules:{message:"名称格式错误",pattern:e.unref(H)}},null,8,["disabled","rules"]),e.createVNode(e.unref(k.XField),{name:"from",label:"来源名称",tip:"默认和注入名称一致"}),e.createVNode(e.unref(k.XField),{name:"default.value",label:"默认值",editor:"none"},{default:e.withCtx(()=>[e.createVNode(e.unref(T),{modelValue:o.value.default.value,"onUpdate:modelValue":s[0]||(s[0]=a=>o.value.default.value=a),height:"200px",dark:""},null,8,["modelValue"])]),_:1})]),_:1},8,["title","model"]))}}),un=e.defineComponent({name:"DefinedWidget",__name:"index",setup(i){const{current:t,context:n}=z(),o=e.computed(()=>(t.value?.props||[]).map(j=>typeof j=="string"?{name:j}:j)),r=e.computed(()=>t.value?.emits||[]),l=e.computed(()=>t.value?.slots||[]),s=e.computed(()=>t.value?.inject||[]),a=e.ref(!1),c=e.ref(),d=e.ref(!1),m=e.ref(),p=e.ref(!1),v=e.ref(),f=e.ref(!1),u=e.ref(),h=()=>{c.value=void 0,a.value=!0},g=j=>{const{name:P,modelValue:E}=j;P==="edit"&&_(E),P==="remove"&&t.value?.removeProp(E)},_=j=>{c.value=j,a.value=!0},y=()=>{m.value=void 0,d.value=!0},V=j=>{m.value=j,d.value=!0},N=j=>{const{name:P,modelValue:E}=j;P==="edit"&&V(E),P==="remove"&&t.value?.removeEmit(E)},C=()=>{v.value=void 0,p.value=!0},S=j=>{v.value=j,p.value=!0},x=j=>{const{name:P,modelValue:E}=j;P==="edit"&&S(E),P==="remove"&&t.value?.removeSlot(E)},R=()=>{u.value=void 0,f.value=!0},U=j=>{u.value=j,f.value=!0},Q=j=>{const{name:P,modelValue:E}=j;P==="edit"&&U(E),P==="remove"&&t.value?.removeInject(E)};return(j,P)=>e.unref(t)&&e.unref(n)?(e.openBlock(),e.createBlock(e.unref(k.XContainer),{key:0,class:"v-defined-widget",direction:"column",fit:""},{default:e.withCtx(()=>[e.createVNode(e.unref(A),{class:"v-sub-panel",title:"定义属性",size:"small",plus:"",fit:!1,onPlus:h},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(o.value,E=>(e.openBlock(),e.createBlock(e.unref(M),{"model-value":E,title:E.name,border:"",actions:["edit","remove"],onClick:te=>_(E),onAction:g},null,8,["model-value","title","onClick"]))),256)),o.value.length?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(b.ElEmpty),{key:0,"image-size":50})),a.value?(e.openBlock(),e.createBlock(ln,{key:1,current:e.unref(t),context:e.unref(n),modelValue:a.value,"onUpdate:modelValue":P[0]||(P[0]=E=>a.value=E),item:c.value},null,8,["current","context","modelValue","item"])):e.createCommentVNode("",!0)]),_:1}),e.createVNode(e.unref(A),{class:"v-sub-panel",title:"定义事件",size:"small",plus:"",fit:!1,onPlus:y},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(r.value,E=>(e.openBlock(),e.createBlock(e.unref(M),{"model-value":E,title:E,border:"",actions:["remove"],onClick:te=>V(E),onAction:N},null,8,["model-value","title","onClick"]))),256)),r.value.length?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(b.ElEmpty),{key:0,"image-size":50})),d.value?(e.openBlock(),e.createBlock(an,{key:1,modelValue:d.value,"onUpdate:modelValue":P[1]||(P[1]=E=>d.value=E),current:e.unref(t),context:e.unref(n),item:m.value},null,8,["modelValue","current","context","item"])):e.createCommentVNode("",!0)]),_:1}),e.createVNode(e.unref(A),{class:"v-sub-panel",title:"定义插槽",size:"small",plus:"",fit:!1,onPlus:C},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(l.value,E=>(e.openBlock(),e.createBlock(e.unref(M),{"model-value":E,title:E,border:"",actions:["remove"],onClick:te=>S(E),onAction:x},null,8,["model-value","title","onClick"]))),256)),l.value.length?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(b.ElEmpty),{key:0,"image-size":50})),p.value?(e.openBlock(),e.createBlock(sn,{key:1,modelValue:p.value,"onUpdate:modelValue":P[2]||(P[2]=E=>p.value=E),current:e.unref(t),context:e.unref(n),item:v.value},null,8,["modelValue","current","context","item"])):e.createCommentVNode("",!0)]),_:1}),e.createVNode(e.unref(A),{class:"v-sub-panel",title:"注入",size:"small",plus:"",fit:!1,grow:"",onPlus:R},{default:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(s.value,E=>(e.openBlock(),e.createBlock(e.unref(M),{"model-value":E,title:E.name,border:"",actions:["remove"],onClick:te=>U(E),onAction:Q},null,8,["model-value","title","onClick"]))),256)),s.value.length?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(b.ElEmpty),{key:0,"image-size":50})),f.value?(e.openBlock(),e.createBlock(cn,{key:1,modelValue:f.value,"onUpdate:modelValue":P[3]||(P[3]=E=>f.value=E),current:e.unref(t),context:e.unref(n),item:u.value},null,8,["modelValue","current","context","item"])):e.createCommentVNode("",!0)]),_:1})]),_:1})):e.createCommentVNode("",!0)}}),dn=e.defineComponent({name:"DataSourceDialogForm",__name:"form",props:{context:{},current:{},item:{}},setup(i){const t=i,{apis:n}=pt(),o=()=>({type:"api",ref:"",name:"",label:"",transform:{type:"JSFunction",value:`(res) => {
|
package/dist/index.mjs
CHANGED
|
@@ -11,10 +11,10 @@ import { useClipboard as Os, useElementSize as Yt } from "@vueuse/core";
|
|
|
11
11
|
* Copyright (c) 2024, VTJ.PRO All rights reserved.
|
|
12
12
|
* @name @vtj/designer
|
|
13
13
|
* @author CHC chenhuachun1549@dingtalk.com
|
|
14
|
-
* @version 0.7.
|
|
14
|
+
* @version 0.7.12
|
|
15
15
|
* @license <a href="https://vtj.pro/license.html">MIT License</a>
|
|
16
16
|
*/
|
|
17
|
-
const Ws = "0.7.
|
|
17
|
+
const Ws = "0.7.12", St = {
|
|
18
18
|
width: 390,
|
|
19
19
|
height: 844
|
|
20
20
|
}, Vt = {
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vtj/designer",
|
|
3
3
|
"private": false,
|
|
4
|
-
"version": "0.7.
|
|
4
|
+
"version": "0.7.12",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"scripts": {
|
|
7
7
|
"build": "vue-tsc && vite build",
|
|
@@ -10,15 +10,15 @@
|
|
|
10
10
|
"coverage": "vitest run --coverage"
|
|
11
11
|
},
|
|
12
12
|
"dependencies": {
|
|
13
|
-
"@vtj/core": "^0.7.
|
|
14
|
-
"@vtj/icons": "^0.7.
|
|
15
|
-
"@vtj/renderer": "^0.7.
|
|
16
|
-
"@vtj/ui": "^0.7.
|
|
17
|
-
"@vtj/utils": "^0.7.
|
|
13
|
+
"@vtj/core": "^0.7.12",
|
|
14
|
+
"@vtj/icons": "^0.7.12",
|
|
15
|
+
"@vtj/renderer": "^0.7.12",
|
|
16
|
+
"@vtj/ui": "^0.7.12",
|
|
17
|
+
"@vtj/utils": "^0.7.12",
|
|
18
18
|
"monaco-editor": "~0.45.0"
|
|
19
19
|
},
|
|
20
20
|
"devDependencies": {
|
|
21
|
-
"@vtj/cli": "^0.7.
|
|
21
|
+
"@vtj/cli": "^0.7.9",
|
|
22
22
|
"vue": "~3.4.15",
|
|
23
23
|
"vue-router": "~4.2.5"
|
|
24
24
|
},
|
|
@@ -40,5 +40,5 @@
|
|
|
40
40
|
"publishConfig": {
|
|
41
41
|
"access": "public"
|
|
42
42
|
},
|
|
43
|
-
"gitHead": "
|
|
43
|
+
"gitHead": "e893df5593e0df19de9fdc35c486faef1a31f273"
|
|
44
44
|
}
|
package/types/version.d.ts
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* Copyright (c) 2024, VTJ.PRO All rights reserved.
|
|
3
3
|
* @name @vtj/designer
|
|
4
4
|
* @author CHC chenhuachun1549@dingtalk.com
|
|
5
|
-
* @version 0.7.
|
|
5
|
+
* @version 0.7.12
|
|
6
6
|
* @license <a href="https://vtj.pro/license.html">MIT License</a>
|
|
7
7
|
*/
|
|
8
|
-
export declare const version = "0.7.
|
|
8
|
+
export declare const version = "0.7.12";
|