amis-editor-core 6.9.0-rc.6 → 6.9.0-rc.8

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/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;
@@ -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;
@@ -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>;
package/esm/plugin.d.ts CHANGED
@@ -250,6 +250,7 @@ export interface ScaffoldForm extends PopOverForm {
250
250
  stepsBody?: boolean;
251
251
  /** 是否可跳过创建向导直接创建 */
252
252
  canSkip?: boolean;
253
+ getSchema?: (value: any) => PopOverForm | Promise<PopOverForm>;
253
254
  mode?: 'normal' | 'horizontal' | 'inline' | {
254
255
  mode: string;
255
256
  horizontal: any;
@@ -338,6 +339,7 @@ export interface PanelProps {
338
339
  manager: EditorManager;
339
340
  popOverContainer?: () => HTMLElement | void;
340
341
  readonly?: boolean;
342
+ children?: React.ReactNode | ((props: PanelProps) => React.ReactNode);
341
343
  }
342
344
  /**
343
345
  * 面板信息定义
@@ -524,6 +524,7 @@ export declare const MainStore: import("mobx-state-tree").IModelType<{
524
524
  readonly filteredSchema: any;
525
525
  readonly filteredSchemaForPreview: any;
526
526
  isRootSchema(id: string): boolean;
527
+ readonly rootId: any;
527
528
  getRootId(): any;
528
529
  isHoved(id: string): boolean | "";
529
530
  isActive(id: string): boolean | "";
@@ -91,14 +91,11 @@ 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
- export default class Editor extends Component<EditorProps, {
96
- mobileDimensions: {
97
- width: number;
98
- height: number;
99
- };
100
- mobileScale: number;
101
- }> {
98
+ export default class Editor extends Component<EditorProps> {
102
99
  readonly store: EditorStoreType;
103
100
  readonly manager: EditorManager;
104
101
  readonly mainRef: React.RefObject<HTMLDivElement>;
@@ -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;
@@ -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/dnd/flex.d.ts CHANGED
@@ -45,6 +45,6 @@ export declare class FlexDNDMode implements DNDModeInterface {
45
45
  * 销毁
46
46
  */
47
47
  dispose(): void;
48
- getDropPosition(): "top" | "bottom" | "right" | "left" | undefined;
48
+ getDropPosition(): "left" | "right" | "bottom" | "top" | undefined;
49
49
  interruptionDrop(): boolean;
50
50
  }
package/lib/editor.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * amis-editor-core v6.9.0-rc.6
2
+ * amis-editor-core v6.9.0-rc.8
3
3
  * Copyright 2018-2024 @fex
4
4
  */
5
5
 
package/lib/index.d.ts CHANGED
@@ -40,6 +40,8 @@ import ShortcutKey from './component/base/ShortcutKey';
40
40
  import WidthDraggableContainer from './component/base/WidthDraggableContainer';
41
41
  import { SchemaFrom } from './component/base/SchemaForm';
42
42
  import { RendererThumb } from './component/RendererThumb';
43
+ import { AvailableRenderersPanel } from './component/Panel/AvailableRenderersPanel';
44
+ import { deepSplice } from './deepSplice';
43
45
  export declare const version = "__buildVersion";
44
46
  export default Editor;
45
- 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, RendererThumb };
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 };