@hailin-zheng/editor-core 1.0.14 → 1.0.18

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 (144) hide show
  1. package/README.md +1613 -0
  2. package/lib/doc-ruler.js +1 -1
  3. package/lib/doc-ruler.js.map +1 -1
  4. package/lib/framework/common-util.js +1 -1
  5. package/lib/framework/common-util.js.map +1 -1
  6. package/lib/framework/document-change.js +1 -1
  7. package/lib/framework/document-change.js.map +1 -1
  8. package/lib/framework/document-combine.js +1 -1
  9. package/lib/framework/document-combine.js.map +1 -1
  10. package/lib/framework/document-comment.js +1 -1
  11. package/lib/framework/document-comment.js.map +1 -1
  12. package/lib/framework/document-context.js +1 -1
  13. package/lib/framework/document-context.js.map +1 -1
  14. package/lib/framework/document-eval-func.js +1 -1
  15. package/lib/framework/document-eval-func.js.map +1 -1
  16. package/lib/framework/document-event.js +1 -1
  17. package/lib/framework/document-event.js.map +1 -1
  18. package/lib/framework/document-history.js +1 -1
  19. package/lib/framework/document-history.js.map +1 -1
  20. package/lib/framework/document-images-loader.js +1 -1
  21. package/lib/framework/document-images-loader.js.map +1 -1
  22. package/lib/framework/document-input-cursor.js +1 -1
  23. package/lib/framework/document-input-cursor.js.map +1 -1
  24. package/lib/framework/document-paint.js +1 -1
  25. package/lib/framework/document-paint.js.map +1 -1
  26. package/lib/framework/document-print-offscreen.js +1 -1
  27. package/lib/framework/document-print-offscreen.js.map +1 -1
  28. package/lib/framework/document-print.js +1 -1
  29. package/lib/framework/document-print.js.map +1 -1
  30. package/lib/framework/document-segmenter.js +1 -1
  31. package/lib/framework/document-segmenter.js.map +1 -1
  32. package/lib/framework/document-selection.js +1 -1
  33. package/lib/framework/document-selection.js.map +1 -1
  34. package/lib/framework/document-template.js +1 -1
  35. package/lib/framework/document-template.js.map +1 -1
  36. package/lib/framework/document-textline-mode.js +1 -1
  37. package/lib/framework/document-textline-mode.js.map +1 -1
  38. package/lib/framework/element-define.js +1 -1
  39. package/lib/framework/element-define.js.map +1 -1
  40. package/lib/framework/element-event-define.js +1 -1
  41. package/lib/framework/element-event-define.js.map +1 -1
  42. package/lib/framework/element-measure.js +1 -1
  43. package/lib/framework/element-measure.js.map +1 -1
  44. package/lib/framework/element-paint.js +1 -1
  45. package/lib/framework/element-paint.js.map +1 -1
  46. package/lib/framework/element-props.js +1 -1
  47. package/lib/framework/element-props.js.map +1 -1
  48. package/lib/framework/element-reader.js +1 -1
  49. package/lib/framework/element-reader.js.map +1 -1
  50. package/lib/framework/element-render-cut.js +1 -1
  51. package/lib/framework/element-render-cut.js.map +1 -1
  52. package/lib/framework/element-serialize.js +1 -1
  53. package/lib/framework/element-serialize.js.map +1 -1
  54. package/lib/framework/element-util.js +1 -1
  55. package/lib/framework/element-util.js.map +1 -1
  56. package/lib/framework/impl/checkbox/checkbox-impl.js +1 -1
  57. package/lib/framework/impl/checkbox/checkbox-impl.js.map +1 -1
  58. package/lib/framework/impl/comments/comment-content-impl.js +1 -1
  59. package/lib/framework/impl/comments/comment-content-impl.js.map +1 -1
  60. package/lib/framework/impl/comments/comment-element-impl.js +1 -1
  61. package/lib/framework/impl/comments/comment-element-impl.js.map +1 -1
  62. package/lib/framework/impl/comments/comments-container-impl.js +1 -1
  63. package/lib/framework/impl/comments/comments-container-impl.js.map +1 -1
  64. package/lib/framework/impl/comments/comments-util.js +1 -1
  65. package/lib/framework/impl/comments/comments-util.js.map +1 -1
  66. package/lib/framework/impl/comments/validate-msg-impl.js +1 -1
  67. package/lib/framework/impl/comments/validate-msg-impl.js.map +1 -1
  68. package/lib/framework/impl/data-element/data-decorate-impl.js +1 -1
  69. package/lib/framework/impl/data-element/data-decorate-impl.js.map +1 -1
  70. package/lib/framework/impl/data-element/data-element-barcode.js +1 -1
  71. package/lib/framework/impl/data-element/data-element-barcode.js.map +1 -1
  72. package/lib/framework/impl/data-element/data-element-base-impl.js +1 -1
  73. package/lib/framework/impl/data-element/data-element-base-impl.js.map +1 -1
  74. package/lib/framework/impl/data-element/data-element-check-impl.js +1 -1
  75. package/lib/framework/impl/data-element/data-element-check-impl.js.map +1 -1
  76. package/lib/framework/impl/data-element/data-element-date-impl.js +1 -1
  77. package/lib/framework/impl/data-element/data-element-date-impl.js.map +1 -1
  78. package/lib/framework/impl/data-element/data-element-group-impl.js +1 -1
  79. package/lib/framework/impl/data-element/data-element-group-impl.js.map +1 -1
  80. package/lib/framework/impl/data-element/data-element-image-impl.js +1 -1
  81. package/lib/framework/impl/data-element/data-element-image-impl.js.map +1 -1
  82. package/lib/framework/impl/data-element/data-element-list-impl.js +1 -1
  83. package/lib/framework/impl/data-element/data-element-list-impl.js.map +1 -1
  84. package/lib/framework/impl/data-element/data-element-text-impl.js +1 -1
  85. package/lib/framework/impl/data-element/data-element-text-impl.js.map +1 -1
  86. package/lib/framework/impl/decorate/fill-null-space-imple.js +1 -1
  87. package/lib/framework/impl/decorate/fill-null-space-imple.js.map +1 -1
  88. package/lib/framework/impl/document/doc-body-impl.js +1 -1
  89. package/lib/framework/impl/document/doc-body-impl.js.map +1 -1
  90. package/lib/framework/impl/document/doc-body-part-impl.js +1 -1
  91. package/lib/framework/impl/document/doc-body-part-impl.js.map +1 -1
  92. package/lib/framework/impl/document/doc-container-impl.js +1 -1
  93. package/lib/framework/impl/document/doc-container-impl.js.map +1 -1
  94. package/lib/framework/impl/document/doc-footer-impl.js +1 -1
  95. package/lib/framework/impl/document/doc-footer-impl.js.map +1 -1
  96. package/lib/framework/impl/document/doc-header-impl.js +1 -1
  97. package/lib/framework/impl/document/doc-header-impl.js.map +1 -1
  98. package/lib/framework/impl/document/doc-impl.js +1 -1
  99. package/lib/framework/impl/document/doc-impl.js.map +1 -1
  100. package/lib/framework/impl/media-formula/menstrual-history.js +1 -1
  101. package/lib/framework/impl/media-formula/menstrual-history.js.map +1 -1
  102. package/lib/framework/impl/paragraph/p-impl.js +1 -1
  103. package/lib/framework/impl/paragraph/p-impl.js.map +1 -1
  104. package/lib/framework/impl/picture/image-impl.js +1 -1
  105. package/lib/framework/impl/picture/image-impl.js.map +1 -1
  106. package/lib/framework/impl/radio/radio-impl.js +1 -1
  107. package/lib/framework/impl/radio/radio-impl.js.map +1 -1
  108. package/lib/framework/impl/symbol/br-symbol-impl.js +1 -1
  109. package/lib/framework/impl/symbol/br-symbol-impl.js.map +1 -1
  110. package/lib/framework/impl/symbol/p-symbol-impl.js +1 -1
  111. package/lib/framework/impl/symbol/p-symbol-impl.js.map +1 -1
  112. package/lib/framework/impl/table/table-cell-impl.js +1 -1
  113. package/lib/framework/impl/table/table-cell-impl.js.map +1 -1
  114. package/lib/framework/impl/table/table-impl.js +1 -1
  115. package/lib/framework/impl/table/table-impl.js.map +1 -1
  116. package/lib/framework/impl/table/table-row-impl.js +1 -1
  117. package/lib/framework/impl/table/table-row-impl.js.map +1 -1
  118. package/lib/framework/impl/table/table-split-cell-patch.js +1 -1
  119. package/lib/framework/impl/table/table-split-cell-patch.js.map +1 -1
  120. package/lib/framework/impl/table/table-split-cell.js +1 -1
  121. package/lib/framework/impl/table/table-split-cell.js.map +1 -1
  122. package/lib/framework/impl/table/table-util.js +1 -1
  123. package/lib/framework/impl/table/table-util.js.map +1 -1
  124. package/lib/framework/impl/text/text-impl.js +1 -1
  125. package/lib/framework/impl/text/text-impl.js.map +1 -1
  126. package/lib/framework/impl/text/track-run-impl.js +1 -1
  127. package/lib/framework/impl/text/track-run-impl.js.map +1 -1
  128. package/lib/framework/notify.js +1 -1
  129. package/lib/framework/notify.js.map +1 -1
  130. package/lib/framework/range-util.js +1 -1
  131. package/lib/framework/range-util.js.map +1 -1
  132. package/lib/framework/render-context.js +1 -1
  133. package/lib/framework/render-context.js.map +1 -1
  134. package/lib/framework/render-define.js +1 -1
  135. package/lib/framework/render-define.js.map +1 -1
  136. package/lib/framework/selection-overlays.js +1 -1
  137. package/lib/framework/selection-overlays.js.map +1 -1
  138. package/lib/texteditor.js +1 -1
  139. package/lib/texteditor.js.map +1 -1
  140. package/lib/util/subject.js +1 -1
  141. package/lib/util/subject.js.map +1 -1
  142. package/lib/util/table-bind.js +1 -1
  143. package/lib/util/table-bind.js.map +1 -1
  144. package/package.json +23 -26
@@ -1 +1 @@
1
- {"version":3,"file":"texteditor.js","sourceRoot":"lib/","sources":["texteditor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"texteditor.js","sourceRoot":"lib/","sources":["texteditor.ts"],"names":[],"mappings":"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","sourcesContent":["import { RenderContenxt } from './framework/render-context';\nimport { ContentMenuItem, ContextMenuElementEvent, EventMap, HitEventInfo } from './framework/element-event-define';\nimport { DocumentPaint } from './framework/document-paint';\nimport { ElementReader } from './framework/element-reader';\nimport { DocumentEvent } from './framework/document-event';\nimport { Subject } from 'rxjs';\nimport { DocumentInput } from './framework/document-input-cursor';\nimport { DocumentCursor, DocumentSelection, SelectionState } from './framework/document-selection';\nimport { ElementUtil } from './framework/element-util';\nimport { DocumentChange } from './framework/document-change';\nimport { CursorType } from './framework/render-define';\nimport { SelectionOverlays } from './framework/selection-overlays';\nimport {\n BranchElement,\n DocMode,\n Element,\n ICancelTokenFn,\n LeafElement,\n MarginProps,\n OrientType,\n PageOptions,\n Position,\n TextAlign,\n ViewOptions\n} from './framework/element-define';\nimport { ElementSerialize } from './framework/element-serialize';\nimport { TableElement } from './framework/impl/table/table-impl';\nimport { documentPrint } from './framework/document-print';\nimport { DocumentTemplate } from './framework/document-template';\nimport {\n DataElementInlineGroup,\n DataElementLeaf, IsInSideDataElement,\n validateDataEle\n} from './framework/impl/data-element/data-element-base-impl';\nimport { DocRule } from './doc-ruler';\nimport { ParagraphProps, TextProps } from './framework/element-props';\nimport { TextGroupElement } from './framework/impl/text/text-impl';\nimport { ParagraphElement } from './framework/impl/paragraph/p-impl';\nimport { TableUtil } from './framework/impl/table/table-util';\nimport { EditorContext } from './framework/document-context';\nimport { DocumentElement, DocumentRenderObject } from './framework/impl/document/doc-impl';\nimport { DocumentComment } from './framework/document-comment';\nimport { CommContentBaseElement } from './framework/impl/comments/comment-content-impl';\nimport { DocumentHistory } from './framework/document-history';\nimport { TableRowElement } from './framework/impl/table/table-row-impl';\nimport { getFocusTextSegment } from \"./framework/document-segmenter\";\n\nimport { saveAs } from 'file-saver';\nimport { DocumentBodyElement } from \"./framework/impl/document/doc-body-impl\";\n\nexport class CanvasTextEditor {\n private contentCtx: CanvasRenderingContext2D;\n viewOptions: ViewOptions;\n docCtx: EditorContext;\n private docComment: DocumentComment;\n private renderContext: RenderContenxt;\n private documentPaint: DocumentPaint;\n elementReader: ElementReader;\n private documentEvent: DocumentEvent;\n private documentSelection: DocumentSelection;\n private documentInput: DocumentInput;\n private documentChange: DocumentChange;\n private selectionOverlays: SelectionOverlays;\n private docRule: DocRule;\n private docHistory: DocumentHistory;\n private eventMap: EventMap = new EventMap();\n selectionChanged: Subject<SelectionState> = new Subject();\n beforeRenderSubject: Subject<void> = new Subject();\n afterRenderSubject: Subject<void> = new Subject();\n selectionState: SelectionState;\n //显示右键菜单\n onContextMenuItemChanged: Subject<EditorContenxtProps> = new Subject();\n //显示数据元编辑框\n onShowDataElementEditPanelEvent: Subject<EditorPanelProps> = new Subject();\n onDblClickEvent: Subject<Event> = new Subject();\n onClickEvent: Subject<Event> = new Subject();\n onScrollViewEvent: Subject<number> = new Subject();\n //文档改变事件:内容及样式,业务模块需要根据此事件,来追踪当前文档是否改变的状态\n onDocChangedEvent: Subject<void> = new Subject();\n\n constructor(private docScroll: HTMLDivElement, private holdSpace: HTMLDivElement, private ruleCanvas: HTMLCanvasElement, private editCanvasContainer: HTMLDivElement, private editCanvas: HTMLCanvasElement, private editInput: HTMLInputElement, private editCursor: HTMLSpanElement, private cursorWrapper: HTMLDivElement, private scaleContainer: HTMLDivElement) {\n this.viewOptions = new ViewOptions();\n this.documentSelection = new DocumentSelection();\n this.docCtx = new EditorContext(this.documentSelection.selectionState, this.viewOptions);\n this.viewOptions.copyRightInfo = '万达信息电子病历编辑器,www.wondersgroup.com';\n this.viewOptions.drawCharRectColor = 'green';\n this.viewOptions.showLineRect = true;\n this.viewOptions.docSpace = 20;\n this.viewOptions.reviewWindowWidth = 200;\n this.viewOptions.defaultFontName = '宋体'\n //整个画布的尺寸\n this.viewOptions.viewSettings = {\n width: 1000,\n height: this.getContainerHeight().height\n };\n this.viewOptions.editUser = {\n id: '6666',\n name: '管理员'\n };\n this.viewOptions.fullPageView = false;\n this.viewOptions.enableUndo = true;\n this.createDocViewer();\n this.docComment = new DocumentComment(this.docCtx);\n this.contentCtx = editCanvas.getContext('2d') as CanvasRenderingContext2D;\n this.renderContext = new RenderContenxt(this.contentCtx, this.viewOptions, this.docCtx);\n this.setCanvasProps();\n this.selectionState = this.documentSelection.selectionState;\n this.selectionOverlays = new SelectionOverlays(this.documentSelection.selectionState);\n this.documentPaint = new DocumentPaint(this.viewOptions, this.renderContext, this.docCtx, this.selectionOverlays.selectedSets);\n this.elementReader = new ElementReader(this.docCtx, this.viewOptions, this.renderContext);\n this.documentEvent = new DocumentEvent(editCanvas, this.documentPaint, this.viewOptions, this.documentSelection.selectionState, this.docCtx);\n this.docRule = new DocRule(this.ruleCanvas, this.viewOptions, this.documentSelection.selectionState);\n this.documentChange = new DocumentChange(this.documentSelection.selectionState, this.viewOptions, this.elementReader, this.docCtx, this.docComment);\n this.docHistory = new DocumentHistory(this.docCtx, this.elementReader, this.onDocChangedEvent);\n this.documentInput = new DocumentInput(editInput, editCursor, cursorWrapper, this.docCtx);\n this.documentEvent.hitInfoChanged.subscribe((hitInfo) => {\n this.hitInfoChanged(hitInfo)\n });\n this.documentEvent.clickEvent.subscribe((evt) => {\n this.docClickHandle(evt)\n });\n this.documentEvent.dblClickEvent.subscribe((evt) => {\n this.docDblClickHandle(evt)\n });\n this.documentEvent.changeCursor.subscribe((cursor) => {\n this.changeCursor(cursor)\n });\n this.documentEvent.contextMenu.subscribe(evt => {\n this.onContextMenu(evt)\n });\n this.documentEvent.trackTipsChanged.subscribe(data => {\n });\n this.documentInput.onInputEvent.subscribe(data => {\n this.documentChange.newInput(data)\n });\n this.documentInput.onBackspaceEvent.subscribe((evt) => {\n this.documentChange.onBackspace(evt)\n });\n this.documentInput.onEnterEvent.subscribe(() => {\n this.documentChange.onEnter()\n });\n this.documentInput.onCopyEvent.subscribe((evt) => {\n this.documentChange.onCopy(evt)\n });\n this.documentInput.onCutEvent.subscribe((evt) => {\n this.documentChange.onCut(evt);\n });\n this.documentInput.onPasteEvent.subscribe((evt) => {\n this.documentChange.onPaste(evt)\n });\n this.documentInput.onInsertBr.subscribe(() => {\n this.documentChange.insertSoftBr()\n })\n this.documentInput.onLeftEvent.subscribe(() => {\n this.documentEvent.moveCursorToLeft()\n });\n this.documentInput.onRightEvent.subscribe(() => {\n this.documentEvent.moveCursorToRight()\n });\n this.documentInput.onDeleteEvent.subscribe((evt) => this.documentChange.onDeleteKeyHandler(evt));\n this.documentInput.onSelectAllEvent.subscribe(() => {\n this.documentEvent.selectAll()\n });\n this.documentInput.onHomeEvent.subscribe(() => {\n this.documentEvent.moveCursorToLineStart()\n })\n this.documentInput.onEndEvent.subscribe(() => {\n this.documentEvent.moveCursorToLineEnd()\n })\n this.documentInput.onUpEvent.subscribe(() => {\n this.documentEvent.moveCursorToUpOrDown(true)\n })\n this.documentInput.onDownEvent.subscribe(() => {\n this.documentEvent.moveCursorToUpOrDown(false)\n })\n this.docCtx.docChange = this.documentChange;\n this.listenContainerHeight();\n this.refreshDocRule();\n this.docCtx.syncRefresh = () => {\n this.flushToSchedule()\n };\n this.viewOptions.onChange.subscribe((type) => {\n this.resetViewer(type)\n })\n }\n\n /**\n * 设置标尺\n */\n refreshDocRule(): void {\n let docLeft = 0//CommonUtil.getOffsetX(this.editCanvas.parentElement as HTMLDivElement);\n let pagePL = 0, pagePR = 0;\n if (this.documentPaint.docContainer) {\n docLeft += this.documentPaint.docContainer.rect.x;\n }\n if (this.docCtx.document?.props?.padding) {\n const { left, right } = this.docCtx.document.props.padding;\n pagePL = left;\n pagePR = right;\n }\n this.docRule.setRuleOptions({ width: this.viewOptions.docPageSettings.width, pagePL, pagePR, docLeft });\n this.docRule.refreshRule();\n }\n\n createDocViewer(): void {\n this.viewOptions.mmToPixelsRatio = this.measureMMToPixs();\n const width = Math.floor(210 * this.viewOptions.mmToPixelsRatio);\n const height = Math.floor(297 * this.viewOptions.mmToPixelsRatio);\n this.viewOptions.docPageSettings = new PageOptions(width, height);\n this.docScroll.onscroll = (evt) => {\n this.scrollView(evt);\n };\n }\n\n measureMMToPixs(): number {\n const div = document.createElement('div');\n div.style.width = '100mm';\n document.body.appendChild(div);\n const width = div.getBoundingClientRect().width;\n document.body.removeChild(div);\n return width / 100;\n }\n\n flushTask!: (() => void) | null;\n flushTaskThen: Array<(() => void)> = [];\n //是否用于跟踪修改状态,在初始化、数据元赋值等情况不需要跟踪修改标志\n private trackChangeState = true;\n flushToSchedule(): void {\n if (this.docCtx.refreshType === 'content') {\n //触发动态脚本\n this.docCtx.dynamicFunc.invokedScripts();\n this.triggerDocChange();\n }\n if (this.flushTask) {\n return;\n }\n this.flushTask = () => {\n this.refreshDocument();\n this.flushTaskThen.forEach(item => item());\n this.flushTaskThen.length = 0;\n this.flushTask = null;\n };\n Promise.resolve().then(() => {\n if (this.flushTask) {\n this.flushTask();\n }\n });\n }\n\n /**\n * 触发文档改变事件\n * @returns\n */\n triggerDocChange(): void {\n if (!this.trackChangeState) {\n return;\n }\n this.onDocChangedEvent.next();\n }\n\n /**\n * fn函数执行时,不触发onDocChange\n * @param fn\n */\n noEffectChange(fn: () => void): void {\n const prev = this.trackChangeState;\n this.trackChangeState = false;\n try {\n fn();\n } catch (e) {\n console.error(e);\n }\n this.trackChangeState = prev;\n }\n\n\n\n loadDoc(data: any | DocumentElement): void {\n this.elementReader.read(data);\n this.refreshDocument();\n this.refreshDocRule();\n this.docHistory.clear();\n }\n\n /**\n * 更新文档容器高度尺寸\n */\n updateDocumentContainerSize(): void {\n this.holdSpace.style.height = this.documentPaint.getDocumentContainerHeight() + 'px';\n }\n\n scrollView(evt: Event): void {\n const target = evt.target as HTMLDivElement;\n const top = Math.floor(target.scrollTop);\n this.editCanvasContainer.style.top = top + 'px';\n this.cursorWrapper.style.transform = \"translate(0,-\" + top + \"px)\";\n this.viewOptions.translateY = top;\n this.documentPaint.refreshView();\n this.documentEvent.onScrollView();\n this.onScrollViewEvent.next(top);\n\n }\n\n private refreshDocument(): void {\n let rePaint = this.docCtx.refreshType === 'content';\n if (rePaint) {\n this.documentSelection.clearSnapshot();\n this.docComment.readComments();\n\n this.documentPaint.rePages();\n this.beforeRenderSubject.next();\n }\n const ssChanged = this.documentSelection.updateSelectionState();\n this.selectionOverlays.getSelectionTreeData();\n this.documentPaint.refreshView(rePaint);\n this.updateDocumentContainerSize();\n this.setCursor();\n ssChanged && this.selectionChanged.next(this.documentSelection.selectionState);\n this.docRule.refreshRule();\n\n }\n\n private hitInfoChanged(hitInfo: { startHitInfo: HitEventInfo, endHitInfo: HitEventInfo }): void {\n this.documentSelection.setSelectionState(hitInfo);\n this.refreshDocument();\n this.selectionChanged.next(this.documentSelection.selectionState);\n }\n\n /**\n * 设置光标\n */\n private setCursor(): void {\n const { startControl, startOffset } = this.selectionState;\n if (!this.canSetCursor()) {\n this.selectionState.editable = false;\n this.documentInput.setCursorVisibility(false);\n return;\n }\n if (this.selectionState.afterSelectionChanged) {\n //需要重新刷新,不触发GotCusor事件\n if (this.selectionState.afterSelectionChanged(this.selectionState)) {\n this.selectionState.afterSelectionChanged = null;\n return;\n }\n }\n const { startRegion, hitDocIndex } = this.documentEvent.startHitInfo as HitEventInfo;\n const cursorPos = DocumentCursor.getElementCursorPos(startControl, startOffset, startRegion, hitDocIndex);\n this.docCtx.cursorRect = ElementUtil.cloneRect(cursorPos.rect);\n this.documentInput.setCursorPosition(cursorPos.rect);\n this.selectionState.cursorPos = cursorPos.rect;\n this.documentEvent.invokeCursor(startControl);\n }\n\n /**\n * 判断是否光标可以设置接受编辑\n * @returns\n */\n private canSetCursor(): boolean {\n const { startControl, startOffset, editable } = this.selectionState;\n if (!startControl || !editable) {\n return false;\n }\n if (this.viewOptions.docMode === DocMode.Design) {\n return true;\n }\n //浏览模式\n if (this.viewOptions.docMode === DocMode.View) {\n return false;\n }\n //表单模式下,如果不在数据元素中,则不显示光标\n if (this.viewOptions.docMode === DocMode.FormEdit) {\n if (!IsInSideDataElement(startControl, startOffset)) {\n return false;\n }\n }\n if (!ElementUtil.verifyHitable(startControl)) {\n return false;\n }\n //表单模式下,数据元不可编辑\n if (this.viewOptions.docMode === DocMode.FormEdit && IsInSideDataElement(startControl, startOffset)) {\n const dataEle = ElementUtil.getDataElement(startControl);\n if (!dataEle.props.editable) {\n return false;\n }\n }\n return true;\n }\n\n /**\n * 修改光标\n * @param newCursor\n */\n private changeCursor(newCursor: CursorType): void {\n this.editCanvas.style.cursor = newCursor;\n this.viewOptions.cursor = newCursor;\n }\n\n /**\n * 文档点击事件\n */\n private docClickHandle(evt: MouseEvent): void {\n this.setCursor();\n this.selectionOverlays.getSelectionTreeData();\n this.onClickEvent.next(evt);\n }\n\n /**\n * 文档双击事件\n * 处理全选当前段落\n */\n private docDblClickHandle(evt: MouseEvent): void {\n const res = getFocusTextSegment(this.selectionState);\n if (res) {\n this.refreshDocument();\n }\n this.onDblClickEvent.next(evt);\n }\n\n /**\n * 获取当前光标所在的数据元\n * @returns\n */\n getCurrentDataElement(): DataElementInlineGroup | DataElementLeaf | null {\n const selectionState = this.documentSelection.selectionState;\n const { startControl } = selectionState;\n if (startControl) {\n if (!ElementUtil.verifyHitable(startControl)) {\n return null;\n }\n return ElementUtil.getParent(startControl, validateDataEle) as DataElementInlineGroup | DataElementLeaf;\n }\n return null;\n }\n\n /**\n * 设置当前光标所在的数据元的值\n * @param val\n */\n setCurrentDataElementValue(val: any): void {\n const dataEle = this.getCurrentDataElement();\n if (dataEle) {\n dataEle?.setValue(val);\n this.selectionState.clear();\n }\n }\n\n /**\n * 获取数据元位置\n * @param element\n * @returns\n */\n getDataElementPosition(element: LeafElement) {\n const startDecorateRender = this.documentPaint.elementPaint.getLeafElementPaintMap(element);\n if (!startDecorateRender) {\n console.error('未找到数据元开始渲染元素');\n return;\n }\n const { x, height, y, width } = startDecorateRender.rect;\n const pos = ElementUtil.getRenderAbsolutePaintPos(startDecorateRender)\n const position = { x: pos.x + width, y: pos.y + height + 5, translateY: this.viewOptions.translateY };\n return position\n }\n\n /**\n * 获取文档模型\n * @returns\n */\n getDocSchema(): any {\n return ElementSerialize.serialize(this.docCtx.document, this.viewOptions);\n }\n\n getDocSchemaJSON(): string {\n const res = JSON.stringify(this.getDocSchema());\n return res;\n }\n\n /**\n * 右键菜单\n * @param evt\n */\n onContextMenu(evt: MouseEvent): void {\n evt.preventDefault();\n const { selectionState } = this.documentSelection;\n const { startControl } = selectionState;\n if (!startControl) {\n return;\n }\n const elementEvent = new ContextMenuElementEvent(this.docCtx);\n elementEvent.source = startControl;\n DocumentEvent.invokeEvent('ElementContextMenu', startControl, elementEvent, 'All', this.docCtx);\n const position = { x: evt.offsetX + 10, y: evt.offsetY, translateY: this.viewOptions.translateY };\n this.onContextMenuItemChanged.next({ pos: position, menus: elementEvent.menus })\n }\n\n resizeObserver: ResizeObserver | null = null;\n\n listenContainerHeight(): void {\n this.resizeObserver = new ResizeObserver(entries => {\n this.updateDocHeight();\n }\n );\n this.resizeObserver.observe(this.docScroll);\n this.updateDocHeight();\n }\n\n private updateDocHeight(): void {\n const { width, height } = this.getContainerHeight();\n this.viewOptions.viewSettings.width = width;\n this.viewOptions.viewSettings.height = height;\n if (width < this.viewOptions.ContentWidth) {\n this.viewOptions.viewSettings.width = this.viewOptions.ContentWidth;\n }\n this.resetViewer();\n }\n\n resetViewer(type: 'demand' | 'force' | undefined = undefined): void {\n const refreshType = type === 'force' ? 'content' : 'appearance';\n if (refreshType === 'content') {\n this.docCtx.document.pubOnChange('self');\n }\n this.setCanvasProps();\n this.flushToSchedule();\n this.flushTaskThen.push(() => {\n this.refreshDocRule();\n });\n }\n\n /**\n * 缩放视图\n * @param scale\n * @returns\n */\n scaleView(scale: number): number {\n scale = scale < 0.5 ? 0.5 : scale;\n scale = scale > 2 ? 2 : scale;\n this.viewOptions.scale = scale;\n this.scaleContainer.style.transform = `scale(${scale})`;\n this.scaleContainer.style.transformOrigin = \"center top\";\n if (scale === 1) {\n this.scaleContainer.style.transform = '';\n this.scaleContainer.style.transformOrigin = '';\n }\n this.setCanvasProps();\n this.refreshDocRule();\n this.flushToSchedule();\n return scale;\n }\n\n getContainerHeight(): { height: number, width: number } {\n let { height, width } = this.docScroll.getBoundingClientRect();\n // const div=this.docScroll.children[0] as HTMLElement;\n // const { height, width } = div.getBoundingClientRect();\n return { height: Math.floor(height), width: Math.floor(width) };\n }\n\n setCanvasProps(): void {\n this.renderContext?.clear();\n this.renderContext.setCanvasProps();\n this.renderContext?.clear();\n }\n\n /**\n * 在当前位置插入表格\n * @param row\n * @param col\n */\n insertTable(rows: number, cols: number): void {\n const tb = TableElement.createTable(rows, cols);\n this.documentChange.insertTable(tb);\n }\n\n /**\n * 打印所有文档\n */\n printAllPages(): void {\n documentPrint.print(this.documentSelection.selectionState, this.viewOptions, this.docCtx)\n }\n\n /**\n * 导出所有页到base64\n */\n exportAllPagesToBase64(fileName: string): void {\n const imgs = documentPrint.exportCanvasNodes(this.documentSelection.selectionState, this.viewOptions, this.docCtx)\n imgs.forEach((item, i) => item.toBlob(blog => {\n if (blog) {\n saveAs(blog, fileName + i + '.png')\n }\n }))\n }\n\n exportPDF(): void {\n documentPrint.exportPDF('', this.documentSelection.selectionState, this.viewOptions, this.docCtx)\n }\n\n /**\n * 清除文档\n */\n clearDoc(): void {\n if (this.docCtx.document) {\n this.docCtx.document.destroy();\n this.documentSelection.selectionState.clear();\n this.documentEvent.clearHitInfo();\n }\n this.docCtx.clear();\n }\n\n /**\n * 新建文档\n * @param options\n */\n createNewDoc(doc: DocumentElement | null = null): void {\n //this.docCtx.clear();\n const newDoc = doc ?? DocumentTemplate.createA4Doc();\n // this.elementReader.setDocument(newDoc);\n // this.refreshDocument('content');\n this.loadDoc(ElementSerialize.serialize(newDoc, this.viewOptions));\n }\n\n destroy(): void {\n this.docCtx.destroy();\n this.documentEvent.clearSubEvent();\n this.documentInput.destroy();\n this.flushTask = null;\n }\n\n\n /**\n * 获取选区文本属性\n * @returns\n */\n getSelectionTextGroupProps(): TextProps | null {\n const selectionState = this.selectionState;\n const range = selectionState.selectedRange;\n if (!range) {\n if (selectionState.collapsed) {\n if (selectionState.startControl instanceof TextGroupElement) {\n return selectionState.startControl.props;\n }\n }\n return null;\n }\n const startRange = ElementUtil.getFirstSelectedRange(range);\n const endRange = ElementUtil.getLastSelectedRange(range);\n if (startRange.target instanceof TextGroupElement) {\n return startRange.target.props;\n }\n return null;\n }\n\n getSelectionParaProps(): ParagraphProps | null {\n const selectionState = this.selectionState;\n if (!selectionState || !selectionState.startControl) {\n return null;\n }\n const para = ElementUtil.getParentByType(selectionState.startControl, ParagraphElement) as ParagraphElement;\n return para.props;\n }\n\n /**\n * 设置文本字体大小\n * @param fontSize\n * @returns\n */\n setTextFontSize(fontSize: number): void {\n if (isNaN(fontSize)) {\n return;\n }\n const setterFunc = (textProps: TextProps) => {\n textProps.fontSize = fontSize;\n };\n DocumentChange.setTextStyle(this.selectionState, setterFunc);\n }\n\n /**\n * 设置文本颜色\n * @param color \\\n */\n setTextColor(color: string): void {\n color = color || \"rgb(0,0,0)\";\n const setterFunc = (textProps: TextProps) => {\n textProps.color = color;\n };\n DocumentChange.setTextStyle(this.selectionState, setterFunc);\n }\n\n /**\n * 设置文本字体名称\n * @param font\n */\n setTextFont(font: string): void {\n font = font || \"宋体\";\n const setterFunc = (textProps: TextProps) => {\n textProps.fontName = font;\n };\n DocumentChange.setTextStyle(this.selectionState, setterFunc);\n }\n\n /**\n * 应用选中文本格式,用于批量设置格式,例如:格式刷\n * @param newStyle\n */\n applyStyle(newStyle: TextProps): void {\n const setterFunc = (textProps: TextProps) => {\n textProps.setPropsValue(newStyle, textProps);\n };\n DocumentChange.setTextStyle(this.selectionState, setterFunc);\n }\n\n /**\n * 开启格式刷\n */\n enableFormatBrush(): ICancelTokenFn | null {\n const startControl = this.selectionState.startControl;\n if (startControl instanceof TextGroupElement) {\n const selectedStyle = startControl.props.clone(null);\n const selectionOverlayColor = this.viewOptions.selectionOverlaysColor;\n this.viewOptions.selectionOverlaysColor = \"rgba(0,58,140,0.8)\";\n\n const cancelToken: ICancelTokenFn = {};\n const sub = this.onClickEvent.subscribe(() => {\n sub.unsubscribe();\n this.applyStyle(selectedStyle);\n this.viewOptions.selectionOverlaysColor = selectionOverlayColor;\n if (cancelToken.onFinish) {\n cancelToken.onFinish();\n }\n });\n cancelToken.cancel = () => {\n sub.unsubscribe();\n this.viewOptions.selectionOverlaysColor = selectionOverlayColor;\n };\n return cancelToken;\n }\n return null;\n }\n\n /**\n * 设置文本背景颜色\n * @param color\n */\n setTextBackColor(color: string): void {\n const setterFunc = (textProps: TextProps) => {\n textProps.background = color;\n };\n DocumentChange.setTextStyle(this.selectionState, setterFunc);\n }\n\n /**\n * 切换文本加粗、下划线、删除等文本样式\n * @param isEffective\n * @param style\n * @param matchValue\n */\n switchTextStyle<P extends keyof TextProps, V extends TextProps[P]>(isEffective: boolean, style: P, matchValue: V, defaultValue: any = undefined): void {\n const setterFunc = (textProps: TextProps) => {\n if (isEffective) {\n textProps[style] = defaultValue as never;\n //delete textProps[style];\n } else {\n textProps[style] = matchValue;\n }\n };\n DocumentChange.setTextStyle(this.selectionState, setterFunc);\n }\n\n /**\n * 修改字间距\n */\n setLetterSpace(letterSpace: number): void {\n letterSpace = letterSpace <= 0 ? 0 : letterSpace;\n const setterFunc = (textProps: TextProps) => {\n textProps.letterSpace = letterSpace;\n };\n DocumentChange.setTextStyle(this.selectionState, setterFunc);\n }\n\n\n /**\n * 设置段落对齐\n * @param align\n */\n switchParaAlign(align: TextAlign): void {\n const setterFunc = (paraProps: ParagraphProps) => {\n paraProps.textAlign = align;\n };\n DocumentChange.setParaAlign(this.selectionState, setterFunc);\n }\n\n\n combineCell(): void {\n TableUtil.mergeCells(this.selectionState)\n }\n\n /**\n * 切换当前段落项目符号状态\n */\n setParagraphNumberType(): void {\n this.documentChange.setParagraphNumberType();\n }\n\n /**\n * 删除当前批注\n * @param id\n */\n removeComment(id: string): void {\n this.docComment.removeComment(id);\n this.selectionState.clear();\n }\n\n /**\n * 移除焦点所在的批注\n */\n removeCurrentComment(): void {\n const comment = ElementUtil.getParent(this.selectionState.startControl, (item => item instanceof CommContentBaseElement)) as CommContentBaseElement;\n if (comment) {\n this.removeComment(comment.props.id);\n }\n }\n\n /**\n * 插入批注\n */\n insertComment(): void {\n this.documentChange.insertComment();\n }\n\n /**\n * 清除所有批注\n */\n clearAllComments(): void {\n this.docComment.clearAllComments();\n }\n\n\n cutTable(): void {\n const row = ElementUtil.getParentByType(this.selectionState.startControl, TableRowElement) as TableRowElement;\n const tb = row?.parent as TableElement;\n TableUtil.cutTable(tb, row.getIndex());\n const para = new ParagraphElement();\n tb.parent.addChild(para, tb.getIndex() + 1);\n }\n\n /**\n * 初始化当前文档创建用户信息\n * 一份文档只需要设置一次\n */\n initCurrentDocUser(userId: string, userName: string, date: string): void {\n const doc = this.docCtx.document;\n doc.props.createUserId = userId;\n doc.props.createUserName = userName;\n doc.props.createDate = date;\n }\n\n /**\n * 验证文档内容\n * @returns\n */\n validate(): boolean {\n this.docComment.clearAllValidates();\n return this.documentChange.validate();\n }\n\n /**\n * 撤销\n */\n undo(): void {\n this.docHistory.undo();\n }\n\n /**\n * 恢复\n */\n redo(): void {\n this.docHistory.redo();\n }\n\n /**\n * 是否可以撤销\n */\n canUndo(): boolean {\n return this.docHistory.canUndo;\n }\n\n /**\n * 是否可以恢复\n */\n canRedo(): boolean {\n return this.docHistory.canRedo;\n }\n\n switchTrackChanges(eleCtx: BranchElement | null = null): void {\n eleCtx = eleCtx || this.docCtx.document;\n const body = eleCtx.treeFind(item => item instanceof DocumentBodyElement) as DocumentBodyElement;\n if (body) {\n body.trackChanges = !body.trackChanges;\n } else {\n throw new Error('未找到doc-body');\n }\n }\n\n get trackTipsChanged() {\n return this.documentEvent.trackTipsChanged;\n }\n\n switchFullViewPage(): void {\n this.viewOptions.fullPageView = !this.viewOptions.fullPageView;\n }\n\n getSelectedJSON(): string {\n return ElementSerialize.getSelectedJSON(this.selectionState, this.viewOptions);\n }\n\n getSelectedText(): string {\n const copySerializeStr = ElementSerialize.getSelectedStruct(this.selectionState, this.viewOptions);\n return ElementSerialize.serializeString(copySerializeStr as BranchElement);\n }\n\n /**\n * 设置纸张方向\n * @param orientation\n */\n setPaperOrient(orientation: OrientType): void {\n this.docCtx.document.props.orient = orientation;\n this.viewOptions.docPageSettings.orient = orientation;\n this.resetViewer('force');\n this.selectionState.clear();\n }\n\n /**\n * 设置纸张大小,单位为毫米(mm)\n * @param width\n * @param height\n */\n setPaperSize(width: number, height: number): void {\n const docProps = this.docCtx.document.props;\n docProps.width = width;\n docProps.height = height;\n width = Math.floor(width * this.viewOptions.mmToPixelsRatio);\n height = Math.floor(height * this.viewOptions.mmToPixelsRatio);\n this.viewOptions.docPageSettings = new PageOptions(width, height, docProps.orient);\n this.resetViewer('force');\n }\n\n /**\n * 插入强制换页符\n */\n insertPageBreakPara(): void {\n this.documentChange.insertPageBreakPara();\n }\n\n /**\n * 显示当前元素到视图中\n * @param element\n */\n bringToView(element: Element): void {\n const ele = element instanceof BranchElement ? ElementUtil.getFirstLeafElement(element) : element as LeafElement;\n if (ele) {\n const region = ElementUtil.getElementRegion(ele);\n const renderObj = ele.paintRenders[0];\n const docRender = ElementUtil.getParentRender(renderObj, DocumentRenderObject) as DocumentRenderObject;\n const index = docRender.getIndex();\n const cursorPos = DocumentCursor.getElementCursorPos(ele, 0, region, index);\n this.selectionState.surround(element);\n if (cursorPos.rect.y - this.viewOptions.translateY > 0 && cursorPos.rect.y - this.viewOptions.translateY < this.viewOptions.viewPaintHeight) {\n return;\n }\n this.docScroll.scrollTo(cursorPos.rect.x, cursorPos.rect.y - this.viewOptions.translateY);\n }\n }\n\n /**\n * 设置当前文档页边距\n */\n setDocumentMargin(pageMargin: Partial<MarginProps>): void {\n if (!this.docCtx.document) {\n return;\n }\n this.docCtx.document.updateMargin(pageMargin);\n }\n\n /**\n * 插入元素\n * @param targetElement\n * @param targetOffset\n * @param destEleArray\n * @returns\n */\n insertElement(targetElement: Element, targetOffset: number, destEleArray: Array<Element>): Element | null {\n if (!this.selectionState.editable) {\n return null;\n }\n return this.documentChange.insertElement(targetElement, targetOffset, destEleArray);\n }\n\n\n}\n\n\nexport type EditorCurrentPos = {\n pos: Position\n};\n\nexport type EditorContenxtProps = {\n menus: Array<ContentMenuItem>\n} & EditorCurrentPos\n\nexport type EditorPanelProps = {\n type: string;\n} & EditorCurrentPos;\n\n"]}
@@ -85,4 +85,4 @@ export class EditorSubject {
85
85
  this._listeners.forEach(fn => fn(evt));
86
86
  }
87
87
  }
88
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3ViamVjdC5qcyIsInNvdXJjZVJvb3QiOiJsaWIvIiwic291cmNlcyI6WyJ1dGlsL3N1YmplY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBa0JBLE1BQU0sQ0FBQyxNQUFNLFFBQVEsR0FBd0MsSUFBSSxPQUFPLEVBQUUsQ0FBQTtBQU0xRSxNQUFNLFVBQVUsWUFBWSxDQUEyQixPQUFnQixFQUFFLFNBQVksRUFBRSxLQUFtQjtJQUN0RyxJQUFJLFNBQVMsR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3RDLElBQUksQ0FBQyxTQUFTLEVBQUU7UUFDWixTQUFTLEdBQUcsRUFBRSxDQUFDO1FBQ2YsUUFBUSxDQUFDLEdBQUcsQ0FBQyxPQUFPLEVBQUUsU0FBUyxDQUFDLENBQUM7S0FDcEM7SUFDRCxJQUFJLGNBQWMsR0FBRyxTQUFTLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDMUMsSUFBSSxDQUFDLGNBQWMsRUFBRTtRQUNqQixjQUFjLEdBQUcsRUFBRSxDQUFDO1FBQ3BCLFNBQVMsQ0FBQyxTQUFTLENBQUMsR0FBRyxjQUFjLENBQUM7S0FDekM7SUFDRCxjQUFjLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzNCLElBQUksSUFBSSxHQUFDLElBQUksQ0FBQztJQUNkLE9BQU87UUFDSCxJQUFJLEtBQUs7WUFDTCxPQUFPLElBQUksQ0FBQztRQUNoQixDQUFDO1FBQ0QsUUFBUSxDQUFDLEdBQUs7WUFDVixJQUFHLElBQUksRUFBQztnQkFDSixLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7YUFDZDtRQUNMLENBQUM7UUFDRCxXQUFXO1lBQ1AsSUFBRyxJQUFJLEVBQUM7Z0JBQ0osSUFBSSxHQUFDLEtBQUssQ0FBQztnQkFDWCxlQUFlLENBQUMsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLENBQUMsQ0FBQzthQUM5QztRQUNMLENBQUM7S0FDSixDQUFDO0FBQ04sQ0FBQztBQUVELFNBQVMsZUFBZSxDQUF5QixPQUFnQixFQUFFLFNBQVksRUFBRSxLQUFxQjtJQUNsRyxJQUFJLFNBQVMsR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3RDLElBQUksQ0FBQyxTQUFTLEVBQUU7UUFDWixPQUFPO0tBQ1Y7SUFDRCxJQUFJLGNBQWMsR0FBRyxTQUFTLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDMUMsSUFBSSxDQUFDLGNBQWMsRUFBRTtRQUNqQixPQUFPO0tBQ1Y7SUFDRCxNQUFNLEtBQUssR0FBRyxjQUFjLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzVDLElBQUksS0FBSyxHQUFHLENBQUMsQ0FBQyxFQUFFO1FBQ1osY0FBYyxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7S0FDbkM7QUFDTCxDQUFDO0FBT0QsTUFBTSxPQUFPLGFBQWE7SUFDZCxNQUFNLENBQUc7SUFDVCxVQUFVLENBQXdCO0lBQzFDLFlBQVksS0FBTztRQUNmLElBQUksQ0FBQyxNQUFNLEdBQUMsS0FBSyxDQUFDO1FBQ2xCLElBQUksQ0FBQyxVQUFVLEdBQUMsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFDRCxJQUFJLEtBQUs7UUFDTCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUM7SUFDdkIsQ0FBQztJQUNELElBQUksS0FBSyxDQUFDLEtBQU87UUFDYixJQUFJLENBQUMsTUFBTSxHQUFDLEtBQUssQ0FBQztRQUNsQixJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUEsRUFBRTtZQUM5QixRQUFRLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDcEIsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBQ0QsU0FBUyxDQUFDLFFBQXdCO1FBQzlCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQy9CLElBQUksS0FBSyxHQUFDLElBQUksQ0FBQztRQUNmLE1BQU0sV0FBVyxHQUFDLEdBQUUsRUFBRTtZQUNsQixJQUFHLEtBQUssRUFBQztnQkFDTCxLQUFLLEdBQUMsS0FBSyxDQUFDO2dCQUNaLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLENBQUM7YUFDOUI7UUFDTCxDQUFDLENBQUM7UUFDRixPQUFPO1lBQ0gsSUFBSSxLQUFLO2dCQUNMLE9BQU8sS0FBSyxDQUFDO1lBQ2pCLENBQUM7WUFDRCxXQUFXO1NBQ2QsQ0FBQTtJQUNMLENBQUM7SUFDRCxXQUFXLENBQUMsUUFBd0I7UUFDaEMsTUFBTSxLQUFLLEdBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDOUMsSUFBRyxLQUFLLEdBQUMsQ0FBQyxDQUFDLEVBQUM7WUFDUixJQUFJLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUMsQ0FBQyxDQUFDLENBQUM7U0FDbkM7SUFDTCxDQUFDO0lBRUQsUUFBUSxDQUFDLEdBQUs7UUFDVixJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUEsRUFBRSxDQUFBLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQ3pDLENBQUM7Q0FDSiJ9
88
+ //# sourceMappingURL=subject.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"subject.js","sourceRoot":"lib/","sources":["util/subject.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"subject.js","sourceRoot":"lib/","sources":["util/subject.ts"],"names":[],"mappings":"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","sourcesContent":["import {Element, RefreshType} from \"../framework/element-define\";\n\nexport type EventTypeNamesMap={\n refresh:RefreshType;\n click:string;\n}\n\ntype eventNameMap=keyof EventTypeNamesMap;\n\n\nexport interface EventListenerFn<P extends eventNameMap>{\n (evt:P):void;\n}\n\nexport type IEventListenerMap={\n [PropName in keyof EventTypeNamesMap]?:Array<(evt:any)=>void>;\n}\n\nexport const eventMap: WeakMap<Element, IEventListenerMap> = new WeakMap()\nexport interface SubObject{\n get state():boolean;\n unsubscribe():void;\n dispatch(evt:any):void;\n}\nexport function addSubscribe<P extends eventNameMap,E>(element: Element, eventName: P, event:(evt:E)=>void): SubObject {\n let listeners = eventMap.get(element);\n if (!listeners) {\n listeners = {};\n eventMap.set(element, listeners);\n }\n let listenersArray = listeners[eventName];\n if (!listenersArray) {\n listenersArray = [];\n listeners[eventName] = listenersArray;\n }\n listenersArray.push(event);\n let flag=true;\n return {\n get state() {\n return flag;\n },\n dispatch(evt:E){\n if(flag){\n event(evt);\n }\n },\n unsubscribe() {\n if(flag){\n flag=false;\n removeSubscribe(element, eventName, event);\n }\n }\n };\n}\n\nfunction removeSubscribe<P extends eventNameMap>(element: Element, eventName: P, event:(evt:any)=>void): void {\n let listeners = eventMap.get(element);\n if (!listeners) {\n return;\n }\n let listenersArray = listeners[eventName];\n if (!listenersArray) {\n return;\n }\n const index = listenersArray.indexOf(event);\n if (index > -1) {\n listenersArray.splice(index, 1);\n }\n}\n\nexport interface Subscribtion{\n get state():boolean;\n unsubscribe():void;\n}\n\nexport class EditorSubject<T>{\n private _value:T;\n private _listeners:Array<(value:T)=>void>;\n constructor(value:T){\n this._value=value;\n this._listeners=[];\n }\n get value(){\n return this._value;\n }\n set value(value:T){\n this._value=value;\n this._listeners.forEach(listener=>{\n listener(value);\n });\n }\n subscribe(listener:(value:T)=>void):Subscribtion{\n this._listeners.push(listener);\n let state=true;\n const unsubscribe=()=>{\n if(state){\n state=false;\n this.unsubscribe(listener);\n }\n };\n return {\n get state(){\n return state;\n },\n unsubscribe\n }\n }\n unsubscribe(listener:(value:T)=>void){\n const index=this._listeners.indexOf(listener);\n if(index>-1){\n this._listeners.splice(index,1);\n }\n }\n\n dispatch(evt:T){\n this._listeners.forEach(fn=>fn(evt));\n }\n}\n"]}
@@ -3,4 +3,4 @@
3
3
  */
4
4
  export class TableBind {
5
5
  }
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtYmluZC5qcyIsInNvdXJjZVJvb3QiOiJsaWIvIiwic291cmNlcyI6WyJ1dGlsL3RhYmxlLWJpbmQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFDSCxNQUFNLE9BQU8sU0FBUztDQUVyQiJ9
6
+ //# sourceMappingURL=table-bind.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"table-bind.js","sourceRoot":"lib/","sources":["util/table-bind.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,OAAO,SAAS;CAErB"}
1
+ {"version":3,"file":"table-bind.js","sourceRoot":"lib/","sources":["util/table-bind.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,OAAO,SAAS;CAErB","sourcesContent":["/**\n * 用于绑定数据自动生成table-element\n */\nexport class TableBind {\n\n}"]}
package/package.json CHANGED
@@ -1,42 +1,39 @@
1
1
  {
2
2
  "name": "@hailin-zheng/editor-core",
3
- "version": "1.0.14",
4
- "description": "",
5
- "main": "texteditor.ts",
6
- "scripts": {
7
- "test": "echo \"Error: on test\"",
8
- "build": "webpack",
9
- "watch": "webpack --watch",
10
- "start": "webpack serve --open",
11
- "build-ts": "tsc"
12
- },
13
3
  "keywords": [],
14
4
  "author": "",
15
5
  "private": false,
16
6
  "license": "ISC",
17
- "devDependencies": {
18
- "clean-webpack-plugin": "^4.0.0",
19
- "css-loader": "^6.7.1",
20
- "file-loader": "^6.2.0",
21
- "html-webpack-plugin": "^5.5.0",
22
- "style-loader": "^3.3.1",
23
- "ts-loader": "^9.3.1",
24
- "typescript": "^4.7.4",
25
- "webpack": "^5.73.0",
26
- "webpack-cli": "^4.10.0",
27
- "webpack-dev-server": "^4.9.2",
28
- "@types/file-saver": "^2.0.5",
29
- "@types/node": "^17.0.23",
30
- "@types/resize-observer-browser": "^0.1.6",
31
- "@types/bwip-js": "^3.0.0"
7
+ "version": "1.0.18",
8
+ "scripts": {
9
+ "dev": "vite",
10
+ "build": "vue-tsc --noEmit && vite build",
11
+ "preview": "vite preview",
12
+ "clean": "rimraf lib/",
13
+ "build-ts": "npm run clean && tsc --project tsconfig.build-lib.json"
32
14
  },
33
15
  "dependencies": {
34
16
  "bwip-js": "^3.0.5",
17
+ "element-plus": "^2.0.2",
35
18
  "file-saver": "^2.0.5",
36
19
  "jspdf": "^2.5.1",
37
20
  "moment": "^2.29.3",
38
21
  "nanoid": "^3.1.30",
39
- "rxjs": "^6.6.7"
22
+ "rxjs": "^6.6.7",
23
+ "vue": "^3.2.25"
24
+ },
25
+ "devDependencies": {
26
+ "@types/bwip-js": "^3.0.0",
27
+ "@types/file-saver": "^2.0.5",
28
+ "@types/node": "^17.0.23",
29
+ "@types/resize-observer-browser": "^0.1.6",
30
+ "@vitejs/plugin-vue": "^2.2.0",
31
+ "sass": "^1.32.7",
32
+ "sass-loader": "^12.0.0",
33
+ "typescript": "^4.5.4",
34
+ "vite": "^2.8.0",
35
+ "vue-tsc": "^0.29.8",
36
+ "rimraf": "^3.0.2"
40
37
  },
41
38
  "files": [
42
39
  "lib",