UNPKG

epic-designer-dev

Version:

基于vue3的设计器,可视化开发页面表单。在epic-designer的基础上新增了字典选择器

2 lines (1 loc) 1.16 kB
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const h=require("vue");;/* empty css */require("vuedraggable");const t=require("../../../utils/src/common/data.cjs");require("@vueuse/core");require("../store/index.cjs");require("../../../utils/src/manager/pluginManager.cjs");function y(o,f,s){const a=h.ref(null);function c(n){return n!=null&&n.id?(a.value=t.deepClone(n),!0):!1}function p(n){if(!a.value)return!1;const r=t.findSchemaInfoById(o.schemas,n??"root");if(!r)return!1;const{index:i,list:u}=r,e=t.generateNewSchema(a.value);return u.splice(i+1,0,e),f(e),s("粘贴组件"),!0}function m(n){const r=t.findSchemaInfoById(o.schemas,n??"root");if(!r)return!1;const{index:i,schema:u,list:e}=r,l=t.generateNewSchema(u);return e.splice(i+1,0,l),f(l),s("复制组件"),!0}function q(n){if(!(n!=null&&n.id))return!1;a.value=t.deepClone(n);const r=t.findSchemaInfoById(o.schemas,n.id);if(!r)return!1;const{index:i,list:u}=r;return u.splice(i,1),i===u.length?f(u[i-1]||null):f(u[i]||null),s("剪切组件"),!0}return{clipboardNode:a,copy:c,cut:q,duplicate:m,paste:p}}exports.useClipboard=y;