amis-editor-core 5.5.0 → 5.6.1

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 (100) hide show
  1. package/esm/component/AsyncLayer.d.ts +9 -0
  2. package/esm/component/Breadcrumb.d.ts +1 -1
  3. package/esm/component/ClassNameControl.d.ts +4 -4
  4. package/esm/component/ContainerWrapper.d.ts +1 -1
  5. package/esm/component/Editor.d.ts +6 -3
  6. package/esm/component/HighlightBox.d.ts +1 -1
  7. package/esm/component/IFramePreview.d.ts +19 -27
  8. package/esm/component/MiniEditor.d.ts +2 -1
  9. package/esm/component/Panel/AMisCodeEditor.d.ts +1 -1
  10. package/esm/component/Panel/AvailableRenderersPanel.d.ts +1 -1
  11. package/esm/component/Panel/CodeEditorPanel.d.ts +1 -1
  12. package/esm/component/Panel/ContextMenuPanel.d.ts +1 -1
  13. package/esm/component/Panel/DrawerPanel.d.ts +1 -1
  14. package/esm/component/Panel/DrawerRendererPanel.d.ts +1 -1
  15. package/esm/component/Panel/InsertSubRendererPanel.d.ts +1 -1
  16. package/esm/component/Panel/LeftPanels.d.ts +1 -1
  17. package/esm/component/Panel/Outline.d.ts +9 -3
  18. package/esm/component/Panel/RenderersPanel.d.ts +1 -1
  19. package/esm/component/Panel/RightPanels.d.ts +1 -1
  20. package/esm/component/Panel/TargetNamePanel.d.ts +1 -1
  21. package/esm/component/PopOverForm.d.ts +1 -1
  22. package/esm/component/Preview.d.ts +2 -2
  23. package/esm/component/RegionHLBox.d.ts +1 -1
  24. package/esm/component/RegionWrapper.d.ts +30 -2
  25. package/esm/component/RendererThumb.d.ts +1 -1
  26. package/esm/component/ScaffoldModal.d.ts +1 -1
  27. package/esm/component/SubEditor.d.ts +2 -2
  28. package/esm/component/VRenderer.d.ts +39 -31
  29. package/esm/component/base/BackTop.d.ts +1 -1
  30. package/esm/component/base/ErrorRenderer.d.ts +1 -1
  31. package/esm/component/base/SearchCustomRendererPanel.d.ts +1 -1
  32. package/esm/component/base/SearchPanel.d.ts +2 -2
  33. package/esm/component/base/SearchRendererPanel.d.ts +1 -1
  34. package/esm/component/base/ShortcutKey.d.ts +1 -1
  35. package/esm/component/base/WidthDraggableBtn.d.ts +1 -1
  36. package/esm/component/factory.d.ts +2 -1
  37. package/esm/index.d.ts +2 -4
  38. package/esm/index.js +2 -2
  39. package/esm/manager.d.ts +36 -5
  40. package/esm/plugin/DataDebug.d.ts +5 -5
  41. package/esm/plugin.d.ts +37 -4
  42. package/esm/store/editor.d.ts +137 -0
  43. package/esm/store/node.d.ts +24 -0
  44. package/esm/util.d.ts +30 -9
  45. package/lib/component/AsyncLayer.d.ts +9 -0
  46. package/lib/component/Breadcrumb.d.ts +1 -1
  47. package/lib/component/ClassNameControl.d.ts +4 -4
  48. package/lib/component/ContainerWrapper.d.ts +1 -1
  49. package/lib/component/Editor.d.ts +6 -3
  50. package/lib/component/HighlightBox.d.ts +1 -1
  51. package/lib/component/IFramePreview.d.ts +19 -27
  52. package/lib/component/MiniEditor.d.ts +2 -1
  53. package/lib/component/Panel/AMisCodeEditor.d.ts +1 -1
  54. package/lib/component/Panel/AvailableRenderersPanel.d.ts +1 -1
  55. package/lib/component/Panel/CodeEditorPanel.d.ts +1 -1
  56. package/lib/component/Panel/ContextMenuPanel.d.ts +1 -1
  57. package/lib/component/Panel/DrawerPanel.d.ts +1 -1
  58. package/lib/component/Panel/DrawerRendererPanel.d.ts +1 -1
  59. package/lib/component/Panel/InsertSubRendererPanel.d.ts +1 -1
  60. package/lib/component/Panel/LeftPanels.d.ts +1 -1
  61. package/lib/component/Panel/Outline.d.ts +9 -3
  62. package/lib/component/Panel/RenderersPanel.d.ts +1 -1
  63. package/lib/component/Panel/RightPanels.d.ts +1 -1
  64. package/lib/component/Panel/TargetNamePanel.d.ts +1 -1
  65. package/lib/component/PopOverForm.d.ts +1 -1
  66. package/lib/component/Preview.d.ts +2 -2
  67. package/lib/component/RegionHLBox.d.ts +1 -1
  68. package/lib/component/RegionWrapper.d.ts +30 -2
  69. package/lib/component/RendererThumb.d.ts +1 -1
  70. package/lib/component/ScaffoldModal.d.ts +1 -1
  71. package/lib/component/SubEditor.d.ts +2 -2
  72. package/lib/component/VRenderer.d.ts +39 -31
  73. package/lib/component/base/BackTop.d.ts +1 -1
  74. package/lib/component/base/ErrorRenderer.d.ts +1 -1
  75. package/lib/component/base/SearchCustomRendererPanel.d.ts +1 -1
  76. package/lib/component/base/SearchPanel.d.ts +2 -2
  77. package/lib/component/base/SearchRendererPanel.d.ts +1 -1
  78. package/lib/component/base/ShortcutKey.d.ts +1 -1
  79. package/lib/component/base/WidthDraggableBtn.d.ts +1 -1
  80. package/lib/component/factory.d.ts +2 -1
  81. package/lib/editor.js +1 -1
  82. package/lib/index.d.ts +2 -4
  83. package/lib/index.js +2 -2
  84. package/lib/manager.d.ts +36 -5
  85. package/lib/plugin/DataDebug.d.ts +5 -5
  86. package/lib/plugin.d.ts +37 -4
  87. package/lib/store/editor.d.ts +137 -0
  88. package/lib/store/node.d.ts +24 -0
  89. package/lib/style.css +1 -1
  90. package/lib/util.d.ts +30 -9
  91. package/package.json +3 -1
  92. package/static/indication.png +0 -0
  93. package/static/nav-mode.png +0 -0
  94. package/esm/builder/ApiBuilder.d.ts +0 -4
  95. package/esm/builder/DSBuilder.d.ts +0 -253
  96. package/esm/component/IFrameBridge.d.ts +0 -30
  97. package/lib/builder/ApiBuilder.d.ts +0 -4
  98. package/lib/builder/DSBuilder.d.ts +0 -253
  99. package/lib/component/IFrameBridge.d.ts +0 -30
  100. package/static/nav-mode.gif +0 -0
package/lib/manager.d.ts CHANGED
@@ -26,7 +26,8 @@ export interface PluginClass {
26
26
  */
27
27
  export declare function autoPreRegisterEditorCustomPlugins(): void;
28
28
  /**
29
- * 注册Editor插件。
29
+ * 注册Editor插件
30
+ * 备注: 支持覆盖原有组件,注册新的组件时需配置 priority。
30
31
  * @param editor
31
32
  */
32
33
  export declare function registerEditorPlugin(klass: PluginClass): void;
@@ -45,7 +46,6 @@ export declare function unRegisterEditorPlugin(id: string): void;
45
46
  export declare class EditorManager {
46
47
  readonly config: EditorManagerConfig;
47
48
  readonly store: EditorStoreType;
48
- readonly parent?: EditorManager | undefined;
49
49
  readonly plugins: Array<PluginInterface>;
50
50
  readonly env: RenderOptions;
51
51
  toDispose: Array<() => void>;
@@ -58,10 +58,9 @@ export declare class EditorManager {
58
58
  readonly pluginEvents: PluginEvents;
59
59
  readonly pluginActions: PluginActions;
60
60
  dataSchema: DataSchema;
61
- readonly isInFrame: boolean;
62
61
  /** 变量管理 */
63
62
  readonly variableManager: VariableManager;
64
- constructor(config: EditorManagerConfig, store: EditorStoreType, parent?: EditorManager | undefined);
63
+ constructor(config: EditorManagerConfig, store: EditorStoreType);
65
64
  normalizeScene(plugins?: Array<PluginClass | [PluginClass, Record<string, any> | (() => Record<string, any>)]>): (PluginClass | [PluginClass, Record<string, any> | (() => Record<string, any>)])[];
66
65
  dynamicAddPlugin(pluginName: string): void;
67
66
  buildRenderersAndPanels(): void;
@@ -88,6 +87,8 @@ export declare class EditorManager {
88
87
  y: number;
89
88
  w: number;
90
89
  h: number;
90
+ dialogTitle: string;
91
+ dialogType: string;
91
92
  children: import("mobx-state-tree").IMSTArray<import("mobx-state-tree").IAnyModelType> & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IArrayType<import("mobx-state-tree").IAnyModelType>, [undefined]>>;
92
93
  } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
93
94
  getData: import("mobx-state-tree").IType<() => any, () => any, () => any>;
@@ -147,6 +148,8 @@ export declare class EditorManager {
147
148
  y: number;
148
149
  w: number;
149
150
  h: number;
151
+ dialogTitle: string;
152
+ dialogType: string;
150
153
  children: import("mobx-state-tree").IMSTArray<import("mobx-state-tree").IAnyModelType> & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IArrayType<import("mobx-state-tree").IAnyModelType>, [undefined]>>;
151
154
  } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
152
155
  getData: import("mobx-state-tree").IType<() => any, () => any, () => any>;
@@ -205,6 +208,8 @@ export declare class EditorManager {
205
208
  y: import("mobx-state-tree").IType<number | undefined, number, number>;
206
209
  w: import("mobx-state-tree").IType<number | undefined, number, number>;
207
210
  h: import("mobx-state-tree").IType<number | undefined, number, number>;
211
+ dialogTitle: import("mobx-state-tree").IType<string | undefined, string, string>;
212
+ dialogType: import("mobx-state-tree").IType<string | undefined, string, string>;
208
213
  children: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IArrayType<import("mobx-state-tree").IAnyModelType>, [undefined]>;
209
214
  }, {
210
215
  getData: import("mobx-state-tree").IType<() => any, () => any, () => any>;
@@ -264,6 +269,8 @@ export declare class EditorManager {
264
269
  y: import("mobx-state-tree").IType<number | undefined, number, number>;
265
270
  w: import("mobx-state-tree").IType<number | undefined, number, number>;
266
271
  h: import("mobx-state-tree").IType<number | undefined, number, number>;
272
+ dialogTitle: import("mobx-state-tree").IType<string | undefined, string, string>;
273
+ dialogType: import("mobx-state-tree").IType<string | undefined, string, string>;
267
274
  children: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IArrayType<import("mobx-state-tree").IAnyModelType>, [undefined]>;
268
275
  }>>) => Boolean) => {
269
276
  parentId: string;
@@ -287,6 +294,8 @@ export declare class EditorManager {
287
294
  y: number;
288
295
  w: number;
289
296
  h: number;
297
+ dialogTitle: string;
298
+ dialogType: string;
290
299
  children: import("mobx-state-tree").IMSTArray<import("mobx-state-tree").IAnyModelType> & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IArrayType<import("mobx-state-tree").IAnyModelType>, [undefined]>>;
291
300
  } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
292
301
  getData: import("mobx-state-tree").IType<() => any, () => any, () => any>;
@@ -345,6 +354,8 @@ export declare class EditorManager {
345
354
  y: import("mobx-state-tree").IType<number | undefined, number, number>;
346
355
  w: import("mobx-state-tree").IType<number | undefined, number, number>;
347
356
  h: import("mobx-state-tree").IType<number | undefined, number, number>;
357
+ dialogTitle: import("mobx-state-tree").IType<string | undefined, string, string>;
358
+ dialogType: import("mobx-state-tree").IType<string | undefined, string, string>;
348
359
  children: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IArrayType<import("mobx-state-tree").IAnyModelType>, [undefined]>;
349
360
  }, {
350
361
  getData: import("mobx-state-tree").IType<() => any, () => any, () => any>;
@@ -394,6 +405,8 @@ export declare class EditorManager {
394
405
  getData?: (() => any) | undefined;
395
406
  preferTag?: string | undefined;
396
407
  schemaPath?: string | undefined;
408
+ dialogTitle?: string | undefined;
409
+ dialogType?: string | undefined;
397
410
  regionInfo?: RegionConfig | undefined;
398
411
  widthMutable?: boolean | undefined;
399
412
  memberIndex?: number | undefined;
@@ -432,6 +445,8 @@ export declare class EditorManager {
432
445
  y: import("mobx-state-tree").IType<number | undefined, number, number>;
433
446
  w: import("mobx-state-tree").IType<number | undefined, number, number>;
434
447
  h: import("mobx-state-tree").IType<number | undefined, number, number>;
448
+ dialogTitle: import("mobx-state-tree").IType<string | undefined, string, string>;
449
+ dialogType: import("mobx-state-tree").IType<string | undefined, string, string>;
435
450
  children: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IArrayType<import("mobx-state-tree").IAnyModelType>, [undefined]>;
436
451
  }, {
437
452
  getData: import("mobx-state-tree").IType<() => any, () => any, () => any>;
@@ -491,6 +506,8 @@ export declare class EditorManager {
491
506
  y: number;
492
507
  w: number;
493
508
  h: number;
509
+ dialogTitle: string;
510
+ dialogType: string;
494
511
  children: import("mobx-state-tree").IMSTArray<import("mobx-state-tree").IAnyModelType> & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IArrayType<import("mobx-state-tree").IAnyModelType>, [undefined]>>;
495
512
  } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
496
513
  getData: import("mobx-state-tree").IType<() => any, () => any, () => any>;
@@ -549,6 +566,8 @@ export declare class EditorManager {
549
566
  y: import("mobx-state-tree").IType<number | undefined, number, number>;
550
567
  w: import("mobx-state-tree").IType<number | undefined, number, number>;
551
568
  h: import("mobx-state-tree").IType<number | undefined, number, number>;
569
+ dialogTitle: import("mobx-state-tree").IType<string | undefined, string, string>;
570
+ dialogType: import("mobx-state-tree").IType<string | undefined, string, string>;
552
571
  children: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IArrayType<import("mobx-state-tree").IAnyModelType>, [undefined]>;
553
572
  }, {
554
573
  getData: import("mobx-state-tree").IType<() => any, () => any, () => any>;
@@ -608,6 +627,8 @@ export declare class EditorManager {
608
627
  y: import("mobx-state-tree").IType<number | undefined, number, number>;
609
628
  w: import("mobx-state-tree").IType<number | undefined, number, number>;
610
629
  h: import("mobx-state-tree").IType<number | undefined, number, number>;
630
+ dialogTitle: import("mobx-state-tree").IType<string | undefined, string, string>;
631
+ dialogType: import("mobx-state-tree").IType<string | undefined, string, string>;
611
632
  children: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IArrayType<import("mobx-state-tree").IAnyModelType>, [undefined]>;
612
633
  }>>) => Boolean) => {
613
634
  parentId: string;
@@ -631,6 +652,8 @@ export declare class EditorManager {
631
652
  y: number;
632
653
  w: number;
633
654
  h: number;
655
+ dialogTitle: string;
656
+ dialogType: string;
634
657
  children: import("mobx-state-tree").IMSTArray<import("mobx-state-tree").IAnyModelType> & import("mobx-state-tree").IStateTreeNode<import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IArrayType<import("mobx-state-tree").IAnyModelType>, [undefined]>>;
635
658
  } & import("mobx-state-tree/dist/internal").NonEmptyObject & {
636
659
  getData: import("mobx-state-tree").IType<() => any, () => any, () => any>;
@@ -689,6 +712,8 @@ export declare class EditorManager {
689
712
  y: import("mobx-state-tree").IType<number | undefined, number, number>;
690
713
  w: import("mobx-state-tree").IType<number | undefined, number, number>;
691
714
  h: import("mobx-state-tree").IType<number | undefined, number, number>;
715
+ dialogTitle: import("mobx-state-tree").IType<string | undefined, string, string>;
716
+ dialogType: import("mobx-state-tree").IType<string | undefined, string, string>;
692
717
  children: import("mobx-state-tree").IOptionalIType<import("mobx-state-tree").IArrayType<import("mobx-state-tree").IAnyModelType>, [undefined]>;
693
718
  }, {
694
719
  getData: import("mobx-state-tree").IType<() => any, () => any, () => any>;
@@ -738,6 +763,8 @@ export declare class EditorManager {
738
763
  getData?: (() => any) | undefined;
739
764
  preferTag?: string | undefined;
740
765
  schemaPath?: string | undefined;
766
+ dialogTitle?: string | undefined;
767
+ dialogType?: string | undefined;
741
768
  regionInfo?: RegionConfig | undefined;
742
769
  widthMutable?: boolean | undefined;
743
770
  memberIndex?: number | undefined;
@@ -817,6 +844,10 @@ export declare class EditorManager {
817
844
  * 备注:可以根据渲染器ID添加新元素,也可以根据现有schema片段添加新元素
818
845
  */
819
846
  addElem(rendererIdOrSchema: string | any): Promise<void>;
847
+ /**
848
+ * 判断当前节点是否可以添加同级节点
849
+ */
850
+ canAppendSiblings(): boolean;
820
851
  /**
821
852
  * 在当前选中元素追加新的schema
822
853
  * 备注:目前主要用在复制&粘贴快捷功能键中
@@ -995,7 +1026,7 @@ export declare class EditorManager {
995
1026
  formKey?: string;
996
1027
  pipeIn?: (value: any) => any;
997
1028
  pipeOut?: (value: any) => any;
998
- }): ({ value, onChange, popOverContainer, id, store, node }: import("./plugin").PanelProps) => JSX.Element;
1029
+ }): ({ value, onChange, popOverContainer, id, store, node }: import("./plugin").PanelProps) => import("react").JSX.Element;
999
1030
  onWidthChangeStart(e: MouseEvent, ctx: {
1000
1031
  dom: HTMLElement;
1001
1032
  node: EditorNodeType;
@@ -1,4 +1,6 @@
1
1
  import { BaseEventContext, BasePlugin, BasicToolbarItem } from '../plugin';
2
+ import React from 'react';
3
+ export declare const JsonView: React.LazyExoticComponent<React.ComponentType<import("react-json-view").ReactJsonViewProps>>;
2
4
  /**
3
5
  * 添加调试功能
4
6
  */
@@ -11,11 +13,9 @@ export declare class DataDebugPlugin extends BasePlugin {
11
13
  name: string;
12
14
  asFormItem: boolean;
13
15
  className: string;
14
- component: ({ value, onChange, readOnly }: {
16
+ component: ({ value }: {
15
17
  value: any;
16
- onChange: (value: any) => void;
17
- readOnly?: boolean | undefined;
18
- }) => JSX.Element;
18
+ }) => React.JSX.Element;
19
19
  };
20
- openDebugForm(data: any, callback?: (values: any) => void): Promise<void>;
20
+ openDebugForm(data: any): Promise<void>;
21
21
  }
package/lib/plugin.d.ts CHANGED
@@ -9,9 +9,10 @@ import { DNDModeInterface } from './dnd/interface';
9
9
  import { EditorDNDManager } from './dnd';
10
10
  import React from 'react';
11
11
  import { DiffChange } from './util';
12
- import type { RendererConfig } from 'amis-core';
12
+ import type { RendererConfig, Schema } from 'amis-core';
13
13
  import type { MenuDivider, MenuItem } from 'amis-ui/lib/components/ContextMenu';
14
14
  import type { BaseSchema, SchemaCollection } from 'amis';
15
+ import type { AsyncLayerOptions } from './component/AsyncLayer';
15
16
  /**
16
17
  * 区域的定义,容器渲染器都需要定义区域信息。
17
18
  */
@@ -28,7 +29,7 @@ export interface RegionConfig {
28
29
  /**
29
30
  * 区域占位字符,用于提示
30
31
  */
31
- placeholder?: string;
32
+ placeholder?: string | JSX.Element;
32
33
  /**
33
34
  * 对于复杂的控件需要用到这个配置。
34
35
  * 如果配置了,则遍历 react dom 直到目标节点调换成 Region 节点
@@ -139,6 +140,11 @@ export interface RendererInfo extends RendererScaffoldInfo {
139
140
  */
140
141
  $schema?: string;
141
142
  isBaseComponent?: boolean;
143
+ /**
144
+ * 是否列表类型组件,自身没数据但是绑定了数据源里面的数组字段
145
+ * 子组件需要能获取到单项字段,如list、each、cards
146
+ */
147
+ isListComponent?: boolean;
142
148
  disabledRendererPlugin?: boolean;
143
149
  /**
144
150
  * 配置区域。
@@ -217,6 +223,8 @@ export interface RendererInfo extends RendererScaffoldInfo {
217
223
  tipName?: string;
218
224
  /** 共享上下文 */
219
225
  sharedContext?: Record<string, any>;
226
+ dialogTitle?: string;
227
+ dialogType?: string;
220
228
  }
221
229
  export type BasicRendererInfo = Omit<RendererInfo, 'id' | 'type' | 'plugin' | 'renderer' | 'schemaPath'>;
222
230
  export interface PopOverForm {
@@ -248,7 +256,7 @@ export interface ScaffoldForm extends PopOverForm {
248
256
  * key 是配置的字段名。
249
257
  * value 是具体错误信息。
250
258
  */
251
- validate?: (values: any) => void | {
259
+ validate?: (values: any, formStore: any) => void | {
252
260
  [propName: string]: string;
253
261
  } | Promise<void | {
254
262
  [propName: string]: string;
@@ -572,15 +580,25 @@ export interface PluginInterface extends Partial<BasicRendererInfo>, Partial<Bas
572
580
  * 右侧面板是否需要两端对齐布局
573
581
  */
574
582
  panelJustify?: boolean;
583
+ /**
584
+ * panelBodyAsyncCreator设置后异步加载层的配置项
585
+ */
586
+ async?: AsyncLayerOptions;
575
587
  /**
576
588
  * 有数据域的容器,可以为子组件提供读取的字段绑定页面
577
589
  */
578
590
  getAvailableContextFields?: (scopeNode: EditorNodeType, target: EditorNodeType, region?: EditorNodeType) => Promise<SchemaCollection | void>;
591
+ /** 配置面板表单的 pipeOut function */
592
+ panelFormPipeOut?: (value: any) => any;
579
593
  /**
580
594
  * @deprecated 用 panelBodyCreator
581
595
  */
582
596
  panelControlsCreator?: (context: BaseEventContext) => Array<any>;
583
597
  panelBodyCreator?: (context: BaseEventContext) => SchemaCollection;
598
+ /**
599
+ * 配置面板内容区的异步加载方法,设置后优先级大于panelBodyCreator
600
+ */
601
+ panelBodyAsyncCreator?: (context: BaseEventContext) => Promise<SchemaCollection>;
584
602
  popOverBody?: Array<any>;
585
603
  popOverBodyCreator?: (context: BaseEventContext) => Array<any>;
586
604
  /**
@@ -619,9 +637,23 @@ export interface PluginInterface extends Partial<BasicRendererInfo>, Partial<Bas
619
637
  * @param node 当前容器节点
620
638
  * @param region 所属容器节点
621
639
  */
622
- buildDataSchemas?: (node: EditorNodeType, region?: EditorNodeType, trigger?: EditorNodeType) => any | Promise<any>;
640
+ buildDataSchemas?: (node: EditorNodeType, region?: EditorNodeType, trigger?: EditorNodeType, parent?: EditorNodeType) => any | Promise<any>;
623
641
  rendererBeforeDispatchEvent?: (node: EditorNodeType, e: any, data: any) => void;
642
+ /**
643
+ * 给 schema 打补丁,纠正一下 schema 配置。
644
+ * @param schema
645
+ * @param renderer
646
+ * @param props
647
+ * @returns
648
+ */
649
+ patchSchema?: (schema: Schema, renderer: RendererConfig, props?: any) => Schema | void;
624
650
  dispose?: () => void;
651
+ /**
652
+ * 组件 ref 回调,mount 和 unmount 的时候都会调用
653
+ * @param ref
654
+ * @returns
655
+ */
656
+ componentRef?: (node: EditorNodeType, ref: any) => void;
625
657
  }
626
658
  export interface RendererPluginEvent {
627
659
  eventName: string;
@@ -687,6 +719,7 @@ export declare abstract class BasePlugin implements PluginInterface {
687
719
  }, HTMLElement>;
688
720
  }, HTMLElement>;
689
721
  getPlugin(rendererNameOrKlass: string | typeof BasePlugin): PluginInterface | undefined;
722
+ buildDataSchemas(node: EditorNodeType, region?: EditorNodeType, trigger?: EditorNodeType, parent?: EditorNodeType): any;
690
723
  }
691
724
  /**
692
725
  * 布局相关组件基类,带宽高可拖拽功能。