@hailin-zheng/editor-core 2.2.2 → 2.2.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (90) hide show
  1. package/editor.css +610 -610
  2. package/index-cjs.d.ts +31 -31
  3. package/index-cjs.js +22202 -22166
  4. package/index-cjs.js.map +1 -1
  5. package/index.d.ts +31 -31
  6. package/index.js +22204 -22169
  7. package/index.js.map +1 -1
  8. package/med_editor/doc-editor.d.ts +464 -461
  9. package/med_editor/doc-rule.d.ts +46 -46
  10. package/med_editor/editor-core.d.ts +21 -21
  11. package/med_editor/framework/code-interpreter/ast-parser.d.ts +4 -4
  12. package/med_editor/framework/code-interpreter/document-eval-func.d.ts +18 -18
  13. package/med_editor/framework/code-interpreter/dynamic-execute.d.ts +23 -23
  14. package/med_editor/framework/doc-layout/document-arrange.d.ts +86 -86
  15. package/med_editor/framework/doc-layout/paragraph-arrange.d.ts +107 -107
  16. package/med_editor/framework/document-change.d.ts +295 -295
  17. package/med_editor/framework/document-combine.d.ts +24 -24
  18. package/med_editor/framework/document-comment.d.ts +38 -38
  19. package/med_editor/framework/document-context.d.ts +133 -133
  20. package/med_editor/framework/document-event.d.ts +251 -251
  21. package/med_editor/framework/document-input-cursor.d.ts +43 -43
  22. package/med_editor/framework/document-paginator.d.ts +46 -46
  23. package/med_editor/framework/document-svg.d.ts +36 -36
  24. package/med_editor/framework/document-template.d.ts +13 -13
  25. package/med_editor/framework/document-textline-mode.d.ts +6 -6
  26. package/med_editor/framework/element-define.d.ts +409 -406
  27. package/med_editor/framework/element-event-define.d.ts +107 -107
  28. package/med_editor/framework/element-props.d.ts +343 -343
  29. package/med_editor/framework/element-reader.d.ts +20 -20
  30. package/med_editor/framework/element-serialize.d.ts +36 -36
  31. package/med_editor/framework/element-type-handler.d.ts +9 -9
  32. package/med_editor/framework/history/element-trace-manage.d.ts +107 -107
  33. package/med_editor/framework/history/element-trace-tracking.d.ts +89 -89
  34. package/med_editor/framework/impl/checkbox/checkbox-impl.d.ts +19 -19
  35. package/med_editor/framework/impl/comments/comment-content-impl.d.ts +39 -39
  36. package/med_editor/framework/impl/comments/comment-element-impl.d.ts +24 -24
  37. package/med_editor/framework/impl/comments/comments-container-impl.d.ts +19 -19
  38. package/med_editor/framework/impl/comments/validate-msg-impl.d.ts +19 -19
  39. package/med_editor/framework/impl/data-element/data-decorate-impl.d.ts +15 -15
  40. package/med_editor/framework/impl/data-element/data-element-barcode.d.ts +32 -32
  41. package/med_editor/framework/impl/data-element/data-element-base-impl.d.ts +96 -96
  42. package/med_editor/framework/impl/data-element/data-element-check-impl.d.ts +26 -26
  43. package/med_editor/framework/impl/data-element/data-element-date-impl.d.ts +23 -23
  44. package/med_editor/framework/impl/data-element/data-element-group-impl.d.ts +17 -17
  45. package/med_editor/framework/impl/data-element/data-element-image-impl.d.ts +23 -23
  46. package/med_editor/framework/impl/data-element/data-element-list-impl.d.ts +21 -21
  47. package/med_editor/framework/impl/data-element/data-element-text-impl.d.ts +22 -22
  48. package/med_editor/framework/impl/data-element/qrcode.d.ts +93 -93
  49. package/med_editor/framework/impl/decorate/fill-null-space-imple.d.ts +16 -16
  50. package/med_editor/framework/impl/document/doc-body-impl.d.ts +19 -20
  51. package/med_editor/framework/impl/document/doc-body-part-impl.d.ts +22 -22
  52. package/med_editor/framework/impl/document/doc-container-impl.d.ts +7 -7
  53. package/med_editor/framework/impl/document/doc-footer-impl.d.ts +19 -19
  54. package/med_editor/framework/impl/document/doc-header-impl.d.ts +19 -19
  55. package/med_editor/framework/impl/document/doc-impl.d.ts +72 -71
  56. package/med_editor/framework/impl/index.d.ts +39 -39
  57. package/med_editor/framework/impl/media-formula/menstrual-history.d.ts +31 -31
  58. package/med_editor/framework/impl/media-formula/permanent-teeth.d.ts +34 -34
  59. package/med_editor/framework/impl/paragraph/p-impl.d.ts +38 -38
  60. package/med_editor/framework/impl/picture/RectEle.d.ts +44 -44
  61. package/med_editor/framework/impl/picture/image-impl.d.ts +24 -24
  62. package/med_editor/framework/impl/radio/radio-impl.d.ts +17 -17
  63. package/med_editor/framework/impl/svg/svg-impl.d.ts +20 -20
  64. package/med_editor/framework/impl/symbol/br-symbol-impl.d.ts +18 -18
  65. package/med_editor/framework/impl/symbol/p-symbol-impl.d.ts +16 -16
  66. package/med_editor/framework/impl/symbol/page-br-symbol-impl.d.ts +20 -20
  67. package/med_editor/framework/impl/symbol/tab-symbol-impl.d.ts +15 -15
  68. package/med_editor/framework/impl/table/table-cell-impl.d.ts +34 -34
  69. package/med_editor/framework/impl/table/table-impl.d.ts +49 -49
  70. package/med_editor/framework/impl/table/table-row-impl.d.ts +27 -27
  71. package/med_editor/framework/impl/table/table-split-cell-patch.d.ts +20 -20
  72. package/med_editor/framework/impl/table/table-split-cell.d.ts +92 -92
  73. package/med_editor/framework/impl/table/table-util.d.ts +180 -180
  74. package/med_editor/framework/impl/text/text-impl.d.ts +34 -34
  75. package/med_editor/framework/impl/text/track-run-impl.d.ts +27 -27
  76. package/med_editor/framework/infrastructure/event-subject.d.ts +56 -56
  77. package/med_editor/framework/infrastructure/notify.d.ts +13 -13
  78. package/med_editor/framework/print/document-print-offscreen.d.ts +58 -58
  79. package/med_editor/framework/print/document-print.d.ts +18 -18
  80. package/med_editor/framework/render-context.d.ts +111 -111
  81. package/med_editor/framework/render-define.d.ts +141 -141
  82. package/med_editor/framework/selection/document-selection.d.ts +91 -97
  83. package/med_editor/framework/selection/range-util.d.ts +36 -36
  84. package/med_editor/framework/selection/selection-overlays.d.ts +32 -32
  85. package/med_editor/framework/util/adjust-viewport-elements.d.ts +12 -12
  86. package/med_editor/framework/util/common-util.d.ts +76 -76
  87. package/med_editor/framework/util/document-segmenter.d.ts +2 -2
  88. package/med_editor/framework/util/element-util.d.ts +410 -410
  89. package/med_editor/framework/vnode/editor-calendar-vnode.d.ts +42 -42
  90. package/package.json +19 -19
@@ -1,20 +1,20 @@
1
- import { EditorContext } from "./document-context";
2
- import { ElementFactory, Element } from "./element-define";
3
- import { DocumentElement } from "./impl";
4
- export declare class ElementReader {
5
- private docCtx;
6
- constructor(docCtx: EditorContext);
7
- factories: Array<ElementFactory>;
8
- addFactory<U extends null | object, T extends ElementFactory<U>>(c: new () => T): void;
9
- private initFactory;
10
- read(data: any | DocumentElement): void;
11
- setDocument(document: DocumentElement): void;
12
- readElement(data: any, strictMode?: boolean): Element | null;
13
- readAttribute(data: any, ele: Element): void;
14
- /**
15
- * 读取扩展属性
16
- * @param data
17
- * @param element
18
- */
19
- readExtendsProps(data: any, element: Element): void;
20
- }
1
+ import { EditorContext } from "./document-context";
2
+ import { ElementFactory, Element } from "./element-define";
3
+ import { DocumentElement } from "./impl";
4
+ export declare class ElementReader {
5
+ private docCtx;
6
+ constructor(docCtx: EditorContext);
7
+ factories: Array<ElementFactory>;
8
+ addFactory<U extends null | object, T extends ElementFactory<U>>(c: new () => T): void;
9
+ private initFactory;
10
+ read(data: any | DocumentElement): void;
11
+ setDocument(document: DocumentElement): void;
12
+ readElement(data: any, strictMode?: boolean): Element | null;
13
+ readAttribute(data: any, ele: Element): void;
14
+ /**
15
+ * 读取扩展属性
16
+ * @param data
17
+ * @param element
18
+ */
19
+ readExtendsProps(data: any, element: Element): void;
20
+ }
@@ -1,36 +1,36 @@
1
- import { SelectionState } from "./selection/document-selection";
2
- import { BranchElement, Element, SerializeProps, ViewOptions } from "./element-define";
3
- export declare class ElementSerialize {
4
- /**
5
- * 将当前文档对象构建并输出到标准的JSON对象
6
- * @param element
7
- * @param viewOptions
8
- */
9
- static serialize(element: Element, viewOptions: ViewOptions): SerializeProps | null;
10
- static serializeString(element: Element, options?: {
11
- all: boolean;
12
- }): string;
13
- static serializeAttribute(element: Element): any;
14
- /**
15
- * 获取选中的结构
16
- * @param ss
17
- * @param viewOptions
18
- */
19
- static getSelectedStruct(ss: SelectionState, viewOptions: ViewOptions): Element | null;
20
- /**
21
- * 选中的文本
22
- * @param ss
23
- * @param viewOptions
24
- */
25
- static getSelectedText(ss: SelectionState, viewOptions: ViewOptions): string;
26
- static getSelectedJSON(ss: SelectionState, viewOptions: ViewOptions): string;
27
- /**
28
- * 遍历指定元素内部所有数据元列表
29
- */
30
- static getDataElements(element: BranchElement): Array<Element>;
31
- }
32
- export interface DataElementValueStruct {
33
- id: string;
34
- name: string;
35
- value: string;
36
- }
1
+ import { SelectionState } from "./selection/document-selection";
2
+ import { BranchElement, Element, SerializeProps, ViewOptions } from "./element-define";
3
+ export declare class ElementSerialize {
4
+ /**
5
+ * 将当前文档对象构建并输出到标准的JSON对象
6
+ * @param element
7
+ * @param viewOptions
8
+ */
9
+ static serialize(element: Element, viewOptions: ViewOptions): SerializeProps | null;
10
+ static serializeString(element: Element, options?: {
11
+ all: boolean;
12
+ }): string;
13
+ static serializeAttribute(element: Element): any;
14
+ /**
15
+ * 获取选中的结构
16
+ * @param ss
17
+ * @param viewOptions
18
+ */
19
+ static getSelectedStruct(ss: SelectionState, viewOptions: ViewOptions): Element | null;
20
+ /**
21
+ * 选中的文本
22
+ * @param ss
23
+ * @param viewOptions
24
+ */
25
+ static getSelectedText(ss: SelectionState, viewOptions: ViewOptions): string;
26
+ static getSelectedJSON(ss: SelectionState, viewOptions: ViewOptions): string;
27
+ /**
28
+ * 遍历指定元素内部所有数据元列表
29
+ */
30
+ static getDataElements(element: BranchElement): Array<Element>;
31
+ }
32
+ export interface DataElementValueStruct {
33
+ id: string;
34
+ name: string;
35
+ value: string;
36
+ }
@@ -1,9 +1,9 @@
1
- import { ContextMenuElementEvent } from "./element-event-define";
2
- import { ElementHandler } from "./element-define";
3
- /**
4
- * 删除当前段落
5
- * @param evt
6
- */
7
- export declare const deleteCurrentParagraph: ElementHandler<ContextMenuElementEvent>;
8
- export declare const setDataElementProps: ElementHandler<ContextMenuElementEvent>;
9
- export declare const onTableContextmenu: ElementHandler<ContextMenuElementEvent>;
1
+ import { ContextMenuElementEvent } from "./element-event-define";
2
+ import { ElementHandler } from "./element-define";
3
+ /**
4
+ * 删除当前段落
5
+ * @param evt
6
+ */
7
+ export declare const deleteCurrentParagraph: ElementHandler<ContextMenuElementEvent>;
8
+ export declare const setDataElementProps: ElementHandler<ContextMenuElementEvent>;
9
+ export declare const onTableContextmenu: ElementHandler<ContextMenuElementEvent>;
@@ -1,107 +1,107 @@
1
- import { EditorContext } from '../document-context';
2
- import { Element } from '../element-define';
3
- import { DeleteEleOpsDelta, DeleteTextOpsDelta, FormatOpsDelta, InsertOpsDelta, InsertTextOpsDelta, opsTrackModel } from './element-trace-tracking';
4
- declare type HistoryCommand = 'undo' | 'redo';
5
- declare type HistoryChanges = {
6
- date: Date;
7
- ops: Array<opsTrackModel>;
8
- beforeSelection: SelectionLog | null;
9
- afterSelection: SelectionLog | null;
10
- };
11
- /**
12
- * 处理撤销回滚等行为
13
- */
14
- export declare class ElementTrackManage {
15
- docCtx: EditorContext;
16
- actions: Array<HistoryChanges>;
17
- index: number;
18
- selectionLog: SelectionLog | null;
19
- constructor(docCtx: EditorContext);
20
- /**
21
- * 生成变更之前的选区数据
22
- */
23
- generateSelectionLog(): void;
24
- clear(): void;
25
- /**
26
- * 生成历史操作信息
27
- */
28
- generateTrack(): void;
29
- /**
30
- * 合并操作,
31
- * 合并输入、删除文字在一定周期内的更改
32
- * @private
33
- */
34
- private mergeOps;
35
- /**
36
- * 将对某个元素的最近两次的属性修改合并为一次,ops为当前记录的修改,比较上次的修改,如果为对同一个元素的修改,则合并
37
- * @private
38
- */
39
- private mergeFormatOps;
40
- private getSelection;
41
- /**
42
- * 执行撤销
43
- */
44
- undo(): void;
45
- /**
46
- * 是否可以撤销
47
- */
48
- get canUndo(): boolean;
49
- /**
50
- * 是否可以重做
51
- */
52
- get canRedo(): boolean;
53
- /**
54
- * 执行重做
55
- */
56
- redo(): void;
57
- private executeCommand;
58
- /**
59
- * 还原光标
60
- * @param ssLog
61
- * @returns
62
- */
63
- restoreSelection(ssLog: SelectionLog | null): void;
64
- /**
65
- * 撤销文本输入操作
66
- */
67
- commandForInsertTextOp(command: HistoryCommand, data: opsTrackModel<InsertTextOpsDelta>): void;
68
- /**
69
- * 撤销文本删除操作
70
- * @param command
71
- * @param data
72
- */
73
- commandForDeleteTextOp(command: HistoryCommand, data: opsTrackModel<DeleteTextOpsDelta>): void;
74
- /**
75
- * 撤销元素属性修改操作
76
- */
77
- commandForEleFormat(command: HistoryCommand, data: opsTrackModel<FormatOpsDelta>): void;
78
- /**
79
- * 撤销删除元素的操作
80
- * @param command
81
- * @param data
82
- */
83
- commandForDeleteEleOp(command: HistoryCommand, data: opsTrackModel<DeleteEleOpsDelta>): void;
84
- /**
85
- * 撤销插入的元素
86
- * @param command
87
- * @param data
88
- */
89
- commandForInsertEleOp(command: HistoryCommand, data: opsTrackModel<InsertOpsDelta>): void;
90
- private restoreToInsert;
91
- /**
92
- * 更新属性
93
- * @param currProps
94
- * @param newProps
95
- */
96
- updateProps(currProps: object, newProps: object): void;
97
- getControl<T extends Element>(index: number, pure?: boolean): T;
98
- getControlIndex(control: Element): number;
99
- }
100
- interface SelectionLog {
101
- startIndex: number;
102
- startOffset: number;
103
- endIndex: number;
104
- endOffset: number;
105
- editable: boolean;
106
- }
107
- export {};
1
+ import { EditorContext } from '../document-context';
2
+ import { Element } from '../element-define';
3
+ import { DeleteEleOpsDelta, DeleteTextOpsDelta, FormatOpsDelta, InsertOpsDelta, InsertTextOpsDelta, opsTrackModel } from './element-trace-tracking';
4
+ declare type HistoryCommand = 'undo' | 'redo';
5
+ declare type HistoryChanges = {
6
+ date: Date;
7
+ ops: Array<opsTrackModel>;
8
+ beforeSelection: SelectionLog | null;
9
+ afterSelection: SelectionLog | null;
10
+ };
11
+ /**
12
+ * 处理撤销回滚等行为
13
+ */
14
+ export declare class ElementTrackManage {
15
+ docCtx: EditorContext;
16
+ actions: Array<HistoryChanges>;
17
+ index: number;
18
+ selectionLog: SelectionLog | null;
19
+ constructor(docCtx: EditorContext);
20
+ /**
21
+ * 生成变更之前的选区数据
22
+ */
23
+ generateSelectionLog(): void;
24
+ clear(): void;
25
+ /**
26
+ * 生成历史操作信息
27
+ */
28
+ generateTrack(): void;
29
+ /**
30
+ * 合并操作,
31
+ * 合并输入、删除文字在一定周期内的更改
32
+ * @private
33
+ */
34
+ private mergeOps;
35
+ /**
36
+ * 将对某个元素的最近两次的属性修改合并为一次,ops为当前记录的修改,比较上次的修改,如果为对同一个元素的修改,则合并
37
+ * @private
38
+ */
39
+ private mergeFormatOps;
40
+ private getSelection;
41
+ /**
42
+ * 执行撤销
43
+ */
44
+ undo(): void;
45
+ /**
46
+ * 是否可以撤销
47
+ */
48
+ get canUndo(): boolean;
49
+ /**
50
+ * 是否可以重做
51
+ */
52
+ get canRedo(): boolean;
53
+ /**
54
+ * 执行重做
55
+ */
56
+ redo(): void;
57
+ private executeCommand;
58
+ /**
59
+ * 还原光标
60
+ * @param ssLog
61
+ * @returns
62
+ */
63
+ restoreSelection(ssLog: SelectionLog | null): void;
64
+ /**
65
+ * 撤销文本输入操作
66
+ */
67
+ commandForInsertTextOp(command: HistoryCommand, data: opsTrackModel<InsertTextOpsDelta>): void;
68
+ /**
69
+ * 撤销文本删除操作
70
+ * @param command
71
+ * @param data
72
+ */
73
+ commandForDeleteTextOp(command: HistoryCommand, data: opsTrackModel<DeleteTextOpsDelta>): void;
74
+ /**
75
+ * 撤销元素属性修改操作
76
+ */
77
+ commandForEleFormat(command: HistoryCommand, data: opsTrackModel<FormatOpsDelta>): void;
78
+ /**
79
+ * 撤销删除元素的操作
80
+ * @param command
81
+ * @param data
82
+ */
83
+ commandForDeleteEleOp(command: HistoryCommand, data: opsTrackModel<DeleteEleOpsDelta>): void;
84
+ /**
85
+ * 撤销插入的元素
86
+ * @param command
87
+ * @param data
88
+ */
89
+ commandForInsertEleOp(command: HistoryCommand, data: opsTrackModel<InsertOpsDelta>): void;
90
+ private restoreToInsert;
91
+ /**
92
+ * 更新属性
93
+ * @param currProps
94
+ * @param newProps
95
+ */
96
+ updateProps(currProps: object, newProps: object): void;
97
+ getControl<T extends Element>(index: number, pure?: boolean): T;
98
+ getControlIndex(control: Element): number;
99
+ }
100
+ interface SelectionLog {
101
+ startIndex: number;
102
+ startOffset: number;
103
+ endIndex: number;
104
+ endOffset: number;
105
+ editable: boolean;
106
+ }
107
+ export {};
@@ -1,89 +1,89 @@
1
- import { Element } from "../element-define";
2
- /**
3
- * 插入元素
4
- */
5
- export declare type InsertOpsDelta = {
6
- insert: Element;
7
- };
8
- /**
9
- * 删除元素
10
- */
11
- export declare type DeleteEleOpsDelta = {
12
- delete: Element;
13
- };
14
- /**
15
- * 文本输入
16
- */
17
- export declare type InsertTextOpsDelta = {
18
- insText: {
19
- index: number;
20
- length: number;
21
- };
22
- content: string;
23
- };
24
- /**
25
- * 文本删除
26
- */
27
- export declare type DeleteTextOpsDelta = {
28
- delText: {
29
- index: number;
30
- length: number;
31
- };
32
- content: string;
33
- };
34
- /**
35
- * 属性变更记录前后值
36
- */
37
- export declare type diffPropType = {
38
- [PropName: string]: {
39
- oldValue: any;
40
- newValue: any;
41
- };
42
- };
43
- /**
44
- * 设置属性
45
- */
46
- export declare type FormatOpsDelta = {
47
- format: diffPropType;
48
- };
49
- declare type opsTypes = InsertTextOpsDelta | InsertOpsDelta | DeleteTextOpsDelta | FormatOpsDelta | DeleteEleOpsDelta;
50
- declare type opsModel<T = opsTypes> = {
51
- index: number;
52
- parentIndex: number;
53
- prevIndex: number;
54
- ele: Element;
55
- ops: T;
56
- };
57
- export declare type opsTrackModel<T = opsTypes> = Omit<opsModel<T>, 'ele'>;
58
- export declare const docOpsMap: Map<Element, Array<opsModel>>;
59
- export declare function setTraceTrackingFlag(flag: boolean): void;
60
- /**
61
- * 抑制变更的追踪修改
62
- * 在某些情况下不需要进行修改的跟踪,例如:在初始化加载文档时,为了提高效率,增加底层开关
63
- */
64
- export declare function suppressTracking<T>(cb: () => T): T;
65
- export declare function insertEle(ele: Element): void;
66
- export declare function removeEle(ele: Element): void;
67
- export declare function inputText(ele: Element, startIndex: number, input: string): void;
68
- export declare function removeText(ele: Element, index: number, length: number, content: string): void;
69
- /**
70
- * 记录元素格式化
71
- * @param ele |
72
- * @param props
73
- * @returns
74
- */
75
- export declare function formatEle(ele: Element, props: object): void;
76
- /**
77
- * 记录更新元素属性,通过代理获取
78
- * @param ele
79
- * @param p
80
- * @param oldValue
81
- * @param newValue
82
- */
83
- export declare function logUpdateEleProps(ele: Element, p: string | symbol | number, oldValue: any, newValue: any): void;
84
- export declare function generatePatch(doc: Element, clear?: boolean): Array<opsTrackModel>;
85
- /**
86
- * 清除变更的数据
87
- */
88
- export declare function clearTraces(doc: Element): void;
89
- export {};
1
+ import { Element } from "../element-define";
2
+ /**
3
+ * 插入元素
4
+ */
5
+ export declare type InsertOpsDelta = {
6
+ insert: Element;
7
+ };
8
+ /**
9
+ * 删除元素
10
+ */
11
+ export declare type DeleteEleOpsDelta = {
12
+ delete: Element;
13
+ };
14
+ /**
15
+ * 文本输入
16
+ */
17
+ export declare type InsertTextOpsDelta = {
18
+ insText: {
19
+ index: number;
20
+ length: number;
21
+ };
22
+ content: string;
23
+ };
24
+ /**
25
+ * 文本删除
26
+ */
27
+ export declare type DeleteTextOpsDelta = {
28
+ delText: {
29
+ index: number;
30
+ length: number;
31
+ };
32
+ content: string;
33
+ };
34
+ /**
35
+ * 属性变更记录前后值
36
+ */
37
+ export declare type diffPropType = {
38
+ [PropName: string]: {
39
+ oldValue: any;
40
+ newValue: any;
41
+ };
42
+ };
43
+ /**
44
+ * 设置属性
45
+ */
46
+ export declare type FormatOpsDelta = {
47
+ format: diffPropType;
48
+ };
49
+ declare type opsTypes = InsertTextOpsDelta | InsertOpsDelta | DeleteTextOpsDelta | FormatOpsDelta | DeleteEleOpsDelta;
50
+ declare type opsModel<T = opsTypes> = {
51
+ index: number;
52
+ parentIndex: number;
53
+ prevIndex: number;
54
+ ele: Element;
55
+ ops: T;
56
+ };
57
+ export declare type opsTrackModel<T = opsTypes> = Omit<opsModel<T>, 'ele'>;
58
+ export declare const docOpsMap: Map<Element, Array<opsModel>>;
59
+ export declare function setTraceTrackingFlag(flag: boolean): void;
60
+ /**
61
+ * 抑制变更的追踪修改
62
+ * 在某些情况下不需要进行修改的跟踪,例如:在初始化加载文档时,为了提高效率,增加底层开关
63
+ */
64
+ export declare function suppressTracking<T>(cb: () => T): T;
65
+ export declare function insertEle(ele: Element): void;
66
+ export declare function removeEle(ele: Element): void;
67
+ export declare function inputText(ele: Element, startIndex: number, input: string): void;
68
+ export declare function removeText(ele: Element, index: number, length: number, content: string): void;
69
+ /**
70
+ * 记录元素格式化
71
+ * @param ele |
72
+ * @param props
73
+ * @returns
74
+ */
75
+ export declare function formatEle(ele: Element, props: object): void;
76
+ /**
77
+ * 记录更新元素属性,通过代理获取
78
+ * @param ele
79
+ * @param p
80
+ * @param oldValue
81
+ * @param newValue
82
+ */
83
+ export declare function logUpdateEleProps(ele: Element, p: string | symbol | number, oldValue: any, newValue: any): void;
84
+ export declare function generatePatch(doc: Element, clear?: boolean): Array<opsTrackModel>;
85
+ /**
86
+ * 清除变更的数据
87
+ */
88
+ export declare function clearTraces(doc: Element): void;
89
+ export {};
@@ -1,19 +1,19 @@
1
- import { ElementFactory, LeafElement, readElementProps, SerializeProps, ViewOptions } from "../../element-define";
2
- import { CheckBoxProps } from "../../element-props";
3
- import { IEditorVNodeOptions, LeafRenderObject, RenderObject } from "../../render-define";
4
- import { ElementEvent } from "../../element-event-define";
5
- export declare class CheckBoxElement extends LeafElement<CheckBoxProps> {
6
- constructor();
7
- createRenderObject(): CheckBoxRenderObject;
8
- changeState(e: ElementEvent): void;
9
- serialize(viewOptions: ViewOptions): SerializeProps;
10
- clone(): CheckBoxElement;
11
- }
12
- export declare class CheckBoxFactory extends ElementFactory<CheckBoxProps> {
13
- match(type: string): boolean;
14
- createElement(data: readElementProps<CheckBoxProps>): CheckBoxElement;
15
- }
16
- export declare class CheckBoxRenderObject extends LeafRenderObject<CheckBoxElement> {
17
- clone(): RenderObject;
18
- exportSVG(event: IEditorVNodeOptions): any;
19
- }
1
+ import { ElementFactory, LeafElement, readElementProps, SerializeProps, ViewOptions } from "../../element-define";
2
+ import { CheckBoxProps } from "../../element-props";
3
+ import { IEditorVNodeOptions, LeafRenderObject, RenderObject } from "../../render-define";
4
+ import { ElementEvent } from "../../element-event-define";
5
+ export declare class CheckBoxElement extends LeafElement<CheckBoxProps> {
6
+ constructor();
7
+ createRenderObject(): CheckBoxRenderObject;
8
+ changeState(e: ElementEvent): void;
9
+ serialize(viewOptions: ViewOptions): SerializeProps;
10
+ clone(): CheckBoxElement;
11
+ }
12
+ export declare class CheckBoxFactory extends ElementFactory<CheckBoxProps> {
13
+ match(type: string): boolean;
14
+ createElement(data: readElementProps<CheckBoxProps>): CheckBoxElement;
15
+ }
16
+ export declare class CheckBoxRenderObject extends LeafRenderObject<CheckBoxElement> {
17
+ clone(): RenderObject;
18
+ exportSVG(event: IEditorVNodeOptions): any;
19
+ }
@@ -1,39 +1,39 @@
1
- import { BlockContainerElement, ElementFactory, IBeginMeasureData, Position, readElementProps, SelectionContentRange, SerializeProps, ViewOptions } from "../../element-define";
2
- import { CommContentProps } from "../../element-props";
3
- import { Element } from "../../element-define";
4
- import { BlockContainerRenderObject, IEditorVNodeOptions, RenderObject } from "../../render-define";
5
- import { CommentElement } from "./comment-element-impl";
6
- export declare abstract class CommContentBaseElement<P extends object = {
7
- id: string;
8
- }> extends BlockContainerElement<P> {
9
- startMark: CommentElement;
10
- endMark: CommentElement;
11
- focus: boolean;
12
- protected constructor(type: string);
13
- }
14
- export declare abstract class CommContentBaseRenderObject<E extends CommContentBaseElement> extends BlockContainerRenderObject<E> {
15
- commMarkRender: {
16
- render: RenderObject;
17
- pos: Position;
18
- };
19
- }
20
- export declare class CommContentElement extends CommContentBaseElement<CommContentProps> {
21
- constructor();
22
- createRenderObject(): RenderObject;
23
- serialize(viewOptions: ViewOptions): SerializeProps;
24
- clone(data: boolean): Element;
25
- beginMeasure(data: IBeginMeasureData): void;
26
- }
27
- export declare class CommContentRenderObject extends CommContentBaseRenderObject<CommContentElement> {
28
- exportSVG(event: IEditorVNodeOptions): any;
29
- renderTitleHTML(event: IEditorVNodeOptions): any;
30
- clone(): RenderObject;
31
- }
32
- export interface CommentRangeStatus {
33
- range: SelectionContentRange;
34
- commContent: CommContentBaseElement;
35
- }
36
- export declare class CommentContentFactory extends ElementFactory<CommContentProps> {
37
- match(type: string): boolean;
38
- createElement(data: readElementProps<CommContentProps>): Element;
39
- }
1
+ import { BlockContainerElement, ElementFactory, IBeginMeasureData, Position, readElementProps, SelectionContentRange, SerializeProps, ViewOptions } from "../../element-define";
2
+ import { CommContentProps } from "../../element-props";
3
+ import { Element } from "../../element-define";
4
+ import { BlockContainerRenderObject, IEditorVNodeOptions, RenderObject } from "../../render-define";
5
+ import { CommentElement } from "./comment-element-impl";
6
+ export declare abstract class CommContentBaseElement<P extends object = {
7
+ id: string;
8
+ }> extends BlockContainerElement<P> {
9
+ startMark: CommentElement;
10
+ endMark: CommentElement;
11
+ focus: boolean;
12
+ protected constructor(type: string);
13
+ }
14
+ export declare abstract class CommContentBaseRenderObject<E extends CommContentBaseElement> extends BlockContainerRenderObject<E> {
15
+ commMarkRender: {
16
+ render: RenderObject;
17
+ pos: Position;
18
+ };
19
+ }
20
+ export declare class CommContentElement extends CommContentBaseElement<CommContentProps> {
21
+ constructor();
22
+ createRenderObject(): RenderObject;
23
+ serialize(viewOptions: ViewOptions): SerializeProps;
24
+ clone(data: boolean): Element;
25
+ beginMeasure(data: IBeginMeasureData): void;
26
+ }
27
+ export declare class CommContentRenderObject extends CommContentBaseRenderObject<CommContentElement> {
28
+ exportSVG(event: IEditorVNodeOptions): any;
29
+ renderTitleHTML(event: IEditorVNodeOptions): any;
30
+ clone(): RenderObject;
31
+ }
32
+ export interface CommentRangeStatus {
33
+ range: SelectionContentRange;
34
+ commContent: CommContentBaseElement;
35
+ }
36
+ export declare class CommentContentFactory extends ElementFactory<CommContentProps> {
37
+ match(type: string): boolean;
38
+ createElement(data: readElementProps<CommContentProps>): Element;
39
+ }