@tmagic/editor 1.8.0-manmanyu.13 → 1.8.0-manmanyu.14

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.
@@ -7190,6 +7190,13 @@
7190
7190
  } else this.selectionBeforeOp = null;
7191
7191
  }
7192
7192
  this.emit("add", newNodes);
7193
+ this.emit("change", {
7194
+ type: "add",
7195
+ data: newNodes.map((node) => ({
7196
+ node,
7197
+ page: this.getPageOfNode(node.id)
7198
+ }))
7199
+ });
7193
7200
  return Array.isArray(addNode) ? newNodes : newNodes[0];
7194
7201
  }
7195
7202
  async doRemove(node, { doNotSelect = false, doNotSwitchPage = false } = {}) {
@@ -7253,6 +7260,10 @@
7253
7260
  async remove(nodeOrNodeList, { doNotSelect = false, doNotSwitchPage = false, doNotPushHistory = false, historyDescription, historySource } = {}) {
7254
7261
  this.captureSelectionBeforeOp();
7255
7262
  const nodes = Array.isArray(nodeOrNodeList) ? nodeOrNodeList : [nodeOrNodeList];
7263
+ const changeItems = nodes.map((node) => ({
7264
+ node,
7265
+ page: this.getPageOfNode(node.id)
7266
+ }));
7256
7267
  const removedItems = [];
7257
7268
  let pageForOp = null;
7258
7269
  if (!((0, _tmagic_utils.isPage)(nodes[0]) || (0, _tmagic_utils.isPageFragment)(nodes[0]))) for (const n of nodes) {
@@ -7282,6 +7293,10 @@
7282
7293
  });
7283
7294
  else this.selectionBeforeOp = null;
7284
7295
  this.emit("remove", nodes);
7296
+ this.emit("change", {
7297
+ type: "remove",
7298
+ data: changeItems
7299
+ });
7285
7300
  }
7286
7301
  async doUpdate(config, { changeRecords = [], historySource } = {}) {
7287
7302
  if (!this.get("root")) throw new Error("root为空");
@@ -7367,6 +7382,13 @@
7367
7382
  } else this.selectionBeforeOp = null;
7368
7383
  }
7369
7384
  this.emit("update", updateData);
7385
+ this.emit("change", {
7386
+ type: "update",
7387
+ data: updateData.map((node) => ({
7388
+ node,
7389
+ page: this.getPageOfNode(node.newNode.id)
7390
+ }))
7391
+ });
7370
7392
  return Array.isArray(config) ? updateData.map((item) => item.newNode) : updateData[0].newNode;
7371
7393
  }
7372
7394
  /**
@@ -7532,6 +7554,14 @@
7532
7554
  });
7533
7555
  } else this.selectionBeforeOp = null;
7534
7556
  this.emit("move-layer", offset);
7557
+ this.emit("change", {
7558
+ type: "move-layer",
7559
+ data: [{
7560
+ node,
7561
+ page: this.getPageOfNode(node.id)
7562
+ }],
7563
+ offset
7564
+ });
7535
7565
  }
7536
7566
  /**
7537
7567
  * 移动一个或多个节点到指定容器中。
@@ -7661,6 +7691,15 @@
7661
7691
  configs,
7662
7692
  targetParent
7663
7693
  });
7694
+ this.emit("change", {
7695
+ type: "drag-to",
7696
+ data: configs.map((node) => ({
7697
+ node,
7698
+ page: this.getPageOfNode(node.id)
7699
+ })),
7700
+ targetIndex,
7701
+ targetParent
7702
+ });
7664
7703
  }
7665
7704
  /**
7666
7705
  * 下列 *AndGetHistoryId 方法与对应的普通操作(add / remove / update ...)行为完全一致,
@@ -7919,6 +7958,19 @@
7919
7958
  addModifiedNodeId(id) {
7920
7959
  this.get("modifiedNodeIds").set(id, id);
7921
7960
  }
7961
+ /**
7962
+ * 获取指定节点所属的页面 / 页面片:
7963
+ * - 普通节点返回其所在的 page;
7964
+ * - 节点本身就是 page / pageFragment 时返回它自己;
7965
+ * - 找不到时返回 null。
7966
+ * 供 `change` 事件携带「变更节点对应的 page」(而非编辑器当前选中页)。
7967
+ */
7968
+ getPageOfNode(id) {
7969
+ const { node, page } = this.getNodeInfo(id, false);
7970
+ if (page) return page;
7971
+ if (node && ((0, _tmagic_utils.isPage)(node) || (0, _tmagic_utils.isPageFragment)(node))) return node;
7972
+ return null;
7973
+ }
7922
7974
  captureSelectionBeforeOp() {
7923
7975
  if (this.selectionBeforeOp) return;
7924
7976
  this.selectionBeforeOp = this.get("nodes").map((n) => n.id);
@@ -8366,17 +8418,13 @@
8366
8418
  };
8367
8419
  //#endregion
8368
8420
  //#region packages/editor/src/hooks/use-services.ts
8369
- var useServices;
8370
- var init_use_services = __esmMin((() => {
8371
- useServices = () => {
8372
- const services = (0, vue.inject)("services");
8373
- if (!services) throw new Error("services is required");
8374
- return services;
8375
- };
8376
- }));
8421
+ var useServices = () => {
8422
+ const services = (0, vue.inject)("services");
8423
+ if (!services) throw new Error("services is required");
8424
+ return services;
8425
+ };
8377
8426
  //#endregion
8378
8427
  //#region packages/editor/src/hooks/use-float-box.ts
8379
- init_use_services();
8380
8428
  var useFloatBox = (slideKeys) => {
8381
8429
  const { uiService } = useServices();
8382
8430
  const floatBoxStates = (0, vue.ref)(slideKeys.value.reduce((total, cur) => ({
@@ -8467,7 +8515,6 @@
8467
8515
  };
8468
8516
  //#endregion
8469
8517
  //#region packages/editor/src/hooks/use-editor-content-height.ts
8470
- init_use_services();
8471
8518
  var useEditorContentHeight = () => {
8472
8519
  const { uiService } = useServices();
8473
8520
  const frameworkHeight = (0, vue.computed)(() => uiService.get("frameworkRect").height);
@@ -9434,7 +9481,6 @@
9434
9481
  }));
9435
9482
  //#endregion
9436
9483
  //#region packages/editor/src/components/ToolButton.vue?vue&type=script&setup=true&lang.ts
9437
- init_use_services();
9438
9484
  init_Icon();
9439
9485
  var _hoisted_1$74 = {
9440
9486
  key: 1,
@@ -9569,7 +9615,6 @@
9569
9615
  //#endregion
9570
9616
  //#region packages/editor/src/layouts/page-bar/AddButton.vue?vue&type=script&setup=true&lang.ts
9571
9617
  init_Icon();
9572
- init_use_services();
9573
9618
  init_editor();
9574
9619
  var _hoisted_1$73 = {
9575
9620
  key: 0,
@@ -9623,7 +9668,6 @@
9623
9668
  //#endregion
9624
9669
  //#region packages/editor/src/layouts/page-bar/PageBarScrollContainer.vue?vue&type=script&setup=true&lang.ts
9625
9670
  init_Icon();
9626
- init_use_services();
9627
9671
  var _hoisted_1$72 = {
9628
9672
  class: "m-editor-page-bar",
9629
9673
  ref: "pageBar"
@@ -9740,7 +9784,6 @@
9740
9784
  var PageBarScrollContainer_default = PageBarScrollContainer_vue_vue_type_script_setup_true_lang_default;
9741
9785
  //#endregion
9742
9786
  //#region packages/editor/src/layouts/page-bar/PageList.vue?vue&type=script&setup=true&lang.ts
9743
- init_use_services();
9744
9787
  var _hoisted_1$71 = {
9745
9788
  key: 0,
9746
9789
  id: "m-editor-page-bar-list-icon",
@@ -9850,7 +9893,6 @@
9850
9893
  var Search_default = Search_vue_vue_type_script_setup_true_lang_default;
9851
9894
  //#endregion
9852
9895
  //#region packages/editor/src/layouts/page-bar/PageBar.vue?vue&type=script&setup=true&lang.ts
9853
- init_use_services();
9854
9896
  var _hoisted_1$69 = { class: "m-editor-page-bar-tabs" };
9855
9897
  var _hoisted_2$26 = ["data-page-id", "onClick"];
9856
9898
  var _hoisted_3$13 = { class: "m-editor-page-bar-title" };
@@ -9981,7 +10023,6 @@
9981
10023
  //#endregion
9982
10024
  //#region packages/editor/src/layouts/AddPageBox.vue?vue&type=script&setup=true&lang.ts
9983
10025
  init_Icon();
9984
- init_use_services();
9985
10026
  init_editor();
9986
10027
  var _hoisted_1$68 = { class: "m-editor-empty-panel" };
9987
10028
  var _hoisted_2$25 = { class: "m-editor-empty-content" };
@@ -10295,7 +10336,6 @@
10295
10336
  }));
10296
10337
  //#endregion
10297
10338
  //#region packages/editor/src/layouts/Framework.vue?vue&type=script&setup=true&lang.ts
10298
- init_use_services();
10299
10339
  init_config();
10300
10340
  init_CodeEditor();
10301
10341
  var Framework_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ (0, vue.defineComponent)({
@@ -11040,7 +11080,10 @@
11040
11080
  key: 0,
11041
11081
  class: "m-editor-history-list-empty"
11042
11082
  };
11043
- var _hoisted_2$20 = { class: "m-editor-history-list-toolbar" };
11083
+ var _hoisted_2$20 = {
11084
+ key: 0,
11085
+ class: "m-editor-history-list-toolbar"
11086
+ };
11044
11087
  var _hoisted_3$9 = ["title"];
11045
11088
  var BucketTab_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ (0, vue.defineComponent)({
11046
11089
  name: "MEditorHistoryListBucketTab",
@@ -11060,11 +11103,11 @@
11060
11103
  ],
11061
11104
  setup(__props) {
11062
11105
  return (_ctx, _cache) => {
11063
- return !__props.buckets.length ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("div", _hoisted_1$63, "暂无操作记录")) : ((0, vue.openBlock)(), (0, vue.createElementBlock)(vue.Fragment, { key: 1 }, [(0, vue.createElementVNode)("div", _hoisted_2$20, [(0, vue.createElementVNode)("span", {
11106
+ return !__props.buckets.length ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("div", _hoisted_1$63, "暂无操作记录")) : ((0, vue.openBlock)(), (0, vue.createElementBlock)(vue.Fragment, { key: 1 }, [__props.config.showClear !== false ? ((0, vue.openBlock)(), (0, vue.createElementBlock)("div", _hoisted_2$20, [(0, vue.createElementVNode)("span", {
11064
11107
  class: "m-editor-history-list-clear",
11065
11108
  title: `清空${__props.config.title}的历史记录`,
11066
11109
  onClick: _cache[0] || (_cache[0] = ($event) => _ctx.$emit("clear"))
11067
- }, "清空", 8, _hoisted_3$9)]), (0, vue.createVNode)((0, vue.unref)(_tmagic_design.TMagicScrollbar), { "max-height": "360px" }, {
11110
+ }, "清空", 8, _hoisted_3$9)])) : (0, vue.createCommentVNode)("v-if", true), (0, vue.createVNode)((0, vue.unref)(_tmagic_design.TMagicScrollbar), { "max-height": "360px" }, {
11068
11111
  default: (0, vue.withCtx)(() => [((0, vue.openBlock)(true), (0, vue.createElementBlock)(vue.Fragment, null, (0, vue.renderList)(__props.buckets, (bucket) => {
11069
11112
  return (0, vue.openBlock)(), (0, vue.createBlock)(Bucket_default, {
11070
11113
  key: `${__props.config.prefix}-${bucket.id}`,
@@ -11186,7 +11229,6 @@
11186
11229
  var PageTab_default = PageTab_vue_vue_type_script_setup_true_lang_default;
11187
11230
  //#endregion
11188
11231
  //#region packages/editor/src/layouts/history-list/useHistoryList.ts
11189
- init_use_services();
11190
11232
  /**
11191
11233
  * 历史记录面板共享逻辑:
11192
11234
  * - 暴露三类历史的聚合数据(页面 / 数据源 / 代码块);
@@ -11243,7 +11285,6 @@
11243
11285
  var CompareForm_vue_vue_type_script_setup_true_lang_default;
11244
11286
  var init_CompareForm_vue_vue_type_script_setup_true_lang = __esmMin((() => {
11245
11287
  init_lodash();
11246
- init_use_services();
11247
11288
  CompareForm_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ (0, vue.defineComponent)({
11248
11289
  name: "MEditorCompareForm",
11249
11290
  __name: "CompareForm",
@@ -11262,11 +11303,10 @@
11262
11303
  baseFormState: {},
11263
11304
  selfDiffFieldTypes: {},
11264
11305
  loadConfig: {},
11265
- services: { default: () => useServices() }
11306
+ services: {}
11266
11307
  },
11267
11308
  setup(__props, { expose: __expose }) {
11268
11309
  const props = __props;
11269
- const { propsService, dataSourceService, codeBlockService, editorService } = props.services;
11270
11310
  (0, vue.provide)("services", props.services);
11271
11311
  const config = (0, vue.ref)([]);
11272
11312
  /** vs-code 编辑器的 monaco 配置项,沿用 Editor 顶层 provide('codeOptions', ...) 的注入。 */
@@ -11346,16 +11386,17 @@
11346
11386
  * 作为 ctx.defaultLoadConfig 透传给自定义 `loadConfig`,方便复用与二次加工。
11347
11387
  */
11348
11388
  const defaultLoadConfig = async () => {
11389
+ if (!props.services) return [];
11349
11390
  switch (props.category) {
11350
11391
  case "node":
11351
11392
  if (!props.type) return [];
11352
- return removeStyleDisplayConfig(await propsService.getPropsConfig(props.type, { node: props.value }));
11353
- case "data-source": return dataSourceService.getFormConfig(props.type || "base").map((item) => "type" in item && item.type === "tab" ? {
11393
+ return removeStyleDisplayConfig(await props.services.propsService.getPropsConfig(props.type, { node: props.value }));
11394
+ case "data-source": return props.services.dataSourceService.getFormConfig(props.type || "base").map((item) => "type" in item && item.type === "tab" ? {
11354
11395
  ...item,
11355
11396
  active: "fields"
11356
11397
  } : item);
11357
11398
  case "code-block": return getCodeBlockFormConfig({
11358
- paramColConfig: codeBlockService.getParamsColConfig(),
11399
+ paramColConfig: props.services.codeBlockService.getParamsColConfig(),
11359
11400
  isDataSource: () => Boolean(props.dataSourceType),
11360
11401
  dataSourceType: () => props.dataSourceType,
11361
11402
  codeOptions,
@@ -11394,10 +11435,9 @@
11394
11435
  * - services:整个 useServices() 返回的服务集合;
11395
11436
  * - stage:当前 editorService.get('stage') 的最新值。
11396
11437
  */
11397
- const stage = (0, vue.computed)(() => editorService.get("stage"));
11398
11438
  (0, vue.watchEffect)(() => {
11399
- if (formRef.value) {
11400
- formRef.value.formState.stage = stage.value;
11439
+ if (formRef.value && props.services) {
11440
+ formRef.value.formState.stage = props.services.editorService.get("stage");
11401
11441
  formRef.value.formState.services = props.services;
11402
11442
  }
11403
11443
  });
@@ -11448,7 +11488,6 @@
11448
11488
  var init_HistoryDiffDialog_vue_vue_type_script_setup_true_lang = __esmMin((() => {
11449
11489
  init_lodash();
11450
11490
  init_CompareForm();
11451
- init_use_services();
11452
11491
  init_CodeEditor();
11453
11492
  _hoisted_1$61 = {
11454
11493
  key: 0,
@@ -11470,7 +11509,7 @@
11470
11509
  name: "MEditorHistoryDiffDialog",
11471
11510
  __name: "HistoryDiffDialog",
11472
11511
  props: {
11473
- services: { default: () => useServices() },
11512
+ services: {},
11474
11513
  extendState: {},
11475
11514
  loadConfig: {},
11476
11515
  width: { default: "900px" },
@@ -11511,6 +11550,20 @@
11511
11550
  };
11512
11551
  const dialogTitle = (0, vue.computed)(() => props.onConfirm ? "确认回滚" : "查看修改差异");
11513
11552
  const hasCurrent = (0, vue.computed)(() => payload.value?.currentValue !== void 0 && payload.value?.currentValue !== null);
11553
+ /** 是否存在该步「修改后的值」:不存在(如仅删除)时「与修改前对比」无意义,置灰禁用。 */
11554
+ const hasValue = (0, vue.computed)(() => payload.value?.value !== void 0 && payload.value?.value !== null);
11555
+ /** 指定模式当前是否可用:before 依赖「修改后的值」,current 依赖「当前值」。 */
11556
+ const isModeAvailable = (m) => m === "current" ? hasCurrent.value : hasValue.value;
11557
+ /**
11558
+ * 计算 open 时的初始对比模式:
11559
+ * - 调用方通过 payload.mode 指定且该模式可用时,优先使用指定模式;
11560
+ * - 否则没有「修改后的值」但有当前值时(「与修改前对比」不可用),默认进入「与当前对比」;
11561
+ * - 其余情况默认「与修改前对比」。
11562
+ */
11563
+ const resolveInitialMode = (specified) => {
11564
+ if (specified && isModeAvailable(specified)) return specified;
11565
+ return !hasValue.value && hasCurrent.value ? "current" : "before";
11566
+ };
11514
11567
  /** 左侧(旧/参照)值 */
11515
11568
  const leftValue = (0, vue.computed)(() => {
11516
11569
  if (!payload.value) return {};
@@ -11553,7 +11606,7 @@
11553
11606
  });
11554
11607
  const open = (p) => {
11555
11608
  payload.value = p;
11556
- mode.value = "before";
11609
+ mode.value = resolveInitialMode(p.mode);
11557
11610
  viewMode.value = "form";
11558
11611
  visible.value = true;
11559
11612
  };
@@ -11645,10 +11698,13 @@
11645
11698
  size: "small",
11646
11699
  class: "m-editor-history-diff-dialog-mode"
11647
11700
  }, {
11648
- default: (0, vue.withCtx)(() => [(0, vue.createVNode)((0, vue.unref)(_tmagic_design.TMagicRadioButton), { value: "before" }, {
11701
+ default: (0, vue.withCtx)(() => [(0, vue.createVNode)((0, vue.unref)(_tmagic_design.TMagicRadioButton), {
11702
+ value: "before",
11703
+ disabled: !hasValue.value
11704
+ }, {
11649
11705
  default: (0, vue.withCtx)(() => [..._cache[7] || (_cache[7] = [(0, vue.createTextVNode)("与修改前对比", -1)])]),
11650
11706
  _: 1
11651
- }), (0, vue.createVNode)((0, vue.unref)(_tmagic_design.TMagicRadioButton), {
11707
+ }, 8, ["disabled"]), (0, vue.createVNode)((0, vue.unref)(_tmagic_design.TMagicRadioButton), {
11652
11708
  value: "current",
11653
11709
  disabled: !hasCurrent.value
11654
11710
  }, {
@@ -11776,6 +11832,7 @@
11776
11832
  loadConfig: options.loadConfig,
11777
11833
  selfDiffFieldTypes: options.selfDiffFieldTypes,
11778
11834
  compareFormState: options.compareFormState,
11835
+ width: options.width,
11779
11836
  onClose: options.onClose
11780
11837
  });
11781
11838
  if (options.appContext) Object.assign(app._context, options.appContext);
@@ -11847,15 +11904,14 @@
11847
11904
  * ```ts
11848
11905
  * import { useHistoryRevert } from '@tmagic/editor';
11849
11906
  *
11850
- * const { onPageRevert, onPageDiff } = useHistoryRevert(editorRef.value); // editorRef.value 即 Editor 暴露的 services
11907
+ * const { onPageRevert, onPageDiff } = useHistoryRevert({}, editorRef.value); // editorRef.value 即 Editor 暴露的 services
11851
11908
  * await onPageRevert(index); // 弹出差异 / 二次确认弹窗后回滚
11852
11909
  * onPageDiff(index); // 弹出只读差异弹窗查看前后值差异
11853
11910
  * ```
11854
11911
  */
11855
- var useHistoryRevert = (services, options = {}) => {
11856
- const { editorService, dataSourceService, codeBlockService, historyService } = services;
11912
+ var useHistoryRevert = (options = {}, services) => {
11857
11913
  const appContext = options.appContext ?? (0, vue.getCurrentInstance)()?.appContext ?? null;
11858
- const { extendState, getPropsPanelFormState } = options;
11914
+ const { extendState, getPropsPanelFormState, dialogWidth } = options;
11859
11915
  /** 目标数据已被删除、无法回滚时的统一提示。 */
11860
11916
  const showRevertTargetMissing = () => {
11861
11917
  _tmagic_design.tMagicMessage.error("回滚失败:该记录对应的数据已被删除");
@@ -11876,28 +11932,29 @@
11876
11932
  appContext,
11877
11933
  extendState,
11878
11934
  services,
11879
- ...extra
11935
+ ...extra,
11936
+ width: extra?.width ?? dialogWidth
11880
11937
  });
11881
11938
  return confirmRevert();
11882
11939
  };
11883
11940
  const buildPageDiffPayload = (index) => buildDiffPayload({
11884
11941
  category: "node",
11885
- groups: () => historyService.getHistoryGroups("page", editorService.get("page")?.id),
11886
- getCurrent: (id) => editorService.getNodeById(id),
11942
+ groups: () => services?.historyService.getHistoryGroups("page", services?.editorService.get("page")?.id) ?? [],
11943
+ getCurrent: (id) => services?.editorService.getNodeById(id),
11887
11944
  resolveType: (n, o) => n.type || o.type || "",
11888
11945
  resolveLabel: (n, o) => n.name || o.name || n.type || o.type || ""
11889
11946
  }, index);
11890
11947
  const buildDataSourceDiffPayload = (id, index) => buildDiffPayload({
11891
11948
  category: "data-source",
11892
- groups: () => historyService.getHistoryGroups("dataSource"),
11893
- getCurrent: (id) => dataSourceService.getDataSourceById(`${id}`),
11949
+ groups: () => services?.historyService.getHistoryGroups("dataSource") ?? [],
11950
+ getCurrent: (id) => services?.dataSourceService.getDataSourceById(`${id}`),
11894
11951
  resolveType: (n, o) => n.type || o.type || "base",
11895
11952
  resolveLabel: (n, o, id) => n.title || o.title || `${id}`
11896
11953
  }, index, id);
11897
11954
  const buildCodeBlockDiffPayload = (id, index) => buildDiffPayload({
11898
11955
  category: "code-block",
11899
- groups: () => historyService.getHistoryGroups("codeBlock"),
11900
- getCurrent: (id) => codeBlockService.getCodeContentById(id),
11956
+ groups: () => services?.historyService.getHistoryGroups("codeBlock") ?? [],
11957
+ getCurrent: (id) => services?.codeBlockService.getCodeContentById(id),
11901
11958
  resolveLabel: (n, o, id) => n.name || o.name || `${id}`
11902
11959
  }, index, id);
11903
11960
  /**
@@ -11907,45 +11964,45 @@
11907
11964
  * add(回滚即删除)即使目标已不在,也已达成「删除」目的,不视为失败。
11908
11965
  */
11909
11966
  const isPageRevertTargetMissing = (index) => {
11910
- const step = historyService.getStepList("page", editorService.get("page")?.id)[index]?.step;
11967
+ const step = services?.historyService.getStepList("page", services?.editorService.get("page")?.id)[index]?.step;
11911
11968
  if (!step) return false;
11912
11969
  if (step.opType === "update") return (step.diff ?? []).some((item) => {
11913
11970
  const id = item.newSchema?.id ?? item.oldSchema?.id;
11914
- return id !== void 0 && !editorService.getNodeById(id, false);
11971
+ return id !== void 0 && !services?.editorService.getNodeById(id, false);
11915
11972
  });
11916
- if (step.opType === "remove") return (step.diff ?? []).some((item) => item.parentId !== void 0 && !editorService.getNodeById(item.parentId, false));
11973
+ if (step.opType === "remove") return (step.diff ?? []).some((item) => item.parentId !== void 0 && !services?.editorService.getNodeById(item.parentId, false));
11917
11974
  return false;
11918
11975
  };
11919
11976
  /** 数据源 update 步骤回滚时,对应数据源必须仍存在(已删除则无处写回旧值)。 */
11920
11977
  const isDataSourceRevertTargetMissing = (id, index) => {
11921
- const step = historyService.getStepList("dataSource", id)[index]?.step;
11922
- return Boolean(step?.opType === "update" && !dataSourceService.getDataSourceById(`${id}`));
11978
+ const step = services?.historyService.getStepList("dataSource", id)[index]?.step;
11979
+ return Boolean(step?.opType === "update" && !services?.dataSourceService.getDataSourceById(`${id}`));
11923
11980
  };
11924
11981
  /** 代码块 update 步骤回滚时,对应代码块必须仍存在(已删除则无处写回旧值)。 */
11925
11982
  const isCodeBlockRevertTargetMissing = (id, index) => {
11926
- const step = historyService.getStepList("codeBlock", id)[index]?.step;
11927
- return Boolean(step?.opType === "update" && !codeBlockService.getCodeContentById(id));
11983
+ const step = services?.historyService.getStepList("codeBlock", id)[index]?.step;
11984
+ return Boolean(step?.opType === "update" && !services?.codeBlockService.getCodeContentById(id));
11928
11985
  };
11929
11986
  const onPageRevert = (index) => {
11930
11987
  if (isPageRevertTargetMissing(index)) {
11931
11988
  showRevertTargetMissing();
11932
11989
  return Promise.resolve(null);
11933
11990
  }
11934
- return runRevert(buildPageDiffPayload(index), { compareFormState: getPropsPanelFormState?.() }).then((result) => result ? editorService.revertPageStep(index) : null);
11991
+ return runRevert(buildPageDiffPayload(index), { compareFormState: getPropsPanelFormState?.() }).then((result) => result ? services?.editorService.revertPageStep(index) : null);
11935
11992
  };
11936
11993
  const onDataSourceRevert = (id, index) => {
11937
11994
  if (isDataSourceRevertTargetMissing(id, index)) {
11938
11995
  showRevertTargetMissing();
11939
11996
  return Promise.resolve(null);
11940
11997
  }
11941
- return runRevert(buildDataSourceDiffPayload(id, index)).then((result) => result ? dataSourceService.revert(id, index) : null);
11998
+ return runRevert(buildDataSourceDiffPayload(id, index)).then((result) => result ? services?.dataSourceService.revert(id, index) : null);
11942
11999
  };
11943
12000
  const onCodeBlockRevert = (id, index) => {
11944
12001
  if (isCodeBlockRevertTargetMissing(id, index)) {
11945
12002
  showRevertTargetMissing();
11946
12003
  return Promise.resolve(null);
11947
12004
  }
11948
- return runRevert(buildCodeBlockDiffPayload(id, index)).then((result) => result ? codeBlockService.revert(id, index) : null);
12005
+ return runRevert(buildCodeBlockDiffPayload(id, index)).then((result) => result ? services?.codeBlockService.revert(id, index) : null);
11949
12006
  };
11950
12007
  /**
11951
12008
  * 「查看差异」:可差异对比的步骤(单实体 update)动态挂载只读 HistoryDiffDialog 展示前后值差异,
@@ -11957,6 +12014,7 @@
11957
12014
  appContext,
11958
12015
  extendState,
11959
12016
  services,
12017
+ width: dialogWidth,
11960
12018
  compareFormState: getPropsPanelFormState?.()
11961
12019
  });
11962
12020
  };
@@ -11965,7 +12023,8 @@
11965
12023
  if (payload) return viewHistoryDiffDialog(payload, {
11966
12024
  appContext,
11967
12025
  extendState,
11968
- services
12026
+ services,
12027
+ width: dialogWidth
11969
12028
  });
11970
12029
  };
11971
12030
  const onCodeBlockDiff = (id, index) => {
@@ -11973,7 +12032,8 @@
11973
12032
  if (payload) return viewHistoryDiffDialog(payload, {
11974
12033
  appContext,
11975
12034
  extendState,
11976
- services
12035
+ services,
12036
+ width: dialogWidth
11977
12037
  });
11978
12038
  };
11979
12039
  /**
@@ -11999,7 +12059,8 @@
11999
12059
  }
12000
12060
  if (!await runRevert(revertOptions.diffPayload ?? null, {
12001
12061
  loadConfig: revertOptions.loadConfig,
12002
- selfDiffFieldTypes: revertOptions.selfDiffFieldTypes
12062
+ selfDiffFieldTypes: revertOptions.selfDiffFieldTypes,
12063
+ width: revertOptions.width
12003
12064
  })) return null;
12004
12065
  return await revertOptions.revert();
12005
12066
  };
@@ -12012,7 +12073,8 @@
12012
12073
  appContext,
12013
12074
  extendState,
12014
12075
  services,
12015
- ...extra
12076
+ ...extra,
12077
+ width: extra?.width ?? dialogWidth
12016
12078
  });
12017
12079
  };
12018
12080
  return {
@@ -12035,7 +12097,6 @@
12035
12097
  //#endregion
12036
12098
  //#region packages/editor/src/layouts/history-list/HistoryListPanel.vue?vue&type=script&setup=true&lang.ts
12037
12099
  init_Icon();
12038
- init_use_services();
12039
12100
  var _hoisted_1$60 = { class: "m-editor-history-list" };
12040
12101
  var HistoryListPanel_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ (0, vue.defineComponent)({
12041
12102
  name: "MEditorHistoryListPanel",
@@ -12177,12 +12238,12 @@
12177
12238
  /**
12178
12239
  * 「单步回滚」与「查看差异」的完整逻辑收敛到 useHistoryRevert,面板与业务方共用:
12179
12240
  * 二者均由 useHistoryRevert 内部按需动态挂载 HistoryDiffDialog,
12180
- * 业务方亦可直接 import useHistoryRevert(services) 调用,无需自行挂载任何弹窗。
12241
+ * 业务方亦可直接 import useHistoryRevert(options, services) 调用,无需自行挂载任何弹窗。
12181
12242
  */
12182
- const { onPageRevert, onDataSourceRevert, onCodeBlockRevert, onPageDiff, onDataSourceDiff, onCodeBlockDiff } = useHistoryRevert(services, {
12243
+ const { onPageRevert, onDataSourceRevert, onCodeBlockRevert, onPageDiff, onDataSourceDiff, onCodeBlockDiff } = useHistoryRevert({
12183
12244
  extendState: extendFormState,
12184
12245
  getPropsPanelFormState
12185
- });
12246
+ }, services);
12186
12247
  /**
12187
12248
  * 把内存中(已清空对应类别后的)历史状态重新写回 IndexedDB,
12188
12249
  * 使本地持久化的那份与内存保持一致——即「连同本地保存的一并删除」。
@@ -12554,7 +12615,6 @@
12554
12615
  var NavMenuColumn_default = NavMenuColumn_vue_vue_type_script_setup_true_lang_default;
12555
12616
  //#endregion
12556
12617
  //#region packages/editor/src/layouts/NavMenu.vue?vue&type=script&setup=true&lang.ts
12557
- init_use_services();
12558
12618
  init_type();
12559
12619
  var NavMenu_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ (0, vue.defineComponent)({
12560
12620
  name: "MEditorNavMenu",
@@ -12743,7 +12803,6 @@
12743
12803
  //#endregion
12744
12804
  //#region packages/editor/src/layouts/props-panel/FormPanel.vue?vue&type=script&setup=true&lang.ts
12745
12805
  init_Icon();
12746
- init_use_services();
12747
12806
  init_CodeEditor();
12748
12807
  var _hoisted_1$58 = { class: "m-editor-props-form-panel" };
12749
12808
  var FormPanel_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ (0, vue.defineComponent)({
@@ -12905,7 +12964,6 @@
12905
12964
  //#endregion
12906
12965
  //#region packages/editor/src/layouts/props-panel/PropsPanel.vue?vue&type=script&setup=true&lang.ts
12907
12966
  init_Icon();
12908
- init_use_services();
12909
12967
  var _hoisted_1$57 = {
12910
12968
  ref: "propsPanel",
12911
12969
  class: "m-editor-props-panel"
@@ -13089,7 +13147,6 @@
13089
13147
  //#endregion
13090
13148
  //#region packages/editor/src/components/FloatingBox.vue?vue&type=script&setup=true&lang.ts
13091
13149
  init_Icon();
13092
- init_use_services();
13093
13150
  var _hoisted_1$56 = {
13094
13151
  ref: "title",
13095
13152
  class: "m-editor-float-box-title"
@@ -13252,7 +13309,6 @@
13252
13309
  var FloatingBox_default = FloatingBox_vue_vue_type_script_setup_true_lang_default;
13253
13310
  //#endregion
13254
13311
  //#region packages/editor/src/components/CodeBlockEditor.vue?vue&type=script&setup=true&lang.ts
13255
- init_use_services();
13256
13312
  init_CodeEditor();
13257
13313
  init_code_block();
13258
13314
  init_config();
@@ -13897,7 +13953,6 @@
13897
13953
  //#endregion
13898
13954
  //#region packages/editor/src/layouts/sidebar/code-block/CodeBlockList.vue?vue&type=script&setup=true&lang.ts
13899
13955
  init_Icon();
13900
- init_use_services();
13901
13956
  init_type();
13902
13957
  var CodeBlockList_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ (0, vue.defineComponent)({
13903
13958
  name: "MEditorCodeBlockList",
@@ -14109,7 +14164,6 @@
14109
14164
  };
14110
14165
  //#endregion
14111
14166
  //#region packages/editor/src/layouts/sidebar/code-block/CodeBlockListPanel.vue?vue&type=script&setup=true&lang.ts
14112
- init_use_services();
14113
14167
  var _hoisted_1$52 = { class: "search-wrapper" };
14114
14168
  var CodeBlockListPanel_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ (0, vue.defineComponent)({
14115
14169
  name: "MEditorCodeBlockListPanel",
@@ -14289,7 +14343,6 @@
14289
14343
  var DataSourceAddButton_default = DataSourceAddButton_vue_vue_type_script_setup_true_lang_default;
14290
14344
  //#endregion
14291
14345
  //#region packages/editor/src/layouts/sidebar/data-source/DataSourceConfigPanel.vue?vue&type=script&setup=true&lang.ts
14292
- init_use_services();
14293
14346
  var DataSourceConfigPanel_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ (0, vue.defineComponent)({
14294
14347
  name: "MEditorDataSourceConfigPanel",
14295
14348
  __name: "DataSourceConfigPanel",
@@ -14402,7 +14455,6 @@
14402
14455
  //#endregion
14403
14456
  //#region packages/editor/src/layouts/sidebar/data-source/DataSourceList.vue?vue&type=script&setup=true&lang.ts
14404
14457
  init_Icon();
14405
- init_use_services();
14406
14458
  var DataSourceList_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ (0, vue.defineComponent)({
14407
14459
  name: "MEditorDataSourceList",
14408
14460
  __name: "DataSourceList",
@@ -14615,7 +14667,6 @@
14615
14667
  //#endregion
14616
14668
  //#region packages/editor/src/layouts/sidebar/data-source/DataSourceListPanel.vue?vue&type=script&setup=true&lang.ts
14617
14669
  init_lodash();
14618
- init_use_services();
14619
14670
  var _hoisted_1$51 = { class: "search-wrapper" };
14620
14671
  var DataSourceListPanel_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ (0, vue.defineComponent)({
14621
14672
  name: "MEditorDataSourceListPanel",
@@ -14868,7 +14919,6 @@
14868
14919
  };
14869
14920
  //#endregion
14870
14921
  //#region packages/editor/src/layouts/sidebar/layer/LayerMenu.vue?vue&type=script&setup=true&lang.ts
14871
- init_use_services();
14872
14922
  var LayerMenu_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ (0, vue.defineComponent)({
14873
14923
  name: "MEditorLayerMenu",
14874
14924
  __name: "LayerMenu",
@@ -14954,7 +15004,6 @@
14954
15004
  var LayerMenu_default = LayerMenu_vue_vue_type_script_setup_true_lang_default;
14955
15005
  //#endregion
14956
15006
  //#region packages/editor/src/layouts/sidebar/layer/LayerNodeTool.vue?vue&type=script&setup=true&lang.ts
14957
- init_use_services();
14958
15007
  var LayerNodeTool_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ (0, vue.defineComponent)({
14959
15008
  __name: "LayerNodeTool",
14960
15009
  props: { data: {} },
@@ -15451,7 +15500,6 @@
15451
15500
  };
15452
15501
  //#endregion
15453
15502
  //#region packages/editor/src/layouts/sidebar/layer/LayerPanel.vue?vue&type=script&setup=true&lang.ts
15454
- init_use_services();
15455
15503
  var LayerPanel_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ (0, vue.defineComponent)({
15456
15504
  name: "MEditorLayerPanel",
15457
15505
  __name: "LayerPanel",
@@ -15558,7 +15606,6 @@
15558
15606
  //#endregion
15559
15607
  //#region packages/editor/src/layouts/sidebar/ComponentListPanel.vue?vue&type=script&setup=true&lang.ts
15560
15608
  init_Icon();
15561
- init_use_services();
15562
15609
  init_type();
15563
15610
  var _hoisted_1$49 = ["onClick", "onDragstart"];
15564
15611
  var _hoisted_2$14 = ["title"];
@@ -15675,7 +15722,6 @@
15675
15722
  //#endregion
15676
15723
  //#region packages/editor/src/layouts/sidebar/Sidebar.vue?vue&type=script&setup=true&lang.ts
15677
15724
  init_Icon();
15678
- init_use_services();
15679
15725
  init_type();
15680
15726
  var _hoisted_1$48 = {
15681
15727
  key: 0,
@@ -16168,7 +16214,6 @@
16168
16214
  var ScrollViewer_default = ScrollViewer_vue_vue_type_script_setup_true_lang_default;
16169
16215
  //#endregion
16170
16216
  //#region packages/editor/src/layouts/workspace/viewer/NodeListMenu.vue?vue&type=script&setup=true&lang.ts
16171
- init_use_services();
16172
16217
  var NodeListMenu_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ (0, vue.defineComponent)({
16173
16218
  __name: "NodeListMenu",
16174
16219
  setup(__props) {
@@ -16251,7 +16296,6 @@
16251
16296
  var NodeListMenu_default = NodeListMenu_vue_vue_type_script_setup_true_lang_default;
16252
16297
  //#endregion
16253
16298
  //#region packages/editor/src/layouts/workspace/viewer/StageOverlay.vue?vue&type=script&setup=true&lang.ts
16254
- init_use_services();
16255
16299
  var _hoisted_1$46 = {
16256
16300
  key: 0,
16257
16301
  class: "m-editor-stage-overlay"
@@ -16375,7 +16419,6 @@
16375
16419
  var CenterIcon_default = CenterIcon_vue_vue_type_script_setup_true_lang_default;
16376
16420
  //#endregion
16377
16421
  //#region packages/editor/src/layouts/workspace/viewer/ViewerMenu.vue?vue&type=script&setup=true&lang.ts
16378
- init_use_services();
16379
16422
  init_type();
16380
16423
  var ViewerMenu_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ (0, vue.defineComponent)({
16381
16424
  name: "MEditorViewerMenu",
@@ -16502,7 +16545,6 @@
16502
16545
  var ViewerMenu_default = ViewerMenu_vue_vue_type_script_setup_true_lang_default;
16503
16546
  //#endregion
16504
16547
  //#region packages/editor/src/layouts/workspace/viewer/Stage.vue?vue&type=script&setup=true&lang.ts
16505
- init_use_services();
16506
16548
  init_type();
16507
16549
  init_config();
16508
16550
  var Stage_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ (0, vue.defineComponent)({
@@ -16776,7 +16818,6 @@
16776
16818
  var Stage_default = Stage_vue_vue_type_script_setup_true_lang_default;
16777
16819
  //#endregion
16778
16820
  //#region packages/editor/src/layouts/workspace/Breadcrumb.vue?vue&type=script&setup=true&lang.ts
16779
- init_use_services();
16780
16821
  var _hoisted_1$44 = {
16781
16822
  key: 0,
16782
16823
  class: "m-editor-breadcrumb-ellipsis"
@@ -16889,7 +16930,6 @@
16889
16930
  var Breadcrumb_default = Breadcrumb_vue_vue_type_script_setup_true_lang_default;
16890
16931
  //#endregion
16891
16932
  //#region packages/editor/src/layouts/workspace/Workspace.vue?vue&type=script&setup=true&lang.ts
16892
- init_use_services();
16893
16933
  var _hoisted_1$43 = { class: "m-editor-workspace" };
16894
16934
  var Workspace_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ (0, vue.defineComponent)({
16895
16935
  name: "MEditorWorkspace",
@@ -16983,6 +17023,7 @@
16983
17023
  async setCodeDsl(codeDsl) {
16984
17024
  this.state.codeDsl = codeDsl;
16985
17025
  this.emit("code-dsl-change", this.state.codeDsl);
17026
+ this.emit("change", this.state.codeDsl);
16986
17027
  }
16987
17028
  /**
16988
17029
  * 获取活动的代码块dsl数据源(默认从dsl中的codeBlocks字段读取)
@@ -17059,6 +17100,7 @@
17059
17100
  this.lastPushedHistoryId = (step ? history_default.push("codeBlock", step, id) : null)?.uuid ?? null;
17060
17101
  }
17061
17102
  this.emit("addOrUpdate", id, codeDsl[id]);
17103
+ this.emit("change", this.getCodeDsl());
17062
17104
  }
17063
17105
  /**
17064
17106
  * 根据代码块id数组获取代码dsl
@@ -17156,6 +17198,7 @@
17156
17198
  }
17157
17199
  this.emit("remove", id);
17158
17200
  });
17201
+ this.emit("change", this.getCodeDsl());
17159
17202
  }
17160
17203
  /**
17161
17204
  * 下列 *AndGetHistoryId 方法与对应的写入方法行为完全一致,
@@ -17571,6 +17614,7 @@
17571
17614
  this.lastPushedHistoryId = (step ? history_default.push("dataSource", step, newConfig.id) : null)?.uuid ?? null;
17572
17615
  }
17573
17616
  this.emit("add", newConfig);
17617
+ this.emit("change", this.get("dataSources"));
17574
17618
  return newConfig;
17575
17619
  }
17576
17620
  /**
@@ -17601,6 +17645,7 @@
17601
17645
  oldConfig,
17602
17646
  changeRecords
17603
17647
  });
17648
+ this.emit("change", this.get("dataSources"));
17604
17649
  return newConfig;
17605
17650
  }
17606
17651
  /**
@@ -17625,6 +17670,7 @@
17625
17670
  this.lastPushedHistoryId = (step ? history_default.push("dataSource", step, id) : null)?.uuid ?? null;
17626
17671
  }
17627
17672
  this.emit("remove", id);
17673
+ this.emit("change", this.get("dataSources"));
17628
17674
  }
17629
17675
  /**
17630
17676
  * 下列 *AndGetHistoryId 方法与对应的 add / update / remove 行为完全一致,
@@ -19161,7 +19207,6 @@
19161
19207
  //#endregion
19162
19208
  //#region packages/editor/src/fields/CodeSelect.vue?vue&type=script&setup=true&lang.ts
19163
19209
  init_lodash();
19164
- init_use_services();
19165
19210
  var CodeSelect_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ (0, vue.defineComponent)({
19166
19211
  name: "MFieldsCodeSelect",
19167
19212
  __name: "CodeSelect",
@@ -19394,7 +19439,6 @@
19394
19439
  //#region packages/editor/src/fields/CodeSelectCol.vue?vue&type=script&setup=true&lang.ts
19395
19440
  init_lodash();
19396
19441
  init_Icon();
19397
- init_use_services();
19398
19442
  init_type();
19399
19443
  var _hoisted_1$42 = { class: "m-fields-code-select-col" };
19400
19444
  var _hoisted_2$11 = { class: "code-select-container" };
@@ -19572,7 +19616,6 @@
19572
19616
  var CodeSelectCol_default = CodeSelectCol_vue_vue_type_script_setup_true_lang_default;
19573
19617
  //#endregion
19574
19618
  //#region packages/editor/src/fields/DataSourceFields.vue?vue&type=script&setup=true&lang.ts
19575
- init_use_services();
19576
19619
  var _hoisted_1$41 = { class: "m-editor-data-source-fields" };
19577
19620
  var _hoisted_2$10 = {
19578
19621
  key: 0,
@@ -19983,7 +20026,6 @@
19983
20026
  var DataSourceFields_default = DataSourceFields_vue_vue_type_script_setup_true_lang_default;
19984
20027
  //#endregion
19985
20028
  //#region packages/editor/src/fields/DataSourceMocks.vue?vue&type=script&setup=true&lang.ts
19986
- init_use_services();
19987
20029
  init_CodeEditor();
19988
20030
  var _hoisted_1$40 = { class: "m-editor-data-source-fields" };
19989
20031
  var _hoisted_2$9 = {
@@ -20419,7 +20461,6 @@
20419
20461
  //#endregion
20420
20462
  //#region packages/editor/src/fields/DataSourceInput.vue?vue&type=script&setup=true&lang.ts
20421
20463
  init_Icon();
20422
- init_use_services();
20423
20464
  var _hoisted_1$38 = { style: {
20424
20465
  "display": "flex",
20425
20466
  "flex-direction": "column",
@@ -20687,7 +20728,6 @@
20687
20728
  //#endregion
20688
20729
  //#region packages/editor/src/fields/DataSourceSelect.vue?vue&type=script&setup=true&lang.ts
20689
20730
  init_Icon();
20690
- init_use_services();
20691
20731
  init_type();
20692
20732
  var _hoisted_1$37 = { class: "m-fields-data-source-select" };
20693
20733
  var DataSourceSelect_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ (0, vue.defineComponent)({
@@ -20791,7 +20831,6 @@
20791
20831
  //#endregion
20792
20832
  //#region packages/editor/src/fields/DataSourceMethodSelect.vue?vue&type=script&setup=true&name=true&lang.ts
20793
20833
  init_Icon();
20794
- init_use_services();
20795
20834
  init_type();
20796
20835
  var _hoisted_1$36 = { class: "m-fields-data-source-method-select" };
20797
20836
  var _hoisted_2$6 = { class: "data-source-method-select-container" };
@@ -20991,7 +21030,6 @@
20991
21030
  //#endregion
20992
21031
  //#region packages/editor/src/fields/DataSourceFieldSelect/FieldSelect.vue?vue&type=script&setup=true&lang.ts
20993
21032
  init_Icon();
20994
- init_use_services();
20995
21033
  init_type();
20996
21034
  var _hoisted_1$34 = { class: "m-editor-data-source-field-select" };
20997
21035
  var FieldSelect_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ (0, vue.defineComponent)({
@@ -21182,7 +21220,6 @@
21182
21220
  //#endregion
21183
21221
  //#region packages/editor/src/fields/DataSourceFieldSelect/Index.vue?vue&type=script&setup=true&lang.ts
21184
21222
  init_Icon();
21185
- init_use_services();
21186
21223
  var Index_vue_vue_type_script_setup_true_lang_default$1 = /*@__PURE__*/ (0, vue.defineComponent)({
21187
21224
  name: "MFieldsDataSourceFieldSelect",
21188
21225
  __name: "Index",
@@ -21348,7 +21385,6 @@
21348
21385
  //#endregion
21349
21386
  //#region packages/editor/src/fields/EventSelect.vue?vue&type=script&setup=true&lang.ts
21350
21387
  init_lodash();
21351
- init_use_services();
21352
21388
  var _hoisted_1$33 = { class: "m-fields-event-select" };
21353
21389
  var _hoisted_2$5 = {
21354
21390
  key: 1,
@@ -21950,7 +21986,6 @@
21950
21986
  //#region packages/editor/src/fields/PageFragmentSelect.vue?vue&type=script&setup=true&lang.ts
21951
21987
  init_HistoryDiffDialog();
21952
21988
  init_Icon();
21953
- init_use_services();
21954
21989
  var _hoisted_1$30 = { class: "m-fields-page-fragment-select" };
21955
21990
  var _hoisted_2$3 = { class: "page-fragment-select-container" };
21956
21991
  var PageFragmentSelect_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ (0, vue.defineComponent)({
@@ -22031,7 +22066,6 @@
22031
22066
  var PageFragmentSelect_default = PageFragmentSelect_vue_vue_type_script_setup_true_lang_default;
22032
22067
  //#endregion
22033
22068
  //#region packages/editor/src/fields/DisplayConds.vue?vue&type=script&setup=true&lang.ts
22034
- init_use_services();
22035
22069
  var DisplayConds_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ (0, vue.defineComponent)({
22036
22070
  name: "m-fields-display-conds",
22037
22071
  __name: "DisplayConds",
@@ -22193,7 +22227,6 @@
22193
22227
  var DisplayConds_default = DisplayConds_vue_vue_type_script_setup_true_lang_default;
22194
22228
  //#endregion
22195
22229
  //#region packages/editor/src/fields/CondOpSelect.vue?vue&type=script&setup=true&lang.ts
22196
- init_use_services();
22197
22230
  var CondOpSelect_vue_vue_type_script_setup_true_lang_default = /*@__PURE__*/ (0, vue.defineComponent)({
22198
22231
  name: "MFieldsCondOpSelect",
22199
22232
  __name: "CondOpSelect",
@@ -24218,7 +24251,6 @@
24218
24251
  //#endregion
24219
24252
  //#region packages/editor/src/fields/UISelect.vue?vue&type=script&setup=true&lang.ts
24220
24253
  init_lodash();
24221
- init_use_services();
24222
24254
  var _hoisted_1 = {
24223
24255
  key: 1,
24224
24256
  class: "m-fields-ui-select",