UNPKG

snowy-designer

Version:

基于Epic-Designer-Pro版本的设计器,可视化开发页面表单

60 lines (59 loc) 1.64 kB
import { ref as y } from "vue"; /* empty css */ import "radix-vue"; import "clsx"; import "tailwind-merge"; import "lucide-vue-next"; import "../../../ui-kit/base-ui/src/shadch-ui/button/index.js"; import "@vueuse/core"; import "../../../ui-kit/base-ui/src/shadch-ui/toast/index.js"; import "vuedraggable"; import { findSchemaInfoById as m, generateNewSchema as l, deepClone as c } from "../../../utils/src/common/data.js"; import "../store/index.js"; import "lodash"; import "../../../utils/src/manager/pluginManager.js"; import "monaco-editor"; import "../../../utils/src/request/index.js"; function L(a, u, f) { const o = y(null); function x(r) { return r != null && r.id ? (o.value = c(r), !0) : !1; } function h(r) { if (!o.value) return !1; const i = m( a.schemas, r ?? "root" ); if (!i) return !1; const { index: n, list: t } = i, p = l(o.value); return t.splice(n + 1, 0, p), u(p), f("粘贴组件"), !0; } function b(r) { const i = m( a.schemas, r ?? "root" ); if (!i) return !1; const { index: n, schema: t, list: p } = i, s = l(t); return p.splice(n + 1, 0, s), u(s), f("复制组件"), !0; } function v(r) { if (!(r != null && r.id)) return !1; o.value = c(r); const i = m(a.schemas, r.id); if (!i) return !1; const { index: n, list: t } = i; return t.splice(n, 1), n === t.length ? u(t[n - 1] || null) : u(t[n] || null), f("剪切组件"), !0; } return { clipboardNode: o, copy: x, cut: v, duplicate: b, paste: h }; } export { L as useClipboard };