@hailin-zheng/editor-core 1.0.1 → 1.0.3
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/lib/doc-ruler.d.ts +51 -0
- package/lib/doc-ruler.js +313 -0
- package/lib/doc-ruler.js.map +1 -0
- package/lib/framework/common-util.d.ts +63 -0
- package/lib/framework/common-util.js +178 -0
- package/lib/framework/common-util.js.map +1 -0
- package/lib/framework/document-change.d.ts +265 -0
- package/lib/framework/document-change.js +1342 -0
- package/lib/framework/document-change.js.map +1 -0
- package/lib/framework/document-combine.d.ts +24 -0
- package/lib/framework/document-combine.js +40 -0
- package/lib/framework/document-combine.js.map +1 -0
- package/lib/framework/document-comment.d.ts +46 -0
- package/lib/framework/document-comment.js +148 -0
- package/lib/framework/document-comment.js.map +1 -0
- package/lib/framework/document-context.d.ts +149 -0
- package/lib/framework/document-context.js +330 -0
- package/lib/framework/document-context.js.map +1 -0
- package/lib/framework/document-eval-func.d.ts +18 -0
- package/lib/framework/document-eval-func.js +48 -0
- package/lib/framework/document-eval-func.js.map +1 -0
- package/lib/framework/document-event.d.ts +213 -0
- package/lib/framework/document-event.js +1054 -0
- package/lib/framework/document-event.js.map +1 -0
- package/lib/framework/document-history.d.ts +26 -0
- package/lib/framework/document-history.js +65 -0
- package/lib/framework/document-history.js.map +1 -0
- package/lib/framework/document-images-loader.d.ts +16 -0
- package/lib/framework/document-images-loader.js +66 -0
- package/lib/framework/document-images-loader.js.map +1 -0
- package/lib/framework/document-input-cursor.d.ts +78 -0
- package/lib/framework/document-input-cursor.js +239 -0
- package/lib/framework/document-input-cursor.js.map +1 -0
- package/lib/framework/document-paint.d.ts +34 -0
- package/lib/framework/document-paint.js +103 -0
- package/lib/framework/document-paint.js.map +1 -0
- package/lib/framework/document-print-offscreen.d.ts +38 -0
- package/lib/framework/document-print-offscreen.js +128 -0
- package/lib/framework/document-print-offscreen.js.map +1 -0
- package/lib/framework/document-print.d.ts +60 -0
- package/lib/framework/document-print.js +203 -0
- package/lib/framework/document-print.js.map +1 -0
- package/lib/framework/document-segmenter.d.ts +2 -0
- package/lib/framework/document-segmenter.js +106 -0
- package/lib/framework/document-segmenter.js.map +1 -0
- package/lib/framework/document-selection.d.ts +89 -0
- package/lib/framework/document-selection.js +358 -0
- package/lib/framework/document-selection.js.map +1 -0
- package/lib/framework/document-template.d.ts +4 -0
- package/lib/framework/document-template.js +20 -0
- package/lib/framework/document-template.js.map +1 -0
- package/lib/framework/document-textline-mode.d.ts +7 -0
- package/lib/framework/document-textline-mode.js +30 -0
- package/lib/framework/document-textline-mode.js.map +1 -0
- package/lib/framework/element-define.d.ts +319 -0
- package/lib/framework/element-define.js +579 -0
- package/lib/framework/element-define.js.map +1 -0
- package/lib/framework/element-event-define.d.ts +99 -0
- package/lib/framework/element-event-define.js +108 -0
- package/lib/framework/element-event-define.js.map +1 -0
- package/lib/framework/element-measure.d.ts +97 -0
- package/lib/framework/element-measure.js +551 -0
- package/lib/framework/element-measure.js.map +1 -0
- package/lib/framework/element-paint.d.ts +42 -0
- package/lib/framework/element-paint.js +170 -0
- package/lib/framework/element-paint.js.map +1 -0
- package/lib/framework/element-props.d.ts +301 -0
- package/lib/framework/element-props.js +809 -0
- package/lib/framework/element-props.js.map +1 -0
- package/lib/framework/element-reader.d.ts +19 -0
- package/lib/framework/element-reader.js +151 -0
- package/lib/framework/element-reader.js.map +1 -0
- package/lib/framework/element-render-cut.d.ts +55 -0
- package/lib/framework/element-render-cut.js +449 -0
- package/lib/framework/element-render-cut.js.map +1 -0
- package/lib/framework/element-serialize.d.ts +30 -0
- package/lib/framework/element-serialize.js +113 -0
- package/lib/framework/element-serialize.js.map +1 -0
- package/lib/framework/element-util.d.ts +369 -0
- package/lib/framework/element-util.js +1463 -0
- package/lib/framework/element-util.js.map +1 -0
- package/lib/framework/impl/checkbox/checkbox-impl.d.ts +24 -0
- package/lib/framework/impl/checkbox/checkbox-impl.js +64 -0
- package/lib/framework/impl/checkbox/checkbox-impl.js.map +1 -0
- package/lib/framework/impl/comments/comment-content-impl.d.ts +40 -0
- package/lib/framework/impl/comments/comment-content-impl.js +105 -0
- package/lib/framework/impl/comments/comment-content-impl.js.map +1 -0
- package/lib/framework/impl/comments/comment-element-impl.d.ts +21 -0
- package/lib/framework/impl/comments/comment-element-impl.js +62 -0
- package/lib/framework/impl/comments/comment-element-impl.js.map +1 -0
- package/lib/framework/impl/comments/comments-container-impl.d.ts +22 -0
- package/lib/framework/impl/comments/comments-container-impl.js +62 -0
- package/lib/framework/impl/comments/comments-container-impl.js.map +1 -0
- package/lib/framework/impl/comments/comments-util.d.ts +12 -0
- package/lib/framework/impl/comments/comments-util.js +67 -0
- package/lib/framework/impl/comments/comments-util.js.map +1 -0
- package/lib/framework/impl/comments/validate-msg-impl.d.ts +21 -0
- package/lib/framework/impl/comments/validate-msg-impl.js +83 -0
- package/lib/framework/impl/comments/validate-msg-impl.js.map +1 -0
- package/lib/framework/impl/data-element/data-decorate-impl.d.ts +30 -0
- package/lib/framework/impl/data-element/data-decorate-impl.js +91 -0
- package/lib/framework/impl/data-element/data-decorate-impl.js.map +1 -0
- package/lib/framework/impl/data-element/data-element-barcode.d.ts +31 -0
- package/lib/framework/impl/data-element/data-element-barcode.js +115 -0
- package/lib/framework/impl/data-element/data-element-barcode.js.map +1 -0
- package/lib/framework/impl/data-element/data-element-base-impl.d.ts +68 -0
- package/lib/framework/impl/data-element/data-element-base-impl.js +205 -0
- package/lib/framework/impl/data-element/data-element-base-impl.js.map +1 -0
- package/lib/framework/impl/data-element/data-element-check-impl.d.ts +35 -0
- package/lib/framework/impl/data-element/data-element-check-impl.js +133 -0
- package/lib/framework/impl/data-element/data-element-check-impl.js.map +1 -0
- package/lib/framework/impl/data-element/data-element-date-impl.d.ts +23 -0
- package/lib/framework/impl/data-element/data-element-date-impl.js +111 -0
- package/lib/framework/impl/data-element/data-element-date-impl.js.map +1 -0
- package/lib/framework/impl/data-element/data-element-group-impl.d.ts +23 -0
- package/lib/framework/impl/data-element/data-element-group-impl.js +130 -0
- package/lib/framework/impl/data-element/data-element-group-impl.js.map +1 -0
- package/lib/framework/impl/data-element/data-element-image-impl.d.ts +30 -0
- package/lib/framework/impl/data-element/data-element-image-impl.js +137 -0
- package/lib/framework/impl/data-element/data-element-image-impl.js.map +1 -0
- package/lib/framework/impl/data-element/data-element-list-impl.d.ts +22 -0
- package/lib/framework/impl/data-element/data-element-list-impl.js +131 -0
- package/lib/framework/impl/data-element/data-element-list-impl.js.map +1 -0
- package/lib/framework/impl/data-element/data-element-text-impl.d.ts +23 -0
- package/lib/framework/impl/data-element/data-element-text-impl.js +103 -0
- package/lib/framework/impl/data-element/data-element-text-impl.js.map +1 -0
- package/lib/framework/impl/decorate/fill-null-space-imple.d.ts +21 -0
- package/lib/framework/impl/decorate/fill-null-space-imple.js +43 -0
- package/lib/framework/impl/decorate/fill-null-space-imple.js.map +1 -0
- package/lib/framework/impl/document/doc-body-impl.d.ts +27 -0
- package/lib/framework/impl/document/doc-body-impl.js +79 -0
- package/lib/framework/impl/document/doc-body-impl.js.map +1 -0
- package/lib/framework/impl/document/doc-body-part-impl.d.ts +30 -0
- package/lib/framework/impl/document/doc-body-part-impl.js +94 -0
- package/lib/framework/impl/document/doc-body-part-impl.js.map +1 -0
- package/lib/framework/impl/document/doc-container-impl.d.ts +16 -0
- package/lib/framework/impl/document/doc-container-impl.js +21 -0
- package/lib/framework/impl/document/doc-container-impl.js.map +1 -0
- package/lib/framework/impl/document/doc-footer-impl.d.ts +26 -0
- package/lib/framework/impl/document/doc-footer-impl.js +77 -0
- package/lib/framework/impl/document/doc-footer-impl.js.map +1 -0
- package/lib/framework/impl/document/doc-header-impl.d.ts +26 -0
- package/lib/framework/impl/document/doc-header-impl.js +83 -0
- package/lib/framework/impl/document/doc-header-impl.js.map +1 -0
- package/lib/framework/impl/document/doc-impl.d.ts +61 -0
- package/lib/framework/impl/document/doc-impl.js +209 -0
- package/lib/framework/impl/document/doc-impl.js.map +1 -0
- package/lib/framework/impl/media-formula/menstrual-history.d.ts +35 -0
- package/lib/framework/impl/media-formula/menstrual-history.js +153 -0
- package/lib/framework/impl/media-formula/menstrual-history.js.map +1 -0
- package/lib/framework/impl/paragraph/p-impl.d.ts +45 -0
- package/lib/framework/impl/paragraph/p-impl.js +156 -0
- package/lib/framework/impl/paragraph/p-impl.js.map +1 -0
- package/lib/framework/impl/picture/image-impl.d.ts +31 -0
- package/lib/framework/impl/picture/image-impl.js +124 -0
- package/lib/framework/impl/picture/image-impl.js.map +1 -0
- package/lib/framework/impl/radio/radio-impl.d.ts +22 -0
- package/lib/framework/impl/radio/radio-impl.js +72 -0
- package/lib/framework/impl/radio/radio-impl.js.map +1 -0
- package/lib/framework/impl/symbol/br-symbol-impl.d.ts +22 -0
- package/lib/framework/impl/symbol/br-symbol-impl.js +54 -0
- package/lib/framework/impl/symbol/br-symbol-impl.js.map +1 -0
- package/lib/framework/impl/symbol/p-symbol-impl.d.ts +19 -0
- package/lib/framework/impl/symbol/p-symbol-impl.js +54 -0
- package/lib/framework/impl/symbol/p-symbol-impl.js.map +1 -0
- package/lib/framework/impl/table/table-cell-impl.d.ts +37 -0
- package/lib/framework/impl/table/table-cell-impl.js +145 -0
- package/lib/framework/impl/table/table-cell-impl.js.map +1 -0
- package/lib/framework/impl/table/table-impl.d.ts +55 -0
- package/lib/framework/impl/table/table-impl.js +363 -0
- package/lib/framework/impl/table/table-impl.js.map +1 -0
- package/lib/framework/impl/table/table-row-impl.d.ts +26 -0
- package/lib/framework/impl/table/table-row-impl.js +75 -0
- package/lib/framework/impl/table/table-row-impl.js.map +1 -0
- package/lib/framework/impl/table/table-split-cell-patch.d.ts +20 -0
- package/lib/framework/impl/table/table-split-cell-patch.js +89 -0
- package/lib/framework/impl/table/table-split-cell-patch.js.map +1 -0
- package/lib/framework/impl/table/table-split-cell.d.ts +90 -0
- package/lib/framework/impl/table/table-split-cell.js +464 -0
- package/lib/framework/impl/table/table-split-cell.js.map +1 -0
- package/lib/framework/impl/table/table-util.d.ts +150 -0
- package/lib/framework/impl/table/table-util.js +678 -0
- package/lib/framework/impl/table/table-util.js.map +1 -0
- package/lib/framework/impl/text/text-impl.d.ts +32 -0
- package/lib/framework/impl/text/text-impl.js +149 -0
- package/lib/framework/impl/text/text-impl.js.map +1 -0
- package/lib/framework/impl/text/track-run-impl.d.ts +27 -0
- package/lib/framework/impl/text/track-run-impl.js +112 -0
- package/lib/framework/impl/text/track-run-impl.js.map +1 -0
- package/lib/framework/notify.d.ts +13 -0
- package/lib/framework/notify.js +116 -0
- package/lib/framework/notify.js.map +1 -0
- package/lib/framework/range-util.d.ts +40 -0
- package/lib/framework/range-util.js +312 -0
- package/lib/framework/range-util.js.map +1 -0
- package/lib/framework/render-context.d.ts +91 -0
- package/lib/framework/render-context.js +384 -0
- package/lib/framework/render-context.js.map +1 -0
- package/lib/framework/render-define.d.ts +109 -0
- package/lib/framework/render-define.js +195 -0
- package/lib/framework/render-define.js.map +1 -0
- package/lib/framework/selection-overlays.d.ts +30 -0
- package/lib/framework/selection-overlays.js +124 -0
- package/lib/framework/selection-overlays.js.map +1 -0
- package/lib/texteditor.d.ts +318 -0
- package/lib/texteditor.js +913 -0
- package/lib/texteditor.js.map +1 -0
- package/lib/util/subject.d.ts +34 -0
- package/lib/util/subject.js +88 -0
- package/lib/util/subject.js.map +1 -0
- package/lib/util/table-bind.d.ts +5 -0
- package/lib/util/table-bind.js +6 -0
- package/lib/util/table-bind.js.map +1 -0
- package/package.json +1 -1
- package/tsconfig.json +1 -1
- package/webpack.config.js +0 -1
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"document-event.js","sourceRoot":"","sources":["../../src/med_editor/framework/document-event.ts"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,26 @@
|
|
1
|
+
import { Subject } from "rxjs";
|
2
|
+
import { EditorContext } from "./document-context";
|
3
|
+
import { ElementReader } from "./element-reader";
|
4
|
+
export interface DocumentHistoryItem {
|
5
|
+
content: any;
|
6
|
+
time: Date;
|
7
|
+
}
|
8
|
+
/**
|
9
|
+
* 支持文档重做和撤销的类
|
10
|
+
*/
|
11
|
+
export declare class DocumentHistory {
|
12
|
+
docCtx: EditorContext;
|
13
|
+
reader: ElementReader;
|
14
|
+
task: Promise<void>;
|
15
|
+
constructor(docCtx: EditorContext, reader: ElementReader, onDocChangedEvent: Subject<void>);
|
16
|
+
private _undoStack;
|
17
|
+
private _index;
|
18
|
+
maxLength: number;
|
19
|
+
generateHistoryItem(): void;
|
20
|
+
get index(): number;
|
21
|
+
get canUndo(): boolean;
|
22
|
+
get canRedo(): boolean;
|
23
|
+
undo(): void;
|
24
|
+
redo(): void;
|
25
|
+
clear(): void;
|
26
|
+
}
|
@@ -0,0 +1,65 @@
|
|
1
|
+
import { debounceTime, filter } from 'rxjs/operators';
|
2
|
+
import { ElementSerialize } from "./element-serialize";
|
3
|
+
/**
|
4
|
+
* 支持文档重做和撤销的类
|
5
|
+
*/
|
6
|
+
export class DocumentHistory {
|
7
|
+
docCtx;
|
8
|
+
reader;
|
9
|
+
task = Promise.resolve();
|
10
|
+
constructor(docCtx, reader, onDocChangedEvent) {
|
11
|
+
this.docCtx = docCtx;
|
12
|
+
this.reader = reader;
|
13
|
+
onDocChangedEvent.pipe(filter(() => this.docCtx.viewOptions.enableUndo), debounceTime(1500)).subscribe(() => {
|
14
|
+
this.task.then(() => {
|
15
|
+
if (!this.docCtx.viewOptions.enableUndo || !this.docCtx.isDirty) {
|
16
|
+
return;
|
17
|
+
}
|
18
|
+
this.generateHistoryItem();
|
19
|
+
});
|
20
|
+
});
|
21
|
+
}
|
22
|
+
_undoStack = [];
|
23
|
+
_index = -1;
|
24
|
+
maxLength = 50;
|
25
|
+
generateHistoryItem() {
|
26
|
+
console.log('生成历史记录');
|
27
|
+
if (this.maxLength === this._undoStack.length) {
|
28
|
+
this._undoStack.shift();
|
29
|
+
}
|
30
|
+
this._undoStack.splice(this._index + 1, this._undoStack.length - this._index - 1);
|
31
|
+
const content = ElementSerialize.serialize(this.docCtx.document, this.docCtx.viewOptions);
|
32
|
+
this._undoStack.push({
|
33
|
+
content,
|
34
|
+
time: new Date()
|
35
|
+
});
|
36
|
+
this._index++;
|
37
|
+
}
|
38
|
+
get index() {
|
39
|
+
return this._index;
|
40
|
+
}
|
41
|
+
get canUndo() {
|
42
|
+
return this._index > 0;
|
43
|
+
}
|
44
|
+
get canRedo() {
|
45
|
+
return this._index < this._undoStack.length - 1;
|
46
|
+
}
|
47
|
+
undo() {
|
48
|
+
if (this.canUndo) {
|
49
|
+
this._index--;
|
50
|
+
this.reader.read(this._undoStack[this._index].content);
|
51
|
+
}
|
52
|
+
}
|
53
|
+
redo() {
|
54
|
+
if (this.canRedo) {
|
55
|
+
this._index++;
|
56
|
+
this.reader.read(this._undoStack[this._index].content);
|
57
|
+
}
|
58
|
+
}
|
59
|
+
clear() {
|
60
|
+
this._undoStack = [];
|
61
|
+
this._index = -1;
|
62
|
+
this.generateHistoryItem();
|
63
|
+
}
|
64
|
+
}
|
65
|
+
//# sourceMappingURL=document-history.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"document-history.js","sourceRoot":"","sources":["../../src/med_editor/framework/document-history.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAA;AAGrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAMvD;;GAEG;AACH,MAAM,OAAO,eAAe;IAEL;IAA8B;IADjD,IAAI,GAAkB,OAAO,CAAC,OAAO,EAAE,CAAC;IACxC,YAAmB,MAAqB,EAAS,MAAqB,EAAE,iBAAgC;QAArF,WAAM,GAAN,MAAM,CAAe;QAAS,WAAM,GAAN,MAAM,CAAe;QAClE,iBAAiB,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,EAAE;YACxG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBAChB,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE;oBAC7D,OAAO;iBACV;gBACD,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC/B,CAAC,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;IACP,CAAC;IACO,UAAU,GAA0B,EAAE,CAAC;IACvC,MAAM,GAAW,CAAC,CAAC,CAAC;IAC5B,SAAS,GAAW,EAAE,CAAC;IACvB,mBAAmB;QACf,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACtB,IAAI,IAAI,CAAC,SAAS,KAAK,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE;YAC3C,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;SAC3B;QACD,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAClF,MAAM,OAAO,GAAG,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAC1F,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;YACjB,OAAO;YACP,IAAI,EAAE,IAAI,IAAI,EAAE;SACnB,CAAC,CAAC;QACH,IAAI,CAAC,MAAM,EAAE,CAAC;IAClB,CAAC;IAED,IAAI,KAAK;QACL,OAAO,IAAI,CAAC,MAAM,CAAC;IACvB,CAAC;IAED,IAAI,OAAO;QACP,OAAO,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;IAC3B,CAAC;IAED,IAAI,OAAO;QACP,OAAO,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC;IACpD,CAAC;IAED,IAAI;QACA,IAAI,IAAI,CAAC,OAAO,EAAE;YACd,IAAI,CAAC,MAAM,EAAE,CAAC;YACd,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC;SAC1D;IACL,CAAC;IAED,IAAI;QACA,IAAI,IAAI,CAAC,OAAO,EAAE;YACd,IAAI,CAAC,MAAM,EAAE,CAAC;YACd,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC;SAC1D;IACL,CAAC;IAED,KAAK;QACD,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;QACrB,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACjB,IAAI,CAAC,mBAAmB,EAAE,CAAC;IAC/B,CAAC;CAEJ"}
|
@@ -0,0 +1,16 @@
|
|
1
|
+
import { IImageLoader, ImageSourceItem } from "./document-context";
|
2
|
+
import { ImgLoadStatus } from "./element-define";
|
3
|
+
export declare class DocumentImagesLoader implements IImageLoader {
|
4
|
+
images: Array<ImageSourceItem>;
|
5
|
+
clear(): void;
|
6
|
+
loadImage(src: string, onCallback: (status: ImgLoadStatus) => void): void;
|
7
|
+
invokeImgLoad(src: string, status: ImgLoadStatus): void;
|
8
|
+
getLoadTasks(): Array<Promise<void>>;
|
9
|
+
getImage(src: string): HTMLImageElement | undefined;
|
10
|
+
/**
|
11
|
+
* 判断图片是否都已经加载完毕
|
12
|
+
* 用于打印时判断,如果当前图片没有加载完毕就打印,图片是打印不出来
|
13
|
+
* @returns
|
14
|
+
*/
|
15
|
+
imagesLoadCompleted(): boolean;
|
16
|
+
}
|
@@ -0,0 +1,66 @@
|
|
1
|
+
export class DocumentImagesLoader {
|
2
|
+
images = [];
|
3
|
+
clear() {
|
4
|
+
this.images.length = 0;
|
5
|
+
}
|
6
|
+
loadImage(src, onCallback) {
|
7
|
+
if (!src) {
|
8
|
+
return;
|
9
|
+
}
|
10
|
+
//已经存在的资源不需要重新加载
|
11
|
+
let matchItem = this.images.find(item => item.src === src);
|
12
|
+
if (matchItem) {
|
13
|
+
if (matchItem.loadStatus === 'no') {
|
14
|
+
matchItem.cbs.push(onCallback);
|
15
|
+
}
|
16
|
+
else {
|
17
|
+
onCallback(matchItem.loadStatus);
|
18
|
+
}
|
19
|
+
return;
|
20
|
+
}
|
21
|
+
const ele = new Image();
|
22
|
+
ele.src = src;
|
23
|
+
const task = new Promise((r, i) => {
|
24
|
+
ele.onload = (e) => { this.invokeImgLoad(src, 'completed'); r(); };
|
25
|
+
ele.onerror = (e) => { this.invokeImgLoad(src, 'error'); r(); };
|
26
|
+
});
|
27
|
+
const imgItem = {
|
28
|
+
ele,
|
29
|
+
src,
|
30
|
+
cbs: [onCallback],
|
31
|
+
loadStatus: 'no',
|
32
|
+
task
|
33
|
+
};
|
34
|
+
this.images.push(imgItem);
|
35
|
+
// if (this.viewOptions.resourceMode === 'immediate') {
|
36
|
+
// ele.onload = (e) => { this.invokeImgLoad(src, 'completed'); };
|
37
|
+
// ele.onerror = (e) => { this.invokeImgLoad(src, 'error'); };
|
38
|
+
// }
|
39
|
+
}
|
40
|
+
invokeImgLoad(src, status) {
|
41
|
+
const img = this.images.find(item => item.src === src);
|
42
|
+
if (img) {
|
43
|
+
img.loadStatus = status;
|
44
|
+
img.cbs.forEach(cb => cb(status));
|
45
|
+
}
|
46
|
+
}
|
47
|
+
getLoadTasks() {
|
48
|
+
return this.images.map(item => item.task);
|
49
|
+
}
|
50
|
+
getImage(src) {
|
51
|
+
const img = this.images.find(item => item.src === src);
|
52
|
+
return img?.ele;
|
53
|
+
}
|
54
|
+
/**
|
55
|
+
* 判断图片是否都已经加载完毕
|
56
|
+
* 用于打印时判断,如果当前图片没有加载完毕就打印,图片是打印不出来
|
57
|
+
* @returns
|
58
|
+
*/
|
59
|
+
imagesLoadCompleted() {
|
60
|
+
if (this.images.length === 0) {
|
61
|
+
return true;
|
62
|
+
}
|
63
|
+
return this.images.every(item => ['completed', 'error'].includes(item.loadStatus));
|
64
|
+
}
|
65
|
+
}
|
66
|
+
//# sourceMappingURL=document-images-loader.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"document-images-loader.js","sourceRoot":"","sources":["../../src/med_editor/framework/document-images-loader.ts"],"names":[],"mappings":"AAGA,MAAM,OAAO,oBAAoB;IAC7B,MAAM,GAA2B,EAAE,CAAC;IAEpC,KAAK;QACD,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;IAC3B,CAAC;IAED,SAAS,CAAC,GAAW,EAAE,UAA2C;QAC9D,IAAI,CAAC,GAAG,EAAE;YACN,OAAO;SACV;QACD,gBAAgB;QAChB,IAAI,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC;QAC3D,IAAI,SAAS,EAAE;YACX,IAAI,SAAS,CAAC,UAAU,KAAK,IAAI,EAAE;gBAC/B,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;aAClC;iBAAM;gBACH,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;aACpC;YACD,OAAO;SACV;QACD,MAAM,GAAG,GAAG,IAAI,KAAK,EAAE,CAAC;QACxB,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC;QACd,MAAM,IAAI,GAAG,IAAI,OAAO,CAAO,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YACpC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YACnE,GAAG,CAAC,OAAO,GAAG,CAAC,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACpE,CAAC,CAAC,CAAC;QACH,MAAM,OAAO,GAAoB;YAC7B,GAAG;YACH,GAAG;YACH,GAAG,EAAE,CAAC,UAAU,CAAC;YACjB,UAAU,EAAE,IAAI;YAChB,IAAI;SACP,CAAC;QACF,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QACzB,uDAAuD;QACvD,qEAAqE;QACrE,kEAAkE;QAClE,IAAI;IACR,CAAC;IAED,aAAa,CAAC,GAAW,EAAE,MAAqB;QAC5C,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC;QACvD,IAAI,GAAG,EAAE;YACL,GAAG,CAAC,UAAU,GAAG,MAAM,CAAC;YACxB,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC;SACrC;IACL,CAAC;IAED,YAAY;QACR,OAAO,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC9C,CAAC;IAGD,QAAQ,CAAC,GAAW;QAChB,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC;QACvD,OAAO,GAAG,EAAE,GAAG,CAAC;IACpB,CAAC;IAED;;;;OAIG;IACH,mBAAmB;QACf,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;YAC1B,OAAO,IAAI,CAAC;SACf;QACD,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAA;IACtF,CAAC;CACJ"}
|
@@ -0,0 +1,78 @@
|
|
1
|
+
import { Subject } from "rxjs";
|
2
|
+
import { LeafElement } from "./element-define";
|
3
|
+
import { EditorContext } from "./document-context";
|
4
|
+
export interface ICompositionStartInfo {
|
5
|
+
element: LeafElement;
|
6
|
+
offset: number;
|
7
|
+
}
|
8
|
+
export interface InputData {
|
9
|
+
composition?: boolean;
|
10
|
+
compositionStartInfo?: ICompositionStartInfo;
|
11
|
+
prevInputData?: string;
|
12
|
+
data: string;
|
13
|
+
}
|
14
|
+
/**
|
15
|
+
* 输入处理
|
16
|
+
*/
|
17
|
+
export declare class DocumentInput {
|
18
|
+
private editInput;
|
19
|
+
private editCursor;
|
20
|
+
private cursorWrapper;
|
21
|
+
private docCtx;
|
22
|
+
/**
|
23
|
+
* 光标是否可见
|
24
|
+
*/
|
25
|
+
private _cursorVisibility;
|
26
|
+
/**
|
27
|
+
* 光标闪烁状态
|
28
|
+
*/
|
29
|
+
private _cursorBlinksState;
|
30
|
+
private cursorBlinksIntervalID;
|
31
|
+
private compositionStart;
|
32
|
+
private compositionPrevData;
|
33
|
+
private compositionStartInfo;
|
34
|
+
onInputEvent: Subject<InputData>;
|
35
|
+
onBackspaceEvent: Subject<KeyboardEvent>;
|
36
|
+
onDeleteEvent: Subject<KeyboardEvent>;
|
37
|
+
onEnterEvent: Subject<void>;
|
38
|
+
onLeftEvent: Subject<void>;
|
39
|
+
onRightEvent: Subject<void>;
|
40
|
+
onCopyEvent: Subject<ClipboardEvent>;
|
41
|
+
onCutEvent: Subject<ClipboardEvent>;
|
42
|
+
onPasteEvent: Subject<ClipboardEvent>;
|
43
|
+
onInsertBr: Subject<void>;
|
44
|
+
onSelectAllEvent: Subject<void>;
|
45
|
+
onHomeEvent: Subject<void>;
|
46
|
+
onEndEvent: Subject<void>;
|
47
|
+
onUpEvent: Subject<void>;
|
48
|
+
onDownEvent: Subject<void>;
|
49
|
+
constructor(editInput: HTMLInputElement, editCursor: HTMLSpanElement, cursorWrapper: HTMLDivElement, docCtx: EditorContext);
|
50
|
+
/**
|
51
|
+
* 设置光标闪烁
|
52
|
+
*/
|
53
|
+
startCursorBlinks(): void;
|
54
|
+
destroy(): void;
|
55
|
+
/**
|
56
|
+
* 设置光标闪烁
|
57
|
+
*/
|
58
|
+
setCursorBlinks(): void;
|
59
|
+
/**
|
60
|
+
* 设置光标位置
|
61
|
+
* @param position
|
62
|
+
*/
|
63
|
+
setCursorPosition(position: {
|
64
|
+
x: number;
|
65
|
+
y: number;
|
66
|
+
height: number;
|
67
|
+
}): void;
|
68
|
+
/**
|
69
|
+
* 设置虚拟光标的可见性
|
70
|
+
* @param visibility
|
71
|
+
*/
|
72
|
+
setCursorVisibility(visibility: boolean): void;
|
73
|
+
/**
|
74
|
+
* 设置输入状态
|
75
|
+
* @param focus
|
76
|
+
*/
|
77
|
+
setInputFocus(focus: boolean): void;
|
78
|
+
}
|
@@ -0,0 +1,239 @@
|
|
1
|
+
import { fromEvent, Subject } from "rxjs";
|
2
|
+
import { KeyboradElementEvent } from "./element-event-define";
|
3
|
+
import { DocumentEvent } from "./document-event";
|
4
|
+
/**
|
5
|
+
* 输入处理
|
6
|
+
*/
|
7
|
+
export class DocumentInput {
|
8
|
+
editInput;
|
9
|
+
editCursor;
|
10
|
+
cursorWrapper;
|
11
|
+
docCtx;
|
12
|
+
/**
|
13
|
+
* 光标是否可见
|
14
|
+
*/
|
15
|
+
_cursorVisibility = false;
|
16
|
+
/**
|
17
|
+
* 光标闪烁状态
|
18
|
+
*/
|
19
|
+
_cursorBlinksState = false;
|
20
|
+
cursorBlinksIntervalID;
|
21
|
+
//是否是开启输入法了
|
22
|
+
compositionStart = false;
|
23
|
+
//开启输入法后输入的文字
|
24
|
+
compositionPrevData;
|
25
|
+
//开启输入法后的的元素
|
26
|
+
compositionStartInfo;
|
27
|
+
//输入内容事件
|
28
|
+
onInputEvent = new Subject();
|
29
|
+
//backspace 键盘事件
|
30
|
+
onBackspaceEvent = new Subject();
|
31
|
+
//delete 键盘事件
|
32
|
+
onDeleteEvent = new Subject();
|
33
|
+
//enter 键盘事件
|
34
|
+
onEnterEvent = new Subject();
|
35
|
+
//左键
|
36
|
+
onLeftEvent = new Subject();
|
37
|
+
//右键
|
38
|
+
onRightEvent = new Subject();
|
39
|
+
//复制
|
40
|
+
onCopyEvent = new Subject();
|
41
|
+
//剪切
|
42
|
+
onCutEvent = new Subject();
|
43
|
+
//粘贴
|
44
|
+
onPasteEvent = new Subject();
|
45
|
+
//插入换行符
|
46
|
+
onInsertBr = new Subject();
|
47
|
+
//ctrl+A 全选事件
|
48
|
+
onSelectAllEvent = new Subject();
|
49
|
+
//home 事件
|
50
|
+
onHomeEvent = new Subject();
|
51
|
+
//end 事件
|
52
|
+
onEndEvent = new Subject();
|
53
|
+
onUpEvent = new Subject();
|
54
|
+
onDownEvent = new Subject();
|
55
|
+
constructor(editInput, editCursor, cursorWrapper, docCtx) {
|
56
|
+
this.editInput = editInput;
|
57
|
+
this.editCursor = editCursor;
|
58
|
+
this.cursorWrapper = cursorWrapper;
|
59
|
+
this.docCtx = docCtx;
|
60
|
+
this.startCursorBlinks();
|
61
|
+
fromEvent(this.editInput, 'blur').subscribe(() => {
|
62
|
+
this._cursorVisibility = false;
|
63
|
+
//console.log('输入框 blur');
|
64
|
+
});
|
65
|
+
fromEvent(this.editInput, 'focus').subscribe(() => {
|
66
|
+
//console.log('输入框 focus');
|
67
|
+
});
|
68
|
+
fromEvent(this.editInput, 'input').subscribe(() => {
|
69
|
+
if (this.compositionStart) {
|
70
|
+
return;
|
71
|
+
}
|
72
|
+
if (!this.editInput.value) {
|
73
|
+
return;
|
74
|
+
}
|
75
|
+
//console.log('输入文字了');
|
76
|
+
if (!this.compositionStart) {
|
77
|
+
const { startControl, startOffset } = this.docCtx.selectionState;
|
78
|
+
this.onInputEvent.next({
|
79
|
+
data: this.editInput.value, prevInputData: '', compositionStartInfo: {
|
80
|
+
element: startControl,
|
81
|
+
offset: startOffset
|
82
|
+
}
|
83
|
+
});
|
84
|
+
this.editInput.value = '';
|
85
|
+
}
|
86
|
+
});
|
87
|
+
fromEvent(this.editInput, 'compositionstart').subscribe((evt) => {
|
88
|
+
this.compositionStart = true;
|
89
|
+
this.compositionPrevData = '';
|
90
|
+
const { startControl, startOffset } = this.docCtx.selectionState;
|
91
|
+
//console.log('输入法开始');
|
92
|
+
this.compositionStartInfo = {
|
93
|
+
element: startControl,
|
94
|
+
offset: startOffset
|
95
|
+
};
|
96
|
+
});
|
97
|
+
fromEvent(this.editInput, 'compositionupdate').subscribe((evt) => {
|
98
|
+
if (evt.data === this.compositionPrevData) {
|
99
|
+
return;
|
100
|
+
}
|
101
|
+
//console.log('输入了:' + evt.data);
|
102
|
+
this.onInputEvent.next({
|
103
|
+
data: evt.data,
|
104
|
+
compositionStartInfo: this.compositionStartInfo,
|
105
|
+
composition: true,
|
106
|
+
prevInputData: this.compositionPrevData
|
107
|
+
});
|
108
|
+
this.compositionPrevData = evt.data;
|
109
|
+
});
|
110
|
+
fromEvent(this.editInput, 'compositionend').subscribe((evt) => {
|
111
|
+
//console.log('compositionend')
|
112
|
+
this.compositionStart = false;
|
113
|
+
this.editInput.value = "";
|
114
|
+
this.compositionPrevData = '';
|
115
|
+
// this.onInputEvent.next({
|
116
|
+
// data: evt.data,
|
117
|
+
// compositionStartOffset: this.compositionStartOffset,
|
118
|
+
// compositionRecordContent: this.compositionRecordContent
|
119
|
+
// });
|
120
|
+
// this.onInputEvent.next({
|
121
|
+
// data: evt.data,
|
122
|
+
// compositionStartInfo: this.compositionStartInfo,
|
123
|
+
// composition: true,
|
124
|
+
// prevInputData: ''
|
125
|
+
// });
|
126
|
+
this.compositionStartInfo = null;
|
127
|
+
//this.compositionRecordContent = '';
|
128
|
+
});
|
129
|
+
fromEvent(this.editInput, 'keydown').subscribe((evt) => {
|
130
|
+
const keyEvent = new KeyboradElementEvent(this.docCtx);
|
131
|
+
keyEvent.sourceEvent = evt;
|
132
|
+
if (DocumentEvent.invokeEvent('ElementKeyDown', this.docCtx.selectionState.startControl, keyEvent, 'Capture', this.docCtx)) {
|
133
|
+
return;
|
134
|
+
}
|
135
|
+
if (evt.keyCode === 8) {
|
136
|
+
this.onBackspaceEvent.next(evt);
|
137
|
+
}
|
138
|
+
else if (evt.keyCode === 13 && !evt.shiftKey) {
|
139
|
+
this.onEnterEvent.next();
|
140
|
+
}
|
141
|
+
else if (evt.keyCode === 37) {
|
142
|
+
this.onLeftEvent.next();
|
143
|
+
}
|
144
|
+
else if (evt.keyCode === 39) {
|
145
|
+
this.onRightEvent.next();
|
146
|
+
}
|
147
|
+
else if (evt.keyCode === 38) {
|
148
|
+
this.onUpEvent.next();
|
149
|
+
}
|
150
|
+
else if (evt.keyCode === 40) {
|
151
|
+
this.onDownEvent.next();
|
152
|
+
}
|
153
|
+
else if (evt.keyCode === 9) {
|
154
|
+
evt.preventDefault();
|
155
|
+
}
|
156
|
+
else if (evt.keyCode === 13 && evt.shiftKey) {
|
157
|
+
evt.preventDefault();
|
158
|
+
this.onInsertBr.next();
|
159
|
+
}
|
160
|
+
else if (evt.keyCode === 46) {
|
161
|
+
this.onDeleteEvent.next(evt);
|
162
|
+
}
|
163
|
+
else if (evt.ctrlKey && evt.keyCode === 65) {
|
164
|
+
evt.preventDefault();
|
165
|
+
this.onSelectAllEvent.next();
|
166
|
+
}
|
167
|
+
else if (evt.keyCode === 36) {
|
168
|
+
this.onHomeEvent.next();
|
169
|
+
}
|
170
|
+
else if (evt.keyCode === 35) {
|
171
|
+
this.onEndEvent.next();
|
172
|
+
}
|
173
|
+
});
|
174
|
+
fromEvent(this.editInput, "copy").subscribe(evt => {
|
175
|
+
this.onCopyEvent.next(evt);
|
176
|
+
});
|
177
|
+
fromEvent(this.editInput, "paste").subscribe(evt => {
|
178
|
+
this.onPasteEvent.next(evt);
|
179
|
+
});
|
180
|
+
fromEvent(this.editInput, "cut").subscribe(evt => {
|
181
|
+
this.onCutEvent.next(evt);
|
182
|
+
});
|
183
|
+
}
|
184
|
+
/**
|
185
|
+
* 设置光标闪烁
|
186
|
+
*/
|
187
|
+
startCursorBlinks() {
|
188
|
+
// this.cursorBlinksIntervalID = setInterval(() => {
|
189
|
+
// //this.setCursorBlinks();
|
190
|
+
// }, 500);
|
191
|
+
}
|
192
|
+
destroy() {
|
193
|
+
clearInterval(this.cursorBlinksIntervalID);
|
194
|
+
}
|
195
|
+
/**
|
196
|
+
* 设置光标闪烁
|
197
|
+
*/
|
198
|
+
setCursorBlinks() {
|
199
|
+
this.editCursor.style.background = this._cursorBlinksState ? 'transparent' : 'black';
|
200
|
+
this._cursorBlinksState = !this._cursorBlinksState;
|
201
|
+
}
|
202
|
+
/**
|
203
|
+
* 设置光标位置
|
204
|
+
* @param position
|
205
|
+
*/
|
206
|
+
setCursorPosition(position) {
|
207
|
+
this.cursorWrapper.style.left = position.x + 'px';
|
208
|
+
this.cursorWrapper.style.top = position.y + 'px';
|
209
|
+
this.cursorWrapper.style.height = position.height + 'px';
|
210
|
+
this.setCursorVisibility(true);
|
211
|
+
//this.setCursorInputStatus();
|
212
|
+
}
|
213
|
+
/**
|
214
|
+
* 设置虚拟光标的可见性
|
215
|
+
* @param visibility
|
216
|
+
*/
|
217
|
+
setCursorVisibility(visibility) {
|
218
|
+
this.cursorWrapper.style.display = visibility ? 'block' : 'none';
|
219
|
+
if (visibility) {
|
220
|
+
this.setInputFocus(true);
|
221
|
+
}
|
222
|
+
}
|
223
|
+
/**
|
224
|
+
* 设置输入状态
|
225
|
+
* @param focus
|
226
|
+
*/
|
227
|
+
setInputFocus(focus) {
|
228
|
+
if (focus) {
|
229
|
+
this.editInput.readOnly = false;
|
230
|
+
this.editInput.focus();
|
231
|
+
}
|
232
|
+
else {
|
233
|
+
//this.editInput.blur();
|
234
|
+
this.editInput.readOnly = true;
|
235
|
+
this.docCtx.selectionState.cursorPos = null;
|
236
|
+
}
|
237
|
+
}
|
238
|
+
}
|
239
|
+
//# sourceMappingURL=document-input-cursor.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"document-input-cursor.js","sourceRoot":"","sources":["../../src/med_editor/framework/document-input-cursor.ts"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,34 @@
|
|
1
|
+
import { ElementMeasure } from "./element-measure";
|
2
|
+
import { ElementPaint } from "./element-paint";
|
3
|
+
import { ElementRenderCut } from "./element-render-cut";
|
4
|
+
import { DocumentRenderObject } from "./impl/document/doc-impl";
|
5
|
+
import { RenderContenxtType } from "./render-context";
|
6
|
+
import { Element, SelectionContentRange, ViewOptions } from "./element-define";
|
7
|
+
import { DocumentContainerRender } from "./impl/document/doc-container-impl";
|
8
|
+
import { CommsContainerRenderObject } from "./impl/comments/comments-container-impl";
|
9
|
+
import { EditorContext } from "./document-context";
|
10
|
+
export declare class DocumentPaint {
|
11
|
+
private viewOptions;
|
12
|
+
private renderContext;
|
13
|
+
private docCtx;
|
14
|
+
private selectedSets;
|
15
|
+
elementMeasure: ElementMeasure;
|
16
|
+
elementRenderCut: ElementRenderCut;
|
17
|
+
elementPaint: ElementPaint;
|
18
|
+
docPages: Array<DocumentRenderObject>;
|
19
|
+
docContainer: DocumentContainerRender;
|
20
|
+
commsContainer: CommsContainerRenderObject;
|
21
|
+
constructor(viewOptions: ViewOptions, renderContext: RenderContenxtType, docCtx: EditorContext, selectedSets: Map<Element, SelectionContentRange>);
|
22
|
+
rePages(): void;
|
23
|
+
/**
|
24
|
+
* 获取设置文档容器的总高度
|
25
|
+
*/
|
26
|
+
getDocumentContainerHeight(): number;
|
27
|
+
refreshView(rePaint?: boolean): void;
|
28
|
+
getDocPages(): Array<DocumentRenderObject>;
|
29
|
+
getDocContainer(): DocumentContainerRender;
|
30
|
+
/***
|
31
|
+
* 设置审阅区间样式痕迹
|
32
|
+
*/
|
33
|
+
setCommRangeMark(): void;
|
34
|
+
}
|