@hailin-zheng/editor-core 1.0.15 → 1.0.22
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/README.md +1613 -0
- package/lib/framework/element-props.d.ts +2 -2
- package/lib/framework/impl/index.d.ts +36 -0
- package/lib/index.d.ts +34 -0
- package/lib/index.js +15672 -0
- package/lib/texteditor.d.ts +3 -3
- package/package.json +27 -26
- package/lib/doc-ruler.js +0 -313
- package/lib/doc-ruler.js.map +0 -1
- package/lib/framework/common-util.js +0 -178
- package/lib/framework/common-util.js.map +0 -1
- package/lib/framework/document-change.js +0 -1342
- package/lib/framework/document-change.js.map +0 -1
- package/lib/framework/document-combine.js +0 -40
- package/lib/framework/document-combine.js.map +0 -1
- package/lib/framework/document-comment.js +0 -148
- package/lib/framework/document-comment.js.map +0 -1
- package/lib/framework/document-context.js +0 -330
- package/lib/framework/document-context.js.map +0 -1
- package/lib/framework/document-eval-func.js +0 -48
- package/lib/framework/document-eval-func.js.map +0 -1
- package/lib/framework/document-event.js +0 -1054
- package/lib/framework/document-event.js.map +0 -1
- package/lib/framework/document-history.js +0 -65
- package/lib/framework/document-history.js.map +0 -1
- package/lib/framework/document-images-loader.js +0 -66
- package/lib/framework/document-images-loader.js.map +0 -1
- package/lib/framework/document-input-cursor.js +0 -239
- package/lib/framework/document-input-cursor.js.map +0 -1
- package/lib/framework/document-paint.js +0 -103
- package/lib/framework/document-paint.js.map +0 -1
- package/lib/framework/document-print-offscreen.js +0 -128
- package/lib/framework/document-print-offscreen.js.map +0 -1
- package/lib/framework/document-print.js +0 -203
- package/lib/framework/document-print.js.map +0 -1
- package/lib/framework/document-segmenter.js +0 -106
- package/lib/framework/document-segmenter.js.map +0 -1
- package/lib/framework/document-selection.js +0 -358
- package/lib/framework/document-selection.js.map +0 -1
- package/lib/framework/document-template.js +0 -20
- package/lib/framework/document-template.js.map +0 -1
- package/lib/framework/document-textline-mode.js +0 -30
- package/lib/framework/document-textline-mode.js.map +0 -1
- package/lib/framework/element-define.js +0 -579
- package/lib/framework/element-define.js.map +0 -1
- package/lib/framework/element-event-define.js +0 -108
- package/lib/framework/element-event-define.js.map +0 -1
- package/lib/framework/element-measure.js +0 -551
- package/lib/framework/element-measure.js.map +0 -1
- package/lib/framework/element-paint.js +0 -170
- package/lib/framework/element-paint.js.map +0 -1
- package/lib/framework/element-props.js +0 -809
- package/lib/framework/element-props.js.map +0 -1
- package/lib/framework/element-reader.js +0 -151
- package/lib/framework/element-reader.js.map +0 -1
- package/lib/framework/element-render-cut.js +0 -449
- package/lib/framework/element-render-cut.js.map +0 -1
- package/lib/framework/element-serialize.js +0 -113
- package/lib/framework/element-serialize.js.map +0 -1
- package/lib/framework/element-util.js +0 -1463
- package/lib/framework/element-util.js.map +0 -1
- package/lib/framework/impl/checkbox/checkbox-impl.js +0 -64
- package/lib/framework/impl/checkbox/checkbox-impl.js.map +0 -1
- package/lib/framework/impl/comments/comment-content-impl.js +0 -105
- package/lib/framework/impl/comments/comment-content-impl.js.map +0 -1
- package/lib/framework/impl/comments/comment-element-impl.js +0 -62
- package/lib/framework/impl/comments/comment-element-impl.js.map +0 -1
- package/lib/framework/impl/comments/comments-container-impl.js +0 -62
- package/lib/framework/impl/comments/comments-container-impl.js.map +0 -1
- package/lib/framework/impl/comments/comments-util.js +0 -67
- package/lib/framework/impl/comments/comments-util.js.map +0 -1
- package/lib/framework/impl/comments/validate-msg-impl.js +0 -83
- package/lib/framework/impl/comments/validate-msg-impl.js.map +0 -1
- package/lib/framework/impl/data-element/data-decorate-impl.js +0 -91
- package/lib/framework/impl/data-element/data-decorate-impl.js.map +0 -1
- package/lib/framework/impl/data-element/data-element-barcode.js +0 -115
- package/lib/framework/impl/data-element/data-element-barcode.js.map +0 -1
- package/lib/framework/impl/data-element/data-element-base-impl.js +0 -205
- package/lib/framework/impl/data-element/data-element-base-impl.js.map +0 -1
- package/lib/framework/impl/data-element/data-element-check-impl.js +0 -133
- package/lib/framework/impl/data-element/data-element-check-impl.js.map +0 -1
- package/lib/framework/impl/data-element/data-element-date-impl.js +0 -111
- package/lib/framework/impl/data-element/data-element-date-impl.js.map +0 -1
- package/lib/framework/impl/data-element/data-element-group-impl.js +0 -130
- package/lib/framework/impl/data-element/data-element-group-impl.js.map +0 -1
- package/lib/framework/impl/data-element/data-element-image-impl.js +0 -137
- package/lib/framework/impl/data-element/data-element-image-impl.js.map +0 -1
- package/lib/framework/impl/data-element/data-element-list-impl.js +0 -131
- package/lib/framework/impl/data-element/data-element-list-impl.js.map +0 -1
- package/lib/framework/impl/data-element/data-element-text-impl.js +0 -103
- package/lib/framework/impl/data-element/data-element-text-impl.js.map +0 -1
- package/lib/framework/impl/decorate/fill-null-space-imple.js +0 -43
- package/lib/framework/impl/decorate/fill-null-space-imple.js.map +0 -1
- package/lib/framework/impl/document/doc-body-impl.js +0 -79
- package/lib/framework/impl/document/doc-body-impl.js.map +0 -1
- package/lib/framework/impl/document/doc-body-part-impl.js +0 -94
- package/lib/framework/impl/document/doc-body-part-impl.js.map +0 -1
- package/lib/framework/impl/document/doc-container-impl.js +0 -21
- package/lib/framework/impl/document/doc-container-impl.js.map +0 -1
- package/lib/framework/impl/document/doc-footer-impl.js +0 -77
- package/lib/framework/impl/document/doc-footer-impl.js.map +0 -1
- package/lib/framework/impl/document/doc-header-impl.js +0 -83
- package/lib/framework/impl/document/doc-header-impl.js.map +0 -1
- package/lib/framework/impl/document/doc-impl.js +0 -209
- package/lib/framework/impl/document/doc-impl.js.map +0 -1
- package/lib/framework/impl/media-formula/menstrual-history.js +0 -153
- package/lib/framework/impl/media-formula/menstrual-history.js.map +0 -1
- package/lib/framework/impl/paragraph/p-impl.js +0 -156
- package/lib/framework/impl/paragraph/p-impl.js.map +0 -1
- package/lib/framework/impl/picture/image-impl.js +0 -124
- package/lib/framework/impl/picture/image-impl.js.map +0 -1
- package/lib/framework/impl/radio/radio-impl.js +0 -72
- package/lib/framework/impl/radio/radio-impl.js.map +0 -1
- package/lib/framework/impl/symbol/br-symbol-impl.js +0 -54
- package/lib/framework/impl/symbol/br-symbol-impl.js.map +0 -1
- package/lib/framework/impl/symbol/p-symbol-impl.js +0 -54
- package/lib/framework/impl/symbol/p-symbol-impl.js.map +0 -1
- package/lib/framework/impl/table/table-cell-impl.js +0 -145
- package/lib/framework/impl/table/table-cell-impl.js.map +0 -1
- package/lib/framework/impl/table/table-impl.js +0 -363
- package/lib/framework/impl/table/table-impl.js.map +0 -1
- package/lib/framework/impl/table/table-row-impl.js +0 -75
- package/lib/framework/impl/table/table-row-impl.js.map +0 -1
- package/lib/framework/impl/table/table-split-cell-patch.js +0 -89
- package/lib/framework/impl/table/table-split-cell-patch.js.map +0 -1
- package/lib/framework/impl/table/table-split-cell.js +0 -464
- package/lib/framework/impl/table/table-split-cell.js.map +0 -1
- package/lib/framework/impl/table/table-util.js +0 -678
- package/lib/framework/impl/table/table-util.js.map +0 -1
- package/lib/framework/impl/text/text-impl.js +0 -149
- package/lib/framework/impl/text/text-impl.js.map +0 -1
- package/lib/framework/impl/text/track-run-impl.js +0 -112
- package/lib/framework/impl/text/track-run-impl.js.map +0 -1
- package/lib/framework/notify.js +0 -116
- package/lib/framework/notify.js.map +0 -1
- package/lib/framework/range-util.js +0 -312
- package/lib/framework/range-util.js.map +0 -1
- package/lib/framework/render-context.js +0 -384
- package/lib/framework/render-context.js.map +0 -1
- package/lib/framework/render-define.js +0 -195
- package/lib/framework/render-define.js.map +0 -1
- package/lib/framework/selection-overlays.js +0 -124
- package/lib/framework/selection-overlays.js.map +0 -1
- package/lib/texteditor.js +0 -913
- package/lib/texteditor.js.map +0 -1
- package/lib/util/subject.js +0 -88
- package/lib/util/subject.js.map +0 -1
- package/lib/util/table-bind.js +0 -6
- package/lib/util/table-bind.js.map +0 -1
@@ -1 +0,0 @@
|
|
1
|
-
{"version":3,"file":"common-util.js","sourceRoot":"lib/","sources":["framework/common-util.ts"],"names":[],"mappings":"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","sourcesContent":["import moment from \"moment\";\nimport { Rect } from \"./element-define\";\nimport { BorderType } from \"./render-define\";\ninterface Position {\n x: number;\n y: number;\n}\n\nexport class CommonUtil {\n\n /**\n * 判断坐标是否在矩形框内\n * @param rect \n * @param position \n * @returns \n */\n static isInsideRectByPosition(rect: Rect, position: Position): boolean {\n return position.x >= rect.x\n &&\n position.x <= rect.x + rect.width\n &&\n position.y >= rect.y\n &&\n position.y <= rect.y + rect.height;\n }\n\n static isInsideRectByRect(rect: Rect, position: Rect): boolean {\n return position.x >= rect.x\n &&\n position.x <= rect.x + rect.width\n &&\n position.y >= rect.y\n &&\n position.y <= rect.y + rect.height\n &&\n position.y + position.height <= rect.y + rect.height\n &&\n position.x + position.width <= rect.x + rect.width;\n }\n\n /**\n * 判断坐标是否在矩形的边框上\n * @param rect \n * @param borderWidth \n * @param position \n */\n static isInRectBorder(rect: Rect, borderWidth: number, position: Position): { borderType: BorderType } {\n const leftBorderRect: Rect = { x: 0, y: 0, width: borderWidth, height: rect.height, maxWidth: 0, maxHeight: 0 };\n const rightBorderRect: Rect = { x: rect.width - borderWidth, y: 0, width: borderWidth, height: rect.height, maxWidth: 0, maxHeight: 0 };\n const topBorderRect: Rect = { x: 0, y: 0, width: rect.width, height: borderWidth, maxWidth: 0, maxHeight: 0 };\n const bottomBorderRect: Rect = { x: 0, y: rect.height - borderWidth, width: rect.width, height: borderWidth, maxWidth: 0, maxHeight: 0 };\n let borderType: BorderType = 'none';\n if (this.isInsideRectByPosition(leftBorderRect, position)) {\n borderType = 'left';\n } else if (this.isInsideRectByPosition(rightBorderRect, position)) {\n borderType = 'right';\n } else if (this.isInsideRectByPosition(topBorderRect, position)) {\n borderType = 'top';\n } else if (this.isInsideRectByPosition(bottomBorderRect, position)) {\n borderType = 'bottom';\n }\n return { borderType };\n }\n\n /**\n * 判断坐标是否在图片的缩放操作点上\n */\n static isInPictureResizePoint(rect: Rect, pos: Position, r: number): { borderType: BorderType } | null {\n const { width, height } = rect;\n const x = 0;\n const y = 0;\n const points: Array<{ x: number, y: number, type: BorderType }> = [{ x, y, type: 'left-top' }, { x: x + width, y, type: 'right-top' }, { x: x + (Math.floor(width / 2)), y: y, type: 'top-middle' }, { x, y: y + Math.floor(height / 2), type: 'left-middle' }, { x, y: y + height, type: 'left-bottom' }, { x: width, y: Math.floor(height / 2), type: 'right-middle' }, { x: x + width, y: y + height, type: 'right-bottom' }, { x: x + (Math.floor(width / 2)), y: y + height, type: 'bottom-middle' }];\n for (let i = 0; i < points.length; i++) {\n const point = points[i];\n const { x: px, y: py } = point;\n if (((px - pos.x) * (px - pos.x) + (py - pos.y) * (py - pos.y)) < r * r) {\n return { borderType: point.type };\n }\n }\n return null;\n }\n\n\n /**\n * 整形符合连线要求\n * @param points \n * @param width \n * @param strokeColor \n */\n static resharpPoints(points: Array<Position>): Array<Position> {\n let prevPoint: Position = points[0];\n const array: Array<Position> = [];\n array.push(prevPoint);\n for (let i = 1; i < points.length; i++) {\n const currPoint = points[i];\n //不在同一水平线\n if (currPoint.y !== prevPoint.y && currPoint.x !== prevPoint.x) {\n array.push({ x: currPoint.x, y: prevPoint.y });\n }\n array.push(currPoint);\n prevPoint = currPoint;\n }\n return array;\n }\n\n static getOffsetX(node: HTMLElement): number {\n if (!node.parentElement) {\n throw new Error('node.parentElement is null')\n }\n const parent = node.parentElement.getBoundingClientRect().left;\n const curr = node.getBoundingClientRect().left;\n return curr - parent;\n }\n\n static randomColor() {\n let str = \"#\";\n for (let i = 0; i < 6; i++) {\n str += Math.floor(Math.random() * 16).toString(16);\n }\n return str;\n }\n\n /**\n * 判断一个数值是否在另一个数值的增益区间中\n * @param val \n * @param offset \n * @param compareValue \n * @returns \n */\n static ApproxmateValueInRange(val: number, offset: number, compareValue: number): boolean {\n return (val - offset) <= compareValue && (val + offset) >= compareValue;\n }\n\n\n static getEmptyValue<T>(val: T, emptyVal: T): T {\n if (!val) {\n return emptyVal;\n }\n return val;\n }\n\n /**\n * 移除并集\n * @param array \n * @param deleteItems \n * @returns \n */\n static removeUnionSet<T>(array: Array<T>, deleteItems: Array<T>): Array<T> {\n const arraySet = new Set(array);\n for (let i = 0; i < deleteItems.length; i++) {\n const item = deleteItems[i];\n if (arraySet.has(item)) {\n arraySet.delete(item)\n }\n }\n return Array.from(arraySet);\n }\n\n static nullToString(val: any): string {\n if (val === null || val === undefined) {\n return '';\n }\n return val;\n }\n\n static formatDate(date: Date, format: string): string {\n return moment(date).format(format);\n }\n\n static formatNow(format: string): string {\n return this.formatDate(new Date(), format);\n }\n\n static parseText(text: string, data: object): string {\n const reg = /\\{(.*?)\\}/g;\n let result = text;\n let match;\n while (match = reg.exec(text)) {\n const key = match[1];\n const value = data[key];\n result = result.replace(match[0], value);\n }\n return result;\n }\n\n //获取和当前日期相差的秒数\n static getNowDiffSeconds(date: Date | string): number {\n date = typeof date === 'string' ? new Date(date) : date;\n const now = new Date();\n const diff = now.getTime() - date.getTime();\n return diff / 1000;\n }\n\n //验证当前字符串是否为日期格式\n static isDate(str: string): boolean {\n const reg = /^\\d{4}-\\d{2}-\\d{2}$/;\n return reg.test(str);\n }\n\n}\n"]}
|