UNPKG

snowy-designer

Version:

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

2 lines (1 loc) 1.83 kB
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const l=require("vue");;/* empty css */require("radix-vue");require("clsx");require("tailwind-merge");require("lucide-vue-next");require("../../../ui-kit/base-ui/src/shadch-ui/button/index.cjs");require("@vueuse/core");require("../../../ui-kit/base-ui/src/shadch-ui/toast/index.cjs");require("vuedraggable");const v=require("../common/data.cjs");require("../../../hooks/src/store/index.cjs");require("lodash");require("./pluginManager.cjs");require("monaco-editor");require("../request/index.cjs");function I(i,f,p){const q=l.effectScope(),r=l.ref([]),n=l.ref([]),u=l.ref(null),h=60,g=150;let s=0;const c=e=>{try{const t=JSON.parse(e.pageSchema);v.deepCompareAndModify(i,t);const o=e.selectedId?v.findSchemaById(i.schemas,e.selectedId):void 0;p(o??void 0)}catch(t){console.error("解析历史记录失败:",t)}},a=e=>{var t;return{pageSchema:JSON.stringify(i),selectedId:(t=f.selectedNode)==null?void 0:t.id,type:e}};function R(e="插入组件"){var o;if(e==="加载数据"&&((o=u.value)==null?void 0:o.type)==="初始化"){u.value=a(e);return}const t=Date.now();s+g>t||(s=t,u.value!==null&&(r.value.push(u.value),n.value=[]),u.value=a(e),r.value.length>h&&r.value.shift())}function S(){if(r.value.length===0)return!1;const e=r.value.pop();return u.value!==null&&n.value.push(u.value),u.value=e,c(e),!0}function m(){if(n.value.length===0)return!1;const e=n.value.pop();return u.value!==null&&r.value.push(u.value),u.value=e,c(e),!0}function d(){r.value=[],n.value=[],u.value=null}function O(){return r.value.length}function y(){return n.value.length}function C(){q.stop(),d()}return{currentRecord:u,dispose:C,getRedoCount:y,getUndoCount:O,push:R,recordList:r,redo:m,reset:d,undo:S,undoList:n}}exports.useRevoke=I;