@hailin-zheng/editor-core 1.1.16 → 1.1.17

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.
@@ -92,7 +92,7 @@ export declare class DocumentContext {
92
92
  * 获取留痕块元素列表
93
93
  */
94
94
  getTrackElements(): Array<TrackRunElement>;
95
- getTrackElmeentById(id: string): TrackRunElement | null;
95
+ getTrackElementById(id: string): TrackRunElement | null;
96
96
  /**
97
97
  * 获取留痕块内数据
98
98
  */
@@ -107,6 +107,7 @@ export declare class DocumentContext {
107
107
  /**
108
108
  * 当前上下文执行默认绑定
109
109
  * @param data
110
+ * @param predicateKey
110
111
  */
111
112
  bindDataValues(data: string | Object | Array<{
112
113
  key: string;
@@ -120,6 +120,7 @@ export declare type CellMergeType = 'col-merge' | 'row-merge';
120
120
  export declare type VMergeType = 'restart' | 'continue';
121
121
  export declare type HMergeType = 'restart' | 'continue';
122
122
  export declare type VerticalAlign = 'top' | 'middle' | 'bottom';
123
+ export declare type CellDiagonal = 'main' | 'sub' | 'all' | null;
123
124
  export declare class TableCellProps extends INotifyPropertyChanged {
124
125
  vMerge: VMergeType | null;
125
126
  hMerge: HMergeType | null;
@@ -128,7 +129,7 @@ export declare class TableCellProps extends INotifyPropertyChanged {
128
129
  /**
129
130
  * 对角线
130
131
  */
131
- diagonal: 'main' | 'sub' | null;
132
+ diagonal: CellDiagonal;
132
133
  clone(dest: TableCellProps): TableCellProps;
133
134
  getSerializeProps(options: ViewOptions): any;
134
135
  }
@@ -0,0 +1,49 @@
1
+ import { ElementFactory, ICreateRenderData, LeafElement, readElementProps, SerializeProps, ViewOptions } from "../../element-define";
2
+ import { IRenderData, LeafRenderObject, RenderObject } from "../../render-define";
3
+ interface RectProps {
4
+ width: number;
5
+ height: number;
6
+ bgColor: string;
7
+ }
8
+ export declare class RectElement extends LeafElement<RectProps> {
9
+ constructor();
10
+ /**
11
+ * 克隆方法,支持复制操作等
12
+ * @param data
13
+ */
14
+ clone(data: boolean): RectElement;
15
+ /**
16
+ * 创建渲染元素
17
+ * @param data
18
+ */
19
+ createRenderObject(data: ICreateRenderData): RenderObject | null;
20
+ /**
21
+ * 序列化
22
+ * @param viewOptions
23
+ */
24
+ serialize(viewOptions: ViewOptions): SerializeProps | null;
25
+ }
26
+ export declare class RectRenderObject extends LeafRenderObject<RectElement> {
27
+ /**
28
+ * 克隆当前对象
29
+ */
30
+ clone(): RenderObject;
31
+ /**
32
+ * 渲染绘制到视图
33
+ * @param e
34
+ */
35
+ render(e: IRenderData): void;
36
+ }
37
+ export declare class RectElementFactory extends ElementFactory<RectProps> {
38
+ /**
39
+ * 读取并创建元素
40
+ * @param data
41
+ */
42
+ createElement(data: readElementProps<RectProps>): RectElement;
43
+ /**
44
+ * 是否匹配当前工程处理
45
+ * @param type
46
+ */
47
+ match(type: string): boolean;
48
+ }
49
+ export {};
@@ -20,6 +20,11 @@ export declare class TableCellElement extends BlockContainerElement<TableCellPro
20
20
  }
21
21
  export declare class TableCellRenderObject extends InlineMuiltBlockLineRenderObject {
22
22
  render(e: IRenderData): void;
23
+ /**
24
+ * 绘制对角线
25
+ * @private
26
+ */
27
+ private renderDiagonal;
23
28
  clone(): RenderObject;
24
29
  }
25
30
  export declare class TableCellFactory extends ElementFactory<TableCellProps> {
@@ -2,6 +2,7 @@ import { SelectionState } from "../../document-selection";
2
2
  import { TableCellElement } from "./table-cell-impl";
3
3
  import { TableElement } from "./table-impl";
4
4
  import { TableRowElement } from "./table-row-impl";
5
+ import { CellDiagonal } from "../../element-props";
5
6
  export declare class TableUtil {
6
7
  static canDeleteTable(ss: SelectionState): boolean;
7
8
  /**
@@ -92,6 +93,12 @@ export declare class TableUtil {
92
93
  * @param insertRowIndex
93
94
  */
94
95
  static insertRow(ss: SelectionState, insertRowIndex: number): TableRowElement;
96
+ /**
97
+ * 在指定位置插入新行
98
+ * @param tb
99
+ * @param insertRowIndex
100
+ */
101
+ static insertNewRow(tb: TableElement, insertRowIndex: number): TableRowElement;
95
102
  /**
96
103
  * 在下方插入行
97
104
  */
@@ -133,7 +140,7 @@ export declare class TableUtil {
133
140
  * @param diagonal
134
141
  * @returns
135
142
  */
136
- static setTableCellDiagonal(ss: SelectionState, diagonal: 'main' | 'sub'): void;
143
+ static setTableCellDiagonal(ss: SelectionState, diagonal: CellDiagonal): void;
137
144
  /**
138
145
  * 将当前表格截断成两个相邻的表格
139
146
  * @param tb
@@ -153,6 +160,7 @@ export declare class TableUtil {
153
160
  * 计算表格列,用于新增表格的时候生成列
154
161
  */
155
162
  static calcTableColsWidth(cols: Array<string | number>, tbWidth: number): Array<number>;
163
+ static setTableCellBgColorAtSelection(ss: SelectionState, bgColor: string): void;
156
164
  }
157
165
  export interface ITableSelectedRegion {
158
166
  startRow: number;
@@ -2,8 +2,8 @@ import { ContentMenuItem } from './framework/element-event-define';
2
2
  import { ElementReader } from './framework/element-reader';
3
3
  import { SelectionState } from './framework/document-selection';
4
4
  import { BranchElement, Element, ICancelTokenFn, LeafElement, MarginProps, OrientType, PageLayoutMode, Position, Rect, TextAlign, ViewOptions } from './framework/element-define';
5
- import { DataElementInlineGroup, DataElementLeaf, DocumentElement } from './framework/impl';
6
- import { ParagraphNumberType, ParagraphProps, TextProps } from './framework/element-props';
5
+ import { DataElementInlineGroup, DataElementLeaf, DocumentElement, ParagraphElement, TableCellElement, TableElement, TableRowElement } from './framework/impl';
6
+ import { CellDiagonal, ParagraphNumberType, ParagraphProps, TextProps } from './framework/element-props';
7
7
  import { EditorContext } from './framework/document-context';
8
8
  import { ElementTrackManage } from './framework/element-trace-manage';
9
9
  import { Subject } from './framework/event-subject';
@@ -308,16 +308,80 @@ export declare class CanvasTextEditor extends AbsolutePanel {
308
308
  * @private
309
309
  */
310
310
  private drawCaret;
311
- private generatorDoc;
312
311
  /**
313
- * 设置关键字
314
- * 匹配用户输入的关键字,回调到应用业务中处理
312
+ * 获取当前光标位置所在的段落
313
+ */
314
+ getParagraphAtCursor(): ParagraphElement | null;
315
+ /**
316
+ * 获取当前光标位置的表格
317
+ */
318
+ getTableAtCursor(): TableElement | null;
319
+ /**
320
+ * 获取当前光标位置的表格行
321
+ */
322
+ getTableRowAtCursor(): TableRowElement | null;
323
+ /**
324
+ * 获取当前光标位置的单元格
325
+ */
326
+ getTableCellAtCursor(): TableCellElement | null;
327
+ /**
328
+ * 当前光标处上方插入新行
329
+ */
330
+ insertRowAboveAtCursor(): void;
331
+ /**
332
+ * 当前光标处下方插入新行
333
+ */
334
+ insertRowBelowAtCursor(): void;
335
+ /**
336
+ * 当前光标处右方插入新列
337
+ */
338
+ insertColToRightAtCursor(): void;
339
+ /**
340
+ * 当前光标处左方插入新列
341
+ */
342
+ insertColToLeftAtCursor(): void;
343
+ /**
344
+ * 移除当前光标处的行
315
345
  */
316
- setKeywords(keys: Array<string>, cb: (item: string) => void): void;
346
+ removeCurrRowAtCursor(): void;
317
347
  /**
318
- * 注册编辑器格式读取器
348
+ * 移除当前光标处的列
319
349
  */
320
- registerReaderFactory(handler: IReaderManager): void;
350
+ removeCurrColAtCursor(): void;
351
+ /**
352
+ * 合并单元格
353
+ */
354
+ mergeCellsBySelection(): void;
355
+ /**
356
+ * 拆分单元格
357
+ * @param rows
358
+ * @param cols
359
+ */
360
+ splitCell(rows: number, cols: number): void;
361
+ /**
362
+ * 删除当前光标所在的表格
363
+ */
364
+ removeTableAtCursor(): void;
365
+ /**
366
+ * 设置单元格对角线
367
+ * @param diagonal
368
+ */
369
+ setCellDiagonal(diagonal: CellDiagonal): void;
370
+ /**
371
+ * 设置选区范围内的单元格背景颜色
372
+ */
373
+ setTableCellBgColorAtSelection(color: string): void;
374
+ /**
375
+ * 还原光标处已合并的单元格
376
+ */
377
+ restoreMergeCellsAtCursor(): void;
378
+ /**
379
+ * 表格在指定位置插入新行
380
+ * @param tb
381
+ * @param insertRowIndex
382
+ */
383
+ insertNewRow(tb: TableElement, insertRowIndex: number): TableRowElement;
384
+ private generatorDoc;
321
385
  }
322
386
  export interface IReaderManager {
323
387
  }
package/package.json CHANGED
@@ -4,7 +4,7 @@
4
4
  "author": "hailin-zheng",
5
5
  "private": false,
6
6
  "license": "ISC",
7
- "version": "1.1.16",
7
+ "version": "1.1.17",
8
8
  "scripts": {},
9
9
  "dependencies": {
10
10
  "bwip-js": "^3.0.5",