@vtj/designer 0.9.0-alpha.3 → 0.9.0-alpha.5

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.
package/dist/index.mjs CHANGED
@@ -1,24 +1,24 @@
1
- var ol = Object.defineProperty;
2
- var rl = (u, e, t) => e in u ? ol(u, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : u[e] = t;
3
- var F = (u, e, t) => rl(u, typeof e != "symbol" ? e + "" : e, t);
4
- import { computed as x, unref as n, ref as k, reactive as Je, watchEffect as il, watch as M, toValue as Et, defineComponent as E, openBlock as d, createElementBlock as A, toDisplayString as L, createVNode as g, withCtx as y, createElementVNode as V, createBlock as w, createCommentVNode as j, createTextVNode as G, mergeProps as ue, readonly as ul, getCurrentScope as cl, onScopeDispose as dl, onMounted as gt, nextTick as Ce, getCurrentInstance as gn, shallowRef as Qe, toRaw as fn, Fragment as O, renderList as W, normalizeClass as K, defineAsyncComponent as pl, h as Ne, resolveDynamicComponent as hn, createSlots as ml, withDirectives as Ee, vShow as ze, renderSlot as Ve, withModifiers as We, isRef as Dt, normalizeStyle as rt, inject as Bt, provide as vl, normalizeProps as bn, guardReactiveProps as yn, withKeys as it, onUnmounted as _n, markRaw as It, createApp as wn, shallowReactive as gl, triggerRef as Pe, KeepAlive as kn } from "vue";
5
- import { ElNotification as Ot, ElMessageBox as Fe, ElMessage as De, ElButton as re, ElDivider as zt, ElRadioGroup as Sn, ElRadioButton as ut, ElButtonGroup as fl, ElImage as xn, ElDropdown as Cn, ElDropdownMenu as Vn, ElDropdownItem as ct, ElInput as be, ElEmpty as ie, ElAlert as Ft, ElTooltip as An, ElTag as jn, ElSwitch as En, ElTree as Lt, ElCollapse as ft, ElCollapseItem as ht, ElRow as pt, ElCol as mt, ElDrawer as Dn, ElForm as we, ElFormItem as In, ElBreadcrumb as hl, ElBreadcrumbItem as bl, ElLoading as yl, vLoading as _l, ElSelect as wl, ElOption as kl, ElInputNumber as Sl, ElColorPicker as xl, ElUpload as Cl, ElSlider as Vl, ElConfigProvider as Al, ElContainer as Zt, ElHeader as jl, ElAside as en, ElMain as El, ElFooter as Dl } from "element-plus";
6
- import Il from "element-plus/es/locale/lang/zh-cn";
7
- import { XDialogForm as Ae, XField as I, XIcon as $e, XDialog as Re, XPanel as bt, XAction as fe, XTabs as Wt, XContainer as q, XForm as Nt, XAttachment as Pl, XActionBar as Tl, XInputUnit as Pn, vResizable as tn, createDialog as $l } from "@vtj/ui";
8
- import { jsonp as Ge, groupBy as yt, dataURLtoBlob as Rl, delay as Mt, upperFirstCamelCase as Tn, toRawType as Ct, cloneDeep as _t, logger as Ie, isPlainObject as Bl, fileToBase64 as Ol, merge as Jt, debounce as zl, arrayToMap as Fl, toArray as Ll } from "@vtj/utils";
9
- import { isBlock as ne, DirectiveModel as $n, createNodeFrom as Wl, BUILT_IN_VUE as Nl, BUILT_IN_VUE_ROUTER as Ml, BUILT_IN_NAME as Pt, emitter as oe, EVENT_PROJECT_ACTIVED as Tt, EVENT_NODE_CHANGE as Ye, NodeModel as nn, EVENT_BLOCK_CHANGE as $t, Base as Rn, BUILT_IN_LIBRARAY_MAP as Jl, ProjectModel as Ul, EVENT_PROJECT_CHANGE as ql, EVENT_PROJECT_BLOCKS_CHANGE as Hl, EVENT_PROJECT_PAGES_CHANGE as Gl, EVENT_PROJECT_DEPS_CHANGE as Kl, EVENT_PROJECT_PUBLISH as Xl, EVENT_PROJECT_FILE_PUBLISH as Ql, EVENT_HISTORY_CHANGE as Yl, EVENT_HISTORY_LOAD as Zl, BlockModel as ln, HistoryModel as ea } from "@vtj/core";
10
- import { parseExpression as Ze, parseFunction as ta, JSCodeToString as Me, LIFE_CYCLES_LIST as na, DATA_TYPES as la, isJSExpression as et, ContextMode as Bn, parseDeps as aa, createAssetsCss as sa, createAssetScripts as an, getRawComponent as sn, createSchemaApis as oa, mockCleanup as ra, mockApis as ia, Provider as ua, isJSFunction as ca } from "@vtj/renderer";
11
- import { VtjIconBack as da, VtjIconPc as pa, VtjIconPhone as ma, VtjIconPad as va, VtjIconUndo as ga, VtjIconRedo as fa, VtjIconTemplate as Ut, VtjIconPreview as ha, VtjIconRefresh as On, VtjIconSetting as zn, VtjIconPublish as ba, VtjIconProject as ya, icons as Rt, ArrowDown as Fn, Search as nt, CopyDocument as _a, Back as wa, VtjIconPlus as Ln, EditPen as ka, Delete as Sa, VtjIconSave as xa, ArrowUp as Ca, MoreFilled as lt, VtjIconCheck as Wn, VtjIconCopy as qt, VtjIconEdit as Nn, VtjIconRemove as wt, VtjIconLock as Mn, VtjIconUnlock as Va, VtjIconInvisible as Jn, VtjIconVisible as Aa, VtjIconHome as ja, VtjIconShare as Ea, Files as Da, VtjIconSearch as Ia, VtjIconHelp as Un, VtjIconLayers as qn, Rank as Pa, VtjIconArrowUp as Ta, VtjIconArrowDown as $a, IconDisplayBlock as Ra, IconDisplayFlex as Ba, IconDisplayInlineBlock as Oa, IconDisplayInline as za, IconEyeInvisible as Fa, IconFlexDirectionrow as La, IconFlexDirectionrowReverse as Wa, IconFlexDirectioncolumn as Na, IconFlexDirectioncolumnReverse as Ma, IconFlexJustifyflexStartrow as Ja, IconFlexJustifyflexEndrow as Ua, IconFlexJustifycenterrow as qa, IconFlexJustifyspaceBetweenrow as Ha, IconFlexJustifyspaceAroundrow as Ga, IconFlexAlignflexStartrow as Ka, IconFlexAlignflexEndrow as Xa, IconFlexAligncenterrow as Qa, IconFlexAlignbaselinerow as Ya, IconFlexAlignstretchrow as Za, IconPositionTopLeft as es, IconPositionTopRight as ts, IconPositionBottomLeft as ns, IconPositionBottomRight as ls, IconPositionLeft as as, IconPositionRight as ss, IconPositionTop as os, IconPositionBottom as rs, IconPositionAll as is, IconTextAlignLeft as us, IconTextAlignCenter as cs, IconTextAlignRight as ds, IconTextAlignJustify as ps, IconFontStyleNone as ms, IconFontStyleItalic as vs, IconCross as Hn, IconTextDecorationUnderline as gs, IconTextDecorationStrike as fs, IconTextDecorationOverline as hs, IconTileXy as bs, IconTileX as ys, IconTileY as _s, IconClose as ws, IconBorderAll as ks, IconBorderLeft as Ss, IconBorderTop as xs, IconBorderBottom as Cs, IconBorderRight as Vs, IconBorderStyleSolid as As, IconBorderStyleDashed as js, IconBorderStyleDotted as Es, IconCursorAuto as Ds, IconCursorPointer as Is, IconCursorNotAllowed as Ps, IconCursorNone as Ts, ArrowRight as $s, Download as Rs, VtjIconDocument as Bs, VtjIconComponents as Os, VtjIconBlock as zs, VtjIconOutline as Fs, VtjIconHistory as Ls, VtjIconApi as Ws, VtjIconCategory as Ns, VtjIconInfo as Ms, HomeFilled as Js, Plus as Us, Close as qs, VtjIconVars as Hs, VtjIconSwitch as Gs, Switch as Ks } from "@vtj/icons";
1
+ var rl = Object.defineProperty;
2
+ var il = (u, e, t) => e in u ? rl(u, e, { enumerable: !0, configurable: !0, writable: !0, value: t }) : u[e] = t;
3
+ var F = (u, e, t) => il(u, typeof e != "symbol" ? e + "" : e, t);
4
+ import { computed as x, unref as n, ref as k, reactive as Je, watchEffect as ul, watch as M, toValue as Et, defineComponent as E, openBlock as d, createElementBlock as A, toDisplayString as L, createVNode as g, withCtx as y, createElementVNode as V, createBlock as w, createCommentVNode as j, createTextVNode as G, mergeProps as ue, readonly as cl, getCurrentScope as dl, onScopeDispose as pl, onMounted as gt, nextTick as Ce, getCurrentInstance as gn, shallowRef as Qe, toRaw as fn, Fragment as O, renderList as W, normalizeClass as K, defineAsyncComponent as ml, h as Ne, resolveDynamicComponent as hn, createSlots as vl, withDirectives as Ee, vShow as ze, renderSlot as Ve, withModifiers as We, isRef as Dt, normalizeStyle as rt, inject as Rt, provide as gl, normalizeProps as bn, guardReactiveProps as yn, withKeys as it, onUnmounted as _n, markRaw as It, createApp as wn, shallowReactive as fl, triggerRef as Pe, KeepAlive as kn } from "vue";
5
+ import { ElNotification as Ot, ElMessageBox as Fe, ElMessage as De, ElButton as re, ElDivider as zt, ElRadioGroup as Sn, ElRadioButton as ut, ElButtonGroup as hl, ElImage as xn, ElDropdown as Cn, ElDropdownMenu as Vn, ElDropdownItem as ct, ElInput as be, ElEmpty as ie, ElAlert as Ft, ElTooltip as An, ElTag as jn, ElSwitch as En, ElTree as Lt, ElCollapse as ft, ElCollapseItem as ht, ElRow as pt, ElCol as mt, ElDrawer as Dn, ElForm as we, ElFormItem as In, ElBreadcrumb as bl, ElBreadcrumbItem as yl, ElLoading as _l, vLoading as wl, ElSelect as kl, ElOption as Sl, ElInputNumber as xl, ElColorPicker as Cl, ElUpload as Vl, ElSlider as Al, ElConfigProvider as jl, ElContainer as Zt, ElHeader as El, ElAside as en, ElMain as Dl, ElFooter as Il } from "element-plus";
6
+ import Pl from "element-plus/es/locale/lang/zh-cn";
7
+ import { XDialogForm as Ae, XField as I, XIcon as $e, XDialog as Be, XPanel as bt, XAction as fe, XTabs as Wt, XContainer as q, XForm as Nt, XAttachment as Tl, XActionBar as $l, XInputUnit as Pn, vResizable as tn, createDialog as Bl } from "@vtj/ui";
8
+ import { jsonp as Ge, groupBy as yt, dataURLtoBlob as Rl, delay as Mt, upperFirstCamelCase as Tn, toRawType as Ct, cloneDeep as _t, logger as Ie, isPlainObject as Ol, fileToBase64 as zl, merge as Jt, debounce as Fl, arrayToMap as Ll, toArray as Wl } from "@vtj/utils";
9
+ import { isBlock as ne, DirectiveModel as $n, createNodeFrom as Nl, BUILT_IN_VUE as Ml, BUILT_IN_VUE_ROUTER as Jl, BUILT_IN_NAME as Pt, emitter as oe, EVENT_PROJECT_ACTIVED as Tt, EVENT_NODE_CHANGE as Ye, NodeModel as nn, EVENT_BLOCK_CHANGE as $t, Base as Bn, BUILT_IN_LIBRARAY_MAP as Ul, ProjectModel as ql, EVENT_PROJECT_CHANGE as Hl, EVENT_PROJECT_BLOCKS_CHANGE as Gl, EVENT_PROJECT_PAGES_CHANGE as Kl, EVENT_PROJECT_DEPS_CHANGE as Xl, EVENT_PROJECT_PUBLISH as Ql, EVENT_PROJECT_FILE_PUBLISH as Yl, EVENT_HISTORY_CHANGE as Zl, EVENT_HISTORY_LOAD as ea, BlockModel as ln, HistoryModel as ta } from "@vtj/core";
10
+ import { parseExpression as Ze, parseFunction as na, JSCodeToString as Me, LIFE_CYCLES_LIST as la, DATA_TYPES as aa, isJSExpression as et, ContextMode as Rn, parseDeps as sa, createAssetsCss as oa, createAssetScripts as an, getRawComponent as sn, createSchemaApis as ra, mockCleanup as ia, mockApis as ua, Provider as ca, isJSFunction as da } from "@vtj/renderer";
11
+ import { VtjIconBack as pa, VtjIconPc as ma, VtjIconPhone as va, VtjIconPad as ga, VtjIconUndo as fa, VtjIconRedo as ha, VtjIconTemplate as Ut, VtjIconPreview as ba, VtjIconRefresh as On, VtjIconSetting as zn, VtjIconPublish as ya, VtjIconProject as _a, icons as Bt, ArrowDown as Fn, Search as nt, CopyDocument as wa, Back as ka, VtjIconPlus as Ln, EditPen as Sa, Delete as xa, VtjIconSave as Ca, ArrowUp as Va, MoreFilled as lt, VtjIconCheck as Wn, VtjIconCopy as qt, VtjIconEdit as Nn, VtjIconRemove as wt, VtjIconLock as Mn, VtjIconUnlock as Aa, VtjIconInvisible as Jn, VtjIconVisible as ja, VtjIconHome as Ea, VtjIconShare as Da, VtjIconComponents as Un, Files as Ia, VtjIconSearch as Pa, VtjIconHelp as qn, VtjIconLayers as Hn, Rank as Ta, VtjIconArrowUp as $a, VtjIconArrowDown as Ba, IconDisplayBlock as Ra, IconDisplayFlex as Oa, IconDisplayInlineBlock as za, IconDisplayInline as Fa, IconEyeInvisible as La, IconFlexDirectionrow as Wa, IconFlexDirectionrowReverse as Na, IconFlexDirectioncolumn as Ma, IconFlexDirectioncolumnReverse as Ja, IconFlexJustifyflexStartrow as Ua, IconFlexJustifyflexEndrow as qa, IconFlexJustifycenterrow as Ha, IconFlexJustifyspaceBetweenrow as Ga, IconFlexJustifyspaceAroundrow as Ka, IconFlexAlignflexStartrow as Xa, IconFlexAlignflexEndrow as Qa, IconFlexAligncenterrow as Ya, IconFlexAlignbaselinerow as Za, IconFlexAlignstretchrow as es, IconPositionTopLeft as ts, IconPositionTopRight as ns, IconPositionBottomLeft as ls, IconPositionBottomRight as as, IconPositionLeft as ss, IconPositionRight as os, IconPositionTop as rs, IconPositionBottom as is, IconPositionAll as us, IconTextAlignLeft as cs, IconTextAlignCenter as ds, IconTextAlignRight as ps, IconTextAlignJustify as ms, IconFontStyleNone as vs, IconFontStyleItalic as gs, IconCross as Gn, IconTextDecorationUnderline as fs, IconTextDecorationStrike as hs, IconTextDecorationOverline as bs, IconTileXy as ys, IconTileX as _s, IconTileY as ws, IconClose as ks, IconBorderAll as Ss, IconBorderLeft as xs, IconBorderTop as Cs, IconBorderBottom as Vs, IconBorderRight as As, IconBorderStyleSolid as js, IconBorderStyleDashed as Es, IconBorderStyleDotted as Ds, IconCursorAuto as Is, IconCursorPointer as Ps, IconCursorNotAllowed as Ts, IconCursorNone as $s, ArrowRight as Bs, Download as Rs, VtjIconDocument as Os, VtjIconBlock as zs, VtjIconOutline as Fs, VtjIconHistory as Ls, VtjIconApi as Ws, VtjIconCategory as Ns, VtjIconInfo as Ms, HomeFilled as Js, Plus as Us, Close as qs, VtjIconVars as Hs, VtjIconSwitch as Gs, Switch as Ks } from "@vtj/icons";
12
12
  import Xs from "html2canvas";
13
13
  import Qs from "mockjs";
14
14
  /**!
15
15
  * Copyright (c) 2024, VTJ.PRO All rights reserved.
16
16
  * @name @vtj/designer
17
17
  * @author CHC chenhuachun1549@dingtalk.com
18
- * @version 0.9.0-alpha.3
18
+ * @version 0.9.0-alpha.5
19
19
  * @license <a href="https://vtj.pro/license.html">MIT License</a>
20
20
  */
21
- const Ys = "0.9.0-alpha.3", on = {
21
+ const Ys = "0.9.0-alpha.5", on = {
22
22
  width: 390,
23
23
  height: 844
24
24
  }, rn = {
@@ -49,8 +49,8 @@ const Ys = "0.9.0-alpha.3", on = {
49
49
  "passive"
50
50
  ], un = "__vue-devtools-frame-state__", ao = "@id/virtual:vue-devtools-path:overlay.js", so = "@id/virtual:vue-devtools-path:overlay/devtools-overlay.mjs";
51
51
  var ke = /* @__PURE__ */ ((u) => (u.Block = "block", u.Node = "node", u))(ke || {}), oo = /* @__PURE__ */ ((u) => (u.Brand = "Brand", u.Toolbar = "Toolbar", u.Actions = "Actions", u.Apps = "Apps", u.Workspace = "Workspace", u.Settings = "Settings", u.Status = "Status", u.Preview = "Preview", u))(oo || {});
52
- function Gn() {
53
- const u = pe(), e = x(() => u.project.value?.dependencies ?? []), t = x(() => u.project.value?.apis ?? []), l = x(() => u.project.value?.meta ?? []);
52
+ function Kn() {
53
+ const u = me(), e = x(() => u.project.value?.dependencies ?? []), t = x(() => u.project.value?.apis ?? []), l = x(() => u.project.value?.meta ?? []);
54
54
  return {
55
55
  engine: u,
56
56
  dependencies: e,
@@ -58,15 +58,15 @@ function Gn() {
58
58
  meta: l
59
59
  };
60
60
  }
61
- function Be(u, e) {
62
- const t = x(() => al.getWidgets(n(u), n(e)).filter((a) => !a.invisible)), l = k();
61
+ function Re(u, e) {
62
+ const t = x(() => sl.getWidgets(n(u), n(e)).filter((a) => !a.invisible)), l = k();
63
63
  return {
64
64
  widgets: t,
65
65
  widgetsRef: l
66
66
  };
67
67
  }
68
68
  function Ht(u = 160) {
69
- const e = pe();
69
+ const e = me();
70
70
  return {
71
71
  span: x(() => {
72
72
  const s = e.skeleton?.skeletonRef.leftWidth || 350, o = Math.max(Math.floor(s / u), 1);
@@ -76,7 +76,7 @@ function Ht(u = 160) {
76
76
  };
77
77
  }
78
78
  function ro() {
79
- const u = pe(), e = x(() => u.project.value?.blocks ?? []);
79
+ const u = me(), e = x(() => u.project.value?.blocks ?? []);
80
80
  return {
81
81
  engine: u,
82
82
  blocks: e
@@ -84,7 +84,7 @@ function ro() {
84
84
  }
85
85
  const io = (u = []) => u.map((e) => e.name);
86
86
  function uo() {
87
- const u = pe(), { components: e, groups: t, componentMap: l } = u.assets, a = Je({}), s = x(() => {
87
+ const u = me(), { components: e, groups: t, componentMap: l } = u.assets, a = Je({}), s = x(() => {
88
88
  const m = {};
89
89
  return t.value && t.value.forEach((v) => {
90
90
  m[v.name] = v;
@@ -94,7 +94,7 @@ function uo() {
94
94
  name: m.name,
95
95
  disabled: !m.children?.length
96
96
  })) : []), r = k(o.value[0]?.name), c = k(""), f = x(() => s.value[r.value]);
97
- il(() => {
97
+ ul(() => {
98
98
  const m = o.value.reduce(
99
99
  (v, b) => (v[b.name] = io(
100
100
  s.value[b.name].children
@@ -126,8 +126,8 @@ function uo() {
126
126
  searchResult: p
127
127
  };
128
128
  }
129
- function de() {
130
- const u = pe(), e = x(() => u.current.value), t = x(() => u.simulator.renderer?.context ?? null), l = x(() => u.isEmptyCurrent.value);
129
+ function pe() {
130
+ const u = me(), e = x(() => u.current.value), t = x(() => u.simulator.renderer?.context ?? null), l = x(() => u.isEmptyCurrent.value);
131
131
  return {
132
132
  engine: u,
133
133
  current: e,
@@ -136,7 +136,7 @@ function de() {
136
136
  };
137
137
  }
138
138
  function co(u, e, t, l, a) {
139
- const s = pe();
139
+ const s = me();
140
140
  s.simulator.init(u, e, t, l, a);
141
141
  const o = x(() => s.simulator.designer.value), r = x(
142
142
  () => Vt("hover", o.value?.hover.value)
@@ -195,7 +195,7 @@ function Vt(u, e) {
195
195
  };
196
196
  }
197
197
  function xe() {
198
- const u = pe(), e = x(
198
+ const u = me(), e = x(
199
199
  () => u.simulator.designer.value
200
200
  ), t = x(() => e.value?.selected.value), l = x(() => ne(t.value?.model));
201
201
  return {
@@ -229,10 +229,10 @@ function vo(u, e) {
229
229
  (z) => `this.${z}`
230
230
  );
231
231
  D.length && p.push({ title: "数据源", items: D });
232
- const R = Object.keys(f?.$refs || {}).map(
232
+ const B = Object.keys(f?.$refs || {}).map(
233
233
  (z) => `this.$refs.${z}`
234
234
  );
235
- return R.length && p.push({ title: "refs", items: R }), p;
235
+ return B.length && p.push({ title: "refs", items: B }), p;
236
236
  }), r = x(() => {
237
237
  if (!t.value) return o.value;
238
238
  const c = t.value.toLowerCase(), f = [];
@@ -263,7 +263,7 @@ const ot = [
263
263
  }
264
264
  ];
265
265
  function go(u) {
266
- const e = pe(), t = x(() => {
266
+ const e = me(), t = x(() => {
267
267
  const m = u.value?.model || null;
268
268
  return ne(m) ? null : m;
269
269
  }), l = k();
@@ -338,7 +338,7 @@ async function Ue(u) {
338
338
  () => !1
339
339
  );
340
340
  }
341
- function me(u, e = "success") {
341
+ function ce(u, e = "success") {
342
342
  return De({
343
343
  message: u,
344
344
  type: e
@@ -357,11 +357,11 @@ function fo(u) {
357
357
  }
358
358
  }), e;
359
359
  }
360
- function ce(u, e, t = !1) {
360
+ function de(u, e, t = !1) {
361
361
  let l = !0;
362
362
  const a = fo(e);
363
363
  try {
364
- u.type === "JSExpression" ? Ze(u, a, t, !0) : ta(u, a, t, !0);
364
+ u.type === "JSExpression" ? Ze(u, a, t, !0) : na(u, a, t, !0);
365
365
  } catch (s) {
366
366
  l = !1, Ot.error({
367
367
  title: "代码错误",
@@ -373,8 +373,8 @@ function ce(u, e, t = !1) {
373
373
  function ho(u) {
374
374
  return Object.keys(u).concat(Object.getOwnPropertyNames(Object.getPrototypeOf(u))).filter((e) => !["constructor"].includes(e));
375
375
  }
376
- function Kn() {
377
- const u = pe(), e = x(
376
+ function Xn() {
377
+ const u = me(), e = x(
378
378
  () => u.simulator.designer.value
379
379
  ), t = x(
380
380
  () => u.current.value ? u.history.value : null
@@ -383,7 +383,7 @@ function Kn() {
383
383
  }, s = () => {
384
384
  t.value?.backward(), e.value?.cleanHelper();
385
385
  }, o = (f) => {
386
- e.value?.cleanHelper(), t.value?.load(f), me("已载入历史记录", "success");
386
+ e.value?.cleanHelper(), t.value?.load(f), ce("已载入历史记录", "success");
387
387
  }, r = x(() => l.value <= 1 ? !0 : (t.value?.index || -1) <= 0), c = x(() => l.value <= 1 ? !0 : (t.value?.index || -1) >= l.value - 1);
388
388
  return {
389
389
  engine: u,
@@ -397,14 +397,14 @@ function Kn() {
397
397
  };
398
398
  }
399
399
  function Le() {
400
- const u = pe(), e = x(() => u.project.value);
400
+ const u = me(), e = x(() => u.project.value);
401
401
  return {
402
402
  engine: u,
403
403
  project: e
404
404
  };
405
405
  }
406
406
  function bo(u) {
407
- const e = pe(), t = x(() => {
407
+ const e = me(), t = x(() => {
408
408
  const r = u.value?.model || null;
409
409
  return !r || ne(r) ? null : r;
410
410
  }), l = k();
@@ -467,7 +467,7 @@ function _o(u) {
467
467
  return [];
468
468
  }
469
469
  function wo(u) {
470
- const e = pe(), t = x(() => {
470
+ const e = me(), t = x(() => {
471
471
  const i = u.value?.model || null;
472
472
  return ne(i) ? null : i;
473
473
  }), l = (i) => x(() => t.value && (t.value.directives || []).find((h) => h.name === i) || cn(i)), a = () => x(() => {
@@ -523,7 +523,7 @@ function ko() {
523
523
  };
524
524
  }
525
525
  function Gt() {
526
- const u = pe(), { access: e, remote: t, auth: l = "#/auth" } = u.adapter || {}, a = () => {
526
+ const u = me(), { access: e, remote: t, auth: l = "#/auth" } = u.adapter || {}, a = () => {
527
527
  if (t) {
528
528
  const { protocol: v, host: b, pathname: i } = location, _ = `${v}//${b}${i}${l}` + "?redirect=" + encodeURIComponent(location.hash.substring(1));
529
529
  location.href = `${t}/auth/client.html?url=${encodeURIComponent(_)}`;
@@ -636,7 +636,7 @@ const xo = "data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!
636
636
  link: {}
637
637
  },
638
638
  setup(u) {
639
- const { engine: e } = de(), t = u, l = x(() => t.icon || e.project.value?.config?.logo || xo), a = () => {
639
+ const { engine: e } = pe(), t = u, l = x(() => t.icon || e.project.value?.config?.logo || xo), a = () => {
640
640
  t.link && (location.href = t.link);
641
641
  };
642
642
  return (s, o) => (d(), A("div", {
@@ -663,7 +663,7 @@ const xo = "data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!
663
663
  __name: "index",
664
664
  emits: ["click"],
665
665
  setup(u, { emit: e }) {
666
- const t = e, { engine: l } = de(), a = x(() => l.project.value?.config?.title || l.project.value?.name), s = x(() => l.project.value?.currentFile?.title), o = () => {
666
+ const t = e, { engine: l } = pe(), a = x(() => l.project.value?.config?.title || l.project.value?.name), s = x(() => l.project.value?.currentFile?.title), o = () => {
667
667
  t("click", l.project.value);
668
668
  };
669
669
  return (r, c) => (d(), A("div", Do, [
@@ -673,7 +673,7 @@ const xo = "data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!
673
673
  onClick: o
674
674
  }, {
675
675
  default: y(() => [
676
- g(n(da), { class: "v-switcher-widget__back" }),
676
+ g(n(pa), { class: "v-switcher-widget__back" }),
677
677
  V("span", null, L(a.value), 1),
678
678
  s.value ? (d(), w(n(zt), {
679
679
  key: 0,
@@ -693,7 +693,7 @@ const xo = "data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!
693
693
  preview: { type: Boolean }
694
694
  },
695
695
  setup(u, { expose: e }) {
696
- const t = u, { forward: l, backward: a, forwardDisabled: s, backwardDisabled: o } = Kn(), r = k("pc");
696
+ const t = u, { forward: l, backward: a, forwardDisabled: s, backwardDisabled: o } = Xn(), r = k("pc");
697
697
  return e({
698
698
  mode: r
699
699
  }), (c, f) => (d(), A("div", To, [
@@ -708,7 +708,7 @@ const xo = "data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!
708
708
  value: "pc"
709
709
  }, {
710
710
  default: y(() => [
711
- g(n(pa))
711
+ g(n(ma))
712
712
  ]),
713
713
  _: 1
714
714
  }),
@@ -717,7 +717,7 @@ const xo = "data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!
717
717
  value: "mobile"
718
718
  }, {
719
719
  default: y(() => [
720
- g(n(ma))
720
+ g(n(va))
721
721
  ]),
722
722
  _: 1
723
723
  }),
@@ -726,7 +726,7 @@ const xo = "data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!
726
726
  value: "pad"
727
727
  }, {
728
728
  default: y(() => [
729
- g(n(va))
729
+ g(n(ga))
730
730
  ]),
731
731
  _: 1
732
732
  })
@@ -734,7 +734,7 @@ const xo = "data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!
734
734
  _: 1
735
735
  }, 8, ["modelValue"]),
736
736
  j("", !0),
737
- g(n(fl), null, {
737
+ g(n(hl), null, {
738
738
  default: y(() => [
739
739
  g(n(re), {
740
740
  type: "default",
@@ -743,7 +743,7 @@ const xo = "data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!
743
743
  disabled: n(o) || !!t.preview
744
744
  }, {
745
745
  default: y(() => [
746
- g(n(ga))
746
+ g(n(fa))
747
747
  ]),
748
748
  _: 1
749
749
  }, 8, ["onClick", "disabled"]),
@@ -754,7 +754,7 @@ const xo = "data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!
754
754
  disabled: n(s) || !!t.preview
755
755
  }, {
756
756
  default: y(() => [
757
- g(n(fa))
757
+ g(n(ha))
758
758
  ]),
759
759
  _: 1
760
760
  }, 8, ["onClick", "disabled"])
@@ -763,7 +763,7 @@ const xo = "data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!
763
763
  })
764
764
  ]));
765
765
  }
766
- }), Ro = { class: "v-actions-widget__cover" }, Bo = /* @__PURE__ */ E({
766
+ }), Bo = { class: "v-actions-widget__cover" }, Ro = /* @__PURE__ */ E({
767
767
  __name: "publisher",
768
768
  props: {
769
769
  id: {},
@@ -821,7 +821,7 @@ const xo = "data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!
821
821
  default: y(() => [
822
822
  g(n(I), { label: "截图" }, {
823
823
  editor: y(() => [
824
- V("div", Ro, [
824
+ V("div", Bo, [
825
825
  g(n(xn), {
826
826
  src: c.value,
827
827
  fit: "contain"
@@ -873,12 +873,12 @@ const xo = "data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!
873
873
  _: 1
874
874
  }, 8, ["icon", "model"]));
875
875
  }
876
- }), Xn = (u, e) => {
876
+ }), Qn = (u, e) => {
877
877
  const t = u.__vccOpts || u;
878
878
  for (const [l, a] of e)
879
879
  t[l] = a;
880
880
  return t;
881
- }, Oo = /* @__PURE__ */ Xn(Bo, [["__scopeId", "data-v-0c29fc53"]]), zo = { class: "v-actions-widget" }, Fo = /* @__PURE__ */ E({
881
+ }, Oo = /* @__PURE__ */ Qn(Ro, [["__scopeId", "data-v-0c29fc53"]]), zo = { class: "v-actions-widget" }, Fo = /* @__PURE__ */ E({
882
882
  name: "ActionsWidget",
883
883
  inheritAttrs: !1,
884
884
  __name: "index",
@@ -887,9 +887,9 @@ const xo = "data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!
887
887
  },
888
888
  setup(u) {
889
889
  const { engine: e, designer: t } = xe(), { isLogined: l, toRemoteAuth: a } = Gt(), s = k(!1), o = k(!1), r = k(), c = () => {
890
- e.current.value ? (s.value ? e.skeleton?.getWidget("Previewer")?.widgetRef.refresh() : (t.value?.setSelected(null), e.simulator.refresh()), me("刷新完成", "success")) : me("请先打开文件", "warning");
890
+ e.current.value ? (s.value ? e.skeleton?.getWidget("Previewer")?.widgetRef.refresh() : (t.value?.setSelected(null), e.simulator.refresh()), ce("刷新完成", "success")) : ce("请先打开文件", "warning");
891
891
  }, f = async () => {
892
- e.current.value ? (s.value && (e.skeleton?.closePreview(), s.value = !1, await Mt(1e3)), t.value?.setSelected(e.current.value)) : me("请先打开文件", "warning");
892
+ e.current.value ? (s.value && (e.skeleton?.closePreview(), s.value = !1, await Mt(1e3)), t.value?.setSelected(e.current.value)) : ce("请先打开文件", "warning");
893
893
  }, p = () => {
894
894
  if (e.project.value)
895
895
  if (e.current.value) {
@@ -899,10 +899,10 @@ const xo = "data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!
899
899
  }
900
900
  e.skeleton?.openPreview(""), s.value = !0;
901
901
  } else
902
- me("请先打开文件", "warning");
902
+ ce("请先打开文件", "warning");
903
903
  }, m = () => {
904
904
  const i = e.project.value;
905
- i && (i.currentFile ? i.publish(i.currentFile) : me("请先打开文件", "warning"));
905
+ i && (i.currentFile ? i.publish(i.currentFile) : ce("请先打开文件", "warning"));
906
906
  }, v = async () => {
907
907
  const i = e.project.value;
908
908
  if (i)
@@ -910,7 +910,7 @@ const xo = "data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!
910
910
  if (await l()) {
911
911
  const h = await e.simulator.capture(), { name: _, title: S, market: C } = i.currentFile;
912
912
  if (!h) {
913
- me("截图失败", "warning");
913
+ ce("截图失败", "warning");
914
914
  return;
915
915
  }
916
916
  r.value = {
@@ -930,7 +930,7 @@ const xo = "data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!
930
930
  }
931
931
  ).catch(() => !1) && a();
932
932
  else
933
- me("请先打开文件", "warning");
933
+ ce("请先打开文件", "warning");
934
934
  }, b = (i) => {
935
935
  const h = e.project.value;
936
936
  if (h)
@@ -956,7 +956,7 @@ const xo = "data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!
956
956
  title: "预览"
957
957
  }, {
958
958
  default: y(() => [
959
- g(n(ha))
959
+ g(n(ba))
960
960
  ]),
961
961
  _: 1
962
962
  }, 8, ["type"]),
@@ -995,7 +995,7 @@ const xo = "data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!
995
995
  default: y(() => [
996
996
  g(n(ct), {
997
997
  command: "current",
998
- icon: n(ba)
998
+ icon: n(ya)
999
999
  }, {
1000
1000
  default: y(() => h[1] || (h[1] = [
1001
1001
  G("发布当前文件")
@@ -1004,7 +1004,7 @@ const xo = "data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!
1004
1004
  }, 8, ["icon"]),
1005
1005
  g(n(ct), {
1006
1006
  command: "project",
1007
- icon: n(ya)
1007
+ icon: n(_a)
1008
1008
  }, {
1009
1009
  default: y(() => h[2] || (h[2] = [
1010
1010
  G("发布整站文件")
@@ -1039,7 +1039,7 @@ const xo = "data:image/svg+xml,%3c?xml%20version='1.0'%20standalone='no'?%3e%3c!
1039
1039
  }
1040
1040
  });
1041
1041
  function Kt(u) {
1042
- return cl() ? (dl(u), !0) : !1;
1042
+ return dl() ? (pl(u), !0) : !1;
1043
1043
  }
1044
1044
  function qe(u) {
1045
1045
  return typeof u == "function" ? u() : n(u);
@@ -1085,12 +1085,12 @@ function Ho(u, e, t = {}) {
1085
1085
  }, qe(e));
1086
1086
  }
1087
1087
  return l && (a.value = !0, kt && c()), Kt(r), {
1088
- isPending: ul(a),
1088
+ isPending: cl(a),
1089
1089
  start: c,
1090
1090
  stop: r
1091
1091
  };
1092
1092
  }
1093
- const St = kt ? window : void 0, Qn = kt ? window.navigator : void 0;
1093
+ const St = kt ? window : void 0, Yn = kt ? window.navigator : void 0;
1094
1094
  function Se(u) {
1095
1095
  var e;
1096
1096
  const t = qe(u);
@@ -1177,7 +1177,7 @@ function Xt(u) {
1177
1177
  function pn(u, e = {}) {
1178
1178
  const {
1179
1179
  controls: t = !1,
1180
- navigator: l = Qn
1180
+ navigator: l = Yn
1181
1181
  } = e, a = Xt(() => l && "permissions" in l), s = Qe(), o = typeof u == "string" ? { name: u } : u, r = Qe(), c = () => {
1182
1182
  var p, m;
1183
1183
  r.value = (m = (p = s.value) == null ? void 0 : p.state) != null ? m : "prompt";
@@ -1203,9 +1203,9 @@ function pn(u, e = {}) {
1203
1203
  query: f
1204
1204
  } : r;
1205
1205
  }
1206
- function Yn(u = {}) {
1206
+ function Zn(u = {}) {
1207
1207
  const {
1208
- navigator: e = Qn,
1208
+ navigator: e = Yn,
1209
1209
  read: t = !1,
1210
1210
  source: l,
1211
1211
  copiedDuring: a = 1500,
@@ -1225,8 +1225,8 @@ function Yn(u = {}) {
1225
1225
  D.value = C ?? "", D.style.position = "absolute", D.style.opacity = "0", document.body.appendChild(D), D.select(), document.execCommand("copy"), D.remove();
1226
1226
  }
1227
1227
  function _() {
1228
- var C, D, R;
1229
- return (R = (D = (C = document?.getSelection) == null ? void 0 : C.call(document)) == null ? void 0 : D.toString()) != null ? R : "";
1228
+ var C, D, B;
1229
+ return (B = (D = (C = document?.getSelection) == null ? void 0 : C.call(document)) == null ? void 0 : D.toString()) != null ? B : "";
1230
1230
  }
1231
1231
  function S(C) {
1232
1232
  return C === "granted" || C === "prompt";
@@ -1305,7 +1305,7 @@ function tt(u, e = { width: 0, height: 0 }, t = {}) {
1305
1305
  stop: p
1306
1306
  };
1307
1307
  }
1308
- const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" }, Zo = { class: "v-icon-setter__list" }, Zn = /* @__PURE__ */ E({
1308
+ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" }, Zo = { class: "v-icon-setter__list" }, el = /* @__PURE__ */ E({
1309
1309
  name: "IconSetter",
1310
1310
  __name: "icon",
1311
1311
  props: {
@@ -1315,9 +1315,9 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
1315
1315
  emits: ["change", "update:modelValue"],
1316
1316
  setup(u, { emit: e }) {
1317
1317
  const t = u, l = e, a = k(!1), s = k(t.modelValue), o = k(""), r = x(
1318
- () => Rt[t.modelValue] || t.modelValue
1318
+ () => Bt[t.modelValue] || t.modelValue
1319
1319
  ), c = x(() => {
1320
- const b = Object.entries(Rt);
1320
+ const b = Object.entries(Bt);
1321
1321
  return o.value ? b.filter((i) => i[0].toLowerCase().includes(o.value)) : b;
1322
1322
  }), f = (b) => {
1323
1323
  s.value = b;
@@ -1342,7 +1342,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
1342
1342
  ]),
1343
1343
  _: 1
1344
1344
  }, 8, ["size", "model-value", "suffix-icon"]),
1345
- a.value ? (d(), w(n(Re), {
1345
+ a.value ? (d(), w(n(Be), {
1346
1346
  key: 0,
1347
1347
  title: "图标选择器",
1348
1348
  width: "1000px",
@@ -1390,7 +1390,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
1390
1390
  }, 8, ["modelValue"])) : j("", !0)
1391
1391
  ]));
1392
1392
  }
1393
- }), se = pl({
1393
+ }), se = ml({
1394
1394
  loader: () => import("./Editor-C1dy1R3N.js"),
1395
1395
  loadingComponent: E({
1396
1396
  render() {
@@ -1436,7 +1436,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
1436
1436
  { label: "目录", value: !0 }
1437
1437
  ], p = (i) => {
1438
1438
  r.value && (r.value.name = Tn(i));
1439
- }, m = async (i) => t.value?.existPageName(i.name, [i.id]) ? (ae("页面名称已存在,请更换"), !1) : (e.item ? (t.value?.updatePage(i), a.value?.setSelected(null), l.simulator.refresh()) : t.value?.createPage(i, e.parentId), !0), { copy: v } = Yn({}), b = (i) => {
1439
+ }, m = async (i) => t.value?.existPageName(i.name, [i.id]) ? (ae("页面名称已存在,请更换"), !1) : (e.item ? (t.value?.updatePage(i), a.value?.setSelected(null), l.simulator.refresh()) : t.value?.createPage(i, e.parentId), !0), { copy: v } = Zn({}), b = (i) => {
1440
1440
  v(i), De.success({
1441
1441
  message: "已经复制到粘贴板"
1442
1442
  });
@@ -1469,7 +1469,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
1469
1469
  default: y(() => [
1470
1470
  G(L(`/page/${r.value.id}`) + " ", 1),
1471
1471
  g(n($e), {
1472
- icon: n(_a),
1472
+ icon: n(wa),
1473
1473
  onClick: h[0] || (h[0] = (_) => b(`/page/${r.value.id}`))
1474
1474
  }, null, 8, ["icon"])
1475
1475
  ]),
@@ -1496,7 +1496,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
1496
1496
  editor: "none"
1497
1497
  }, {
1498
1498
  editor: y(() => [
1499
- g(Zn, {
1499
+ g(el, {
1500
1500
  modelValue: r.value.icon,
1501
1501
  "onUpdate:modelValue": h[1] || (h[1] = (_) => r.value.icon = _),
1502
1502
  size: "default"
@@ -1636,7 +1636,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
1636
1636
  }, b = x(() => t.header ? {
1637
1637
  content: t.title,
1638
1638
  subtitle: t.subtitle,
1639
- icon: t.back ? wa : void 0,
1639
+ icon: t.back ? ka : void 0,
1640
1640
  onClickBack: t.back ? f : void 0,
1641
1641
  onClick: t.collapsable ? () => {
1642
1642
  a.value = !a.value;
@@ -1649,7 +1649,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
1649
1649
  border: !1,
1650
1650
  header: b.value,
1651
1651
  fit: ""
1652
- }, ml({
1652
+ }, vl({
1653
1653
  actions: y(() => [
1654
1654
  t.refresh ? (d(), w(n(fe), {
1655
1655
  key: 0,
@@ -1676,7 +1676,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
1676
1676
  key: 2,
1677
1677
  size: h.$attrs.size,
1678
1678
  mode: "icon",
1679
- icon: n(ka),
1679
+ icon: n(Sa),
1680
1680
  background: "hover",
1681
1681
  title: "编辑",
1682
1682
  onClick: c
@@ -1685,7 +1685,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
1685
1685
  key: 3,
1686
1686
  size: h.$attrs.size,
1687
1687
  mode: "icon",
1688
- icon: n(Sa),
1688
+ icon: n(xa),
1689
1689
  background: "hover",
1690
1690
  title: "清除",
1691
1691
  onClick: p
@@ -1694,7 +1694,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
1694
1694
  key: 4,
1695
1695
  size: h.$attrs.size,
1696
1696
  mode: "icon",
1697
- icon: n(xa),
1697
+ icon: n(Ca),
1698
1698
  background: "hover",
1699
1699
  title: "保存",
1700
1700
  onClick: m
@@ -1714,7 +1714,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
1714
1714
  key: 6,
1715
1715
  size: h.$attrs.size,
1716
1716
  mode: "icon",
1717
- icon: n(Ca),
1717
+ icon: n(Va),
1718
1718
  background: "hover",
1719
1719
  title: "收起",
1720
1720
  onClick: _[1] || (_[1] = (S) => i(!0))
@@ -1878,7 +1878,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
1878
1878
  },
1879
1879
  unlock: {
1880
1880
  label: "解锁",
1881
- icon: Va
1881
+ icon: Aa
1882
1882
  },
1883
1883
  invisible: {
1884
1884
  label: "隐藏",
@@ -1886,15 +1886,20 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
1886
1886
  },
1887
1887
  visible: {
1888
1888
  label: "显示",
1889
- icon: Aa
1889
+ icon: ja
1890
1890
  },
1891
1891
  home: {
1892
1892
  label: "主页",
1893
- icon: ja
1893
+ icon: Ea
1894
1894
  },
1895
1895
  share: {
1896
1896
  label: "共享",
1897
- icon: Ea
1897
+ icon: Da
1898
+ },
1899
+ saveToBlock: {
1900
+ label: "存为区块",
1901
+ divided: !0,
1902
+ icon: Un
1898
1903
  }
1899
1904
  }, l = u, a = e, s = k(!!l.modelValue), o = x(() => l.actionInMore ? [] : l.actions.map((v) => {
1900
1905
  const b = t[v];
@@ -2205,7 +2210,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
2205
2210
  "close"
2206
2211
  ],
2207
2212
  setup(u, { emit: e }) {
2208
- const t = u, l = e, { searchResult: a, keyword: s } = vo(t.block, t.context), { copy: o } = Yn({}), r = [
2213
+ const t = u, l = e, { searchResult: a, keyword: s } = vo(t.block, t.context), { copy: o } = Zn({}), r = [
2209
2214
  {
2210
2215
  name: "normal",
2211
2216
  label: "常用"
@@ -2231,7 +2236,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
2231
2236
  message: "已经复制到粘贴板"
2232
2237
  });
2233
2238
  };
2234
- return (S, C) => (d(), w(n(Re), {
2239
+ return (S, C) => (d(), w(n(Be), {
2235
2240
  "model-value": t.modelValue,
2236
2241
  class: "v-binder",
2237
2242
  title: S.title,
@@ -2285,13 +2290,13 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
2285
2290
  ]),
2286
2291
  _: 2
2287
2292
  }, 1024),
2288
- (d(!0), A(O, null, W(D.items, (R) => (d(), w(ve, {
2289
- title: R,
2293
+ (d(!0), A(O, null, W(D.items, (B) => (d(), w(ve, {
2294
+ title: B,
2290
2295
  background: "",
2291
2296
  actions: ["copy"],
2292
2297
  small: "",
2293
- onClick: (z) => h(R),
2294
- onAction: (z) => _(R)
2298
+ onClick: (z) => h(B),
2299
+ onAction: (z) => _(B)
2295
2300
  }, null, 8, ["title", "onClick", "onAction"]))), 256))
2296
2301
  ]))), 256)),
2297
2302
  n(a).length ? j("", !0) : (d(), w(n(ie), { key: 0 }))
@@ -2406,7 +2411,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
2406
2411
  }, r = () => {
2407
2412
  a.value ? (l("submit", a.value), l("update:modelValue", !1)) : ae("请选择插槽");
2408
2413
  };
2409
- return (c, f) => (d(), w(n(Re), ue({
2414
+ return (c, f) => (d(), w(n(Be), ue({
2410
2415
  class: "v-slots-picker",
2411
2416
  title: "选择插槽",
2412
2417
  width: "600px",
@@ -2448,7 +2453,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
2448
2453
  _: 1
2449
2454
  }, 16, ["height"]));
2450
2455
  }
2451
- }), el = /* @__PURE__ */ E({
2456
+ }), tl = /* @__PURE__ */ E({
2452
2457
  name: "Viewport",
2453
2458
  __name: "viewport",
2454
2459
  props: {
@@ -2483,7 +2488,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
2483
2488
  name: "VMicroApp",
2484
2489
  __name: "micro-app",
2485
2490
  setup(u) {
2486
- return (e, t) => (d(), w(n(Re), {
2491
+ return (e, t) => (d(), w(n(Be), {
2487
2492
  title: "页面模板",
2488
2493
  width: "80%",
2489
2494
  height: "80%"
@@ -2494,11 +2499,11 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
2494
2499
  _: 1
2495
2500
  }));
2496
2501
  }
2497
- }), Wc = /* @__PURE__ */ Xn(pr, [["__scopeId", "data-v-d44d0728"]]), mr = /* @__PURE__ */ E({
2502
+ }), Wc = /* @__PURE__ */ Qn(pr, [["__scopeId", "data-v-d44d0728"]]), mr = /* @__PURE__ */ E({
2498
2503
  name: "PagesWidget",
2499
2504
  __name: "index",
2500
2505
  setup(u) {
2501
- const { project: e, engine: t } = Le(), l = x(() => e.value?.pages || []), { current: a } = de(), s = k(!1), o = k(), r = k(), c = x(() => `(共 ${l.value.length} 项)`), f = () => {
2506
+ const { project: e, engine: t } = Le(), l = x(() => e.value?.pages || []), { current: a } = pe(), s = k(!1), o = k(), r = k(), c = x(() => `(共 ${l.value.length} 项)`), f = () => {
2502
2507
  r.value = void 0, o.value = void 0, s.value = !0;
2503
2508
  }, p = async (i) => {
2504
2509
  const { name: h, modelValue: _ } = i, { data: S, node: C } = _;
@@ -2516,9 +2521,9 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
2516
2521
  const D = C.parent?.data.id;
2517
2522
  e.value?.clonePage(S, D);
2518
2523
  }
2519
- h === "home" && (e.value?.setHomepage(S.id), me("设置主页成功", "success"));
2524
+ h === "home" && (e.value?.setHomepage(S.id), ce("设置主页成功", "success")), h === "saveToBlock" && (await e.value?.saveToBlock(S), ce("已保存到区块", "success"));
2520
2525
  }, m = async (i) => {
2521
- if (i.raw && me("这是源码模式页面,不能低代码设计", "warning"), i.dir || i.raw)
2526
+ if (i.raw && ce("这是源码模式页面,不能低代码设计", "warning"), i.dir || i.raw)
2522
2527
  t.project.value?.deactivate();
2523
2528
  else {
2524
2529
  t.project.value?.active(i);
@@ -2549,11 +2554,11 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
2549
2554
  default: y(({ data: _, node: S }) => [
2550
2555
  g(n(ve), {
2551
2556
  class: "v-pages-widget__item",
2552
- icon: n(Rt)[_.icon],
2557
+ icon: n(Bt)[_.icon],
2553
2558
  title: _.title,
2554
2559
  subtitle: _.name,
2555
2560
  "model-value": { data: _, node: S },
2556
- actions: _.dir ? ["add", "edit", "remove"] : _.raw ? ["home", "edit", "remove"] : ["home", "copy", "edit", "remove"],
2561
+ actions: _.dir ? ["add", "edit", "remove"] : _.raw ? ["home", "edit", "remove"] : ["home", "edit", "copy", "remove", "saveToBlock"],
2557
2562
  onAction: p,
2558
2563
  onClick: (C) => m(_),
2559
2564
  active: n(a)?.id === _.id,
@@ -2597,7 +2602,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
2597
2602
  return c(D);
2598
2603
  }
2599
2604
  return null;
2600
- }, p = (C) => C ? (C || "").split(",").map((R) => ({ url: R })) : [], m = k(
2605
+ }, p = (C) => C ? (C || "").split(",").map((B) => ({ url: B })) : [], m = k(
2601
2606
  p(t.modelValue)
2602
2607
  ), v = x(() => Array.isArray(m.value) ? m.value.map((C) => C.url).join(",") : m.value ? m.value.url : "");
2603
2608
  M(
@@ -2616,8 +2621,8 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
2616
2621
  return ae("请选择文件"), !1;
2617
2622
  const C = (t.attachment?.accept || "").toLowerCase().split(",");
2618
2623
  return C.length > 0 ? [].concat(m.value).every((z) => {
2619
- const T = z.name || z.url.split("?")[0], B = T.substring(T.lastIndexOf(".")).toLowerCase();
2620
- return C.includes(B);
2624
+ const T = z.name || z.url.split("?")[0], R = T.substring(T.lastIndexOf(".")).toLowerCase();
2625
+ return C.includes(R);
2621
2626
  }) ? !0 : (ae(`只支持 ${C.join(",")} 文件`), !1) : !0;
2622
2627
  }, i = () => {
2623
2628
  b() && (l("change", v.value), l("update:modelValue", v.value), r.value = !1);
@@ -2633,12 +2638,12 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
2633
2638
  readonly: "",
2634
2639
  onFocus: _,
2635
2640
  "model-value": t.modelValue,
2636
- "suffix-icon": n(Da)
2641
+ "suffix-icon": n(Ia)
2637
2642
  }, C.$attrs), null, 16, ["model-value", "suffix-icon"]),
2638
- r.value ? (d(), w(n(Re), {
2643
+ r.value ? (d(), w(n(Be), {
2639
2644
  key: 0,
2640
2645
  modelValue: r.value,
2641
- "onUpdate:modelValue": D[2] || (D[2] = (R) => r.value = R),
2646
+ "onUpdate:modelValue": D[2] || (D[2] = (B) => r.value = B),
2642
2647
  title: "文件选择器",
2643
2648
  width: "600px",
2644
2649
  height: "400px",
@@ -2659,15 +2664,15 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
2659
2664
  })
2660
2665
  ]),
2661
2666
  default: y(() => [
2662
- g(n(Pl), ue({
2667
+ g(n(Tl), ue({
2663
2668
  size: "small",
2664
2669
  "list-type": "list",
2665
2670
  selectable: !0,
2666
2671
  uploader: f,
2667
2672
  modelValue: o.value,
2668
- "onUpdate:modelValue": D[0] || (D[0] = (R) => o.value = R),
2673
+ "onUpdate:modelValue": D[0] || (D[0] = (B) => o.value = B),
2669
2674
  "select-value": m.value,
2670
- "onUpdate:selectValue": D[1] || (D[1] = (R) => m.value = R)
2675
+ "onUpdate:selectValue": D[1] || (D[1] = (B) => m.value = B)
2671
2676
  }, t.attachment, { onRemove: S }), null, 16, ["modelValue", "select-value"])
2672
2677
  ]),
2673
2678
  _: 1
@@ -2716,7 +2721,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
2716
2721
  label: "插件",
2717
2722
  type: "danger"
2718
2723
  }
2719
- }, v = k(void 0), { current: b } = de(), i = k(!1), h = x(() => v.value?.id ? "编辑区块" : "新增区块"), _ = x(() => `(共 ${t.value.length} 个)`), S = () => ({
2724
+ }, v = k(void 0), { current: b } = pe(), i = k(!1), h = x(() => v.value?.id ? "编辑区块" : "新增区块"), _ = x(() => `(共 ${t.value.length} 个)`), S = () => ({
2720
2725
  fromType: "Schema",
2721
2726
  name: "",
2722
2727
  title: "",
@@ -2728,7 +2733,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
2728
2733
  return ".json";
2729
2734
  if (v.value?.fromType === "Plugin")
2730
2735
  return ".js,.css,.json";
2731
- }), D = x(() => v.value?.fromType === "Plugin"), R = async (P) => {
2736
+ }), D = x(() => v.value?.fromType === "Plugin"), B = async (P) => {
2732
2737
  const Y = P, le = l.project.value;
2733
2738
  if (!le) return !1;
2734
2739
  if (P.id)
@@ -2745,7 +2750,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
2745
2750
  v.value = S(), i.value = !0;
2746
2751
  }, T = (P) => {
2747
2752
  v.value = _t(P), i.value = !0;
2748
- }, B = (P) => {
2753
+ }, R = (P) => {
2749
2754
  l.project.value?.cloneBlock(P);
2750
2755
  }, $ = (P) => {
2751
2756
  l.project.value?.removeBlock(P.id);
@@ -2758,7 +2763,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
2758
2763
  Y && Y.regionRef.openTab("Designer");
2759
2764
  }
2760
2765
  }, N = async (P) => {
2761
- const Y = Wl(P), le = await l.assets.getBlockMaterial(Y, P.name), He = l.skeleton?.getWidget("Designer")?.widgetRef?.designer;
2766
+ const Y = Nl(P), le = await l.assets.getBlockMaterial(Y, P.name), He = l.skeleton?.getWidget("Designer")?.widgetRef?.designer;
2762
2767
  He && le && He.setDragging(le);
2763
2768
  }, J = () => {
2764
2769
  const P = l.skeleton?.getWidget("Designer")?.widgetRef?.designer;
@@ -2810,7 +2815,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
2810
2815
  tag: m[he.fromType || "Schema"]?.label,
2811
2816
  tagType: m[he.fromType || "Schema"]?.type,
2812
2817
  onEdit: (st) => T(he),
2813
- onCopy: (st) => B(he),
2818
+ onCopy: (st) => R(he),
2814
2819
  onRemove: (st) => $(he),
2815
2820
  onClick: (st) => ge(he),
2816
2821
  draggable: n(b)?.id !== he.id,
@@ -2840,7 +2845,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
2840
2845
  width: "600px",
2841
2846
  height: "400px",
2842
2847
  "form-props": { tooltipMessage: !1 },
2843
- "submit-method": R
2848
+ "submit-method": B
2844
2849
  }, {
2845
2850
  default: y(() => [
2846
2851
  g(n(I), {
@@ -2924,7 +2929,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
2924
2929
  size: "small"
2925
2930
  }, {
2926
2931
  prefix: y(() => [
2927
- g(n(Ia))
2932
+ g(n(Pa))
2928
2933
  ]),
2929
2934
  _: 1
2930
2935
  }, 8, ["modelValue"])
@@ -3016,13 +3021,13 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
3016
3021
  name: "OutlineWidget",
3017
3022
  __name: "index",
3018
3023
  setup(u) {
3019
- const { engine: e, designer: t, selected: l } = xe(), { current: a } = de(), s = k([]), o = (T, B) => {
3020
- if (B === "slot") return [];
3024
+ const { engine: e, designer: t, selected: l } = xe(), { current: a } = pe(), s = k([]), o = (T, R) => {
3025
+ if (R === "slot") return [];
3021
3026
  if (ne(T))
3022
3027
  return T.locked ? ["unlock"] : ["lock"];
3023
3028
  const $ = T.parent;
3024
3029
  return $ && ($.locked || $.invisible) ? [] : a.value?.locked ? [] : T.locked ? ["unlock"] : T.invisible ? ["visible"] : ["lock", "invisible", "copy", "remove"];
3025
- }, r = (T, B) => {
3030
+ }, r = (T, R) => {
3026
3031
  const $ = {};
3027
3032
  if (!T.some((N) => N.slot)) return c(T);
3028
3033
  for (const N of T) {
@@ -3032,16 +3037,16 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
3032
3037
  const ge = [];
3033
3038
  for (const [N, J] of Object.entries($))
3034
3039
  ge.push({
3035
- id: `${B.id}-${N}`,
3040
+ id: `${R.id}-${N}`,
3036
3041
  label: `#${N}`,
3037
3042
  type: "slot",
3038
- model: B,
3043
+ model: R,
3039
3044
  disabled: !0,
3040
3045
  children: c(J)
3041
3046
  });
3042
3047
  return ge;
3043
3048
  }, c = (T) => {
3044
- const B = [];
3049
+ const R = [];
3045
3050
  return T.forEach(($) => {
3046
3051
  const Q = {
3047
3052
  id: $.id,
@@ -3050,15 +3055,15 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
3050
3055
  //getNodeType(model),
3051
3056
  model: $
3052
3057
  };
3053
- Array.isArray($.children) && (Q.children = r($.children, $)), B.push(Q);
3054
- }), B;
3058
+ Array.isArray($.children) && (Q.children = r($.children, $)), R.push(Q);
3059
+ }), R;
3055
3060
  }, f = () => {
3056
3061
  if (!a.value) return [];
3057
- const { id: T, name: B, nodes: $ } = a.value;
3062
+ const { id: T, name: R, nodes: $ } = a.value;
3058
3063
  return [
3059
3064
  {
3060
3065
  id: T,
3061
- label: B,
3066
+ label: R,
3062
3067
  type: T,
3063
3068
  model: a.value,
3064
3069
  children: c($)
@@ -3067,13 +3072,13 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
3067
3072
  }, p = async () => {
3068
3073
  s.value = f(), l.value?.model && (await Ce(), t.value?.setSelected(l.value.model));
3069
3074
  }, m = x(() => l.value?.model.id), v = (T) => {
3070
- const B = T.data;
3071
- if (B.type === "slot" || ne(B.model) || B.model.locked || B.model.name === "template")
3075
+ const R = T.data;
3076
+ if (R.type === "slot" || ne(R.model) || R.model.locked || R.model.name === "template")
3072
3077
  return !1;
3073
- const $ = e.assets.componentMap.get(B.model.name);
3078
+ const $ = e.assets.componentMap.get(R.model.name);
3074
3079
  return $ ? (t.value?.setDragging($), !0) : !1;
3075
- }, b = async (T, B, $) => {
3076
- const Q = B.data, N = {
3080
+ }, b = async (T, R, $) => {
3081
+ const Q = R.data, N = {
3077
3082
  prev: "top",
3078
3083
  next: "bottom",
3079
3084
  inner: "inner"
@@ -3087,14 +3092,14 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
3087
3092
  }
3088
3093
  return J;
3089
3094
  }, i = (T) => {
3090
- const B = T?.model;
3091
- if (!B || B.invisible || T.type === "slot") {
3095
+ const R = T?.model;
3096
+ if (!R || R.invisible || T.type === "slot") {
3092
3097
  t.value?.setSelected(null), t.value?.setHover(null);
3093
3098
  return;
3094
3099
  }
3095
- t.value?.setSelected(B), t.value?.setHover(null);
3096
- }, h = async (T, B, $) => {
3097
- const Q = T.data, ge = B.data;
3100
+ t.value?.setSelected(R), t.value?.setHover(null);
3101
+ }, h = async (T, R, $) => {
3102
+ const Q = T.data, ge = R.data;
3098
3103
  if (ne(ge.model)) {
3099
3104
  const le = Q.model;
3100
3105
  delete le.slot, a.value?.move(le, void 0, "inner"), t.value?.setDropping(null), t.value?.setDragging(null);
@@ -3128,26 +3133,26 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
3128
3133
  }, S = () => {
3129
3134
  t.value?.setHover(null);
3130
3135
  }, C = (T) => {
3131
- const B = T.data;
3132
- B.dragging = !0;
3133
- const $ = e.assets.componentMap.get(B.model.name);
3136
+ const R = T.data;
3137
+ R.dragging = !0;
3138
+ const $ = e.assets.componentMap.get(R.model.name);
3134
3139
  $ && t.value?.setDragging($);
3135
3140
  }, D = async (T) => {
3136
- const B = T.data;
3137
- B.dragging = !1;
3138
- }, R = (T, B) => {
3139
- T && ((T.id === B.id || !ne(T) && B.isChild(T)) && t.value?.setSelected(null), t.value?.setHover(null));
3141
+ const R = T.data;
3142
+ R.dragging = !1;
3143
+ }, B = (T, R) => {
3144
+ T && ((T.id === R.id || !ne(T) && R.isChild(T)) && t.value?.setSelected(null), t.value?.setHover(null));
3140
3145
  }, z = (T) => {
3141
- const { name: B, modelValue: $ } = T, Q = l.value?.model;
3142
- switch (B) {
3146
+ const { name: R, modelValue: $ } = T, Q = l.value?.model;
3147
+ switch (R) {
3143
3148
  case "lock":
3144
- R(Q, $), $.lock();
3149
+ B(Q, $), $.lock();
3145
3150
  break;
3146
3151
  case "unlock":
3147
- R(Q, $), $.unlock();
3152
+ B(Q, $), $.unlock();
3148
3153
  break;
3149
3154
  case "invisible":
3150
- R(Q, $), $.setVisible(!1);
3155
+ B(Q, $), $.setVisible(!1);
3151
3156
  break;
3152
3157
  case "visible":
3153
3158
  $.setVisible(!0);
@@ -3157,11 +3162,11 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
3157
3162
  ge && t.value?.setSelected(ge);
3158
3163
  break;
3159
3164
  case "remove":
3160
- R(Q, $), a.value?.removeNode($);
3165
+ B(Q, $), a.value?.removeNode($);
3161
3166
  break;
3162
3167
  }
3163
3168
  };
3164
- return M(e.changed, p, { immediate: !0 }), (T, B) => (d(), w(n(H), {
3169
+ return M(e.changed, p, { immediate: !0 }), (T, R) => (d(), w(n(H), {
3165
3170
  class: "v-outline-widget",
3166
3171
  title: "大纲树"
3167
3172
  }, {
@@ -3216,7 +3221,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
3216
3221
  name: "HistoryWidget",
3217
3222
  __name: "index",
3218
3223
  setup(u) {
3219
- const { history: e, load: t, total: l } = Kn(), a = x(() => `(共 ${l.value} 条)`), s = (r) => {
3224
+ const { history: e, load: t, total: l } = Xn(), a = x(() => `(共 ${l.value} 条)`), s = (r) => {
3220
3225
  r.name === "remove" && e.value?.remove(r.modelValue.id);
3221
3226
  }, o = async () => {
3222
3227
  await Ue("确定要清空历史记录吗?") && e.value?.clear();
@@ -3314,7 +3319,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
3314
3319
  label: "文件",
3315
3320
  value: "data"
3316
3321
  }
3317
- ], t = Bt("currentModel", null);
3322
+ ], t = Rt("currentModel", null);
3318
3323
  return (l, a) => (d(), A("div", null, [
3319
3324
  g(n(q), { justify: "space-between" }, {
3320
3325
  default: y(() => [
@@ -3408,7 +3413,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
3408
3413
  }), Vr = /* @__PURE__ */ E({
3409
3414
  __name: "mock-template",
3410
3415
  setup(u) {
3411
- const e = Bt("currentModel", null), { project: t } = Le(), l = x(() => t.value?.config || {}), a = () => {
3416
+ const e = Rt("currentModel", null), { project: t } = Le(), l = x(() => t.value?.config || {}), a = () => {
3412
3417
  window.open("https://vtj.pro/help/mock.html");
3413
3418
  };
3414
3419
  return (s, o) => (d(), A("div", null, [
@@ -3430,7 +3435,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
3430
3435
  default: y(() => [
3431
3436
  o[1] || (o[1] = V("span", null, "模拟数据模板", -1)),
3432
3437
  g(n(fe), {
3433
- icon: n(Un),
3438
+ icon: n(qn),
3434
3439
  mode: "text",
3435
3440
  label: "帮助",
3436
3441
  onClick: a
@@ -3480,7 +3485,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
3480
3485
  value: "mock"
3481
3486
  }
3482
3487
  ];
3483
- vl("currentModel", o);
3488
+ gl("currentModel", o);
3484
3489
  const p = x(() => o.value?.method === "jsonp");
3485
3490
  M(
3486
3491
  () => e.model,
@@ -3502,7 +3507,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
3502
3507
  }, b = async (h) => e.project?.existApiName(
3503
3508
  o.value.name,
3504
3509
  e.model ? [o.value.id] : []
3505
- ) ? (ae(`API名称 [ ${o.value.name} ] 已存在`), !1) : o.value.headers && !ce(o.value.headers, window) || o.value.mockTemplate && !ce(o.value.mockTemplate, window) ? !1 : (e.project?.setApi(o.value), a.value?.close(), !0), i = () => {
3510
+ ) ? (ae(`API名称 [ ${o.value.name} ] 已存在`), !1) : o.value.headers && !de(o.value.headers, window) || o.value.mockTemplate && !de(o.value.mockTemplate, window) ? !1 : (e.project?.setApi(o.value), a.value?.close(), !0), i = () => {
3506
3511
  if (o.value.mockTemplate) {
3507
3512
  const h = Ze(
3508
3513
  o.value.mockTemplate,
@@ -3517,7 +3522,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
3517
3522
  c.value = JSON.stringify(C, null, 2), r.value = !0;
3518
3523
  }
3519
3524
  };
3520
- return (h, _) => (d(), w(n(Re), {
3525
+ return (h, _) => (d(), w(n(Be), {
3521
3526
  ref_key: "dialogRef",
3522
3527
  ref: a,
3523
3528
  title: t.value,
@@ -3754,7 +3759,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
3754
3759
  name: "DepsWidget",
3755
3760
  __name: "index",
3756
3761
  setup(u) {
3757
- const { dependencies: e, engine: t } = Gn(), l = k(!1), a = k(!1), s = k({}), o = x(() => a.value ? "查看依赖" : s.value ? "编辑依赖" : "新增依赖"), r = (i) => i.required || i.official ? [] : ["edit", "remove"], c = (i) => i.official && !i.required, f = async (i) => (i.urls = i.urls.split(`
3762
+ const { dependencies: e, engine: t } = Kn(), l = k(!1), a = k(!1), s = k({}), o = x(() => a.value ? "查看依赖" : s.value ? "编辑依赖" : "新增依赖"), r = (i) => i.required || i.official ? [] : ["edit", "remove"], c = (i) => i.official && !i.required, f = async (i) => (i.urls = i.urls.split(`
3758
3763
  `), i.enabled = !0, i.official = !1, t.project.value?.setDeps(i), !0), p = (i) => {
3759
3764
  t.project.value?.setDeps(i);
3760
3765
  }, m = () => {
@@ -3865,7 +3870,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
3865
3870
  }))), r = [
3866
3871
  {
3867
3872
  name: "move",
3868
- icon: Pa,
3873
+ icon: Ta,
3869
3874
  title: "移动",
3870
3875
  draggable: !0,
3871
3876
  onDragstart: () => {
@@ -3877,12 +3882,12 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
3877
3882
  },
3878
3883
  {
3879
3884
  name: "prev",
3880
- icon: Ta,
3885
+ icon: $a,
3881
3886
  title: "向前移动"
3882
3887
  },
3883
3888
  {
3884
3889
  name: "next",
3885
- icon: $a,
3890
+ icon: Ba,
3886
3891
  title: "向后移动"
3887
3892
  },
3888
3893
  {
@@ -3906,13 +3911,13 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
3906
3911
  g(n(fe), {
3907
3912
  mode: "icon",
3908
3913
  size: "small",
3909
- icon: n(qn),
3914
+ icon: n(Hn),
3910
3915
  label: a.value,
3911
3916
  menus: o.value,
3912
3917
  background: "none",
3913
3918
  onCommand: c
3914
3919
  }, null, 8, ["icon", "label", "menus"]),
3915
- g(n(Tl), {
3920
+ g(n($l), {
3916
3921
  disabled: !s.value,
3917
3922
  mode: "icon",
3918
3923
  size: "small",
@@ -3930,34 +3935,34 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
3930
3935
  inheritAttrs: !1,
3931
3936
  __name: "index",
3932
3937
  setup(u, { expose: e }) {
3933
- const t = k(), l = k(), { width: a, height: s } = tt(t), { dependencies: o, engine: r, apis: c, meta: f } = Gn(), { current: p, isEmpty: m } = de(), v = x(() => r.skeleton?.getWidget("Toolbar")?.widgetRef.mode ?? "pc"), b = x(() => r.project.value?.config || {}), { designer: i, hover: h, dropping: _, selected: S } = co(
3938
+ const t = k(), l = k(), { width: a, height: s } = tt(t), { dependencies: o, engine: r, apis: c, meta: f } = Kn(), { current: p, isEmpty: m } = pe(), v = x(() => r.skeleton?.getWidget("Toolbar")?.widgetRef.mode ?? "pc"), b = x(() => r.project.value?.config || {}), { designer: i, hover: h, dropping: _, selected: S } = co(
3934
3939
  l,
3935
3940
  o,
3936
3941
  c,
3937
3942
  f,
3938
3943
  b
3939
3944
  ), C = (z) => {
3940
- const T = z.type, B = z.model;
3945
+ const T = z.type, R = z.model;
3941
3946
  if (p.value)
3942
3947
  switch (T) {
3943
3948
  case "remove":
3944
- p.value.removeNode(B), i.value?.setSelected(null);
3949
+ p.value.removeNode(R), i.value?.setSelected(null);
3945
3950
  break;
3946
3951
  case "copy":
3947
- const $ = p.value.cloneNode(B);
3952
+ const $ = p.value.cloneNode(R);
3948
3953
  i.value?.setSelected($);
3949
3954
  break;
3950
3955
  case "prev":
3951
- p.value.movePrev(B), i.value?.setSelected(B);
3956
+ p.value.movePrev(R), i.value?.setSelected(R);
3952
3957
  break;
3953
3958
  case "next":
3954
- p.value.moveNext(B), i.value?.setSelected(B);
3959
+ p.value.moveNext(R), i.value?.setSelected(R);
3955
3960
  break;
3956
3961
  case "hover":
3957
- i.value?.setHover(B);
3962
+ i.value?.setHover(R);
3958
3963
  break;
3959
3964
  case "selected":
3960
- i.value?.setSelected(B);
3965
+ i.value?.setSelected(R);
3961
3966
  break;
3962
3967
  }
3963
3968
  }, D = (z) => {
@@ -3965,7 +3970,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
3965
3970
  const T = r.assets.componentMap.get(z.name);
3966
3971
  T && i.value.setDragging(T), i.value.setDraggingNode(z);
3967
3972
  }
3968
- }, R = () => {
3973
+ }, B = () => {
3969
3974
  i.value && (i.value.setDraggingNode(null), i.value.setDragging(null));
3970
3975
  };
3971
3976
  return e({
@@ -3976,7 +3981,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
3976
3981
  ref: t,
3977
3982
  class: "v-designer"
3978
3983
  }, [
3979
- g(n(el), {
3984
+ g(n(tl), {
3980
3985
  mode: v.value,
3981
3986
  width: n(a),
3982
3987
  height: n(s)
@@ -4010,7 +4015,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
4010
4015
  path: n(S).path,
4011
4016
  onAction: C,
4012
4017
  onDragstart: D,
4013
- onDragend: R
4018
+ onDragend: B
4014
4019
  }, null, 8, ["position", "model", "path"])
4015
4020
  ], 4)) : j("", !0),
4016
4021
  n(p) ? j("", !0) : (d(), w(n(ie), {
@@ -4132,7 +4137,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
4132
4137
  _: 3
4133
4138
  }, 8, ["title"]));
4134
4139
  }
4135
- }), Rr = /* @__PURE__ */ E({
4140
+ }), Br = /* @__PURE__ */ E({
4136
4141
  __name: "state",
4137
4142
  props: {
4138
4143
  context: {},
@@ -4150,7 +4155,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
4150
4155
  type: "JSExpression",
4151
4156
  value: f
4152
4157
  };
4153
- return ce(p, e.context, !0) ? (e.current?.setState(c, p), !0) : !1;
4158
+ return de(p, e.context, !0) ? (e.current?.setState(c, p), !0) : !1;
4154
4159
  };
4155
4160
  return (o, r) => (d(), w(at, {
4156
4161
  title: "状态数据",
@@ -4164,7 +4169,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
4164
4169
  submit: s
4165
4170
  }, null, 8, ["current", "context", "list"]));
4166
4171
  }
4167
- }), Br = /* @__PURE__ */ E({
4172
+ }), Rr = /* @__PURE__ */ E({
4168
4173
  __name: "computed",
4169
4174
  props: {
4170
4175
  context: {},
@@ -4182,7 +4187,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
4182
4187
  type: "JSFunction",
4183
4188
  value: f
4184
4189
  };
4185
- return ce(p, e.context, !0) ? (e.current?.setFunction("computed", c, p), !0) : !1;
4190
+ return de(p, e.context, !0) ? (e.current?.setFunction("computed", c, p), !0) : !1;
4186
4191
  };
4187
4192
  return (o, r) => (d(), w(at, {
4188
4193
  title: "计算属性",
@@ -4214,7 +4219,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
4214
4219
  type: "JSFunction",
4215
4220
  value: f
4216
4221
  };
4217
- return ce(p, e.context, !0) ? (e.current?.setFunction("methods", c, p), !0) : !1;
4222
+ return de(p, e.context, !0) ? (e.current?.setFunction("methods", c, p), !0) : !1;
4218
4223
  };
4219
4224
  return (o, r) => (d(), w(at, {
4220
4225
  title: "组件方法",
@@ -4235,7 +4240,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
4235
4240
  current: {}
4236
4241
  },
4237
4242
  setup(u) {
4238
- const e = u, t = x(() => na.map((r) => ({
4243
+ const e = u, t = x(() => la.map((r) => ({
4239
4244
  label: r,
4240
4245
  value: r
4241
4246
  }))), l = x(() => Object.entries(e.current?.lifeCycles || {}).map(([c, f]) => ({ name: c, value: Me(f) }))), a = () => ({
@@ -4249,7 +4254,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
4249
4254
  type: "JSFunction",
4250
4255
  value: p
4251
4256
  };
4252
- return ce(m, e.context, !0) ? (e.current?.setFunction("lifeCycles", f, m), !0) : !1;
4257
+ return de(m, e.context, !0) ? (e.current?.setFunction("lifeCycles", f, m), !0) : !1;
4253
4258
  };
4254
4259
  return (r, c) => (d(), w(at, {
4255
4260
  title: "生命周期",
@@ -4316,7 +4321,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
4316
4321
  type: "JSFunction",
4317
4322
  value: r.handler
4318
4323
  };
4319
- if (!ce(f, e.context, !0) || !ce(p, e.context, !0))
4324
+ if (!de(f, e.context, !0) || !de(p, e.context, !0))
4320
4325
  return !1;
4321
4326
  const m = {
4322
4327
  ...r,
@@ -4392,18 +4397,18 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
4392
4397
  }), Lr = /* @__PURE__ */ E({
4393
4398
  __name: "index",
4394
4399
  setup(u) {
4395
- const { current: e, context: t } = de();
4400
+ const { current: e, context: t } = pe();
4396
4401
  return (l, a) => (d(), w(n(q), {
4397
4402
  class: "v-scripts-widget",
4398
4403
  direction: "column",
4399
4404
  fit: ""
4400
4405
  }, {
4401
4406
  default: y(() => [
4402
- g(Rr, {
4407
+ g(Br, {
4403
4408
  current: n(e),
4404
4409
  context: n(t)
4405
4410
  }, null, 8, ["current", "context"]),
4406
- g(Br, {
4411
+ g(Rr, {
4407
4412
  current: n(e),
4408
4413
  context: n(t)
4409
4414
  }, null, 8, ["current", "context"]),
@@ -4478,7 +4483,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
4478
4483
  name: "PropertiesWidget",
4479
4484
  __name: "index",
4480
4485
  setup(u) {
4481
- const { current: e, context: t } = de(), { selected: l } = xe(), {
4486
+ const { current: e, context: t } = pe(), { selected: l } = xe(), {
4482
4487
  node: a,
4483
4488
  commonProps: s,
4484
4489
  change: o,
@@ -4674,7 +4679,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
4674
4679
  name: "EventsWidget",
4675
4680
  __name: "index",
4676
4681
  setup(u) {
4677
- const { current: e, context: t } = de(), { selected: l } = xe(), { mouseEventList: a, keyboardEventList: s, componentEventList: o } = bo(l), r = k({
4682
+ const { current: e, context: t } = pe(), { selected: l } = xe(), { mouseEventList: a, keyboardEventList: s, componentEventList: o } = bo(l), r = k({
4678
4683
  name: "",
4679
4684
  event: void 0
4680
4685
  }), c = k(!1), f = (i) => {
@@ -4684,7 +4689,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
4684
4689
  ...i,
4685
4690
  modifiers: i.modifiers.reduce((S, C) => (S[C] = !0, S), {})
4686
4691
  };
4687
- return ce(h.handler, t.value, !0) ? ((l.value?.model).setEvent(h), !0) : !1;
4692
+ return de(h.handler, t.value, !0) ? ((l.value?.model).setEvent(h), !0) : !1;
4688
4693
  }, m = async (i) => {
4689
4694
  const h = l.value?.model;
4690
4695
  i.name && (h.removeEvent(i.name), c.value = !1);
@@ -4788,11 +4793,11 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
4788
4793
  name: "CssWidget",
4789
4794
  __name: "index",
4790
4795
  setup(u) {
4791
- const { current: e } = de(), t = k(), l = x(() => e.value?.css || ""), a = (o) => {
4796
+ const { current: e } = pe(), t = k(), l = x(() => e.value?.css || ""), a = (o) => {
4792
4797
  e.value?.setCss(o);
4793
4798
  }, s = () => {
4794
4799
  const r = (t.value?.getEditor()).getValue();
4795
- a(r), me("保存成功");
4800
+ a(r), ce("保存成功");
4796
4801
  };
4797
4802
  return (o, r) => (d(), w(n(H), {
4798
4803
  class: "v-css-widget v-sub-panel",
@@ -4820,7 +4825,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
4820
4825
  name: "DirectivesWidget",
4821
4826
  __name: "index",
4822
4827
  setup(u) {
4823
- const { current: e, context: t } = de(), { selected: l } = xe(), {
4828
+ const { current: e, context: t } = pe(), { selected: l } = xe(), {
4824
4829
  vIf: a,
4825
4830
  vShow: s,
4826
4831
  vBind: o,
@@ -5007,12 +5012,12 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
5007
5012
  },
5008
5013
  e.item
5009
5014
  )
5010
- ), a = Object.keys(la).map((o) => ({
5015
+ ), a = Object.keys(aa).map((o) => ({
5011
5016
  label: o,
5012
5017
  value: o
5013
5018
  })), s = async (o) => {
5014
5019
  const r = o.default;
5015
- return r && !ce(r, e.context, !0) ? !1 : (e.current.setProp(o), !0);
5020
+ return r && !de(r, e.context, !0) ? !1 : (e.current.setProp(o), !0);
5016
5021
  };
5017
5022
  return (o, r) => (d(), w(n(Ae), {
5018
5023
  title: t.value,
@@ -5190,7 +5195,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
5190
5195
  )
5191
5196
  ), a = async (s) => {
5192
5197
  const o = s.default;
5193
- return o && !ce(o, e.context, !0) ? !1 : (e.current.setInject(s), !0);
5198
+ return o && !de(o, e.context, !0) ? !1 : (e.current.setInject(s), !0);
5194
5199
  };
5195
5200
  return (s, o) => (d(), w(n(Ae), {
5196
5201
  title: t.value,
@@ -5240,7 +5245,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
5240
5245
  name: "DefinedWidget",
5241
5246
  __name: "index",
5242
5247
  setup(u) {
5243
- const { current: e, context: t } = de(), l = x(() => (e.value?.props || []).map((N) => typeof N == "string" ? { name: N } : N)), a = x(() => (e.value?.emits || []).map((N) => typeof N == "string" ? { name: N, params: [] } : Object.assign({ params: [] }, N))), s = x(() => (e.value?.slots || []).map((N) => typeof N == "string" ? { name: N, params: [] } : Object.assign({ params: [] }, N))), o = x(() => e.value?.inject || []), r = k(!1), c = k(), f = k(!1), p = k(), m = k(!1), v = k(), b = k(!1), i = k(), h = () => {
5248
+ const { current: e, context: t } = pe(), l = x(() => (e.value?.props || []).map((N) => typeof N == "string" ? { name: N } : N)), a = x(() => (e.value?.emits || []).map((N) => typeof N == "string" ? { name: N, params: [] } : Object.assign({ params: [] }, N))), s = x(() => (e.value?.slots || []).map((N) => typeof N == "string" ? { name: N, params: [] } : Object.assign({ params: [] }, N))), o = x(() => e.value?.inject || []), r = k(!1), c = k(), f = k(!1), p = k(), m = k(!1), v = k(), b = k(!1), i = k(), h = () => {
5244
5249
  c.value = void 0, r.value = !0;
5245
5250
  }, _ = (N) => {
5246
5251
  const { name: J, modelValue: P } = N;
@@ -5251,14 +5256,14 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
5251
5256
  p.value = void 0, f.value = !0;
5252
5257
  }, D = (N) => {
5253
5258
  p.value = { ...N }, f.value = !0;
5254
- }, R = (N) => {
5259
+ }, B = (N) => {
5255
5260
  const { name: J, modelValue: P } = N;
5256
5261
  J === "edit" && D(P), J === "remove" && e.value?.removeEmit(P.name);
5257
5262
  }, z = () => {
5258
5263
  v.value = void 0, m.value = !0;
5259
5264
  }, T = (N) => {
5260
5265
  v.value = { ...N }, m.value = !0;
5261
- }, B = (N) => {
5266
+ }, R = (N) => {
5262
5267
  const { name: J, modelValue: P } = N;
5263
5268
  J === "edit" && T(P), J === "remove" && e.value?.removeSlot(P.name);
5264
5269
  }, $ = () => {
@@ -5323,7 +5328,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
5323
5328
  border: "",
5324
5329
  actions: ["remove"],
5325
5330
  onClick: (Y) => D(P),
5326
- onAction: R
5331
+ onAction: B
5327
5332
  }, null, 8, ["model-value", "title", "onClick"]))), 256)),
5328
5333
  a.value.length ? j("", !0) : (d(), w(n(ie), {
5329
5334
  key: 0,
@@ -5355,7 +5360,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
5355
5360
  border: "",
5356
5361
  actions: ["remove"],
5357
5362
  onClick: (Y) => T(P),
5358
- onAction: B
5363
+ onAction: R
5359
5364
  }, null, 8, ["model-value", "title", "onClick"]))), 256)),
5360
5365
  s.value.length ? j("", !0) : (d(), w(n(ie), {
5361
5366
  key: 0,
@@ -5479,12 +5484,12 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
5479
5484
  if (!e.item && e.current.dataSources[D])
5480
5485
  return ae(`名称【${D}】已经存在,请更换名称`), !1;
5481
5486
  if (S?.value) {
5482
- if (!ce(S, e.context, !0))
5487
+ if (!de(S, e.context, !0))
5483
5488
  return !1;
5484
5489
  } else
5485
5490
  _.transform = void 0;
5486
5491
  if (C?.value) {
5487
- if (!ce(C, e.context, !0))
5492
+ if (!de(C, e.context, !0))
5488
5493
  return !1;
5489
5494
  } else
5490
5495
  _.test = void 0;
@@ -5499,22 +5504,22 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
5499
5504
  ae("请先填写测试用例");
5500
5505
  return;
5501
5506
  }
5502
- if (!ce(o.value.test, e.context, !0))
5507
+ if (!de(o.value.test, e.context, !0))
5503
5508
  return;
5504
- const S = async (...R) => {
5509
+ const S = async (...B) => {
5505
5510
  const z = e.context?.$apis[o.value.ref];
5506
5511
  if (z)
5507
- return await z.apply(z, R);
5512
+ return await z.apply(z, B);
5508
5513
  Ie.warn(`API【${o.value.ref}】不存在`);
5509
5514
  }, C = Ze(o.value.test, {
5510
5515
  runApi: S
5511
- }), D = o.value.transform?.value ? Ze(o.value.transform, {}, !0) : (R) => R;
5516
+ }), D = o.value.transform?.value ? Ze(o.value.transform, {}, !0) : (B) => B;
5512
5517
  r.value = !0;
5513
5518
  try {
5514
- const R = await C();
5515
- c.value = JSON.stringify(await D(R), null, 2);
5516
- } catch (R) {
5517
- Ie.error(R);
5519
+ const B = await C();
5520
+ c.value = JSON.stringify(await D(B), null, 2);
5521
+ } catch (B) {
5522
+ Ie.error(B);
5518
5523
  }
5519
5524
  r.value = !1, f.value = !0;
5520
5525
  };
@@ -5640,7 +5645,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
5640
5645
  name: "DataSourcesWidget",
5641
5646
  __name: "index",
5642
5647
  setup(u) {
5643
- const { current: e, context: t } = de(), l = k(!1), a = k(), s = x(() => Object.values(e.value?.dataSources || {}).filter(
5648
+ const { current: e, context: t } = pe(), l = k(!1), a = k(), s = x(() => Object.values(e.value?.dataSources || {}).filter(
5644
5649
  (p) => ["meta", "api"].includes(p.type)
5645
5650
  )), o = (p) => ({
5646
5651
  api: "primary",
@@ -5722,69 +5727,69 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
5722
5727
  {
5723
5728
  label: "flex-弹性布局",
5724
5729
  value: "flex",
5725
- svg: Ba
5730
+ svg: Oa
5726
5731
  },
5727
5732
  {
5728
5733
  label: "inline-block-行内块级布局",
5729
5734
  value: "inline-block",
5730
- svg: Oa
5735
+ svg: za
5731
5736
  },
5732
5737
  {
5733
5738
  label: "inline-行内布局",
5734
5739
  value: "inline",
5735
- svg: za
5740
+ svg: Fa
5736
5741
  },
5737
5742
  {
5738
5743
  label: "invisible-不可见",
5739
5744
  value: "none",
5740
- svg: Fa
5745
+ svg: La
5741
5746
  }
5742
5747
  ], a = [
5743
5748
  {
5744
5749
  label: "row-水平",
5745
5750
  value: "row",
5746
- svg: La
5751
+ svg: Wa
5747
5752
  },
5748
5753
  {
5749
5754
  label: "row-reverse-水平",
5750
5755
  value: "row-reverse",
5751
- svg: Wa
5756
+ svg: Na
5752
5757
  },
5753
5758
  {
5754
5759
  label: "column-垂直",
5755
5760
  value: "column",
5756
- svg: Na
5761
+ svg: Ma
5757
5762
  },
5758
5763
  {
5759
5764
  label: "column-reverse-垂直",
5760
5765
  value: "column-reverse",
5761
- svg: Ma
5766
+ svg: Ja
5762
5767
  }
5763
5768
  ], s = [
5764
5769
  {
5765
5770
  label: "flex-start",
5766
5771
  value: "flex-start",
5767
- svg: Ja
5772
+ svg: Ua
5768
5773
  },
5769
5774
  {
5770
5775
  label: "flex-end",
5771
5776
  value: "flex-end",
5772
- svg: Ua
5777
+ svg: qa
5773
5778
  },
5774
5779
  {
5775
5780
  label: "center",
5776
5781
  value: "center",
5777
- svg: qa
5782
+ svg: Ha
5778
5783
  },
5779
5784
  {
5780
5785
  label: "space-between",
5781
5786
  value: "space-between",
5782
- svg: Ha
5787
+ svg: Ga
5783
5788
  },
5784
5789
  {
5785
5790
  label: "space-around",
5786
5791
  value: "space-around",
5787
- svg: Ga
5792
+ svg: Ka
5788
5793
  }
5789
5794
  ], o = [
5790
5795
  {
@@ -5803,27 +5808,27 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
5803
5808
  {
5804
5809
  label: "flex-start",
5805
5810
  value: "flex-start",
5806
- svg: Ka
5811
+ svg: Xa
5807
5812
  },
5808
5813
  {
5809
5814
  label: "flex-end",
5810
5815
  value: "flex-end",
5811
- svg: Xa
5816
+ svg: Qa
5812
5817
  },
5813
5818
  {
5814
5819
  label: "center",
5815
5820
  value: "center",
5816
- svg: Qa
5821
+ svg: Ya
5817
5822
  },
5818
5823
  {
5819
5824
  label: "baseline",
5820
5825
  value: "baseline",
5821
- svg: Ya
5826
+ svg: Za
5822
5827
  },
5823
5828
  {
5824
5829
  label: "stretch",
5825
5830
  value: "stretch",
5826
- svg: Za
5831
+ svg: es
5827
5832
  }
5828
5833
  ], c = (f, p) => {
5829
5834
  t.value = p === "flex", e.setStyle("display", p), t.value || (e.setStyle("flex-direction", void 0), e.setStyle("justify-content", void 0), e.setStyle("align-items", void 0), e.setStyle("flex-wrap", void 0));
@@ -5913,7 +5918,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
5913
5918
  }
5914
5919
  }, o = () => {
5915
5920
  const c = (t.value?.getEditor()).getValue();
5916
- s(c), me("保存成功");
5921
+ s(c), ce("保存成功");
5917
5922
  };
5918
5923
  return (r, c) => (d(), w(n(H), {
5919
5924
  class: "v-css-widget v-sub-panel",
@@ -5937,7 +5942,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
5937
5942
  _: 1
5938
5943
  }));
5939
5944
  }
5940
- }), ni = { class: "v-spacing-input" }, li = { class: "v-spacing-input__content" }, ai = ["onClick"], tl = /* @__PURE__ */ E({
5945
+ }), ni = { class: "v-spacing-input" }, li = { class: "v-spacing-input__content" }, ai = ["onClick"], nl = /* @__PURE__ */ E({
5941
5946
  __name: "spacing-input",
5942
5947
  props: {
5943
5948
  name: {},
@@ -6402,7 +6407,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
6402
6407
  }, " margin ", -1)
6403
6408
  ])))
6404
6409
  ]),
6405
- c.value ? (d(), w(tl, {
6410
+ c.value ? (d(), w(nl, {
6406
6411
  key: 0,
6407
6412
  name: f.value,
6408
6413
  modelValue: p.value,
@@ -6508,7 +6513,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
6508
6513
  _: 1
6509
6514
  }));
6510
6515
  }
6511
- }), Ti = { class: "v-style-widget__positioning" }, $i = { class: "spacing-wrap" }, Ri = ["width", "height"], Bi = ["d"], Oi = ["d"], zi = ["d"], Fi = ["d"], Li = { id: "margin-outer" }, Wi = ["width", "height"], Ni = ["width", "height"], Mi = { id: "margin-inner" }, Ji = ["width", "height"], Ui = ["width", "height"], ye = 36, _e = 24, qi = /* @__PURE__ */ E({
6516
+ }), Ti = { class: "v-style-widget__positioning" }, $i = { class: "spacing-wrap" }, Bi = ["width", "height"], Ri = ["d"], Oi = ["d"], zi = ["d"], Fi = ["d"], Li = { id: "margin-outer" }, Wi = ["width", "height"], Ni = ["width", "height"], Mi = { id: "margin-inner" }, Ji = ["width", "height"], Ui = ["width", "height"], ye = 36, _e = 24, qi = /* @__PURE__ */ E({
6512
6517
  __name: "positioning",
6513
6518
  props: {
6514
6519
  styleJson: {},
@@ -6522,15 +6527,15 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
6522
6527
  { label: "固定", value: "fixed" },
6523
6528
  { label: "粘性", value: "sticky" }
6524
6529
  ], f = [
6525
- { label: "左上", svg: es, value: "0% auto auto 0%" },
6526
- { label: "右上", svg: ts, value: "0% 0% auto auto" },
6527
- { label: "左下", svg: ns, value: "auto auto 0% 0%" },
6528
- { label: "右下", svg: ls, value: "auto 0% 0% auto" },
6529
- { label: "左", svg: as, value: "0% auto 0% 0%" },
6530
- { label: "右", svg: ss, value: "0% 0% 0% auto" },
6531
- { label: "上", svg: os, value: "auto 0% 0% 0%" },
6532
- { label: "下", svg: rs, value: "0% 0% auto 0%" },
6533
- { label: "填充", svg: is, value: "0% 0% 0% 0%" }
6530
+ { label: "左上", svg: ts, value: "0% auto auto 0%" },
6531
+ { label: "右上", svg: ns, value: "0% 0% auto auto" },
6532
+ { label: "左下", svg: ls, value: "auto auto 0% 0%" },
6533
+ { label: "右下", svg: as, value: "auto 0% 0% auto" },
6534
+ { label: "左", svg: ss, value: "0% auto 0% 0%" },
6535
+ { label: "右", svg: os, value: "0% 0% 0% auto" },
6536
+ { label: "上", svg: rs, value: "auto 0% 0% 0%" },
6537
+ { label: "下", svg: is, value: "0% 0% auto 0%" },
6538
+ { label: "填充", svg: us, value: "0% 0% 0% 0%" }
6534
6539
  ], p = x(() => (e.styleJson.inset || "").split(" ")), m = (b) => {
6535
6540
  o.value = b, r.value = e.styleJson[b], s.value = !0;
6536
6541
  }, v = () => {
@@ -6598,7 +6603,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
6598
6603
  "aria-label": "Padding top button",
6599
6604
  class: "tb-path-color",
6600
6605
  onClick: i[0] || (i[0] = (h) => m("top"))
6601
- }, null, 8, Bi)
6606
+ }, null, 8, Ri)
6602
6607
  ])
6603
6608
  ]),
6604
6609
  V("g", null, [
@@ -6703,7 +6708,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
6703
6708
  ry: "2",
6704
6709
  style: { "pointer-events": "none", "stroke-width": "2px" }
6705
6710
  }, null, 8, Ui)
6706
- ], 8, Ri)) : j("", !0),
6711
+ ], 8, Bi)) : j("", !0),
6707
6712
  V("div", {
6708
6713
  class: K(["spacing-edit padding-top", { "is-setting": e.styleJson.top }]),
6709
6714
  onClick: i[4] || (i[4] = (h) => m("top"))
@@ -6721,7 +6726,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
6721
6726
  onClick: i[7] || (i[7] = (h) => m("left"))
6722
6727
  }, L(e.styleJson.left || p.value[3] || "-"), 3)
6723
6728
  ], 512),
6724
- s.value ? (d(), w(tl, {
6729
+ s.value ? (d(), w(nl, {
6725
6730
  key: 0,
6726
6731
  auto: "",
6727
6732
  name: o.value,
@@ -6806,18 +6811,18 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
6806
6811
  ]
6807
6812
  }
6808
6813
  ], l = [
6809
- { label: "左", value: "left", svg: us },
6810
- { label: "中", value: "center", svg: cs },
6811
- { label: "右", value: "right", svg: ds },
6812
- { label: "两端", value: "justify", svg: ps }
6814
+ { label: "左", value: "left", svg: cs },
6815
+ { label: "中", value: "center", svg: ds },
6816
+ { label: "右", value: "right", svg: ps },
6817
+ { label: "两端", value: "justify", svg: ms }
6813
6818
  ], a = [
6814
- { label: "正常", value: "normal", svg: ms },
6815
- { label: "斜体", value: "italic", svg: vs }
6819
+ { label: "正常", value: "normal", svg: vs },
6820
+ { label: "斜体", value: "italic", svg: gs }
6816
6821
  ], s = [
6817
- { label: "无", value: "none", svg: Hn },
6818
- { label: "下划线", value: "underline", svg: gs },
6819
- { label: "删除线", value: "line-through", svg: fs },
6820
- { label: "上划线", value: "overline", svg: hs }
6822
+ { label: "无", value: "none", svg: Gn },
6823
+ { label: "下划线", value: "underline", svg: fs },
6824
+ { label: "删除线", value: "line-through", svg: hs },
6825
+ { label: "上划线", value: "overline", svg: bs }
6821
6826
  ];
6822
6827
  return (o, r) => (d(), w(n(H), {
6823
6828
  title: "文本",
@@ -6906,10 +6911,10 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
6906
6911
  const f = /^url\(([\w\W]+)\)$/;
6907
6912
  return c?.match(f)?.[1];
6908
6913
  }, a = [
6909
- { label: "重复", value: "repeat", svg: bs },
6910
- { label: "水平重复", value: "repeat-x", svg: ys },
6911
- { label: "垂直重复", value: "repeat-y", svg: _s },
6912
- { label: "不重复", value: "no-repeat", svg: ws }
6914
+ { label: "重复", value: "repeat", svg: ys },
6915
+ { label: "水平重复", value: "repeat-x", svg: _s },
6916
+ { label: "垂直重复", value: "repeat-y", svg: ws },
6917
+ { label: "不重复", value: "no-repeat", svg: ks }
6913
6918
  ], s = [
6914
6919
  { label: "固定", value: "fixed" },
6915
6920
  { label: "滚动", value: "scroll" }
@@ -7015,16 +7020,16 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
7015
7020
  const r = Object.keys(e.styleJson || {});
7016
7021
  return r.find((v) => v.startsWith("border-left")) ? "border-left" : r.find((v) => v.startsWith("border-top")) ? "border-top" : r.find((v) => v.startsWith("border-bottom")) ? "border-bottom" : r.find((v) => v.startsWith("border-right")) ? "border-right" : "border";
7017
7022
  }, l = k("border"), a = [
7018
- { label: "全边框", svg: ks, value: "border" },
7019
- { label: "左边框", svg: Ss, value: "border-left" },
7020
- { label: "上边框", svg: xs, value: "border-top" },
7021
- { label: "下边框", svg: Cs, value: "border-bottom" },
7022
- { label: "右边框", svg: Vs, value: "border-right" }
7023
+ { label: "全边框", svg: Ss, value: "border" },
7024
+ { label: "左边框", svg: xs, value: "border-left" },
7025
+ { label: "上边框", svg: Cs, value: "border-top" },
7026
+ { label: "下边框", svg: Vs, value: "border-bottom" },
7027
+ { label: "右边框", svg: As, value: "border-right" }
7023
7028
  ], s = [
7024
- { label: "无", value: "none", svg: Hn },
7025
- { label: "实线", value: "solid", svg: As },
7026
- { label: "虚线", value: "dashed", svg: js },
7027
- { label: "点线", value: "dotted", svg: Es }
7029
+ { label: "无", value: "none", svg: Gn },
7030
+ { label: "实线", value: "solid", svg: js },
7031
+ { label: "虚线", value: "dashed", svg: Es },
7032
+ { label: "点线", value: "dotted", svg: Ds }
7028
7033
  ], o = (r, c) => {
7029
7034
  l.value = c;
7030
7035
  };
@@ -7114,22 +7119,22 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
7114
7119
  {
7115
7120
  label: "自动",
7116
7121
  value: "auto",
7117
- svg: Ds
7122
+ svg: Is
7118
7123
  },
7119
7124
  {
7120
7125
  label: "Pointer",
7121
7126
  value: "pointer",
7122
- svg: Is
7127
+ svg: Ps
7123
7128
  },
7124
7129
  {
7125
7130
  label: "NotAllowed",
7126
7131
  value: "not-allowed",
7127
- svg: Ps
7132
+ svg: Ts
7128
7133
  },
7129
7134
  {
7130
7135
  label: "无",
7131
7136
  value: "none",
7132
- svg: Ts
7137
+ svg: $s
7133
7138
  }
7134
7139
  ], l = [
7135
7140
  {
@@ -7276,7 +7281,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
7276
7281
  path: { type: Function }
7277
7282
  },
7278
7283
  setup(u, { expose: e }) {
7279
- const t = u, l = k(), a = k(Symbol()), { current: s, engine: o } = de(), { width: r, height: c } = tt(l), f = x(() => s.value && t.path ? t.path(s.value) : null), p = x(() => o.skeleton?.getWidget("Toolbar")?.widgetRef.mode ?? "pc");
7284
+ const t = u, l = k(), a = k(Symbol()), { current: s, engine: o } = pe(), { width: r, height: c } = tt(l), f = x(() => s.value && t.path ? t.path(s.value) : null), p = x(() => o.skeleton?.getWidget("Toolbar")?.widgetRef.mode ?? "pc");
7280
7285
  return e({
7281
7286
  refresh: () => {
7282
7287
  a.value = Symbol();
@@ -7287,7 +7292,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
7287
7292
  class: "v-previewer",
7288
7293
  key: a.value
7289
7294
  }, [
7290
- g(n(el), {
7295
+ g(n(tl), {
7291
7296
  mode: p.value,
7292
7297
  width: n(r),
7293
7298
  height: n(c)
@@ -7314,13 +7319,13 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
7314
7319
  }, s = (o) => {
7315
7320
  t.value?.setHover(o);
7316
7321
  };
7317
- return (o, r) => n(e) ? (d(), w(n(hl), {
7322
+ return (o, r) => n(e) ? (d(), w(n(bl), {
7318
7323
  key: 0,
7319
7324
  class: "v-nodepath-widget",
7320
- "separator-icon": n($s)
7325
+ "separator-icon": n(Bs)
7321
7326
  }, {
7322
7327
  default: y(() => [
7323
- (d(!0), A(O, null, W(l.value, (c) => (d(), w(n(bl), {
7328
+ (d(!0), A(O, null, W(l.value, (c) => (d(), w(n(yl), {
7324
7329
  onClick: (f) => a(c),
7325
7330
  onMouseover: (f) => s(c)
7326
7331
  }, {
@@ -7337,7 +7342,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
7337
7342
  name: "SchemaWidget",
7338
7343
  __name: "index",
7339
7344
  setup(u) {
7340
- const { current: e } = de(), t = k(), l = x(
7345
+ const { current: e } = pe(), t = k(), l = x(
7341
7346
  () => JSON.stringify(e.value?.toDsl() || {}, null, 2)
7342
7347
  ), a = x(() => e.value ? e.value.name : ""), s = async () => {
7343
7348
  const r = (t.value?.getEditor()).getValue();
@@ -7346,7 +7351,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
7346
7351
  ))
7347
7352
  try {
7348
7353
  const f = JSON.parse(r);
7349
- e.value?.update(f), me("保存成功");
7354
+ e.value?.update(f), ce("保存成功");
7350
7355
  } catch (f) {
7351
7356
  ae(f?.message);
7352
7357
  }
@@ -7377,7 +7382,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
7377
7382
  name: "SchemaWidget",
7378
7383
  __name: "index",
7379
7384
  setup(u) {
7380
- const { current: e, engine: t } = de(), l = k(), a = k(""), s = x(() => e.value ? `$vtj/vue/${e.value.id}.vue` : ""), o = x(() => e.value ? e.value.name : "");
7385
+ const { current: e, engine: t } = pe(), l = k(), a = k(""), s = x(() => e.value ? `$vtj/vue/${e.value.id}.vue` : ""), o = x(() => e.value ? e.value.name : "");
7381
7386
  return M(
7382
7387
  e,
7383
7388
  async (r) => {
@@ -7434,7 +7439,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
7434
7439
  l.value = "//vtj.pro/help/index.html", r();
7435
7440
  };
7436
7441
  gt(() => {
7437
- s || (s = yl.service({ target: a.value?.$el }));
7442
+ s || (s = _l.service({ target: a.value?.$el }));
7438
7443
  }), _n(() => {
7439
7444
  f(), s = null;
7440
7445
  });
@@ -7461,13 +7466,13 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
7461
7466
  _: 1
7462
7467
  }, 512));
7463
7468
  }
7464
- }), nl = "data:image/png;base64,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", su = { class: "v-about-widget" }, ou = { class: "v-about-widget__logo" }, ru = ["src"], iu = { class: "v-about-widget__version" }, uu = /* @__PURE__ */ E({
7469
+ }), ll = "data:image/png;base64,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", su = { class: "v-about-widget" }, ou = { class: "v-about-widget__logo" }, ru = ["src"], iu = { class: "v-about-widget__version" }, uu = /* @__PURE__ */ E({
7465
7470
  name: "AboutWidget",
7466
7471
  __name: "index",
7467
7472
  setup(u) {
7468
7473
  return (e, t) => (d(), A("div", su, [
7469
7474
  V("div", ou, [
7470
- V("img", { src: n(nl) }, null, 8, ru)
7475
+ V("img", { src: n(ll) }, null, 8, ru)
7471
7476
  ]),
7472
7477
  t[0] || (t[0] = V("div", { class: "v-about-widget__name" }, "VTJ.PRO", -1)),
7473
7478
  V("div", iu, "版本:" + L(n(Ys)), 1)
@@ -7528,7 +7533,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
7528
7533
  name: "MarketWidget",
7529
7534
  __name: "index",
7530
7535
  setup(u, { expose: e }) {
7531
- const t = pe();
7536
+ const t = me();
7532
7537
  return e({
7533
7538
  openDesigner: () => {
7534
7539
  const a = t.skeleton?.getRegion("Workspace");
@@ -7608,18 +7613,18 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
7608
7613
  gutter: 5
7609
7614
  }, {
7610
7615
  default: y(() => [
7611
- (d(!0), A(O, null, W(C, (R) => (d(), w(n(mt), {
7612
- key: R.id,
7616
+ (d(!0), A(O, null, W(C, (B) => (d(), w(n(mt), {
7617
+ key: B.id,
7613
7618
  span: n(t)
7614
7619
  }, {
7615
7620
  default: y(() => [
7616
7621
  g(n(vt), {
7617
7622
  class: "v-templates-widgets__item",
7618
- name: R.name,
7619
- title: R.title
7623
+ name: B.name,
7624
+ title: B.title
7620
7625
  }, {
7621
7626
  default: y(() => [
7622
- R.vip ? (d(), w(n(jn), {
7627
+ B.vip ? (d(), w(n(jn), {
7623
7628
  key: 0,
7624
7629
  class: "is-vip",
7625
7630
  type: "danger",
@@ -7633,12 +7638,12 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
7633
7638
  _: 1
7634
7639
  })) : j("", !0),
7635
7640
  g(n(xn), {
7636
- src: R.cover,
7641
+ src: B.cover,
7637
7642
  fit: "contain"
7638
7643
  }, null, 8, ["src"]),
7639
7644
  V("div", vu, [
7640
- V("span", gu, L(R.name), 1),
7641
- V("span", fu, L(R.title), 1)
7645
+ V("span", gu, L(B.name), 1),
7646
+ V("span", fu, L(B.title), 1)
7642
7647
  ]),
7643
7648
  V("div", hu, [
7644
7649
  g(n(re), {
@@ -7646,7 +7651,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
7646
7651
  icon: n(Rs),
7647
7652
  type: "primary",
7648
7653
  round: "",
7649
- onClick: (z) => h(R)
7654
+ onClick: (z) => h(B)
7650
7655
  }, {
7651
7656
  default: y(() => S[2] || (S[2] = [
7652
7657
  G(" 使用 ")
@@ -7675,7 +7680,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
7675
7680
  ]),
7676
7681
  _: 1
7677
7682
  }, 8, ["subtitle", "onRefresh"])), [
7678
- [n(_l), n(f)]
7683
+ [n(wl), n(f)]
7679
7684
  ]);
7680
7685
  }
7681
7686
  }), X = {
@@ -7736,7 +7741,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
7736
7741
  component: X.Pages,
7737
7742
  type: "app",
7738
7743
  openType: "panel",
7739
- icon: Bs,
7744
+ icon: Os,
7740
7745
  label: "页面管理"
7741
7746
  },
7742
7747
  {
@@ -7745,7 +7750,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
7745
7750
  component: X.Blocks,
7746
7751
  type: "app",
7747
7752
  openType: "panel",
7748
- icon: Os,
7753
+ icon: Un,
7749
7754
  label: "区块管理"
7750
7755
  },
7751
7756
  {
@@ -7961,7 +7966,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
7961
7966
  version: "latest",
7962
7967
  library: "Vue",
7963
7968
  urls: ["@vtj/materials/deps/vue/vue.global.prod.js"],
7964
- assetsLibrary: Nl,
7969
+ assetsLibrary: Ml,
7965
7970
  required: !0,
7966
7971
  official: !0,
7967
7972
  enabled: !0
@@ -7971,7 +7976,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
7971
7976
  version: "latest",
7972
7977
  library: "VueRouter",
7973
7978
  urls: ["@vtj/materials/deps/vue-router/vue-router.global.prod.js"],
7974
- assetsLibrary: Ml,
7979
+ assetsLibrary: Jl,
7975
7980
  required: !0,
7976
7981
  official: !0,
7977
7982
  enabled: !0
@@ -8165,7 +8170,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
8165
8170
  ],
8166
8171
  snippet: {
8167
8172
  props: {
8168
- src: nl,
8173
+ src: ll,
8169
8174
  width: "200",
8170
8175
  height: "200"
8171
8176
  }
@@ -8616,7 +8621,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
8616
8621
  const t = (c = "") => ({
8617
8622
  type: "JSExpression",
8618
8623
  value: et(c) ? c.value : c
8619
- }), l = u, a = e, s = (c) => ce(c, l.context, !0), o = k(t(l.modelValue).value);
8624
+ }), l = u, a = e, s = (c) => de(c, l.context, !0), o = k(t(l.modelValue).value);
8620
8625
  M(
8621
8626
  () => l.modelValue,
8622
8627
  (c) => {
@@ -8656,9 +8661,9 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
8656
8661
  },
8657
8662
  setup(u) {
8658
8663
  const e = u;
8659
- return (t, l) => (d(), w(n(wl), ue({ clearable: "" }, t.$attrs), {
8664
+ return (t, l) => (d(), w(n(kl), ue({ clearable: "" }, t.$attrs), {
8660
8665
  default: y(() => [
8661
- (d(!0), A(O, null, W(e.options, (a) => (d(), w(n(kl), ue({
8666
+ (d(!0), A(O, null, W(e.options, (a) => (d(), w(n(Sl), ue({
8662
8667
  key: a.label,
8663
8668
  ref_for: !0
8664
8669
  }, a), null, 16))), 128))
@@ -8677,7 +8682,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
8677
8682
  const t = u, l = e, a = x(() => et(t.modelValue) ? void 0 : Number(t.modelValue || 0)), s = (o) => {
8678
8683
  l("change", o);
8679
8684
  };
8680
- return (o, r) => (d(), w(n(Sl), ue({
8685
+ return (o, r) => (d(), w(n(xl), ue({
8681
8686
  class: "v-number-setter",
8682
8687
  "controls-position": "right",
8683
8688
  "model-value": a.value
@@ -8687,7 +8692,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
8687
8692
  name: "ColorSetter",
8688
8693
  __name: "color",
8689
8694
  setup(u) {
8690
- return (e, t) => (d(), w(n(xl), bn(yn(e.$attrs)), null, 16));
8695
+ return (e, t) => (d(), w(n(Cl), bn(yn(e.$attrs)), null, 16));
8691
8696
  }
8692
8697
  }), Tu = /* @__PURE__ */ E({
8693
8698
  name: "JsonSetter",
@@ -8706,7 +8711,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
8706
8711
  const i = JSON.parse(v);
8707
8712
  if (t.type === "Array" && !Array.isArray(i))
8708
8713
  throw new Error(`"${v}" is not a Array`);
8709
- if (t.type === "Object" && !Bl(i))
8714
+ if (t.type === "Object" && !Ol(i))
8710
8715
  throw new Error(`"${v}" is not a PlainObject`);
8711
8716
  if (typeof i != "object")
8712
8717
  throw new Error(`"${v}" is not a ${t.type}`);
@@ -8737,7 +8742,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
8737
8742
  "model-value": t.type,
8738
8743
  "suffix-icon": n(lt)
8739
8744
  }, v.$attrs), null, 16, ["model-value", "suffix-icon"]),
8740
- o.value ? (d(), w(n(Re), {
8745
+ o.value ? (d(), w(n(Be), {
8741
8746
  key: 0,
8742
8747
  modelValue: o.value,
8743
8748
  "onUpdate:modelValue": b[0] || (b[0] = (i) => o.value = i),
@@ -8794,7 +8799,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
8794
8799
  type: "JSFunction",
8795
8800
  value: v
8796
8801
  };
8797
- ce(b, {}) && (a.value = v, r("change", b), s.value = !1);
8802
+ de(b, {}) && (a.value = v, r("change", b), s.value = !1);
8798
8803
  }
8799
8804
  }, f = () => {
8800
8805
  a.value = "", r("change", void 0), s.value = !1;
@@ -8810,7 +8815,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
8810
8815
  "model-value": "JSFunction",
8811
8816
  "suffix-icon": n(lt)
8812
8817
  }, m.$attrs), null, 16, ["suffix-icon"]),
8813
- s.value ? (d(), w(n(Re), {
8818
+ s.value ? (d(), w(n(Be), {
8814
8819
  key: 0,
8815
8820
  modelValue: s.value,
8816
8821
  "onUpdate:modelValue": v[0] || (v[0] = (b) => s.value = b),
@@ -8848,7 +8853,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
8848
8853
  }, 8, ["modelValue"])) : j("", !0)
8849
8854
  ], 2));
8850
8855
  }
8851
- }), Ru = /* @__PURE__ */ E({
8856
+ }), Bu = /* @__PURE__ */ E({
8852
8857
  name: "RadioSetter",
8853
8858
  __name: "radio",
8854
8859
  props: {
@@ -8880,7 +8885,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
8880
8885
  _: 1
8881
8886
  }, 16));
8882
8887
  }
8883
- }), Bu = ["label", "title", "onClick"], Ou = /* @__PURE__ */ E({
8888
+ }), Ru = ["label", "title", "onClick"], Ou = /* @__PURE__ */ E({
8884
8889
  name: "TagSetter",
8885
8890
  __name: "tag",
8886
8891
  props: {
@@ -8911,10 +8916,10 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
8911
8916
  }, null, 8, ["src"])) : (d(), A(O, { key: 1 }, [
8912
8917
  G(L(r.label), 1)
8913
8918
  ], 64))
8914
- ], 10, Bu))), 256))
8919
+ ], 10, Ru))), 256))
8915
8920
  ], 16));
8916
8921
  }
8917
- }), ll = /* @__PURE__ */ E({
8922
+ }), al = /* @__PURE__ */ E({
8918
8923
  name: "SizeSetter",
8919
8924
  __name: "size",
8920
8925
  props: {
@@ -8951,7 +8956,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
8951
8956
  },
8952
8957
  emits: ["change", "update:modelValue"],
8953
8958
  setup(u, { emit: e }) {
8954
- const t = u, l = e, a = k([]), s = x(() => a.value.length < t.limit), o = (c) => c.type.includes("image") ? (Ol(c).then((f) => {
8959
+ const t = u, l = e, a = k([]), s = x(() => a.value.length < t.limit), o = (c) => c.type.includes("image") ? (zl(c).then((f) => {
8955
8960
  a.value = [{ name: c.name, url: f }];
8956
8961
  }), !1) : (De.error("只能上传图片"), !1), r = () => {
8957
8962
  a.value = [];
@@ -8967,7 +8972,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
8967
8972
  ), M(a, () => {
8968
8973
  const c = a.value[0]?.url;
8969
8974
  l("change", c), l("update:modelValue", c);
8970
- }), (c, f) => (d(), w(n(Cl), ue({
8975
+ }), (c, f) => (d(), w(n(Vl), ue({
8971
8976
  class: ["v-image-setter", { "v-image-setter--addable": s.value }],
8972
8977
  "list-type": "picture-card",
8973
8978
  limit: 1,
@@ -9007,7 +9012,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
9007
9012
  l("change", a.value.join(" ").trim());
9008
9013
  };
9009
9014
  return (o, r) => (d(), A("div", Lu, [
9010
- (d(!0), A(O, null, W(t.sections, (c) => (d(), w(ll, {
9015
+ (d(!0), A(O, null, W(t.sections, (c) => (d(), w(al, {
9011
9016
  name: c - 1,
9012
9017
  modelValue: a.value[c - 1],
9013
9018
  "onUpdate:modelValue": (f) => a.value[c - 1] = f,
@@ -9038,7 +9043,7 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
9038
9043
  a.value = void 0, l("change", void 0), l("update:modelValue", void 0);
9039
9044
  };
9040
9045
  return (o, r) => (d(), A("div", Nu, [
9041
- g(n(Vl), ue({ size: "small" }, o.$attrs, {
9046
+ g(n(Al), ue({ size: "small" }, o.$attrs, {
9042
9047
  modelValue: a.value,
9043
9048
  "onUpdate:modelValue": r[0] || (r[0] = (c) => a.value = c)
9044
9049
  }), null, 16, ["modelValue"]),
@@ -9057,12 +9062,12 @@ const Qo = { class: "v-icon-setter" }, Yo = { class: "v-icon-setter__content" },
9057
9062
  SelectSetter: Du,
9058
9063
  NumberSetter: Iu,
9059
9064
  ColorSetter: Pu,
9060
- IconSetter: Zn,
9065
+ IconSetter: el,
9061
9066
  JsonSetter: Tu,
9062
9067
  FunctionSetter: $u,
9063
- RadioSetter: Ru,
9068
+ RadioSetter: Bu,
9064
9069
  TagSetter: Ou,
9065
- SizeSetter: ll,
9070
+ SizeSetter: al,
9066
9071
  ImageSetter: Fu,
9067
9072
  SectionSetter: Wu,
9068
9073
  SliderSetter: Mu,
@@ -9257,7 +9262,7 @@ class qu {
9257
9262
  ).map((a, s) => (a.order = a.order ?? s, a)).sort((a, s) => (a.order ?? 0) - (s.order ?? 0)) : l;
9258
9263
  }
9259
9264
  }
9260
- const al = new qu();
9265
+ const sl = new qu();
9261
9266
  class Hu {
9262
9267
  constructor(e = _u) {
9263
9268
  this.deps = e;
@@ -9371,7 +9376,7 @@ class Xu {
9371
9376
  F(this, "proxyUpdateState");
9372
9377
  F(this, "isInited", !1);
9373
9378
  F(this, "proxyLoad");
9374
- this.proxyUpdateState = this.updateState.bind(this), this.proxyLoad = zl(this.load, 500);
9379
+ this.proxyUpdateState = this.updateState.bind(this), this.proxyLoad = Fl(this.load, 500);
9375
9380
  }
9376
9381
  createScript(e, t, l) {
9377
9382
  const a = e.document.createElement("script");
@@ -9784,7 +9789,7 @@ class Zu {
9784
9789
  f.id = "app", t?.type === "page" && f.classList.add("is-page"), t?.pure && f.classList.add("is-pure"), a.appendChild(f), this.dsl = o.reactive(e.toDsl());
9785
9790
  const { renderer: m, context: v } = this.provider.createDslRenderer(this.dsl, {
9786
9791
  window: l,
9787
- mode: Bn.Design,
9792
+ mode: Rn.Design,
9788
9793
  Vue: o,
9789
9794
  components: r,
9790
9795
  apis: c,
@@ -9835,7 +9840,7 @@ class Zu {
9835
9840
  this.dispose(), this.render(e, t), this.designer?.selected.value && this.designer.setSelected(e);
9836
9841
  }
9837
9842
  }
9838
- class ec extends Rn {
9843
+ class ec extends Bn {
9839
9844
  constructor(t) {
9840
9845
  super();
9841
9846
  F(this, "contentWindow", null);
@@ -9881,7 +9886,7 @@ class ec extends Rn {
9881
9886
  materialExports: p,
9882
9887
  materialMapLibrary: m,
9883
9888
  libraryLocaleMap: v
9884
- } = aa(l, this.materialPath, !0);
9889
+ } = sa(l, this.materialPath, !0);
9885
9890
  s.open(), s.write(`
9886
9891
  <!DOCTYPE html>
9887
9892
  <html lang="zh-CN">
@@ -9911,7 +9916,7 @@ class ec extends Rn {
9911
9916
  }
9912
9917
 
9913
9918
  </style>
9914
- ${sa(r)}
9919
+ ${oa(r)}
9915
9920
  </head>
9916
9921
  <body>
9917
9922
  </body>
@@ -9944,32 +9949,32 @@ class ec extends Rn {
9944
9949
  this.devtools.init(o, this.engine), this.renderer = new Zu(i, c, p, this.designer.value), f.value && (this.renderer.render(f.value, m.value?.currentFile), this.rendered.value = Symbol()), this.triggerReady();
9945
9950
  }
9946
9951
  createEnv(t = [], l = {}, a = [], s = {}) {
9947
- const o = this.contentWindow, { engine: r } = this, { project: c, assets: f, provider: p } = r, m = t.reduce((D, R) => (D[R] = o[R], D), {}), v = {};
9948
- Object.entries(s).forEach(([D, R]) => {
9949
- v[D] = o[R];
9952
+ const o = this.contentWindow, { engine: r } = this, { project: c, assets: f, provider: p } = r, m = t.reduce((D, B) => (D[B] = o[B], D), {}), v = {};
9953
+ Object.entries(s).forEach(([D, B]) => {
9954
+ v[D] = o[B];
9950
9955
  });
9951
9956
  const b = {}, { groups: i, componentMap: h } = f;
9952
9957
  for (const D of i.value) {
9953
- const R = D.names || [];
9958
+ const B = D.names || [];
9954
9959
  if (D.name === Pt)
9955
- R.forEach((z) => {
9956
- const T = h.get(z), B = T?.package || "", $ = Jl[B], Q = m[$];
9960
+ B.forEach((z) => {
9961
+ const T = h.get(z), R = T?.package || "", $ = Ul[R], Q = m[$];
9957
9962
  Q && T && (b[z] = sn(T, Q));
9958
9963
  });
9959
9964
  else {
9960
9965
  const z = m[l[D.library || ""]];
9961
- z && R.forEach((T) => {
9962
- const B = h.get(T);
9963
- B ? b[T] = sn(B, z) : b[T] = z[T];
9966
+ z && B.forEach((T) => {
9967
+ const R = h.get(T);
9968
+ R ? b[T] = sn(R, z) : b[T] = z[T];
9964
9969
  });
9965
9970
  }
9966
9971
  }
9967
- const { adapter: _, globals: S } = p, C = oa(
9972
+ const { adapter: _, globals: S } = p, C = ra(
9968
9973
  c.value?.apis,
9969
9974
  c.value?.meta,
9970
9975
  _
9971
9976
  );
9972
- return ra(), c.value?.config?.mock && ia(c.value?.apis), {
9977
+ return ia(), c.value?.config?.mock && ua(c.value?.apis), {
9973
9978
  window: o,
9974
9979
  Vue: o.Vue,
9975
9980
  VueRouter: o.VueRouter,
@@ -10045,7 +10050,7 @@ class tc {
10045
10050
  t.sort((l, a) => l.order - a.order);
10046
10051
  for (let l of t)
10047
10052
  l.components && (this.components = this.components.concat(l.components));
10048
- this.groups.value = this.parseGroups(t), this.componentMap = Fl(this.components, "name");
10053
+ this.groups.value = this.parseGroups(t), this.componentMap = Ll(this.components, "name");
10049
10054
  }
10050
10055
  async getBlockMaterial(e, t) {
10051
10056
  if (!e || typeof e == "string") return null;
@@ -10086,8 +10091,8 @@ class tc {
10086
10091
  this.caches = {};
10087
10092
  }
10088
10093
  }
10089
- const sl = Symbol("VtjEngine"), jt = "SAVE_BLOCK_FILE_FINISH";
10090
- class Nc extends Rn {
10094
+ const ol = Symbol("VtjEngine"), jt = "SAVE_BLOCK_FILE_FINISH";
10095
+ class Nc extends Bn {
10091
10096
  constructor(t) {
10092
10097
  super();
10093
10098
  F(this, "app");
@@ -10120,8 +10125,8 @@ class Nc extends Rn {
10120
10125
  adapter: p,
10121
10126
  install: m
10122
10127
  } = this.options;
10123
- this.container = l, this.service = a, this.adapter = p, this.provider = new ua({
10124
- mode: Bn.Design,
10128
+ this.container = l, this.service = a, this.adapter = p, this.provider = new ca({
10129
+ mode: Rn.Design,
10125
10130
  globals: o,
10126
10131
  project: s,
10127
10132
  service: a,
@@ -10137,18 +10142,18 @@ class Nc extends Rn {
10137
10142
  }
10138
10143
  async init(t) {
10139
10144
  const l = await this.service.init(t).catch((a) => (Ie.warn("VTJEngine service init fail.", a), null));
10140
- l && (l.dependencies = Gu.merge(l.dependencies || []), this.project.value = new Ul(l), this.saveMaterials(), this.triggerReady());
10145
+ l && (l.dependencies = Gu.merge(l.dependencies || []), this.project.value = new ql(l), this.saveMaterials(), this.triggerReady());
10141
10146
  }
10142
10147
  render() {
10143
10148
  const t = n(this.container);
10144
10149
  if (t) {
10145
10150
  const l = wn(nc);
10146
- this.options.install && l.use(this.options.install, this), l.provide(sl, gl(this)), l.mount(t), this.app = l;
10151
+ this.options.install && l.use(this.options.install, this), l.provide(ol, fl(this)), l.mount(t), this.app = l;
10147
10152
  } else
10148
10153
  Ie.warn("VTJEngine constructor param [ container ] is undefined");
10149
10154
  }
10150
10155
  bindEvents() {
10151
- oe.on(ql, (t) => this.saveProject(t)), oe.on(Hl, (t) => this.saveBlockFile(t)), oe.on(Gl, (t) => this.saveBlockFile(t)), oe.on(Kl, () => this.saveMaterials()), oe.on(Tt, (t) => this.activeFile(t)), oe.on(Xl, () => this.publish()), oe.on(Ql, () => this.publishCurrent()), oe.on($t, (t) => this.changeFile(t)), oe.on(Ye, () => this.changeCurrentFile()), oe.on(Yl, (t) => this.saveHistory(t)), oe.on(Zl, (t) => this.loadHistory(t));
10156
+ oe.on(Hl, (t) => this.saveProject(t)), oe.on(Gl, (t) => this.saveBlockFile(t)), oe.on(Kl, (t) => this.saveBlockFile(t)), oe.on(Xl, () => this.saveMaterials()), oe.on(Tt, (t) => this.activeFile(t)), oe.on(Ql, () => this.publish()), oe.on(Yl, () => this.publishCurrent()), oe.on($t, (t) => this.changeFile(t)), oe.on(Ye, () => this.changeCurrentFile()), oe.on(Zl, (t) => this.saveHistory(t)), oe.on(ea, (t) => this.loadHistory(t));
10152
10157
  }
10153
10158
  async activeFile(t) {
10154
10159
  await Ce();
@@ -10185,7 +10190,7 @@ class Nc extends Rn {
10185
10190
  const l = t.type, a = t.model;
10186
10191
  if (l === "create") {
10187
10192
  const s = t.data;
10188
- a.isPageFile(s) && s.raw ? (await this.service.createRawPage(s), me(`源码文件已经生成:/.vtj/vue/${s.id}.vue`, "success")) : s.dsl && await this.service.saveFile(s.dsl);
10193
+ a.isPageFile(s) && s.raw ? (await this.service.createRawPage(s), ce(`源码文件已经生成:/.vtj/vue/${s.id}.vue`, "success")) : s.dsl && await this.service.saveFile(s.dsl);
10189
10194
  }
10190
10195
  if (l === "update") {
10191
10196
  const s = t.data;
@@ -10226,7 +10231,7 @@ class Nc extends Rn {
10226
10231
  async initHistory(t) {
10227
10232
  if (t) {
10228
10233
  const l = await this.service.getHistory(t.id).catch(() => null);
10229
- this.history.value = new ea(
10234
+ this.history.value = new ta(
10230
10235
  Object.assign(l || {}, { id: t.id })
10231
10236
  );
10232
10237
  } else
@@ -10255,7 +10260,7 @@ class Nc extends Rn {
10255
10260
  ...t.toDsl(),
10256
10261
  pages: t.getPages()
10257
10262
  };
10258
- await this.service.publish(l) && me("整站发布成功", "success");
10263
+ await this.service.publish(l) && ce("整站发布成功", "success");
10259
10264
  }
10260
10265
  }
10261
10266
  async publishCurrent() {
@@ -10265,7 +10270,7 @@ class Nc extends Rn {
10265
10270
  ...t.toDsl(),
10266
10271
  pages: t.getPages()
10267
10272
  };
10268
- await this.service.publishFile(a, l) && me("发布成功", "success");
10273
+ await this.service.publishFile(a, l) && ce("发布成功", "success");
10269
10274
  }
10270
10275
  }
10271
10276
  dispose() {
@@ -10284,8 +10289,8 @@ class Nc extends Rn {
10284
10289
  }));
10285
10290
  }
10286
10291
  }
10287
- function pe() {
10288
- const u = Bt(sl, null);
10292
+ function me() {
10293
+ const u = Rt(ol, null);
10289
10294
  return u || Ie.error("VTJEngine is not exist"), u;
10290
10295
  }
10291
10296
  const Te = E({
@@ -10334,7 +10339,7 @@ const Te = E({
10334
10339
  }), nc = E({
10335
10340
  name: "SkeletonWrapper",
10336
10341
  setup() {
10337
- const u = k(), e = pe(), t = k({});
10342
+ const u = k(), e = me(), t = k({});
10338
10343
  return {
10339
10344
  skeletonRef: u,
10340
10345
  engine: e,
@@ -10380,7 +10385,7 @@ const Te = E({
10380
10385
  */
10381
10386
  getWidgets(u) {
10382
10387
  const e = this.getRegion(u);
10383
- return e ? Ll(
10388
+ return e ? Wl(
10384
10389
  e.regionRef?.widgetsRef || []
10385
10390
  ) : [];
10386
10391
  },
@@ -10390,7 +10395,7 @@ const Te = E({
10390
10395
  * @returns
10391
10396
  */
10392
10397
  getWidget(u) {
10393
- const e = al.get(u);
10398
+ const e = sl.get(u);
10394
10399
  if (!e) {
10395
10400
  Ie.warn(`widget [ ${u} ] is not exsit`);
10396
10401
  return;
@@ -10475,7 +10480,7 @@ const Te = E({
10475
10480
  defaultSetter() {
10476
10481
  const { value: u, computedSetters: e } = this;
10477
10482
  let t = typeof u;
10478
- t === "Object" && (Array.isArray(u) ? t = "Array" : et(u) ? t = "Object" : ca(u) && (t = "Function"));
10483
+ t === "Object" && (Array.isArray(u) ? t = "Array" : et(u) ? t = "Object" : da(u) && (t = "Function"));
10479
10484
  const l = Ke.getByType(t) || [];
10480
10485
  return l.length ? (e.find((a) => l.includes(a.name)) || e[0])?.name : e[0]?.name;
10481
10486
  }
@@ -10569,11 +10574,11 @@ const Te = E({
10569
10574
  rightWidth: s,
10570
10575
  preview: h,
10571
10576
  isPreview: l
10572
- }), (C, D) => (d(), w(n(Al), { locale: n(Il) }, {
10577
+ }), (C, D) => (d(), w(n(jl), { locale: n(Pl) }, {
10573
10578
  default: y(() => [
10574
10579
  g(n(Zt), { class: "v-skeleton" }, {
10575
10580
  default: y(() => [
10576
- g(n(jl), {
10581
+ g(n(El), {
10577
10582
  class: "v-skeleton__header",
10578
10583
  height: C.headerHeight
10579
10584
  }, {
@@ -10617,7 +10622,7 @@ const Te = E({
10617
10622
  }, 8, ["width", "class"])), [
10618
10623
  [n(tn), o]
10619
10624
  ]),
10620
- g(n(El), { class: "v-skeleton__main" }, {
10625
+ g(n(Dl), { class: "v-skeleton__main" }, {
10621
10626
  default: y(() => [
10622
10627
  l.value ? (d(), w(n(Te), {
10623
10628
  key: 0,
@@ -10656,7 +10661,7 @@ const Te = E({
10656
10661
  ]),
10657
10662
  _: 1
10658
10663
  }),
10659
- l.value ? j("", !0) : (d(), w(n(Dl), {
10664
+ l.value ? j("", !0) : (d(), w(n(Il), {
10660
10665
  key: 0,
10661
10666
  class: "v-skeleton__footer",
10662
10667
  height: C.footerHeight
@@ -10725,7 +10730,7 @@ const Te = E({
10725
10730
  a.value = !0, s.value = et(r.value) ? r.value.value : "";
10726
10731
  }, i = () => {
10727
10732
  a.value = !1, s.value = "";
10728
- }, h = async (S) => ce(S, t.context, !0) ? (f[o.value.name] = r.value, r.value = S, l("change", S), !0) : !1, _ = async () => {
10733
+ }, h = async (S) => de(S, t.context, !0) ? (f[o.value.name] = r.value, r.value = S, l("change", S), !0) : !1, _ = async () => {
10729
10734
  await Ue("确定要解除绑定吗?") && (i(), r.value = void 0, l("change", void 0));
10730
10735
  };
10731
10736
  return (S, C) => (d(), w(n(In), {
@@ -10855,7 +10860,7 @@ const Te = E({
10855
10860
  region: {}
10856
10861
  },
10857
10862
  setup(u, { expose: e }) {
10858
- const t = u, { widgets: l, widgetsRef: a } = Be(t.region);
10863
+ const t = u, { widgets: l, widgetsRef: a } = Re(t.region);
10859
10864
  return e({
10860
10865
  widgets: l,
10861
10866
  widgetsRef: a
@@ -10877,7 +10882,7 @@ const Te = E({
10877
10882
  preview: { type: Boolean }
10878
10883
  },
10879
10884
  setup(u, { expose: e }) {
10880
- const t = u, { widgets: l, widgetsRef: a } = Be(t.region);
10885
+ const t = u, { widgets: l, widgetsRef: a } = Re(t.region);
10881
10886
  return e({
10882
10887
  widgets: l,
10883
10888
  widgetsRef: a
@@ -10900,7 +10905,7 @@ const Te = E({
10900
10905
  region: {}
10901
10906
  },
10902
10907
  setup(u, { expose: e }) {
10903
- const t = u, { widgets: l, widgetsRef: a } = Be(t.region);
10908
+ const t = u, { widgets: l, widgetsRef: a } = Re(t.region);
10904
10909
  return e({
10905
10910
  widgets: l,
10906
10911
  widgetsRef: a
@@ -10923,10 +10928,10 @@ const Te = E({
10923
10928
  index: { default: 0 }
10924
10929
  },
10925
10930
  setup(u, { expose: e }) {
10926
- const t = u, l = pe(), { widgets: a, widgetsRef: s } = Be(t.region), o = x(() => a.value.filter((i) => i.openType === "panel")), r = x(() => a.value.filter((i) => i.openType !== "panel")), c = o.value[t.index], f = k(c), p = k(c), m = (i) => {
10931
+ const t = u, l = me(), { widgets: a, widgetsRef: s } = Re(t.region), o = x(() => a.value.filter((i) => i.openType === "panel")), r = x(() => a.value.filter((i) => i.openType !== "panel")), c = o.value[t.index], f = k(c), p = k(c), m = (i) => {
10927
10932
  f.value = i, p.value = p.value?.name === i.name ? null : i;
10928
10933
  }, v = (i) => {
10929
- i.openType === "link" && i.url && window.open(i.url), i.openType === "dialog" && $l({
10934
+ i.openType === "link" && i.url && window.open(i.url), i.openType === "dialog" && Bl({
10930
10935
  title: i.label,
10931
10936
  icon: i.icon,
10932
10937
  ...i.props,
@@ -10986,7 +10991,7 @@ const Te = E({
10986
10991
  region: {}
10987
10992
  },
10988
10993
  setup(u, { expose: e }) {
10989
- const t = u, { widgets: l, widgetsRef: a } = Be(t.region), s = Je(
10994
+ const t = u, { widgets: l, widgetsRef: a } = Re(t.region), s = Je(
10990
10995
  l.value.map((i) => ({
10991
10996
  name: i.name,
10992
10997
  command: i.name,
@@ -11059,9 +11064,9 @@ const Te = E({
11059
11064
  region: {}
11060
11065
  },
11061
11066
  setup(u, { expose: e }) {
11062
- const t = u, l = pe(), { current: a } = de(), { selected: s, isSelectBlock: o } = xe(), r = x(
11067
+ const t = u, l = me(), { current: a } = pe(), { selected: s, isSelectBlock: o } = xe(), r = x(
11063
11068
  () => o.value ? ke.Block : ke.Node
11064
- ), { widgets: c, widgetsRef: f } = Be(t.region, r), p = k(), m = k(!1), v = x(() => c.value.map((_) => ({
11069
+ ), { widgets: c, widgetsRef: f } = Re(t.region, r), p = k(), m = k(!1), v = x(() => c.value.map((_) => ({
11065
11070
  name: _.name,
11066
11071
  label: _.label,
11067
11072
  actions: _.name === "Style" ? [
@@ -11116,7 +11121,7 @@ const Te = E({
11116
11121
  default: y(() => [
11117
11122
  g(n(q), { class: "v-settings-region__title" }, {
11118
11123
  default: y(() => [
11119
- g(n(qn)),
11124
+ g(n(Hn)),
11120
11125
  V("span", null, [
11121
11126
  G(L(n(s)?.model.name) + ": ", 1),
11122
11127
  V("i", null, L(n(s)?.model.id), 1)
@@ -11128,7 +11133,7 @@ const Te = E({
11128
11133
  default: y(() => [
11129
11134
  g(n(fe), {
11130
11135
  onClick: i,
11131
- icon: n(Un),
11136
+ icon: n(qn),
11132
11137
  mode: "text",
11133
11138
  label: "帮助"
11134
11139
  }, null, 8, ["icon"])
@@ -11192,7 +11197,7 @@ const Te = E({
11192
11197
  region: {}
11193
11198
  },
11194
11199
  setup(u, { expose: e }) {
11195
- const t = u, { widgets: l, widgetsRef: a } = Be(t.region);
11200
+ const t = u, { widgets: l, widgetsRef: a } = Re(t.region);
11196
11201
  return e({
11197
11202
  widgets: l,
11198
11203
  widgetsRef: a
@@ -11213,7 +11218,7 @@ const Te = E({
11213
11218
  region: {}
11214
11219
  },
11215
11220
  setup(u, { expose: e }) {
11216
- const t = u, { widgets: l, widgetsRef: a } = Be(t.region), s = Je(
11221
+ const t = u, { widgets: l, widgetsRef: a } = Re(t.region), s = Je(
11217
11222
  l.value.map((c) => ({
11218
11223
  name: c.name,
11219
11224
  command: c.name,
@@ -11298,7 +11303,7 @@ export {
11298
11303
  ao as VUE_DEVTOOLS_PATH,
11299
11304
  Nr as VariableBinder,
11300
11305
  ur as Viewer,
11301
- el as Viewport,
11306
+ tl as Viewport,
11302
11307
  ke as WidgetGroup,
11303
11308
  Oe as WidgetWrapper,
11304
11309
  _u as builtInDeps,
@@ -11309,16 +11314,16 @@ export {
11309
11314
  Qu as createSlotsPicker,
11310
11315
  Ju as defaultSetter,
11311
11316
  Gu as depsManager,
11312
- sl as engineKey,
11313
- ce as expressionValidate,
11317
+ ol as engineKey,
11318
+ de as expressionValidate,
11314
11319
  ho as getClassProperties,
11315
- me as message,
11320
+ ce as message,
11316
11321
  ae as notify,
11317
11322
  fo as proxyContext,
11318
11323
  vn as regions,
11319
11324
  Ke as setterManager,
11320
11325
  te as setters,
11321
- pe as useEngine,
11322
- al as widgetManager,
11326
+ me as useEngine,
11327
+ sl as widgetManager,
11323
11328
  X as widgets
11324
11329
  };