@hailin-zheng/editor-core 2.2.40 → 2.2.41
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/editor.css +638 -638
- package/index-cjs.d.ts +32 -32
- package/index-cjs.js +24337 -24327
- package/index-cjs.js.map +1 -1
- package/index.d.ts +32 -32
- package/index.js +24337 -24327
- package/index.js.map +1 -1
- package/med_editor/doc-editor.d.ts +546 -545
- package/med_editor/doc-rule.d.ts +174 -174
- package/med_editor/editor-core.d.ts +18 -18
- package/med_editor/framework/code-interpreter/ast-parser.d.ts +4 -4
- package/med_editor/framework/code-interpreter/document-eval-func.d.ts +18 -18
- package/med_editor/framework/code-interpreter/dynamic-execute.d.ts +42 -42
- package/med_editor/framework/doc-layout/document-arrange.d.ts +95 -95
- package/med_editor/framework/doc-layout/paragraph-arrange.d.ts +110 -110
- package/med_editor/framework/document-change.d.ts +346 -346
- package/med_editor/framework/document-combine.d.ts +24 -24
- package/med_editor/framework/document-comment.d.ts +38 -38
- package/med_editor/framework/document-context.d.ts +162 -162
- package/med_editor/framework/document-event.d.ts +261 -261
- package/med_editor/framework/document-input-cursor.d.ts +32 -32
- package/med_editor/framework/document-paginator.d.ts +46 -46
- package/med_editor/framework/document-svg.d.ts +36 -36
- package/med_editor/framework/document-template.d.ts +13 -13
- package/med_editor/framework/document-textline-mode.d.ts +6 -6
- package/med_editor/framework/element-define.d.ts +440 -440
- package/med_editor/framework/element-event-define.d.ts +102 -102
- package/med_editor/framework/element-props.d.ts +344 -344
- package/med_editor/framework/element-reader.d.ts +20 -20
- package/med_editor/framework/element-serialize.d.ts +39 -39
- package/med_editor/framework/element-type-handler.d.ts +8 -8
- package/med_editor/framework/history/element-trace-manage.d.ts +107 -107
- package/med_editor/framework/history/element-trace-tracking.d.ts +89 -89
- package/med_editor/framework/impl/checkbox/checkbox-impl.d.ts +19 -19
- package/med_editor/framework/impl/comments/comment-content-impl.d.ts +39 -39
- package/med_editor/framework/impl/comments/comment-element-impl.d.ts +24 -24
- package/med_editor/framework/impl/comments/comments-container-impl.d.ts +19 -19
- package/med_editor/framework/impl/comments/validate-msg-impl.d.ts +19 -19
- package/med_editor/framework/impl/data-element/data-container-impl.d.ts +25 -25
- package/med_editor/framework/impl/data-element/data-decorate-impl.d.ts +16 -16
- package/med_editor/framework/impl/data-element/data-element-barcode.d.ts +32 -32
- package/med_editor/framework/impl/data-element/data-element-base-impl.d.ts +122 -122
- package/med_editor/framework/impl/data-element/data-element-check-impl.d.ts +26 -26
- package/med_editor/framework/impl/data-element/data-element-date-impl.d.ts +23 -23
- package/med_editor/framework/impl/data-element/data-element-group-impl.d.ts +28 -28
- package/med_editor/framework/impl/data-element/data-element-image-impl.d.ts +23 -23
- package/med_editor/framework/impl/data-element/data-element-list-impl.d.ts +21 -21
- package/med_editor/framework/impl/data-element/data-element-text-impl.d.ts +22 -22
- package/med_editor/framework/impl/data-element/qrcode.d.ts +93 -93
- package/med_editor/framework/impl/decorate/fill-null-space-imple.d.ts +16 -16
- package/med_editor/framework/impl/document/doc-body-impl.d.ts +19 -19
- package/med_editor/framework/impl/document/doc-body-part-impl.d.ts +22 -22
- package/med_editor/framework/impl/document/doc-container-impl.d.ts +7 -7
- package/med_editor/framework/impl/document/doc-footer-impl.d.ts +19 -19
- package/med_editor/framework/impl/document/doc-header-impl.d.ts +19 -19
- package/med_editor/framework/impl/document/doc-impl.d.ts +85 -85
- package/med_editor/framework/impl/index.d.ts +41 -41
- package/med_editor/framework/impl/media-formula/menstrual-history.d.ts +31 -31
- package/med_editor/framework/impl/media-formula/permanent-teeth.d.ts +34 -34
- package/med_editor/framework/impl/paragraph/p-impl.d.ts +38 -38
- package/med_editor/framework/impl/picture/RectEle.d.ts +44 -44
- package/med_editor/framework/impl/picture/image-impl.d.ts +24 -24
- package/med_editor/framework/impl/radio/radio-impl.d.ts +17 -17
- package/med_editor/framework/impl/shape/line-impl.d.ts +31 -31
- package/med_editor/framework/impl/svg/svg-impl.d.ts +20 -20
- package/med_editor/framework/impl/symbol/br-symbol-impl.d.ts +18 -18
- package/med_editor/framework/impl/symbol/p-symbol-impl.d.ts +16 -16
- package/med_editor/framework/impl/symbol/page-br-symbol-impl.d.ts +20 -20
- package/med_editor/framework/impl/symbol/tab-symbol-impl.d.ts +15 -15
- package/med_editor/framework/impl/table/table-cell-impl.d.ts +34 -34
- package/med_editor/framework/impl/table/table-impl.d.ts +49 -49
- package/med_editor/framework/impl/table/table-row-impl.d.ts +27 -27
- package/med_editor/framework/impl/table/table-split-cell-patch.d.ts +20 -20
- package/med_editor/framework/impl/table/table-split-cell.d.ts +93 -93
- package/med_editor/framework/impl/table/table-util.d.ts +180 -180
- package/med_editor/framework/impl/text/text-impl.d.ts +34 -34
- package/med_editor/framework/impl/text/track-run-impl.d.ts +27 -27
- package/med_editor/framework/infrastructure/event-subject.d.ts +57 -57
- package/med_editor/framework/infrastructure/notify.d.ts +13 -13
- package/med_editor/framework/print/document-print-offscreen.d.ts +59 -59
- package/med_editor/framework/print/document-print.d.ts +19 -19
- package/med_editor/framework/render-context.d.ts +111 -111
- package/med_editor/framework/render-define.d.ts +169 -169
- package/med_editor/framework/search/search-panel.d.ts +31 -31
- package/med_editor/framework/selection/document-selection.d.ts +92 -92
- package/med_editor/framework/selection/range-util.d.ts +36 -36
- package/med_editor/framework/selection/selection-overlays.d.ts +36 -36
- package/med_editor/framework/suggestions/input-suggestions.d.ts +29 -29
- package/med_editor/framework/util/adjust-viewport-elements.d.ts +12 -12
- package/med_editor/framework/util/common-util.d.ts +77 -77
- package/med_editor/framework/util/document-segmenter.d.ts +2 -2
- package/med_editor/framework/util/element-util.d.ts +417 -417
- package/med_editor/framework/vnode/editor-calendar-vnode.d.ts +44 -44
- package/package.json +18 -18
@@ -1,169 +1,169 @@
|
|
1
|
-
import { Rect, Element, MarginProps, PaddingProps, Position, ViewOptions, BranchElement } from './element-define';
|
2
|
-
import { RenderContext, RenderContextType } from './render-context';
|
3
|
-
import { EditorContext } from "./document-context";
|
4
|
-
/**
|
5
|
-
* 定义组件的UI形式的渲染
|
6
|
-
*/
|
7
|
-
export declare abstract class RenderObject<T extends Element = Element> {
|
8
|
-
element: T;
|
9
|
-
rect: Rect;
|
10
|
-
parent: BranchRenderObject;
|
11
|
-
/**
|
12
|
-
* 可点击性,例如:null-text 占位符元素不具备可点击能力
|
13
|
-
*/
|
14
|
-
disableClick: boolean;
|
15
|
-
constructor(element: T);
|
16
|
-
abstract clone(): RenderObject;
|
17
|
-
destroy(): void;
|
18
|
-
getIndex(): number;
|
19
|
-
exportSVG(event: IEditorVNodeOptions): any;
|
20
|
-
}
|
21
|
-
export declare type IHLNode = {
|
22
|
-
sel: string;
|
23
|
-
data?: {
|
24
|
-
ns?: string;
|
25
|
-
attrs?: {
|
26
|
-
[key: string]: any;
|
27
|
-
};
|
28
|
-
};
|
29
|
-
text?: string;
|
30
|
-
children?: Array<IHLNode>;
|
31
|
-
};
|
32
|
-
export declare const NS = "http://www.w3.org/2000/svg";
|
33
|
-
export declare function HLNode(sel: string, attrs: object | undefined, child?: Array<IHLNode> | string): IHLNode;
|
34
|
-
export declare type ElementExportTypes = 'svg';
|
35
|
-
/**
|
36
|
-
* 叶子节点渲染元素
|
37
|
-
*/
|
38
|
-
export declare abstract class LeafRenderObject<T extends Element = Element> extends RenderObject<T> {
|
39
|
-
constructor(element: T | null);
|
40
|
-
}
|
41
|
-
/**
|
42
|
-
* 枝干节点渲染元素
|
43
|
-
*/
|
44
|
-
export declare abstract class BranchRenderObject<T extends Element = Element> extends RenderObject<T> {
|
45
|
-
t: number;
|
46
|
-
constructor(element: T | null);
|
47
|
-
private children;
|
48
|
-
getItems<T extends RenderObject = RenderObject>(): Array<T>;
|
49
|
-
addChild(...items: Array<RenderObject>): void;
|
50
|
-
insertChild(item: RenderObject, index: number): void;
|
51
|
-
removeChild(child: RenderObject): void;
|
52
|
-
removeChildByIndex(index: number): void;
|
53
|
-
clear(): void;
|
54
|
-
get length(): number;
|
55
|
-
getChild<T extends RenderObject = RenderObject>(index: number): T;
|
56
|
-
getChildIndex(child: RenderObject): number;
|
57
|
-
destroy(): void;
|
58
|
-
}
|
59
|
-
export interface IRenderData {
|
60
|
-
render: RenderContextType;
|
61
|
-
position: Position;
|
62
|
-
docCtx: EditorContext;
|
63
|
-
nextRender: () => void;
|
64
|
-
}
|
65
|
-
/**
|
66
|
-
* 块级渲染元素
|
67
|
-
*/
|
68
|
-
export declare abstract class BlockContentRenderObject<T extends Element = Element> extends BranchRenderObject<T> {
|
69
|
-
margin: MarginProps;
|
70
|
-
padding: PaddingProps;
|
71
|
-
constructor(element: T | null);
|
72
|
-
setRenderWidth(maxWidth: number): void;
|
73
|
-
/**
|
74
|
-
* 获取内容区域框体
|
75
|
-
* @param render
|
76
|
-
* @returns
|
77
|
-
*/
|
78
|
-
getInnerRect(): Rect;
|
79
|
-
getInnerMaxWidth(): number;
|
80
|
-
/**
|
81
|
-
* 根据内框内容高度,更新外框框体高度
|
82
|
-
* @param innerRect
|
83
|
-
*/
|
84
|
-
updateRenderHeight(innerRect: Rect | number): void;
|
85
|
-
}
|
86
|
-
export declare abstract class InlineGroupRenderObject<T extends BranchElement = BranchElement> extends BranchRenderObject<T> {
|
87
|
-
}
|
88
|
-
/**
|
89
|
-
* 包含块级渲染元素的容器元素,例如body、table-cell等
|
90
|
-
*/
|
91
|
-
export declare abstract class BlockContainerRenderObject<T extends Element = Element> extends BranchRenderObject<T> {
|
92
|
-
margin: MarginProps;
|
93
|
-
padding: PaddingProps;
|
94
|
-
constructor(element: T | null);
|
95
|
-
setRenderWidth(maxWidth: number): void;
|
96
|
-
/**
|
97
|
-
* 获取内容区域框体
|
98
|
-
* @param render
|
99
|
-
* @returns
|
100
|
-
*/
|
101
|
-
getInnerRect(): Rect;
|
102
|
-
getInnerMaxWidth(): number;
|
103
|
-
/**
|
104
|
-
* 根据内框内容高度,更新外框框体高度
|
105
|
-
* @param innerRect
|
106
|
-
*/
|
107
|
-
updateRenderHeight(innerRect: Rect | number): void;
|
108
|
-
}
|
109
|
-
/**
|
110
|
-
* 多级 ‘BlockLineRectRenderObject’ 包裹元素,例如 p、table
|
111
|
-
*/
|
112
|
-
export declare abstract class MultiBlockLineRenderObject<T extends Element = Element> extends BlockContentRenderObject<T> {
|
113
|
-
}
|
114
|
-
/**
|
115
|
-
* 容器-子内容为多个行内块级元素,例如table-row
|
116
|
-
*/
|
117
|
-
export declare abstract class InlineBlockContainer extends MultiBlockLineRenderObject {
|
118
|
-
}
|
119
|
-
/**
|
120
|
-
* 服务于table-cell
|
121
|
-
* 可被多级拆分的元素
|
122
|
-
*/
|
123
|
-
export declare abstract class InlineMuiltBlockLineRenderObject<T extends Element = Element> extends MultiBlockLineRenderObject<T> {
|
124
|
-
}
|
125
|
-
/**
|
126
|
-
* 最小不可分割单位的块级行框,例如 p-line
|
127
|
-
* 一行不可存在于两个页面中,块级行框不能分布在两个页面中
|
128
|
-
*/
|
129
|
-
export declare abstract class BlockLineRectRenderObject extends BlockContentRenderObject {
|
130
|
-
}
|
131
|
-
export declare type BorderType = 'left' | 'right' | 'top' | 'bottom' | 'left-middle' | 'right-middle' | 'top-middle' | 'bottom-middle' | 'none' | 'left-top' | 'left-bottom' | 'right-top' | 'right-bottom';
|
132
|
-
export declare type CursorType = 'text' | 'row-resize' | 'col-resize' | 'none' | 'default' | 'move' | 'pointer' | 'w-resize' | 's-resize' | 'se-resize' | 'ne-resize';
|
133
|
-
export declare enum RenderObjectType {
|
134
|
-
Branch = 0,
|
135
|
-
Leaf = 1
|
136
|
-
}
|
137
|
-
export interface IMeasureRenderStruct<T> {
|
138
|
-
rect: Rect;
|
139
|
-
render: T;
|
140
|
-
}
|
141
|
-
export declare type EditorVNodeObject = {
|
142
|
-
sel: string;
|
143
|
-
data?: {
|
144
|
-
attrs?: {
|
145
|
-
[key: string]: any;
|
146
|
-
};
|
147
|
-
props?: {
|
148
|
-
[key: string]: any;
|
149
|
-
};
|
150
|
-
on?: {
|
151
|
-
[key: string]: Function;
|
152
|
-
};
|
153
|
-
[key: string]: any;
|
154
|
-
};
|
155
|
-
key?: string;
|
156
|
-
text?: string;
|
157
|
-
children?: Array<EditorVNodeObject | string>;
|
158
|
-
};
|
159
|
-
export declare type IEditorVNodeOptions = {
|
160
|
-
getChildNodes: (node: RenderObject) => EditorVNodeObject[] | EditorVNodeObject | null | undefined;
|
161
|
-
options: ViewOptions;
|
162
|
-
highlights: Array<EditorVNodeObject>;
|
163
|
-
relativePagePos: Position;
|
164
|
-
globalPos: Position;
|
165
|
-
renderCtx: RenderContext;
|
166
|
-
getCounter: (key: string) => number;
|
167
|
-
mode: 'print' | 'view';
|
168
|
-
addChangeTips: (tipVNode: EditorVNodeObject) => void;
|
169
|
-
};
|
1
|
+
import { Rect, Element, MarginProps, PaddingProps, Position, ViewOptions, BranchElement } from './element-define';
|
2
|
+
import { RenderContext, RenderContextType } from './render-context';
|
3
|
+
import { EditorContext } from "./document-context";
|
4
|
+
/**
|
5
|
+
* 定义组件的UI形式的渲染
|
6
|
+
*/
|
7
|
+
export declare abstract class RenderObject<T extends Element = Element> {
|
8
|
+
element: T;
|
9
|
+
rect: Rect;
|
10
|
+
parent: BranchRenderObject;
|
11
|
+
/**
|
12
|
+
* 可点击性,例如:null-text 占位符元素不具备可点击能力
|
13
|
+
*/
|
14
|
+
disableClick: boolean;
|
15
|
+
constructor(element: T);
|
16
|
+
abstract clone(): RenderObject;
|
17
|
+
destroy(): void;
|
18
|
+
getIndex(): number;
|
19
|
+
exportSVG(event: IEditorVNodeOptions): any;
|
20
|
+
}
|
21
|
+
export declare type IHLNode = {
|
22
|
+
sel: string;
|
23
|
+
data?: {
|
24
|
+
ns?: string;
|
25
|
+
attrs?: {
|
26
|
+
[key: string]: any;
|
27
|
+
};
|
28
|
+
};
|
29
|
+
text?: string;
|
30
|
+
children?: Array<IHLNode>;
|
31
|
+
};
|
32
|
+
export declare const NS = "http://www.w3.org/2000/svg";
|
33
|
+
export declare function HLNode(sel: string, attrs: object | undefined, child?: Array<IHLNode> | string): IHLNode;
|
34
|
+
export declare type ElementExportTypes = 'svg';
|
35
|
+
/**
|
36
|
+
* 叶子节点渲染元素
|
37
|
+
*/
|
38
|
+
export declare abstract class LeafRenderObject<T extends Element = Element> extends RenderObject<T> {
|
39
|
+
constructor(element: T | null);
|
40
|
+
}
|
41
|
+
/**
|
42
|
+
* 枝干节点渲染元素
|
43
|
+
*/
|
44
|
+
export declare abstract class BranchRenderObject<T extends Element = Element> extends RenderObject<T> {
|
45
|
+
t: number;
|
46
|
+
constructor(element: T | null);
|
47
|
+
private children;
|
48
|
+
getItems<T extends RenderObject = RenderObject>(): Array<T>;
|
49
|
+
addChild(...items: Array<RenderObject>): void;
|
50
|
+
insertChild(item: RenderObject, index: number): void;
|
51
|
+
removeChild(child: RenderObject): void;
|
52
|
+
removeChildByIndex(index: number): void;
|
53
|
+
clear(): void;
|
54
|
+
get length(): number;
|
55
|
+
getChild<T extends RenderObject = RenderObject>(index: number): T;
|
56
|
+
getChildIndex(child: RenderObject): number;
|
57
|
+
destroy(): void;
|
58
|
+
}
|
59
|
+
export interface IRenderData {
|
60
|
+
render: RenderContextType;
|
61
|
+
position: Position;
|
62
|
+
docCtx: EditorContext;
|
63
|
+
nextRender: () => void;
|
64
|
+
}
|
65
|
+
/**
|
66
|
+
* 块级渲染元素
|
67
|
+
*/
|
68
|
+
export declare abstract class BlockContentRenderObject<T extends Element = Element> extends BranchRenderObject<T> {
|
69
|
+
margin: MarginProps;
|
70
|
+
padding: PaddingProps;
|
71
|
+
constructor(element: T | null);
|
72
|
+
setRenderWidth(maxWidth: number): void;
|
73
|
+
/**
|
74
|
+
* 获取内容区域框体
|
75
|
+
* @param render
|
76
|
+
* @returns
|
77
|
+
*/
|
78
|
+
getInnerRect(): Rect;
|
79
|
+
getInnerMaxWidth(): number;
|
80
|
+
/**
|
81
|
+
* 根据内框内容高度,更新外框框体高度
|
82
|
+
* @param innerRect
|
83
|
+
*/
|
84
|
+
updateRenderHeight(innerRect: Rect | number): void;
|
85
|
+
}
|
86
|
+
export declare abstract class InlineGroupRenderObject<T extends BranchElement = BranchElement> extends BranchRenderObject<T> {
|
87
|
+
}
|
88
|
+
/**
|
89
|
+
* 包含块级渲染元素的容器元素,例如body、table-cell等
|
90
|
+
*/
|
91
|
+
export declare abstract class BlockContainerRenderObject<T extends Element = Element> extends BranchRenderObject<T> {
|
92
|
+
margin: MarginProps;
|
93
|
+
padding: PaddingProps;
|
94
|
+
constructor(element: T | null);
|
95
|
+
setRenderWidth(maxWidth: number): void;
|
96
|
+
/**
|
97
|
+
* 获取内容区域框体
|
98
|
+
* @param render
|
99
|
+
* @returns
|
100
|
+
*/
|
101
|
+
getInnerRect(): Rect;
|
102
|
+
getInnerMaxWidth(): number;
|
103
|
+
/**
|
104
|
+
* 根据内框内容高度,更新外框框体高度
|
105
|
+
* @param innerRect
|
106
|
+
*/
|
107
|
+
updateRenderHeight(innerRect: Rect | number): void;
|
108
|
+
}
|
109
|
+
/**
|
110
|
+
* 多级 ‘BlockLineRectRenderObject’ 包裹元素,例如 p、table
|
111
|
+
*/
|
112
|
+
export declare abstract class MultiBlockLineRenderObject<T extends Element = Element> extends BlockContentRenderObject<T> {
|
113
|
+
}
|
114
|
+
/**
|
115
|
+
* 容器-子内容为多个行内块级元素,例如table-row
|
116
|
+
*/
|
117
|
+
export declare abstract class InlineBlockContainer extends MultiBlockLineRenderObject {
|
118
|
+
}
|
119
|
+
/**
|
120
|
+
* 服务于table-cell
|
121
|
+
* 可被多级拆分的元素
|
122
|
+
*/
|
123
|
+
export declare abstract class InlineMuiltBlockLineRenderObject<T extends Element = Element> extends MultiBlockLineRenderObject<T> {
|
124
|
+
}
|
125
|
+
/**
|
126
|
+
* 最小不可分割单位的块级行框,例如 p-line
|
127
|
+
* 一行不可存在于两个页面中,块级行框不能分布在两个页面中
|
128
|
+
*/
|
129
|
+
export declare abstract class BlockLineRectRenderObject extends BlockContentRenderObject {
|
130
|
+
}
|
131
|
+
export declare type BorderType = 'left' | 'right' | 'top' | 'bottom' | 'left-middle' | 'right-middle' | 'top-middle' | 'bottom-middle' | 'none' | 'left-top' | 'left-bottom' | 'right-top' | 'right-bottom';
|
132
|
+
export declare type CursorType = 'text' | 'row-resize' | 'col-resize' | 'none' | 'default' | 'move' | 'pointer' | 'w-resize' | 's-resize' | 'se-resize' | 'ne-resize';
|
133
|
+
export declare enum RenderObjectType {
|
134
|
+
Branch = 0,
|
135
|
+
Leaf = 1
|
136
|
+
}
|
137
|
+
export interface IMeasureRenderStruct<T> {
|
138
|
+
rect: Rect;
|
139
|
+
render: T;
|
140
|
+
}
|
141
|
+
export declare type EditorVNodeObject = {
|
142
|
+
sel: string;
|
143
|
+
data?: {
|
144
|
+
attrs?: {
|
145
|
+
[key: string]: any;
|
146
|
+
};
|
147
|
+
props?: {
|
148
|
+
[key: string]: any;
|
149
|
+
};
|
150
|
+
on?: {
|
151
|
+
[key: string]: Function;
|
152
|
+
};
|
153
|
+
[key: string]: any;
|
154
|
+
};
|
155
|
+
key?: string;
|
156
|
+
text?: string;
|
157
|
+
children?: Array<EditorVNodeObject | string>;
|
158
|
+
};
|
159
|
+
export declare type IEditorVNodeOptions = {
|
160
|
+
getChildNodes: (node: RenderObject) => EditorVNodeObject[] | EditorVNodeObject | null | undefined;
|
161
|
+
options: ViewOptions;
|
162
|
+
highlights: Array<EditorVNodeObject>;
|
163
|
+
relativePagePos: Position;
|
164
|
+
globalPos: Position;
|
165
|
+
renderCtx: RenderContext;
|
166
|
+
getCounter: (key: string) => number;
|
167
|
+
mode: 'print' | 'view';
|
168
|
+
addChangeTips: (tipVNode: EditorVNodeObject) => void;
|
169
|
+
};
|
@@ -1,31 +1,31 @@
|
|
1
|
-
import { DocEditor } from 'src/med_editor/doc-editor';
|
2
|
-
import { TextGroupElement } from '../impl';
|
3
|
-
import { SelectionContentRange } from '../element-define';
|
4
|
-
export declare class SearchPanel {
|
5
|
-
private editor;
|
6
|
-
searchQuery: string;
|
7
|
-
currentIndex: number;
|
8
|
-
totalMatches: number;
|
9
|
-
searchResults: searchResult[];
|
10
|
-
searchRangeColor: string;
|
11
|
-
currentRangeColor: string;
|
12
|
-
inputRef: HTMLInputElement;
|
13
|
-
state: 'close' | 'open';
|
14
|
-
constructor(editor: DocEditor);
|
15
|
-
render(): import("snabbdom").VNode;
|
16
|
-
searchNext(): void;
|
17
|
-
searchPrevious(): void;
|
18
|
-
nagivateToShow(): void;
|
19
|
-
onKeydown(e: KeyboardEvent): void;
|
20
|
-
searchInDocument(e: KeyboardEvent): any[];
|
21
|
-
clear(): void;
|
22
|
-
destroy(): void;
|
23
|
-
findMatches(inputString: string, pattern: string): number[];
|
24
|
-
switchVisible(): void;
|
25
|
-
}
|
26
|
-
interface searchResult {
|
27
|
-
index: number;
|
28
|
-
ele: TextGroupElement;
|
29
|
-
range?: SelectionContentRange;
|
30
|
-
}
|
31
|
-
export {};
|
1
|
+
import { DocEditor } from 'src/med_editor/doc-editor';
|
2
|
+
import { TextGroupElement } from '../impl';
|
3
|
+
import { SelectionContentRange } from '../element-define';
|
4
|
+
export declare class SearchPanel {
|
5
|
+
private editor;
|
6
|
+
searchQuery: string;
|
7
|
+
currentIndex: number;
|
8
|
+
totalMatches: number;
|
9
|
+
searchResults: searchResult[];
|
10
|
+
searchRangeColor: string;
|
11
|
+
currentRangeColor: string;
|
12
|
+
inputRef: HTMLInputElement;
|
13
|
+
state: 'close' | 'open';
|
14
|
+
constructor(editor: DocEditor);
|
15
|
+
render(): import("snabbdom").VNode;
|
16
|
+
searchNext(): void;
|
17
|
+
searchPrevious(): void;
|
18
|
+
nagivateToShow(): void;
|
19
|
+
onKeydown(e: KeyboardEvent): void;
|
20
|
+
searchInDocument(e: KeyboardEvent): any[];
|
21
|
+
clear(): void;
|
22
|
+
destroy(): void;
|
23
|
+
findMatches(inputString: string, pattern: string): number[];
|
24
|
+
switchVisible(): void;
|
25
|
+
}
|
26
|
+
interface searchResult {
|
27
|
+
index: number;
|
28
|
+
ele: TextGroupElement;
|
29
|
+
range?: SelectionContentRange;
|
30
|
+
}
|
31
|
+
export {};
|
@@ -1,92 +1,92 @@
|
|
1
|
-
import { BranchElement, Element, LeafElement, Rect, SelectionContentRange } from "../element-define";
|
2
|
-
import { HitEventInfo, HitRegion } from "../element-event-define";
|
3
|
-
import { DocumentContainerRender } from "../impl/document/doc-container-impl";
|
4
|
-
import { RenderObject } from "../render-define";
|
5
|
-
import { Subject } from "../infrastructure/event-subject";
|
6
|
-
export declare class DocumentSelection {
|
7
|
-
constructor();
|
8
|
-
selectionState: SelectionState;
|
9
|
-
snapshotSelectionState: SelectionState | null;
|
10
|
-
setSelectionState(hitInfo: {
|
11
|
-
startHitInfo: HitEventInfo;
|
12
|
-
endHitInfo: HitEventInfo;
|
13
|
-
}): void;
|
14
|
-
/**
|
15
|
-
* 获取选区共同的祖先控件
|
16
|
-
*/
|
17
|
-
static getAncestorCommonControl(startControl: LeafElement, endControl: LeafElement): BranchElement;
|
18
|
-
/**
|
19
|
-
* 获取向上的嵌套父级节点集合
|
20
|
-
* @param control
|
21
|
-
* @param array
|
22
|
-
*/
|
23
|
-
static getNestParents(control: BranchElement | null): Array<BranchElement>;
|
24
|
-
static getCommonParenet(control: BranchElement | null | undefined, array: Array<BranchElement>): BranchElement | null;
|
25
|
-
/**
|
26
|
-
* 更新选区对象
|
27
|
-
* return:当前选区是否改变
|
28
|
-
* @private
|
29
|
-
*/
|
30
|
-
updateSelectionState(): boolean;
|
31
|
-
isSelectionChanged(): boolean;
|
32
|
-
/**
|
33
|
-
* 转换选区内容
|
34
|
-
* 处理结束选区在开始选区之前
|
35
|
-
*/
|
36
|
-
private transformRange;
|
37
|
-
takeSnapshot(): void;
|
38
|
-
clearSnapshot(): void;
|
39
|
-
}
|
40
|
-
export declare class SelectionState {
|
41
|
-
get startControl(): LeafElement;
|
42
|
-
set startControl(value: LeafElement | null);
|
43
|
-
get endControl(): LeafElement;
|
44
|
-
set endControl(value: LeafElement | null);
|
45
|
-
onChangedEvent: Subject<void>;
|
46
|
-
startControlIndex: number;
|
47
|
-
startOffset: number;
|
48
|
-
endControlIndex: number;
|
49
|
-
endOffset: number;
|
50
|
-
get collapsed(): boolean;
|
51
|
-
private _startControl;
|
52
|
-
private _endControl;
|
53
|
-
ancestorCommonControl: BranchElement | null;
|
54
|
-
range: SelectionRange | null;
|
55
|
-
startHitInfo: HitEventInfo | null;
|
56
|
-
selectedRange: SelectionContentRange | null;
|
57
|
-
editable: boolean;
|
58
|
-
renderContainer: DocumentContainerRender;
|
59
|
-
cursorPos: Rect | null;
|
60
|
-
constructor();
|
61
|
-
destroy(): void;
|
62
|
-
clear(): void;
|
63
|
-
/**
|
64
|
-
* 当前选区是否发生改变
|
65
|
-
*/
|
66
|
-
rangeDirty: boolean;
|
67
|
-
addRange(range: SelectionRange): void;
|
68
|
-
resetRange(startControl: Element, startOffset: number): SelectionRange;
|
69
|
-
surround(ele: Element): void;
|
70
|
-
clone(): SelectionState;
|
71
|
-
}
|
72
|
-
export declare class SelectionRange {
|
73
|
-
startControl: Element;
|
74
|
-
startOffset: number;
|
75
|
-
endControl: Element;
|
76
|
-
endOffset: number;
|
77
|
-
editable: boolean;
|
78
|
-
setStart(control: Element, offset: number): void;
|
79
|
-
setEnd(control: Element, offset: number): void;
|
80
|
-
private calcStart;
|
81
|
-
private calcEnd;
|
82
|
-
calcRange(): void;
|
83
|
-
private setInfo;
|
84
|
-
clone(): SelectionRange;
|
85
|
-
}
|
86
|
-
export declare class DocumentCursor {
|
87
|
-
static getElementCursorPos(ele: LeafElement, offset: number, hitRegion: HitRegion | undefined, docNum: number): {
|
88
|
-
render: RenderObject;
|
89
|
-
rect: Rect;
|
90
|
-
};
|
91
|
-
private static getElementRenderPos;
|
92
|
-
}
|
1
|
+
import { BranchElement, Element, LeafElement, Rect, SelectionContentRange } from "../element-define";
|
2
|
+
import { HitEventInfo, HitRegion } from "../element-event-define";
|
3
|
+
import { DocumentContainerRender } from "../impl/document/doc-container-impl";
|
4
|
+
import { RenderObject } from "../render-define";
|
5
|
+
import { Subject } from "../infrastructure/event-subject";
|
6
|
+
export declare class DocumentSelection {
|
7
|
+
constructor();
|
8
|
+
selectionState: SelectionState;
|
9
|
+
snapshotSelectionState: SelectionState | null;
|
10
|
+
setSelectionState(hitInfo: {
|
11
|
+
startHitInfo: HitEventInfo;
|
12
|
+
endHitInfo: HitEventInfo;
|
13
|
+
}): void;
|
14
|
+
/**
|
15
|
+
* 获取选区共同的祖先控件
|
16
|
+
*/
|
17
|
+
static getAncestorCommonControl(startControl: LeafElement, endControl: LeafElement): BranchElement;
|
18
|
+
/**
|
19
|
+
* 获取向上的嵌套父级节点集合
|
20
|
+
* @param control
|
21
|
+
* @param array
|
22
|
+
*/
|
23
|
+
static getNestParents(control: BranchElement | null): Array<BranchElement>;
|
24
|
+
static getCommonParenet(control: BranchElement | null | undefined, array: Array<BranchElement>): BranchElement | null;
|
25
|
+
/**
|
26
|
+
* 更新选区对象
|
27
|
+
* return:当前选区是否改变
|
28
|
+
* @private
|
29
|
+
*/
|
30
|
+
updateSelectionState(): boolean;
|
31
|
+
isSelectionChanged(): boolean;
|
32
|
+
/**
|
33
|
+
* 转换选区内容
|
34
|
+
* 处理结束选区在开始选区之前
|
35
|
+
*/
|
36
|
+
private transformRange;
|
37
|
+
takeSnapshot(): void;
|
38
|
+
clearSnapshot(): void;
|
39
|
+
}
|
40
|
+
export declare class SelectionState {
|
41
|
+
get startControl(): LeafElement;
|
42
|
+
set startControl(value: LeafElement | null);
|
43
|
+
get endControl(): LeafElement;
|
44
|
+
set endControl(value: LeafElement | null);
|
45
|
+
onChangedEvent: Subject<void>;
|
46
|
+
startControlIndex: number;
|
47
|
+
startOffset: number;
|
48
|
+
endControlIndex: number;
|
49
|
+
endOffset: number;
|
50
|
+
get collapsed(): boolean;
|
51
|
+
private _startControl;
|
52
|
+
private _endControl;
|
53
|
+
ancestorCommonControl: BranchElement | null;
|
54
|
+
range: SelectionRange | null;
|
55
|
+
startHitInfo: HitEventInfo | null;
|
56
|
+
selectedRange: SelectionContentRange | null;
|
57
|
+
editable: boolean;
|
58
|
+
renderContainer: DocumentContainerRender;
|
59
|
+
cursorPos: Rect | null;
|
60
|
+
constructor();
|
61
|
+
destroy(): void;
|
62
|
+
clear(): void;
|
63
|
+
/**
|
64
|
+
* 当前选区是否发生改变
|
65
|
+
*/
|
66
|
+
rangeDirty: boolean;
|
67
|
+
addRange(range: SelectionRange): void;
|
68
|
+
resetRange(startControl: Element, startOffset: number): SelectionRange;
|
69
|
+
surround(ele: Element): void;
|
70
|
+
clone(): SelectionState;
|
71
|
+
}
|
72
|
+
export declare class SelectionRange {
|
73
|
+
startControl: Element;
|
74
|
+
startOffset: number;
|
75
|
+
endControl: Element;
|
76
|
+
endOffset: number;
|
77
|
+
editable: boolean;
|
78
|
+
setStart(control: Element, offset: number): void;
|
79
|
+
setEnd(control: Element, offset: number): void;
|
80
|
+
private calcStart;
|
81
|
+
private calcEnd;
|
82
|
+
calcRange(): void;
|
83
|
+
private setInfo;
|
84
|
+
clone(): SelectionRange;
|
85
|
+
}
|
86
|
+
export declare class DocumentCursor {
|
87
|
+
static getElementCursorPos(ele: LeafElement, offset: number, hitRegion: HitRegion | undefined, docNum: number): {
|
88
|
+
render: RenderObject;
|
89
|
+
rect: Rect;
|
90
|
+
};
|
91
|
+
private static getElementRenderPos;
|
92
|
+
}
|
@@ -1,36 +1,36 @@
|
|
1
|
-
import { BranchElement, Element, LeafElement, SelectionContentRange } from "../element-define";
|
2
|
-
import { TableElement } from "../impl/table/table-impl";
|
3
|
-
export declare class RangeUtil {
|
4
|
-
static getSectionRange(startControl: LeafElement, startOffset: number, endControl: LeafElement, endOffset: number, ancestorCommonControl: BranchElement): SelectionContentRange;
|
5
|
-
static getCollapsedRange(startControl: LeafElement, startOffset: number, endOffset: number, ancestorCommonControl: BranchElement): SelectionContentRange;
|
6
|
-
/**
|
7
|
-
* 获取表格选区的内容
|
8
|
-
* @param startControl
|
9
|
-
* @param startOffset
|
10
|
-
* @param endControl
|
11
|
-
* @param endOffset
|
12
|
-
* @param tb
|
13
|
-
*/
|
14
|
-
static getTableSelectionRange(startControl: LeafElement, startOffset: number, endControl: LeafElement, endOffset: number, tb: TableElement): SelectionContentRange;
|
15
|
-
private static getStartForbackTreeData;
|
16
|
-
private static getEndForwardTreeData;
|
17
|
-
private static getChildTreeData;
|
18
|
-
private static setRangeFullSelected;
|
19
|
-
static rangeEquals(selRange1: SelectionContentRange, selRange2: SelectionContentRange): boolean;
|
20
|
-
static getStartRangeTarget(parentRange: SelectionContentRange): SelectionContentRange | null;
|
21
|
-
static getEndRangeTarget(parentRange: SelectionContentRange): SelectionContentRange | null;
|
22
|
-
/**
|
23
|
-
* 循环递归执行选区对象方法
|
24
|
-
* @param range
|
25
|
-
* @param handler
|
26
|
-
*/
|
27
|
-
static recursionTraversalRangeHandler(range: SelectionContentRange, handler: (range: SelectionContentRange) => void): void;
|
28
|
-
/**
|
29
|
-
* 判断元素是否被完全选中
|
30
|
-
* @param range
|
31
|
-
* @param ele
|
32
|
-
*/
|
33
|
-
static checkElementFullInRange(range: SelectionContentRange, ele: Element): boolean;
|
34
|
-
private static pushToArray;
|
35
|
-
private static unshiftToArray;
|
36
|
-
}
|
1
|
+
import { BranchElement, Element, LeafElement, SelectionContentRange } from "../element-define";
|
2
|
+
import { TableElement } from "../impl/table/table-impl";
|
3
|
+
export declare class RangeUtil {
|
4
|
+
static getSectionRange(startControl: LeafElement, startOffset: number, endControl: LeafElement, endOffset: number, ancestorCommonControl: BranchElement): SelectionContentRange;
|
5
|
+
static getCollapsedRange(startControl: LeafElement, startOffset: number, endOffset: number, ancestorCommonControl: BranchElement): SelectionContentRange;
|
6
|
+
/**
|
7
|
+
* 获取表格选区的内容
|
8
|
+
* @param startControl
|
9
|
+
* @param startOffset
|
10
|
+
* @param endControl
|
11
|
+
* @param endOffset
|
12
|
+
* @param tb
|
13
|
+
*/
|
14
|
+
static getTableSelectionRange(startControl: LeafElement, startOffset: number, endControl: LeafElement, endOffset: number, tb: TableElement): SelectionContentRange;
|
15
|
+
private static getStartForbackTreeData;
|
16
|
+
private static getEndForwardTreeData;
|
17
|
+
private static getChildTreeData;
|
18
|
+
private static setRangeFullSelected;
|
19
|
+
static rangeEquals(selRange1: SelectionContentRange, selRange2: SelectionContentRange): boolean;
|
20
|
+
static getStartRangeTarget(parentRange: SelectionContentRange): SelectionContentRange | null;
|
21
|
+
static getEndRangeTarget(parentRange: SelectionContentRange): SelectionContentRange | null;
|
22
|
+
/**
|
23
|
+
* 循环递归执行选区对象方法
|
24
|
+
* @param range
|
25
|
+
* @param handler
|
26
|
+
*/
|
27
|
+
static recursionTraversalRangeHandler(range: SelectionContentRange, handler: (range: SelectionContentRange) => void): void;
|
28
|
+
/**
|
29
|
+
* 判断元素是否被完全选中
|
30
|
+
* @param range
|
31
|
+
* @param ele
|
32
|
+
*/
|
33
|
+
static checkElementFullInRange(range: SelectionContentRange, ele: Element): boolean;
|
34
|
+
private static pushToArray;
|
35
|
+
private static unshiftToArray;
|
36
|
+
}
|