UNPKG

epic-designer

Version:

基于vue3的设计器,可视化开发页面表单

45 lines (44 loc) 1.19 kB
import { ref as a } from "vue"; function h() { const u = a([]), l = a([]), e = a(null); let o = 0; function i(n, t = "插入组件") { var v; t === "加载数据" && ((v = e.value) == null ? void 0 : v.type) === "初始化" && (e.value = { componentSchema: JSON.stringify(n), type: t }); const r = Date.now(); o + 150 > r || (o = r, e.value !== null && (u.value.push(e.value), l.value.splice(0, l.value.length)), e.value = { componentSchema: JSON.stringify(n), type: t }, u.value.length > 60 && u.value.unshift()); } function s() { if (u.value.length === 0) return !1; const n = u.value.pop(); return e.value !== null && l.value.push(e.value), e.value = n, JSON.parse(n.componentSchema); } function c() { if (l.value.length === 0) return !1; const n = l.value.pop(); return e.value !== null && u.value.push(e.value), e.value = n, JSON.parse(n.componentSchema); } function f() { u.value = [], l.value = [], e.value = null; } return { currentRecord: e, push: i, recordList: u, redo: c, reset: f, undo: s, undoList: l }; } export { h as useRevoke };