@hailin-zheng/editor-core 1.0.43 → 1.0.46

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.
@@ -60,5 +60,6 @@ export declare class CommonUtil {
60
60
  static getNowDiffSeconds(date: Date | string): number;
61
61
  static isDate(str: string): boolean;
62
62
  static cloneValue(val: any): any;
63
+ static isConstructor(f: any): boolean;
63
64
  }
64
65
  export {};
@@ -1,8 +1,9 @@
1
1
  import { DocumentEvalFunc } from "./document-eval-func";
2
2
  import { SelectionState } from "./document-selection";
3
- import { BranchElement, Element, ImgLoadStatus, Rect, RefreshType, ViewOptions } from "./element-define";
3
+ import { BranchElement, Element, ElementHandler, ImgLoadStatus, Rect, RefreshType, ViewOptions } from "./element-define";
4
+ import { ElementEvent, EventTypes } from "./element-event-define";
4
5
  import { DataElementValueStruct } from "./element-serialize";
5
- import { DataElementInlineGroup, DataElementLeaf, DataElementCheck, DocumentElement, TrackRunElement, TrackRunTypeEnum } from "./impl";
6
+ import { DataElementCheck, DataElementInlineGroup, DataElementLeaf, DocumentElement, TrackRunElement, TrackRunTypeEnum } from "./impl";
6
7
  import { DocumentChange } from "./document-change";
7
8
  /**
8
9
  * 当前打开的文档的上下文信息,当前文档所有的属性设置都暴露在上下文中
@@ -31,6 +32,7 @@ export declare class EditorContext {
31
32
  */
32
33
  getCurrentEleCtx(): BranchElement | null;
33
34
  getCtx(ele: BranchElement): DocumentContext;
35
+ registerTypeHandlers<T extends Element = Element, F extends ElementEvent = ElementEvent>(elementType: any, eventName: EventTypes, handler: ElementHandler<F>, useCapture?: boolean): void;
34
36
  destroy(): void;
35
37
  /**
36
38
  * 切换到行打印模式
@@ -33,12 +33,11 @@ export declare enum ModifyFlag {
33
33
  export interface OnChangeEventProps {
34
34
  data: any;
35
35
  }
36
+ export declare type ElementHandler<E extends ElementEvent = ElementEvent> = (e: E) => void;
36
37
  interface RegisterTypeHandlerProps<T extends Element> {
37
- elementType: {
38
- new (...args: any): T;
39
- };
38
+ elementType: any;
40
39
  eventName: EventTypes;
41
- handler: <E extends ElementEvent>(e: E) => void;
40
+ handler: ElementHandler;
42
41
  useCapture: boolean;
43
42
  ctx: ElementEvent['ctx'];
44
43
  }
@@ -47,9 +46,6 @@ interface RegisterTypeHandlerProps<T extends Element> {
47
46
  */
48
47
  export declare const elementTypeEventHandler: Array<RegisterTypeHandlerProps<Element>>;
49
48
  export declare function invokeTypeHandler(ele: Element, eventName: EventTypes, e: ElementEvent, useCapture?: boolean): void;
50
- export declare function registerTypeHandlers<T extends Element>(ctx: ElementEvent['ctx'], elementType: {
51
- new (...args: any): T;
52
- }, eventName: EventTypes, handler: (e: ElementEvent) => void, useCapture?: boolean): void;
53
49
  /**
54
50
  * 定义组件的数据,配置
55
51
  */
@@ -25,7 +25,7 @@ export declare class ElementTrackManage {
25
25
  generateSelectionLog(): void;
26
26
  clear(): void;
27
27
  /**
28
- * 生成留痕的信息
28
+ * 生成历史操作信息
29
29
  */
30
30
  generateTrack(): void;
31
31
  /**
@@ -99,6 +99,5 @@ interface SelectionLog {
99
99
  endIndex: number;
100
100
  endOffset: number;
101
101
  editable: boolean;
102
- collapsed: boolean;
103
102
  }
104
103
  export {};
@@ -61,7 +61,7 @@ export declare function setTraceTrackingFlag(flag: boolean): void;
61
61
  * 抑制变更的追踪修改
62
62
  * 在某些情况下不需要进行修改的跟踪,例如:在初始化加载文档时,为了提高效率,增加底层开关
63
63
  */
64
- export declare function suppressTracking(cb: () => void): void;
64
+ export declare function suppressTracking<T>(cb: () => T): T;
65
65
  export declare function insertEle(ele: Element): void;
66
66
  export declare function removeEle(ele: Element): void;
67
67
  export declare function inputText(ele: Element, startIndex: number, input: string): void;
@@ -1,6 +1,14 @@
1
1
  import { ContextMenuElementEvent } from "./element-event-define";
2
+ import { ElementHandler } from "./element-define";
2
3
  /**
3
4
  * 删除当前段落
4
5
  * @param evt
5
6
  */
6
- export declare function deleteCurrentParagraph(evt: ContextMenuElementEvent): void;
7
+ export declare const deleteCurrentParagraph: ElementHandler<ContextMenuElementEvent>;
8
+ /**
9
+ * 文档打印
10
+ * @param cevt
11
+ */
12
+ export declare const printDocOnContextmenu: ElementHandler<ContextMenuElementEvent>;
13
+ export declare const setDataElementProps: ElementHandler<ContextMenuElementEvent>;
14
+ export declare const onTableContextmenu: ElementHandler<ContextMenuElementEvent>;
@@ -289,7 +289,6 @@ export declare class CanvasTextEditor {
289
289
  getControlById(index: number): Element<any> | null;
290
290
  getControlId(ele: Element): number;
291
291
  switchPageLayout(mode: PageLayoutMode): void;
292
- test(): void;
293
292
  }
294
293
  export declare type EditorCurrentPos = {
295
294
  pos: Position;
package/package.json CHANGED
@@ -4,7 +4,7 @@
4
4
  "author": "hailin-zheng",
5
5
  "private": false,
6
6
  "license": "ISC",
7
- "version": "1.0.43",
7
+ "version": "1.0.46",
8
8
  "scripts": {},
9
9
  "dependencies": {
10
10
  "bwip-js": "^3.0.5",