@tmagic/editor 1.8.0-beta.8 → 1.8.0-manmanyu.8
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/Editor.vue_vue_type_script_setup_true_lang.js +13 -3
- package/dist/es/components/CompareForm.vue_vue_type_script_setup_true_lang.js +1 -4
- package/dist/es/components/ContentMenu.vue_vue_type_script_setup_true_lang.js +11 -4
- package/dist/es/components/FloatingBox.vue_vue_type_script_setup_true_lang.js +9 -4
- package/dist/es/fields/Code.vue_vue_type_script_setup_true_lang.js +4 -1
- package/dist/es/fields/CodeLink.vue_vue_type_script_setup_true_lang.js +4 -1
- package/dist/es/fields/CodeSelect.vue_vue_type_script_setup_true_lang.js +68 -43
- package/dist/es/fields/CodeSelectCol.vue_vue_type_script_setup_true_lang.js +5 -1
- package/dist/es/fields/CondOpSelect.vue_vue_type_script_setup_true_lang.js +4 -1
- package/dist/es/fields/DataSourceFieldSelect/Index.vue_vue_type_script_setup_true_lang.js +10 -7
- package/dist/es/fields/DataSourceFields.vue_vue_type_script_setup_true_lang.js +4 -1
- package/dist/es/fields/DataSourceInput.vue_vue_type_script_setup_true_lang.js +4 -1
- package/dist/es/fields/DataSourceMethodSelect.vue_vue_type_script_setup_true_name_true_lang.js +4 -1
- package/dist/es/fields/DataSourceMethods.vue_vue_type_script_setup_true_lang.js +4 -1
- package/dist/es/fields/DataSourceMocks.vue_vue_type_script_setup_true_lang.js +4 -1
- package/dist/es/fields/DataSourceSelect.vue_vue_type_script_setup_true_lang.js +4 -1
- package/dist/es/fields/DisplayConds.vue_vue_type_script_setup_true_lang.js +8 -2
- package/dist/es/fields/EventSelect.vue_vue_type_script_setup_true_lang.js +101 -64
- package/dist/es/fields/KeyValue.vue_vue_type_script_setup_true_lang.js +4 -1
- package/dist/es/fields/PageFragmentSelect.vue_vue_type_script_setup_true_lang.js +4 -1
- package/dist/es/fields/StyleSetter/Index.vue_vue_type_script_setup_true_lang.js +5 -4
- package/dist/es/fields/StyleSetter/components/BackgroundPosition.vue_vue_type_script_setup_true_lang.js +4 -1
- package/dist/es/fields/StyleSetter/components/Border.vue_vue_type_script_setup_true_lang.js +1 -1
- package/dist/es/fields/StyleSetter/icons/align-items/Center.js +31 -0
- package/dist/es/fields/StyleSetter/icons/align-items/FlexEnd.js +31 -0
- package/dist/es/fields/StyleSetter/icons/align-items/FlexStart.js +31 -0
- package/dist/es/fields/StyleSetter/icons/align-items/SpaceAround.js +50 -0
- package/dist/es/fields/StyleSetter/icons/align-items/SpaceBetween.js +50 -0
- package/dist/es/fields/StyleSetter/icons/background-repeat/NoRepeat.js +6 -6
- package/dist/es/fields/StyleSetter/icons/background-repeat/Repeat.js +5 -2
- package/dist/es/fields/StyleSetter/icons/background-repeat/RepeatX.js +28 -5
- package/dist/es/fields/StyleSetter/icons/background-repeat/RepeatY.js +31 -5
- package/dist/es/fields/StyleSetter/icons/flex-direction/Column.js +10 -2
- package/dist/es/fields/StyleSetter/icons/flex-direction/ColumnReverse.js +10 -2
- package/dist/es/fields/StyleSetter/icons/flex-direction/Row.js +10 -2
- package/dist/es/fields/StyleSetter/icons/flex-direction/RowReverse.js +10 -2
- package/dist/es/fields/StyleSetter/icons/justify-content/Center.js +16 -2
- package/dist/es/fields/StyleSetter/icons/justify-content/FlexEnd.js +18 -2
- package/dist/es/fields/StyleSetter/icons/justify-content/FlexStart.js +18 -2
- package/dist/es/fields/StyleSetter/icons/justify-content/SpaceAround.js +36 -2
- package/dist/es/fields/StyleSetter/icons/justify-content/SpaceBetween.js +32 -2
- package/dist/es/fields/StyleSetter/pro/Background.vue_vue_type_script_setup_true_lang.js +11 -6
- package/dist/es/fields/StyleSetter/pro/Font.vue_vue_type_script_setup_true_lang.js +6 -3
- package/dist/es/fields/StyleSetter/pro/Layout.vue_vue_type_script_setup_true_lang.js +82 -46
- package/dist/es/fields/UISelect.vue_vue_type_script_setup_true_lang.js +4 -1
- package/dist/es/icons/DatasourceIcon.js +17 -0
- package/dist/es/index.js +2 -2
- package/dist/es/layouts/Framework.vue_vue_type_script_setup_true_lang.js +14 -10
- package/dist/es/layouts/NavMenu.vue_vue_type_script_setup_true_lang.js +2 -2
- package/dist/es/layouts/history-list/HistoryListPanel.vue_vue_type_script_setup_true_lang.js +18 -28
- package/dist/es/layouts/history-list/useHistoryList.js +4 -4
- package/dist/es/layouts/history-list/useHistoryRevert.js +6 -6
- package/dist/es/services/codeBlock.js +28 -32
- package/dist/es/services/dataSource.js +34 -43
- package/dist/es/services/editor.js +26 -31
- package/dist/es/services/history.js +392 -259
- package/dist/es/style.css +294 -37
- package/dist/es/utils/const.js +1 -1
- package/dist/es/utils/history.js +47 -35
- package/dist/es/utils/props.js +137 -31
- package/dist/style.css +294 -37
- package/dist/themes/magic-admin.css +2316 -0
- package/dist/tmagic-editor.umd.cjs +1665 -880
- package/package.json +7 -7
- package/src/Editor.vue +13 -1
- package/src/components/ContentMenu.vue +10 -2
- package/src/components/FloatingBox.vue +13 -2
- package/src/editorProps.ts +9 -0
- package/src/fields/CodeSelect.vue +51 -40
- package/src/fields/CodeSelectCol.vue +1 -0
- package/src/fields/DataSourceFieldSelect/Index.vue +14 -5
- package/src/fields/DisplayConds.vue +4 -1
- package/src/fields/EventSelect.vue +58 -32
- package/src/fields/StyleSetter/Index.vue +1 -4
- package/src/fields/StyleSetter/components/Border.vue +1 -1
- package/src/fields/StyleSetter/icons/align-items/Center.vue +19 -0
- package/src/fields/StyleSetter/icons/align-items/FlexEnd.vue +19 -0
- package/src/fields/StyleSetter/icons/align-items/FlexStart.vue +19 -0
- package/src/fields/StyleSetter/icons/align-items/SpaceAround.vue +34 -0
- package/src/fields/StyleSetter/icons/align-items/SpaceBetween.vue +34 -0
- package/src/fields/StyleSetter/icons/align-items/index copy.ts +5 -0
- package/src/fields/StyleSetter/icons/align-items/index.ts +5 -0
- package/src/fields/StyleSetter/icons/background-repeat/NoRepeat.vue +20 -4
- package/src/fields/StyleSetter/icons/background-repeat/Repeat.vue +10 -28
- package/src/fields/StyleSetter/icons/background-repeat/RepeatX.vue +4 -5
- package/src/fields/StyleSetter/icons/background-repeat/RepeatY.vue +4 -5
- package/src/fields/StyleSetter/icons/flex-direction/Column.vue +4 -3
- package/src/fields/StyleSetter/icons/flex-direction/ColumnReverse.vue +4 -3
- package/src/fields/StyleSetter/icons/flex-direction/Row.vue +4 -3
- package/src/fields/StyleSetter/icons/flex-direction/RowReverse.vue +4 -3
- package/src/fields/StyleSetter/icons/justify-content/Center.vue +5 -2
- package/src/fields/StyleSetter/icons/justify-content/FlexEnd.vue +15 -2
- package/src/fields/StyleSetter/icons/justify-content/FlexStart.vue +15 -2
- package/src/fields/StyleSetter/icons/justify-content/SpaceAround.vue +28 -3
- package/src/fields/StyleSetter/icons/justify-content/SpaceBetween.vue +28 -2
- package/src/fields/StyleSetter/pro/Background.vue +11 -5
- package/src/fields/StyleSetter/pro/Font.vue +3 -3
- package/src/fields/StyleSetter/pro/Layout.vue +105 -28
- package/src/fields/UISelect.vue +1 -1
- package/src/icons/DatasourceIcon.vue +7 -0
- package/src/layouts/Framework.vue +7 -1
- package/src/theme/code-block.scss +37 -0
- package/src/theme/common/var.scss +1 -1
- package/src/theme/component-list-panel.scss +2 -2
- package/src/theme/data-source-field.scss +4 -0
- package/src/theme/display-conds.scss +11 -0
- package/src/theme/event.scss +55 -1
- package/src/theme/history-list-panel.scss +9 -9
- package/src/theme/props-panel.scss +2 -1
- package/src/theme/style-setter/border.scss +14 -5
- package/src/theme/theme.scss +1 -0
- package/src/theme/themes/magic-admin/index.scss +125 -0
- package/src/utils/const.ts +2 -1
- package/src/utils/props.ts +138 -9
- package/types/index.d.ts +310 -315
package/types/index.d.ts
CHANGED
|
@@ -1011,152 +1011,136 @@ declare class UndoRedo<T = any> {
|
|
|
1011
1011
|
//#endregion
|
|
1012
1012
|
//#region temp/packages/editor/src/services/history.d.ts
|
|
1013
1013
|
declare const canUsePluginMethods$5: {
|
|
1014
|
-
sync: readonly ["push", "undo", "redo"];
|
|
1014
|
+
sync: readonly ["push", "pushCodeBlock", "pushDataSource", "undoCodeBlock", "redoCodeBlock", "undoDataSource", "redoDataSource", "undo", "redo"];
|
|
1015
1015
|
};
|
|
1016
1016
|
type SyncMethodName$3 = Writable<(typeof canUsePluginMethods$5)['sync']>;
|
|
1017
1017
|
declare class History extends BaseService {
|
|
1018
1018
|
state: {
|
|
1019
|
-
|
|
1020
|
-
|
|
1021
|
-
|
|
1022
|
-
|
|
1023
|
-
|
|
1024
|
-
|
|
1025
|
-
stepNames: Record<string, string>;
|
|
1019
|
+
pageId?: Id | undefined;
|
|
1020
|
+
pageSteps: Record<Id, UndoRedo<StepValue>>;
|
|
1021
|
+
canRedo: boolean;
|
|
1022
|
+
canUndo: boolean;
|
|
1023
|
+
codeBlockState: Record<Id, UndoRedo<CodeBlockStepValue>>;
|
|
1024
|
+
dataSourceState: Record<Id, UndoRedo<DataSourceStepValue>>;
|
|
1026
1025
|
};
|
|
1027
1026
|
constructor();
|
|
1028
|
-
/**
|
|
1029
|
-
* 注册一个扩展历史类型,使其可与内置 `page` / `codeBlock` / `dataSource` 一样走统一的
|
|
1030
|
-
* {@link push} / {@link undo} / {@link redo}(按 id 分栈、独立 undo/redo)。
|
|
1031
|
-
*
|
|
1032
|
-
* @param stepType 自定义历史类型标识(勿与内置类型重名)
|
|
1033
|
-
* @param options.event push/undo/redo 后派发的事件名,缺省为 `${stepType}-history-change`
|
|
1034
|
-
* @param options.name 历史面板中的展示名称(tab / 分组标题等),缺省回退到 stepType 本身
|
|
1035
|
-
*/
|
|
1036
|
-
registerStepType(stepType: string, options?: {
|
|
1037
|
-
event?: string;
|
|
1038
|
-
name?: string;
|
|
1039
|
-
}): void;
|
|
1040
|
-
/**
|
|
1041
|
-
* 读取指定历史类型的展示名称(用于历史面板 tab / 分组标题等)。
|
|
1042
|
-
* 未登记名称时回退到 stepType 本身。
|
|
1043
|
-
*/
|
|
1044
|
-
getStepName(stepType: HistoryStepType): string;
|
|
1045
|
-
/**
|
|
1046
|
-
* 设置指定历史类型的展示名称(用于历史面板 tab / 分组标题等)。
|
|
1047
|
-
* 内置 `page` / `codeBlock` / `dataSource` 也可在此覆盖默认中文名。
|
|
1048
|
-
*/
|
|
1049
|
-
setStepName(stepType: HistoryStepType, name: string): void;
|
|
1050
1027
|
reset(): void;
|
|
1028
|
+
resetPage(): void;
|
|
1029
|
+
changePage(page: MPage | MPageFragment): void;
|
|
1051
1030
|
resetState(): void;
|
|
1052
1031
|
/**
|
|
1053
|
-
*
|
|
1032
|
+
* 为指定页面 / 页面片种入一条「初始基线」记录(如加载 DSL 时的「初始 / 加载」基线)。
|
|
1054
1033
|
*
|
|
1055
|
-
* 该记录是一条 `opType: 'initial'` 的
|
|
1034
|
+
* 该记录是一条 `opType: 'initial'` 的 {@link StepValue},作为页面历史栈 **index 0 的固定底线**:
|
|
1056
1035
|
* - 它是一条真实入栈的 step(随栈一起持久化),但被钉为撤销/回滚的下限——cursor 永不低于它,
|
|
1057
|
-
* 因此不会被 undo / goto / revert 触达(详见 {@link undo} / {@link
|
|
1058
|
-
* - 历史面板把它过滤出分组列表(见 {@link
|
|
1036
|
+
* 因此不会被 undo / goto / revert 触达(详见 {@link undo} / {@link setCanUndoRedo});
|
|
1037
|
+
* - 历史面板把它过滤出分组列表(见 {@link getPageHistoryGroups}),改由底部「初始」行展示。
|
|
1059
1038
|
*
|
|
1060
|
-
*
|
|
1061
|
-
*
|
|
1062
|
-
* @param stepType 历史类型
|
|
1063
|
-
* @param id 目标栈 id(page 为 pageId,其余类型为对应资源 id)
|
|
1064
|
-
* @param options 基线展示信息(名称 / 描述 / 来源)
|
|
1039
|
+
* 仅当目标页面栈为空时种入(保证 initial 一定位于 index 0);已存在 initial 底线时默认不重复种入,
|
|
1040
|
+
* 传 `force=true` 且栈为空时按新基线种入。
|
|
1065
1041
|
*/
|
|
1066
|
-
|
|
1042
|
+
setPageMarker(pageId: Id, options?: {
|
|
1067
1043
|
name?: string;
|
|
1068
1044
|
description?: string;
|
|
1069
1045
|
source?: HistoryOpSource;
|
|
1070
|
-
extra?: Record<string, any>;
|
|
1071
1046
|
}): StepValue | null;
|
|
1072
1047
|
/**
|
|
1073
|
-
*
|
|
1074
|
-
*
|
|
1048
|
+
* 读取指定页面(缺省当前活动页)的初始基线 step(页面栈 index 0 且 `opType: 'initial'`);
|
|
1049
|
+
* 不存在时返回 undefined。
|
|
1075
1050
|
*/
|
|
1076
|
-
|
|
1051
|
+
getPageMarker(pageId?: Id): StepValue | undefined;
|
|
1077
1052
|
/**
|
|
1078
|
-
*
|
|
1079
|
-
* 按 `stepType` 选择目标栈类型,按 `id`(必填)选择具体栈,按需建栈后入栈,并派发对应的历史变更事件
|
|
1080
|
-
* (`page` 为 `change`,其余见 {@link registerStepType}),回调签名统一为 `(id, step)`。
|
|
1081
|
-
*
|
|
1082
|
-
* 跨页 / 跨资源操作(如 `moveToContainer` 把节点搬到其它页)必须显式传入目标 id,
|
|
1083
|
-
* 否则无法落到正确的栈。step 可由 `createStackStep` 等构造后传入。
|
|
1053
|
+
* 把一条步骤推入指定页面的栈;不指定 pageId 时落到当前活动页。
|
|
1084
1054
|
*
|
|
1085
|
-
*
|
|
1086
|
-
*
|
|
1087
|
-
|
|
1088
|
-
|
|
1089
|
-
|
|
1090
|
-
|
|
1091
|
-
|
|
1092
|
-
|
|
1093
|
-
|
|
1094
|
-
* 撤销指定历史栈的最近一次变更。统一入口,所有类型行为一致:
|
|
1095
|
-
* 按 `id`(必填)+ `stepType` 定位栈,不会越过 index 0 的 initial 基线(所有类型同等适用),
|
|
1096
|
-
* 仅在确有可撤销 step 时派发对应的历史变更事件(`page` 为 `change`,回调签名 `(id, step)`)。
|
|
1097
|
-
*
|
|
1098
|
-
* @param stepType 历史类型
|
|
1099
|
-
* @param id 目标栈 id(page 为 pageId,其余类型为对应资源 id),必填
|
|
1055
|
+
* 跨页操作(例如 `moveToContainer` 把节点搬到其它页)必须显式传入 `pageId`,
|
|
1056
|
+
* 否则会把记录错误地落到操作发起页 / 当前激活页,破坏目标页 / 源页的撤销栈语义。
|
|
1057
|
+
*/
|
|
1058
|
+
push(state: StepValue, pageId?: Id): StepValue | null;
|
|
1059
|
+
/** 读取指定页面(缺省当前活动页)历史栈当前游标所在的 step(cursor - 1);无则返回 null。 */
|
|
1060
|
+
getCurrentPageStep(pageId?: Id): StepValue | null;
|
|
1061
|
+
/**
|
|
1062
|
+
* 用 `state` 替换指定页面栈当前游标所在的 step(并丢弃其后的重做尾部),游标不变。
|
|
1063
|
+
* 用于「连续 set root 记录合并」等就地替换最新一条的场景;替换成功后按需刷新 / 通知。
|
|
1100
1064
|
*/
|
|
1101
|
-
|
|
1102
|
-
undo(stepType: 'codeBlock', id: Id): CodeBlockStepValue | null;
|
|
1103
|
-
undo(stepType: 'dataSource', id: Id): DataSourceStepValue | null;
|
|
1104
|
-
undo<T extends BaseStepValue>(stepType: string, id: Id): T | null;
|
|
1065
|
+
replaceCurrentPageStep(state: StepValue, pageId?: Id): StepValue | null;
|
|
1105
1066
|
/**
|
|
1106
|
-
*
|
|
1067
|
+
* 推入一条代码块变更记录(与页面/节点完全无关),按 `codeBlockId` 维度独立一份 UndoRedo 栈。
|
|
1107
1068
|
*
|
|
1108
|
-
*
|
|
1109
|
-
*
|
|
1069
|
+
* - 新增:oldContent = null,newContent = 新内容
|
|
1070
|
+
* - 更新:oldContent / newContent 都为对应内容
|
|
1071
|
+
* - 删除:newContent = null,oldContent = 删除前内容
|
|
1072
|
+
* - `changeRecords` 来自 form 端,撤销/重做时若有则按 propPath 局部覆盖;缺省才退化为整内容替换。
|
|
1073
|
+
* - 不直接驱动 codeBlockService,调用方负责实际写回。
|
|
1074
|
+
*/
|
|
1075
|
+
pushCodeBlock(codeBlockId: Id, payload: {
|
|
1076
|
+
oldContent: CodeBlockContent | null;
|
|
1077
|
+
newContent: CodeBlockContent | null;
|
|
1078
|
+
changeRecords?: ChangeRecord[]; /** 可选的人类可读描述(如「修改按钮颜色」),仅用于历史面板展示。 */
|
|
1079
|
+
historyDescription?: string; /** 可选的操作途径(配置面板 / 菜单 / 接口等),仅用于历史面板展示与埋点。 */
|
|
1080
|
+
source?: HistoryOpSource;
|
|
1081
|
+
}): CodeBlockStepValue | null;
|
|
1082
|
+
/**
|
|
1083
|
+
* 推入一条数据源变更记录(与页面/节点完全无关),按 `dataSourceId` 维度独立一份 UndoRedo 栈。
|
|
1084
|
+
* 行为同 pushCodeBlock(新增 oldSchema=null;删除 newSchema=null)。
|
|
1110
1085
|
*/
|
|
1111
|
-
|
|
1112
|
-
|
|
1113
|
-
|
|
1114
|
-
|
|
1086
|
+
pushDataSource(dataSourceId: Id, payload: {
|
|
1087
|
+
oldSchema: DataSourceSchema | null;
|
|
1088
|
+
newSchema: DataSourceSchema | null;
|
|
1089
|
+
changeRecords?: ChangeRecord[]; /** 可选的人类可读描述,仅用于历史面板展示。 */
|
|
1090
|
+
historyDescription?: string; /** 可选的操作途径(配置面板 / 菜单 / 接口等),仅用于历史面板展示与埋点。 */
|
|
1091
|
+
source?: HistoryOpSource;
|
|
1092
|
+
}): DataSourceStepValue | null;
|
|
1093
|
+
/** 撤销指定代码块的最近一次变更。 */
|
|
1094
|
+
undoCodeBlock(codeBlockId: Id): CodeBlockStepValue | null;
|
|
1095
|
+
/** 重做指定代码块的下一次变更。 */
|
|
1096
|
+
redoCodeBlock(codeBlockId: Id): CodeBlockStepValue | null;
|
|
1097
|
+
/** 是否可对指定代码块撤销。 */
|
|
1098
|
+
canUndoCodeBlock(codeBlockId: Id): boolean;
|
|
1099
|
+
/** 是否可对指定代码块重做。 */
|
|
1100
|
+
canRedoCodeBlock(codeBlockId: Id): boolean;
|
|
1101
|
+
/** 撤销指定数据源的最近一次变更。 */
|
|
1102
|
+
undoDataSource(dataSourceId: Id): DataSourceStepValue | null;
|
|
1103
|
+
/** 重做指定数据源的下一次变更。 */
|
|
1104
|
+
redoDataSource(dataSourceId: Id): DataSourceStepValue | null;
|
|
1105
|
+
/** 是否可对指定数据源撤销。 */
|
|
1106
|
+
canUndoDataSource(dataSourceId: Id): boolean;
|
|
1107
|
+
/** 是否可对指定数据源重做。 */
|
|
1108
|
+
canRedoDataSource(dataSourceId: Id): boolean;
|
|
1109
|
+
undo(): StepValue | null;
|
|
1110
|
+
redo(): StepValue | null;
|
|
1111
|
+
destroy(): void;
|
|
1115
1112
|
/**
|
|
1116
|
-
*
|
|
1117
|
-
*
|
|
1118
|
-
* @param id 目标栈 id;缺省 / 无效时返回 false
|
|
1113
|
+
* 清空指定页面(缺省当前活动页)的历史记录栈。
|
|
1114
|
+
* 仅删除撤销/重做记录,不会改动当前 DSL;清空后该页将无法再撤销/重做之前的操作。
|
|
1119
1115
|
*/
|
|
1120
|
-
|
|
1116
|
+
clearPage(pageId?: Id): void;
|
|
1121
1117
|
/**
|
|
1122
|
-
*
|
|
1123
|
-
*
|
|
1124
|
-
* @param id 目标栈 id;缺省 / 无效时返回 false
|
|
1118
|
+
* 清空数据源历史记录栈:传入 `dataSourceId` 仅清空该数据源,缺省清空全部数据源。
|
|
1119
|
+
* 仅删除撤销/重做记录,不会改动数据源本身。
|
|
1125
1120
|
*/
|
|
1126
|
-
|
|
1127
|
-
/** 读取指定页面历史栈当前游标所在的 step(cursor - 1);无则返回 null。 */
|
|
1128
|
-
getCurrentPageStep(pageId: Id): StepValue | null;
|
|
1121
|
+
clearDataSource(dataSourceId?: Id): void;
|
|
1129
1122
|
/**
|
|
1130
|
-
*
|
|
1131
|
-
*
|
|
1123
|
+
* 清空代码块历史记录栈:传入 `codeBlockId` 仅清空该代码块,缺省清空全部代码块。
|
|
1124
|
+
* 仅删除撤销/重做记录,不会改动代码块本身。
|
|
1132
1125
|
*/
|
|
1133
|
-
|
|
1134
|
-
destroy(): void;
|
|
1126
|
+
clearCodeBlock(codeBlockId?: Id): void;
|
|
1135
1127
|
/**
|
|
1136
|
-
*
|
|
1137
|
-
*
|
|
1138
|
-
*
|
|
1139
|
-
*
|
|
1140
|
-
* 仅删除撤销/重做记录,不会改动 DSL / 代码块 / 数据源本身。清空时会**保留各栈原有的
|
|
1141
|
-
* initial 基线**(文案 / 来源),无基线时清空成空栈。清空后派发 `clear`(签名 `(id, stepType)`)。
|
|
1142
|
-
*
|
|
1143
|
-
* @param stepType 历史类型
|
|
1144
|
-
* @param id 目标栈 id;缺省表示清空该类型下全部栈
|
|
1128
|
+
* 标记「整份 DSL 已保存」:把页面 / 代码块 / 数据源所有栈当前游标所在的记录都标为 `saved`。
|
|
1129
|
+
* 适用于「整体落库」场景;若只保存了其中一类,请改用更细粒度的
|
|
1130
|
+
* {@link markPageSaved} / {@link markCodeBlockSaved} / {@link markDataSourceSaved}。
|
|
1145
1131
|
*/
|
|
1146
|
-
|
|
1132
|
+
markSaved(): void;
|
|
1147
1133
|
/**
|
|
1148
|
-
*
|
|
1149
|
-
*
|
|
1150
|
-
* - 传入 `id`:仅标记 `stepType` 下该 id 对应的栈,派发 `mark-saved` 且 `kind` 为 `stepType`。
|
|
1151
|
-
*
|
|
1152
|
-
* 同一栈内任意时刻最多只有一条记录为 `saved`;从 IndexedDB 恢复时游标会被定位到最近一条已保存记录之后。
|
|
1153
|
-
*
|
|
1154
|
-
* @param stepType 历史类型
|
|
1155
|
-
* @param id 目标栈 id;缺省表示标记全部类型 / 全部栈
|
|
1134
|
+
* 标记指定页面(缺省为当前活动页)的历史栈当前记录为已保存。
|
|
1135
|
+
* 仅影响该页面自己的栈,不波及代码块 / 数据源 / 其它页面。
|
|
1156
1136
|
*/
|
|
1157
|
-
|
|
1137
|
+
markPageSaved(pageId?: Id): void;
|
|
1138
|
+
/** 标记指定代码块的历史栈当前记录为已保存,仅影响该代码块自己的栈。 */
|
|
1139
|
+
markCodeBlockSaved(codeBlockId: Id): void;
|
|
1140
|
+
/** 标记指定数据源的历史栈当前记录为已保存,仅影响该数据源自己的栈。 */
|
|
1141
|
+
markDataSourceSaved(dataSourceId: Id): void;
|
|
1158
1142
|
/**
|
|
1159
|
-
* 把当前内存中的全部历史栈(页面 / 代码块 /
|
|
1143
|
+
* 把当前内存中的全部历史栈(页面 / 代码块 / 数据源)序列化后写入本地 IndexedDB。
|
|
1160
1144
|
*
|
|
1161
1145
|
* - 每个 UndoRedo 栈连同其游标、容量一并保存,恢复后可继续 undo/redo;
|
|
1162
1146
|
* - `key` 用于区分不同活动页 / 项目(同一 store 下可保存多份快照),缺省为 `default`;
|
|
@@ -1168,90 +1152,93 @@ declare class History extends BaseService {
|
|
|
1168
1152
|
* 从本地 IndexedDB 读取此前保存的历史快照并重建全部撤销/重做栈。
|
|
1169
1153
|
*
|
|
1170
1154
|
* - 读取到的每个栈都会经 {@link UndoRedo.fromSerialized} 还原(含游标),随后可直接 undo/redo;
|
|
1171
|
-
* -
|
|
1155
|
+
* - 会整体覆盖当前内存中的历史状态,并把活动页恢复为快照中的 pageId;
|
|
1172
1156
|
* - 找不到对应记录时返回 null,且不改动当前状态;
|
|
1173
1157
|
* - 不支持 IndexedDB 的环境(如 SSR)会 reject。
|
|
1174
1158
|
*/
|
|
1175
1159
|
restoreFromIndexedDB(options?: HistoryPersistOptions): Promise<PersistedHistoryState | null>;
|
|
1176
1160
|
/**
|
|
1177
|
-
*
|
|
1178
|
-
*
|
|
1179
|
-
*
|
|
1180
|
-
* 列表按时间正序,最早一步在最前面;`applied` 表示该步骤处于栈游标之前(已应用)。
|
|
1181
|
-
* 供 revert / goto 等按 index 索引步骤的场景使用。通常 UI 应使用
|
|
1182
|
-
* {@link getHistoryGroups} 取已合并分组的版本;本方法仅为兼容/调试保留。
|
|
1183
|
-
*
|
|
1184
|
-
* @param stepType 历史类型
|
|
1185
|
-
* @param id 目标栈 id(page 为 pageId,其余类型为对应资源 id);缺省 / 无效时返回空数组
|
|
1161
|
+
* 取出当前活动页的历史步骤平铺列表(包含已应用 + 已撤销)。
|
|
1162
|
+
* 列表按时间正序,最早一步在最前面。
|
|
1163
|
+
* 通常 UI 应使用 `getPageHistoryGroups` 取已合并分组的版本;本方法仅为兼容/调试保留。
|
|
1186
1164
|
*/
|
|
1187
|
-
|
|
1188
|
-
getStepList(stepType: 'codeBlock', id: Id): HistoryStepEntry<CodeBlockStepValue>[];
|
|
1189
|
-
getStepList(stepType: 'dataSource', id: Id): HistoryStepEntry<DataSourceStepValue>[];
|
|
1190
|
-
getStepList<T extends BaseStepValue>(stepType: HistoryStepType, id?: Id): HistoryStepEntry<T>[];
|
|
1165
|
+
getPageStepList(pageId?: Id): PageHistoryStepEntry[];
|
|
1191
1166
|
/**
|
|
1192
|
-
*
|
|
1193
|
-
*
|
|
1194
|
-
*
|
|
1195
|
-
*
|
|
1196
|
-
* {@link getMarker} 驱动)。各类型行为完全一致,仅 `kind` 与 step 快照类型不同。
|
|
1197
|
-
*
|
|
1198
|
-
* 作用域:
|
|
1199
|
-
* - 传入 `id`:仅取该 id 对应的单个栈(页面历史按活动页查看,传入 pageId);
|
|
1200
|
-
* - 缺省 `id`:遍历该类型下全部栈并汇总(代码块 / 数据源按全部资源分桶展示)。
|
|
1201
|
-
*
|
|
1202
|
-
* @param stepType 历史类型,缺省 `page`
|
|
1203
|
-
* @param id 目标栈 id;缺省表示遍历该类型下全部栈
|
|
1167
|
+
* 取出当前活动页的历史栈,按"目标节点"做相邻合并:
|
|
1168
|
+
* - 连续修改同一节点(单节点 update)的多步合并为一个 group,组内可展开查看每步;
|
|
1169
|
+
* - add / remove / 多节点 update 始终独立成组。
|
|
1170
|
+
* 用于历史面板的"页面"tab 展示。
|
|
1204
1171
|
*/
|
|
1205
|
-
|
|
1206
|
-
getHistoryGroups(stepType: 'codeBlock', id?: Id): HistoryGroup<CodeBlockStepValue>[];
|
|
1207
|
-
getHistoryGroups(stepType: 'dataSource', id?: Id): HistoryGroup<DataSourceStepValue>[];
|
|
1208
|
-
getHistoryGroups<T extends BaseStepValue>(stepType: HistoryStepType, id?: Id): HistoryGroup<T>[];
|
|
1172
|
+
getPageHistoryGroups(pageId?: Id): PageHistoryGroup[];
|
|
1209
1173
|
/**
|
|
1210
|
-
*
|
|
1211
|
-
*
|
|
1212
|
-
* - `id` 缺省或非法、或对应栈不存在时返回 0;
|
|
1213
|
-
* - `stepType` 支持 `page` / `codeBlock` / `dataSource` / 扩展类型。
|
|
1174
|
+
* 取出全部代码块的历史栈,按 codeBlockId 分桶展示。
|
|
1175
|
+
* 同一栈内每条操作记录独立成组,不做相邻 update 合并。
|
|
1214
1176
|
*/
|
|
1215
|
-
|
|
1177
|
+
getCodeBlockHistoryGroups(): StackHistoryGroup<CodeBlockStepValue, 'code-block'>[];
|
|
1216
1178
|
/**
|
|
1217
|
-
*
|
|
1218
|
-
*
|
|
1219
|
-
|
|
1220
|
-
|
|
1221
|
-
|
|
1222
|
-
|
|
1223
|
-
|
|
1224
|
-
|
|
1225
|
-
|
|
1226
|
-
*
|
|
1227
|
-
|
|
1179
|
+
* 读取指定页面历史栈的当前游标(已应用步骤数量)。不传则取当前活动页。
|
|
1180
|
+
* 没有对应栈时返回 0。
|
|
1181
|
+
*/
|
|
1182
|
+
getPageCursor(pageId?: Id): number;
|
|
1183
|
+
/** 读取指定代码块历史栈的当前游标。 */
|
|
1184
|
+
getCodeBlockCursor(codeBlockId: Id): number;
|
|
1185
|
+
/** 读取指定数据源历史栈的当前游标。 */
|
|
1186
|
+
getDataSourceCursor(dataSourceId: Id): number;
|
|
1187
|
+
/**
|
|
1188
|
+
* 取出指定代码块历史栈的平铺步骤列表(含 applied 标记)。供 revert 等按 index 索引步骤使用。
|
|
1189
|
+
*/
|
|
1190
|
+
getCodeBlockStepList(codeBlockId: Id): {
|
|
1191
|
+
step: CodeBlockStepValue;
|
|
1192
|
+
index: number;
|
|
1193
|
+
applied: boolean;
|
|
1194
|
+
}[];
|
|
1195
|
+
/**
|
|
1196
|
+
* 取出指定数据源历史栈的平铺步骤列表(含 applied 标记)。供 revert 等按 index 索引步骤使用。
|
|
1228
1197
|
*/
|
|
1229
|
-
|
|
1198
|
+
getDataSourceStepList(dataSourceId: Id): {
|
|
1199
|
+
step: DataSourceStepValue;
|
|
1200
|
+
index: number;
|
|
1201
|
+
applied: boolean;
|
|
1202
|
+
}[];
|
|
1203
|
+
/**
|
|
1204
|
+
* 按历史记录 uuid 在指定页面(默认当前活动页)的栈中查找其索引。
|
|
1205
|
+
* 找不到时返回 -1。供「按 uuid 回滚」等需要把 uuid 映射回 index 的场景使用。
|
|
1206
|
+
*/
|
|
1207
|
+
getPageStepIndexByUuid(uuid: string, pageId?: Id): number;
|
|
1208
|
+
/**
|
|
1209
|
+
* 按历史记录 uuid 在全部代码块栈中查找其所属 codeBlockId 与索引。
|
|
1210
|
+
* 找不到时返回 null。
|
|
1211
|
+
*/
|
|
1212
|
+
findCodeBlockStepLocationByUuid(uuid: string): {
|
|
1230
1213
|
id: Id;
|
|
1231
1214
|
index: number;
|
|
1232
1215
|
} | null;
|
|
1233
|
-
usePlugin(options: SyncHookPlugin<SyncMethodName$3, History>): void;
|
|
1234
|
-
emit<Name extends keyof HistoryEvents, Param extends HistoryEvents[Name]>(eventName: Name, ...args: Param): boolean;
|
|
1235
1216
|
/**
|
|
1236
|
-
*
|
|
1237
|
-
*
|
|
1217
|
+
* 按历史记录 uuid 在全部数据源栈中查找其所属 dataSourceId 与索引。
|
|
1218
|
+
* 找不到时返回 null。
|
|
1238
1219
|
*/
|
|
1239
|
-
|
|
1220
|
+
findDataSourceStepLocationByUuid(uuid: string): {
|
|
1221
|
+
id: Id;
|
|
1222
|
+
index: number;
|
|
1223
|
+
} | null;
|
|
1240
1224
|
/**
|
|
1241
|
-
*
|
|
1225
|
+
* 取出全部数据源的历史栈,按 dataSourceId 分桶展示。同上,每条操作独立成组。
|
|
1242
1226
|
*/
|
|
1243
|
-
|
|
1244
|
-
|
|
1245
|
-
|
|
1246
|
-
|
|
1247
|
-
|
|
1248
|
-
|
|
1249
|
-
|
|
1227
|
+
getDataSourceHistoryGroups(): StackHistoryGroup<DataSourceStepValue, 'data-source'>[];
|
|
1228
|
+
usePlugin(options: SyncHookPlugin<SyncMethodName$3, History>): void;
|
|
1229
|
+
/**
|
|
1230
|
+
* 取出指定页面的栈;不传 pageId 时按当前活动页取。
|
|
1231
|
+
*
|
|
1232
|
+
* 跨页 push 时如果目标页的栈尚不存在(用户从未进入过该页),会按需创建一条空栈,
|
|
1233
|
+
* 这样切到目标页时 Ctrl+Z 也能撤回该步骤。
|
|
1234
|
+
*/
|
|
1235
|
+
private getUndoRedo;
|
|
1250
1236
|
/**
|
|
1251
1237
|
* 把基础 dbName 与当前 DSL(root app)的 id 拼成最终库名,实现不同应用历史隔离。
|
|
1252
1238
|
* 取不到 app id(如尚未加载 DSL)时退回基础 dbName。
|
|
1253
1239
|
*/
|
|
1254
1240
|
private resolveDbName;
|
|
1241
|
+
private setCanUndoRedo;
|
|
1255
1242
|
}
|
|
1256
1243
|
type HistoryService = History;
|
|
1257
1244
|
declare const _default$44: History;
|
|
@@ -2098,21 +2085,13 @@ interface StepDiffItem<T = unknown> {
|
|
|
2098
2085
|
*
|
|
2099
2086
|
* 泛型 `T` 为 `diff` 中变化内容的快照类型(页面节点 `MNode` / 代码块 `CodeBlockContent` / 数据源 `DataSourceSchema`)。
|
|
2100
2087
|
*/
|
|
2101
|
-
interface BaseStepValue<T = unknown
|
|
2088
|
+
interface BaseStepValue<T = unknown> {
|
|
2102
2089
|
/**
|
|
2103
2090
|
* 历史记录唯一标识(uuid)。入栈时自动写入(若调用方未指定),
|
|
2104
2091
|
* 用于精确定位 / 引用某一条历史记录(如 revert、埋点、跨端同步等)。
|
|
2105
|
-
*
|
|
2092
|
+
* 注意与各自的 `id`(关联的页面 / 代码块 / 数据源 id)区分。
|
|
2106
2093
|
*/
|
|
2107
2094
|
uuid: string;
|
|
2108
|
-
/**
|
|
2109
|
-
* 关联目标信息:`id` 为关联的页面 / 代码块 / 数据源等资源 id(也是历史栈的分组 key),
|
|
2110
|
-
* `name` 为展示名。所有历史类型统一携带。
|
|
2111
|
-
*/
|
|
2112
|
-
data: {
|
|
2113
|
-
name: string;
|
|
2114
|
-
id: Id;
|
|
2115
|
-
};
|
|
2116
2095
|
/** 操作类型:新增 / 删除 / 更新(三类历史记录统一携带)。 */
|
|
2117
2096
|
opType: HistoryOpType;
|
|
2118
2097
|
/**
|
|
@@ -2149,75 +2128,57 @@ interface BaseStepValue<T = unknown, U extends Record<string, any> = {}> {
|
|
|
2149
2128
|
/** 操作人 */
|
|
2150
2129
|
operator?: string;
|
|
2151
2130
|
/** 扩展信息 */
|
|
2152
|
-
extra?:
|
|
2131
|
+
extra?: Record<string, any>;
|
|
2153
2132
|
}
|
|
2154
|
-
|
|
2155
|
-
|
|
2156
|
-
|
|
2157
|
-
|
|
2158
|
-
|
|
2159
|
-
|
|
2160
|
-
|
|
2161
|
-
|
|
2162
|
-
|
|
2163
|
-
|
|
2164
|
-
modifiedNodeIds
|
|
2165
|
-
[key: string]: any;
|
|
2133
|
+
interface StepValue extends BaseStepValue<MNode> {
|
|
2134
|
+
/** 页面信息 */
|
|
2135
|
+
data: {
|
|
2136
|
+
name: string;
|
|
2137
|
+
id: Id;
|
|
2138
|
+
};
|
|
2139
|
+
/** 操作前选中的节点 ID,用于撤销后恢复选择状态 */
|
|
2140
|
+
selectedBefore: Id[];
|
|
2141
|
+
/** 操作后选中的节点 ID,用于重做后恢复选择状态 */
|
|
2142
|
+
selectedAfter: Id[];
|
|
2143
|
+
modifiedNodeIds: Map<Id, Id>;
|
|
2166
2144
|
}
|
|
2167
2145
|
/**
|
|
2168
|
-
*
|
|
2169
|
-
* {@link
|
|
2170
|
-
|
|
2171
|
-
|
|
2172
|
-
|
|
2173
|
-
* 代码块历史记录条目(`diff` 内容为 {@link CodeBlockContent}),按 `data.id`(codeBlock.id)
|
|
2174
|
-
* 分组保存到 historyState.steps.codeBlock。结构与 {@link StepValue} / {@link DataSourceStepValue}
|
|
2175
|
-
* 一致,仅 `diff` 快照类型不同。
|
|
2176
|
-
*/
|
|
2177
|
-
type CodeBlockStepValue = BaseStepValue<CodeBlockContent>;
|
|
2178
|
-
/**
|
|
2179
|
-
* 数据源历史记录条目(`diff` 内容为 {@link DataSourceSchema}),按 `data.id`(dataSource.id)
|
|
2180
|
-
* 分组保存到 historyState.steps.dataSource。结构与 {@link StepValue} / {@link CodeBlockStepValue}
|
|
2181
|
-
* 一致,仅 `diff` 快照类型不同。
|
|
2146
|
+
* 代码块历史记录条目。按 codeBlock.id 分组保存到 historyState.codeBlockState。
|
|
2147
|
+
* 变更内容统一由 `diff`(单项)表达,每项见 {@link StepDiffItem}:
|
|
2148
|
+
* - 新增(opType 'add'):仅 `newSchema`(新内容);
|
|
2149
|
+
* - 更新(opType 'update'):`oldSchema` + `newSchema`,并可带 `changeRecords` 做局部更新;
|
|
2150
|
+
* - 删除(opType 'remove'):仅 `oldSchema`(删除前内容)。
|
|
2182
2151
|
*/
|
|
2183
|
-
|
|
2184
|
-
/**
|
|
2185
|
-
|
|
2186
|
-
|
|
2187
|
-
*/
|
|
2188
|
-
type HistoryStepType = 'page' | 'codeBlock' | 'dataSource' | (string & {});
|
|
2152
|
+
interface CodeBlockStepValue extends BaseStepValue<CodeBlockContent> {
|
|
2153
|
+
/** 关联的代码块 id */
|
|
2154
|
+
id: Id;
|
|
2155
|
+
}
|
|
2189
2156
|
/**
|
|
2190
|
-
*
|
|
2191
|
-
*
|
|
2192
|
-
* -
|
|
2193
|
-
* - `
|
|
2194
|
-
* - `
|
|
2195
|
-
* - 其余键:业务通过 {@link HistoryService.registerStepType} 注册的自定义历史类型。
|
|
2196
|
-
*
|
|
2197
|
-
* 所有类型(含扩展类型)一视同仁:均按 id 独立分栈、独立 undo/redo,且都可通过
|
|
2198
|
-
* {@link HistoryService.setMarker} 在 index 0 种入 `initial` 基线(撤销 / 回滚不会越过该基线)。
|
|
2157
|
+
* 数据源历史记录条目。按 dataSource.id 分组保存到 historyState.dataSourceState。
|
|
2158
|
+
* 变更内容统一由 `diff`(单项)表达,每项见 {@link StepDiffItem}:
|
|
2159
|
+
* - 新增(opType 'add'):仅 `newSchema`(新 schema);
|
|
2160
|
+
* - 更新(opType 'update'):`oldSchema` + `newSchema`,并可带 `changeRecords` 做局部更新;
|
|
2161
|
+
* - 删除(opType 'remove'):仅 `oldSchema`(删除前 schema)。
|
|
2199
2162
|
*/
|
|
2200
|
-
interface
|
|
2201
|
-
|
|
2202
|
-
|
|
2203
|
-
dataSource: Record<Id, UndoRedo<DataSourceStepValue>>;
|
|
2204
|
-
/** 扩展历史类型:按 id 分组的 UndoRedo 栈。 */
|
|
2205
|
-
[stepType: string]: Record<Id, UndoRedo<any>>;
|
|
2163
|
+
interface DataSourceStepValue extends BaseStepValue<DataSourceSchema> {
|
|
2164
|
+
/** 关联的数据源 id */
|
|
2165
|
+
id: Id;
|
|
2206
2166
|
}
|
|
2207
2167
|
interface HistoryState {
|
|
2168
|
+
pageId?: Id;
|
|
2169
|
+
pageSteps: Record<Id, UndoRedo<StepValue>>;
|
|
2170
|
+
canRedo: boolean;
|
|
2171
|
+
canUndo: boolean;
|
|
2208
2172
|
/**
|
|
2209
|
-
*
|
|
2210
|
-
*
|
|
2211
|
-
* {@link HistoryService.canRedo}(按 stepType + id 查询)替代旧的全局 canUndo / canRedo 字段。
|
|
2173
|
+
* 代码块历史栈,按 codeBlock.id 分组(每个代码块独立一份 UndoRedo)。
|
|
2174
|
+
* 与页面/节点无关,支持独立 undo/redo。
|
|
2212
2175
|
*/
|
|
2213
|
-
|
|
2176
|
+
codeBlockState: Record<Id, UndoRedo<CodeBlockStepValue>>;
|
|
2214
2177
|
/**
|
|
2215
|
-
*
|
|
2216
|
-
*
|
|
2217
|
-
* 扩展类型可通过 {@link HistoryService.registerStepType} 的 `name` 选项或
|
|
2218
|
-
* {@link HistoryService.setStepName} 登记;读取请用 {@link HistoryService.getStepName}。
|
|
2178
|
+
* 数据源历史栈,按 dataSource.id 分组(每个数据源独立一份 UndoRedo)。
|
|
2179
|
+
* 与页面/节点无关,支持独立 undo/redo。
|
|
2219
2180
|
*/
|
|
2220
|
-
|
|
2181
|
+
dataSourceState: Record<Id, UndoRedo<DataSourceStepValue>>;
|
|
2221
2182
|
}
|
|
2222
2183
|
/**
|
|
2223
2184
|
* 历史记录的可持久化快照。由 historyService.saveToIndexedDB 写入 IndexedDB,
|
|
@@ -2226,16 +2187,14 @@ interface HistoryState {
|
|
|
2226
2187
|
interface PersistedHistoryState {
|
|
2227
2188
|
/** 快照结构版本号,便于后续兼容升级。 */
|
|
2228
2189
|
version: number;
|
|
2229
|
-
/**
|
|
2230
|
-
|
|
2231
|
-
|
|
2232
|
-
|
|
2233
|
-
|
|
2234
|
-
|
|
2235
|
-
|
|
2236
|
-
|
|
2237
|
-
[stepType: string]: Record<Id, SerializedUndoRedo<any>>;
|
|
2238
|
-
};
|
|
2190
|
+
/** 保存时的活动页 id。 */
|
|
2191
|
+
pageId?: Id;
|
|
2192
|
+
/** 各页面历史栈的序列化快照,按 pageId 分组。 */
|
|
2193
|
+
pageSteps: Record<Id, SerializedUndoRedo<StepValue>>;
|
|
2194
|
+
/** 各代码块历史栈的序列化快照,按 codeBlockId 分组。 */
|
|
2195
|
+
codeBlockState: Record<Id, SerializedUndoRedo<CodeBlockStepValue>>;
|
|
2196
|
+
/** 各数据源历史栈的序列化快照,按 dataSourceId 分组。 */
|
|
2197
|
+
dataSourceState: Record<Id, SerializedUndoRedo<DataSourceStepValue>>;
|
|
2239
2198
|
/** 保存时间戳(毫秒)。 */
|
|
2240
2199
|
savedAt: number;
|
|
2241
2200
|
}
|
|
@@ -2257,9 +2216,9 @@ interface HistoryPersistOptions {
|
|
|
2257
2216
|
/**
|
|
2258
2217
|
* 历史面板用:当前页面的一条历史步骤(包含位置和是否已应用)。
|
|
2259
2218
|
*/
|
|
2260
|
-
interface
|
|
2219
|
+
interface PageHistoryStepEntry {
|
|
2261
2220
|
/** 步骤内容 */
|
|
2262
|
-
step:
|
|
2221
|
+
step: StepValue;
|
|
2263
2222
|
/** 在所属栈中的索引(0 为最早) */
|
|
2264
2223
|
index: number;
|
|
2265
2224
|
/** 是否处于"已应用"段(即位于栈游标之前)。撤销后变为 false。 */
|
|
@@ -2268,42 +2227,56 @@ interface HistoryStepEntry<T> {
|
|
|
2268
2227
|
isCurrent?: boolean;
|
|
2269
2228
|
}
|
|
2270
2229
|
/**
|
|
2271
|
-
*
|
|
2272
|
-
*
|
|
2273
|
-
*
|
|
2274
|
-
* -
|
|
2275
|
-
* - add / remove / 多实体 update 始终独立成组(无法明确归属单一目标);
|
|
2276
|
-
* - targetId 为 undefined 表示"无明确目标",不参与合并。
|
|
2277
|
-
*
|
|
2278
|
-
* 各类型仅 `kind` 与 step 快照类型不同,统一由泛型描述:
|
|
2279
|
-
* - 页面:`HistoryGroup<StepValue>`,`kind: 'page'`,`id` 为 pageId,`targetId` 为被改节点 id;
|
|
2280
|
-
* - 数据源:`HistoryGroup<DataSourceStepValue>`,`kind: 'data-source'`,`id` 为 dataSource.id;
|
|
2281
|
-
* - 代码块:`HistoryGroup<CodeBlockStepValue>`,`kind: 'code-block'`,`id` 为 codeBlock.id。
|
|
2230
|
+
* 页面历史面板分组。
|
|
2231
|
+
* - 连续修改同一目标节点(updatedItems[0].oldNode.id 一致)的 'update' 步骤合并成一组;
|
|
2232
|
+
* - 多节点更新 / add / remove 始终独立成组(无法明确归属单一目标)。
|
|
2233
|
+
* - targetId 为 undefined 表示"无明确目标"(如 add/remove/多节点 update),不参与合并。
|
|
2282
2234
|
*/
|
|
2283
|
-
interface
|
|
2284
|
-
|
|
2285
|
-
|
|
2286
|
-
|
|
2287
|
-
|
|
2288
|
-
/** 该分组的操作类型。 */
|
|
2235
|
+
interface PageHistoryGroup {
|
|
2236
|
+
kind: 'page';
|
|
2237
|
+
/** 所属页面 id */
|
|
2238
|
+
pageId: Id;
|
|
2239
|
+
/** 该分组的操作类型 */
|
|
2289
2240
|
opType: HistoryOpType;
|
|
2290
2241
|
/**
|
|
2291
|
-
*
|
|
2292
|
-
* undefined 表示该分组不可被合并(add / remove /
|
|
2242
|
+
* 合并的目标节点 id;只有"单节点 update"才有值,并按此 id 与相邻同 id 的 update 合并。
|
|
2243
|
+
* undefined 表示该分组不可被合并(add / remove / 多节点 update)。
|
|
2293
2244
|
*/
|
|
2294
2245
|
targetId?: Id;
|
|
2295
|
-
/**
|
|
2246
|
+
/** 目标节点的可读名(取最后一步的 newNode.name/type/id) */
|
|
2296
2247
|
targetName?: string;
|
|
2297
|
-
/**
|
|
2248
|
+
/** 组内所有步骤,按时间正序 */
|
|
2249
|
+
steps: PageHistoryStepEntry[];
|
|
2250
|
+
/** 组内最后一步是否已应用 */
|
|
2251
|
+
applied: boolean;
|
|
2252
|
+
/** 是否为当前所在的分组(包含栈中最近一次已应用步骤的那一组)。 */
|
|
2253
|
+
isCurrent?: boolean;
|
|
2254
|
+
}
|
|
2255
|
+
/**
|
|
2256
|
+
* 数据源 / 代码块历史面板分组(按 id 分栈展示)。
|
|
2257
|
+
* 二者结构完全一致,仅 `kind` 与 step 类型不同,统一由该泛型描述:
|
|
2258
|
+
* - 数据源:`StackHistoryGroup<DataSourceStepValue, 'data-source'>`;
|
|
2259
|
+
* - 代码块:`StackHistoryGroup<CodeBlockStepValue, 'code-block'>`。
|
|
2260
|
+
*
|
|
2261
|
+
* 每条操作记录独立成组,不做相邻合并(与页面历史 {@link PageHistoryGroup} 不同),故 `steps` 恒为单元素。
|
|
2262
|
+
*/
|
|
2263
|
+
interface StackHistoryGroup<T extends BaseStepValue = BaseStepValue, K extends 'code-block' | 'data-source' = 'code-block' | 'data-source'> {
|
|
2264
|
+
/** 区分代码块 / 数据源。 */
|
|
2265
|
+
kind: K;
|
|
2266
|
+
/** 关联的代码块 / 数据源 id。 */
|
|
2267
|
+
id: Id;
|
|
2268
|
+
/** 该分组的操作类型。 */
|
|
2269
|
+
opType: HistoryOpType;
|
|
2270
|
+
/** 组内所有步骤,按时间正序(不做相邻合并,恒为单元素)。 */
|
|
2298
2271
|
steps: {
|
|
2299
2272
|
step: T;
|
|
2300
2273
|
index: number;
|
|
2301
2274
|
applied: boolean;
|
|
2302
2275
|
isCurrent?: boolean;
|
|
2303
2276
|
}[];
|
|
2304
|
-
/**
|
|
2277
|
+
/** 组内最后一步是否已应用,用于整组的状态展示。 */
|
|
2305
2278
|
applied: boolean;
|
|
2306
|
-
/**
|
|
2279
|
+
/** 是否为当前所在的分组(包含该栈最近一次已应用步骤的那一组)。 */
|
|
2307
2280
|
isCurrent?: boolean;
|
|
2308
2281
|
}
|
|
2309
2282
|
declare enum KeyBindingCommand {
|
|
@@ -2463,26 +2436,6 @@ interface EditorEvents {
|
|
|
2463
2436
|
}];
|
|
2464
2437
|
'history-change': [data: MPage | MPageFragment];
|
|
2465
2438
|
}
|
|
2466
|
-
interface HistoryEvents {
|
|
2467
|
-
change: [state: BaseStepValue | StepValue | CodeBlockStepValue | DataSourceStepValue, stepType: HistoryStepType, id: Id];
|
|
2468
|
-
'code-block-history-change': [id: Id, state: CodeBlockStepValue];
|
|
2469
|
-
'data-source-history-change': [id: Id, state: DataSourceStepValue];
|
|
2470
|
-
'restore-from-indexed-db': [snapshot: PersistedHistoryState | null];
|
|
2471
|
-
'save-to-indexed-db': [snapshot: PersistedHistoryState];
|
|
2472
|
-
'mark-saved': [{
|
|
2473
|
-
kind: HistoryStepType;
|
|
2474
|
-
id?: Id;
|
|
2475
|
-
}];
|
|
2476
|
-
clear: [{
|
|
2477
|
-
id: Id;
|
|
2478
|
-
stepType: HistoryStepType;
|
|
2479
|
-
}];
|
|
2480
|
-
'marker-change': [{
|
|
2481
|
-
id: Id;
|
|
2482
|
-
marker: StepValue;
|
|
2483
|
-
stepType: HistoryStepType;
|
|
2484
|
-
}];
|
|
2485
|
-
}
|
|
2486
2439
|
declare const canUsePluginMethods: {
|
|
2487
2440
|
async: readonly ["getLayout", "highlight", "select", "multiSelect", "doAdd", "add", "doRemove", "remove", "doUpdate", "update", "sort", "copy", "paste", "doPaste", "doAlignCenter", "alignCenter", "moveLayer", "moveToContainer", "dragTo", "undo", "redo", "move"];
|
|
2488
2441
|
sync: never[];
|
|
@@ -3118,36 +3071,43 @@ declare const detectStackOpType: (oldVal: unknown, newVal: unknown) => "add" | "
|
|
|
3118
3071
|
*
|
|
3119
3072
|
* - `add`:oldValue = null;`remove`:newValue = null;`update`:两者都有,可带 changeRecords 做局部更新。
|
|
3120
3073
|
* - 内容会做 cloneDeep 防止后续被外部引用篡改;opType 依据 old/new 是否为 null 推断。
|
|
3121
|
-
* - 仅负责构造 step 并返回,入栈与事件 emit
|
|
3074
|
+
* - 仅负责构造 step 并返回,入栈与事件 emit 由各公共方法(pushCodeBlock / pushDataSource)自行处理。
|
|
3122
3075
|
* - 不直接驱动业务 service,调用方负责实际写回。
|
|
3123
3076
|
*/
|
|
3124
|
-
declare const createStackStep: <T, S extends BaseStepValue<T
|
|
3077
|
+
declare const createStackStep: <T, S extends BaseStepValue<T> & {
|
|
3078
|
+
id: Id;
|
|
3079
|
+
}>(id: Id, payload: {
|
|
3125
3080
|
oldValue: T | null;
|
|
3126
3081
|
newValue: T | null;
|
|
3127
|
-
changeRecords?: ChangeRecord[];
|
|
3128
|
-
|
|
3082
|
+
changeRecords?: ChangeRecord[];
|
|
3083
|
+
historyDescription?: string;
|
|
3084
|
+
source?: HistoryOpSource;
|
|
3129
3085
|
}) => S | null;
|
|
3130
3086
|
declare const markStackSaved: <S extends {
|
|
3131
3087
|
saved?: boolean;
|
|
3132
3088
|
}>(undoRedo?: UndoRedo<S>) => void;
|
|
3133
3089
|
/**
|
|
3134
|
-
*
|
|
3135
|
-
*
|
|
3136
|
-
* - 'add' / 'remove' 始终独立成组(语义上是结构变更,不应被收纳进单实体修改组);
|
|
3137
|
-
* - 多实体 'update'(如页面批量改属性)也独立成组(无明确单一目标,避免误合并)。
|
|
3090
|
+
* 把单个「按 id 分栈」的历史栈(代码块 / 数据源)拆成若干 group:
|
|
3091
|
+
* 每条操作记录独立成组,不做相邻 update 合并(与页面历史的合并策略不同)。
|
|
3138
3092
|
*
|
|
3139
|
-
*
|
|
3093
|
+
* 代码块与数据源除 `kind` 外结构完全一致,统一由本方法处理;`kind` 决定返回的具体分组类型。
|
|
3094
|
+
*/
|
|
3095
|
+
declare const mergeStackSteps: <S extends BaseStepValue, K extends "code-block" | "data-source">(kind: K, id: Id, list: S[], cursor: number) => StackHistoryGroup<S, K>[];
|
|
3096
|
+
/**
|
|
3097
|
+
* 把页面栈拆成若干 group:
|
|
3098
|
+
* - 单节点的 'update' 按 targetId 与相邻同 targetId 的 update 合并到一个 group;
|
|
3099
|
+
* - 'add' / 'remove' 始终独立成组(语义上是结构变更,不应被收纳进单节点修改组);
|
|
3100
|
+
* - 多节点 'update'(如批量改属性)也独立成组(无明确单一目标,避免误合并)。
|
|
3140
3101
|
*/
|
|
3141
|
-
declare const
|
|
3102
|
+
declare const mergePageSteps: (pageId: Id, list: StepValue[], cursor: number) => PageHistoryGroup[];
|
|
3142
3103
|
/**
|
|
3143
|
-
* 解析
|
|
3144
|
-
* -
|
|
3145
|
-
*
|
|
3146
|
-
* - 其它情形(多实体 update / add / remove):返回 undefined,表示不参与合并。
|
|
3104
|
+
* 解析 StepValue 中的"目标节点 id"用于合并:
|
|
3105
|
+
* - 单节点 update:取唯一一项 updatedItems 的节点 id;
|
|
3106
|
+
* - 其它情形(多节点 update / add / remove):返回 undefined,表示不参与合并。
|
|
3147
3107
|
*/
|
|
3148
|
-
declare const
|
|
3149
|
-
/** 解析
|
|
3150
|
-
declare const
|
|
3108
|
+
declare const detectPageTargetId: (step: StepValue) => Id | undefined;
|
|
3109
|
+
/** 解析 StepValue 中的目标节点可读名(用于 UI 展示)。 */
|
|
3110
|
+
declare const detectPageTargetName: (step: StepValue) => string | undefined;
|
|
3151
3111
|
/**
|
|
3152
3112
|
* 把 `Record<Id, UndoRedo>` 整体序列化为 `Record<Id, SerializedUndoRedo>`。
|
|
3153
3113
|
*
|
|
@@ -3174,11 +3134,10 @@ declare const deserializeStacks: <T extends {
|
|
|
3174
3134
|
*/
|
|
3175
3135
|
declare const getOrCreateStack: <T>(stacks: Record<Id, UndoRedo<T>>, id: Id) => UndoRedo<T>;
|
|
3176
3136
|
/**
|
|
3177
|
-
*
|
|
3178
|
-
*
|
|
3179
|
-
* 保证 undo / canUndo / goto 都不会越过初始基线。
|
|
3137
|
+
* 撤销下限:当页面栈 index 0 是 `opType: 'initial'` 的基线 step 时为 1(基线不可被撤销),否则为 0。
|
|
3138
|
+
* 用于把 cursor 钉在基线之上,保证 undo / canUndo / goto 都不会越过初始基线。
|
|
3180
3139
|
*/
|
|
3181
|
-
declare const undoFloor: (undoRedo: UndoRedo<
|
|
3140
|
+
declare const undoFloor: (undoRedo: UndoRedo<StepValue>) => number;
|
|
3182
3141
|
/** 将单次 push 产生的 history uuid(或 null)转为 *AndGetHistoryId 返回用的 uuid 列表。 */
|
|
3183
3142
|
declare const getLastPushedHistoryIds: (historyId: string | null) => string[];
|
|
3184
3143
|
//#endregion
|
|
@@ -3190,7 +3149,7 @@ declare const RIGHT_COLUMN_WIDTH_STORAGE_KEY = "$MagicEditorRightColumnWidthData
|
|
|
3190
3149
|
declare const PROPS_PANEL_WIDTH_STORAGE_KEY = "$MagicEditorPropsPanelWidthData";
|
|
3191
3150
|
declare const DEFAULT_LEFT_COLUMN_WIDTH = 310;
|
|
3192
3151
|
declare const DEFAULT_RIGHT_COLUMN_WIDTH = 480;
|
|
3193
|
-
declare const MIN_LEFT_COLUMN_WIDTH =
|
|
3152
|
+
declare const MIN_LEFT_COLUMN_WIDTH = 238;
|
|
3194
3153
|
declare const MIN_CENTER_COLUMN_WIDTH = 400;
|
|
3195
3154
|
declare const MIN_RIGHT_COLUMN_WIDTH = 300;
|
|
3196
3155
|
declare const H_GUIDE_LINE_STORAGE_KEY = "$MagicStageHorizontalGuidelinesData";
|
|
@@ -3228,6 +3187,15 @@ interface FormSlots {
|
|
|
3228
3187
|
//#endregion
|
|
3229
3188
|
//#region temp/packages/editor/src/editorProps.d.ts
|
|
3230
3189
|
interface EditorProps {
|
|
3190
|
+
/**
|
|
3191
|
+
* 主题名称:对应 `packages/editor/src/theme/themes/<theme>/index.scss` 的目录名。
|
|
3192
|
+
*
|
|
3193
|
+
* 设置后会在编辑器根元素上追加 `m-editor--<theme>` 修饰类,配合按需引入
|
|
3194
|
+
* `@tmagic/editor/dist/themes/<theme>.css` 即可启用主题样式。
|
|
3195
|
+
*
|
|
3196
|
+
* 例如:`<MEditor theme="magic-admin" />` + `import '@tmagic/editor/dist/themes/magic-admin.css'`。
|
|
3197
|
+
*/
|
|
3198
|
+
theme?: string;
|
|
3231
3199
|
/** 页面初始值 */
|
|
3232
3200
|
modelValue?: MApp;
|
|
3233
3201
|
/** 左侧面板中的组件类型列表 */
|
|
@@ -3420,6 +3388,7 @@ declare const __VLS_base$12: import("@vue/runtime-core").DefineComponent<EditorP
|
|
|
3420
3388
|
config: any;
|
|
3421
3389
|
}) => boolean) | undefined;
|
|
3422
3390
|
readonly selfDiffFieldTypes?: string[] | ((_defaultTypes: string[]) => string[]) | undefined;
|
|
3391
|
+
readonly theme?: string | undefined;
|
|
3423
3392
|
readonly onError?: ((...args: any[]) => any) | undefined;
|
|
3424
3393
|
readonly onChange?: ((...args: any[]) => any) | undefined;
|
|
3425
3394
|
readonly "onField-input"?: ((...args: any[]) => any) | undefined;
|
|
@@ -3461,6 +3430,7 @@ declare const __VLS_base$12: import("@vue/runtime-core").DefineComponent<EditorP
|
|
|
3461
3430
|
config: any;
|
|
3462
3431
|
}) => boolean;
|
|
3463
3432
|
selfDiffFieldTypes?: string[] | ((_defaultTypes: string[]) => string[]);
|
|
3433
|
+
theme?: string;
|
|
3464
3434
|
}> & Readonly<{
|
|
3465
3435
|
onError?: ((...args: any[]) => any) | undefined;
|
|
3466
3436
|
onChange?: ((...args: any[]) => any) | undefined;
|
|
@@ -3552,6 +3522,7 @@ declare const __VLS_base$12: import("@vue/runtime-core").DefineComponent<EditorP
|
|
|
3552
3522
|
config: any;
|
|
3553
3523
|
}) => boolean;
|
|
3554
3524
|
selfDiffFieldTypes?: string[] | ((_defaultTypes: string[]) => string[]);
|
|
3525
|
+
theme?: string;
|
|
3555
3526
|
}> & Readonly<{
|
|
3556
3527
|
onError?: ((...args: any[]) => any) | undefined;
|
|
3557
3528
|
onChange?: ((...args: any[]) => any) | undefined;
|
|
@@ -3639,6 +3610,7 @@ declare const __VLS_base$12: import("@vue/runtime-core").DefineComponent<EditorP
|
|
|
3639
3610
|
config: any;
|
|
3640
3611
|
}) => boolean) | undefined;
|
|
3641
3612
|
readonly selfDiffFieldTypes?: string[] | ((_defaultTypes: string[]) => string[]) | undefined;
|
|
3613
|
+
readonly theme?: string | undefined;
|
|
3642
3614
|
readonly onError?: ((...args: any[]) => any) | undefined;
|
|
3643
3615
|
readonly onChange?: ((...args: any[]) => any) | undefined;
|
|
3644
3616
|
readonly "onField-input"?: ((...args: any[]) => any) | undefined;
|
|
@@ -3680,6 +3652,7 @@ declare const __VLS_base$12: import("@vue/runtime-core").DefineComponent<EditorP
|
|
|
3680
3652
|
config: any;
|
|
3681
3653
|
}) => boolean;
|
|
3682
3654
|
selfDiffFieldTypes?: string[] | ((_defaultTypes: string[]) => string[]);
|
|
3655
|
+
theme?: string;
|
|
3683
3656
|
}> & Readonly<{
|
|
3684
3657
|
onError?: ((...args: any[]) => any) | undefined;
|
|
3685
3658
|
onChange?: ((...args: any[]) => any) | undefined;
|
|
@@ -3771,6 +3744,7 @@ declare const __VLS_base$12: import("@vue/runtime-core").DefineComponent<EditorP
|
|
|
3771
3744
|
config: any;
|
|
3772
3745
|
}) => boolean;
|
|
3773
3746
|
selfDiffFieldTypes?: string[] | ((_defaultTypes: string[]) => string[]);
|
|
3747
|
+
theme?: string;
|
|
3774
3748
|
}> & Readonly<{
|
|
3775
3749
|
onError?: ((...args: any[]) => any) | undefined;
|
|
3776
3750
|
onChange?: ((...args: any[]) => any) | undefined;
|
|
@@ -3872,6 +3846,7 @@ declare const __VLS_base$12: import("@vue/runtime-core").DefineComponent<EditorP
|
|
|
3872
3846
|
config: any;
|
|
3873
3847
|
}) => boolean) | undefined;
|
|
3874
3848
|
readonly selfDiffFieldTypes?: string[] | ((_defaultTypes: string[]) => string[]) | undefined;
|
|
3849
|
+
readonly theme?: string | undefined;
|
|
3875
3850
|
readonly onError?: ((...args: any[]) => any) | undefined;
|
|
3876
3851
|
readonly onChange?: ((...args: any[]) => any) | undefined;
|
|
3877
3852
|
readonly "onField-input"?: ((...args: any[]) => any) | undefined;
|
|
@@ -3913,6 +3888,7 @@ declare const __VLS_base$12: import("@vue/runtime-core").DefineComponent<EditorP
|
|
|
3913
3888
|
config: any;
|
|
3914
3889
|
}) => boolean;
|
|
3915
3890
|
selfDiffFieldTypes?: string[] | ((_defaultTypes: string[]) => string[]);
|
|
3891
|
+
theme?: string;
|
|
3916
3892
|
}> & Readonly<{
|
|
3917
3893
|
onError?: ((...args: any[]) => any) | undefined;
|
|
3918
3894
|
onChange?: ((...args: any[]) => any) | undefined;
|
|
@@ -4004,6 +3980,7 @@ declare const __VLS_base$12: import("@vue/runtime-core").DefineComponent<EditorP
|
|
|
4004
3980
|
config: any;
|
|
4005
3981
|
}) => boolean;
|
|
4006
3982
|
selfDiffFieldTypes?: string[] | ((_defaultTypes: string[]) => string[]);
|
|
3983
|
+
theme?: string;
|
|
4007
3984
|
}> & Readonly<{
|
|
4008
3985
|
onError?: ((...args: any[]) => any) | undefined;
|
|
4009
3986
|
onChange?: ((...args: any[]) => any) | undefined;
|
|
@@ -4091,6 +4068,7 @@ declare const __VLS_base$12: import("@vue/runtime-core").DefineComponent<EditorP
|
|
|
4091
4068
|
config: any;
|
|
4092
4069
|
}) => boolean) | undefined;
|
|
4093
4070
|
readonly selfDiffFieldTypes?: string[] | ((_defaultTypes: string[]) => string[]) | undefined;
|
|
4071
|
+
readonly theme?: string | undefined;
|
|
4094
4072
|
readonly onError?: ((...args: any[]) => any) | undefined;
|
|
4095
4073
|
readonly onChange?: ((...args: any[]) => any) | undefined;
|
|
4096
4074
|
readonly "onField-input"?: ((...args: any[]) => any) | undefined;
|
|
@@ -4132,6 +4110,7 @@ declare const __VLS_base$12: import("@vue/runtime-core").DefineComponent<EditorP
|
|
|
4132
4110
|
config: any;
|
|
4133
4111
|
}) => boolean;
|
|
4134
4112
|
selfDiffFieldTypes?: string[] | ((_defaultTypes: string[]) => string[]);
|
|
4113
|
+
theme?: string;
|
|
4135
4114
|
}> & Readonly<{
|
|
4136
4115
|
onError?: ((...args: any[]) => any) | undefined;
|
|
4137
4116
|
onChange?: ((...args: any[]) => any) | undefined;
|
|
@@ -4223,6 +4202,7 @@ declare const __VLS_base$12: import("@vue/runtime-core").DefineComponent<EditorP
|
|
|
4223
4202
|
config: any;
|
|
4224
4203
|
}) => boolean;
|
|
4225
4204
|
selfDiffFieldTypes?: string[] | ((_defaultTypes: string[]) => string[]);
|
|
4205
|
+
theme?: string;
|
|
4226
4206
|
}> & Readonly<{
|
|
4227
4207
|
onError?: ((...args: any[]) => any) | undefined;
|
|
4228
4208
|
onChange?: ((...args: any[]) => any) | undefined;
|
|
@@ -4697,6 +4677,7 @@ declare const __VLS_base$7: import("@vue/runtime-core").DefineComponent<__VLS_Pr
|
|
|
4697
4677
|
config: any;
|
|
4698
4678
|
}) => boolean) | undefined;
|
|
4699
4679
|
readonly selfDiffFieldTypes?: string[] | ((_defaultTypes: string[]) => string[]) | undefined;
|
|
4680
|
+
readonly theme?: string | undefined;
|
|
4700
4681
|
readonly onError?: ((...args: any[]) => any) | undefined;
|
|
4701
4682
|
readonly onChange?: ((...args: any[]) => any) | undefined;
|
|
4702
4683
|
readonly "onField-input"?: ((...args: any[]) => any) | undefined;
|
|
@@ -4738,6 +4719,7 @@ declare const __VLS_base$7: import("@vue/runtime-core").DefineComponent<__VLS_Pr
|
|
|
4738
4719
|
config: any;
|
|
4739
4720
|
}) => boolean;
|
|
4740
4721
|
selfDiffFieldTypes?: string[] | ((_defaultTypes: string[]) => string[]);
|
|
4722
|
+
theme?: string;
|
|
4741
4723
|
}> & Readonly<{
|
|
4742
4724
|
onError?: ((...args: any[]) => any) | undefined;
|
|
4743
4725
|
onChange?: ((...args: any[]) => any) | undefined;
|
|
@@ -4829,6 +4811,7 @@ declare const __VLS_base$7: import("@vue/runtime-core").DefineComponent<__VLS_Pr
|
|
|
4829
4811
|
config: any;
|
|
4830
4812
|
}) => boolean;
|
|
4831
4813
|
selfDiffFieldTypes?: string[] | ((_defaultTypes: string[]) => string[]);
|
|
4814
|
+
theme?: string;
|
|
4832
4815
|
}> & Readonly<{
|
|
4833
4816
|
onError?: ((...args: any[]) => any) | undefined;
|
|
4834
4817
|
onChange?: ((...args: any[]) => any) | undefined;
|
|
@@ -4916,6 +4899,7 @@ declare const __VLS_base$7: import("@vue/runtime-core").DefineComponent<__VLS_Pr
|
|
|
4916
4899
|
config: any;
|
|
4917
4900
|
}) => boolean) | undefined;
|
|
4918
4901
|
readonly selfDiffFieldTypes?: string[] | ((_defaultTypes: string[]) => string[]) | undefined;
|
|
4902
|
+
readonly theme?: string | undefined;
|
|
4919
4903
|
readonly onError?: ((...args: any[]) => any) | undefined;
|
|
4920
4904
|
readonly onChange?: ((...args: any[]) => any) | undefined;
|
|
4921
4905
|
readonly "onField-input"?: ((...args: any[]) => any) | undefined;
|
|
@@ -4957,6 +4941,7 @@ declare const __VLS_base$7: import("@vue/runtime-core").DefineComponent<__VLS_Pr
|
|
|
4957
4941
|
config: any;
|
|
4958
4942
|
}) => boolean;
|
|
4959
4943
|
selfDiffFieldTypes?: string[] | ((_defaultTypes: string[]) => string[]);
|
|
4944
|
+
theme?: string;
|
|
4960
4945
|
}> & Readonly<{
|
|
4961
4946
|
onError?: ((...args: any[]) => any) | undefined;
|
|
4962
4947
|
onChange?: ((...args: any[]) => any) | undefined;
|
|
@@ -5048,6 +5033,7 @@ declare const __VLS_base$7: import("@vue/runtime-core").DefineComponent<__VLS_Pr
|
|
|
5048
5033
|
config: any;
|
|
5049
5034
|
}) => boolean;
|
|
5050
5035
|
selfDiffFieldTypes?: string[] | ((_defaultTypes: string[]) => string[]);
|
|
5036
|
+
theme?: string;
|
|
5051
5037
|
}> & Readonly<{
|
|
5052
5038
|
onError?: ((...args: any[]) => any) | undefined;
|
|
5053
5039
|
onChange?: ((...args: any[]) => any) | undefined;
|
|
@@ -5147,6 +5133,7 @@ declare const __VLS_base$7: import("@vue/runtime-core").DefineComponent<__VLS_Pr
|
|
|
5147
5133
|
config: any;
|
|
5148
5134
|
}) => boolean) | undefined;
|
|
5149
5135
|
readonly selfDiffFieldTypes?: string[] | ((_defaultTypes: string[]) => string[]) | undefined;
|
|
5136
|
+
readonly theme?: string | undefined;
|
|
5150
5137
|
readonly onError?: ((...args: any[]) => any) | undefined;
|
|
5151
5138
|
readonly onChange?: ((...args: any[]) => any) | undefined;
|
|
5152
5139
|
readonly "onField-input"?: ((...args: any[]) => any) | undefined;
|
|
@@ -5188,6 +5175,7 @@ declare const __VLS_base$7: import("@vue/runtime-core").DefineComponent<__VLS_Pr
|
|
|
5188
5175
|
config: any;
|
|
5189
5176
|
}) => boolean;
|
|
5190
5177
|
selfDiffFieldTypes?: string[] | ((_defaultTypes: string[]) => string[]);
|
|
5178
|
+
theme?: string;
|
|
5191
5179
|
}> & Readonly<{
|
|
5192
5180
|
onError?: ((...args: any[]) => any) | undefined;
|
|
5193
5181
|
onChange?: ((...args: any[]) => any) | undefined;
|
|
@@ -5279,6 +5267,7 @@ declare const __VLS_base$7: import("@vue/runtime-core").DefineComponent<__VLS_Pr
|
|
|
5279
5267
|
config: any;
|
|
5280
5268
|
}) => boolean;
|
|
5281
5269
|
selfDiffFieldTypes?: string[] | ((_defaultTypes: string[]) => string[]);
|
|
5270
|
+
theme?: string;
|
|
5282
5271
|
}> & Readonly<{
|
|
5283
5272
|
onError?: ((...args: any[]) => any) | undefined;
|
|
5284
5273
|
onChange?: ((...args: any[]) => any) | undefined;
|
|
@@ -5366,6 +5355,7 @@ declare const __VLS_base$7: import("@vue/runtime-core").DefineComponent<__VLS_Pr
|
|
|
5366
5355
|
config: any;
|
|
5367
5356
|
}) => boolean) | undefined;
|
|
5368
5357
|
readonly selfDiffFieldTypes?: string[] | ((_defaultTypes: string[]) => string[]) | undefined;
|
|
5358
|
+
readonly theme?: string | undefined;
|
|
5369
5359
|
readonly onError?: ((...args: any[]) => any) | undefined;
|
|
5370
5360
|
readonly onChange?: ((...args: any[]) => any) | undefined;
|
|
5371
5361
|
readonly "onField-input"?: ((...args: any[]) => any) | undefined;
|
|
@@ -5407,6 +5397,7 @@ declare const __VLS_base$7: import("@vue/runtime-core").DefineComponent<__VLS_Pr
|
|
|
5407
5397
|
config: any;
|
|
5408
5398
|
}) => boolean;
|
|
5409
5399
|
selfDiffFieldTypes?: string[] | ((_defaultTypes: string[]) => string[]);
|
|
5400
|
+
theme?: string;
|
|
5410
5401
|
}> & Readonly<{
|
|
5411
5402
|
onError?: ((...args: any[]) => any) | undefined;
|
|
5412
5403
|
onChange?: ((...args: any[]) => any) | undefined;
|
|
@@ -5498,6 +5489,7 @@ declare const __VLS_base$7: import("@vue/runtime-core").DefineComponent<__VLS_Pr
|
|
|
5498
5489
|
config: any;
|
|
5499
5490
|
}) => boolean;
|
|
5500
5491
|
selfDiffFieldTypes?: string[] | ((_defaultTypes: string[]) => string[]);
|
|
5492
|
+
theme?: string;
|
|
5501
5493
|
}> & Readonly<{
|
|
5502
5494
|
onError?: ((...args: any[]) => any) | undefined;
|
|
5503
5495
|
onChange?: ((...args: any[]) => any) | undefined;
|
|
@@ -5575,6 +5567,7 @@ declare const __VLS_base$6: import("@vue/runtime-core").DefineComponent<__VLS_Pr
|
|
|
5575
5567
|
config: any;
|
|
5576
5568
|
}) => boolean) | undefined;
|
|
5577
5569
|
readonly selfDiffFieldTypes?: string[] | ((_defaultTypes: string[]) => string[]) | undefined;
|
|
5570
|
+
readonly theme?: string | undefined;
|
|
5578
5571
|
readonly onError?: ((...args: any[]) => any) | undefined;
|
|
5579
5572
|
readonly onChange?: ((...args: any[]) => any) | undefined;
|
|
5580
5573
|
readonly "onField-input"?: ((...args: any[]) => any) | undefined;
|
|
@@ -5616,6 +5609,7 @@ declare const __VLS_base$6: import("@vue/runtime-core").DefineComponent<__VLS_Pr
|
|
|
5616
5609
|
config: any;
|
|
5617
5610
|
}) => boolean;
|
|
5618
5611
|
selfDiffFieldTypes?: string[] | ((_defaultTypes: string[]) => string[]);
|
|
5612
|
+
theme?: string;
|
|
5619
5613
|
}> & Readonly<{
|
|
5620
5614
|
onError?: ((...args: any[]) => any) | undefined;
|
|
5621
5615
|
onChange?: ((...args: any[]) => any) | undefined;
|
|
@@ -5707,6 +5701,7 @@ declare const __VLS_base$6: import("@vue/runtime-core").DefineComponent<__VLS_Pr
|
|
|
5707
5701
|
config: any;
|
|
5708
5702
|
}) => boolean;
|
|
5709
5703
|
selfDiffFieldTypes?: string[] | ((_defaultTypes: string[]) => string[]);
|
|
5704
|
+
theme?: string;
|
|
5710
5705
|
}> & Readonly<{
|
|
5711
5706
|
onError?: ((...args: any[]) => any) | undefined;
|
|
5712
5707
|
onChange?: ((...args: any[]) => any) | undefined;
|
|
@@ -6344,4 +6339,4 @@ declare const _default$40: {
|
|
|
6344
6339
|
install: (app: App, opt?: Partial<EditorInstallOptions | DesignPluginOptions | FormInstallOptions>) => void;
|
|
6345
6340
|
};
|
|
6346
6341
|
//#endregion
|
|
6347
|
-
export { AddMNode, AddPrefixToObject, AsyncAfterHook, AsyncBeforeHook, AsyncHookPlugin, AsyncMethodName, BaseStepValue, BeforeAdd, CODE_DRAFT_STORAGE_KEY, COPY_CODE_STORAGE_KEY, COPY_DS_STORAGE_KEY, COPY_STORAGE_KEY, CanDropInFunction, CanDropInScene, _default as CodeBlockEditor, _default$1 as CodeBlockList, _default$2 as CodeBlockListPanel, CodeBlockListPanelSlots, CodeBlockListSlots, CodeBlockStepValue, CodeDeleteErrorType, CodeDslItem, CodeParamStatement, CodeRelation, _default$3 as CodeSelect, _default$4 as CodeSelectCol, CodeState, ColumnLayout, CombineInfo, CompareCategory, _default$5 as CompareForm, CompareFormLoadConfig, CompareFormLoadConfigContext, ComponentGroup, ComponentGroupState, ComponentItem, _default$6 as ComponentListPanel, ComponentListPanelSlots, _default$7 as CondOpSelect, ConfirmAndRevertOptions, _default$8 as ContentMenu, CustomContentMenuFunction, CustomDiffFormOptions, DEFAULT_LEFT_COLUMN_WIDTH, DEFAULT_RIGHT_COLUMN_WIDTH, _default$9 as DataSourceAddButton, _default$10 as DataSourceConfigPanel, _default$11 as DataSourceFieldSelect, _default$12 as DataSourceFields, _default$13 as DataSourceInput, DataSourceListSlots, _default$14 as DataSourceMethodSelect, _default$15 as DataSourceMethods, _default$16 as DataSourceMocks, _default$17 as DataSourceSelect, DataSourceStepValue, DatasourceTypeOption, DepTargetType, DiffDialogPayload, _default$18 as DisplayConds, DragClassification, DragType, DslOpOptions, DslOpWithHistoryIdsResult, EditorEvents, EditorInstallOptions, EditorNodeInfo, EditorSlots, EventBus, EventBusEvent, _default$19 as EventSelect, Fixed2Other, _default$20 as FloatingBox, FrameworkSlots, GetCodeBlockFormConfigOptions, GetColumnWidth, GetConfig, H_GUIDE_LINE_STORAGE_KEY, HistoryBucketConfig, _default$21 as HistoryDiffDialog,
|
|
6342
|
+
export { AddMNode, AddPrefixToObject, AsyncAfterHook, AsyncBeforeHook, AsyncHookPlugin, AsyncMethodName, BaseStepValue, BeforeAdd, CODE_DRAFT_STORAGE_KEY, COPY_CODE_STORAGE_KEY, COPY_DS_STORAGE_KEY, COPY_STORAGE_KEY, CanDropInFunction, CanDropInScene, _default as CodeBlockEditor, _default$1 as CodeBlockList, _default$2 as CodeBlockListPanel, CodeBlockListPanelSlots, CodeBlockListSlots, CodeBlockStepValue, CodeDeleteErrorType, CodeDslItem, CodeParamStatement, CodeRelation, _default$3 as CodeSelect, _default$4 as CodeSelectCol, CodeState, ColumnLayout, CombineInfo, CompareCategory, _default$5 as CompareForm, CompareFormLoadConfig, CompareFormLoadConfigContext, ComponentGroup, ComponentGroupState, ComponentItem, _default$6 as ComponentListPanel, ComponentListPanelSlots, _default$7 as CondOpSelect, ConfirmAndRevertOptions, _default$8 as ContentMenu, CustomContentMenuFunction, CustomDiffFormOptions, DEFAULT_LEFT_COLUMN_WIDTH, DEFAULT_RIGHT_COLUMN_WIDTH, _default$9 as DataSourceAddButton, _default$10 as DataSourceConfigPanel, _default$11 as DataSourceFieldSelect, _default$12 as DataSourceFields, _default$13 as DataSourceInput, DataSourceListSlots, _default$14 as DataSourceMethodSelect, _default$15 as DataSourceMethods, _default$16 as DataSourceMocks, _default$17 as DataSourceSelect, DataSourceStepValue, DatasourceTypeOption, DepTargetType, DiffDialogPayload, _default$18 as DisplayConds, DragClassification, DragType, DslOpOptions, DslOpWithHistoryIdsResult, EditorEvents, EditorInstallOptions, EditorNodeInfo, EditorSlots, EventBus, EventBusEvent, _default$19 as EventSelect, Fixed2Other, _default$20 as FloatingBox, FrameworkSlots, GetCodeBlockFormConfigOptions, GetColumnWidth, GetConfig, H_GUIDE_LINE_STORAGE_KEY, HistoryBucketConfig, _default$21 as HistoryDiffDialog, _default$22 as HistoryListBucket, _default$23 as HistoryListBucketTab, HistoryListExtraTab, HistoryOpOptions, HistoryOpOptionsWithChangeRecords, HistoryOpSource, HistoryOpType, HistoryPersistOptions, HistoryRowDescriptor, HistoryState, _default$24 as Icon, IdleTask, IdleTaskEvents, IsExpandableFunction, KeyBindingCacheItem, KeyBindingCommand, KeyBindingItem, _default$25 as KeyValue, Keys, LEFT_COLUMN_WIDTH_STORAGE_KEY, LayerNodeSlots, LayerNodeStatus, LayerOffset, _default$26 as LayerPanel, LayerPanelSlots, Layout, _default$27 as LayoutContainer, _default$27 as SplitView, ListState, MIN_CENTER_COLUMN_WIDTH, MIN_LEFT_COLUMN_WIDTH, MIN_RIGHT_COLUMN_WIDTH, MenuBarData, MenuButton, MenuComponent, MenuItem, type OnDrag, PROPS_PANEL_WIDTH_STORAGE_KEY, PageBarSortOptions, _default$28 as PageFragmentSelect, PageHistoryGroup, PageHistoryStepEntry, PartSortableOptions, PastePosition, PersistedHistoryState, PropsFormConfigFunction, _default$29 as PropsFormPanel, PropsFormValueFunction, _default$30 as PropsPanel, PropsPanelSlots, PropsState, RIGHT_COLUMN_WIDTH_STORAGE_KEY, _default$31 as Resizer, ScrollViewer, ScrollViewerEvent, ScrollViewerSlots, SerializedUndoRedo, Services, SetColumnWidth, SideBarData, SideComponent, SideItem, SideItemKey, SidebarSlots, StackHistoryGroup, StageCore, StageOptions, StageOverlayState, StageRect, StageSlots, StepDiffItem, StepValue, StoreState, StoreStateKey, _default$32 as StyleSetter, SyncAfterHook, SyncBeforeHook, SyncHookPlugin, _default$33 as TMagicCodeEditor, _default$34 as TMagicEditor, _default$35 as ToolButton, _default$36 as Tree, _default$37 as TreeNode, TreeNodeData, UI_SELECT_MODE_EVENT_NAME, UiState, UndoRedo, UseHistoryRevertOptions, V_GUIDE_LINE_STORAGE_KEY, WorkspaceSlots, advancedTabConfig, arrayOptions, beforePaste, buildChangeRecords, calcAlignCenterStyle, calcLayerTargetIndex, calcMoveStyle, canUsePluginMethods, change2Fixed, classifyDragSources, _default$38 as codeBlockService, collectRelatedNodes, confirmHistoryAction, createStackStep, _default$39 as dataSourceService, debug, _default$40 as default, defaultIsExpandable, _default$41 as depService, describeRevertStep, describeStepForRevert, deserializeStacks, designPlugin, detectPageTargetId, detectPageTargetName, detectStackOpType, displayTabConfig, editorNodeMergeCustomizer, _default$42 as editorService, eqOptions, error, eventTabConfig, _default$43 as eventsService, fillConfig, fixNodeLeft, fixNodePosition, formPlugin, generatePageName, generatePageNameByApp, getAddParent, getCascaderOptionsFromFields, getCodeBlockFormConfig, getDefaultConfig, getDisplayField, getEditorConfig, getFieldType, getFormConfig, getFormValue, getGuideLineFromCache, getInitPositionStyle, getLastPushedHistoryIds, getNodeIndex, getOrCreateStack, getPageFragmentList, getPageList, getPageNameList, getPositionInContainer, getRelativeStyle, _default$44 as historyService, idbDelete, idbGet, idbSet, info, isIncludeDataSource, isIndexedDBSupported, _default$45 as loadMonaco, log, markStackSaved, mergePageSteps, mergeStackSteps, moveItemsInContainer, numberOptions, openIndexedDB, _default$46 as propsService, resolveSelectedNode, serializeConfig, serializeStacks, setChildrenLayout, setEditorConfig, setLayout, _default$47 as stageOverlayService, _default$48 as storageService, styleTabConfig, tablePlugin, toggleFixedPosition, _default$49 as uiService, undoFloor, updateStatus, useCodeBlockEdit, useEditorContentHeight, useFilter, useFloatBox, useGetSo, useHistoryRevert, useNextFloatBoxPosition, useNodeStatus, useServices, useStage, useWindowRect, warn };
|