snowy-designer
Version:
基于Epic-Designer-Pro版本的设计器,可视化开发页面表单
597 lines (596 loc) • 25 kB
TypeScript
import { ComponentConfigModel, ComponentConfigModelRecords, Components, ComponentSchema, ComponentSchemaGroups, ComponentType, PublicMethodModel, PublicMethodsModel } from '../../../types/src/index';
export declare function usePluginManager(): {
addBaseComponentType: (baseComponentType: string) => void;
addPublicMethod: (publicMethod: PublicMethodModel) => void;
baseComponentTypes: string[];
clearComponentGroupNameMap: () => void;
clearSortedGroups: () => void;
component: (componentType: string, component: ComponentType) => void;
componentConfigs: ComponentConfigModelRecords;
componentGroupNameMap: Record<string, string>;
components: Components;
componentSchemaGroups: import('vue').Ref<{
list: {
[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('epic-pro').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;
}[];
title: string;
}[], ComponentSchemaGroups | {
list: {
[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('epic-pro').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;
}[];
title: string;
}[]>;
dictItems: import('vue').Ref<{
[dictCode: string]: {
label: string;
value: string;
}[];
}, {
[dictCode: string]: {
label: string;
value: string;
}[];
}>;
dictList: import('vue').Ref<{
label: string;
value: string;
}[], {
label: string;
value: string;
}[] | {
label: string;
value: string;
}[]>;
formSchema: ComponentSchema[];
formSchemas: ComponentSchema[];
getActivitybars: import('vue').ComputedRef<import('../../../types/src/index').ActivitybarModel[]>;
getComponent: (type: string) => any;
getComponentConfingByType: (type: string) => ComponentConfigModel;
getComponentConfings: () => ComponentConfigModelRecords;
getComponents: () => Components;
getComponentSchemaGroups: () => import('vue').Ref<{
list: {
[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('epic-pro').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;
}[];
title: string;
}[], ComponentSchemaGroups | {
list: {
[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('epic-pro').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;
}[];
title: string;
}[]>;
getIcon: (type: string) => string;
getLabel: (type: string) => string;
getLocked: (type: string) => boolean | undefined;
getRightSidebars: import('vue').ComputedRef<import('../../../types/src/index').RightSidebarModel[]>;
global: {
[x: string]: any;
};
hiddenComponents: string[];
hideActivitybar: (title: string) => void;
hideComponent: (type: string) => void;
hideRightSidebar: (value: string) => void;
initialized: import('vue').Ref<boolean, boolean>;
loadDictItem: (dictCode: string) => Promise<void>;
loadDictList: () => Promise<void>;
publicMethods: PublicMethodsModel;
registerActivitybar: (activitybar: import('../../../types/src/index').ActivitybarModel) => void;
registerComponent: (componentConfig: ComponentConfigModel) => void;
registerRightSidebar: (rightSidebar: import('../../../types/src/index').RightSidebarModel) => void;
removeBaseComponents: () => void;
removeComponent: (componentType: string) => void;
removeProperty: (key: string) => void;
removePublicMethod: (methodName: string) => void;
request: {
clear: () => void;
execute: (name: string) => Promise<import('../../../hooks/src/index').DataItem[]>;
register: (config: import('../../../hooks/src/index').RequestConfig) => void;
requests: Record<string, import('../../../hooks/src/index').RequestConfig>;
};
setBaseComponentTypes: (baseTypes: string[]) => void;
setComponentGroupNameMap: (groupName: string, mapName: string) => void;
setFetchDictItemsFn: (fn: (dictCode: string) => Promise<{
label: string;
value: string;
}[]>) => void;
setFetchDictListFn: (fn: () => Promise<{
label: string;
value: string;
}[]>) => void;
setFormSchema: (schema: ComponentSchema[]) => void;
setHideComponents: (types: string[]) => void;
setInitialized: (value: boolean) => void;
setProperty: (key: string, value: any) => void;
setSortedGroups: (groups: string[]) => void;
showActivitybar: (title: string) => void;
showComponent: (type: string) => void;
showRightSidebar: (title: string) => void;
sortedGroups: string[];
viewsContainers: import('../../../types/src/index').ViewsContainersModel;
};
export declare const pluginManager: {
addBaseComponentType: (baseComponentType: string) => void;
addPublicMethod: (publicMethod: PublicMethodModel) => void;
baseComponentTypes: string[];
clearComponentGroupNameMap: () => void;
clearSortedGroups: () => void;
component: (componentType: string, component: ComponentType) => void;
componentConfigs: ComponentConfigModelRecords;
componentGroupNameMap: Record<string, string>;
components: Components;
componentSchemaGroups: import('vue').Ref<{
list: {
[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('epic-pro').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;
}[];
title: string;
}[], ComponentSchemaGroups | {
list: {
[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('epic-pro').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;
}[];
title: string;
}[]>;
dictItems: import('vue').Ref<{
[dictCode: string]: {
label: string;
value: string;
}[];
}, {
[dictCode: string]: {
label: string;
value: string;
}[];
}>;
dictList: import('vue').Ref<{
label: string;
value: string;
}[], {
label: string;
value: string;
}[] | {
label: string;
value: string;
}[]>;
formSchema: ComponentSchema[];
formSchemas: ComponentSchema[];
getActivitybars: import('vue').ComputedRef<import('../../../types/src/index').ActivitybarModel[]>;
getComponent: (type: string) => any;
getComponentConfingByType: (type: string) => ComponentConfigModel;
getComponentConfings: () => ComponentConfigModelRecords;
getComponents: () => Components;
getComponentSchemaGroups: () => import('vue').Ref<{
list: {
[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('epic-pro').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;
}[];
title: string;
}[], ComponentSchemaGroups | {
list: {
[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('epic-pro').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;
}[];
title: string;
}[]>;
getIcon: (type: string) => string;
getLabel: (type: string) => string;
getLocked: (type: string) => boolean | undefined;
getRightSidebars: import('vue').ComputedRef<import('../../../types/src/index').RightSidebarModel[]>;
global: {
[x: string]: any;
};
hiddenComponents: string[];
hideActivitybar: (title: string) => void;
hideComponent: (type: string) => void;
hideRightSidebar: (value: string) => void;
initialized: import('vue').Ref<boolean, boolean>;
loadDictItem: (dictCode: string) => Promise<void>;
loadDictList: () => Promise<void>;
publicMethods: PublicMethodsModel;
registerActivitybar: (activitybar: import('../../../types/src/index').ActivitybarModel) => void;
registerComponent: (componentConfig: ComponentConfigModel) => void;
registerRightSidebar: (rightSidebar: import('../../../types/src/index').RightSidebarModel) => void;
removeBaseComponents: () => void;
removeComponent: (componentType: string) => void;
removeProperty: (key: string) => void;
removePublicMethod: (methodName: string) => void;
request: {
clear: () => void;
execute: (name: string) => Promise<import('../../../hooks/src/index').DataItem[]>;
register: (config: import('../../../hooks/src/index').RequestConfig) => void;
requests: Record<string, import('../../../hooks/src/index').RequestConfig>;
};
setBaseComponentTypes: (baseTypes: string[]) => void;
setComponentGroupNameMap: (groupName: string, mapName: string) => void;
setFetchDictItemsFn: (fn: (dictCode: string) => Promise<{
label: string;
value: string;
}[]>) => void;
setFetchDictListFn: (fn: () => Promise<{
label: string;
value: string;
}[]>) => void;
setFormSchema: (schema: ComponentSchema[]) => void;
setHideComponents: (types: string[]) => void;
setInitialized: (value: boolean) => void;
setProperty: (key: string, value: any) => void;
setSortedGroups: (groups: string[]) => void;
showActivitybar: (title: string) => void;
showComponent: (type: string) => void;
showRightSidebar: (title: string) => void;
sortedGroups: string[];
viewsContainers: import('../../../types/src/index').ViewsContainersModel;
};
export type PluginManager = ReturnType<typeof usePluginManager>;