amis-editor-core 6.9.0-rc.0 → 6.9.0-rc.10

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.
@@ -382,7 +382,7 @@ export default class FlexLayout implements LayoutInterface {
382
382
  }): any;
383
383
  removeChild(child: any): void;
384
384
  toggleFold(e: import("react").MouseEvent<HTMLAnchorElement, MouseEvent>): void;
385
- patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined): void;
385
+ patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined, ids?: Map<string, string> | undefined): void;
386
386
  updateSchema(value: any): void;
387
387
  updateSchemaStyle(value: any): void;
388
388
  setComponent(value: any): void;
@@ -759,7 +759,7 @@ export default class FlexLayout implements LayoutInterface {
759
759
  }): any;
760
760
  removeChild(child: any): void;
761
761
  toggleFold(e: import("react").MouseEvent<HTMLAnchorElement, MouseEvent>): void;
762
- patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined): void;
762
+ patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined, ids?: Map<string, string> | undefined): void;
763
763
  updateSchema(value: any): void;
764
764
  updateSchemaStyle(value: any): void;
765
765
  setComponent(value: any): void;
@@ -1156,7 +1156,7 @@ export default class FlexLayout implements LayoutInterface {
1156
1156
  }): any;
1157
1157
  removeChild(child: any): void;
1158
1158
  toggleFold(e: import("react").MouseEvent<HTMLAnchorElement, MouseEvent>): void;
1159
- patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined): void;
1159
+ patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined, ids?: Map<string, string> | undefined): void;
1160
1160
  updateSchema(value: any): void;
1161
1161
  updateSchemaStyle(value: any): void;
1162
1162
  setComponent(value: any): void;
@@ -1533,7 +1533,7 @@ export default class FlexLayout implements LayoutInterface {
1533
1533
  }): any;
1534
1534
  removeChild(child: any): void;
1535
1535
  toggleFold(e: import("react").MouseEvent<HTMLAnchorElement, MouseEvent>): void;
1536
- patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined): void;
1536
+ patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined, ids?: Map<string, string> | undefined): void;
1537
1537
  updateSchema(value: any): void;
1538
1538
  updateSchemaStyle(value: any): void;
1539
1539
  setComponent(value: any): void;
@@ -1921,7 +1921,7 @@ export default class FlexLayout implements LayoutInterface {
1921
1921
  }): any;
1922
1922
  removeChild(child: any): void;
1923
1923
  toggleFold(e: import("react").MouseEvent<HTMLAnchorElement, MouseEvent>): void;
1924
- patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined): void;
1924
+ patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined, ids?: Map<string, string> | undefined): void;
1925
1925
  updateSchema(value: any): void;
1926
1926
  updateSchemaStyle(value: any): void;
1927
1927
  setComponent(value: any): void;
@@ -2298,7 +2298,7 @@ export default class FlexLayout implements LayoutInterface {
2298
2298
  }): any;
2299
2299
  removeChild(child: any): void;
2300
2300
  toggleFold(e: import("react").MouseEvent<HTMLAnchorElement, MouseEvent>): void;
2301
- patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined): void;
2301
+ patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined, ids?: Map<string, string> | undefined): void;
2302
2302
  updateSchema(value: any): void;
2303
2303
  updateSchemaStyle(value: any): void;
2304
2304
  setComponent(value: any): void;
@@ -2686,7 +2686,7 @@ export default class FlexLayout implements LayoutInterface {
2686
2686
  }): any;
2687
2687
  removeChild(child: any): void;
2688
2688
  toggleFold(e: import("react").MouseEvent<HTMLAnchorElement, MouseEvent>): void;
2689
- patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined): void;
2689
+ patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined, ids?: Map<string, string> | undefined): void;
2690
2690
  updateSchema(value: any): void;
2691
2691
  updateSchemaStyle(value: any): void;
2692
2692
  setComponent(value: any): void;
@@ -3063,7 +3063,7 @@ export default class FlexLayout implements LayoutInterface {
3063
3063
  }): any;
3064
3064
  removeChild(child: any): void;
3065
3065
  toggleFold(e: import("react").MouseEvent<HTMLAnchorElement, MouseEvent>): void;
3066
- patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined): void;
3066
+ patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined, ids?: Map<string, string> | undefined): void;
3067
3067
  updateSchema(value: any): void;
3068
3068
  updateSchemaStyle(value: any): void;
3069
3069
  setComponent(value: any): void;
@@ -3451,7 +3451,7 @@ export default class FlexLayout implements LayoutInterface {
3451
3451
  }): any;
3452
3452
  removeChild(child: any): void;
3453
3453
  toggleFold(e: import("react").MouseEvent<HTMLAnchorElement, MouseEvent>): void;
3454
- patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined): void;
3454
+ patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined, ids?: Map<string, string> | undefined): void;
3455
3455
  updateSchema(value: any): void;
3456
3456
  updateSchemaStyle(value: any): void;
3457
3457
  setComponent(value: any): void;
@@ -3828,7 +3828,7 @@ export default class FlexLayout implements LayoutInterface {
3828
3828
  }): any;
3829
3829
  removeChild(child: any): void;
3830
3830
  toggleFold(e: import("react").MouseEvent<HTMLAnchorElement, MouseEvent>): void;
3831
- patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined): void;
3831
+ patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined, ids?: Map<string, string> | undefined): void;
3832
3832
  updateSchema(value: any): void;
3833
3833
  updateSchemaStyle(value: any): void;
3834
3834
  setComponent(value: any): void;
package/esm/manager.d.ts CHANGED
@@ -10,7 +10,7 @@ import { EditorDNDManager } from './dnd';
10
10
  import { VariableManager } from './variable';
11
11
  import type { IScopedContext } from 'amis';
12
12
  import type { SchemaObject, SchemaCollection } from 'amis';
13
- import type { RendererConfig } from 'amis-core';
13
+ import type { Api, Payload, RendererConfig } from 'amis-core';
14
14
  export interface EditorManagerConfig extends Omit<EditorProps, 'value' | 'onChange'> {
15
15
  }
16
16
  export interface PluginClass {
@@ -61,6 +61,7 @@ export declare class EditorManager {
61
61
  dataSchema: DataSchema;
62
62
  /** 变量管理 */
63
63
  readonly variableManager: VariableManager;
64
+ fetch?: (api: Api, data?: any, options?: object) => Promise<Payload>;
64
65
  constructor(config: EditorManagerConfig, store: EditorStoreType, parent?: EditorManager | undefined);
65
66
  normalizeScene(plugins?: Array<PluginClass | [PluginClass, Record<string, any> | (() => Record<string, any>)]>): (PluginClass | [PluginClass, Record<string, any> | (() => Record<string, any>)])[];
66
67
  dynamicAddPlugin(pluginName: string): void;
@@ -432,7 +433,7 @@ export declare class EditorManager {
432
433
  }): any;
433
434
  removeChild(child: any): void;
434
435
  toggleFold(e: import("react").MouseEvent<HTMLAnchorElement, MouseEvent>): void;
435
- patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined): void;
436
+ patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined, ids?: Map<string, string> | undefined): void;
436
437
  updateSchema(value: any): void;
437
438
  updateSchemaStyle(value: any): void;
438
439
  setComponent(value: any): void;
@@ -440,6 +441,11 @@ export declare class EditorManager {
440
441
  getTarget(): HTMLElement | HTMLElement[] | null;
441
442
  calculateHighlightBox(root?: any): void;
442
443
  resetHighlightBox(root: any): void;
444
+ /**
445
+ * 显示插入面板
446
+ * @param region
447
+ * @param preferTag
448
+ */
443
449
  updateState(state: any, replace?: boolean): void;
444
450
  setWidthMutable(value: any): void;
445
451
  setHeightMutable(value: any): void;
@@ -809,7 +815,7 @@ export declare class EditorManager {
809
815
  }): any;
810
816
  removeChild(child: any): void;
811
817
  toggleFold(e: import("react").MouseEvent<HTMLAnchorElement, MouseEvent>): void;
812
- patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined): void;
818
+ patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined, ids?: Map<string, string> | undefined): void;
813
819
  updateSchema(value: any): void;
814
820
  updateSchemaStyle(value: any): void;
815
821
  setComponent(value: any): void;
@@ -817,6 +823,11 @@ export declare class EditorManager {
817
823
  getTarget(): HTMLElement | HTMLElement[] | null;
818
824
  calculateHighlightBox(root?: any): void;
819
825
  resetHighlightBox(root: any): void;
826
+ /**
827
+ * 显示插入面板
828
+ * @param region
829
+ * @param preferTag
830
+ */
820
831
  updateState(state: any, replace?: boolean): void;
821
832
  setWidthMutable(value: any): void;
822
833
  setHeightMutable(value: any): void;
@@ -1039,7 +1050,7 @@ export declare class EditorManager {
1039
1050
  toggleSelection(id: string): void;
1040
1051
  setSelection(selections: Array<string>, id?: string): void;
1041
1052
  startDrag(id: string, e: React.DragEvent): void;
1042
- scaffold(form: any, value: any): Promise<SchemaObject>;
1053
+ scaffold(form: ScaffoldForm, value: any): Promise<SchemaObject>;
1043
1054
  reScaffold(id: string, form: ScaffoldForm, value: any): Promise<void>;
1044
1055
  reScaffoldV2(id: string): Promise<void>;
1045
1056
  lazyPatchSchema: import("lodash").DebouncedFunc<any>;
@@ -1071,7 +1082,7 @@ export declare class EditorManager {
1071
1082
  formKey?: string;
1072
1083
  pipeIn?: (value: any) => any;
1073
1084
  pipeOut?: (value: any) => any;
1074
- }): ({ value, onChange, popOverContainer, id, store, node }: import("./plugin").PanelProps) => import("react").JSX.Element;
1085
+ }): ({ value, onChange, popOverContainer, id, store, node, readonly }: import("./plugin").PanelProps) => import("react").JSX.Element;
1075
1086
  onWidthChangeStart(e: MouseEvent, ctx: {
1076
1087
  dom: HTMLElement;
1077
1088
  node: EditorNodeType;
package/esm/plugin.d.ts CHANGED
@@ -243,11 +243,14 @@ export interface PopOverForm {
243
243
  * @deprecated 改用 body 代替
244
244
  */
245
245
  controls?: Array<any>;
246
+ initApi?: any;
247
+ api?: any;
246
248
  }
247
249
  export interface ScaffoldForm extends PopOverForm {
248
250
  stepsBody?: boolean;
249
251
  /** 是否可跳过创建向导直接创建 */
250
252
  canSkip?: boolean;
253
+ getSchema?: (value: any) => PopOverForm | Promise<PopOverForm>;
251
254
  mode?: 'normal' | 'horizontal' | 'inline' | {
252
255
  mode: string;
253
256
  horizontal: any;
@@ -335,6 +338,8 @@ export interface PanelProps {
335
338
  store: EditorStoreType;
336
339
  manager: EditorManager;
337
340
  popOverContainer?: () => HTMLElement | void;
341
+ readonly?: boolean;
342
+ children?: React.ReactNode | ((props: PanelProps) => React.ReactNode);
338
343
  }
339
344
  /**
340
345
  * 面板信息定义
@@ -3,8 +3,8 @@ import { Instance } from 'mobx-state-tree';
3
3
  import { InsertEventContext, PluginEvent, RendererInfo, SubRendererInfo, ToolbarItem, PanelItem, MoveEventContext, ScaffoldForm, PopOverForm, DeleteEventContext, BaseEventContext } from '../plugin';
4
4
  import type { Schema } from 'amis';
5
5
  import { EditorNodeType } from './node';
6
- import type { DialogSchema } from '../../../amis/src/renderers/Dialog';
7
- import type { DrawerSchema } from '../../../amis/src/renderers/Drawer';
6
+ import type { DialogSchema } from 'amis/lib/renderers/Dialog';
7
+ import type { DrawerSchema } from 'amis/lib/renderers/Drawer';
8
8
  export interface SchemaHistory {
9
9
  versionId: number;
10
10
  schema: any;
@@ -51,6 +51,13 @@ export interface PopOverFormContext extends PopOverForm {
51
51
  callback: (value: any, diff: any) => void;
52
52
  node?: EditorNodeType;
53
53
  }
54
+ export interface ModalFormContext extends PopOverForm {
55
+ mode?: 'dialog' | 'drawer';
56
+ size?: string;
57
+ postion?: string;
58
+ value: any;
59
+ callback: (value: any, diff: any) => void;
60
+ }
54
61
  /**
55
62
  * 搜集的 name 信息
56
63
  */
@@ -436,7 +443,7 @@ export declare const MainStore: import("mobx-state-tree").IModelType<{
436
443
  }): any;
437
444
  removeChild(child: any): void;
438
445
  toggleFold(e: import("react").MouseEvent<HTMLAnchorElement, MouseEvent>): void;
439
- patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined): void;
446
+ patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined, ids?: Map<string, string> | undefined): void;
440
447
  updateSchema(value: any): void;
441
448
  updateSchemaStyle(value: any): void;
442
449
  setComponent(value: any): void;
@@ -500,6 +507,10 @@ export declare const MainStore: import("mobx-state-tree").IModelType<{
500
507
  scaffoldFormBuzy: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
501
508
  scaffoldError: import("mobx-state-tree").IType<string | undefined, string, string>;
502
509
  popOverForm: import("mobx-state-tree").IMaybe<import("mobx-state-tree").IType<PopOverFormContext, PopOverFormContext, PopOverFormContext>>;
510
+ modalForm: import("mobx-state-tree").IMaybe<import("mobx-state-tree").IType<ModalFormContext, ModalFormContext, ModalFormContext>>;
511
+ modalMode: import("mobx-state-tree").IType<string | undefined, string, string>;
512
+ modalFormBuzy: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
513
+ modalFormError: import("mobx-state-tree").IType<string | undefined, string, string>;
503
514
  subEditorContext: import("mobx-state-tree").IMaybe<import("mobx-state-tree").IType<SubEditorContext, SubEditorContext, SubEditorContext>>;
504
515
  superEditorData: import("mobx-state-tree").IMaybe<import("mobx-state-tree").IType<any, any, any>>;
505
516
  calculateStarted: import("mobx-state-tree").IType<boolean | undefined, boolean, boolean>;
@@ -513,6 +524,7 @@ export declare const MainStore: import("mobx-state-tree").IModelType<{
513
524
  readonly filteredSchema: any;
514
525
  readonly filteredSchemaForPreview: any;
515
526
  isRootSchema(id: string): boolean;
527
+ readonly rootId: any;
516
528
  getRootId(): any;
517
529
  isHoved(id: string): boolean | "";
518
530
  isActive(id: string): boolean | "";
@@ -888,7 +900,7 @@ export declare const MainStore: import("mobx-state-tree").IModelType<{
888
900
  }): any;
889
901
  removeChild(child: any): void;
890
902
  toggleFold(e: import("react").MouseEvent<HTMLAnchorElement, MouseEvent>): void;
891
- patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined): void;
903
+ patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined, ids?: Map<string, string> | undefined): void;
892
904
  updateSchema(value: any): void;
893
905
  updateSchemaStyle(value: any): void;
894
906
  setComponent(value: any): void;
@@ -1265,7 +1277,7 @@ export declare const MainStore: import("mobx-state-tree").IModelType<{
1265
1277
  }): any;
1266
1278
  removeChild(child: any): void;
1267
1279
  toggleFold(e: import("react").MouseEvent<HTMLAnchorElement, MouseEvent>): void;
1268
- patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined): void;
1280
+ patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined, ids?: Map<string, string> | undefined): void;
1269
1281
  updateSchema(value: any): void;
1270
1282
  updateSchemaStyle(value: any): void;
1271
1283
  setComponent(value: any): void;
@@ -1665,7 +1677,7 @@ export declare const MainStore: import("mobx-state-tree").IModelType<{
1665
1677
  }): any;
1666
1678
  removeChild(child: any): void;
1667
1679
  toggleFold(e: import("react").MouseEvent<HTMLAnchorElement, MouseEvent>): void;
1668
- patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined): void;
1680
+ patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined, ids?: Map<string, string> | undefined): void;
1669
1681
  updateSchema(value: any): void;
1670
1682
  updateSchemaStyle(value: any): void;
1671
1683
  setComponent(value: any): void;
@@ -2042,7 +2054,7 @@ export declare const MainStore: import("mobx-state-tree").IModelType<{
2042
2054
  }): any;
2043
2055
  removeChild(child: any): void;
2044
2056
  toggleFold(e: import("react").MouseEvent<HTMLAnchorElement, MouseEvent>): void;
2045
- patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined): void;
2057
+ patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined, ids?: Map<string, string> | undefined): void;
2046
2058
  updateSchema(value: any): void;
2047
2059
  updateSchemaStyle(value: any): void;
2048
2060
  setComponent(value: any): void;
@@ -2420,7 +2432,7 @@ export declare const MainStore: import("mobx-state-tree").IModelType<{
2420
2432
  }): any;
2421
2433
  removeChild(child: any): void;
2422
2434
  toggleFold(e: import("react").MouseEvent<HTMLAnchorElement, MouseEvent>): void;
2423
- patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined): void;
2435
+ patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined, ids?: Map<string, string> | undefined): void;
2424
2436
  updateSchema(value: any): void;
2425
2437
  updateSchemaStyle(value: any): void;
2426
2438
  setComponent(value: any): void;
@@ -2797,7 +2809,7 @@ export declare const MainStore: import("mobx-state-tree").IModelType<{
2797
2809
  }): any;
2798
2810
  removeChild(child: any): void;
2799
2811
  toggleFold(e: import("react").MouseEvent<HTMLAnchorElement, MouseEvent>): void;
2800
- patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined): void;
2812
+ patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined, ids?: Map<string, string> | undefined): void;
2801
2813
  updateSchema(value: any): void;
2802
2814
  updateSchemaStyle(value: any): void;
2803
2815
  setComponent(value: any): void;
@@ -3175,7 +3187,7 @@ export declare const MainStore: import("mobx-state-tree").IModelType<{
3175
3187
  }): any;
3176
3188
  removeChild(child: any): void;
3177
3189
  toggleFold(e: import("react").MouseEvent<HTMLAnchorElement, MouseEvent>): void;
3178
- patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined): void;
3190
+ patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined, ids?: Map<string, string> | undefined): void;
3179
3191
  updateSchema(value: any): void;
3180
3192
  updateSchemaStyle(value: any): void;
3181
3193
  setComponent(value: any): void;
@@ -3552,7 +3564,7 @@ export declare const MainStore: import("mobx-state-tree").IModelType<{
3552
3564
  }): any;
3553
3565
  removeChild(child: any): void;
3554
3566
  toggleFold(e: import("react").MouseEvent<HTMLAnchorElement, MouseEvent>): void;
3555
- patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined): void;
3567
+ patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined, ids?: Map<string, string> | undefined): void;
3556
3568
  updateSchema(value: any): void;
3557
3569
  updateSchemaStyle(value: any): void;
3558
3570
  setComponent(value: any): void;
@@ -3619,12 +3631,12 @@ export declare const MainStore: import("mobx-state-tree").IModelType<{
3619
3631
  readonly getSuperEditorData: any;
3620
3632
  getComponentTreeSource(): any;
3621
3633
  readonly scaffoldData: any;
3622
- readonly modals: any[];
3634
+ readonly modals: EditorModalBody[];
3623
3635
  readonly modalOptions: {
3624
3636
  label: string;
3625
3637
  tip: string;
3626
- value: any;
3627
- $$ref: any;
3638
+ value: string | undefined;
3639
+ $$ref: string | undefined;
3628
3640
  }[];
3629
3641
  } & {
3630
3642
  markReady(): void;
@@ -3724,6 +3736,10 @@ export declare const MainStore: import("mobx-state-tree").IModelType<{
3724
3736
  updateScaffoldData(value: any, replace?: boolean): void;
3725
3737
  openPopOverForm(context: PopOverFormContext): void;
3726
3738
  closePopOverForm(): void;
3739
+ openModalForm(context: ModalFormContext): void;
3740
+ closeModalForm(): void;
3741
+ markModalFormBuzy(value: any): void;
3742
+ setModalFormError(msg?: string): void;
3727
3743
  activeHighlightNodes(ids: Array<string>): void;
3728
3744
  deActiveHighlightNodes(ids: Array<string>): void;
3729
3745
  calculateHighlightBox(ids?: Array<string>): void;
@@ -219,7 +219,7 @@ export declare const EditorNode: import("mobx-state-tree").IModelType<{
219
219
  }): any;
220
220
  removeChild(child: any): void;
221
221
  toggleFold(e: React.MouseEvent<HTMLAnchorElement>): void;
222
- patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined): void;
222
+ patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined, ids?: Map<string, string>): void;
223
223
  updateSchema(value: any): void;
224
224
  updateSchemaStyle(value: any): void;
225
225
  setComponent(value: any): void;
@@ -450,7 +450,7 @@ export declare const EditorNodeContext: React.Context<({
450
450
  }): any;
451
451
  removeChild(child: any): void;
452
452
  toggleFold(e: React.MouseEvent<HTMLAnchorElement>): void;
453
- patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined): void;
453
+ patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined, ids?: Map<string, string>): void;
454
454
  updateSchema(value: any): void;
455
455
  updateSchemaStyle(value: any): void;
456
456
  setComponent(value: any): void;
@@ -680,7 +680,7 @@ export declare const EditorNodeContext: React.Context<({
680
680
  }): any;
681
681
  removeChild(child: any): void;
682
682
  toggleFold(e: React.MouseEvent<HTMLAnchorElement>): void;
683
- patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined): void;
683
+ patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined, ids?: Map<string, string>): void;
684
684
  updateSchema(value: any): void;
685
685
  updateSchemaStyle(value: any): void;
686
686
  setComponent(value: any): void;
package/esm/util.d.ts CHANGED
@@ -4,6 +4,8 @@ import type { VariableItem } from 'amis-ui';
4
4
  import { Diff } from 'deep-diff';
5
5
  import { EditorModalBody } from './store/editor';
6
6
  import type { SchemaType } from 'amis/lib/Schema';
7
+ import type { DialogSchema } from 'amis/lib/renderers/Dialog';
8
+ import type { DrawerSchema } from 'amis/lib/renderers/Drawer';
7
9
  declare const guid: any, omitControls: any, isObjectShallowModified: any, cloneObject: any, anyChanged: any, noop: any, makeHorizontalDeeper: any, isEmpty: any, eachTree: any, createObject: any;
8
10
  export { guid, isObjectShallowModified, anyChanged, noop, makeHorizontalDeeper, omitControls, isEmpty, cloneObject, eachTree, createObject };
9
11
  export declare let themeConfig: any;
@@ -196,7 +198,16 @@ export declare function modalsToDefinitions(modals: Array<EditorModalBody>, defi
196
198
  */
197
199
  export declare function mergeDefinitions(originSchema: any, definitions: any, modal: any): any;
198
200
  export declare function setDefaultColSize(regionList: any[], row: number, preRow?: number): any[];
199
- export declare function getModals(schema: any): any[];
201
+ export declare function getModals(schema: any): (DialogSchema | DrawerSchema)[];
202
+ /**
203
+ * 深度 splice 数组,同时返回新的对象,按需拷贝,没有副作用
204
+ * @param target
205
+ * @param path
206
+ * @param numberToDelete
207
+ * @param items
208
+ * @returns
209
+ */
210
+ export declare function deepSplice(target: any, path: string, numberToDelete: number, ...items: any[]): any;
200
211
  export declare const RAW_TYPE_MAP: {
201
212
  [k in SchemaType | 'user-select' | 'department-select']?: 'string' | 'number' | 'array' | 'boolean' | 'object' | 'enum' | 'date' | 'datetime' | 'time' | 'quarter' | 'year' | 'month' | 'user' | 'department';
202
213
  };
@@ -91,11 +91,16 @@ export interface EditorProps extends PluginEventListener {
91
91
  getHostNodeDataSchema?: () => Promise<any>;
92
92
  getAvaiableContextFields?: (node: EditorNodeType) => Promise<any>;
93
93
  readonly?: boolean;
94
+ onEditorMount?: (manager: EditorManager) => void;
95
+ onEditorUnmount?: (manager: EditorManager) => void;
96
+ children?: React.ReactNode | ((manager: EditorManager) => React.ReactNode);
94
97
  }
95
98
  export default class Editor extends Component<EditorProps> {
96
99
  readonly store: EditorStoreType;
97
100
  readonly manager: EditorManager;
98
101
  readonly mainRef: React.RefObject<HTMLDivElement>;
102
+ readonly mainPreviewRef: React.RefObject<HTMLDivElement>;
103
+ readonly mainPreviewBodyRef: React.RefObject<any>;
99
104
  toDispose: Array<Function>;
100
105
  lastResult: any;
101
106
  curCopySchemaData: any;
@@ -0,0 +1,25 @@
1
+ import React from 'react';
2
+ import { EditorManager } from '../manager';
3
+ import { EditorStoreType } from '../store/editor';
4
+ export interface ModalFormProps {
5
+ store: EditorStoreType;
6
+ manager: EditorManager;
7
+ theme?: string;
8
+ }
9
+ export declare class ModalForm extends React.Component<ModalFormProps> {
10
+ handleConfirmClick(): Promise<void>;
11
+ amisScope: any;
12
+ scopeRef(scoped: any): void;
13
+ buildSchema(): {
14
+ type: string;
15
+ wrapWithPanel: boolean;
16
+ mode: string;
17
+ wrapperComponent: string;
18
+ initApi: any;
19
+ api: any;
20
+ body: any[];
21
+ submitOnChange: boolean;
22
+ autoFocus: boolean;
23
+ };
24
+ render(): React.JSX.Element;
25
+ }
@@ -17,6 +17,7 @@ export interface PreviewProps {
17
17
  autoFocus?: boolean;
18
18
  toolbarContainer?: () => any;
19
19
  readonly?: boolean;
20
+ ref?: any;
20
21
  }
21
22
  export interface PreviewState {
22
23
  ready?: boolean;
@@ -388,7 +388,7 @@ export declare class RegionWrapper extends React.Component<RegionWrapperProps> {
388
388
  }): any;
389
389
  removeChild(child: any): void;
390
390
  toggleFold(e: React.MouseEvent<HTMLAnchorElement, MouseEvent>): void;
391
- patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined): void;
391
+ patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined, ids?: Map<string, string> | undefined): void;
392
392
  updateSchema(value: any): void;
393
393
  updateSchemaStyle(value: any): void;
394
394
  setComponent(value: any): void;
@@ -765,7 +765,7 @@ export declare class RegionWrapper extends React.Component<RegionWrapperProps> {
765
765
  }): any;
766
766
  removeChild(child: any): void;
767
767
  toggleFold(e: React.MouseEvent<HTMLAnchorElement, MouseEvent>): void;
768
- patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined): void;
768
+ patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined, ids?: Map<string, string> | undefined): void;
769
769
  updateSchema(value: any): void;
770
770
  updateSchemaStyle(value: any): void;
771
771
  setComponent(value: any): void;
@@ -27,14 +27,26 @@ export declare class SubEditor extends React.Component<SubEditorProps> {
27
27
  schema: string;
28
28
  } | undefined>;
29
29
  onChange: () => void;
30
- body: {
30
+ body: (false | {
31
31
  name: string;
32
32
  asFormItem: boolean;
33
33
  children: ({ value, onChange }: {
34
34
  value: any;
35
35
  onChange: (value: any) => void;
36
36
  }) => React.JSX.Element;
37
- }[];
37
+ type?: undefined;
38
+ label?: undefined;
39
+ className?: undefined;
40
+ onClick?: undefined;
41
+ } | {
42
+ type: string;
43
+ label: string;
44
+ className: string;
45
+ onClick: () => void;
46
+ name?: undefined;
47
+ asFormItem?: undefined;
48
+ children?: undefined;
49
+ } | undefined)[];
38
50
  tpl?: undefined;
39
51
  } | {
40
52
  type: string;
@@ -374,7 +374,7 @@ export declare class VRenderer extends React.Component<VRendererProps> {
374
374
  }): any;
375
375
  removeChild(child: any): void;
376
376
  toggleFold(e: React.MouseEvent<HTMLAnchorElement, MouseEvent>): void;
377
- patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined): void;
377
+ patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined, ids?: Map<string, string> | undefined): void;
378
378
  updateSchema(value: any): void;
379
379
  updateSchemaStyle(value: any): void;
380
380
  setComponent(value: any): void;
@@ -751,7 +751,7 @@ export declare class VRenderer extends React.Component<VRendererProps> {
751
751
  }): any;
752
752
  removeChild(child: any): void;
753
753
  toggleFold(e: React.MouseEvent<HTMLAnchorElement, MouseEvent>): void;
754
- patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined): void;
754
+ patch(store: any, force?: boolean, setPatchInfo?: ((id: string, value: any) => void) | undefined, ids?: Map<string, string> | undefined): void;
755
755
  updateSchema(value: any): void;
756
756
  updateSchemaStyle(value: any): void;
757
757
  setComponent(value: any): void;
@@ -16,7 +16,7 @@ export default class BackTop extends React.Component<BackTopProps, BackTopStates
16
16
  constructor(props: any);
17
17
  componentDidMount(): void;
18
18
  componentWillUnmount(): void;
19
- getDefaultTarget(): Document | (Window & typeof globalThis);
19
+ getDefaultTarget(): (Window & typeof globalThis) | Document;
20
20
  handleScroll(e: React.UIEvent<HTMLElement> | {
21
21
  target: any;
22
22
  }): void;
@@ -1,6 +1,6 @@
1
1
  import { EditorNodeType } from '../../store/node';
2
2
  import { EditorManager } from '../../manager';
3
- export declare function SchemaFrom({ propKey, body, definitions, controls, onChange, value, env, api, popOverContainer, submitOnChange, node, manager, justify, ctx, pipeIn, pipeOut }: {
3
+ export declare function SchemaFrom({ propKey, body, definitions, controls, onChange, value, env, api, popOverContainer, submitOnChange, node, manager, justify, ctx, pipeIn, pipeOut, readonly }: {
4
4
  propKey?: string;
5
5
  env: any;
6
6
  body?: Array<any>;
@@ -21,4 +21,5 @@ export declare function SchemaFrom({ propKey, body, definitions, controls, onCha
21
21
  ctx?: any;
22
22
  pipeIn?: (value: any) => any;
23
23
  pipeOut?: (value: any, oldValue: any) => any;
24
+ readonly?: boolean;
24
25
  }): any;
@@ -16,7 +16,7 @@ export declare function makeSchemaFormRender(manager: EditorManager, schema: {
16
16
  formKey?: string;
17
17
  pipeIn?: (value: any) => any;
18
18
  pipeOut?: (value: any) => any;
19
- }): ({ value, onChange, popOverContainer, id, store, node }: PanelProps) => React.JSX.Element;
19
+ }): ({ value, onChange, popOverContainer, id, store, node, readonly }: PanelProps) => React.JSX.Element;
20
20
  export declare function hackIn(renderer: RendererConfig, regions?: Array<RegionConfig>, overrides?: any): void;
21
21
  export declare function mapReactElement(dom: JSX.Element, iterator: (dom: JSX.Element, index?: number) => JSX.Element, index?: number): JSX.Element;
22
22
  export declare function renderThumbToGhost(ghost: HTMLElement, region: EditorNodeType, schema: any, manager: EditorManager): void;
@@ -0,0 +1,12 @@
1
+ /**
2
+ * 深度 splice 数组,同时返回新的对象,按需拷贝,没有副作用
3
+ *
4
+ * 第二个参数可以是一个函数,函数的返回值不为 false 时,表示找到了目标,函数的返回值为 number 时,表示偏移量
5
+ *
6
+ * @param target
7
+ * @param path
8
+ * @param numberToDelete
9
+ * @param items
10
+ * @returns
11
+ */
12
+ export declare function deepSplice(target: any, path: string | ((value: any, index: number | string, stack: Array<any>) => any), numberToDelete: number, provider?: ((origin: any) => any) | any, ...items: any[]): any;
package/lib/editor.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-editor-core v6.9.0-rc.0
2
+ * amis-editor-core v6.9.0-rc.10
3
3
  * Copyright 2018-2024 @fex
4
4
  */
5
5
 
package/lib/index.d.ts CHANGED
@@ -39,6 +39,9 @@ import { UnknownRendererPlugin } from './plugin/Unknown';
39
39
  import ShortcutKey from './component/base/ShortcutKey';
40
40
  import WidthDraggableContainer from './component/base/WidthDraggableContainer';
41
41
  import { SchemaFrom } from './component/base/SchemaForm';
42
+ import { RendererThumb } from './component/RendererThumb';
43
+ import { AvailableRenderersPanel } from './component/Panel/AvailableRenderersPanel';
44
+ import { deepSplice } from './deepSplice';
42
45
  export declare const version = "__buildVersion";
43
46
  export default Editor;
44
- export { Editor, MiniEditor, utils, mapReactElement, RendererEditor, BasicEditor, CodeEditor, VRenderer, RegionWrapper, IFramePreview as IFrameEditor, SearchPanel, EditorNodeType, EditorNodeSnapshot, EditorStoreType, ContainerWrapper, AvailableRenderersPlugin, BasicToolbarPlugin, CodePlugin, ErrorRendererPlugin, OutlinePlugin, UnknownRendererPlugin, ShortcutKey, SchemaFrom, WidthDraggableContainer };
47
+ export { Editor, MiniEditor, utils, deepSplice, mapReactElement, RendererEditor, BasicEditor, CodeEditor, VRenderer, RegionWrapper, IFramePreview as IFrameEditor, SearchPanel, EditorNodeType, EditorNodeSnapshot, EditorStoreType, ContainerWrapper, AvailableRenderersPlugin, AvailableRenderersPanel, BasicToolbarPlugin, CodePlugin, ErrorRendererPlugin, OutlinePlugin, UnknownRendererPlugin, ShortcutKey, SchemaFrom, WidthDraggableContainer, RendererThumb };