epic-designer-gold 1.0.7 → 1.0.8

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.
Files changed (27) hide show
  1. package/dist/{attributeView-CcnkUeu9.js → attributeView-4j---k7X.js} +1 -1
  2. package/dist/{attributeView-BCjRZKcy.cjs → attributeView-DOL6IUO8.cjs} +1 -1
  3. package/dist/{index-BydHABbW.js → index--PWf2Ut2.js} +1 -1
  4. package/dist/{index-C2s4IuAR.cjs → index-B4sqskGf.cjs} +1 -1
  5. package/dist/{index-BHEw6RsQ.cjs → index-BBVUGri_.cjs} +1 -1
  6. package/dist/{index-CD00bJyK.js → index-BJHU3Dzu.js} +1 -1
  7. package/dist/{index-BU05X44j.cjs → index-CPkRsFQ7.cjs} +1 -1
  8. package/dist/index-CXI_7l7O.js +1422 -0
  9. package/dist/{index-IPz4bbk7.cjs → index-CYxg6AdN.cjs} +1 -1
  10. package/dist/{index-E8jDNKrc.js → index-Cctdx_Vq.js} +1 -1
  11. package/dist/index-DOZPyH6X.cjs +10 -0
  12. package/dist/{index-CpBfljmg.cjs → index-Dftp7CV4.cjs} +1 -1
  13. package/dist/{index-vCJWgHu-.js → index-DiQ4ZTF7.js} +1 -1
  14. package/dist/{index-5yjG3fiB.cjs → index-DqLjoo13.cjs} +1 -1
  15. package/dist/{index-BvfkMKTv.cjs → index-Dz59dUur.cjs} +1 -1
  16. package/dist/{index-BvvGezNc.js → index-DzC3poxn.js} +1 -1
  17. package/dist/index-JlyEcj-r.js +4 -0
  18. package/dist/{index-CG0UEELU.js → index-zxyA8Keq.js} +1 -1
  19. package/dist/index.cjs +1 -1
  20. package/dist/index.js +1 -1
  21. package/dist/{styleView-DocskQJQ.cjs → styleView-CNmD046X.cjs} +1 -1
  22. package/dist/{styleView-Dhj1GDqf.js → styleView-DLmxP2vS.js} +1 -1
  23. package/package.json +1 -1
  24. package/vite.config.ts.timestamp-1748427578982-d7ce374e905ab.mjs +78 -0
  25. package/dist/index-0WmqAKuy.js +0 -4
  26. package/dist/index-BY37Ndo7.cjs +0 -10
  27. package/dist/index-GIYb626z.js +0 -1422
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./index-BY37Ndo7.cjs");exports.default=e._sfc_main;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./index-DOZPyH6X.cjs");exports.default=e._sfc_main;
@@ -1,6 +1,6 @@
1
1
  import { defineComponent as L, computed as C, inject as D, openBlock as n, createElementBlock as i, Fragment as g, renderList as k, createElementVNode as p, unref as c, toDisplayString as q, createVNode as y, createCommentVNode as M, ref as T, watchEffect as E, createBlock as F, withCtx as O, createTextVNode as I } from "vue";
2
2
  import { p as N, a as B } from "./pluginManager-BCnrHPYv.js";
3
- import { _ as U, g as A } from "./index-GIYb626z.js";
3
+ import { _ as U, g as A } from "./index-CXI_7l7O.js";
4
4
  import { _ as z } from "./icon.vue_vue_type_script_setup_true_lang-D3QdcReY.js";
5
5
  import { u as $ } from "./index-B1s67XDZ.js";
6
6
  const R = [
@@ -0,0 +1,10 @@
1
+ "use strict";const e=require("vue"),w=require("./pluginManager-DWHAX8kP.cjs"),J=require("./index-BoL2PSBk.cjs"),re=require("./axios-tuVKNgv9.cjs");function he(t,o){let s=null;return(...i)=>{s&&clearTimeout(s),s=setTimeout(()=>{t(...i)},o)}}function ne(){const t=e.ref({}),o=e.ref({}),s=e.ref(!1),i=e.ref([]),u=e.reactive({});function c(m){return t.value[m]}function y(m,b){t.value[m]=b}function v(m){delete t.value[m]}function h(m,b=!1){const _=Object.entries(w.pluginManager.publicMethods).reduce(($,[E,R])=>($[E]=R.handler,$),{});try{new Function(`const epic = this;${m}`).bind({..._,getComponent:c,find:c,defineExpose:M,publicMethods:_,pluginManager:w.pluginManager})()}catch($){b&&console.error("[epic:自定义函数]异常:",$)}}function M(m){m!=null&&(o.value=m)}function I(m,...b){if(!m||m.length===0){console.warn("未提供任何动作");return}m.forEach(_=>{const $=_.args?JSON.parse(_.args):b;switch(_.type){case"public":n(_,$);break;case"custom":O(_,$);break;case"component":d(_,$);break;default:console.warn(`未知的动作类型: ${_.type}`);break}})}function n(m,b){var _;try{(_=w.pluginManager.publicMethods[m.methodName])==null||_.handler(...b)}catch($){console.error(`[Epic:公共函数(${m.methodName})]执行异常:`,$)}}function O(m,b){var _,$;try{($=(_=o.value)[m.methodName])==null||$.call(_,...b)}catch(E){console.error(`[Epic:自定义函数(${m.methodName})]执行异常:`,E)}}function d(m,b){const _=m.componentId!=null&&c(m.componentId);if(!_){console.warn(`[Epic:组件${m.componentId}]未找到`);return}try{_[m.methodName](...b)}catch($){console.error(`[Epic:组件${m.componentId}函数(${m.methodName})]执行异常:`,$)}}function S(m=!0){s.value=m}function g(m){const b=w.findSchemas(m,()=>!0);i.value=b.map(_=>_.id)}function A(m,b="default"){if(u[b]){const _=u[b];w.deepCompareAndModify(m,_)}u[b]=m}function F(m,b="default"){if(u[b]){w.deepCompareAndModify(u[b],m,!1);return}u[b]=m}return{componentInstances:t,funcs:o,isDesignMode:s,defaultComponentIds:i,forms:u,addFormData:A,setFormData:F,getComponentInstance:c,find:c,addComponentInstance:y,removeComponentInstance:v,setMethods:h,doActions:I,setDesignMode:S,setDefaultComponentIds:g}}function se(){const t=e.ref([]),o=e.ref([]),s=e.ref(null);let i=0;function u(h,M="插入组件"){const I=Date.now();i+150>I||(i=I,s.value!=null&&(t.value.push(s.value),o.value.splice(0,o.value.length)),s.value={type:M,componentSchema:JSON.stringify(h)},t.value.length>60&&t.value.unshift())}function c(){if(t.value.length===0)return!1;const h=t.value.pop();return s.value!=null&&o.value.push(s.value),s.value=h,JSON.parse(h.componentSchema)}function y(){if(o.value.length===0)return!1;const h=o.value.pop();return s.value!=null&&t.value.push(s.value),s.value=h,JSON.parse(h.componentSchema)}function v(){t.value=[],o.value=[],s.value=null}return{recordList:t,undoList:o,currentRecord:s,push:u,undo:c,redo:y,reset:v}}const ve=e.defineComponent({__name:"dynamicFormItem",props:{hasFormItem:{type:Boolean},formItemProps:{}},emits:["updateFormItemRef"],setup(t,{emit:o}){const s=w.pluginManager.getComponent("form-item"),i=t,u=o,c=e.ref(),y=()=>{u("updateFormItemRef",c.value)};return(v,h)=>i.hasFormItem?(e.openBlock(),e.createBlock(e.unref(s),e.mergeProps({key:0,ref_key:"formItemRef",ref:c,onVnodeMounted:y},i.formItemProps),{default:e.withCtx(()=>[e.renderSlot(v.$slots,"default")]),_:3},16,["onVnodeMounted"])):e.renderSlot(v.$slots,"default",{key:1})}}),le=e.defineComponent({name:"ENode",__name:"node",props:{componentSchema:{},modelValue:{},ruleField:{},resetFormData:{type:Boolean},name:{},dynamicId:{},sourceDateUrl:{},id:{}},emits:["update:modelValue","change","update:dynamicId"],setup(t,{emit:o}){const{proxy:s}=e.getCurrentInstance(),i=t,u=e.ref(null);let c=e.inject("formData",e.reactive({}));const y=e.inject("slots",{}),v=e.inject("pageManager",{}),h=e.inject("disabled",{value:!1}),M=e.inject("ruleFieldPrefix",null),I=e.inject("resetFormData",!1);let n=e.reactive(w.deepClone(i.componentSchema));S();async function O(r){if(["cascader","checkbox","select","radio"].includes(r.type)&&r.componentProps.dynamicId&&i.sourceDateUrl){const p=(await re.axios({url:i.sourceDateUrl,method:"get",params:{id:r.componentProps.dynamicId},headers:{Authorization:"Bearer "+J.api.get("Admin-Token"),lang:J.api.get("saas-locale")||"zh-CN",zone:Intl.DateTimeFormat().resolvedOptions().timeZone}})).data.data;let B=await re.axios({url:p.url,method:p.method,data:JSON.parse(p.body),params:JSON.parse(p.params),headers:{...JSON.parse(p.headers),Authorization:"Bearer "+J.api.get("Admin-Token"),lang:J.api.get("saas-locale")||"zh-CN",zone:Intl.DateTimeFormat().resolvedOptions().timeZone}});if(p&&(p!=null&&p.dataPath)){const K=p.dataPath.split(".").reduce((W,Q)=>W[Q],B.data);r.componentProps.options=d(K,p.dataKey,p.dataValue)}else r.componentProps.options=d(B.data,p.dataKey,p.dataValue);return r}return r}function d(r,l,C){return r&&Object.prototype.toString.call(r)==="[object Array]"?r.map(p=>p.children&&p.children.length?{label:p[l],value:p[C]+"",children:d(p.children,l,C)}:{label:p[l],value:p[C]+""}):[]}e.watch(()=>i.componentSchema,r=>{w.deepEqual(n,r,["children"])||(w.deepCompareAndModify(n,w.deepClone(r)),S())},{deep:!0});function S(){v.isDesignMode.value&&typeof n.field=="string"&&(n.field+="-design-mode")}(i.resetFormData||I)&&(c={});const g=o,A=e.ref(),F=e.ref(),m=r=>{F.value=r},b=e.useAttrs();Object.keys(b).length&&e.provide("nodeAttrs",b);const _=e.shallowRef(null),$=e.computed(()=>{var r,l;return(r=n.componentProps)!=null&&r.hidden?!1:typeof n.show=="boolean"?n.show:((l=n.show)==null?void 0:l.call(n,{values:c}))??!0}),E=e.computed(()=>{var p;const r=$.value&&((p=n.rules)==null?void 0:p.map(B=>({...B,validator:B.validator&&v.funcs.value[B.validator]})));let l=n.field;i.ruleField?l=i.ruleField:M&&n.field&&(l=w.deepClone(M),l.push(n.field));const C={...n,rules:r,rule:r,field:l};return C.children&&delete C.children,C}),R=e.computed(()=>{var C,p;const r=((C=T.value)==null?void 0:C.bindModel)??"modelValue",l={};return n.on&&Object.keys(n.on).forEach(B=>{l[`on${w.capitalizeFirstLetter(B)}`]=(...U)=>v.doActions(n.on[B],...U)}),{...i,...n.componentProps,disabled:(h==null?void 0:h.value)||((p=n.componentProps)==null?void 0:p.disabled),bindModel:r,...l}}),T=e.computed(()=>w.pluginManager.getComponentConfingByType(n.type)??null);e.watchEffect(()=>{u.value=i.modelValue??c[n.field??""]}),e.watch(()=>u.value,()=>{u.value!==(i.modelValue??c[n.field??""])&&a(u.value)}),e.watch(()=>A.value,()=>{N()},{immediate:!0});function N(){var l;const r=A.value||s;n.id&&r&&((n.input||n.type==="table"&&n.field||n.type==="card"&&n.field&&n.multiple)&&(r.setValue=a,r.getValue=()=>c[n.field]||i.modelValue),r.setAttr=(C,p)=>(n.componentProps||(n.componentProps={}),n.componentProps[C]=p),r.getAttr=C=>n.componentProps[C],v.addComponentInstance(n.id,r),(l=T.value)!=null&&l.defaultSchema.input&&n.noFormItem!==!0&&F.value&&v.addComponentInstance(n.id+"formItem",F.value))}function D(){var r;n.id&&(v.removeComponentInstance(n.id),(r=T.value)!=null&&r.defaultSchema.input&&n.noFormItem!==!0&&v.removeComponentInstance(n.id+"formItem"))}async function q(){var l,C,p;if(n=await O(n),typeof((l=n.componentProps)==null?void 0:l.defaultValue)<"u"){const B=v.isDesignMode.value?(C=n.componentProps)==null?void 0:C.defaultValue:c[n.field]??((p=n.componentProps)==null?void 0:p.defaultValue);a(w.deepClone(B))}if(n.type==="slot"){const B=n.slotName;if(!B)return;_.value=e.defineComponent({setup(){return()=>e.renderSlot(y,B,{componentSchema:n,model:c})}});return}const r=w.pluginManager.getComponent(n.type);if(!r){console.error(`组件${n.type}未注册`);return}if(typeof r=="function"){const B=await r();_.value=B.default??B}else _.value=r}function f(r){Object.prototype.toString.call(r),Object.prototype.toString.call(r)==="[object Array]"?r.forEach(l=>{c[l.value]=l.label}):c[r.value]=r.label,i.id&&w.EventBus.emit("updateformData"+i.id,c)}function a(r){g("update:modelValue",r),g("change",r),n.field&&(c[n.field]=r),i.id&&w.EventBus.emit("updateformData"+i.id,c)}function V(r){g("update:dynamicId",r)}let P=null;return e.watch(()=>n,async r=>{const l=JSON.stringify({...r,children:void 0,componentProps:{...r.componentProps,options:null}});if(l===P)return!1;q(),P=l},{immediate:!0,deep:!0}),e.onUnmounted(D),(r,l)=>{var p;const C=e.resolveComponent("ENode");return _.value&&$.value?(e.openBlock(),e.createBlock(ve,{key:0,hasFormItem:e.unref(n).noFormItem!==!0&&((p=T.value)==null?void 0:p.defaultSchema.input),formItemProps:E.value,onUpdateFormItemRef:m},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(_.value),e.mergeProps({ref_key:"componentInstance",ref:A,onVnodeMounted:N,model:e.unref(c)},{...R.value},{[R.value.bindModel]:u.value,["onUpdate:"+R.value.bindModel]:l[0]||(l[0]=B=>u.value=B),[`onUpdate:${R.value.bindModel}`||""]:a,"onUpdate:modelValueLabel":f,"onUpdate:dynamicId":V}),{node:e.withCtx(B=>[e.createVNode(C,e.mergeProps({id:i.id},B,{sourceDateUrl:i.sourceDateUrl}),null,16,["id","sourceDateUrl"])]),"edit-node":e.withCtx(()=>[e.renderSlot(r.$slots,"edit-node")]),_:3},16,["model"]))]),_:3},8,["hasFormItem","formItemProps"])):e.createCommentVNode("",!0)}}});function ge(){const t=e.ref(!1),o=ne(),s=e.ref({});function i(){return new Promise(d=>{if(t.value)d();else{const S=e.watch(t,()=>{S(),d()})}})}async function u(d="default"){var g;await i();const S=(g=s.value)==null?void 0:g[d];if(!S)throw new Error(`表单 [name=${d}] 不存在`);return S}async function c(d,S){const g=await u(d);return w.deepClone(await S(g))}async function y(d="default"){return await c(d,S=>S.getData())}function v(d,S="default",g=void 0){var A,F;if(g&&Object.keys(g).length){let m=function(E){let R=[];return E.forEach(T=>{T.children&&(R=[...R,...m(T.children)]),R.push(T)}),R},_=function(E){var T;let R=m((T=g==null?void 0:g.schemas[0])==null?void 0:T.children);return Object.keys(E).forEach(N=>{var f,a,V,P,r;const D=R.find(l=>l.field===N),q=["datetimerange","daterange","monthrange","dates"];if((D&&(D==null?void 0:D.type)==="checkbox"||(D==null?void 0:D.type)==="select"&&((f=D==null?void 0:D.componentProps)!=null&&f.multiple)||(D==null?void 0:D.type)==="date"&&q.includes((a=D==null?void 0:D.componentProps)==null?void 0:a.type))&&typeof E[N]=="string")E[N]=(V=E[N])==null?void 0:V.split(",");else if((D==null?void 0:D.type)==="cascader"&&((r=(P=D==null?void 0:D.componentProps)==null?void 0:P.props)!=null&&r.multiple)&&typeof E[N]=="string")E[N].indexOf(";")>-1?E[N]=E[N].split(";").map(l=>l.split(",")):E[N]=E[N].split(","),E[N].indexOf(";")>-1?E[N]=E[N].split(";").map(l=>l.split(",")):E[N]=E[N].split(",");else if(((D==null?void 0:D.type)==="upload-image"||(D==null?void 0:D.type)==="upload-file")&&typeof E[N]=="string"){let l=[];Object.entries(E).forEach(([C,p])=>{E[N]===p&&C!==D.field&&C.indexOf("@")>-1&&C.indexOf(N)>-1&&(l=C.split("@")[1].split(","))}),E[N]=E[N].split(",").map((C,p)=>({url:C,name:l[p]||C}))}else(D==null?void 0:D.type)==="number"||(D==null?void 0:D.type)==="slider"?E[N]=Number(E[N]):(D==null?void 0:D.type)==="switch"&&(E[N]=typeof E[N]=="boolean"?E[N]:E[N].indexOf("true")>-1)}),E}(d);o.setFormData(_,S);const $=(A=s.value)==null?void 0:A[S];$==null||$.clearValidate()}else{o.setFormData(d,S);const m=(F=s.value)==null?void 0:F[S];m==null||m.clearValidate()}}async function h(d="default"){return await c(d,async S=>(await S.validate(),await S.getData()))}async function M(d){await i();const S={};for(const g in s.value){const A=s.value[g];A&&(S[g]=w.deepClone(await d(A)))}return S}async function I(){return await M(d=>d.getData())}function n(d){for(const S in d)v(d[S],S)}async function O(){return await M(async d=>(await d.validate(),await d.getData()))}return{ready:t,pageManager:o,forms:s,getData:y,setData:v,validate:h,getForms:I,setForms:n,validateAll:O,getFormInstance:u}}const ye={key:0,class:"epic-loading-box"},we={class:"epic-builder-main"},Se={class:"epic-loading-box"},ie=e.defineComponent({__name:"builder",props:{pageSchema:{},formData:{},disabled:{type:Boolean},sourceDateUrl:{},id:{}},emits:["change","ready"],setup(t,{expose:o,emit:s}){const i=w.loadAsyncComponent(()=>Promise.resolve().then(()=>require("./index-Cap7FkuS.cjs"))),u=s,c=e.ref([]),y=e.ref({}),{ready:v,pageManager:h,forms:M,getData:I,setData:n,validate:O,getForms:d,setForms:S,validateAll:g,getFormInstance:A}=ge(),F=t,m=e.reactive({schemas:[]});e.watch(()=>F.pageSchema,f=>{w.deepCompareAndModify(m,f)},{immediate:!0,deep:!0}),e.watch(()=>F.formData,f=>{if(f){let a=T(f);y.value=a,n(a)}},{immediate:!0,deep:!0});function b(f){let a=[];return f.forEach(V=>{V.children&&(a=[...a,...b(V.children)]),a.push(V)}),a}function _(f,a){function V(r){return JSON.parse(JSON.stringify(r))}function P(r,l){if(r.type==="card"&&r.multiple&&r.field&&Array.isArray(l[r.field]))return l[r.field].map(p=>{var U;const B=V({...r,multiple:!0});return B.children=(U=B.children)==null?void 0:U.map(K=>P(K,p)).flat(),B});const C=V(r);return Array.isArray(C.children)&&(C.children=C.children.map(p=>P(p,l)).flat()),C}return f.map(r=>P(r,a)).flat()}function $(f,a="",V={root:0}){const P=a||"root";return a||(V.root=0),V[P]===void 0&&(V[P]=0),f.map(r=>{r.field&&(r.oldField=JSON.parse(JSON.stringify(r.field)));const l={...r};if(r.type==="card"){const C=r.field||"";r.multiple?(l.field=a?`${a}.${C}[${V[P]}]`:`${C}[${V[P]}]`,V[P]++):r.field&&a&&(l.field=`${a}.${C}`);const p=l.field||a;V[p]=0}else r.field&&a&&(l.field=`${a}.${r.field}`);return r.children&&(l.children=$(r.children,l.field||a,V)),l})}function E(f,a,V="",P={}){const r=V||"root";return P[r]===void 0&&(P[r]=0),f.forEach(l=>{const C=l.field||"";let p=V?`${V}.${C}`:`${C}`;l.type==="card"&&l.multiple?(typeof a[p][`${P[r]}`]=="object"?Object.keys(a[p][`${P[r]}`]).forEach(B=>{a[`${p}[${P[r]}].${B}`]=a[p][`${P[r]}`][B]}):a[`${p}[${P[r]}]`]=a[p][`${P[r]}`],l.children&&(l.children=E(l.children,a,`${p}[${P[r]}]`||V,P)),P[r]++):l.children&&(l.children=E(l.children,a,V,P))}),P[r]=0,a}function R(f,a,V){let P=E(w.deepClone(f),w.deepClone(a));return{obj:$(f),dataObj:P}}function T(f){let a=b(F.pageSchema.schemas[0].children);c.value=a.filter(l=>l.type==="card"&&l.multiple);const V=_(F.pageSchema.schemas[0].children,f);let{obj:P,dataObj:r}=R(V,f,c.value);return f=r,console.log("%c [ ]-277","font-size:13px; background:pink; color:#bf2c9f;",P,r),F.pageSchema.schemas[0].children=P,Object.keys(f).forEach(l=>{var C,p,B,U,K,W,Q;if(l.indexOf("@")<0){const x=a.find(k=>k.field===l),me=["datetimerange","daterange","monthrange","dates"];if((x&&(x==null?void 0:x.type)==="checkbox"||(x==null?void 0:x.type)==="select"&&((C=x==null?void 0:x.componentProps)!=null&&C.multiple)||(x==null?void 0:x.type)==="cascader"&&!((B=(p=x==null?void 0:x.componentProps)==null?void 0:p.props)!=null&&B.multiple)||(x==null?void 0:x.type)==="date"&&me.includes((U=x==null?void 0:x.componentProps)==null?void 0:U.type))&&typeof f[l]=="string")f[l]=(K=f[l])==null?void 0:K.split(",");else if((x==null?void 0:x.type)==="cascader"&&((Q=(W=x==null?void 0:x.componentProps)==null?void 0:W.props)!=null&&Q.multiple)&&typeof f[l]=="string")f[l].indexOf(";")>-1?f[l]=f[l].split(";").map(k=>k.split(",")):f[l]=f[l].split(","),f[l].indexOf(";")>-1?f[l]=f[l].split(";").map(k=>k.split(",")):f[l]=f[l].split(",");else if(((x==null?void 0:x.type)==="upload-image"||(x==null?void 0:x.type)==="upload-file")&&typeof f[l]=="string"){let k=[];Object.entries(f).forEach(([L,X])=>{f[l]===X&&L!==x.field&&L.indexOf("@")>-1&&L.indexOf(l)>-1&&(k=L.split("@")[1].split(","))}),f[l]=f[l].split(",").map((L,X)=>({url:L,name:k[X]||L}))}else(x==null?void 0:x.type)==="number"||(x==null?void 0:x.type)==="slider"?f[l]=Number(f[l]):(x==null?void 0:x.type)==="switch"&&(f[l]=typeof f[l]=="boolean"?f[l]:f[l].indexOf("true")>-1)}}),f}e.watch(()=>m.script,f=>{f&&h.setMethods(f,!0)},{immediate:!0}),e.provide("slots",e.useSlots()),e.provide("pageManager",h),e.provide("forms",M),e.provide("pageSchema",m),e.provide("disabled",e.computed(()=>F.disabled));const N=e.getCurrentInstance(),D=N==null?void 0:N.proxy;function q(){e.nextTick(()=>{v.value=!0,u("ready",h),D&&h.addComponentInstance("builder",D)})}return w.EventBus.on("updateformData"+F.id,f=>{F.id&&u("change",f)}),o({ready:v,pageManager:h,getData:I,setData:n,validate:O,getForms:d,setForms:S,validateAll:g,getFormInstance:A}),(f,a)=>e.unref(w.pluginManager).initialized.value?(e.openBlock(),e.createBlock(e.Suspense,{key:1,onResolve:q},{default:e.withCtx(()=>[e.createElementVNode("div",we,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.schemas,(V,P)=>(e.openBlock(),e.createBlock(e.unref(le),{id:F.id,key:P,sourceDateUrl:F.sourceDateUrl,componentSchema:V},null,8,["id","sourceDateUrl","componentSchema"]))),128))])]),fallback:e.withCtx(()=>[e.createElementVNode("div",Se,[e.createVNode(e.unref(i))])]),_:1})):(e.openBlock(),e.createElementBlock("div",ye))}});function oe(t){return e.getCurrentScope()?(e.onScopeDispose(t),!0):!1}function Ee(t){let o=0,s,i;const u=()=>{o-=1,i&&o<=0&&(i.stop(),s=void 0,i=void 0)};return(...c)=>(o+=1,i||(i=e.effectScope(!0),s=i.run(()=>t(...c))),oe(u),s)}function H(t){return typeof t=="function"?t():e.unref(t)}const De=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const be=t=>typeof t<"u",xe=Object.prototype.toString,Ce=t=>xe.call(t)==="[object Object]",Ae=()=>{};function Ie(t){return e.getCurrentInstance()}function Oe(t,o=!0,s){Ie()?e.onMounted(t,s):o?t():e.nextTick(t)}function _e(t=!1,o={}){const{truthyValue:s=!0,falsyValue:i=!1}=o,u=e.isRef(t),c=e.ref(t);function y(v){if(arguments.length)return c.value=v,c.value;{const h=H(s);return c.value=c.value===h?H(i):h,c.value}}return u?y:[c,y]}function Ne(t,o,s){const i=e.watch(t,(...u)=>(e.nextTick(()=>i()),o(...u)),s);return i}const Y=De?window:void 0;function z(t){var o;const s=H(t);return(o=s==null?void 0:s.$el)!=null?o:s}function Pe(...t){let o,s,i,u;if(typeof t[0]=="string"||Array.isArray(t[0])?([s,i,u]=t,o=Y):[o,s,i,u]=t,!o)return Ae;Array.isArray(s)||(s=[s]),Array.isArray(i)||(i=[i]);const c=[],y=()=>{c.forEach(I=>I()),c.length=0},v=(I,n,O,d)=>(I.addEventListener(n,O,d),()=>I.removeEventListener(n,O,d)),h=e.watch(()=>[z(o),H(u)],([I,n])=>{if(y(),!I)return;const O=Ce(n)?{...n}:n;c.push(...s.flatMap(d=>i.map(S=>v(I,d,S,O))))},{immediate:!0,flush:"post"}),M=()=>{h(),y()};return oe(M),M}function Me(t){return typeof t=="function"?t:typeof t=="string"?o=>o.key===t:Array.isArray(t)?o=>t.includes(o.key):()=>!0}function ae(...t){let o,s,i={};t.length===3?(o=t[0],s=t[1],i=t[2]):t.length===2?typeof t[1]=="object"?(o=!0,s=t[0],i=t[1]):(o=t[0],s=t[1]):(o=!0,s=t[0]);const{target:u=Y,eventName:c="keydown",passive:y=!1,dedupe:v=!1}=i,h=Me(o);return Pe(u,c,I=>{I.repeat&&H(v)||h(I)&&s(I)},y)}function j(t,o,s={}){return ae(t,o,{...s,eventName:"keydown"})}function ee(t,o,s={}){return ae(t,o,{...s,eventName:"keyup"})}function Ve(){const t=e.ref(!1),o=e.getCurrentInstance();return o&&e.onMounted(()=>{t.value=!0},o),t}function $e(t){const o=Ve();return e.computed(()=>(o.value,!!t()))}function Be(t){return JSON.parse(JSON.stringify(t))}function ce(t,o,s={}){const{window:i=Y,...u}=s;let c;const y=$e(()=>i&&"ResizeObserver"in i),v=()=>{c&&(c.disconnect(),c=void 0)},h=e.computed(()=>{const n=H(t);return Array.isArray(n)?n.map(O=>z(O)):[z(n)]}),M=e.watch(h,n=>{if(v(),y.value&&i){c=new ResizeObserver(o);for(const O of n)O&&c.observe(O,u)}},{immediate:!0,flush:"post"}),I=()=>{v(),M()};return oe(I),{isSupported:y,stop:I}}function Fe(t,o={width:0,height:0},s={}){const{window:i=Y,box:u="content-box"}=s,c=e.computed(()=>{var n,O;return(O=(n=z(t))==null?void 0:n.namespaceURI)==null?void 0:O.includes("svg")}),y=e.ref(o.width),v=e.ref(o.height),{stop:h}=ce(t,([n])=>{const O=u==="border-box"?n.borderBoxSize:u==="content-box"?n.contentBoxSize:n.devicePixelContentBoxSize;if(i&&c.value){const d=z(t);if(d){const S=d.getBoundingClientRect();y.value=S.width,v.value=S.height}}else if(O){const d=Array.isArray(O)?O:[O];y.value=d.reduce((S,{inlineSize:g})=>S+g,0),v.value=d.reduce((S,{blockSize:g})=>S+g,0)}else y.value=n.contentRect.width,v.value=n.contentRect.height},s);Oe(()=>{const n=z(t);n&&(y.value="offsetWidth"in n?n.offsetWidth:o.width,v.value="offsetHeight"in n?n.offsetHeight:o.height)});const M=e.watch(()=>z(t),n=>{y.value=n?o.width:0,v.value=n?o.height:0});function I(){h(),M()}return{width:y,height:v,stop:I}}function Re(t,o,s,i={}){var u,c,y;const{clone:v=!1,passive:h=!1,eventName:M,deep:I=!1,defaultValue:n,shouldEmit:O}=i,d=e.getCurrentInstance(),S=s||(d==null?void 0:d.emit)||((u=d==null?void 0:d.$emit)==null?void 0:u.bind(d))||((y=(c=d==null?void 0:d.proxy)==null?void 0:c.$emit)==null?void 0:y.bind(d==null?void 0:d.proxy));let g=M;o||(o="modelValue"),g=g||`update:${o.toString()}`;const A=b=>v?typeof v=="function"?v(b):Be(b):b,F=()=>be(t[o])?A(t[o]):n,m=b=>{O?O(b)&&S(g,b):S(g,b)};if(h){const b=F(),_=e.ref(b);let $=!1;return e.watch(()=>t[o],E=>{$||($=!0,_.value=A(E),e.nextTick(()=>$=!1))}),e.watch(_,E=>{!$&&(E!==t[o]||I)&&m(E)},{deep:I}),_}else return e.computed({get(){return F()},set(b){m(b)}})}function Te(){const{isDark:t}=Z(),o=_e(t);return{isDark:t,toggleDark:o}}function ue(){const t=e.ref(!1);return e.onMounted(()=>{de(t),Ue(t)}),e.watch(()=>t.value,()=>{t.value?document.documentElement.classList.add("dark"):document.documentElement.classList.remove("dark")}),{isDark:t}}function de(t){var o=document.documentElement;o&&(o.classList.contains("dark")?t.value=!0:t.value=!1)}function Ue(t){var o=document.querySelector("html"),s=new MutationObserver(function(i){for(var u of i)if(u.type==="attributes"&&u.attributeName==="class"){const c=u.target;new Array(...c.classList).includes("dark")?t.value=!0:t.value=!1}});s.observe(o,{attributes:!0,attributeFilter:["class"]}),e.onUnmounted(()=>{s.disconnect()})}function fe(){const t=e.ref(1),o=e.ref(!1),{isDark:s}=ue(),{pressSpace:i,pressShift:u,pressCtrl:c}=pe();return{canvasScale:t,pressSpace:i,pressShift:u,pressCtrl:c,disabledZoom:o,isDark:s}}const Z=Ee(fe);function pe(){const t=e.ref(!1),o=e.ref(!1),s=e.ref(!1);return j(" ",()=>{t.value=!0}),ee(" ",()=>{t.value=!1}),j("Shift",i=>{i.preventDefault(),o.value=!0}),ee("Shift",()=>{o.value=!1}),j("Control",i=>{i.preventDefault(),s.value=!0}),ee("Control",()=>{s.value=!1}),{pressSpace:t,pressShift:o,pressCtrl:s}}function ke(t){const{pressSpace:o}=Z(),s=new Image(1,1);s.src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mNk+M9QDwADhgGAWjR9awAAAABJRU5ErkJggg==";let i=0,u=0;function c(h){var M;o.value&&(i=h.x,u=h.y,(M=h.dataTransfer)==null||M.setDragImage(document.createElement("div"),0,0))}function y(h){if(h.preventDefault(),!h.x||!h.y||!o.value)return;const M=h.x-i,I=h.y-u;i=h.x,u=h.y,t.value&&(t.value.scrollTop-=I,t.value.scrollLeft-=M)}function v(){o.value=!1}return{handleElementDragStart:c,handleElementDrag:y,handleElementDragEnd:v}}function qe(t){const{pressCtrl:o,canvasScale:s,disabledZoom:i}=Z();function u(c){if(!o.value||i.value)return;c.preventDefault();let y=0;c.deltaY<0?y=s.value+.05:y=s.value-.05,!(y>150||y<.5)&&(s.value=y)}return e.watch(()=>s.value,c=>{t.value&&!i.value&&(t.value.style.transform=`scale(${c})`)}),{handleZoom:u,canvasScale:s}}function Le(t,o=16.66){let s;function i(){u(),s=window.setInterval(t,o)}function u(){window.clearInterval(s)}return{startTimedQuery:i,stopTimedQuery:u}}const Je={class:"min-w-750px rounded"},ze={class:"h-full rounded"},Ke=e.defineComponent({__name:"index",setup(t,{expose:o}){const s=w.pluginManager.getComponent("monacoEditor"),i=w.pluginManager.getComponent("modal"),u=e.ref(null),c=e.ref(!1),y=e.ref(!1),v=e.ref({}),h=e.inject("pageSchema"),M=e.ref(null),I=e.ref("");function n(){y.value=!1}function O(){c.value=!1}function d(){c.value=!0,I.value=w.getUUID()}async function S(){try{let g=await M.value.validateAll();if(!Object.keys(g).length){alert("请添加表单组件后再尝试!");return}Object.keys(g).length===1&&(g=g.default),v.value=JSON.stringify(g,null,2),e.nextTick(()=>{var A;(A=u.value)==null||A.setValue(v.value)}),y.value=!0}catch(g){console.error(g)}}return o({handleOpen:d}),(g,A)=>(e.openBlock(),e.createBlock(e.unref(i),{modelValue:c.value,"onUpdate:modelValue":A[1]||(A[1]=F=>c.value=F),title:"预览",class:"w-900px",width:"900px",onClose:O,onOk:S,okText:"表单数据"},{default:e.withCtx(()=>[e.createElementVNode("div",Je,[(e.openBlock(),e.createBlock(e.unref(ie),{key:I.value,ref_key:"kb",ref:M,"page-schema":e.unref(h)},null,8,["page-schema"])),e.createVNode(e.unref(i),{modelValue:y.value,"onUpdate:modelValue":A[0]||(A[0]=F=>y.value=F),title:"表单数据",class:"w-860px",width:"860px",onClose:n,onOk:n},{default:e.withCtx(()=>[e.createElementVNode("div",ze,[e.createVNode(e.unref(s),{ref_key:"monacoEditorRef",ref:u,autoToggleTheme:"",readOnly:"",class:"h-full editor","model-value":v.value},null,8,["model-value"])])]),_:1},8,["modelValue"])])]),_:1},8,["modelValue"]))}}),He={key:0,class:"epic-loading-box"},Ze={class:"epic-designer-main"},We={class:"epic-header-container"},Qe={class:"epic-loading-box"},Ge=e.defineComponent({__name:"designer",props:{disabledZoom:{type:Boolean,default:!1},hiddenHeader:{type:Boolean,default:!1},lockDefaultSchemaEdit:{type:Boolean,default:!1},formMode:{type:Boolean,default:!1},title:{default:"EpicDesigner默认项目"},defaultSchema:{},sourceCodeReadOnly:{type:Boolean},source:{default:[]},updateSourceId:{}},emits:["ready","save","reset","toggleDeviceMode","saveSourceData","deleteSourceData","updateSourceData"],setup(t,{expose:o,emit:s}){const{t:i}=J.useLocale(),u=w.loadAsyncComponent(()=>Promise.resolve().then(()=>require("./index-v2u1WTMm.cjs"))),c=w.loadAsyncComponent(()=>Promise.resolve().then(()=>require("./index-CCCx1tbF.cjs"))),y=w.loadAsyncComponent(()=>Promise.resolve().then(()=>require("./index-Dz59dUur.cjs"))),v=w.loadAsyncComponent(()=>Promise.resolve().then(()=>require("./index-R2r9Rw5O.cjs"))),h=w.loadAsyncComponent(()=>Promise.resolve().then(()=>require("./index-Cap7FkuS.cjs"))),M=ne(),I=se(),n=t;let O={schemas:[{type:"form",id:"root",label:i("page"),children:[],componentProps:{name:i("form"),style:{padding:"16px"}}}],script:`const { defineExpose, find } = epic;
2
+
3
+ function test (){
4
+ console.log('test')
5
+ }
6
+
7
+ // 通过defineExpose暴露的函数或者属性
8
+ defineExpose({
9
+ test
10
+ })`};e.watchEffect(()=>{if(n.defaultSchema){O=n.defaultSchema;return}n.source&&w.pluginManager.setSourceData(n.source),n.formMode&&(O.schemas=w.pluginManager.formSchemas)}),M.setDesignMode(),M.setDefaultComponentIds(O.schemas);const d=s,S=e.ref(null),g=e.reactive({checkedNode:null,hoverNode:null,disableHover:!1,matched:[]}),A=e.reactive({schemas:[],script:O.script}),{disabledZoom:F}=Z();e.watchEffect(()=>{F.value=n.disabledZoom}),e.watchEffect(()=>{const a=A.script;a&&a!==""&&M.setMethods(a)}),e.provide("pageSchema",A),e.provide("revoke",I),e.provide("pageManager",M),e.provide("designerProps",e.computed(()=>n)),e.provide("designer",{setCheckedNode:b,setHoverNode:_,setDisableHover:E,handleToggleDeviceMode:q,reset:N,state:g}),w.EventBus.on("saveSourceData",a=>{d("saveSourceData",a)}),w.EventBus.on("deleteSourceData",a=>{d("deleteSourceData",a)}),w.EventBus.on("updateSourceData",a=>{d("updateSourceData",a)});function m(){A.schemas=w.deepClone(O.schemas),b(A.schemas[0]),I.push(A.schemas,"初始化撤销功能")}async function b(a=A.schemas[0]){g.checkedNode=a,g.matched=w.getMatchedById(A.schemas,a.id)}async function _(a=null){var V;if(!a||g.disableHover)return g.hoverNode=null,!1;if((a==null?void 0:a.id)===((V=g.hoverNode)==null?void 0:V.id))return!1;g.hoverNode=a}function $(){e.nextTick(()=>{d("ready",{pageManager:M})})}async function E(a=!1){g.disableHover=a}function R(a){w.deepCompareAndModify(A,w.deepClone(a))}function T(){return e.toRaw(A)}function N(){w.deepEqual(A.schemas,O.schemas)&&A.script===O.script||(w.deepCompareAndModify(A.schemas,O.schemas),A.script=O.script,b(A.schemas[0]),I.push(A.schemas,"重置操作"),d("reset",A))}function D(){d("save",e.toRaw(A))}function q(a){d("toggleDeviceMode",a)}function f(){S.value.handleOpen()}return m(),o({revoke:I,setData:R,getData:T,reset:N,preview:f}),(a,V)=>e.unref(w.pluginManager).initialized.value?(e.openBlock(),e.createBlock(e.Suspense,{key:1,onResolve:$},{default:e.withCtx(()=>[e.createElementVNode("div",Ze,[e.createElementVNode("div",We,[e.renderSlot(a.$slots,"header",{},()=>[n.hiddenHeader?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(u),{key:0,onPreview:f,onSave:D},{header:e.withCtx(()=>[e.renderSlot(a.$slots,"header-prefix")]),prefix:e.withCtx(()=>[e.renderSlot(a.$slots,"header-prefix")]),title:e.withCtx(()=>[e.renderSlot(a.$slots,"header-title")]),"right-prefix":e.withCtx(()=>[e.renderSlot(a.$slots,"header-right-prefix")]),"right-action":e.withCtx(()=>[e.renderSlot(a.$slots,"header-right-action")]),"right-suffix":e.withCtx(()=>[e.renderSlot(a.$slots,"header-right-suffix")]),_:3}))])]),e.createElementVNode("div",{class:e.normalizeClass(["epic-split-view-container",{"hidden-header":a.hiddenHeader}])},[e.createVNode(e.unref(c)),e.createVNode(e.unref(y)),e.createVNode(e.unref(v))],2),e.createVNode(Ke,{ref_key:"previewRef",ref:S},null,512)])]),fallback:e.withCtx(()=>[e.createElementVNode("div",Qe,[e.createVNode(e.unref(h))])]),_:3})):(e.openBlock(),e.createElementBlock("div",He))}}),Ye={component:async()=>await Promise.resolve().then(()=>require("./index-BBVUGri_.cjs")),defaultSchema:{label:"代码编辑器",type:"monacoEditor",field:"monacoEditor",icon:"epic-icon-write",input:!0},config:{attribute:[{label:"字段名",type:"input",field:"field"},{label:"标题",type:"input",field:"label"},{label:"默认值",type:"monacoEditor",field:"componentProps.defaultValue"}]},bindModel:"model-value"},{t:te}=J.useLocale(),Xe={component:async()=>await Promise.resolve().then(()=>require("./index-Ch9jeYmj.cjs")),defaultSchema:{label:te("page"),type:"page",componentProps:{},children:[]},config:{attribute:[{label:te("pageName"),type:"input",componentProps:{placeholder:te("pleaseEnter")},field:"componentProps.name"}]}},{t:G}=J.useLocale();function je(t){t.component("EInputSize",async()=>await Promise.resolve().then(()=>require("./index-CpevxZqj.cjs"))),t.component("EColEditor",async()=>await Promise.resolve().then(()=>require("./index-FgdbKgb5.cjs"))),t.component("EActionEditor",async()=>await Promise.resolve().then(()=>require("./index-CPkRsFQ7.cjs"))),t.component("ERuleEditor",async()=>await Promise.resolve().then(()=>require("./index-Dftp7CV4.cjs"))),t.component("EOptionsEditor",async()=>await Promise.resolve().then(()=>require("./index-B4sqskGf.cjs"))),t.component("ENode",async()=>await Promise.resolve().then(()=>require("./index-CYxg6AdN.cjs"))),t.component("EDataSource",async()=>await Promise.resolve().then(()=>require("./index-BEUYVwRA.cjs"))),t.component("EColumnEditor",async()=>await Promise.resolve().then(()=>require("./index-DqLjoo13.cjs"))),t.component("PaddingMarginControl",async()=>await Promise.resolve().then(()=>require("./index-DYQi05p8.cjs"))),t.registerActivitybar({id:"component_view",title:G("component"),icon:"icon--epic--extension-outline",component:async()=>await Promise.resolve().then(()=>require("./index-BHZbtFEF.cjs"))}),t.registerActivitybar({id:"outline_view",title:G("outline"),icon:"icon--epic--account-tree-outline-rounded",component:async()=>await Promise.resolve().then(()=>require("./outline-BE98qFHQ.cjs"))}),t.registerRightSidebar({id:"attribute_view",title:G("attribute"),component:async()=>await Promise.resolve().then(()=>require("./attributeView-DOL6IUO8.cjs"))}),t.registerRightSidebar({id:"style_view",title:G("style"),component:async()=>await Promise.resolve().then(()=>require("./styleView-CNmD046X.cjs"))}),t.registerRightSidebar({id:"event_view",title:"事件",component:async()=>await Promise.resolve().then(()=>require("./eventView-5fa6mfSD.cjs"))}),[Ye,Xe].forEach(s=>{t.registerComponent(s)})}je(w.pluginManager);exports._sfc_main=le;exports._sfc_main$1=ie;exports._sfc_main$2=Ge;exports.debounce=he;exports.getDarkState=de;exports.initStore=fe;exports.useDark=ue;exports.useElementDrag=ke;exports.useElementSize=Fe;exports.useElementZoom=qe;exports.useKeyPress=pe;exports.usePageManager=ne;exports.useResizeObserver=ce;exports.useRevoke=se;exports.useStore=Z;exports.useTheme=Te;exports.useTimedQuery=Le;exports.useVModel=Re;exports.watchOnce=Ne;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),y=require("./pluginManager-DWHAX8kP.cjs"),_=require("./index-BY37Ndo7.cjs"),w=require("./icon.vue_vue_type_script_setup_true_lang-DJbUD5AQ.cjs"),k=require("./index-BoL2PSBk.cjs"),B=[{label:"string",value:"string"},{label:"number",value:"number"},{label:"boolean",value:"boolean"},{label:"method",value:"method"},{label:"regexp",value:"regexp"},{label:"integer",value:"integer"},{label:"float",value:"float"},{label:"array",value:"array"},{label:"object",value:"object"},{label:"date",value:"date"},{label:"url",value:"url"},{label:"hex",value:"hex"},{label:"email",value:"email"},{label:"any",value:"any"}],x=[{label:"change",value:"change"},{label:"blur",value:"blur"}],f=["string","number","url","array","email"],E={class:"rule-item-main bg-white m-t-2 p-2 rounded border border-solid border-gray-200 hover:border-primary transition-all relative"},q={key:0,class:"flex m-t-2 first:m-0"},C=["title"],N={class:"epic-attr-input"},P=e.defineComponent({__name:"ERuleItem",props:{rule:{}},emits:["change","delete","update:rule"],setup(v,{emit:g}){const{t:l}=k.useLocale(),s=g,c=v,n=e.computed({get(){return c.rule},set(t){s("update:rule",t)}}),i=e.inject("pageManager",{}),r=e.computed(()=>Object.entries(i.funcs.value).filter(([t,p])=>typeof p=="function").map(([t])=>({label:t,value:t}))),h=[{type:"select",label:l("validationTrigger"),model:"trigger",componentProps:{options:x,placeholder:l("validationTrigger"),multiple:!0,mode:"multiple"}},{type:"switch",label:l("customRule"),model:"isValidator"},{type:"select",label:l("validationFunction"),model:"validator",show(){return!!n.value.isValidator},componentProps:{options:r.value,placeholder:l("validationFunction")}},{type:"select",label:l("type"),model:"type",show(){return!n.value.isValidator},componentProps:{options:B,placeholder:l("type")}},{type:"input",label:l("regexValidation"),model:"pattern",show(){return!n.value.isValidator},componentProps:{placeholder:l("regexValidation")}},{type:"number",label:l("fieldLength"),model:"len",show(){return f.includes(n.value.type??"")},componentProps:{min:0,placeholder:l("fieldLength")}},{type:"number",label:l("minLength"),model:"min",show(){return f.includes(n.value.type??"")},componentProps:{min:0,placeholder:l("minLength")}},{type:"number",label:l("maxLength"),model:"max",show(){return f.includes(n.value.type??"")},componentProps:{min:0,placeholder:l("maxLength")}},{type:"input",label:l("validationMessage"),model:"message",componentProps:{placeholder:l("validationMessage")}}];function a(){const t=n.value;t.isValidator?(delete t.type,delete t.pattern,delete t.len,delete t.min,delete t.max):delete t.validator,s("change",t)}function b(){s("delete")}return(t,p)=>(e.openBlock(),e.createElementBlock("div",E,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(h,(o,V)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:V},[!o.show||o.show()?(e.openBlock(),e.createElementBlock("div",q,[e.createElementVNode("div",{class:"epic-attr-label",title:e.unref(l)("validationTrigger")},e.toDisplayString(o.label),9,C),e.createElementVNode("div",N,[e.createVNode(e.unref(_._sfc_main),{modelValue:n.value[o.model],"onUpdate:modelValue":u=>n.value[o.model]=u,componentSchema:{...o,noFormItem:!0},onChange:a},null,8,["modelValue","onUpdate:modelValue","componentSchema"])])])):e.createCommentVNode("",!0)],64))),64)),e.createElementVNode("div",{class:"rule-btn-delete absolute top-0 text-md right-0 transition-all w-24px h-24px cursor-pointer rounded-bl-2 flex justify-center items-center color-white",onClick:b},[e.createVNode(e.unref(w._sfc_main),{name:"icon--epic--delete-outline-rounded"})])]))}}),L={class:"rule-item-main m-t-2 p-2 rounded border border-solid transition-all relative"},T={key:0,class:"flex m-t-2 first:m-0"},M={class:"epic-attr-label"},F={class:"flex-1"},U=e.defineComponent({__name:"index",props:{ruleType:{type:String,default:"string"},modelValue:{type:Array,default:void 0}},emits:["update:modelValue"],setup(v,{emit:g}){const{t:l}=k.useLocale(),s=y.pluginManager.getComponent("button"),c=v,n=g,i=_.useVModel(c,"modelValue",n),r=e.ref({required:!1,message:l("required"),type:c.ruleType,trigger:["change"]}),h=[{type:"switch",label:l("required"),model:"required"},{type:"select",label:l("validationTrigger"),model:"trigger",show(){return!!r.value.required},componentProps:{options:x,placeholder:l("validationTrigger"),multiple:!0,mode:"multiple"}},{type:"select",label:l("type"),model:"type",show(){return!!r.value.required},componentProps:{options:B,placeholder:l("type")}},{type:"input",label:l("validationMessage"),model:"message",show(){return!!r.value.required},componentProps:{placeholder:l("validationMessage")}}],a=e.ref([]);e.watchEffect(()=>{i.value&&(a.value=[],i.value.forEach(o=>{typeof o.required<"u"?r.value=o:a.value.push(o)}))});function b(){a.value.push({message:"",type:c.ruleType,trigger:["change"]}),t()}function t(){if(r.value.required){i.value=y.deepClone([...a.value,r.value]);return}if(a.value.length){i.value=y.deepClone(a.value);return}i.value=void 0}function p(o){a.value.splice(o,1),t()}return(o,V)=>(e.openBlock(),e.createElementBlock("div",null,[e.createElementVNode("div",L,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(h,(u,d)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:d},[!u.show||u.show()?(e.openBlock(),e.createElementBlock("div",T,[e.createElementVNode("div",M,e.toDisplayString(u.label),1),e.createElementVNode("div",F,[e.createVNode(e.unref(_._sfc_main),{modelValue:r.value[u.model],"onUpdate:modelValue":m=>r.value[u.model]=m,componentSchema:{...u,noFormItem:!0},onChange:t},null,8,["modelValue","onUpdate:modelValue","componentSchema"])])])):e.createCommentVNode("",!0)],64))),64))]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.value,(u,d)=>(e.openBlock(),e.createBlock(P,{key:d,rule:a.value[d],"onUpdate:rule":m=>a.value[d]=m,onDelete:m=>p(d),onChange:t},null,8,["rule","onUpdate:rule","onDelete"]))),128)),e.createVNode(e.unref(s),{class:"m-t-2",onClick:b},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(l)("addRule")),1)]),_:1})]))}});exports.default=U;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),y=require("./pluginManager-DWHAX8kP.cjs"),_=require("./index-DOZPyH6X.cjs"),w=require("./icon.vue_vue_type_script_setup_true_lang-DJbUD5AQ.cjs"),k=require("./index-BoL2PSBk.cjs"),B=[{label:"string",value:"string"},{label:"number",value:"number"},{label:"boolean",value:"boolean"},{label:"method",value:"method"},{label:"regexp",value:"regexp"},{label:"integer",value:"integer"},{label:"float",value:"float"},{label:"array",value:"array"},{label:"object",value:"object"},{label:"date",value:"date"},{label:"url",value:"url"},{label:"hex",value:"hex"},{label:"email",value:"email"},{label:"any",value:"any"}],x=[{label:"change",value:"change"},{label:"blur",value:"blur"}],f=["string","number","url","array","email"],E={class:"rule-item-main bg-white m-t-2 p-2 rounded border border-solid border-gray-200 hover:border-primary transition-all relative"},q={key:0,class:"flex m-t-2 first:m-0"},C=["title"],N={class:"epic-attr-input"},P=e.defineComponent({__name:"ERuleItem",props:{rule:{}},emits:["change","delete","update:rule"],setup(v,{emit:g}){const{t:l}=k.useLocale(),s=g,c=v,n=e.computed({get(){return c.rule},set(t){s("update:rule",t)}}),i=e.inject("pageManager",{}),r=e.computed(()=>Object.entries(i.funcs.value).filter(([t,p])=>typeof p=="function").map(([t])=>({label:t,value:t}))),h=[{type:"select",label:l("validationTrigger"),model:"trigger",componentProps:{options:x,placeholder:l("validationTrigger"),multiple:!0,mode:"multiple"}},{type:"switch",label:l("customRule"),model:"isValidator"},{type:"select",label:l("validationFunction"),model:"validator",show(){return!!n.value.isValidator},componentProps:{options:r.value,placeholder:l("validationFunction")}},{type:"select",label:l("type"),model:"type",show(){return!n.value.isValidator},componentProps:{options:B,placeholder:l("type")}},{type:"input",label:l("regexValidation"),model:"pattern",show(){return!n.value.isValidator},componentProps:{placeholder:l("regexValidation")}},{type:"number",label:l("fieldLength"),model:"len",show(){return f.includes(n.value.type??"")},componentProps:{min:0,placeholder:l("fieldLength")}},{type:"number",label:l("minLength"),model:"min",show(){return f.includes(n.value.type??"")},componentProps:{min:0,placeholder:l("minLength")}},{type:"number",label:l("maxLength"),model:"max",show(){return f.includes(n.value.type??"")},componentProps:{min:0,placeholder:l("maxLength")}},{type:"input",label:l("validationMessage"),model:"message",componentProps:{placeholder:l("validationMessage")}}];function a(){const t=n.value;t.isValidator?(delete t.type,delete t.pattern,delete t.len,delete t.min,delete t.max):delete t.validator,s("change",t)}function b(){s("delete")}return(t,p)=>(e.openBlock(),e.createElementBlock("div",E,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(h,(o,V)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:V},[!o.show||o.show()?(e.openBlock(),e.createElementBlock("div",q,[e.createElementVNode("div",{class:"epic-attr-label",title:e.unref(l)("validationTrigger")},e.toDisplayString(o.label),9,C),e.createElementVNode("div",N,[e.createVNode(e.unref(_._sfc_main),{modelValue:n.value[o.model],"onUpdate:modelValue":u=>n.value[o.model]=u,componentSchema:{...o,noFormItem:!0},onChange:a},null,8,["modelValue","onUpdate:modelValue","componentSchema"])])])):e.createCommentVNode("",!0)],64))),64)),e.createElementVNode("div",{class:"rule-btn-delete absolute top-0 text-md right-0 transition-all w-24px h-24px cursor-pointer rounded-bl-2 flex justify-center items-center color-white",onClick:b},[e.createVNode(e.unref(w._sfc_main),{name:"icon--epic--delete-outline-rounded"})])]))}}),L={class:"rule-item-main m-t-2 p-2 rounded border border-solid transition-all relative"},T={key:0,class:"flex m-t-2 first:m-0"},M={class:"epic-attr-label"},F={class:"flex-1"},U=e.defineComponent({__name:"index",props:{ruleType:{type:String,default:"string"},modelValue:{type:Array,default:void 0}},emits:["update:modelValue"],setup(v,{emit:g}){const{t:l}=k.useLocale(),s=y.pluginManager.getComponent("button"),c=v,n=g,i=_.useVModel(c,"modelValue",n),r=e.ref({required:!1,message:l("required"),type:c.ruleType,trigger:["change"]}),h=[{type:"switch",label:l("required"),model:"required"},{type:"select",label:l("validationTrigger"),model:"trigger",show(){return!!r.value.required},componentProps:{options:x,placeholder:l("validationTrigger"),multiple:!0,mode:"multiple"}},{type:"select",label:l("type"),model:"type",show(){return!!r.value.required},componentProps:{options:B,placeholder:l("type")}},{type:"input",label:l("validationMessage"),model:"message",show(){return!!r.value.required},componentProps:{placeholder:l("validationMessage")}}],a=e.ref([]);e.watchEffect(()=>{i.value&&(a.value=[],i.value.forEach(o=>{typeof o.required<"u"?r.value=o:a.value.push(o)}))});function b(){a.value.push({message:"",type:c.ruleType,trigger:["change"]}),t()}function t(){if(r.value.required){i.value=y.deepClone([...a.value,r.value]);return}if(a.value.length){i.value=y.deepClone(a.value);return}i.value=void 0}function p(o){a.value.splice(o,1),t()}return(o,V)=>(e.openBlock(),e.createElementBlock("div",null,[e.createElementVNode("div",L,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(h,(u,d)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:d},[!u.show||u.show()?(e.openBlock(),e.createElementBlock("div",T,[e.createElementVNode("div",M,e.toDisplayString(u.label),1),e.createElementVNode("div",F,[e.createVNode(e.unref(_._sfc_main),{modelValue:r.value[u.model],"onUpdate:modelValue":m=>r.value[u.model]=m,componentSchema:{...u,noFormItem:!0},onChange:t},null,8,["modelValue","onUpdate:modelValue","componentSchema"])])])):e.createCommentVNode("",!0)],64))),64))]),(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(a.value,(u,d)=>(e.openBlock(),e.createBlock(P,{key:d,rule:a.value[d],"onUpdate:rule":m=>a.value[d]=m,onDelete:m=>p(d),onChange:t},null,8,["rule","onUpdate:rule","onDelete"]))),128)),e.createVNode(e.unref(s),{class:"m-t-2",onClick:b},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(l)("addRule")),1)]),_:1})]))}});exports.default=U;
@@ -2,7 +2,7 @@ import { defineComponent as f, resolveComponent as k, openBlock as _, createBloc
2
2
  import { d as M } from "./vuedraggable.umd-D2S7Eo7p.js";
3
3
  import { p as C, g as U } from "./pluginManager-BCnrHPYv.js";
4
4
  import { _ as v } from "./icon.vue_vue_type_script_setup_true_lang-D3QdcReY.js";
5
- import { g as A } from "./index-GIYb626z.js";
5
+ import { g as A } from "./index-CXI_7l7O.js";
6
6
  import { u as L } from "./index-B1s67XDZ.js";
7
7
  const R = { class: "option-item text-16px grid text-$epic-text-secondary gap-2 items-center mb-2 grid-cols-[16px_auto_auto_16px_16px]" }, S = {
8
8
  key: 0,
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),g=require("./vuedraggable.umd-BqhSJIAi.cjs"),i=require("./pluginManager-DWHAX8kP.cjs"),_=require("./icon.vue_vue_type_script_setup_true_lang-DJbUD5AQ.cjs"),h=require("./index-BY37Ndo7.cjs"),f=require("./index-BoL2PSBk.cjs"),x={class:"option-item text-16px grid text-$epic-text-secondary gap-2 items-center mb-2 grid-cols-[16px_auto_auto_16px_16px]"},b={key:0,class:"pl-4"},y=e.defineComponent({name:"EColumnItem",__name:"columnItem",props:{modelValue:{}},emits:["update:modelValue"],setup(m,{emit:s}){const r=m,c=i.pluginManager.getComponent("input"),p=s,a=h.useVModel(r,"modelValue",p);function d(n){const o={type:"table-cell",children:[],id:"table-cell_"+i.getUUID(),label:"",prop:""};n.children?n.children.push(o):n.children=[o]}function V(n){a.value=a.value.filter((o,u)=>u!==n)}return(n,o)=>{const u=e.resolveComponent("EColumnItem");return e.openBlock(),e.createBlock(e.unref(g.draggable),{modelValue:e.unref(a),"onUpdate:modelValue":o[0]||(o[0]=l=>e.isRef(a)?a.value=l:null),"item-key":"id","component-data":{type:"transition-group"},group:"option-list",handle:".handle",animation:200},{item:e.withCtx(({element:l,index:v})=>[e.createElementVNode("div",null,[e.createElementVNode("div",x,[e.createVNode(e.unref(_._sfc_main),{class:"mr-2 cursor-move handle",name:"icon--epic--drag"}),e.createVNode(e.unref(c),{modelValue:l.label,"onUpdate:modelValue":t=>l.label=t,value:l.label,"onUpdate:value":t=>l.label=t,placeholder:"label"},null,8,["modelValue","onUpdate:modelValue","value","onUpdate:value"]),e.createVNode(e.unref(c),{modelValue:l.prop,"onUpdate:modelValue":t=>l.prop=t,value:l.prop,"onUpdate:value":t=>l.prop=t,placeholder:"value"},null,8,["modelValue","onUpdate:modelValue","value","onUpdate:value"]),e.createVNode(e.unref(_._sfc_main),{class:"cursor-pointer text-lg!",name:"icon--epic--add-rounded",onClick:t=>d(l)},null,8,["onClick"]),e.createVNode(e.unref(_._sfc_main),{class:"hover:text-red cursor-pointer",name:"icon--epic--delete-outline-rounded",onClick:t=>V(v)},null,8,["onClick"])]),l.children?(e.openBlock(),e.createElementBlock("div",b,[e.createVNode(u,{modelValue:l.children,"onUpdate:modelValue":t=>l.children=t},null,8,["modelValue","onUpdate:modelValue"])])):e.createCommentVNode("",!0)])]),_:1},8,["modelValue"])}}}),C={class:""},U=e.defineComponent({__name:"index",props:{tree:{type:Boolean},modelValue:{},dynamicId:{},type:{}},emits:["update:modelValue","update:EOptionsEditor"],setup(m,{emit:s}){const{t:r}=f.useLocale(),c=i.pluginManager.getComponent("button"),p=m,a=s,d=e.computed({get(){return p.modelValue},set(n){a("update:modelValue",n)}});e.onMounted(()=>{});function V(){d.value.push({type:"table-cell",children:[],id:"table-cell_"+i.getUUID(),label:"",prop:""})}return(n,o)=>{var u;return e.openBlock(),e.createElementBlock("div",C,[e.createElementVNode("div",null,[e.withDirectives(e.createElementVNode("div",{class:"py-4 my-2 text-center text-gray-400 bg-white"},e.toDisplayString(e.unref(r)("noOptions")),513),[[e.vShow,!((u=d.value)!=null&&u.length)]]),e.createVNode(y,{modelValue:d.value,"onUpdate:modelValue":o[0]||(o[0]=l=>d.value=l)},null,8,["modelValue"]),e.createVNode(e.unref(c),{onClick:V},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("addOption")),1)]),_:1})])])}}});exports.default=U;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),g=require("./vuedraggable.umd-BqhSJIAi.cjs"),i=require("./pluginManager-DWHAX8kP.cjs"),_=require("./icon.vue_vue_type_script_setup_true_lang-DJbUD5AQ.cjs"),h=require("./index-DOZPyH6X.cjs"),f=require("./index-BoL2PSBk.cjs"),x={class:"option-item text-16px grid text-$epic-text-secondary gap-2 items-center mb-2 grid-cols-[16px_auto_auto_16px_16px]"},b={key:0,class:"pl-4"},y=e.defineComponent({name:"EColumnItem",__name:"columnItem",props:{modelValue:{}},emits:["update:modelValue"],setup(m,{emit:s}){const r=m,c=i.pluginManager.getComponent("input"),p=s,a=h.useVModel(r,"modelValue",p);function d(n){const o={type:"table-cell",children:[],id:"table-cell_"+i.getUUID(),label:"",prop:""};n.children?n.children.push(o):n.children=[o]}function V(n){a.value=a.value.filter((o,u)=>u!==n)}return(n,o)=>{const u=e.resolveComponent("EColumnItem");return e.openBlock(),e.createBlock(e.unref(g.draggable),{modelValue:e.unref(a),"onUpdate:modelValue":o[0]||(o[0]=l=>e.isRef(a)?a.value=l:null),"item-key":"id","component-data":{type:"transition-group"},group:"option-list",handle:".handle",animation:200},{item:e.withCtx(({element:l,index:v})=>[e.createElementVNode("div",null,[e.createElementVNode("div",x,[e.createVNode(e.unref(_._sfc_main),{class:"mr-2 cursor-move handle",name:"icon--epic--drag"}),e.createVNode(e.unref(c),{modelValue:l.label,"onUpdate:modelValue":t=>l.label=t,value:l.label,"onUpdate:value":t=>l.label=t,placeholder:"label"},null,8,["modelValue","onUpdate:modelValue","value","onUpdate:value"]),e.createVNode(e.unref(c),{modelValue:l.prop,"onUpdate:modelValue":t=>l.prop=t,value:l.prop,"onUpdate:value":t=>l.prop=t,placeholder:"value"},null,8,["modelValue","onUpdate:modelValue","value","onUpdate:value"]),e.createVNode(e.unref(_._sfc_main),{class:"cursor-pointer text-lg!",name:"icon--epic--add-rounded",onClick:t=>d(l)},null,8,["onClick"]),e.createVNode(e.unref(_._sfc_main),{class:"hover:text-red cursor-pointer",name:"icon--epic--delete-outline-rounded",onClick:t=>V(v)},null,8,["onClick"])]),l.children?(e.openBlock(),e.createElementBlock("div",b,[e.createVNode(u,{modelValue:l.children,"onUpdate:modelValue":t=>l.children=t},null,8,["modelValue","onUpdate:modelValue"])])):e.createCommentVNode("",!0)])]),_:1},8,["modelValue"])}}}),C={class:""},U=e.defineComponent({__name:"index",props:{tree:{type:Boolean},modelValue:{},dynamicId:{},type:{}},emits:["update:modelValue","update:EOptionsEditor"],setup(m,{emit:s}){const{t:r}=f.useLocale(),c=i.pluginManager.getComponent("button"),p=m,a=s,d=e.computed({get(){return p.modelValue},set(n){a("update:modelValue",n)}});e.onMounted(()=>{});function V(){d.value.push({type:"table-cell",children:[],id:"table-cell_"+i.getUUID(),label:"",prop:""})}return(n,o)=>{var u;return e.openBlock(),e.createElementBlock("div",C,[e.createElementVNode("div",null,[e.withDirectives(e.createElementVNode("div",{class:"py-4 my-2 text-center text-gray-400 bg-white"},e.toDisplayString(e.unref(r)("noOptions")),513),[[e.vShow,!((u=d.value)!=null&&u.length)]]),e.createVNode(y,{modelValue:d.value,"onUpdate:modelValue":o[0]||(o[0]=l=>d.value=l)},null,8,["modelValue"]),e.createVNode(e.unref(c),{onClick:V},{default:e.withCtx(()=>[e.createTextVNode(e.toDisplayString(e.unref(r)("addOption")),1)]),_:1})])])}}});exports.default=U;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),l=require("./pluginManager-DWHAX8kP.cjs"),H=require("./index-BY37Ndo7.cjs"),Q=require("element-plus"),ee=require("./icon.vue_vue_type_script_setup_true_lang-DJbUD5AQ.cjs"),we=require("./vuedraggable.umd-BqhSJIAi.cjs"),Ce={class:"epic-widget-action-item whitespace-nowrap"},Ne={key:0,class:"flex items-center"},_e={key:0,title:"单元格操作",class:"epic-widget-action-item pointer-events-auto"},be=e.defineComponent({__name:"previewWidgets",setup(Z,{expose:L}){const v=e.inject("pageManager",{}),o=e.inject("pageSchema"),n=e.inject("designer"),w=e.inject("designerProps"),i=e.inject("revoke"),g=e.ref(null),R=e.ref(null),N=e.ref(null),z=e.ref(!1),c=e.ref(!1),d=e.ref(!0),h=e.ref("top"),{canvasScale:u,disabledZoom:T}=H.useStore();let s=null;const P=e.computed(()=>{const t=n.state.checkedNode;return!(!(t!=null&&t.id)||w.value.lockDefaultSchemaEdit&&v.defaultComponentIds.value.includes(t==null?void 0:t.id)||t.type==="table-cell")}),j=e.computed(()=>{const t=n.state.checkedNode;return(t==null?void 0:t.type)==="eTd"});e.computed(()=>{const t=n.state.checkedNode;return(t==null?void 0:t.type)==="table"});const $=e.computed(()=>{var C,b,V,m,O,A;const t=v.componentInstances.value,r=(C=n.state.checkedNode)==null?void 0:C.id;if((V=(b=n.state.checkedNode)==null?void 0:b.componentProps)!=null&&V.hidden)return null;const y=l.pluginManager.getComponentConfingByType((m=n.state.checkedNode)==null?void 0:m.type)??null;if(!r||!(t!=null&&t[r]))return null;if(y!=null&&y.defaultSchema.input&&((O=n.state.checkedNode)==null?void 0:O.noFormItem)!==!0)return(A=t[r+"formItem"])==null?void 0:A.$el;const a=t[r];return!(a!=null&&a.$el)||(a==null?void 0:a.$el.nodeName)==="#text"||!(a!=null&&a.$el.getBoundingClientRect)?null:a==null?void 0:a.$el}),x=e.computed(()=>{var C,b,V,m;const t=v.componentInstances.value,r=(C=n.state.hoverNode)==null?void 0:C.id,y=l.pluginManager.getComponentConfingByType((b=n.state.hoverNode)==null?void 0:b.type)??null;if(!r||!(t!=null&&t[r]))return null;if(y!=null&&y.defaultSchema.input&&((V=n.state.hoverNode)==null?void 0:V.noFormItem)!==!0)return(m=t[r+"formItem"])==null?void 0:m.$el;const a=t[r];return(a==null?void 0:a.$el.nodeName)==="#text"?null:a==null?void 0:a.$el}),{mutationObserver:_,observerConfig:k}=ae(F),{startTimedQuery:q,stopTimedQuery:G}=H.useTimedQuery(F);e.watch(()=>$.value,t=>{if(t){z.value=!0,_.observe(t,k);const r=t.parentNode;r&&(r.ondragstart=()=>{d.value=!1,q()},r.ondragend=()=>{d.value=!0,G()}),F()}else z.value=!1});const{mutationObserver:M,observerConfig:E}=ae(oe);e.watch(()=>x.value,t=>{t&&(M.observe(t,E),oe())});let U=0;e.watch(()=>{var t;return(t=n.state.hoverNode)==null?void 0:t.id},t=>{if(t){c.value=!0,clearTimeout(U);return}U=setTimeout(()=>{c.value=!1},300)});let J=0,K=0;function F(){const t=$.value;if(!t||!s)return;const{top:r,left:y}=s==null?void 0:s.getBoundingClientRect(),{top:a,left:C,width:b,height:V}=t.getBoundingClientRect(),m=T.value?1:u.value,O=a-r+((s==null?void 0:s.scrollTop)??0)*m,A=C-y+((s==null?void 0:s.scrollLeft)??0)*m,W=V/m;g.value&&(g.value.style.width=`${b/m}px`,g.value.style.height=`${W}px`,g.value.style.top=`${O/m}px`,g.value.style.left=`${A/m}px`,ve(O,A)),N.value&&(O<45&&W<100?(N.value.style.top="",N.value.style.bottom="-30px",N.value.style["border-radius"]="0px 0px 4px 4px",h.value="bottom"):O<45?(N.value.style.top="0px",N.value.style["border-radius"]="0px 0px 4px 0",h.value="center"):(N.value.style.top="-30px",N.value.style["border-radius"]="4px 4px 0px 0px",h.value="top"))}function ve(t,r){const y=$.value;if(!s||!y)return;const a=s.getBoundingClientRect(),{width:C}=y.getBoundingClientRect(),b=T.value?1:u.value,V=t/b-a.top;let m=r/b-a.left+C/b;m<a.width&&(m=0);const O=s.scrollTop-a.height/3+60,A=s.scrollTop+a.height/3*2,W=s.scrollLeft-a.width+200,X=s.scrollLeft+a.width-200;Math.abs(V-J)<10&&Math.abs(m-K)<10||(J=V,K=m,!(V>O&&V<A&&m>W&&m<X)&&(s.scrollTop=V,s.scrollLeft=m))}function oe(){var W,X;const t=x.value;if(!t)return;const{top:r,left:y}=(s==null?void 0:s.getBoundingClientRect())??{top:0,left:0},{top:a,left:C,width:b,height:V}=((W=t.getBoundingClientRect)==null?void 0:W.call(t))??((X=t.nextElementSibling)==null?void 0:X.getBoundingClientRect()),m=T.value?1:u.value,O=a-r+((s==null?void 0:s.scrollTop)??0)*m,A=C-y+((s==null?void 0:s.scrollLeft)??0)*m;R.value&&(R.value.style.width=`${b/m}px`,R.value.style.height=`${V/m}px`,R.value.style.top=`${O/m}px`,R.value.style.left=`${A/m}px`)}function ae(t){const r=window.MutationObserver,y={childList:!0,attributes:!0,subtree:!0};return{mutationObserver:new r(t),observerConfig:y}}function ge(t){var r,y,a,C,b,V,m,O,A,W,X,se,re,ie,ce,de,ue,fe;if(t==="right"){const f=n.state.matched.find(I=>I.type==="eTable"),S=l.findSchemaInfoById(o.schemas,(f==null?void 0:f.id)??"root"),B=(y=l.findSchemaInfoById(o.schemas,((r=n.state.checkedNode)==null?void 0:r.id)??"root"))==null?void 0:y.index;(a=S.list)==null||a[0].children.forEach(I=>{var D;(D=I.children)==null||D.splice(B+1,0,{type:"eTd",id:"eTd_"+l.getUUID(),children:[]})}),i.push(o.schemas,"添加右列")}else if(t==="left"){const f=n.state.matched.find(I=>I.type==="eTable"),S=l.findSchemaInfoById(o.schemas,(f==null?void 0:f.id)??"root"),B=(b=l.findSchemaInfoById(o.schemas,((C=n.state.checkedNode)==null?void 0:C.id)??"root"))==null?void 0:b.index;(V=S.list)==null||V[0].children.forEach(I=>{var D;B===0?I.children.unshift({type:"eTd",id:"eTd_"+l.getUUID(),children:[]}):(D=I.children)==null||D.splice(B-1,0,{type:"eTd",id:"eTd_"+l.getUUID(),children:[]})}),i.push(o.schemas,"添加左列")}else if(t==="top"){const f=n.state.matched.find(p=>p.type==="eTable"),S=n.state.matched.find(p=>p.type==="eTr"),B=l.findSchemaInfoById(o.schemas,(f==null?void 0:f.id)??"root"),I=l.findSchemaInfoById(o.schemas,(S==null?void 0:S.id)??"root"),D=l.findSchemaInfoById(o.schemas,((m=n.state.checkedNode)==null?void 0:m.id)??"root");I.index===0?(O=B.list)==null||O[0].children.unshift({type:"eTr",id:"eTr_"+l.getUUID(),children:l.deepClone(D.list).map(p=>(p.id="eTd_"+l.getUUID(),p.children=[],p))}):(A=B.list)==null||A[0].children.splice(I.index-1,0,{type:"eTr",id:"eTr_"+l.getUUID(),children:l.deepClone(D.list).map(p=>(p.id="eTd_"+l.getUUID(),p.children=[],p))}),i.push(o.schemas,"添加上列")}else if(t==="bottom"){const f=n.state.matched.find(p=>p.type==="eTable"),S=n.state.matched.find(p=>p.type==="eTr"),B=l.findSchemaInfoById(o.schemas,(f==null?void 0:f.id)??"root"),I=l.findSchemaInfoById(o.schemas,(S==null?void 0:S.id)??"root"),D=l.findSchemaInfoById(o.schemas,((W=n.state.checkedNode)==null?void 0:W.id)??"root");(X=B.list)==null||X[0].children.splice(I.index+1,0,{type:"eTr",id:"eTr_"+l.getUUID(),children:l.deepClone(D.list).map(p=>(p.id="eTd_"+l.getUUID(),p.children=[],p))}),i.push(o.schemas,"添加下列")}else if(t==="merge-right"){n.state.matched.find(I=>I.type==="eTr");const f=l.findSchemaInfoById(o.schemas,((se=n.state.checkedNode)==null?void 0:se.id)??"root");if(f.index===f.list.length-1)return;const S=f.list[f.index],B=f.list[f.index+1];S.colspan=(S.colspan||1)+(B.colspan||1),f.list.splice(f.index+1,1),i.push(o.schemas,"向右合并")}else if(t==="merge-bottom"){const f=n.state.matched.find(p=>p.type==="eTable"),S=n.state.matched.find(p=>p.type==="eTr");l.findSchemaInfoById(o.schemas,(f==null?void 0:f.id)??"root");const B=l.findSchemaInfoById(o.schemas,(S==null?void 0:S.id)??"root"),D=l.findSchemaInfoById(o.schemas,((re=n.state.checkedNode)==null?void 0:re.id)??"root").index;if(B.index!==B.list.length-1){const p=B.list[B.index];let te=0,ne=0;p.children.forEach((Y,le)=>{Y.colSpan||(Y.colSpan=1),ne=ne+Y.colSpan,ne===D+1&&(te=le)}),p.children[te].rowSpan=(p.children[te].rowSpan||1)+1;const Se=B.list[B.index+p.children[te].rowSpan-1];let he=0,me=0;p.children.forEach((Y,le)=>{Y.colSpan||(Y.colSpan=1),me=me+Y.colSpan,ne===D+1&&(he=le)}),Se.children.splice(he,1)}i.push(o.schemas,"向下合并")}else if(t==="delete-col"){const f=n.state.matched.find(I=>I.type==="eTable"),S=l.findSchemaInfoById(o.schemas,(f==null?void 0:f.id)??"root"),B=(ce=l.findSchemaInfoById(o.schemas,((ie=n.state.checkedNode)==null?void 0:ie.id)??"root"))==null?void 0:ce.index;(de=S.list)==null||de[0].children.forEach(I=>{var D;(D=I.children)==null||D.splice(B,1)}),i.push(o.schemas,"删除当前列")}else if(t==="delete-row"){const f=n.state.matched.find(D=>D.type==="eTable"),S=n.state.matched.find(D=>D.type==="eTr"),B=l.findSchemaInfoById(o.schemas,(f==null?void 0:f.id)??"root"),I=l.findSchemaInfoById(o.schemas,(S==null?void 0:S.id)??"root");l.findSchemaInfoById(o.schemas,((ue=n.state.checkedNode)==null?void 0:ue.id)??"root"),(fe=B.list)==null||fe[0].children.splice(I.index,1),i.push(o.schemas,"删除当前行")}}function xe(){var b;const t=l.findSchemaInfoById(o.schemas,((b=n.state.checkedNode)==null?void 0:b.id)??"root");if(!t)return!1;const{list:r,schema:y,index:a}=t,C=l.generateNewSchema(y);r.splice(a+1,0,C),n.setCheckedNode(C),i.push(o.schemas,"复制组件")}function ye(){var C;const t=l.findSchemaInfoById(o.schemas,((C=n.state.checkedNode)==null?void 0:C.id)??"root");if(!t)return!1;let{list:r,schema:y,index:a}=t;r.splice(a,1),a===r.length&&a--,n.setCheckedNode(r[a]),i.push(o.schemas,"删除组件")}function ke(t){s=t,s==null||s.addEventListener("scroll",()=>{F()}),H.useResizeObserver($,F),H.useResizeObserver(x,oe)}return L({handleInit:ke}),(t,r)=>{var y,a,C,b,V;return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.withDirectives(e.createElementVNode("div",{ref_key:"selectorRef",ref:g,class:e.normalizeClass(["epic-checked-widget absolute pointer-events-none z-20",h.value+" "+(d.value?"transition-all":"")])},[e.createElementVNode("div",{class:"epic-widget-action-box",ref_key:"actionBoxRef",ref:N},[e.createElementVNode("div",Ce,e.toDisplayString((a=e.unref(l.pluginManager).getComponentConfingByType(((y=e.unref(n).state.checkedNode)==null?void 0:y.type)??""))==null?void 0:a.defaultSchema.label),1),P.value?(e.openBlock(),e.createElementBlock("div",Ne,[P.value&&!j.value?(e.openBlock(),e.createElementBlock("div",{key:0,title:"复制",class:"epic-widget-action-item pointer-events-auto",onClick:xe},[e.createVNode(e.unref(ee._sfc_main),{name:"icon--epic--copy-all-outline-rounded"})])):e.createCommentVNode("",!0),e.createVNode(e.unref(Q.ElDropdown),{onCommand:ge,trigger:"click"},{dropdown:e.withCtx(()=>[e.createVNode(e.unref(Q.ElDropdownMenu),null,{default:e.withCtx(()=>[e.createVNode(e.unref(Q.ElDropdownItem),{command:"left"},{default:e.withCtx(()=>r[0]||(r[0]=[e.createTextVNode("添加左列")])),_:1}),e.createVNode(e.unref(Q.ElDropdownItem),{command:"right"},{default:e.withCtx(()=>r[1]||(r[1]=[e.createTextVNode("添加右列")])),_:1}),e.createVNode(e.unref(Q.ElDropdownItem),{command:"top"},{default:e.withCtx(()=>r[2]||(r[2]=[e.createTextVNode("添加上列")])),_:1}),e.createVNode(e.unref(Q.ElDropdownItem),{command:"bottom"},{default:e.withCtx(()=>r[3]||(r[3]=[e.createTextVNode("添加下列")])),_:1}),e.createVNode(e.unref(Q.ElDropdownItem),{command:"delete-row",divided:""},{default:e.withCtx(()=>r[4]||(r[4]=[e.createTextVNode("删除当前行")])),_:1}),e.createVNode(e.unref(Q.ElDropdownItem),{command:"delete-col"},{default:e.withCtx(()=>r[5]||(r[5]=[e.createTextVNode("删除当前列")])),_:1})]),_:1})]),default:e.withCtx(()=>[j.value?(e.openBlock(),e.createElementBlock("div",_e,[e.createVNode(e.unref(ee._sfc_main),{name:"icon--epic--window-outline"})])):e.createCommentVNode("",!0)]),_:1}),P.value&&!j.value?(e.openBlock(),e.createElementBlock("div",{key:1,title:"删除",class:"epic-widget-action-item pointer-events-auto",onClick:ye},[e.createVNode(e.unref(ee._sfc_main),{name:"icon--epic--delete-outline-rounded"})])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)],512)],2),[[e.vShow,z.value&&((C=e.unref(n).state.checkedNode)==null?void 0:C.id)!=="root"]]),e.withDirectives(e.createElementVNode("div",{ref_key:"hoverWidgetRef",ref:R,class:"epic-hover-widget absolute transition-all pointer-events-none z-998"},null,512),[[e.vShow,c.value&&((b=e.unref(n).state.checkedNode)==null?void 0:b.id)!==((V=e.unref(n).state.hoverNode)==null?void 0:V.id)]])],64)}}}),Be=e.defineComponent({name:"EditNodeItem",__name:"editNodeItem",props:{schemas:{}},emits:["update:schemas"],setup(Z,{emit:L}){const v=e.inject("designer"),o=e.inject("pageSchema"),n=e.inject("revoke"),w=Z,i=L,g=e.computed({get(){return w.schemas},set(d){i("update:schemas",d)}});function R(d){v.setCheckedNode(g.value[d]),v.setDisableHover(!0)}function N(){v.setDisableHover(),n.push(o.schemas,"拖拽组件")}function z(){n.push(o.schemas,"插入组件")}function c(d){var h,u,T;return d.id===((h=o.schemas[0])==null?void 0:h.id)||(T=(u=l.pluginManager.getComponentConfingByType(d.type))==null?void 0:u.editConstraints)!=null&&T.immovable?"unmover-item":"draggable-item"}return(d,h)=>(e.openBlock(),e.createBlock(e.unref(we.draggable),e.mergeProps({modelValue:g.value,"onUpdate:modelValue":h[0]||(h[0]=u=>g.value=u),"item-key":"id","component-data":{type:"transition-group"},class:"epic-draggable-range"},{animation:200,group:"edit-draggable",handle:".draggable-item",ghostClass:"moveing"},{onStart:h[1]||(h[1]=u=>R(u.oldIndex)),onEnd:h[2]||(h[2]=u=>N()),onAdd:h[3]||(h[3]=u=>{R(u.newIndex),z()})}),{item:e.withCtx(({element:u,index:T})=>[(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["widget-box",c(u)]),key:T},[e.createVNode(pe,{schema:u},null,8,["schema"])],2))]),_:1},16,["modelValue"]))}}),pe=e.defineComponent({name:"ENodeItem",__name:"nodeItem",props:{schema:{},name:{}},setup(Z){const L=e.useAttrs(),v=e.inject("designer"),o=e.inject("pageManager",{}),n=e.inject("pageSchema",{}),w=e.ref(null);e.provide("nodeAttrs",L);const i=Z,g=e.computed(()=>{var T,s,P,j,$;const c=o.componentInstances.value,d=(T=i.schema)==null?void 0:T.id,h=l.pluginManager.getComponentConfingByType((s=i.schema)==null?void 0:s.type)??null;if(!d||!(c!=null&&c[d]))return null;if(h!=null&&h.defaultSchema.input&&((P=i.schema)==null?void 0:P.noFormItem)!==!0)return(j=c[d+"formItem"])==null?void 0:j.$el;const u=c[d];return(($=u==null?void 0:u.$el)==null?void 0:$.nodeName)==="#text"?null:u==null?void 0:u.$el});e.watch(()=>g.value,c=>{c==null||c.addEventListener("click",R,!1),c==null||c.addEventListener("mouseover",N,!1),c==null||c.addEventListener("mouseout",z,!1)}),e.onUnmounted(()=>{var c,d,h;(c=g.value)==null||c.removeEventListener("click",R,!1),(d=g.value)==null||d.removeEventListener("mouseover",N,!1),(h=g.value)==null||h.removeEventListener("mouseout",z,!1)});function R(c){c.stopPropagation(),v.setCheckedNode(i.schema)}function N(c){var d;i.schema.id!==((d=n.schemas[0])==null?void 0:d.id)&&(c.stopPropagation(),v.setHoverNode(i.schema))}function z(c){c.stopPropagation(),v.setHoverNode(null)}return(c,d)=>{var u,T;const h=e.resolveComponent("ENodeItem");return e.openBlock(),e.createBlock(e.unref(H._sfc_main),{ref_key:"nodeRef",ref:w,componentSchema:i.schema},e.createSlots({_:2},[(T=(u=e.unref(l.pluginManager).getComponentConfingByType(i.schema.type))==null?void 0:u.editConstraints)!=null&&T.childImmovable?{name:"edit-node",fn:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.schema.children,s=>(e.openBlock(),e.createBlock(h,{key:s.id,schema:s},null,8,["schema"]))),128))]),key:"0"}:{name:"edit-node",fn:e.withCtx(()=>[i.schema.children?(e.openBlock(),e.createBlock(Be,{key:0,schemas:i.schema.children,"onUpdate:schemas":d[0]||(d[0]=s=>i.schema.children=s)},null,8,["schemas"])):e.createCommentVNode("",!0)]),key:"1"}]),1032,["componentSchema"])}}}),Ie={class:"min-w-750px rounded h-full"},Te=e.defineComponent({__name:"previewJson",setup(Z,{expose:L}){const v=l.pluginManager.getComponent("modal"),o=l.pluginManager.getComponent("monacoEditor"),n={theme:"vs-light",selectOnLineNumbers:!0,minimap:{enabled:!1},readOnly:!0},w=e.ref(null),i=e.ref(!1),g=e.inject("pageSchema");function R(){i.value=!1}function N(){i.value=!0,w.value?w.value.setValue(JSON.stringify(g,null,2)):setTimeout(()=>{N()},300)}function z(c="epic-data.json"){const d=JSON.stringify(g,null,2);var h=`data:text/json;charset=utf-8,${encodeURIComponent(d)}`,u=document.createElement("a");u.setAttribute("href",h),u.setAttribute("download",c),u.click()}return L({handleOpen:N}),(c,d)=>(e.openBlock(),e.createBlock(e.unref(v),{modelValue:i.value,"onUpdate:modelValue":d[0]||(d[0]=h=>i.value=h),title:"查看数据",class:"w-900px",width:"900px",onClose:R,onOk:z,okText:"导出数据"},{default:e.withCtx(()=>[e.createElementVNode("div",Ie,[e.createVNode(e.unref(o),{ref_key:"monacoEditorRef",ref:w,class:"editor h-full",autoToggleTheme:"",readOnly:"",config:n,language:"json"},null,512)])]),_:1},8,["modelValue"]))}}),Ve={class:"epic-edit-toolbar flex items-center justify-between px-2"},Ee={class:"flex-1 h-full flex items-center"},De={key:0,class:"epic-divider"},Re=["title","onClick"],$e={class:"flex-1 h-full flex items-center justify-end"},Me={key:0,class:"flex items-center ml-12px"},Ue={class:"pr-8px w-82px cursor-pointer"},Le={class:"epic-device h-28px items-center gap-1 rounded-md border p-2px flex"},ze=["title","onClick"],Oe=e.defineComponent({__name:"toolbar",setup(Z){const L=l.pluginManager.getComponent("select"),{canvasScale:v,disabledZoom:o}=H.useStore(),n=e.ref("pc"),w=e.inject("pageSchema"),i=e.inject("designer"),g=e.inject("revoke"),R=e.ref(null),N=[{icon:"icon--epic--computer-outline-rounded",title:"pc",key:"pc"},{icon:"icon--epic--tablet-android-outline-rounded",title:"平板",key:"pad"},{icon:"icon--epic--phone-iphone-outline-sharp",title:"手机",key:"mobile"}],z=e.computed(()=>[{icon:"icon--epic--trash",title:"清空",on:s},{icon:"icon--epic--undo",title:"撤销",on:u,disabled:!g.recordList.value.length,divider:!0},{icon:"icon--epic--redo",title:"重做",on:T,disabled:!g.undoList.value.length}]),c=e.ref(null),d=e.computed({get(){return`${(v.value*100).toFixed(0)}%`},set(x){const _=parseFloat(x);v.value=_/100}}),h=[{label:"60%",value:"60%"},{label:"80%",value:"80%"},{label:"100%",value:"100%"},{label:"120%",value:"120%"},{label:"140%",value:"140%"}];function u(){const x=g.undo();x&&(l.deepCompareAndModify(w.schemas,x),i.setCheckedNode(w.schemas[0]))}function T(){const x=g.redo();x&&(l.deepCompareAndModify(w.schemas,x),i.setCheckedNode(w.schemas[0]))}function s(){i.reset()}function P(x){var q;const _=(q=x.target.files)==null?void 0:q[0];if(!_)return;x.target.value=null;const k=new FileReader;k.readAsText(_),k.onload=G=>{var M;j((M=G.target)==null?void 0:M.result)}}function j(x){try{let _=JSON.parse(x??"");_.schemas||(_=l.convertKFormData(_)),l.deepCompareAndModify(w,_)}catch(_){console.error(_)}}function $(x){i.handleToggleDeviceMode(x),n.value=x;const _={pc:{},pad:{width:"780px",mode:x},mobile:{width:"390px",height:"844px",mode:x}};w.canvas=_[x],console.log("%c [ pageSchema ]-248","font-size:13px; background:pink; color:#bf2c9f;",w)}return(x,_)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",Ve,[e.createElementVNode("div",Ee,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(z.value,(k,q)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:q},[k.divider?(e.openBlock(),e.createElementBlock("div",De)):e.createCommentVNode("",!0),e.createElementVNode("div",{title:k.title,class:e.normalizeClass(["epic-action-item text-base h-90% px-10px flex items-center cursor-pointer",{disabled:k.disabled}]),onClick:k.on},[e.createVNode(e.unref(ee._sfc_main),{name:k.icon},null,8,["name"])],10,Re)],64))),128))]),e.withDirectives(e.createElementVNode("input",{type:"file",ref_key:"fileRef",ref:c,accept:".json,.txt",onChange:P},null,544),[[e.vShow,!1]]),e.createElementVNode("div",$e,[e.unref(o)?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",Me,[e.createElementVNode("div",Ue,[e.createVNode(e.unref(L),{value:d.value,"onUpdate:value":_[0]||(_[0]=k=>d.value=k),modelValue:d.value,"onUpdate:modelValue":_[1]||(_[1]=k=>d.value=k),options:h,size:"small"},null,8,["value","modelValue"])])])),e.createElementVNode("div",Le,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(N,k=>e.createElementVNode("div",{key:k.key,title:k.title,class:e.normalizeClass(["epic-device-item h-full px-1 flex items-center cursor-pointer text-base transition-colors rounded-sm",{checked:k.key===n.value}]),onClick:q=>$(k.key)},[e.createVNode(e.unref(ee._sfc_main),{name:k.icon},null,8,["name"])],10,ze)),64))])])]),e.createVNode(Te,{ref_key:"previewJson",ref:R},null,512)],64))}}),He={class:"h-full flex flex-col relative"},je=["draggable"],Fe=e.defineComponent({__name:"editScreenContainer",setup(Z){const L=e.inject("pageSchema"),v=e.ref(null),o=e.ref(null),n=e.ref(null),{pressSpace:w,disabledZoom:i}=H.useStore(),{handleElementDragStart:g,handleElementDrag:R,handleElementDragEnd:N}=H.useElementDrag(v),{width:z,height:c}=H.useElementSize(v),{canvasScale:d,handleZoom:h}=H.useElementZoom(o);let u=0,T=0;const s=e.ref({}),P=e.ref({}),j=e.ref({}),$=e.shallowRef({width:0,height:0});e.watchEffect(_),e.watch(j,()=>{e.nextTick(x)});function x(){n.value&&($.value={width:n.value.clientWidth,height:n.value.clientHeight})}function _(){var M,E;j.value={width:((M=L.canvas)==null?void 0:M.width)??"0",height:((E=L.canvas)==null?void 0:E.height)??"0"}}H.watchOnce(z,k),e.watch($,k);function k(){let M=$.value.width||u,E=$.value.height||T;s.value={width:z.value+M+"px",height:c.value+E+"px"},P.value={width:M+"px",height:E+"px"},q()}function q(){e.nextTick(()=>{var K;let M=$.value.width||u;const U=($.value.height||T)/2,J=M/2;(K=v.value)==null||K.scrollTo(J,U)})}H.useResizeObserver(v,G),H.useResizeObserver(o,G);function G(){var E;if(!v.value)return;const M=v.value.getBoundingClientRect();if(u=M.width-60,T=M.height-80,!i.value)if($.value.width===0)d.value=1;else{const U=(u-20)/$.value.width,J=T/($.value.height||((E=o.value)==null?void 0:E.clientHeight)||1),K=Math.abs(U-1)<Math.abs(J-1);let F=1;K?F=U:F=J,(U<1||J<1)&&(F=Math.min(U,J)),F<1.4&&F>.5&&(d.value=F)}H.debounce(k,50)()}return(M,E)=>(e.openBlock(),e.createElementBlock("div",He,[e.createVNode(Oe),e.createElementVNode("div",{ref_key:"editScreenContainerRef",ref:v,class:e.normalizeClass(["flex-1 overflow-auto overflow-y-hidden epic-edit-screen-container",{"cursor-grab":e.unref(w)}]),draggable:e.unref(w),onWheel:E[0]||(E[0]=(...U)=>e.unref(h)&&e.unref(h)(...U)),onDragstart:E[1]||(E[1]=(...U)=>e.unref(g)&&e.unref(g)(...U)),onDragend:E[2]||(E[2]=(...U)=>e.unref(N)&&e.unref(N)(...U)),onDrag:E[3]||(E[3]=(...U)=>e.unref(R)&&e.unref(R)(...U))},[e.createElementVNode("div",{id:"canvasContainer",class:"flex items-center justify-center",style:e.normalizeStyle(s.value)},[e.createElementVNode("div",{ref_key:"draggableElRef",ref:o,class:"transition-all"},[e.createElementVNode("div",{class:e.normalizeClass({"pointer-events-none":e.unref(w)}),style:e.normalizeStyle(P.value)},[e.renderSlot(M.$slots,"default")],6)],512)],4)],42,je),e.createElementVNode("div",{ref_key:"sizeBoxRef",ref:n,class:"absolute top-0 pointer-events-none",style:e.normalizeStyle(j.value)},null,4)]))}}),Ae={class:"epic-edit-canvas"},Pe=e.defineComponent({__name:"index",setup(Z){const L=e.ref(null),v=e.ref(null),o=e.inject("pageSchema"),n=e.computed(()=>o.schemas[0]),w=e.computed(()=>({width:"100%",height:"100%"}));return e.onMounted(()=>{var i;(i=v.value)==null||i.handleInit(L.value)}),(i,g)=>(e.openBlock(),e.createElementBlock("section",Ae,[e.createVNode(Fe,null,{default:e.withCtx(()=>[e.createElementVNode("div",{ref_key:"epicEditRangeRef",ref:L,class:"epic-edit-range rounded-md overflow-auto relative",style:e.normalizeStyle(w.value)},[e.createVNode(pe,{schema:n.value},null,8,["schema"]),e.createVNode(be,{ref_key:"ePreviewWidgetsRef",ref:v},null,512)],4)]),_:1})]))}});exports.default=Pe;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),l=require("./pluginManager-DWHAX8kP.cjs"),H=require("./index-DOZPyH6X.cjs"),Q=require("element-plus"),ee=require("./icon.vue_vue_type_script_setup_true_lang-DJbUD5AQ.cjs"),we=require("./vuedraggable.umd-BqhSJIAi.cjs"),Ce={class:"epic-widget-action-item whitespace-nowrap"},Ne={key:0,class:"flex items-center"},_e={key:0,title:"单元格操作",class:"epic-widget-action-item pointer-events-auto"},be=e.defineComponent({__name:"previewWidgets",setup(Z,{expose:L}){const v=e.inject("pageManager",{}),o=e.inject("pageSchema"),n=e.inject("designer"),w=e.inject("designerProps"),i=e.inject("revoke"),g=e.ref(null),R=e.ref(null),N=e.ref(null),z=e.ref(!1),c=e.ref(!1),d=e.ref(!0),h=e.ref("top"),{canvasScale:u,disabledZoom:T}=H.useStore();let s=null;const P=e.computed(()=>{const t=n.state.checkedNode;return!(!(t!=null&&t.id)||w.value.lockDefaultSchemaEdit&&v.defaultComponentIds.value.includes(t==null?void 0:t.id)||t.type==="table-cell")}),j=e.computed(()=>{const t=n.state.checkedNode;return(t==null?void 0:t.type)==="eTd"});e.computed(()=>{const t=n.state.checkedNode;return(t==null?void 0:t.type)==="table"});const $=e.computed(()=>{var C,b,V,m,O,A;const t=v.componentInstances.value,r=(C=n.state.checkedNode)==null?void 0:C.id;if((V=(b=n.state.checkedNode)==null?void 0:b.componentProps)!=null&&V.hidden)return null;const y=l.pluginManager.getComponentConfingByType((m=n.state.checkedNode)==null?void 0:m.type)??null;if(!r||!(t!=null&&t[r]))return null;if(y!=null&&y.defaultSchema.input&&((O=n.state.checkedNode)==null?void 0:O.noFormItem)!==!0)return(A=t[r+"formItem"])==null?void 0:A.$el;const a=t[r];return!(a!=null&&a.$el)||(a==null?void 0:a.$el.nodeName)==="#text"||!(a!=null&&a.$el.getBoundingClientRect)?null:a==null?void 0:a.$el}),x=e.computed(()=>{var C,b,V,m;const t=v.componentInstances.value,r=(C=n.state.hoverNode)==null?void 0:C.id,y=l.pluginManager.getComponentConfingByType((b=n.state.hoverNode)==null?void 0:b.type)??null;if(!r||!(t!=null&&t[r]))return null;if(y!=null&&y.defaultSchema.input&&((V=n.state.hoverNode)==null?void 0:V.noFormItem)!==!0)return(m=t[r+"formItem"])==null?void 0:m.$el;const a=t[r];return(a==null?void 0:a.$el.nodeName)==="#text"?null:a==null?void 0:a.$el}),{mutationObserver:_,observerConfig:k}=ae(F),{startTimedQuery:q,stopTimedQuery:G}=H.useTimedQuery(F);e.watch(()=>$.value,t=>{if(t){z.value=!0,_.observe(t,k);const r=t.parentNode;r&&(r.ondragstart=()=>{d.value=!1,q()},r.ondragend=()=>{d.value=!0,G()}),F()}else z.value=!1});const{mutationObserver:M,observerConfig:E}=ae(oe);e.watch(()=>x.value,t=>{t&&(M.observe(t,E),oe())});let U=0;e.watch(()=>{var t;return(t=n.state.hoverNode)==null?void 0:t.id},t=>{if(t){c.value=!0,clearTimeout(U);return}U=setTimeout(()=>{c.value=!1},300)});let J=0,K=0;function F(){const t=$.value;if(!t||!s)return;const{top:r,left:y}=s==null?void 0:s.getBoundingClientRect(),{top:a,left:C,width:b,height:V}=t.getBoundingClientRect(),m=T.value?1:u.value,O=a-r+((s==null?void 0:s.scrollTop)??0)*m,A=C-y+((s==null?void 0:s.scrollLeft)??0)*m,W=V/m;g.value&&(g.value.style.width=`${b/m}px`,g.value.style.height=`${W}px`,g.value.style.top=`${O/m}px`,g.value.style.left=`${A/m}px`,ve(O,A)),N.value&&(O<45&&W<100?(N.value.style.top="",N.value.style.bottom="-30px",N.value.style["border-radius"]="0px 0px 4px 4px",h.value="bottom"):O<45?(N.value.style.top="0px",N.value.style["border-radius"]="0px 0px 4px 0",h.value="center"):(N.value.style.top="-30px",N.value.style["border-radius"]="4px 4px 0px 0px",h.value="top"))}function ve(t,r){const y=$.value;if(!s||!y)return;const a=s.getBoundingClientRect(),{width:C}=y.getBoundingClientRect(),b=T.value?1:u.value,V=t/b-a.top;let m=r/b-a.left+C/b;m<a.width&&(m=0);const O=s.scrollTop-a.height/3+60,A=s.scrollTop+a.height/3*2,W=s.scrollLeft-a.width+200,X=s.scrollLeft+a.width-200;Math.abs(V-J)<10&&Math.abs(m-K)<10||(J=V,K=m,!(V>O&&V<A&&m>W&&m<X)&&(s.scrollTop=V,s.scrollLeft=m))}function oe(){var W,X;const t=x.value;if(!t)return;const{top:r,left:y}=(s==null?void 0:s.getBoundingClientRect())??{top:0,left:0},{top:a,left:C,width:b,height:V}=((W=t.getBoundingClientRect)==null?void 0:W.call(t))??((X=t.nextElementSibling)==null?void 0:X.getBoundingClientRect()),m=T.value?1:u.value,O=a-r+((s==null?void 0:s.scrollTop)??0)*m,A=C-y+((s==null?void 0:s.scrollLeft)??0)*m;R.value&&(R.value.style.width=`${b/m}px`,R.value.style.height=`${V/m}px`,R.value.style.top=`${O/m}px`,R.value.style.left=`${A/m}px`)}function ae(t){const r=window.MutationObserver,y={childList:!0,attributes:!0,subtree:!0};return{mutationObserver:new r(t),observerConfig:y}}function ge(t){var r,y,a,C,b,V,m,O,A,W,X,se,re,ie,ce,de,ue,fe;if(t==="right"){const f=n.state.matched.find(I=>I.type==="eTable"),S=l.findSchemaInfoById(o.schemas,(f==null?void 0:f.id)??"root"),B=(y=l.findSchemaInfoById(o.schemas,((r=n.state.checkedNode)==null?void 0:r.id)??"root"))==null?void 0:y.index;(a=S.list)==null||a[0].children.forEach(I=>{var D;(D=I.children)==null||D.splice(B+1,0,{type:"eTd",id:"eTd_"+l.getUUID(),children:[]})}),i.push(o.schemas,"添加右列")}else if(t==="left"){const f=n.state.matched.find(I=>I.type==="eTable"),S=l.findSchemaInfoById(o.schemas,(f==null?void 0:f.id)??"root"),B=(b=l.findSchemaInfoById(o.schemas,((C=n.state.checkedNode)==null?void 0:C.id)??"root"))==null?void 0:b.index;(V=S.list)==null||V[0].children.forEach(I=>{var D;B===0?I.children.unshift({type:"eTd",id:"eTd_"+l.getUUID(),children:[]}):(D=I.children)==null||D.splice(B-1,0,{type:"eTd",id:"eTd_"+l.getUUID(),children:[]})}),i.push(o.schemas,"添加左列")}else if(t==="top"){const f=n.state.matched.find(p=>p.type==="eTable"),S=n.state.matched.find(p=>p.type==="eTr"),B=l.findSchemaInfoById(o.schemas,(f==null?void 0:f.id)??"root"),I=l.findSchemaInfoById(o.schemas,(S==null?void 0:S.id)??"root"),D=l.findSchemaInfoById(o.schemas,((m=n.state.checkedNode)==null?void 0:m.id)??"root");I.index===0?(O=B.list)==null||O[0].children.unshift({type:"eTr",id:"eTr_"+l.getUUID(),children:l.deepClone(D.list).map(p=>(p.id="eTd_"+l.getUUID(),p.children=[],p))}):(A=B.list)==null||A[0].children.splice(I.index-1,0,{type:"eTr",id:"eTr_"+l.getUUID(),children:l.deepClone(D.list).map(p=>(p.id="eTd_"+l.getUUID(),p.children=[],p))}),i.push(o.schemas,"添加上列")}else if(t==="bottom"){const f=n.state.matched.find(p=>p.type==="eTable"),S=n.state.matched.find(p=>p.type==="eTr"),B=l.findSchemaInfoById(o.schemas,(f==null?void 0:f.id)??"root"),I=l.findSchemaInfoById(o.schemas,(S==null?void 0:S.id)??"root"),D=l.findSchemaInfoById(o.schemas,((W=n.state.checkedNode)==null?void 0:W.id)??"root");(X=B.list)==null||X[0].children.splice(I.index+1,0,{type:"eTr",id:"eTr_"+l.getUUID(),children:l.deepClone(D.list).map(p=>(p.id="eTd_"+l.getUUID(),p.children=[],p))}),i.push(o.schemas,"添加下列")}else if(t==="merge-right"){n.state.matched.find(I=>I.type==="eTr");const f=l.findSchemaInfoById(o.schemas,((se=n.state.checkedNode)==null?void 0:se.id)??"root");if(f.index===f.list.length-1)return;const S=f.list[f.index],B=f.list[f.index+1];S.colspan=(S.colspan||1)+(B.colspan||1),f.list.splice(f.index+1,1),i.push(o.schemas,"向右合并")}else if(t==="merge-bottom"){const f=n.state.matched.find(p=>p.type==="eTable"),S=n.state.matched.find(p=>p.type==="eTr");l.findSchemaInfoById(o.schemas,(f==null?void 0:f.id)??"root");const B=l.findSchemaInfoById(o.schemas,(S==null?void 0:S.id)??"root"),D=l.findSchemaInfoById(o.schemas,((re=n.state.checkedNode)==null?void 0:re.id)??"root").index;if(B.index!==B.list.length-1){const p=B.list[B.index];let te=0,ne=0;p.children.forEach((Y,le)=>{Y.colSpan||(Y.colSpan=1),ne=ne+Y.colSpan,ne===D+1&&(te=le)}),p.children[te].rowSpan=(p.children[te].rowSpan||1)+1;const Se=B.list[B.index+p.children[te].rowSpan-1];let he=0,me=0;p.children.forEach((Y,le)=>{Y.colSpan||(Y.colSpan=1),me=me+Y.colSpan,ne===D+1&&(he=le)}),Se.children.splice(he,1)}i.push(o.schemas,"向下合并")}else if(t==="delete-col"){const f=n.state.matched.find(I=>I.type==="eTable"),S=l.findSchemaInfoById(o.schemas,(f==null?void 0:f.id)??"root"),B=(ce=l.findSchemaInfoById(o.schemas,((ie=n.state.checkedNode)==null?void 0:ie.id)??"root"))==null?void 0:ce.index;(de=S.list)==null||de[0].children.forEach(I=>{var D;(D=I.children)==null||D.splice(B,1)}),i.push(o.schemas,"删除当前列")}else if(t==="delete-row"){const f=n.state.matched.find(D=>D.type==="eTable"),S=n.state.matched.find(D=>D.type==="eTr"),B=l.findSchemaInfoById(o.schemas,(f==null?void 0:f.id)??"root"),I=l.findSchemaInfoById(o.schemas,(S==null?void 0:S.id)??"root");l.findSchemaInfoById(o.schemas,((ue=n.state.checkedNode)==null?void 0:ue.id)??"root"),(fe=B.list)==null||fe[0].children.splice(I.index,1),i.push(o.schemas,"删除当前行")}}function xe(){var b;const t=l.findSchemaInfoById(o.schemas,((b=n.state.checkedNode)==null?void 0:b.id)??"root");if(!t)return!1;const{list:r,schema:y,index:a}=t,C=l.generateNewSchema(y);r.splice(a+1,0,C),n.setCheckedNode(C),i.push(o.schemas,"复制组件")}function ye(){var C;const t=l.findSchemaInfoById(o.schemas,((C=n.state.checkedNode)==null?void 0:C.id)??"root");if(!t)return!1;let{list:r,schema:y,index:a}=t;r.splice(a,1),a===r.length&&a--,n.setCheckedNode(r[a]),i.push(o.schemas,"删除组件")}function ke(t){s=t,s==null||s.addEventListener("scroll",()=>{F()}),H.useResizeObserver($,F),H.useResizeObserver(x,oe)}return L({handleInit:ke}),(t,r)=>{var y,a,C,b,V;return e.openBlock(),e.createElementBlock(e.Fragment,null,[e.withDirectives(e.createElementVNode("div",{ref_key:"selectorRef",ref:g,class:e.normalizeClass(["epic-checked-widget absolute pointer-events-none z-20",h.value+" "+(d.value?"transition-all":"")])},[e.createElementVNode("div",{class:"epic-widget-action-box",ref_key:"actionBoxRef",ref:N},[e.createElementVNode("div",Ce,e.toDisplayString((a=e.unref(l.pluginManager).getComponentConfingByType(((y=e.unref(n).state.checkedNode)==null?void 0:y.type)??""))==null?void 0:a.defaultSchema.label),1),P.value?(e.openBlock(),e.createElementBlock("div",Ne,[P.value&&!j.value?(e.openBlock(),e.createElementBlock("div",{key:0,title:"复制",class:"epic-widget-action-item pointer-events-auto",onClick:xe},[e.createVNode(e.unref(ee._sfc_main),{name:"icon--epic--copy-all-outline-rounded"})])):e.createCommentVNode("",!0),e.createVNode(e.unref(Q.ElDropdown),{onCommand:ge,trigger:"click"},{dropdown:e.withCtx(()=>[e.createVNode(e.unref(Q.ElDropdownMenu),null,{default:e.withCtx(()=>[e.createVNode(e.unref(Q.ElDropdownItem),{command:"left"},{default:e.withCtx(()=>r[0]||(r[0]=[e.createTextVNode("添加左列")])),_:1}),e.createVNode(e.unref(Q.ElDropdownItem),{command:"right"},{default:e.withCtx(()=>r[1]||(r[1]=[e.createTextVNode("添加右列")])),_:1}),e.createVNode(e.unref(Q.ElDropdownItem),{command:"top"},{default:e.withCtx(()=>r[2]||(r[2]=[e.createTextVNode("添加上列")])),_:1}),e.createVNode(e.unref(Q.ElDropdownItem),{command:"bottom"},{default:e.withCtx(()=>r[3]||(r[3]=[e.createTextVNode("添加下列")])),_:1}),e.createVNode(e.unref(Q.ElDropdownItem),{command:"delete-row",divided:""},{default:e.withCtx(()=>r[4]||(r[4]=[e.createTextVNode("删除当前行")])),_:1}),e.createVNode(e.unref(Q.ElDropdownItem),{command:"delete-col"},{default:e.withCtx(()=>r[5]||(r[5]=[e.createTextVNode("删除当前列")])),_:1})]),_:1})]),default:e.withCtx(()=>[j.value?(e.openBlock(),e.createElementBlock("div",_e,[e.createVNode(e.unref(ee._sfc_main),{name:"icon--epic--window-outline"})])):e.createCommentVNode("",!0)]),_:1}),P.value&&!j.value?(e.openBlock(),e.createElementBlock("div",{key:1,title:"删除",class:"epic-widget-action-item pointer-events-auto",onClick:ye},[e.createVNode(e.unref(ee._sfc_main),{name:"icon--epic--delete-outline-rounded"})])):e.createCommentVNode("",!0)])):e.createCommentVNode("",!0)],512)],2),[[e.vShow,z.value&&((C=e.unref(n).state.checkedNode)==null?void 0:C.id)!=="root"]]),e.withDirectives(e.createElementVNode("div",{ref_key:"hoverWidgetRef",ref:R,class:"epic-hover-widget absolute transition-all pointer-events-none z-998"},null,512),[[e.vShow,c.value&&((b=e.unref(n).state.checkedNode)==null?void 0:b.id)!==((V=e.unref(n).state.hoverNode)==null?void 0:V.id)]])],64)}}}),Be=e.defineComponent({name:"EditNodeItem",__name:"editNodeItem",props:{schemas:{}},emits:["update:schemas"],setup(Z,{emit:L}){const v=e.inject("designer"),o=e.inject("pageSchema"),n=e.inject("revoke"),w=Z,i=L,g=e.computed({get(){return w.schemas},set(d){i("update:schemas",d)}});function R(d){v.setCheckedNode(g.value[d]),v.setDisableHover(!0)}function N(){v.setDisableHover(),n.push(o.schemas,"拖拽组件")}function z(){n.push(o.schemas,"插入组件")}function c(d){var h,u,T;return d.id===((h=o.schemas[0])==null?void 0:h.id)||(T=(u=l.pluginManager.getComponentConfingByType(d.type))==null?void 0:u.editConstraints)!=null&&T.immovable?"unmover-item":"draggable-item"}return(d,h)=>(e.openBlock(),e.createBlock(e.unref(we.draggable),e.mergeProps({modelValue:g.value,"onUpdate:modelValue":h[0]||(h[0]=u=>g.value=u),"item-key":"id","component-data":{type:"transition-group"},class:"epic-draggable-range"},{animation:200,group:"edit-draggable",handle:".draggable-item",ghostClass:"moveing"},{onStart:h[1]||(h[1]=u=>R(u.oldIndex)),onEnd:h[2]||(h[2]=u=>N()),onAdd:h[3]||(h[3]=u=>{R(u.newIndex),z()})}),{item:e.withCtx(({element:u,index:T})=>[(e.openBlock(),e.createElementBlock("div",{class:e.normalizeClass(["widget-box",c(u)]),key:T},[e.createVNode(pe,{schema:u},null,8,["schema"])],2))]),_:1},16,["modelValue"]))}}),pe=e.defineComponent({name:"ENodeItem",__name:"nodeItem",props:{schema:{},name:{}},setup(Z){const L=e.useAttrs(),v=e.inject("designer"),o=e.inject("pageManager",{}),n=e.inject("pageSchema",{}),w=e.ref(null);e.provide("nodeAttrs",L);const i=Z,g=e.computed(()=>{var T,s,P,j,$;const c=o.componentInstances.value,d=(T=i.schema)==null?void 0:T.id,h=l.pluginManager.getComponentConfingByType((s=i.schema)==null?void 0:s.type)??null;if(!d||!(c!=null&&c[d]))return null;if(h!=null&&h.defaultSchema.input&&((P=i.schema)==null?void 0:P.noFormItem)!==!0)return(j=c[d+"formItem"])==null?void 0:j.$el;const u=c[d];return(($=u==null?void 0:u.$el)==null?void 0:$.nodeName)==="#text"?null:u==null?void 0:u.$el});e.watch(()=>g.value,c=>{c==null||c.addEventListener("click",R,!1),c==null||c.addEventListener("mouseover",N,!1),c==null||c.addEventListener("mouseout",z,!1)}),e.onUnmounted(()=>{var c,d,h;(c=g.value)==null||c.removeEventListener("click",R,!1),(d=g.value)==null||d.removeEventListener("mouseover",N,!1),(h=g.value)==null||h.removeEventListener("mouseout",z,!1)});function R(c){c.stopPropagation(),v.setCheckedNode(i.schema)}function N(c){var d;i.schema.id!==((d=n.schemas[0])==null?void 0:d.id)&&(c.stopPropagation(),v.setHoverNode(i.schema))}function z(c){c.stopPropagation(),v.setHoverNode(null)}return(c,d)=>{var u,T;const h=e.resolveComponent("ENodeItem");return e.openBlock(),e.createBlock(e.unref(H._sfc_main),{ref_key:"nodeRef",ref:w,componentSchema:i.schema},e.createSlots({_:2},[(T=(u=e.unref(l.pluginManager).getComponentConfingByType(i.schema.type))==null?void 0:u.editConstraints)!=null&&T.childImmovable?{name:"edit-node",fn:e.withCtx(()=>[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(i.schema.children,s=>(e.openBlock(),e.createBlock(h,{key:s.id,schema:s},null,8,["schema"]))),128))]),key:"0"}:{name:"edit-node",fn:e.withCtx(()=>[i.schema.children?(e.openBlock(),e.createBlock(Be,{key:0,schemas:i.schema.children,"onUpdate:schemas":d[0]||(d[0]=s=>i.schema.children=s)},null,8,["schemas"])):e.createCommentVNode("",!0)]),key:"1"}]),1032,["componentSchema"])}}}),Ie={class:"min-w-750px rounded h-full"},Te=e.defineComponent({__name:"previewJson",setup(Z,{expose:L}){const v=l.pluginManager.getComponent("modal"),o=l.pluginManager.getComponent("monacoEditor"),n={theme:"vs-light",selectOnLineNumbers:!0,minimap:{enabled:!1},readOnly:!0},w=e.ref(null),i=e.ref(!1),g=e.inject("pageSchema");function R(){i.value=!1}function N(){i.value=!0,w.value?w.value.setValue(JSON.stringify(g,null,2)):setTimeout(()=>{N()},300)}function z(c="epic-data.json"){const d=JSON.stringify(g,null,2);var h=`data:text/json;charset=utf-8,${encodeURIComponent(d)}`,u=document.createElement("a");u.setAttribute("href",h),u.setAttribute("download",c),u.click()}return L({handleOpen:N}),(c,d)=>(e.openBlock(),e.createBlock(e.unref(v),{modelValue:i.value,"onUpdate:modelValue":d[0]||(d[0]=h=>i.value=h),title:"查看数据",class:"w-900px",width:"900px",onClose:R,onOk:z,okText:"导出数据"},{default:e.withCtx(()=>[e.createElementVNode("div",Ie,[e.createVNode(e.unref(o),{ref_key:"monacoEditorRef",ref:w,class:"editor h-full",autoToggleTheme:"",readOnly:"",config:n,language:"json"},null,512)])]),_:1},8,["modelValue"]))}}),Ve={class:"epic-edit-toolbar flex items-center justify-between px-2"},Ee={class:"flex-1 h-full flex items-center"},De={key:0,class:"epic-divider"},Re=["title","onClick"],$e={class:"flex-1 h-full flex items-center justify-end"},Me={key:0,class:"flex items-center ml-12px"},Ue={class:"pr-8px w-82px cursor-pointer"},Le={class:"epic-device h-28px items-center gap-1 rounded-md border p-2px flex"},ze=["title","onClick"],Oe=e.defineComponent({__name:"toolbar",setup(Z){const L=l.pluginManager.getComponent("select"),{canvasScale:v,disabledZoom:o}=H.useStore(),n=e.ref("pc"),w=e.inject("pageSchema"),i=e.inject("designer"),g=e.inject("revoke"),R=e.ref(null),N=[{icon:"icon--epic--computer-outline-rounded",title:"pc",key:"pc"},{icon:"icon--epic--tablet-android-outline-rounded",title:"平板",key:"pad"},{icon:"icon--epic--phone-iphone-outline-sharp",title:"手机",key:"mobile"}],z=e.computed(()=>[{icon:"icon--epic--trash",title:"清空",on:s},{icon:"icon--epic--undo",title:"撤销",on:u,disabled:!g.recordList.value.length,divider:!0},{icon:"icon--epic--redo",title:"重做",on:T,disabled:!g.undoList.value.length}]),c=e.ref(null),d=e.computed({get(){return`${(v.value*100).toFixed(0)}%`},set(x){const _=parseFloat(x);v.value=_/100}}),h=[{label:"60%",value:"60%"},{label:"80%",value:"80%"},{label:"100%",value:"100%"},{label:"120%",value:"120%"},{label:"140%",value:"140%"}];function u(){const x=g.undo();x&&(l.deepCompareAndModify(w.schemas,x),i.setCheckedNode(w.schemas[0]))}function T(){const x=g.redo();x&&(l.deepCompareAndModify(w.schemas,x),i.setCheckedNode(w.schemas[0]))}function s(){i.reset()}function P(x){var q;const _=(q=x.target.files)==null?void 0:q[0];if(!_)return;x.target.value=null;const k=new FileReader;k.readAsText(_),k.onload=G=>{var M;j((M=G.target)==null?void 0:M.result)}}function j(x){try{let _=JSON.parse(x??"");_.schemas||(_=l.convertKFormData(_)),l.deepCompareAndModify(w,_)}catch(_){console.error(_)}}function $(x){i.handleToggleDeviceMode(x),n.value=x;const _={pc:{},pad:{width:"780px",mode:x},mobile:{width:"390px",height:"844px",mode:x}};w.canvas=_[x],console.log("%c [ pageSchema ]-248","font-size:13px; background:pink; color:#bf2c9f;",w)}return(x,_)=>(e.openBlock(),e.createElementBlock(e.Fragment,null,[e.createElementVNode("div",Ve,[e.createElementVNode("div",Ee,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(z.value,(k,q)=>(e.openBlock(),e.createElementBlock(e.Fragment,{key:q},[k.divider?(e.openBlock(),e.createElementBlock("div",De)):e.createCommentVNode("",!0),e.createElementVNode("div",{title:k.title,class:e.normalizeClass(["epic-action-item text-base h-90% px-10px flex items-center cursor-pointer",{disabled:k.disabled}]),onClick:k.on},[e.createVNode(e.unref(ee._sfc_main),{name:k.icon},null,8,["name"])],10,Re)],64))),128))]),e.withDirectives(e.createElementVNode("input",{type:"file",ref_key:"fileRef",ref:c,accept:".json,.txt",onChange:P},null,544),[[e.vShow,!1]]),e.createElementVNode("div",$e,[e.unref(o)?e.createCommentVNode("",!0):(e.openBlock(),e.createElementBlock("div",Me,[e.createElementVNode("div",Ue,[e.createVNode(e.unref(L),{value:d.value,"onUpdate:value":_[0]||(_[0]=k=>d.value=k),modelValue:d.value,"onUpdate:modelValue":_[1]||(_[1]=k=>d.value=k),options:h,size:"small"},null,8,["value","modelValue"])])])),e.createElementVNode("div",Le,[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(N,k=>e.createElementVNode("div",{key:k.key,title:k.title,class:e.normalizeClass(["epic-device-item h-full px-1 flex items-center cursor-pointer text-base transition-colors rounded-sm",{checked:k.key===n.value}]),onClick:q=>$(k.key)},[e.createVNode(e.unref(ee._sfc_main),{name:k.icon},null,8,["name"])],10,ze)),64))])])]),e.createVNode(Te,{ref_key:"previewJson",ref:R},null,512)],64))}}),He={class:"h-full flex flex-col relative"},je=["draggable"],Fe=e.defineComponent({__name:"editScreenContainer",setup(Z){const L=e.inject("pageSchema"),v=e.ref(null),o=e.ref(null),n=e.ref(null),{pressSpace:w,disabledZoom:i}=H.useStore(),{handleElementDragStart:g,handleElementDrag:R,handleElementDragEnd:N}=H.useElementDrag(v),{width:z,height:c}=H.useElementSize(v),{canvasScale:d,handleZoom:h}=H.useElementZoom(o);let u=0,T=0;const s=e.ref({}),P=e.ref({}),j=e.ref({}),$=e.shallowRef({width:0,height:0});e.watchEffect(_),e.watch(j,()=>{e.nextTick(x)});function x(){n.value&&($.value={width:n.value.clientWidth,height:n.value.clientHeight})}function _(){var M,E;j.value={width:((M=L.canvas)==null?void 0:M.width)??"0",height:((E=L.canvas)==null?void 0:E.height)??"0"}}H.watchOnce(z,k),e.watch($,k);function k(){let M=$.value.width||u,E=$.value.height||T;s.value={width:z.value+M+"px",height:c.value+E+"px"},P.value={width:M+"px",height:E+"px"},q()}function q(){e.nextTick(()=>{var K;let M=$.value.width||u;const U=($.value.height||T)/2,J=M/2;(K=v.value)==null||K.scrollTo(J,U)})}H.useResizeObserver(v,G),H.useResizeObserver(o,G);function G(){var E;if(!v.value)return;const M=v.value.getBoundingClientRect();if(u=M.width-60,T=M.height-80,!i.value)if($.value.width===0)d.value=1;else{const U=(u-20)/$.value.width,J=T/($.value.height||((E=o.value)==null?void 0:E.clientHeight)||1),K=Math.abs(U-1)<Math.abs(J-1);let F=1;K?F=U:F=J,(U<1||J<1)&&(F=Math.min(U,J)),F<1.4&&F>.5&&(d.value=F)}H.debounce(k,50)()}return(M,E)=>(e.openBlock(),e.createElementBlock("div",He,[e.createVNode(Oe),e.createElementVNode("div",{ref_key:"editScreenContainerRef",ref:v,class:e.normalizeClass(["flex-1 overflow-auto overflow-y-hidden epic-edit-screen-container",{"cursor-grab":e.unref(w)}]),draggable:e.unref(w),onWheel:E[0]||(E[0]=(...U)=>e.unref(h)&&e.unref(h)(...U)),onDragstart:E[1]||(E[1]=(...U)=>e.unref(g)&&e.unref(g)(...U)),onDragend:E[2]||(E[2]=(...U)=>e.unref(N)&&e.unref(N)(...U)),onDrag:E[3]||(E[3]=(...U)=>e.unref(R)&&e.unref(R)(...U))},[e.createElementVNode("div",{id:"canvasContainer",class:"flex items-center justify-center",style:e.normalizeStyle(s.value)},[e.createElementVNode("div",{ref_key:"draggableElRef",ref:o,class:"transition-all"},[e.createElementVNode("div",{class:e.normalizeClass({"pointer-events-none":e.unref(w)}),style:e.normalizeStyle(P.value)},[e.renderSlot(M.$slots,"default")],6)],512)],4)],42,je),e.createElementVNode("div",{ref_key:"sizeBoxRef",ref:n,class:"absolute top-0 pointer-events-none",style:e.normalizeStyle(j.value)},null,4)]))}}),Ae={class:"epic-edit-canvas"},Pe=e.defineComponent({__name:"index",setup(Z){const L=e.ref(null),v=e.ref(null),o=e.inject("pageSchema"),n=e.computed(()=>o.schemas[0]),w=e.computed(()=>({width:"100%",height:"100%"}));return e.onMounted(()=>{var i;(i=v.value)==null||i.handleInit(L.value)}),(i,g)=>(e.openBlock(),e.createElementBlock("section",Ae,[e.createVNode(Fe,null,{default:e.withCtx(()=>[e.createElementVNode("div",{ref_key:"epicEditRangeRef",ref:L,class:"epic-edit-range rounded-md overflow-auto relative",style:e.normalizeStyle(w.value)},[e.createVNode(pe,{schema:n.value},null,8,["schema"]),e.createVNode(be,{ref_key:"ePreviewWidgetsRef",ref:v},null,512)],4)]),_:1})]))}});exports.default=Pe;
@@ -2,7 +2,7 @@ import { defineComponent as $, inject as M, resolveComponent as z, openBlock as
2
2
  import { d as K } from "./vuedraggable.umd-D2S7Eo7p.js";
3
3
  import { p, E as N } from "./pluginManager-BCnrHPYv.js";
4
4
  import { _ as C } from "./icon.vue_vue_type_script_setup_true_lang-D3QdcReY.js";
5
- import { g as S } from "./index-GIYb626z.js";
5
+ import { g as S } from "./index-CXI_7l7O.js";
6
6
  import "element-plus";
7
7
  import { u as P } from "./index-B1s67XDZ.js";
8
8
  import { _ as Q } from "./_plugin-vue_export-helper-CHgC5LLL.js";
@@ -0,0 +1,4 @@
1
+ import { _ as f } from "./index-CXI_7l7O.js";
2
+ export {
3
+ f as default
4
+ };
@@ -1,6 +1,6 @@
1
1
  import { defineComponent as g, ref as p, onMounted as h, watch as v, nextTick as V, openBlock as _, createElementBlock as T } from "vue";
2
2
  import * as a from "monaco-editor";
3
- import { h as b } from "./index-GIYb626z.js";
3
+ import { h as b } from "./index-CXI_7l7O.js";
4
4
  import { _ as y } from "./_plugin-vue_export-helper-CHgC5LLL.js";
5
5
  const x = /* @__PURE__ */ g({
6
6
  __name: "index",
package/dist/index.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("./index-BY37Ndo7.cjs"),e=require("./pluginManager-DWHAX8kP.cjs");exports.EBuilder=a._sfc_main$1;exports.EDesigner=a._sfc_main$2;exports.ENode=a._sfc_main;exports.debounce=a.debounce;exports.getDarkState=a.getDarkState;exports.initStore=a.initStore;exports.useDark=a.useDark;exports.useElementDrag=a.useElementDrag;exports.useElementZoom=a.useElementZoom;exports.useKeyPress=a.useKeyPress;exports.usePageManager=a.usePageManager;exports.useRevoke=a.useRevoke;exports.useStore=a.useStore;exports.useTheme=a.useTheme;exports.useTimedQuery=a.useTimedQuery;exports.EventBus=e.EventBus;exports.PluginManager=e.PluginManager;exports.capitalizeFirstLetter=e.capitalizeFirstLetter;exports.convertKFormData=e.convertKFormData;exports.deepClone=e.deepClone;exports.deepCompareAndModify=e.deepCompareAndModify;exports.deepEqual=e.deepEqual;exports.findSchemaById=e.findSchemaById;exports.findSchemaInfoById=e.findSchemaInfoById;exports.findSchemas=e.findSchemas;exports.generateNewSchema=e.generateNewSchema;exports.getFormFields=e.getFormFields;exports.getFormSchemas=e.getFormSchemas;exports.getMatchedById=e.getMatchedById;exports.getUUID=e.getUUID;exports.getValueByPath=e.getValueByPath;exports.loadAsyncComponent=e.loadAsyncComponent;exports.mapSchemas=e.mapSchemas;exports.pluginManager=e.pluginManager;exports.recursionConvertedNode=e.recursionConvertedNode;exports.setValueByPath=e.setValueByPath;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("./index-DOZPyH6X.cjs"),e=require("./pluginManager-DWHAX8kP.cjs");exports.EBuilder=a._sfc_main$1;exports.EDesigner=a._sfc_main$2;exports.ENode=a._sfc_main;exports.debounce=a.debounce;exports.getDarkState=a.getDarkState;exports.initStore=a.initStore;exports.useDark=a.useDark;exports.useElementDrag=a.useElementDrag;exports.useElementZoom=a.useElementZoom;exports.useKeyPress=a.useKeyPress;exports.usePageManager=a.usePageManager;exports.useRevoke=a.useRevoke;exports.useStore=a.useStore;exports.useTheme=a.useTheme;exports.useTimedQuery=a.useTimedQuery;exports.EventBus=e.EventBus;exports.PluginManager=e.PluginManager;exports.capitalizeFirstLetter=e.capitalizeFirstLetter;exports.convertKFormData=e.convertKFormData;exports.deepClone=e.deepClone;exports.deepCompareAndModify=e.deepCompareAndModify;exports.deepEqual=e.deepEqual;exports.findSchemaById=e.findSchemaById;exports.findSchemaInfoById=e.findSchemaInfoById;exports.findSchemas=e.findSchemas;exports.generateNewSchema=e.generateNewSchema;exports.getFormFields=e.getFormFields;exports.getFormSchemas=e.getFormSchemas;exports.getMatchedById=e.getMatchedById;exports.getUUID=e.getUUID;exports.getValueByPath=e.getValueByPath;exports.loadAsyncComponent=e.loadAsyncComponent;exports.mapSchemas=e.mapSchemas;exports.pluginManager=e.pluginManager;exports.recursionConvertedNode=e.recursionConvertedNode;exports.setValueByPath=e.setValueByPath;
package/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
- import { i as s, j as t, _ as r, f as o, o as n, p as d, n as m, c as u, e as i, m as g, k as c, l, u as h, h as p, a as f } from "./index-GIYb626z.js";
1
+ import { i as s, j as t, _ as r, f as o, o as n, p as d, n as m, c as u, e as i, m as g, k as c, l, u as h, h as p, a as f } from "./index-CXI_7l7O.js";
2
2
  import { E as S, P as E, c as B, q as D, a as P, d as k, b as F, n as I, o as M, f as v, h as C, j as N, k as b, e as j, g as q, i as x, l as A, m as K, p as T, r as U, s as V } from "./pluginManager-BCnrHPYv.js";
3
3
  export {
4
4
  s as EBuilder,
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),m=require("./index-BY37Ndo7.cjs"),p=require("./pluginManager-DWHAX8kP.cjs"),P=require("./index-BoL2PSBk.cjs"),g=["title"],b={class:"epic-attr-input"},k=e.defineComponent({__name:"styleView",setup(v){const{t:r}=P.useLocale(),d=e.inject("designer"),i=e.inject("pageSchema"),u=e.inject("revoke"),s=[{label:r("width"),type:"EInputSize",field:"componentProps.style.width"},{label:r("height"),type:"EInputSize",field:"componentProps.style.height"},{label:"行高",type:"EInputSize",field:"componentProps.style.lineHeight",componentProps:{type:"border",style:{}}},{label:r("backgroundColor"),type:"color-picker",field:"componentProps.style.backgroundColor",componentProps:{type:"color",style:{}}},{label:r("fontColor"),type:"color-picker",field:"componentProps.style.color",componentProps:{type:"color",style:{}}},{label:"边框",type:"input",field:"componentProps.style.border",componentProps:{type:"border",placeholder:"请输入",style:{}}},{label:"字体粗细",type:"input",field:"componentProps.style.fontWeight",componentProps:{type:"border",placeholder:"请输入",style:{}}},{label:"",type:"PaddingMarginControl",field:"componentProps.style"}],c=e.computed(()=>d.state.checkedNode);function y(t){var n;return typeof t.show=="boolean"?t.show:((n=t.show)==null?void 0:n.call(t,{values:c.value}))??!0}function h(t,n,l,o=c.value){typeof l.onChange=="function"&&l.onChange({value:t,values:o,componentStyles:s}),l.changeSync?p.setValueByPath(o,n,t):e.nextTick(()=>{p.setValueByPath(o,n,t)}),u.push(i.schemas,r("editComponentProperties"))}return(t,n)=>{var l;return e.openBlock(),e.createElementBlock("div",{class:"epic-style-view",key:(l=c.value)==null?void 0:l.id},[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(s,o=>{var a;return e.createElementVNode("div",{key:o.field},[y(o)?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["epic-attr-item",o.layout])},[o.label?(e.openBlock(),e.createElementBlock("div",{key:0,class:"epic-attr-label",title:o.label},e.toDisplayString(o.label),9,g)):e.createCommentVNode("",!0),e.createElementVNode("div",b,[e.createVNode(e.unref(m._sfc_main),{componentSchema:{...o,componentProps:{...o.componentProps,...o.field==="componentProps.defaultValue"?(a=c.value)==null?void 0:a.componentProps:{},input:!1,field:void 0,hidden:!1},show:!0,noFormItem:!0},"model-value":e.unref(p.getValueByPath)(o.editData??c.value,o.field),"onUpdate:modelValue":f=>h(f,o.field,o,o.editData)},null,8,["componentSchema","model-value","onUpdate:modelValue"])])],2)):e.createCommentVNode("",!0)])}),64))])}}});exports.default=k;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("vue"),m=require("./index-DOZPyH6X.cjs"),p=require("./pluginManager-DWHAX8kP.cjs"),P=require("./index-BoL2PSBk.cjs"),g=["title"],b={class:"epic-attr-input"},k=e.defineComponent({__name:"styleView",setup(v){const{t:r}=P.useLocale(),d=e.inject("designer"),i=e.inject("pageSchema"),u=e.inject("revoke"),s=[{label:r("width"),type:"EInputSize",field:"componentProps.style.width"},{label:r("height"),type:"EInputSize",field:"componentProps.style.height"},{label:"行高",type:"EInputSize",field:"componentProps.style.lineHeight",componentProps:{type:"border",style:{}}},{label:r("backgroundColor"),type:"color-picker",field:"componentProps.style.backgroundColor",componentProps:{type:"color",style:{}}},{label:r("fontColor"),type:"color-picker",field:"componentProps.style.color",componentProps:{type:"color",style:{}}},{label:"边框",type:"input",field:"componentProps.style.border",componentProps:{type:"border",placeholder:"请输入",style:{}}},{label:"字体粗细",type:"input",field:"componentProps.style.fontWeight",componentProps:{type:"border",placeholder:"请输入",style:{}}},{label:"",type:"PaddingMarginControl",field:"componentProps.style"}],c=e.computed(()=>d.state.checkedNode);function y(t){var n;return typeof t.show=="boolean"?t.show:((n=t.show)==null?void 0:n.call(t,{values:c.value}))??!0}function h(t,n,l,o=c.value){typeof l.onChange=="function"&&l.onChange({value:t,values:o,componentStyles:s}),l.changeSync?p.setValueByPath(o,n,t):e.nextTick(()=>{p.setValueByPath(o,n,t)}),u.push(i.schemas,r("editComponentProperties"))}return(t,n)=>{var l;return e.openBlock(),e.createElementBlock("div",{class:"epic-style-view",key:(l=c.value)==null?void 0:l.id},[(e.openBlock(),e.createElementBlock(e.Fragment,null,e.renderList(s,o=>{var a;return e.createElementVNode("div",{key:o.field},[y(o)?(e.openBlock(),e.createElementBlock("div",{key:0,class:e.normalizeClass(["epic-attr-item",o.layout])},[o.label?(e.openBlock(),e.createElementBlock("div",{key:0,class:"epic-attr-label",title:o.label},e.toDisplayString(o.label),9,g)):e.createCommentVNode("",!0),e.createElementVNode("div",b,[e.createVNode(e.unref(m._sfc_main),{componentSchema:{...o,componentProps:{...o.componentProps,...o.field==="componentProps.defaultValue"?(a=c.value)==null?void 0:a.componentProps:{},input:!1,field:void 0,hidden:!1},show:!0,noFormItem:!0},"model-value":e.unref(p.getValueByPath)(o.editData??c.value,o.field),"onUpdate:modelValue":f=>h(f,o.field,o,o.editData)},null,8,["componentSchema","model-value","onUpdate:modelValue"])])],2)):e.createCommentVNode("",!0)])}),64))])}}});exports.default=k;
@@ -1,5 +1,5 @@
1
1
  import { defineComponent as k, inject as a, computed as _, openBlock as p, createElementBlock as s, Fragment as S, renderList as C, createElementVNode as i, normalizeClass as V, toDisplayString as w, createCommentVNode as u, createVNode as E, unref as y, nextTick as N } from "vue";
2
- import { _ as z } from "./index-GIYb626z.js";
2
+ import { _ as z } from "./index-CXI_7l7O.js";
3
3
  import { i as B, s as f } from "./pluginManager-BCnrHPYv.js";
4
4
  import { u as I } from "./index-B1s67XDZ.js";
5
5
  const x = ["title"], F = { class: "epic-attr-input" }, M = /* @__PURE__ */ k({
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "epic-designer-gold",
3
3
  "private": false,
4
- "version": "1.0.7",
4
+ "version": "1.0.8",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
7
7
  "module": "dist/index.js",
@@ -0,0 +1,78 @@
1
+ // vite.config.ts
2
+ import { defineConfig } from "file:///D:/gold/epic-designer/node_modules/.pnpm/vite@5.4.11_@types+node@22.9.0_less@4.2.0/node_modules/vite/dist/node/index.js";
3
+ import vue from "file:///D:/gold/epic-designer/node_modules/.pnpm/@vitejs+plugin-vue@5.1.5_vite@5.4.11_@types+node@22.9.0_less@4.2.0__vue@3.5.12_typescript@5.6.3_/node_modules/@vitejs/plugin-vue/dist/index.mjs";
4
+ import path from "path";
5
+ import dts from "file:///D:/gold/epic-designer/node_modules/.pnpm/vite-plugin-dts@4.3.0_@types+node@22.9.0_rollup@4.25.0_typescript@5.6.3_vite@5.4.11_@types+node@22.9.0_less@4.2.0_/node_modules/vite-plugin-dts/dist/index.mjs";
6
+ import UnoCSS from "file:///D:/gold/epic-designer/node_modules/.pnpm/unocss@0.62.4_postcss@5.2.18_rollup@4.25.0_vite@5.4.11_@types+node@22.9.0_less@4.2.0_/node_modules/unocss/dist/vite.mjs";
7
+ import rollupCopy from "file:///D:/gold/epic-designer/node_modules/.pnpm/rollup-plugin-copy@3.5.0/node_modules/rollup-plugin-copy/dist/index.commonjs.js";
8
+ var __vite_injected_original_dirname = "D:\\gold\\epic-designer\\packages\\epic-designer";
9
+ var vite_config_default = defineConfig({
10
+ plugins: [
11
+ vue(),
12
+ UnoCSS(),
13
+ dts({
14
+ entryRoot: "../",
15
+ outDir: "dist"
16
+ })
17
+ ],
18
+ resolve: {
19
+ alias: {
20
+ "@epic-designer/core": path.resolve(__vite_injected_original_dirname, "../core"),
21
+ "@epic-designer/ui": path.resolve(__vite_injected_original_dirname, "../ui"),
22
+ "@epic-designer/utils": path.resolve(__vite_injected_original_dirname, "../utils"),
23
+ "@epic-designer/hooks": path.resolve(__vite_injected_original_dirname, "../hooks")
24
+ }
25
+ // dedupe: ["vue"],
26
+ },
27
+ // rollup打包配置
28
+ build: {
29
+ outDir: "dist",
30
+ // 输出文件名称
31
+ lib: {
32
+ entry: {
33
+ index: path.resolve(__vite_injected_original_dirname, "./index.ts"),
34
+ antd: path.resolve(__vite_injected_original_dirname, "../ui/antd/index.ts"),
35
+ elementPlus: path.resolve(__vite_injected_original_dirname, "../ui/elementPlus/index.ts"),
36
+ naiveUi: path.resolve(__vite_injected_original_dirname, "../ui/naiveUi/index.ts")
37
+ },
38
+ // 指定组件编译入口文件
39
+ name: "epic-designer",
40
+ // formats: ["es"],
41
+ fileName: (ModuleFormat, entryName) => {
42
+ console.log(ModuleFormat, entryName);
43
+ const extension = ModuleFormat === "es" ? "js" : ModuleFormat;
44
+ const isIndexEntry = entryName === "index";
45
+ const path2 = isIndexEntry ? `index.${extension}` : `ui/${entryName}/index.${extension}`;
46
+ return path2;
47
+ }
48
+ },
49
+ // 库编译模式配置
50
+ rollupOptions: {
51
+ // 确保外部化处理那些不需要打包进库的依赖
52
+ external: ["vue", "monaco-editor", "element-plus", "ant-design-vue", "naive-ui", "epic-designer-gold", "dayjs"],
53
+ output: {
54
+ // 在 UMD 构建模式下为这些外部化的依赖提供一个全局变量
55
+ globals: {
56
+ vue: "Vue"
57
+ }
58
+ },
59
+ plugins: [
60
+ rollupCopy({
61
+ targets: [{ src: "../core/theme", dest: "./dist/" }],
62
+ // 路径
63
+ hook: "writeBundle",
64
+ // 钩子,插件运行在rollup完成打包并将文件写入磁盘之前
65
+ verbose: true
66
+ // 在终端进行console.log
67
+ })
68
+ ]
69
+ },
70
+ commonjsOptions: {
71
+ esmExternals: true
72
+ }
73
+ }
74
+ });
75
+ export {
76
+ vite_config_default as default
77
+ };
78
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsidml0ZS5jb25maWcudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbImNvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9kaXJuYW1lID0gXCJEOlxcXFxnb2xkXFxcXGVwaWMtZGVzaWduZXJcXFxccGFja2FnZXNcXFxcZXBpYy1kZXNpZ25lclwiO2NvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9maWxlbmFtZSA9IFwiRDpcXFxcZ29sZFxcXFxlcGljLWRlc2lnbmVyXFxcXHBhY2thZ2VzXFxcXGVwaWMtZGVzaWduZXJcXFxcdml0ZS5jb25maWcudHNcIjtjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfaW1wb3J0X21ldGFfdXJsID0gXCJmaWxlOi8vL0Q6L2dvbGQvZXBpYy1kZXNpZ25lci9wYWNrYWdlcy9lcGljLWRlc2lnbmVyL3ZpdGUuY29uZmlnLnRzXCI7aW1wb3J0IHsgZGVmaW5lQ29uZmlnIH0gZnJvbSBcInZpdGVcIjtcclxuaW1wb3J0IHZ1ZSBmcm9tIFwiQHZpdGVqcy9wbHVnaW4tdnVlXCI7XHJcbmltcG9ydCBwYXRoIGZyb20gXCJwYXRoXCI7XHJcbmltcG9ydCBkdHMgZnJvbSBcInZpdGUtcGx1Z2luLWR0c1wiO1xyXG5pbXBvcnQgVW5vQ1NTIGZyb20gXCJ1bm9jc3Mvdml0ZVwiO1xyXG5pbXBvcnQgcm9sbHVwQ29weSBmcm9tIFwicm9sbHVwLXBsdWdpbi1jb3B5XCI7XHJcbmV4cG9ydCBkZWZhdWx0IGRlZmluZUNvbmZpZyh7XHJcbiAgcGx1Z2luczogW1xyXG4gICAgdnVlKCksXHJcbiAgICBVbm9DU1MoKSxcclxuICAgIGR0cyh7XHJcbiAgICAgIGVudHJ5Um9vdDogXCIuLi9cIixcclxuICAgICAgb3V0RGlyOiBcImRpc3RcIixcclxuICAgIH0pLFxyXG4gIF0sXHJcbiAgcmVzb2x2ZToge1xyXG4gICAgYWxpYXM6IHtcclxuICAgICAgXCJAZXBpYy1kZXNpZ25lci9jb3JlXCI6IHBhdGgucmVzb2x2ZShfX2Rpcm5hbWUsIFwiLi4vY29yZVwiKSxcclxuICAgICAgXCJAZXBpYy1kZXNpZ25lci91aVwiOiBwYXRoLnJlc29sdmUoX19kaXJuYW1lLCBcIi4uL3VpXCIpLFxyXG4gICAgICBcIkBlcGljLWRlc2lnbmVyL3V0aWxzXCI6IHBhdGgucmVzb2x2ZShfX2Rpcm5hbWUsIFwiLi4vdXRpbHNcIiksXHJcbiAgICAgIFwiQGVwaWMtZGVzaWduZXIvaG9va3NcIjogcGF0aC5yZXNvbHZlKF9fZGlybmFtZSwgXCIuLi9ob29rc1wiKSxcclxuICAgIH0sXHJcbiAgICAvLyBkZWR1cGU6IFtcInZ1ZVwiXSxcclxuICB9LFxyXG4gIC8vIHJvbGx1cFx1NjI1M1x1NTMwNVx1OTE0RFx1N0Y2RVxyXG4gIGJ1aWxkOiB7XHJcbiAgICBvdXREaXI6IFwiZGlzdFwiLCAvLyBcdThGOTNcdTUxRkFcdTY1ODdcdTRFRjZcdTU0MERcdTc5RjBcclxuICAgIGxpYjoge1xyXG4gICAgICBlbnRyeToge1xyXG4gICAgICAgIGluZGV4OiBwYXRoLnJlc29sdmUoX19kaXJuYW1lLCBcIi4vaW5kZXgudHNcIiksXHJcbiAgICAgICAgYW50ZDogcGF0aC5yZXNvbHZlKF9fZGlybmFtZSwgXCIuLi91aS9hbnRkL2luZGV4LnRzXCIpLFxyXG4gICAgICAgIGVsZW1lbnRQbHVzOiBwYXRoLnJlc29sdmUoX19kaXJuYW1lLCBcIi4uL3VpL2VsZW1lbnRQbHVzL2luZGV4LnRzXCIpLFxyXG4gICAgICAgIG5haXZlVWk6IHBhdGgucmVzb2x2ZShfX2Rpcm5hbWUsIFwiLi4vdWkvbmFpdmVVaS9pbmRleC50c1wiKSxcclxuICAgICAgfSxcclxuICAgICAgLy8gXHU2MzA3XHU1QjlBXHU3RUM0XHU0RUY2XHU3RjE2XHU4QkQxXHU1MTY1XHU1M0UzXHU2NTg3XHU0RUY2XHJcbiAgICAgIG5hbWU6IFwiZXBpYy1kZXNpZ25lclwiLFxyXG4gICAgICAvLyBmb3JtYXRzOiBbXCJlc1wiXSxcclxuICAgICAgZmlsZU5hbWU6IChNb2R1bGVGb3JtYXQsIGVudHJ5TmFtZSkgPT4ge1xyXG4gICAgICAgIGNvbnNvbGUubG9nKE1vZHVsZUZvcm1hdCwgZW50cnlOYW1lKTtcclxuICAgICAgICBjb25zdCBleHRlbnNpb24gPSBNb2R1bGVGb3JtYXQgPT09IFwiZXNcIiA/IFwianNcIiA6IE1vZHVsZUZvcm1hdDtcclxuICAgICAgICAvLyBcdTUzM0FcdTUyMDZcdTlFRDhcdThCQTRcdTUxNjVcdTUzRTNcdTY1ODdcdTRFRjZcdTU0OENVSVx1NkNFOFx1NTE4Q1x1NjU4N1x1NEVGNlxyXG4gICAgICAgIGNvbnN0IGlzSW5kZXhFbnRyeSA9IGVudHJ5TmFtZSA9PT0gXCJpbmRleFwiO1xyXG4gICAgICAgIGNvbnN0IHBhdGggPSBpc0luZGV4RW50cnkgPyBgaW5kZXguJHtleHRlbnNpb259YCA6IGB1aS8ke2VudHJ5TmFtZX0vaW5kZXguJHtleHRlbnNpb259YDtcclxuICAgICAgICByZXR1cm4gcGF0aDtcclxuICAgICAgfSxcclxuICAgIH0sXHJcblxyXG4gICAgLy8gXHU1RTkzXHU3RjE2XHU4QkQxXHU2QTIxXHU1RjBGXHU5MTREXHU3RjZFXHJcbiAgICByb2xsdXBPcHRpb25zOiB7XHJcbiAgICAgIC8vIFx1Nzg2RVx1NEZERFx1NTkxNlx1OTBFOFx1NTMxNlx1NTkwNFx1NzQwNlx1OTBBM1x1NEU5Qlx1NEUwRFx1OTcwMFx1ODk4MVx1NjI1M1x1NTMwNVx1OEZEQlx1NUU5M1x1NzY4NFx1NEY5RFx1OEQ1NlxyXG4gICAgICBleHRlcm5hbDogW1widnVlXCIsIFwibW9uYWNvLWVkaXRvclwiLCBcImVsZW1lbnQtcGx1c1wiLCBcImFudC1kZXNpZ24tdnVlXCIsIFwibmFpdmUtdWlcIiwgXCJlcGljLWRlc2lnbmVyLWdvbGRcIiwgXCJkYXlqc1wiXSxcclxuICAgICAgb3V0cHV0OiB7XHJcbiAgICAgICAgLy8gXHU1NzI4IFVNRCBcdTY3ODRcdTVFRkFcdTZBMjFcdTVGMEZcdTRFMEJcdTRFM0FcdThGRDlcdTRFOUJcdTU5MTZcdTkwRThcdTUzMTZcdTc2ODRcdTRGOURcdThENTZcdTYzRDBcdTRGOUJcdTRFMDBcdTRFMkFcdTUxNjhcdTVDNDBcdTUzRDhcdTkxQ0ZcclxuICAgICAgICBnbG9iYWxzOiB7XHJcbiAgICAgICAgICB2dWU6IFwiVnVlXCIsXHJcbiAgICAgICAgfSxcclxuICAgICAgfSxcclxuICAgICAgcGx1Z2luczogW1xyXG4gICAgICAgIHJvbGx1cENvcHkoe1xyXG4gICAgICAgICAgdGFyZ2V0czogW3sgc3JjOiBcIi4uL2NvcmUvdGhlbWVcIiwgZGVzdDogXCIuL2Rpc3QvXCIgfV0sIC8vIFx1OERFRlx1NUY4NFxyXG4gICAgICAgICAgaG9vazogXCJ3cml0ZUJ1bmRsZVwiLCAvLyBcdTk0QTlcdTVCNTBcdUZGMENcdTYzRDJcdTRFRjZcdThGRDBcdTg4NENcdTU3Mjhyb2xsdXBcdTVCOENcdTYyMTBcdTYyNTNcdTUzMDVcdTVFNzZcdTVDMDZcdTY1ODdcdTRFRjZcdTUxOTlcdTUxNjVcdTc4QzFcdTc2RDhcdTRFNEJcdTUyNERcclxuICAgICAgICAgIHZlcmJvc2U6IHRydWUsIC8vIFx1NTcyOFx1N0VDOFx1N0FFRlx1OEZEQlx1ODg0Q2NvbnNvbGUubG9nXHJcbiAgICAgICAgfSksXHJcbiAgICAgIF0sXHJcbiAgICB9LFxyXG4gICAgY29tbW9uanNPcHRpb25zOiB7XHJcbiAgICAgIGVzbUV4dGVybmFsczogdHJ1ZSxcclxuICAgIH0sXHJcbiAgfSxcclxufSk7XHJcbiJdLAogICJtYXBwaW5ncyI6ICI7QUFBZ1UsU0FBUyxvQkFBb0I7QUFDN1YsT0FBTyxTQUFTO0FBQ2hCLE9BQU8sVUFBVTtBQUNqQixPQUFPLFNBQVM7QUFDaEIsT0FBTyxZQUFZO0FBQ25CLE9BQU8sZ0JBQWdCO0FBTHZCLElBQU0sbUNBQW1DO0FBTXpDLElBQU8sc0JBQVEsYUFBYTtBQUFBLEVBQzFCLFNBQVM7QUFBQSxJQUNQLElBQUk7QUFBQSxJQUNKLE9BQU87QUFBQSxJQUNQLElBQUk7QUFBQSxNQUNGLFdBQVc7QUFBQSxNQUNYLFFBQVE7QUFBQSxJQUNWLENBQUM7QUFBQSxFQUNIO0FBQUEsRUFDQSxTQUFTO0FBQUEsSUFDUCxPQUFPO0FBQUEsTUFDTCx1QkFBdUIsS0FBSyxRQUFRLGtDQUFXLFNBQVM7QUFBQSxNQUN4RCxxQkFBcUIsS0FBSyxRQUFRLGtDQUFXLE9BQU87QUFBQSxNQUNwRCx3QkFBd0IsS0FBSyxRQUFRLGtDQUFXLFVBQVU7QUFBQSxNQUMxRCx3QkFBd0IsS0FBSyxRQUFRLGtDQUFXLFVBQVU7QUFBQSxJQUM1RDtBQUFBO0FBQUEsRUFFRjtBQUFBO0FBQUEsRUFFQSxPQUFPO0FBQUEsSUFDTCxRQUFRO0FBQUE7QUFBQSxJQUNSLEtBQUs7QUFBQSxNQUNILE9BQU87QUFBQSxRQUNMLE9BQU8sS0FBSyxRQUFRLGtDQUFXLFlBQVk7QUFBQSxRQUMzQyxNQUFNLEtBQUssUUFBUSxrQ0FBVyxxQkFBcUI7QUFBQSxRQUNuRCxhQUFhLEtBQUssUUFBUSxrQ0FBVyw0QkFBNEI7QUFBQSxRQUNqRSxTQUFTLEtBQUssUUFBUSxrQ0FBVyx3QkFBd0I7QUFBQSxNQUMzRDtBQUFBO0FBQUEsTUFFQSxNQUFNO0FBQUE7QUFBQSxNQUVOLFVBQVUsQ0FBQyxjQUFjLGNBQWM7QUFDckMsZ0JBQVEsSUFBSSxjQUFjLFNBQVM7QUFDbkMsY0FBTSxZQUFZLGlCQUFpQixPQUFPLE9BQU87QUFFakQsY0FBTSxlQUFlLGNBQWM7QUFDbkMsY0FBTUEsUUFBTyxlQUFlLFNBQVMsU0FBUyxLQUFLLE1BQU0sU0FBUyxVQUFVLFNBQVM7QUFDckYsZUFBT0E7QUFBQSxNQUNUO0FBQUEsSUFDRjtBQUFBO0FBQUEsSUFHQSxlQUFlO0FBQUE7QUFBQSxNQUViLFVBQVUsQ0FBQyxPQUFPLGlCQUFpQixnQkFBZ0Isa0JBQWtCLFlBQVksc0JBQXNCLE9BQU87QUFBQSxNQUM5RyxRQUFRO0FBQUE7QUFBQSxRQUVOLFNBQVM7QUFBQSxVQUNQLEtBQUs7QUFBQSxRQUNQO0FBQUEsTUFDRjtBQUFBLE1BQ0EsU0FBUztBQUFBLFFBQ1AsV0FBVztBQUFBLFVBQ1QsU0FBUyxDQUFDLEVBQUUsS0FBSyxpQkFBaUIsTUFBTSxVQUFVLENBQUM7QUFBQTtBQUFBLFVBQ25ELE1BQU07QUFBQTtBQUFBLFVBQ04sU0FBUztBQUFBO0FBQUEsUUFDWCxDQUFDO0FBQUEsTUFDSDtBQUFBLElBQ0Y7QUFBQSxJQUNBLGlCQUFpQjtBQUFBLE1BQ2YsY0FBYztBQUFBLElBQ2hCO0FBQUEsRUFDRjtBQUNGLENBQUM7IiwKICAibmFtZXMiOiBbInBhdGgiXQp9Cg==
@@ -1,4 +0,0 @@
1
- import { _ as f } from "./index-GIYb626z.js";
2
- export {
3
- f as default
4
- };
@@ -1,10 +0,0 @@
1
- "use strict";const e=require("vue"),S=require("./pluginManager-DWHAX8kP.cjs"),J=require("./index-BoL2PSBk.cjs"),re=require("./axios-tuVKNgv9.cjs");function he(t,o){let s=null;return(...l)=>{s&&clearTimeout(s),s=setTimeout(()=>{t(...l)},o)}}function ne(){const t=e.ref({}),o=e.ref({}),s=e.ref(!1),l=e.ref([]),u=e.reactive({});function c(m){return t.value[m]}function w(m,b){t.value[m]=b}function g(m){delete t.value[m]}function h(m,b=!1){const O=Object.entries(S.pluginManager.publicMethods).reduce((B,[D,R])=>(B[D]=R.handler,B),{});try{new Function(`const epic = this;${m}`).bind({...O,getComponent:c,find:c,defineExpose:V,publicMethods:O,pluginManager:S.pluginManager})()}catch(B){b&&console.error("[epic:自定义函数]异常:",B)}}function V(m){m!=null&&(o.value=m)}function A(m,...b){if(!m||m.length===0){console.warn("未提供任何动作");return}m.forEach(O=>{const B=O.args?JSON.parse(O.args):b;switch(O.type){case"public":n(O,B);break;case"custom":I(O,B);break;case"component":d(O,B);break;default:console.warn(`未知的动作类型: ${O.type}`);break}})}function n(m,b){var O;try{(O=S.pluginManager.publicMethods[m.methodName])==null||O.handler(...b)}catch(B){console.error(`[Epic:公共函数(${m.methodName})]执行异常:`,B)}}function I(m,b){var O,B;try{(B=(O=o.value)[m.methodName])==null||B.call(O,...b)}catch(D){console.error(`[Epic:自定义函数(${m.methodName})]执行异常:`,D)}}function d(m,b){const O=m.componentId!=null&&c(m.componentId);if(!O){console.warn(`[Epic:组件${m.componentId}]未找到`);return}try{O[m.methodName](...b)}catch(B){console.error(`[Epic:组件${m.componentId}函数(${m.methodName})]执行异常:`,B)}}function E(m=!0){s.value=m}function y(m){const b=S.findSchemas(m,()=>!0);l.value=b.map(O=>O.id)}function C(m,b="default"){if(u[b]){const O=u[b];S.deepCompareAndModify(m,O)}u[b]=m}function F(m,b="default"){if(u[b]){S.deepCompareAndModify(u[b],m,!1);return}u[b]=m}return{componentInstances:t,funcs:o,isDesignMode:s,defaultComponentIds:l,forms:u,addFormData:C,setFormData:F,getComponentInstance:c,find:c,addComponentInstance:w,removeComponentInstance:g,setMethods:h,doActions:A,setDesignMode:E,setDefaultComponentIds:y}}function se(){const t=e.ref([]),o=e.ref([]),s=e.ref(null);let l=0;function u(h,V="插入组件"){const A=Date.now();l+150>A||(l=A,s.value!=null&&(t.value.push(s.value),o.value.splice(0,o.value.length)),s.value={type:V,componentSchema:JSON.stringify(h)},t.value.length>60&&t.value.unshift())}function c(){if(t.value.length===0)return!1;const h=t.value.pop();return s.value!=null&&o.value.push(s.value),s.value=h,JSON.parse(h.componentSchema)}function w(){if(o.value.length===0)return!1;const h=o.value.pop();return s.value!=null&&t.value.push(s.value),s.value=h,JSON.parse(h.componentSchema)}function g(){t.value=[],o.value=[],s.value=null}return{recordList:t,undoList:o,currentRecord:s,push:u,undo:c,redo:w,reset:g}}const ve=e.defineComponent({__name:"dynamicFormItem",props:{hasFormItem:{type:Boolean},formItemProps:{}},emits:["updateFormItemRef"],setup(t,{emit:o}){const s=S.pluginManager.getComponent("form-item"),l=t,u=o,c=e.ref(),w=()=>{u("updateFormItemRef",c.value)};return(g,h)=>l.hasFormItem?(e.openBlock(),e.createBlock(e.unref(s),e.mergeProps({key:0,ref_key:"formItemRef",ref:c,onVnodeMounted:w},l.formItemProps),{default:e.withCtx(()=>[e.renderSlot(g.$slots,"default")]),_:3},16,["onVnodeMounted"])):e.renderSlot(g.$slots,"default",{key:1})}}),le=e.defineComponent({name:"ENode",__name:"node",props:{componentSchema:{},modelValue:{},ruleField:{},resetFormData:{type:Boolean},name:{},dynamicId:{},sourceDateUrl:{},id:{}},emits:["update:modelValue","change","update:dynamicId"],setup(t,{emit:o}){const{proxy:s}=e.getCurrentInstance(),l=t,u=e.ref(null);let c=e.inject("formData",e.reactive({}));const w=e.inject("slots",{}),g=e.inject("pageManager",{}),h=e.inject("disabled",{value:!1}),V=e.inject("ruleFieldPrefix",null),A=e.inject("resetFormData",!1);let n=e.reactive(S.deepClone(l.componentSchema));E();async function I(r){if(["cascader","checkbox","select","radio"].includes(r.type)&&r.componentProps.dynamicId&&l.sourceDateUrl){const f=(await re.axios({url:l.sourceDateUrl,method:"get",params:{id:r.componentProps.dynamicId},headers:{Authorization:"Bearer "+J.api.get("Admin-Token"),lang:J.api.get("saas-locale")||"zh-CN",zone:Intl.DateTimeFormat().resolvedOptions().timeZone}})).data.data;let _=await re.axios({url:f.url,method:f.method,data:JSON.parse(f.body),params:JSON.parse(f.params),headers:{...JSON.parse(f.headers),Authorization:"Bearer "+J.api.get("Admin-Token"),lang:J.api.get("saas-locale")||"zh-CN",zone:Intl.DateTimeFormat().resolvedOptions().timeZone}});if(f&&(f!=null&&f.dataPath)){const K=f.dataPath.split(".").reduce((W,Q)=>W[Q],_.data);r.componentProps.options=d(K,f.dataKey,f.dataValue)}else r.componentProps.options=d(_.data,f.dataKey,f.dataValue);return r}return r}function d(r,i,P){return r&&Object.prototype.toString.call(r)==="[object Array]"?r.map(f=>f.children&&f.children.length?{label:f[i],value:f[P]+"",children:d(f.children,i,P)}:{label:f[i],value:f[P]+""}):[]}e.watch(()=>l.componentSchema,r=>{S.deepEqual(n,r,["children"])||(S.deepCompareAndModify(n,S.deepClone(r)),E())},{deep:!0});function E(){g.isDesignMode.value&&typeof n.field=="string"&&(n.field+="-design-mode")}(l.resetFormData||A)&&(c={});const y=o,C=e.ref(),F=e.ref(),m=r=>{F.value=r},b=e.useAttrs();Object.keys(b).length&&e.provide("nodeAttrs",b);const O=e.shallowRef(null),B=e.computed(()=>{var r,i;return(r=n.componentProps)!=null&&r.hidden?!1:typeof n.show=="boolean"?n.show:((i=n.show)==null?void 0:i.call(n,{values:c}))??!0}),D=e.computed(()=>{var f;const r=B.value&&((f=n.rules)==null?void 0:f.map(_=>({..._,validator:_.validator&&g.funcs.value[_.validator]})));let i=n.field;l.ruleField?i=l.ruleField:V&&n.field&&(i=S.deepClone(V),i.push(n.field));const P={...n,rules:r,rule:r,field:i};return P.children&&delete P.children,P}),R=e.computed(()=>{var P,f;const r=((P=T.value)==null?void 0:P.bindModel)??"modelValue",i={};return n.on&&Object.keys(n.on).forEach(_=>{i[`on${S.capitalizeFirstLetter(_)}`]=(...U)=>g.doActions(n.on[_],...U)}),{...l,...n.componentProps,disabled:(h==null?void 0:h.value)||((f=n.componentProps)==null?void 0:f.disabled),bindModel:r,...i}}),T=e.computed(()=>S.pluginManager.getComponentConfingByType(n.type)??null);e.watchEffect(()=>{u.value=l.modelValue??c[n.field??""]}),e.watch(()=>u.value,()=>{u.value!==(l.modelValue??c[n.field??""])&&a(u.value)}),e.watch(()=>C.value,()=>{N()},{immediate:!0});function N(){var i;const r=C.value||s;n.id&&r&&((n.input||n.type==="table"&&n.field||n.type==="card"&&n.field&&n.multiple)&&(r.setValue=a,r.getValue=()=>c[n.field]||l.modelValue),r.setAttr=(P,f)=>(n.componentProps||(n.componentProps={}),n.componentProps[P]=f),r.getAttr=P=>n.componentProps[P],g.addComponentInstance(n.id,r),(i=T.value)!=null&&i.defaultSchema.input&&n.noFormItem!==!0&&F.value&&g.addComponentInstance(n.id+"formItem",F.value))}function v(){var r;n.id&&(g.removeComponentInstance(n.id),(r=T.value)!=null&&r.defaultSchema.input&&n.noFormItem!==!0&&g.removeComponentInstance(n.id+"formItem"))}async function q(){var i,P,f;if(n=await I(n),typeof((i=n.componentProps)==null?void 0:i.defaultValue)<"u"){const _=g.isDesignMode.value?(P=n.componentProps)==null?void 0:P.defaultValue:c[n.field]??((f=n.componentProps)==null?void 0:f.defaultValue);a(S.deepClone(_))}if(n.type==="slot"){const _=n.slotName;if(!_)return;O.value=e.defineComponent({setup(){return()=>e.renderSlot(w,_,{componentSchema:n,model:c})}});return}const r=S.pluginManager.getComponent(n.type);if(!r){console.error(`组件${n.type}未注册`);return}if(typeof r=="function"){const _=await r();O.value=_.default??_}else O.value=r}function p(r){Object.prototype.toString.call(r),Object.prototype.toString.call(r)==="[object Array]"?r.forEach(i=>{c[i.value]=i.label}):c[r.value]=r.label,l.id&&S.EventBus.emit("updateformData"+l.id,c)}function a(r){y("update:modelValue",r),y("change",r),n.field&&(c[n.field]=r),l.id&&S.EventBus.emit("updateformData"+l.id,c)}function $(r){y("update:dynamicId",r)}let M=null;return e.watch(()=>n,async r=>{const i=JSON.stringify({...r,children:void 0,componentProps:{...r.componentProps,options:null}});if(i===M)return!1;M=i,q()},{immediate:!0,deep:!0}),e.onUnmounted(v),(r,i)=>{var f;const P=e.resolveComponent("ENode");return O.value&&B.value?(e.openBlock(),e.createBlock(ve,{key:0,hasFormItem:e.unref(n).noFormItem!==!0&&((f=T.value)==null?void 0:f.defaultSchema.input),formItemProps:D.value,onUpdateFormItemRef:m},{default:e.withCtx(()=>[(e.openBlock(),e.createBlock(e.resolveDynamicComponent(O.value),e.mergeProps({ref_key:"componentInstance",ref:C,onVnodeMounted:N,model:e.unref(c)},{...R.value},{[R.value.bindModel]:u.value,["onUpdate:"+R.value.bindModel]:i[0]||(i[0]=_=>u.value=_),[`onUpdate:${R.value.bindModel}`||""]:a,"onUpdate:modelValueLabel":p,"onUpdate:dynamicId":$}),{node:e.withCtx(_=>[e.createVNode(P,e.mergeProps({id:l.id},_,{sourceDateUrl:l.sourceDateUrl}),null,16,["id","sourceDateUrl"])]),"edit-node":e.withCtx(()=>[e.renderSlot(r.$slots,"edit-node")]),_:3},16,["model"]))]),_:3},8,["hasFormItem","formItemProps"])):e.createCommentVNode("",!0)}}});function ge(){const t=e.ref(!1),o=ne(),s=e.ref({});function l(){return new Promise(d=>{if(t.value)d();else{const E=e.watch(t,()=>{E(),d()})}})}async function u(d="default"){var y;await l();const E=(y=s.value)==null?void 0:y[d];if(!E)throw new Error(`表单 [name=${d}] 不存在`);return E}async function c(d,E){const y=await u(d);return S.deepClone(await E(y))}async function w(d="default"){return await c(d,E=>E.getData())}function g(d,E="default",y=void 0){var C,F;if(y&&Object.keys(y).length){let m=function(D){let R=[];return D.forEach(T=>{T.children&&(R=[...R,...m(T.children)]),R.push(T)}),R},O=function(D){var T;let R=m((T=y==null?void 0:y.schemas[0])==null?void 0:T.children);return Object.keys(D).forEach(N=>{var p,a,$,M,r,i,P;const v=R.find(f=>f.field===N),q=["datetimerange","daterange","monthrange","dates"];if((v&&(v==null?void 0:v.type)==="checkbox"||(v==null?void 0:v.type)==="select"&&((p=v==null?void 0:v.componentProps)!=null&&p.multiple)||(v==null?void 0:v.type)==="cascader"&&!(($=(a=v==null?void 0:v.componentProps)==null?void 0:a.props)!=null&&$.multiple)||(v==null?void 0:v.type)==="date"&&q.includes((M=v==null?void 0:v.componentProps)==null?void 0:M.type))&&typeof D[N]=="string")D[N]=(r=D[N])==null?void 0:r.split(",");else if((v==null?void 0:v.type)==="cascader"&&((P=(i=v==null?void 0:v.componentProps)==null?void 0:i.props)!=null&&P.multiple)&&typeof D[N]=="string")D[N].indexOf(";")>-1?D[N]=D[N].split(";").map(f=>f.split(",")):D[N]=D[N].split(","),D[N].indexOf(";")>-1?D[N]=D[N].split(";").map(f=>f.split(",")):D[N]=D[N].split(",");else if(((v==null?void 0:v.type)==="upload-image"||(v==null?void 0:v.type)==="upload-file")&&typeof D[N]=="string"){let f=[];Object.entries(D).forEach(([_,U])=>{D[N]===U&&_!==v.field&&_.indexOf("@")>-1&&_.indexOf(N)>-1&&(f=_.split("@")[1].split(","))}),D[N]=D[N].split(",").map((_,U)=>({url:_,name:f[U]||_}))}else(v==null?void 0:v.type)==="number"||(v==null?void 0:v.type)==="slider"?D[N]=Number(D[N]):(v==null?void 0:v.type)==="switch"&&(D[N]=typeof D[N]=="boolean"?D[N]:D[N].indexOf("true")>-1)}),D}(d);o.setFormData(O,E);const B=(C=s.value)==null?void 0:C[E];B==null||B.clearValidate()}else{o.setFormData(d,E);const m=(F=s.value)==null?void 0:F[E];m==null||m.clearValidate()}}async function h(d="default"){return await c(d,async E=>(await E.validate(),await E.getData()))}async function V(d){await l();const E={};for(const y in s.value){const C=s.value[y];C&&(E[y]=S.deepClone(await d(C)))}return E}async function A(){return await V(d=>d.getData())}function n(d){for(const E in d)g(d[E],E)}async function I(){return await V(async d=>(await d.validate(),await d.getData()))}return{ready:t,pageManager:o,forms:s,getData:w,setData:g,validate:h,getForms:A,setForms:n,validateAll:I,getFormInstance:u}}const ye={key:0,class:"epic-loading-box"},we={class:"epic-builder-main"},Se={class:"epic-loading-box"},ie=e.defineComponent({__name:"builder",props:{pageSchema:{},formData:{},disabled:{type:Boolean},sourceDateUrl:{},id:{}},emits:["change","ready"],setup(t,{expose:o,emit:s}){const l=S.loadAsyncComponent(()=>Promise.resolve().then(()=>require("./index-Cap7FkuS.cjs"))),u=s,c=e.ref([]),w=e.ref({}),{ready:g,pageManager:h,forms:V,getData:A,setData:n,validate:I,getForms:d,setForms:E,validateAll:y,getFormInstance:C}=ge(),F=t,m=e.reactive({schemas:[]});e.watch(()=>F.pageSchema,p=>{S.deepCompareAndModify(m,p)},{immediate:!0,deep:!0}),e.watch(()=>F.formData,p=>{if(p){let a=T(p);w.value=a,n(a)}},{immediate:!0,deep:!0});function b(p){let a=[];return p.forEach($=>{$.children&&(a=[...a,...b($.children)]),a.push($)}),a}function O(p,a){function $(r){return JSON.parse(JSON.stringify(r))}function M(r,i){if(r.type==="card"&&r.multiple&&r.field&&Array.isArray(i[r.field]))return i[r.field].map(f=>{var U;const _=$({...r,multiple:!0});return _.children=(U=_.children)==null?void 0:U.map(K=>M(K,f)).flat(),_});const P=$(r);return Array.isArray(P.children)&&(P.children=P.children.map(f=>M(f,i)).flat()),P}return p.map(r=>M(r,a)).flat()}function B(p,a="",$={root:0}){const M=a||"root";return a||($.root=0),$[M]===void 0&&($[M]=0),p.map(r=>{r.field&&(r.oldField=JSON.parse(JSON.stringify(r.field)));const i={...r};if(r.type==="card"){const P=r.field||"";r.multiple?(i.field=a?`${a}.${P}[${$[M]}]`:`${P}[${$[M]}]`,$[M]++):r.field&&a&&(i.field=`${a}.${P}`);const f=i.field||a;$[f]=0}else r.field&&a&&(i.field=`${a}.${r.field}`);return r.children&&(i.children=B(r.children,i.field||a,$)),i})}function D(p,a,$="",M={}){const r=$||"root";return M[r]===void 0&&(M[r]=0),p.forEach(i=>{const P=i.field||"";let f=$?`${$}.${P}`:`${P}`;i.type==="card"&&i.multiple?(typeof a[f][`${M[r]}`]=="object"?Object.keys(a[f][`${M[r]}`]).forEach(_=>{a[`${f}[${M[r]}].${_}`]=a[f][`${M[r]}`][_]}):a[`${f}[${M[r]}]`]=a[f][`${M[r]}`],i.children&&(i.children=D(i.children,a,`${f}[${M[r]}]`||$,M)),M[r]++):i.children&&(i.children=D(i.children,a,$,M))}),M[r]=0,a}function R(p,a,$){let M=D(S.deepClone(p),S.deepClone(a));return{obj:B(p),dataObj:M}}function T(p){let a=b(F.pageSchema.schemas[0].children);c.value=a.filter(i=>i.type==="card"&&i.multiple);const $=O(F.pageSchema.schemas[0].children,p);let{obj:M,dataObj:r}=R($,p,c.value);return p=r,console.log("%c [ ]-277","font-size:13px; background:pink; color:#bf2c9f;",M,r),F.pageSchema.schemas[0].children=M,Object.keys(p).forEach(i=>{var P,f,_,U,K,W,Q;if(i.indexOf("@")<0){const x=a.find(k=>k.field===i),me=["datetimerange","daterange","monthrange","dates"];if((x&&(x==null?void 0:x.type)==="checkbox"||(x==null?void 0:x.type)==="select"&&((P=x==null?void 0:x.componentProps)!=null&&P.multiple)||(x==null?void 0:x.type)==="cascader"&&!((_=(f=x==null?void 0:x.componentProps)==null?void 0:f.props)!=null&&_.multiple)||(x==null?void 0:x.type)==="date"&&me.includes((U=x==null?void 0:x.componentProps)==null?void 0:U.type))&&typeof p[i]=="string")p[i]=(K=p[i])==null?void 0:K.split(",");else if((x==null?void 0:x.type)==="cascader"&&((Q=(W=x==null?void 0:x.componentProps)==null?void 0:W.props)!=null&&Q.multiple)&&typeof p[i]=="string")p[i].indexOf(";")>-1?p[i]=p[i].split(";").map(k=>k.split(",")):p[i]=p[i].split(","),p[i].indexOf(";")>-1?p[i]=p[i].split(";").map(k=>k.split(",")):p[i]=p[i].split(",");else if(((x==null?void 0:x.type)==="upload-image"||(x==null?void 0:x.type)==="upload-file")&&typeof p[i]=="string"){let k=[];Object.entries(p).forEach(([L,X])=>{p[i]===X&&L!==x.field&&L.indexOf("@")>-1&&L.indexOf(i)>-1&&(k=L.split("@")[1].split(","))}),p[i]=p[i].split(",").map((L,X)=>({url:L,name:k[X]||L}))}else(x==null?void 0:x.type)==="number"||(x==null?void 0:x.type)==="slider"?p[i]=Number(p[i]):(x==null?void 0:x.type)==="switch"&&(p[i]=typeof p[i]=="boolean"?p[i]:p[i].indexOf("true")>-1)}}),p}e.watch(()=>m.script,p=>{p&&h.setMethods(p,!0)},{immediate:!0}),e.provide("slots",e.useSlots()),e.provide("pageManager",h),e.provide("forms",V),e.provide("pageSchema",m),e.provide("disabled",e.computed(()=>F.disabled));const N=e.getCurrentInstance(),v=N==null?void 0:N.proxy;function q(){e.nextTick(()=>{g.value=!0,u("ready",h),v&&h.addComponentInstance("builder",v)})}return S.EventBus.on("updateformData"+F.id,p=>{F.id&&u("change",p)}),o({ready:g,pageManager:h,getData:A,setData:n,validate:I,getForms:d,setForms:E,validateAll:y,getFormInstance:C}),(p,a)=>e.unref(S.pluginManager).initialized.value?(e.openBlock(),e.createBlock(e.Suspense,{key:1,onResolve:q},{default:e.withCtx(()=>[e.createElementVNode("div",we,[(e.openBlock(!0),e.createElementBlock(e.Fragment,null,e.renderList(m.schemas,($,M)=>(e.openBlock(),e.createBlock(e.unref(le),{id:F.id,key:M,sourceDateUrl:F.sourceDateUrl,componentSchema:$},null,8,["id","sourceDateUrl","componentSchema"]))),128))])]),fallback:e.withCtx(()=>[e.createElementVNode("div",Se,[e.createVNode(e.unref(l))])]),_:1})):(e.openBlock(),e.createElementBlock("div",ye))}});function oe(t){return e.getCurrentScope()?(e.onScopeDispose(t),!0):!1}function Ee(t){let o=0,s,l;const u=()=>{o-=1,l&&o<=0&&(l.stop(),s=void 0,l=void 0)};return(...c)=>(o+=1,l||(l=e.effectScope(!0),s=l.run(()=>t(...c))),oe(u),s)}function H(t){return typeof t=="function"?t():e.unref(t)}const De=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const be=t=>typeof t<"u",xe=Object.prototype.toString,Ce=t=>xe.call(t)==="[object Object]",Ae=()=>{};function Ie(t){return e.getCurrentInstance()}function Oe(t,o=!0,s){Ie()?e.onMounted(t,s):o?t():e.nextTick(t)}function _e(t=!1,o={}){const{truthyValue:s=!0,falsyValue:l=!1}=o,u=e.isRef(t),c=e.ref(t);function w(g){if(arguments.length)return c.value=g,c.value;{const h=H(s);return c.value=c.value===h?H(l):h,c.value}}return u?w:[c,w]}function Pe(t,o,s){const l=e.watch(t,(...u)=>(e.nextTick(()=>l()),o(...u)),s);return l}const Y=De?window:void 0;function z(t){var o;const s=H(t);return(o=s==null?void 0:s.$el)!=null?o:s}function Ne(...t){let o,s,l,u;if(typeof t[0]=="string"||Array.isArray(t[0])?([s,l,u]=t,o=Y):[o,s,l,u]=t,!o)return Ae;Array.isArray(s)||(s=[s]),Array.isArray(l)||(l=[l]);const c=[],w=()=>{c.forEach(A=>A()),c.length=0},g=(A,n,I,d)=>(A.addEventListener(n,I,d),()=>A.removeEventListener(n,I,d)),h=e.watch(()=>[z(o),H(u)],([A,n])=>{if(w(),!A)return;const I=Ce(n)?{...n}:n;c.push(...s.flatMap(d=>l.map(E=>g(A,d,E,I))))},{immediate:!0,flush:"post"}),V=()=>{h(),w()};return oe(V),V}function Me(t){return typeof t=="function"?t:typeof t=="string"?o=>o.key===t:Array.isArray(t)?o=>t.includes(o.key):()=>!0}function ae(...t){let o,s,l={};t.length===3?(o=t[0],s=t[1],l=t[2]):t.length===2?typeof t[1]=="object"?(o=!0,s=t[0],l=t[1]):(o=t[0],s=t[1]):(o=!0,s=t[0]);const{target:u=Y,eventName:c="keydown",passive:w=!1,dedupe:g=!1}=l,h=Me(o);return Ne(u,c,A=>{A.repeat&&H(g)||h(A)&&s(A)},w)}function j(t,o,s={}){return ae(t,o,{...s,eventName:"keydown"})}function ee(t,o,s={}){return ae(t,o,{...s,eventName:"keyup"})}function Ve(){const t=e.ref(!1),o=e.getCurrentInstance();return o&&e.onMounted(()=>{t.value=!0},o),t}function $e(t){const o=Ve();return e.computed(()=>(o.value,!!t()))}function Be(t){return JSON.parse(JSON.stringify(t))}function ce(t,o,s={}){const{window:l=Y,...u}=s;let c;const w=$e(()=>l&&"ResizeObserver"in l),g=()=>{c&&(c.disconnect(),c=void 0)},h=e.computed(()=>{const n=H(t);return Array.isArray(n)?n.map(I=>z(I)):[z(n)]}),V=e.watch(h,n=>{if(g(),w.value&&l){c=new ResizeObserver(o);for(const I of n)I&&c.observe(I,u)}},{immediate:!0,flush:"post"}),A=()=>{g(),V()};return oe(A),{isSupported:w,stop:A}}function Fe(t,o={width:0,height:0},s={}){const{window:l=Y,box:u="content-box"}=s,c=e.computed(()=>{var n,I;return(I=(n=z(t))==null?void 0:n.namespaceURI)==null?void 0:I.includes("svg")}),w=e.ref(o.width),g=e.ref(o.height),{stop:h}=ce(t,([n])=>{const I=u==="border-box"?n.borderBoxSize:u==="content-box"?n.contentBoxSize:n.devicePixelContentBoxSize;if(l&&c.value){const d=z(t);if(d){const E=d.getBoundingClientRect();w.value=E.width,g.value=E.height}}else if(I){const d=Array.isArray(I)?I:[I];w.value=d.reduce((E,{inlineSize:y})=>E+y,0),g.value=d.reduce((E,{blockSize:y})=>E+y,0)}else w.value=n.contentRect.width,g.value=n.contentRect.height},s);Oe(()=>{const n=z(t);n&&(w.value="offsetWidth"in n?n.offsetWidth:o.width,g.value="offsetHeight"in n?n.offsetHeight:o.height)});const V=e.watch(()=>z(t),n=>{w.value=n?o.width:0,g.value=n?o.height:0});function A(){h(),V()}return{width:w,height:g,stop:A}}function Re(t,o,s,l={}){var u,c,w;const{clone:g=!1,passive:h=!1,eventName:V,deep:A=!1,defaultValue:n,shouldEmit:I}=l,d=e.getCurrentInstance(),E=s||(d==null?void 0:d.emit)||((u=d==null?void 0:d.$emit)==null?void 0:u.bind(d))||((w=(c=d==null?void 0:d.proxy)==null?void 0:c.$emit)==null?void 0:w.bind(d==null?void 0:d.proxy));let y=V;o||(o="modelValue"),y=y||`update:${o.toString()}`;const C=b=>g?typeof g=="function"?g(b):Be(b):b,F=()=>be(t[o])?C(t[o]):n,m=b=>{I?I(b)&&E(y,b):E(y,b)};if(h){const b=F(),O=e.ref(b);let B=!1;return e.watch(()=>t[o],D=>{B||(B=!0,O.value=C(D),e.nextTick(()=>B=!1))}),e.watch(O,D=>{!B&&(D!==t[o]||A)&&m(D)},{deep:A}),O}else return e.computed({get(){return F()},set(b){m(b)}})}function Te(){const{isDark:t}=Z(),o=_e(t);return{isDark:t,toggleDark:o}}function ue(){const t=e.ref(!1);return e.onMounted(()=>{de(t),Ue(t)}),e.watch(()=>t.value,()=>{t.value?document.documentElement.classList.add("dark"):document.documentElement.classList.remove("dark")}),{isDark:t}}function de(t){var o=document.documentElement;o&&(o.classList.contains("dark")?t.value=!0:t.value=!1)}function Ue(t){var o=document.querySelector("html"),s=new MutationObserver(function(l){for(var u of l)if(u.type==="attributes"&&u.attributeName==="class"){const c=u.target;new Array(...c.classList).includes("dark")?t.value=!0:t.value=!1}});s.observe(o,{attributes:!0,attributeFilter:["class"]}),e.onUnmounted(()=>{s.disconnect()})}function fe(){const t=e.ref(1),o=e.ref(!1),{isDark:s}=ue(),{pressSpace:l,pressShift:u,pressCtrl:c}=pe();return{canvasScale:t,pressSpace:l,pressShift:u,pressCtrl:c,disabledZoom:o,isDark:s}}const Z=Ee(fe);function pe(){const t=e.ref(!1),o=e.ref(!1),s=e.ref(!1);return j(" ",()=>{t.value=!0}),ee(" ",()=>{t.value=!1}),j("Shift",l=>{l.preventDefault(),o.value=!0}),ee("Shift",()=>{o.value=!1}),j("Control",l=>{l.preventDefault(),s.value=!0}),ee("Control",()=>{s.value=!1}),{pressSpace:t,pressShift:o,pressCtrl:s}}function ke(t){const{pressSpace:o}=Z(),s=new Image(1,1);s.src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mNk+M9QDwADhgGAWjR9awAAAABJRU5ErkJggg==";let l=0,u=0;function c(h){var V;o.value&&(l=h.x,u=h.y,(V=h.dataTransfer)==null||V.setDragImage(document.createElement("div"),0,0))}function w(h){if(h.preventDefault(),!h.x||!h.y||!o.value)return;const V=h.x-l,A=h.y-u;l=h.x,u=h.y,t.value&&(t.value.scrollTop-=A,t.value.scrollLeft-=V)}function g(){o.value=!1}return{handleElementDragStart:c,handleElementDrag:w,handleElementDragEnd:g}}function qe(t){const{pressCtrl:o,canvasScale:s,disabledZoom:l}=Z();function u(c){if(!o.value||l.value)return;c.preventDefault();let w=0;c.deltaY<0?w=s.value+.05:w=s.value-.05,!(w>150||w<.5)&&(s.value=w)}return e.watch(()=>s.value,c=>{t.value&&!l.value&&(t.value.style.transform=`scale(${c})`)}),{handleZoom:u,canvasScale:s}}function Le(t,o=16.66){let s;function l(){u(),s=window.setInterval(t,o)}function u(){window.clearInterval(s)}return{startTimedQuery:l,stopTimedQuery:u}}const Je={class:"min-w-750px rounded"},ze={class:"h-full rounded"},Ke=e.defineComponent({__name:"index",setup(t,{expose:o}){const s=S.pluginManager.getComponent("monacoEditor"),l=S.pluginManager.getComponent("modal"),u=e.ref(null),c=e.ref(!1),w=e.ref(!1),g=e.ref({}),h=e.inject("pageSchema"),V=e.ref(null),A=e.ref("");function n(){w.value=!1}function I(){c.value=!1}function d(){c.value=!0,A.value=S.getUUID()}async function E(){try{let y=await V.value.validateAll();if(!Object.keys(y).length){alert("请添加表单组件后再尝试!");return}Object.keys(y).length===1&&(y=y.default),g.value=JSON.stringify(y,null,2),e.nextTick(()=>{var C;(C=u.value)==null||C.setValue(g.value)}),w.value=!0}catch(y){console.error(y)}}return o({handleOpen:d}),(y,C)=>(e.openBlock(),e.createBlock(e.unref(l),{modelValue:c.value,"onUpdate:modelValue":C[1]||(C[1]=F=>c.value=F),title:"预览",class:"w-900px",width:"900px",onClose:I,onOk:E,okText:"表单数据"},{default:e.withCtx(()=>[e.createElementVNode("div",Je,[(e.openBlock(),e.createBlock(e.unref(ie),{key:A.value,ref_key:"kb",ref:V,"page-schema":e.unref(h)},null,8,["page-schema"])),e.createVNode(e.unref(l),{modelValue:w.value,"onUpdate:modelValue":C[0]||(C[0]=F=>w.value=F),title:"表单数据",class:"w-860px",width:"860px",onClose:n,onOk:n},{default:e.withCtx(()=>[e.createElementVNode("div",ze,[e.createVNode(e.unref(s),{ref_key:"monacoEditorRef",ref:u,autoToggleTheme:"",readOnly:"",class:"h-full editor","model-value":g.value},null,8,["model-value"])])]),_:1},8,["modelValue"])])]),_:1},8,["modelValue"]))}}),He={key:0,class:"epic-loading-box"},Ze={class:"epic-designer-main"},We={class:"epic-header-container"},Qe={class:"epic-loading-box"},Ge=e.defineComponent({__name:"designer",props:{disabledZoom:{type:Boolean,default:!1},hiddenHeader:{type:Boolean,default:!1},lockDefaultSchemaEdit:{type:Boolean,default:!1},formMode:{type:Boolean,default:!1},title:{default:"EpicDesigner默认项目"},defaultSchema:{},sourceCodeReadOnly:{type:Boolean},source:{default:[]},updateSourceId:{}},emits:["ready","save","reset","toggleDeviceMode","saveSourceData","deleteSourceData","updateSourceData"],setup(t,{expose:o,emit:s}){const{t:l}=J.useLocale(),u=S.loadAsyncComponent(()=>Promise.resolve().then(()=>require("./index-v2u1WTMm.cjs"))),c=S.loadAsyncComponent(()=>Promise.resolve().then(()=>require("./index-CCCx1tbF.cjs"))),w=S.loadAsyncComponent(()=>Promise.resolve().then(()=>require("./index-BvfkMKTv.cjs"))),g=S.loadAsyncComponent(()=>Promise.resolve().then(()=>require("./index-R2r9Rw5O.cjs"))),h=S.loadAsyncComponent(()=>Promise.resolve().then(()=>require("./index-Cap7FkuS.cjs"))),V=ne(),A=se(),n=t;let I={schemas:[{type:"form",id:"root",label:l("page"),children:[],componentProps:{name:l("form"),style:{padding:"16px"}}}],script:`const { defineExpose, find } = epic;
2
-
3
- function test (){
4
- console.log('test')
5
- }
6
-
7
- // 通过defineExpose暴露的函数或者属性
8
- defineExpose({
9
- test
10
- })`};e.watchEffect(()=>{if(n.defaultSchema){I=n.defaultSchema;return}n.source&&S.pluginManager.setSourceData(n.source),n.formMode&&(I.schemas=S.pluginManager.formSchemas)}),V.setDesignMode(),V.setDefaultComponentIds(I.schemas);const d=s,E=e.ref(null),y=e.reactive({checkedNode:null,hoverNode:null,disableHover:!1,matched:[]}),C=e.reactive({schemas:[],script:I.script}),{disabledZoom:F}=Z();e.watchEffect(()=>{F.value=n.disabledZoom}),e.watchEffect(()=>{const a=C.script;a&&a!==""&&V.setMethods(a)}),e.provide("pageSchema",C),e.provide("revoke",A),e.provide("pageManager",V),e.provide("designerProps",e.computed(()=>n)),e.provide("designer",{setCheckedNode:b,setHoverNode:O,setDisableHover:D,handleToggleDeviceMode:q,reset:N,state:y}),S.EventBus.on("saveSourceData",a=>{d("saveSourceData",a)}),S.EventBus.on("deleteSourceData",a=>{d("deleteSourceData",a)}),S.EventBus.on("updateSourceData",a=>{d("updateSourceData",a)});function m(){C.schemas=S.deepClone(I.schemas),b(C.schemas[0]),A.push(C.schemas,"初始化撤销功能")}async function b(a=C.schemas[0]){y.checkedNode=a,y.matched=S.getMatchedById(C.schemas,a.id)}async function O(a=null){var $;if(!a||y.disableHover)return y.hoverNode=null,!1;if((a==null?void 0:a.id)===(($=y.hoverNode)==null?void 0:$.id))return!1;y.hoverNode=a}function B(){e.nextTick(()=>{d("ready",{pageManager:V})})}async function D(a=!1){y.disableHover=a}function R(a){S.deepCompareAndModify(C,S.deepClone(a))}function T(){return e.toRaw(C)}function N(){S.deepEqual(C.schemas,I.schemas)&&C.script===I.script||(S.deepCompareAndModify(C.schemas,I.schemas),C.script=I.script,b(C.schemas[0]),A.push(C.schemas,"重置操作"),d("reset",C))}function v(){d("save",e.toRaw(C))}function q(a){d("toggleDeviceMode",a)}function p(){E.value.handleOpen()}return m(),o({revoke:A,setData:R,getData:T,reset:N,preview:p}),(a,$)=>e.unref(S.pluginManager).initialized.value?(e.openBlock(),e.createBlock(e.Suspense,{key:1,onResolve:B},{default:e.withCtx(()=>[e.createElementVNode("div",Ze,[e.createElementVNode("div",We,[e.renderSlot(a.$slots,"header",{},()=>[n.hiddenHeader?e.createCommentVNode("",!0):(e.openBlock(),e.createBlock(e.unref(u),{key:0,onPreview:p,onSave:v},{header:e.withCtx(()=>[e.renderSlot(a.$slots,"header-prefix")]),prefix:e.withCtx(()=>[e.renderSlot(a.$slots,"header-prefix")]),title:e.withCtx(()=>[e.renderSlot(a.$slots,"header-title")]),"right-prefix":e.withCtx(()=>[e.renderSlot(a.$slots,"header-right-prefix")]),"right-action":e.withCtx(()=>[e.renderSlot(a.$slots,"header-right-action")]),"right-suffix":e.withCtx(()=>[e.renderSlot(a.$slots,"header-right-suffix")]),_:3}))])]),e.createElementVNode("div",{class:e.normalizeClass(["epic-split-view-container",{"hidden-header":a.hiddenHeader}])},[e.createVNode(e.unref(c)),e.createVNode(e.unref(w)),e.createVNode(e.unref(g))],2),e.createVNode(Ke,{ref_key:"previewRef",ref:E},null,512)])]),fallback:e.withCtx(()=>[e.createElementVNode("div",Qe,[e.createVNode(e.unref(h))])]),_:3})):(e.openBlock(),e.createElementBlock("div",He))}}),Ye={component:async()=>await Promise.resolve().then(()=>require("./index-BHEw6RsQ.cjs")),defaultSchema:{label:"代码编辑器",type:"monacoEditor",field:"monacoEditor",icon:"epic-icon-write",input:!0},config:{attribute:[{label:"字段名",type:"input",field:"field"},{label:"标题",type:"input",field:"label"},{label:"默认值",type:"monacoEditor",field:"componentProps.defaultValue"}]},bindModel:"model-value"},{t:te}=J.useLocale(),Xe={component:async()=>await Promise.resolve().then(()=>require("./index-Ch9jeYmj.cjs")),defaultSchema:{label:te("page"),type:"page",componentProps:{},children:[]},config:{attribute:[{label:te("pageName"),type:"input",componentProps:{placeholder:te("pleaseEnter")},field:"componentProps.name"}]}},{t:G}=J.useLocale();function je(t){t.component("EInputSize",async()=>await Promise.resolve().then(()=>require("./index-CpevxZqj.cjs"))),t.component("EColEditor",async()=>await Promise.resolve().then(()=>require("./index-FgdbKgb5.cjs"))),t.component("EActionEditor",async()=>await Promise.resolve().then(()=>require("./index-BU05X44j.cjs"))),t.component("ERuleEditor",async()=>await Promise.resolve().then(()=>require("./index-CpBfljmg.cjs"))),t.component("EOptionsEditor",async()=>await Promise.resolve().then(()=>require("./index-C2s4IuAR.cjs"))),t.component("ENode",async()=>await Promise.resolve().then(()=>require("./index-IPz4bbk7.cjs"))),t.component("EDataSource",async()=>await Promise.resolve().then(()=>require("./index-BEUYVwRA.cjs"))),t.component("EColumnEditor",async()=>await Promise.resolve().then(()=>require("./index-5yjG3fiB.cjs"))),t.component("PaddingMarginControl",async()=>await Promise.resolve().then(()=>require("./index-DYQi05p8.cjs"))),t.registerActivitybar({id:"component_view",title:G("component"),icon:"icon--epic--extension-outline",component:async()=>await Promise.resolve().then(()=>require("./index-BHZbtFEF.cjs"))}),t.registerActivitybar({id:"outline_view",title:G("outline"),icon:"icon--epic--account-tree-outline-rounded",component:async()=>await Promise.resolve().then(()=>require("./outline-BE98qFHQ.cjs"))}),t.registerRightSidebar({id:"attribute_view",title:G("attribute"),component:async()=>await Promise.resolve().then(()=>require("./attributeView-BCjRZKcy.cjs"))}),t.registerRightSidebar({id:"style_view",title:G("style"),component:async()=>await Promise.resolve().then(()=>require("./styleView-DocskQJQ.cjs"))}),t.registerRightSidebar({id:"event_view",title:"事件",component:async()=>await Promise.resolve().then(()=>require("./eventView-5fa6mfSD.cjs"))}),[Ye,Xe].forEach(s=>{t.registerComponent(s)})}je(S.pluginManager);exports._sfc_main=le;exports._sfc_main$1=ie;exports._sfc_main$2=Ge;exports.debounce=he;exports.getDarkState=de;exports.initStore=fe;exports.useDark=ue;exports.useElementDrag=ke;exports.useElementSize=Fe;exports.useElementZoom=qe;exports.useKeyPress=pe;exports.usePageManager=ne;exports.useResizeObserver=ce;exports.useRevoke=se;exports.useStore=Z;exports.useTheme=Te;exports.useTimedQuery=Le;exports.useVModel=Re;exports.watchOnce=Pe;