@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.
- package/dist/es/components/CompareForm.vue_vue_type_script_setup_true_lang.js +7 -9
- package/dist/es/layouts/history-list/BucketTab.vue_vue_type_script_setup_true_lang.js +7 -4
- package/dist/es/layouts/history-list/HistoryDiffDialog.vue_vue_type_script_setup_true_lang.js +21 -5
- package/dist/es/layouts/history-list/HistoryListPanel.vue_vue_type_script_setup_true_lang.js +3 -3
- package/dist/es/layouts/history-list/useHistoryRevert.js +31 -25
- package/dist/es/services/codeBlock.js +3 -0
- package/dist/es/services/dataSource.js +3 -0
- package/dist/es/services/editor.js +52 -0
- package/dist/tmagic-editor.umd.cjs +131 -99
- package/package.json +7 -7
- package/types/index.d.ts +137 -20
|
@@ -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
|
-
|
|
8371
|
-
|
|
8372
|
-
|
|
8373
|
-
|
|
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 = {
|
|
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.
|
|
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: {
|
|
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
|
|
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: {
|
|
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 =
|
|
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), {
|
|
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 = (
|
|
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(
|
|
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",
|