snowy-designer
Version:
基于Epic-Designer-Pro版本的设计器,可视化开发页面表单
113 lines (112 loc) • 4.56 kB
TypeScript
import { ComponentSchema } from '../../../types/src/index';
/**
* 提供组件复制粘贴功能的Hook
* @param pageSchema 页面Schema数据
* @param setSelectedNode 设置选中节点的函数
* @param revokePush 撤销栈推送函数
*/
export declare function useClipboard(pageSchema: any, setSelectedNode: (schema: ComponentSchema) => void, revokePush: (message: string) => void): {
clipboardNode: import('vue').Ref<{
[x: string]: any;
bindable?: boolean | undefined;
children?: /*elided*/ any[] | undefined;
componentProps?: any;
dataSource?: any;
editData?: any;
field?: string | undefined;
id?: string | undefined;
input?: boolean | undefined;
label?: string | undefined;
noFormItem?: boolean | undefined;
on?: {
[eventName: string]: import('../../../utils/src/index').ActionsModel[];
} | undefined;
onChange?: ((params: {
componentAttributes?: import('../../../types/src/index').AttributeConfig[];
tableJson?: import('../../../types/src/index').TableJson;
value: any;
values: ComponentSchema;
}) => void) | undefined;
rules?: {
[x: string]: any;
trigger?: string | string[] | undefined;
enum?: Array<boolean | null | number | string | undefined> | undefined;
isValidator?: boolean | undefined;
len?: number | undefined;
max?: number | undefined;
message?: ((a?: string) => string) | string | undefined;
min?: number | undefined;
pattern?: (RegExp | string) | undefined;
required?: boolean | undefined;
type?: string | undefined;
validator?: string | undefined;
whitespace?: boolean | undefined;
}[] | undefined;
show?: ((params: {
tableJson?: import('../../../types/src/index').TableJson;
values: ComponentSchema;
}) => boolean) | boolean | undefined;
slotName?: string | undefined;
slots?: {
[slotName: string]: ComponentSchema[];
} | undefined;
status?: {
invalid?: boolean | undefined;
lock?: boolean | undefined;
} | undefined;
type: string;
} | null, ComponentSchema | {
[x: string]: any;
bindable?: boolean | undefined;
children?: /*elided*/ any[] | undefined;
componentProps?: any;
dataSource?: any;
editData?: any;
field?: string | undefined;
id?: string | undefined;
input?: boolean | undefined;
label?: string | undefined;
noFormItem?: boolean | undefined;
on?: {
[eventName: string]: import('../../../utils/src/index').ActionsModel[];
} | undefined;
onChange?: ((params: {
componentAttributes?: import('../../../types/src/index').AttributeConfig[];
tableJson?: import('../../../types/src/index').TableJson;
value: any;
values: ComponentSchema;
}) => void) | undefined;
rules?: {
[x: string]: any;
trigger?: string | string[] | undefined;
enum?: Array<boolean | null | number | string | undefined> | undefined;
isValidator?: boolean | undefined;
len?: number | undefined;
max?: number | undefined;
message?: ((a?: string) => string) | string | undefined;
min?: number | undefined;
pattern?: (RegExp | string) | undefined;
required?: boolean | undefined;
type?: string | undefined;
validator?: string | undefined;
whitespace?: boolean | undefined;
}[] | undefined;
show?: ((params: {
tableJson?: import('../../../types/src/index').TableJson;
values: ComponentSchema;
}) => boolean) | boolean | undefined;
slotName?: string | undefined;
slots?: {
[slotName: string]: ComponentSchema[];
} | undefined;
status?: {
invalid?: boolean | undefined;
lock?: boolean | undefined;
} | undefined;
type: string;
} | null>;
copy: (selectedNode: ComponentSchema | null) => boolean;
cut: (selectedNode: ComponentSchema | null) => boolean;
duplicate: (selectedNodeId: null | string | undefined) => boolean;
paste: (selectedNodeId: null | string | undefined) => boolean;
};