@hailin-zheng/editor-core 1.0.1 → 1.0.5

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 (216) hide show
  1. package/package.json +1 -1
  2. package/tsconfig.json +1 -1
  3. package/webpack.config.js +0 -1
  4. package/dist/doc-ruler.d.ts +0 -51
  5. package/dist/doc-ruler.js +0 -313
  6. package/dist/doc-ruler.js.map +0 -1
  7. package/dist/framework/common-util.d.ts +0 -63
  8. package/dist/framework/common-util.js +0 -178
  9. package/dist/framework/common-util.js.map +0 -1
  10. package/dist/framework/document-change.d.ts +0 -265
  11. package/dist/framework/document-change.js +0 -1342
  12. package/dist/framework/document-change.js.map +0 -1
  13. package/dist/framework/document-combine.d.ts +0 -24
  14. package/dist/framework/document-combine.js +0 -40
  15. package/dist/framework/document-combine.js.map +0 -1
  16. package/dist/framework/document-comment.d.ts +0 -46
  17. package/dist/framework/document-comment.js +0 -148
  18. package/dist/framework/document-comment.js.map +0 -1
  19. package/dist/framework/document-context.d.ts +0 -149
  20. package/dist/framework/document-context.js +0 -330
  21. package/dist/framework/document-context.js.map +0 -1
  22. package/dist/framework/document-eval-func.d.ts +0 -18
  23. package/dist/framework/document-eval-func.js +0 -48
  24. package/dist/framework/document-eval-func.js.map +0 -1
  25. package/dist/framework/document-event.d.ts +0 -213
  26. package/dist/framework/document-event.js +0 -1054
  27. package/dist/framework/document-event.js.map +0 -1
  28. package/dist/framework/document-history.d.ts +0 -26
  29. package/dist/framework/document-history.js +0 -65
  30. package/dist/framework/document-history.js.map +0 -1
  31. package/dist/framework/document-images-loader.d.ts +0 -16
  32. package/dist/framework/document-images-loader.js +0 -66
  33. package/dist/framework/document-images-loader.js.map +0 -1
  34. package/dist/framework/document-input-cursor.d.ts +0 -78
  35. package/dist/framework/document-input-cursor.js +0 -239
  36. package/dist/framework/document-input-cursor.js.map +0 -1
  37. package/dist/framework/document-paint.d.ts +0 -34
  38. package/dist/framework/document-paint.js +0 -103
  39. package/dist/framework/document-paint.js.map +0 -1
  40. package/dist/framework/document-print-offscreen.d.ts +0 -38
  41. package/dist/framework/document-print-offscreen.js +0 -128
  42. package/dist/framework/document-print-offscreen.js.map +0 -1
  43. package/dist/framework/document-print.d.ts +0 -60
  44. package/dist/framework/document-print.js +0 -203
  45. package/dist/framework/document-print.js.map +0 -1
  46. package/dist/framework/document-segmenter.d.ts +0 -2
  47. package/dist/framework/document-segmenter.js +0 -106
  48. package/dist/framework/document-segmenter.js.map +0 -1
  49. package/dist/framework/document-selection.d.ts +0 -89
  50. package/dist/framework/document-selection.js +0 -358
  51. package/dist/framework/document-selection.js.map +0 -1
  52. package/dist/framework/document-template.d.ts +0 -4
  53. package/dist/framework/document-template.js +0 -20
  54. package/dist/framework/document-template.js.map +0 -1
  55. package/dist/framework/document-textline-mode.d.ts +0 -7
  56. package/dist/framework/document-textline-mode.js +0 -30
  57. package/dist/framework/document-textline-mode.js.map +0 -1
  58. package/dist/framework/element-define.d.ts +0 -319
  59. package/dist/framework/element-define.js +0 -579
  60. package/dist/framework/element-define.js.map +0 -1
  61. package/dist/framework/element-event-define.d.ts +0 -99
  62. package/dist/framework/element-event-define.js +0 -108
  63. package/dist/framework/element-event-define.js.map +0 -1
  64. package/dist/framework/element-measure.d.ts +0 -97
  65. package/dist/framework/element-measure.js +0 -551
  66. package/dist/framework/element-measure.js.map +0 -1
  67. package/dist/framework/element-paint.d.ts +0 -42
  68. package/dist/framework/element-paint.js +0 -170
  69. package/dist/framework/element-paint.js.map +0 -1
  70. package/dist/framework/element-props.d.ts +0 -301
  71. package/dist/framework/element-props.js +0 -809
  72. package/dist/framework/element-props.js.map +0 -1
  73. package/dist/framework/element-reader.d.ts +0 -19
  74. package/dist/framework/element-reader.js +0 -151
  75. package/dist/framework/element-reader.js.map +0 -1
  76. package/dist/framework/element-render-cut.d.ts +0 -55
  77. package/dist/framework/element-render-cut.js +0 -449
  78. package/dist/framework/element-render-cut.js.map +0 -1
  79. package/dist/framework/element-serialize.d.ts +0 -30
  80. package/dist/framework/element-serialize.js +0 -113
  81. package/dist/framework/element-serialize.js.map +0 -1
  82. package/dist/framework/element-util.d.ts +0 -369
  83. package/dist/framework/element-util.js +0 -1463
  84. package/dist/framework/element-util.js.map +0 -1
  85. package/dist/framework/impl/checkbox/checkbox-impl.d.ts +0 -24
  86. package/dist/framework/impl/checkbox/checkbox-impl.js +0 -64
  87. package/dist/framework/impl/checkbox/checkbox-impl.js.map +0 -1
  88. package/dist/framework/impl/comments/comment-content-impl.d.ts +0 -40
  89. package/dist/framework/impl/comments/comment-content-impl.js +0 -105
  90. package/dist/framework/impl/comments/comment-content-impl.js.map +0 -1
  91. package/dist/framework/impl/comments/comment-element-impl.d.ts +0 -21
  92. package/dist/framework/impl/comments/comment-element-impl.js +0 -62
  93. package/dist/framework/impl/comments/comment-element-impl.js.map +0 -1
  94. package/dist/framework/impl/comments/comments-container-impl.d.ts +0 -22
  95. package/dist/framework/impl/comments/comments-container-impl.js +0 -62
  96. package/dist/framework/impl/comments/comments-container-impl.js.map +0 -1
  97. package/dist/framework/impl/comments/comments-util.d.ts +0 -12
  98. package/dist/framework/impl/comments/comments-util.js +0 -67
  99. package/dist/framework/impl/comments/comments-util.js.map +0 -1
  100. package/dist/framework/impl/comments/validate-msg-impl.d.ts +0 -21
  101. package/dist/framework/impl/comments/validate-msg-impl.js +0 -83
  102. package/dist/framework/impl/comments/validate-msg-impl.js.map +0 -1
  103. package/dist/framework/impl/data-element/data-decorate-impl.d.ts +0 -30
  104. package/dist/framework/impl/data-element/data-decorate-impl.js +0 -91
  105. package/dist/framework/impl/data-element/data-decorate-impl.js.map +0 -1
  106. package/dist/framework/impl/data-element/data-element-barcode.d.ts +0 -31
  107. package/dist/framework/impl/data-element/data-element-barcode.js +0 -115
  108. package/dist/framework/impl/data-element/data-element-barcode.js.map +0 -1
  109. package/dist/framework/impl/data-element/data-element-base-impl.d.ts +0 -68
  110. package/dist/framework/impl/data-element/data-element-base-impl.js +0 -205
  111. package/dist/framework/impl/data-element/data-element-base-impl.js.map +0 -1
  112. package/dist/framework/impl/data-element/data-element-check-impl.d.ts +0 -35
  113. package/dist/framework/impl/data-element/data-element-check-impl.js +0 -133
  114. package/dist/framework/impl/data-element/data-element-check-impl.js.map +0 -1
  115. package/dist/framework/impl/data-element/data-element-date-impl.d.ts +0 -23
  116. package/dist/framework/impl/data-element/data-element-date-impl.js +0 -111
  117. package/dist/framework/impl/data-element/data-element-date-impl.js.map +0 -1
  118. package/dist/framework/impl/data-element/data-element-group-impl.d.ts +0 -23
  119. package/dist/framework/impl/data-element/data-element-group-impl.js +0 -130
  120. package/dist/framework/impl/data-element/data-element-group-impl.js.map +0 -1
  121. package/dist/framework/impl/data-element/data-element-image-impl.d.ts +0 -30
  122. package/dist/framework/impl/data-element/data-element-image-impl.js +0 -137
  123. package/dist/framework/impl/data-element/data-element-image-impl.js.map +0 -1
  124. package/dist/framework/impl/data-element/data-element-list-impl.d.ts +0 -22
  125. package/dist/framework/impl/data-element/data-element-list-impl.js +0 -131
  126. package/dist/framework/impl/data-element/data-element-list-impl.js.map +0 -1
  127. package/dist/framework/impl/data-element/data-element-text-impl.d.ts +0 -23
  128. package/dist/framework/impl/data-element/data-element-text-impl.js +0 -103
  129. package/dist/framework/impl/data-element/data-element-text-impl.js.map +0 -1
  130. package/dist/framework/impl/decorate/fill-null-space-imple.d.ts +0 -21
  131. package/dist/framework/impl/decorate/fill-null-space-imple.js +0 -43
  132. package/dist/framework/impl/decorate/fill-null-space-imple.js.map +0 -1
  133. package/dist/framework/impl/document/doc-body-impl.d.ts +0 -27
  134. package/dist/framework/impl/document/doc-body-impl.js +0 -79
  135. package/dist/framework/impl/document/doc-body-impl.js.map +0 -1
  136. package/dist/framework/impl/document/doc-body-part-impl.d.ts +0 -30
  137. package/dist/framework/impl/document/doc-body-part-impl.js +0 -94
  138. package/dist/framework/impl/document/doc-body-part-impl.js.map +0 -1
  139. package/dist/framework/impl/document/doc-container-impl.d.ts +0 -16
  140. package/dist/framework/impl/document/doc-container-impl.js +0 -21
  141. package/dist/framework/impl/document/doc-container-impl.js.map +0 -1
  142. package/dist/framework/impl/document/doc-footer-impl.d.ts +0 -26
  143. package/dist/framework/impl/document/doc-footer-impl.js +0 -77
  144. package/dist/framework/impl/document/doc-footer-impl.js.map +0 -1
  145. package/dist/framework/impl/document/doc-header-impl.d.ts +0 -26
  146. package/dist/framework/impl/document/doc-header-impl.js +0 -83
  147. package/dist/framework/impl/document/doc-header-impl.js.map +0 -1
  148. package/dist/framework/impl/document/doc-impl.d.ts +0 -61
  149. package/dist/framework/impl/document/doc-impl.js +0 -209
  150. package/dist/framework/impl/document/doc-impl.js.map +0 -1
  151. package/dist/framework/impl/media-formula/menstrual-history.d.ts +0 -35
  152. package/dist/framework/impl/media-formula/menstrual-history.js +0 -153
  153. package/dist/framework/impl/media-formula/menstrual-history.js.map +0 -1
  154. package/dist/framework/impl/paragraph/p-impl.d.ts +0 -45
  155. package/dist/framework/impl/paragraph/p-impl.js +0 -156
  156. package/dist/framework/impl/paragraph/p-impl.js.map +0 -1
  157. package/dist/framework/impl/picture/image-impl.d.ts +0 -31
  158. package/dist/framework/impl/picture/image-impl.js +0 -124
  159. package/dist/framework/impl/picture/image-impl.js.map +0 -1
  160. package/dist/framework/impl/radio/radio-impl.d.ts +0 -22
  161. package/dist/framework/impl/radio/radio-impl.js +0 -72
  162. package/dist/framework/impl/radio/radio-impl.js.map +0 -1
  163. package/dist/framework/impl/symbol/br-symbol-impl.d.ts +0 -22
  164. package/dist/framework/impl/symbol/br-symbol-impl.js +0 -54
  165. package/dist/framework/impl/symbol/br-symbol-impl.js.map +0 -1
  166. package/dist/framework/impl/symbol/p-symbol-impl.d.ts +0 -19
  167. package/dist/framework/impl/symbol/p-symbol-impl.js +0 -54
  168. package/dist/framework/impl/symbol/p-symbol-impl.js.map +0 -1
  169. package/dist/framework/impl/table/table-cell-impl.d.ts +0 -37
  170. package/dist/framework/impl/table/table-cell-impl.js +0 -145
  171. package/dist/framework/impl/table/table-cell-impl.js.map +0 -1
  172. package/dist/framework/impl/table/table-impl.d.ts +0 -55
  173. package/dist/framework/impl/table/table-impl.js +0 -363
  174. package/dist/framework/impl/table/table-impl.js.map +0 -1
  175. package/dist/framework/impl/table/table-row-impl.d.ts +0 -26
  176. package/dist/framework/impl/table/table-row-impl.js +0 -75
  177. package/dist/framework/impl/table/table-row-impl.js.map +0 -1
  178. package/dist/framework/impl/table/table-split-cell-patch.d.ts +0 -20
  179. package/dist/framework/impl/table/table-split-cell-patch.js +0 -89
  180. package/dist/framework/impl/table/table-split-cell-patch.js.map +0 -1
  181. package/dist/framework/impl/table/table-split-cell.d.ts +0 -90
  182. package/dist/framework/impl/table/table-split-cell.js +0 -464
  183. package/dist/framework/impl/table/table-split-cell.js.map +0 -1
  184. package/dist/framework/impl/table/table-util.d.ts +0 -150
  185. package/dist/framework/impl/table/table-util.js +0 -678
  186. package/dist/framework/impl/table/table-util.js.map +0 -1
  187. package/dist/framework/impl/text/text-impl.d.ts +0 -32
  188. package/dist/framework/impl/text/text-impl.js +0 -149
  189. package/dist/framework/impl/text/text-impl.js.map +0 -1
  190. package/dist/framework/impl/text/track-run-impl.d.ts +0 -27
  191. package/dist/framework/impl/text/track-run-impl.js +0 -112
  192. package/dist/framework/impl/text/track-run-impl.js.map +0 -1
  193. package/dist/framework/notify.d.ts +0 -13
  194. package/dist/framework/notify.js +0 -116
  195. package/dist/framework/notify.js.map +0 -1
  196. package/dist/framework/range-util.d.ts +0 -40
  197. package/dist/framework/range-util.js +0 -312
  198. package/dist/framework/range-util.js.map +0 -1
  199. package/dist/framework/render-context.d.ts +0 -91
  200. package/dist/framework/render-context.js +0 -384
  201. package/dist/framework/render-context.js.map +0 -1
  202. package/dist/framework/render-define.d.ts +0 -109
  203. package/dist/framework/render-define.js +0 -195
  204. package/dist/framework/render-define.js.map +0 -1
  205. package/dist/framework/selection-overlays.d.ts +0 -30
  206. package/dist/framework/selection-overlays.js +0 -124
  207. package/dist/framework/selection-overlays.js.map +0 -1
  208. package/dist/texteditor.d.ts +0 -318
  209. package/dist/texteditor.js +0 -913
  210. package/dist/texteditor.js.map +0 -1
  211. package/dist/util/subject.d.ts +0 -34
  212. package/dist/util/subject.js +0 -88
  213. package/dist/util/subject.js.map +0 -1
  214. package/dist/util/table-bind.d.ts +0 -5
  215. package/dist/util/table-bind.js +0 -6
  216. package/dist/util/table-bind.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"document-change.js","sourceRoot":"","sources":["../../src/med_editor/framework/document-change.ts"],"names":[],"mappings":"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"}
@@ -1,24 +0,0 @@
1
- import { DocumentElement } from "./impl/document/doc-impl";
2
- /**
3
- * 文档合并
4
- */
5
- export declare class DocumentCombine {
6
- /**
7
- * 合并模板文档
8
- * 用于设置合并后,页眉页脚等统一部分
9
- */
10
- mainTemplate: DocumentElement;
11
- docParts: Array<{
12
- doc: DocumentElement;
13
- docId: string;
14
- }>;
15
- /**
16
- * 添加需要合并的文档部分
17
- */
18
- add(docPart: DocumentElement, id: string): void;
19
- dispose(): void;
20
- /**
21
- * 用于合并文档计算
22
- */
23
- load(): DocumentElement;
24
- }
@@ -1,40 +0,0 @@
1
- import { DocumentBodyElement } from "./impl/document/doc-body-impl";
2
- import { DocumentBodyPartElement } from "./impl/document/doc-body-part-impl";
3
- /**
4
- * 文档合并
5
- */
6
- export class DocumentCombine {
7
- /**
8
- * 合并模板文档
9
- * 用于设置合并后,页眉页脚等统一部分
10
- */
11
- mainTemplate;
12
- docParts = [];
13
- /**
14
- * 添加需要合并的文档部分
15
- */
16
- add(docPart, id) {
17
- this.docParts.push({ doc: docPart, docId: id });
18
- }
19
- dispose() {
20
- this.docParts.length = 0;
21
- }
22
- /**
23
- * 用于合并文档计算
24
- */
25
- load() {
26
- const template = this.mainTemplate.clone();
27
- const body = template.find((item) => item instanceof DocumentBodyElement);
28
- body.clearItems();
29
- for (let i = 0; i < this.docParts.length; i++) {
30
- const part = this.docParts[i];
31
- const docPartContainer = new DocumentBodyPartElement();
32
- docPartContainer.props.partId = part.docId;
33
- const docPartBody = part.doc.find(item => item instanceof DocumentBodyElement);
34
- docPartContainer.addChild(docPartBody.clone(true));
35
- body.addChild(docPartContainer);
36
- }
37
- return template;
38
- }
39
- }
40
- //# sourceMappingURL=document-combine.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"document-combine.js","sourceRoot":"","sources":["../../src/med_editor/framework/document-combine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAC;AACpE,OAAO,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAG7E;;GAEG;AACH,MAAM,OAAO,eAAe;IACxB;;;OAGG;IACH,YAAY,CAAkB;IAE9B,QAAQ,GAAmD,EAAE,CAAC;IAC9D;;OAEG;IACH,GAAG,CAAC,OAAwB,EAAE,EAAU;QACpC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAA;IACnD,CAAC;IAED,OAAO;QACH,IAAI,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;IAC7B,CAAC;IAED;;OAEG;IACH,IAAI;QACA,MAAM,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC;QAC3C,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,YAAY,mBAAmB,CAAwB,CAAC;QACjG,IAAI,CAAC,UAAU,EAAE,CAAC;QAClB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAC3C,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;YAC9B,MAAM,gBAAgB,GAAG,IAAI,uBAAuB,EAAE,CAAC;YACvD,gBAAgB,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC;YAC3C,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,YAAY,mBAAmB,CAAwB,CAAA;YACrG,gBAAgB,CAAC,QAAQ,CAAC,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;YACnD,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAA;SAClC;QACD,OAAO,QAAQ,CAAC;IACpB,CAAC;CACJ"}
@@ -1,46 +0,0 @@
1
- import { EditorContext } from "./document-context";
2
- import { CommContentBaseElement } from "./impl/comments/comment-content-impl";
3
- import { CommentElement } from "./impl/comments/comment-element-impl";
4
- /**
5
- * 处理文档批注
6
- */
7
- export declare class DocumentComment {
8
- docCtx: EditorContext;
9
- commMarkList: Array<CommentElement>;
10
- commContentList: Array<CommContentBaseElement>;
11
- isDirty: boolean;
12
- constructor(docCtx: EditorContext);
13
- /**
14
- * 读取审阅标记符号
15
- */
16
- readComments(): void;
17
- /**
18
- * 执行删除前,需要更新批注节点位置
19
- */
20
- updateComments(): void;
21
- /**
22
- * 删除批注
23
- * @param id
24
- */
25
- removeComment(id: string): void;
26
- getCommMarkIndex(commMark: CommentElement): number;
27
- /**
28
- * 清除所有批注
29
- */
30
- clearAllComments(): void;
31
- /**
32
- * 清除所有的验证批注
33
- */
34
- clearAllValidates(): void;
35
- /**
36
- * 批注修改后事件
37
- * 用于标注当前文档的批注发生更改了,不再重复读取批注,提高性能
38
- */
39
- afterCommentsChanged(): void;
40
- }
41
- export interface CommMarkSelectedStatus {
42
- startMark: CommentElement;
43
- endMark: CommentElement;
44
- startMarkStatus: boolean;
45
- endMarkStatus: boolean;
46
- }
@@ -1,148 +0,0 @@
1
- import { ElementUtil } from "./element-util";
2
- import { CommentElement } from "./impl/comments/comment-element-impl";
3
- import { TextGroupElement } from "./impl/text/text-impl";
4
- import { RangeUtil } from "./range-util";
5
- /**
6
- * 处理文档批注
7
- */
8
- export class DocumentComment {
9
- docCtx;
10
- commMarkList = [];
11
- commContentList = [];
12
- isDirty = true;
13
- constructor(docCtx) {
14
- this.docCtx = docCtx;
15
- }
16
- /**
17
- * 读取审阅标记符号
18
- */
19
- readComments() {
20
- if (!this.isDirty) {
21
- return;
22
- }
23
- const commList = this.docCtx.document.treeFilter(item => item.type === 'comm');
24
- const startCommList = commList.filter(item => item.props.markType === "start");
25
- const endCommList = commList.filter(item => item.props.markType === "end");
26
- const commMaps = startCommList.map(startItem => {
27
- const end = endCommList.find(endItem => endItem.props.id === startItem.props.id);
28
- if (!end) {
29
- throw new Error('未找到匹配的结束审阅符号');
30
- }
31
- return { start: startItem, end };
32
- });
33
- const commContentList = [];
34
- for (let i = 0; i < this.docCtx.document.commentsContainerElement.length; i++) {
35
- const commContent = this.docCtx.document.commentsContainerElement.getChild(i);
36
- const commMap = commMaps.find(item => item.start.props.id === commContent.props.id);
37
- if (!commMap) {
38
- throw new Error('未找到审阅内容对应的审阅符号');
39
- }
40
- commContent.startMark = commMap.start;
41
- commContent.endMark = commMap.end;
42
- commContentList.push(commContent);
43
- }
44
- this.commMarkList = commList;
45
- this.commContentList = commContentList;
46
- this.docCtx.viewOptions.showReviewWindow = this.commContentList.length > 0;
47
- this.isDirty = false;
48
- }
49
- /**
50
- * 执行删除前,需要更新批注节点位置
51
- */
52
- updateComments() {
53
- const { selectionState } = this.docCtx;
54
- const { startControl, startOffset, collapsed, selectedRange } = selectionState;
55
- if (collapsed) {
56
- if (startOffset === 0) {
57
- return;
58
- }
59
- const nextSiblingEle = ElementUtil.getNextSiblingElement(startControl);
60
- //紧挨着的元素
61
- if (nextSiblingEle instanceof CommentElement && nextSiblingEle.props.markType === 'end') {
62
- if (startControl instanceof TextGroupElement) {
63
- if (startControl.textMeasures.length === startOffset) {
64
- this.removeComment(nextSiblingEle.props.id);
65
- }
66
- }
67
- else {
68
- this.removeComment(nextSiblingEle.props.id);
69
- }
70
- }
71
- }
72
- else {
73
- //如果开始批注被选中,则需要移动开始批注元素到选区末尾
74
- //如果结束批注被选中,则需要删除当前批注
75
- if (!selectedRange) {
76
- return;
77
- }
78
- const endRange = RangeUtil.getEndRangeTarget(selectedRange);
79
- if (!endRange) {
80
- return;
81
- }
82
- const commPairs = [];
83
- for (let i = 0; i < this.commContentList.length; i++) {
84
- const { startMark, endMark } = this.commContentList[i];
85
- const commPair = {
86
- startMark,
87
- endMark,
88
- startMarkStatus: RangeUtil.checkElementFullInRange(selectedRange, startMark),
89
- endMarkStatus: RangeUtil.checkElementFullInRange(selectedRange, endMark),
90
- };
91
- commPairs.push(commPair);
92
- }
93
- for (let i = 0; i < commPairs.length; i++) {
94
- const commPair = commPairs[i];
95
- if (commPair.endMarkStatus) {
96
- this.removeComment(commPair.endMark.props.id);
97
- }
98
- else if (commPair.startMarkStatus) {
99
- // const newStartMark = new CommentElement();
100
- // newStartMark.props.id = commPair.startMark.props.id;
101
- // commPair.startMark.isDecorate = false;
102
- // DocumentChange.insertElement(endRange.target, endRange.endOffset, [newStartMark]);
103
- }
104
- }
105
- }
106
- }
107
- /**
108
- * 删除批注
109
- * @param id
110
- */
111
- removeComment(id) {
112
- const commentMarks = this.commMarkList.filter(item => item.props.id === id);
113
- const commentContent = this.commContentList.find(item => item.props.id === id);
114
- commentMarks.forEach(item => item.remove());
115
- commentContent?.remove();
116
- this.afterCommentsChanged();
117
- }
118
- getCommMarkIndex(commMark) {
119
- const markType = commMark.props.markType;
120
- const commList = this.docCtx.document.treeFilter(item => item.type === 'comm');
121
- const startCommList = commList.filter(item => item.props.markType === markType);
122
- return startCommList.indexOf(commMark);
123
- }
124
- /**
125
- * 清除所有批注
126
- */
127
- clearAllComments() {
128
- this.readComments();
129
- for (let i = 0; i < this.commContentList.length; i++) {
130
- this.removeComment(this.commContentList[i].props.id);
131
- }
132
- this.docCtx.selectionState.clear();
133
- }
134
- /**
135
- * 清除所有的验证批注
136
- */
137
- clearAllValidates() {
138
- this.docCtx.document.treeFilter(item => item.type === 'validate').forEach(item => { this.removeComment(item.props.id); });
139
- }
140
- /**
141
- * 批注修改后事件
142
- * 用于标注当前文档的批注发生更改了,不再重复读取批注,提高性能
143
- */
144
- afterCommentsChanged() {
145
- this.isDirty = true;
146
- }
147
- }
148
- //# sourceMappingURL=document-comment.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"document-comment.js","sourceRoot":"","sources":["../../src/med_editor/framework/document-comment.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,OAAO,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AACtE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAOzC;;GAEG;AACH,MAAM,OAAO,eAAe;IAIL;IAHnB,YAAY,GAA0B,EAAE,CAAC;IACzC,eAAe,GAAkC,EAAE,CAAC;IACpD,OAAO,GAAY,IAAI,CAAC;IACxB,YAAmB,MAAqB;QAArB,WAAM,GAAN,MAAM,CAAe;IAAI,CAAC;IAE7C;;MAEE;IACF,YAAY;QACR,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACf,OAAO;SACV;QACD,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,CAA0B,CAAC;QACxG,MAAM,aAAa,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC;QAC/E,MAAM,WAAW,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,KAAK,KAAK,CAAC,CAAC;QAC3E,MAAM,QAAQ,GAAG,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;YAC3C,MAAM,GAAG,GAAG,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,KAAK,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACjF,IAAI,CAAC,GAAG,EAAE;gBACN,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAA;aAClC;YACD,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,EAAE,CAAA;QACpC,CAAC,CAAC,CAAA;QACF,MAAM,eAAe,GAAkC,EAAE,CAAC;QAC1D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,wBAAwB,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAC3E,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,wBAAwB,CAAC,QAAQ,CAAC,CAAC,CAA2B,CAAC;YACxG,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,KAAK,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACpF,IAAI,CAAC,OAAO,EAAE;gBACV,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC;aACrC;YACD,WAAW,CAAC,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC;YACtC,WAAW,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC;YAClC,eAAe,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;SACpC;QACD,IAAI,CAAC,YAAY,GAAG,QAAQ,CAAC;QAC7B,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;QACvC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,gBAAgB,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC;QAC3E,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;IACzB,CAAC;IAED;;OAEG;IACH,cAAc;QACV,MAAM,EAAE,cAAc,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC;QACvC,MAAM,EAAE,YAAY,EAAE,WAAW,EAAE,SAAS,EAAE,aAAa,EAAE,GAAG,cAAc,CAAC;QAC/E,IAAI,SAAS,EAAE;YACX,IAAI,WAAW,KAAK,CAAC,EAAE;gBACnB,OAAO;aACV;YACD,MAAM,cAAc,GAAG,WAAW,CAAC,qBAAqB,CAAC,YAAY,CAAC,CAAC;YACvE,QAAQ;YACR,IAAI,cAAc,YAAY,cAAc,IAAI,cAAc,CAAC,KAAK,CAAC,QAAQ,KAAK,KAAK,EAAE;gBACrF,IAAI,YAAY,YAAY,gBAAgB,EAAE;oBAC1C,IAAI,YAAY,CAAC,YAAY,CAAC,MAAM,KAAK,WAAW,EAAE;wBAClD,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;qBAC/C;iBACJ;qBAAM;oBACH,IAAI,CAAC,aAAa,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;iBAC/C;aACJ;SACJ;aAAM;YACH,4BAA4B;YAC5B,qBAAqB;YACrB,IAAI,CAAC,aAAa,EAAE;gBAChB,OAAM;aACT;YACD,MAAM,QAAQ,GAAG,SAAS,CAAC,iBAAiB,CAAC,aAAa,CAAC,CAAC;YAC5D,IAAI,CAAC,QAAQ,EAAE;gBACX,OAAM;aACT;YACD,MAAM,SAAS,GAAkC,EAAE,CAAC;YACpD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBAClD,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;gBACvD,MAAM,QAAQ,GAA2B;oBACrC,SAAS;oBACT,OAAO;oBACP,eAAe,EAAE,SAAS,CAAC,uBAAuB,CAAC,aAAa,EAAE,SAAS,CAAC;oBAC5E,aAAa,EAAE,SAAS,CAAC,uBAAuB,CAAC,aAAa,EAAE,OAAO,CAAC;iBAC3E,CAAC;gBACF,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;aAC3B;YAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACvC,MAAM,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;gBAC9B,IAAI,QAAQ,CAAC,aAAa,EAAE;oBACxB,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;iBACjD;qBAAM,IAAI,QAAQ,CAAC,eAAe,EAAE;oBACjC,6CAA6C;oBAC7C,uDAAuD;oBACvD,yCAAyC;oBACzC,qFAAqF;iBACxF;aACJ;SACJ;IACL,CAAC;IAGD;;;OAGG;IACH,aAAa,CAAC,EAAU;QACpB,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QAC5E,MAAM,cAAc,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QAC/E,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAA;QAC3C,cAAc,EAAE,MAAM,EAAE,CAAC;QACzB,IAAI,CAAC,oBAAoB,EAAE,CAAC;IAChC,CAAC;IAED,gBAAgB,CAAC,QAAwB;QACrC,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC;QACzC,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,CAA0B,CAAC;QACxG,MAAM,aAAa,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,KAAK,QAAQ,CAAC,CAAC;QAChF,OAAO,aAAa,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC3C,CAAC;IAED;;OAEG;IACH,gBAAgB;QACZ,IAAI,CAAC,YAAY,EAAE,CAAC;QACpB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAClD,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;SACxD;QACD,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC;IACvC,CAAC;IAED;;OAEG;IACH,iBAAiB;QACb,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA,CAAC,CAAC,CAAC,CAAA;IAC5H,CAAC;IAED;;;OAGG;IACH,oBAAoB;QAChB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;IACxB,CAAC;CAGJ"}
@@ -1,149 +0,0 @@
1
- import { DocumentEvalFunc } from "./document-eval-func";
2
- import { SelectionState } from "./document-selection";
3
- import { BranchElement, Element, ImgLoadStatus, Rect, RefreshType, ViewOptions } from "./element-define";
4
- import { ElementEvent, EventTypes } from "./element-event-define";
5
- import { DataElementValueStruct } from "./element-serialize";
6
- import { DataElementInlineGroup, DataElementLeaf } from "./impl/data-element/data-element-base-impl";
7
- import { DataElementCheck } from "./impl/data-element/data-element-check-impl";
8
- import { DocumentElement } from "./impl/document/doc-impl";
9
- import { TrackRunElement, TrackRunTypeEnum } from "@/med_editor/framework/impl/text/track-run-impl";
10
- import { DocumentChange } from "./document-change";
11
- /**
12
- * 当前打开的文档的上下文信息,当前文档所有的属性设置都暴露在上下文中
13
- */
14
- export declare class EditorContext {
15
- readonly selectionState: SelectionState;
16
- readonly viewOptions: ViewOptions;
17
- isDirty: boolean;
18
- cursorRect: Rect | null;
19
- private _document;
20
- syncRefresh: () => void;
21
- imageLoader: IImageLoader;
22
- dynamicFunc: DocumentEvalFunc;
23
- docChange: DocumentChange;
24
- clearPrevDocCb: (() => void) | null;
25
- constructor(selectionState: SelectionState, viewOptions: ViewOptions);
26
- get document(): DocumentElement;
27
- set document(value: DocumentElement);
28
- clear(): void;
29
- get defaultCtx(): DocumentContext;
30
- getCurrentCtx(ele: Element): DocumentContext;
31
- /**
32
- * 根据当前选区,返回所在的上下文元素,返回类型为DocumentElement|DocumentBodyPartElement
33
- */
34
- getCurrentEleCtx(): BranchElement | null;
35
- getCtx(ele: BranchElement): DocumentContext;
36
- private ele_types_handlers;
37
- registerTypeHandlers<T extends Element>(elementType: {
38
- new (...args: any): T;
39
- }, eventName: EventTypes, handler: (e: ElementEvent) => void, useCapture?: boolean): void;
40
- invokeTypeHandler(ele: Element, eventName: EventTypes, e: ElementEvent, useCapture?: boolean): void;
41
- destroy(): void;
42
- /**
43
- * 切换到行打印模式
44
- */
45
- switchTextlineMode(): void;
46
- /**
47
- * 实例化动态脚本
48
- */
49
- private initScripts;
50
- /**
51
- * 替换数据元
52
- */
53
- replaceDataElement(oldDataElement: DataElementLeaf | DataElementInlineGroup, newElement: DataElementLeaf | DataElementInlineGroup, ss: SelectionState): void;
54
- get refreshType(): RefreshType;
55
- }
56
- export interface ImageSourceItem {
57
- src: string;
58
- task: Promise<void>;
59
- cbs: Array<(status: ImgLoadStatus) => void>;
60
- ele: HTMLImageElement;
61
- loadStatus: ImgLoadStatus;
62
- }
63
- export interface IImageLoader {
64
- clear(): void;
65
- loadImage(src: string, onCallback: (status: ImgLoadStatus) => void): void;
66
- getImage(src: string): HTMLImageElement | undefined;
67
- imagesLoadCompleted(): boolean;
68
- getLoadTasks(): Array<Promise<void>>;
69
- }
70
- /**
71
- * 文档上下文
72
- */
73
- export declare class DocumentContext {
74
- private ctx;
75
- private ss;
76
- constructor(ctx: BranchElement, ss: SelectionState);
77
- getControlIDList(): Array<string>;
78
- getControlInstanceList(): Array<DataElementInlineGroup | DataElementLeaf>;
79
- getControlById(id: string): DataElementInlineGroup | DataElementLeaf;
80
- getControlByName(name: string): DataElementInlineGroup | DataElementLeaf;
81
- /**
82
- * 获取数据元值集合
83
- */
84
- getDataElementValues(): Array<DataElementValueStruct>;
85
- /**
86
- * 获取数据元结构以及get\set闭包调用函数
87
- * @returns
88
- */
89
- getDataElementModelList(): Array<DataCheckEleModel | DataInputEleModel | DataLeafEleModel>;
90
- /**
91
- * 获取复选框数据元结构列表
92
- * @param dataCheckList
93
- * @returns
94
- */
95
- private getDataCheckModelList;
96
- /**
97
- * 获取留痕块元素列表
98
- */
99
- getTrackElements(): Array<TrackRunElement>;
100
- getTrackElmeentById(id: string): TrackRunElement | null;
101
- /**
102
- * 获取留痕块内数据
103
- */
104
- getTracksData(): Array<TrackBlockData>;
105
- setControlValue(id: string, value: string): void;
106
- setControlValueByName(name: string, val: any): void;
107
- /**
108
- * 获取复选框选中的值
109
- */
110
- getCheckBoxValues(groupName: string): Array<string>;
111
- getCheckBoxList(groupName: string): Array<DataElementCheck>;
112
- /**
113
- * 当前上下文执行默认绑定
114
- * @param data
115
- */
116
- bindDataValues(data: string | Object | Array<{
117
- key: string;
118
- value: any;
119
- }>, predicateKey?: 'id' | 'name' | 'fieldName'): void;
120
- }
121
- interface DataEleBaseModel {
122
- id: string;
123
- name: string;
124
- fieldName: string;
125
- getValue: () => any;
126
- setValue: (val: any) => void;
127
- }
128
- interface DataCheckEleModel extends DataEleBaseModel {
129
- item: Array<DataElementCheck>;
130
- multiSelect: boolean;
131
- }
132
- interface DataInputEleModel extends DataEleBaseModel {
133
- item: DataElementInlineGroup;
134
- }
135
- interface DataLeafEleModel extends DataEleBaseModel {
136
- item: DataElementLeaf;
137
- }
138
- /**
139
- * 留痕块结构化数据
140
- */
141
- interface TrackBlockData {
142
- userId: string;
143
- userName: string;
144
- date: string;
145
- type: TrackRunTypeEnum;
146
- content: string;
147
- id: string;
148
- }
149
- export {};