@hailin-zheng/editor-core 2.2.40 → 2.2.41

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.
Files changed (94) hide show
  1. package/editor.css +638 -638
  2. package/index-cjs.d.ts +32 -32
  3. package/index-cjs.js +24337 -24327
  4. package/index-cjs.js.map +1 -1
  5. package/index.d.ts +32 -32
  6. package/index.js +24337 -24327
  7. package/index.js.map +1 -1
  8. package/med_editor/doc-editor.d.ts +546 -545
  9. package/med_editor/doc-rule.d.ts +174 -174
  10. package/med_editor/editor-core.d.ts +18 -18
  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 +42 -42
  14. package/med_editor/framework/doc-layout/document-arrange.d.ts +95 -95
  15. package/med_editor/framework/doc-layout/paragraph-arrange.d.ts +110 -110
  16. package/med_editor/framework/document-change.d.ts +346 -346
  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 +162 -162
  20. package/med_editor/framework/document-event.d.ts +261 -261
  21. package/med_editor/framework/document-input-cursor.d.ts +32 -32
  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 +440 -440
  27. package/med_editor/framework/element-event-define.d.ts +102 -102
  28. package/med_editor/framework/element-props.d.ts +344 -344
  29. package/med_editor/framework/element-reader.d.ts +20 -20
  30. package/med_editor/framework/element-serialize.d.ts +39 -39
  31. package/med_editor/framework/element-type-handler.d.ts +8 -8
  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-container-impl.d.ts +25 -25
  40. package/med_editor/framework/impl/data-element/data-decorate-impl.d.ts +16 -16
  41. package/med_editor/framework/impl/data-element/data-element-barcode.d.ts +32 -32
  42. package/med_editor/framework/impl/data-element/data-element-base-impl.d.ts +122 -122
  43. package/med_editor/framework/impl/data-element/data-element-check-impl.d.ts +26 -26
  44. package/med_editor/framework/impl/data-element/data-element-date-impl.d.ts +23 -23
  45. package/med_editor/framework/impl/data-element/data-element-group-impl.d.ts +28 -28
  46. package/med_editor/framework/impl/data-element/data-element-image-impl.d.ts +23 -23
  47. package/med_editor/framework/impl/data-element/data-element-list-impl.d.ts +21 -21
  48. package/med_editor/framework/impl/data-element/data-element-text-impl.d.ts +22 -22
  49. package/med_editor/framework/impl/data-element/qrcode.d.ts +93 -93
  50. package/med_editor/framework/impl/decorate/fill-null-space-imple.d.ts +16 -16
  51. package/med_editor/framework/impl/document/doc-body-impl.d.ts +19 -19
  52. package/med_editor/framework/impl/document/doc-body-part-impl.d.ts +22 -22
  53. package/med_editor/framework/impl/document/doc-container-impl.d.ts +7 -7
  54. package/med_editor/framework/impl/document/doc-footer-impl.d.ts +19 -19
  55. package/med_editor/framework/impl/document/doc-header-impl.d.ts +19 -19
  56. package/med_editor/framework/impl/document/doc-impl.d.ts +85 -85
  57. package/med_editor/framework/impl/index.d.ts +41 -41
  58. package/med_editor/framework/impl/media-formula/menstrual-history.d.ts +31 -31
  59. package/med_editor/framework/impl/media-formula/permanent-teeth.d.ts +34 -34
  60. package/med_editor/framework/impl/paragraph/p-impl.d.ts +38 -38
  61. package/med_editor/framework/impl/picture/RectEle.d.ts +44 -44
  62. package/med_editor/framework/impl/picture/image-impl.d.ts +24 -24
  63. package/med_editor/framework/impl/radio/radio-impl.d.ts +17 -17
  64. package/med_editor/framework/impl/shape/line-impl.d.ts +31 -31
  65. package/med_editor/framework/impl/svg/svg-impl.d.ts +20 -20
  66. package/med_editor/framework/impl/symbol/br-symbol-impl.d.ts +18 -18
  67. package/med_editor/framework/impl/symbol/p-symbol-impl.d.ts +16 -16
  68. package/med_editor/framework/impl/symbol/page-br-symbol-impl.d.ts +20 -20
  69. package/med_editor/framework/impl/symbol/tab-symbol-impl.d.ts +15 -15
  70. package/med_editor/framework/impl/table/table-cell-impl.d.ts +34 -34
  71. package/med_editor/framework/impl/table/table-impl.d.ts +49 -49
  72. package/med_editor/framework/impl/table/table-row-impl.d.ts +27 -27
  73. package/med_editor/framework/impl/table/table-split-cell-patch.d.ts +20 -20
  74. package/med_editor/framework/impl/table/table-split-cell.d.ts +93 -93
  75. package/med_editor/framework/impl/table/table-util.d.ts +180 -180
  76. package/med_editor/framework/impl/text/text-impl.d.ts +34 -34
  77. package/med_editor/framework/impl/text/track-run-impl.d.ts +27 -27
  78. package/med_editor/framework/infrastructure/event-subject.d.ts +57 -57
  79. package/med_editor/framework/infrastructure/notify.d.ts +13 -13
  80. package/med_editor/framework/print/document-print-offscreen.d.ts +59 -59
  81. package/med_editor/framework/print/document-print.d.ts +19 -19
  82. package/med_editor/framework/render-context.d.ts +111 -111
  83. package/med_editor/framework/render-define.d.ts +169 -169
  84. package/med_editor/framework/search/search-panel.d.ts +31 -31
  85. package/med_editor/framework/selection/document-selection.d.ts +92 -92
  86. package/med_editor/framework/selection/range-util.d.ts +36 -36
  87. package/med_editor/framework/selection/selection-overlays.d.ts +36 -36
  88. package/med_editor/framework/suggestions/input-suggestions.d.ts +29 -29
  89. package/med_editor/framework/util/adjust-viewport-elements.d.ts +12 -12
  90. package/med_editor/framework/util/common-util.d.ts +77 -77
  91. package/med_editor/framework/util/document-segmenter.d.ts +2 -2
  92. package/med_editor/framework/util/element-util.d.ts +417 -417
  93. package/med_editor/framework/vnode/editor-calendar-vnode.d.ts +44 -44
  94. package/package.json +18 -18
@@ -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,39 +1,39 @@
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, serializeOptions?: {
10
- excludeDel?: boolean;
11
- }): SerializeProps | null;
12
- static serializeString(element: Element, options?: {
13
- includeRunDel?: boolean;
14
- dataEleValueMode?: 'text' | 'value';
15
- }): string;
16
- static serializeObject(obj: object | undefined | null): any;
17
- /**
18
- * 获取选中的结构
19
- * @param ss
20
- * @param viewOptions
21
- */
22
- static getSelectedStruct(ss: SelectionState, viewOptions: ViewOptions): Array<Element> | null;
23
- /**
24
- * 选中的文本
25
- * @param ss
26
- * @param viewOptions
27
- */
28
- static getSelectedText(ss: SelectionState, viewOptions: ViewOptions): string;
29
- static getSelectedJSON(ss: SelectionState, viewOptions: ViewOptions): string;
30
- /**
31
- * 遍历指定元素内部所有数据元列表
32
- */
33
- static getDataElements(element: BranchElement): Array<Element>;
34
- }
35
- export interface DataElementValueStruct {
36
- id: string;
37
- name: string;
38
- value: string;
39
- }
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, serializeOptions?: {
10
+ excludeDel?: boolean;
11
+ }): SerializeProps | null;
12
+ static serializeString(element: Element, options?: {
13
+ includeRunDel?: boolean;
14
+ dataEleValueMode?: 'text' | 'value';
15
+ }): string;
16
+ static serializeObject(obj: object | undefined | null): any;
17
+ /**
18
+ * 获取选中的结构
19
+ * @param ss
20
+ * @param viewOptions
21
+ */
22
+ static getSelectedStruct(ss: SelectionState, viewOptions: ViewOptions): Array<Element> | null;
23
+ /**
24
+ * 选中的文本
25
+ * @param ss
26
+ * @param viewOptions
27
+ */
28
+ static getSelectedText(ss: SelectionState, viewOptions: ViewOptions): string;
29
+ static getSelectedJSON(ss: SelectionState, viewOptions: ViewOptions): string;
30
+ /**
31
+ * 遍历指定元素内部所有数据元列表
32
+ */
33
+ static getDataElements(element: BranchElement): Array<Element>;
34
+ }
35
+ export interface DataElementValueStruct {
36
+ id: string;
37
+ name: string;
38
+ value: string;
39
+ }
@@ -1,8 +1,8 @@
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 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 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
+ }