ai-form-designer
Version:
vue3+adv的设计器,可视化开发页面表单
277 lines (276 loc) • 15.6 kB
TypeScript
import { ComponentSchema, PageSchema } from '../../../types/ai-form-designer';
import { DesignerProps } from './types';
/**
* 接受一个PageSchema对象作为参数。根据传入的schemas和script属性,更新页面对应的数据
* @param pageSchema
*/
declare function setData(schema: PageSchema): void;
/**
* 返回当前页面数据的 PageSchema 对象,包含页面当前的 schemas 和 script 数据。
*/
declare function getData(): PageSchema;
/**
* 重置页面数据为默认数据。
*/
declare function reset(): void;
/**
* 预览
*/
declare function handlePreview(): void;
declare function __VLS_template(): {
attrs: Partial<{}>;
slots: {
header?(_: {}): any;
'header-prefix'?(_: {}): any;
'header-prefix'?(_: {}): any;
'header-title'?(_: {}): any;
'header-right-prefix'?(_: {}): any;
'header-right-action'?(_: {}): any;
'header-right-suffix'?(_: {}): any;
};
refs: {
previewRef: import('vue').CreateComponentPublicInstanceWithMixins<Readonly<{
hideConfirm?: boolean;
}> & Readonly<{}>, {
handleOpen: () => void;
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, import('vue').PublicProps, {}, false, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {
kb: import('vue').CreateComponentPublicInstanceWithMixins<Readonly<{
pageSchema: PageSchema;
formData?: import('../../../types/ai-form-designer').FormDataModel;
disabled?: boolean;
}> & Readonly<{
onReady?: ((...args: unknown[] & []) => any) | undefined;
}>, {
ready: import('vue').Ref<boolean, boolean>;
pageManager: {
componentInstances: import('vue').Ref<Record<string, import('vue').ComponentPublicInstance>, Record<string, import('vue').ComponentPublicInstance>>;
funcs: import('vue').Ref<Record<string, any>, Record<string, any>>;
isDesignMode: import('vue').Ref<boolean, boolean>;
defaultComponentIds: import('vue').Ref<string[], string[]>;
forms: {};
addFormData: (formData: Record<string, any>, formName?: string) => void;
setFormData: (formData: Record<string, any>, formName?: string) => void;
getComponentInstance: (id: string) => import('vue').ComponentPublicInstance;
find: (id: string) => import('vue').ComponentPublicInstance;
addComponentInstance: (id: string, instance: import('vue').ComponentPublicInstance) => void;
removeComponentInstance: (id: string) => void;
setMethods: (scriptStr: string, outputError?: boolean) => void;
doActions: (actions: import('../../../../utils').ActionsModel[], ...args: any) => void;
setDesignMode: (isDesign?: boolean) => void;
setDefaultComponentIds: (schemas: ComponentSchema[]) => void;
};
getData: (formName?: string) => Promise<import('../../../types/ai-form-designer').FormDataModel>;
setData: (data: import('../../../types/ai-form-designer').FormDataModel, formName?: string) => void;
validate: (formName?: string) => Promise<import('../../../types/ai-form-designer').FormDataModel>;
getForms: () => Promise<Record<string, import('../../../types/ai-form-designer').FormDataModel>>;
setForms: (data: Record<string, import('../../../types/ai-form-designer').FormDataModel>) => void;
validateAll: () => Promise<Record<string, import('../../../types/ai-form-designer').FormDataModel>>;
getFormInstance: (formName?: string) => Promise<any>;
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
ready: ((...args: unknown[]) => any) | (() => any);
}, import('vue').PublicProps, {}, false, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {}, any, import('vue').ComponentProvideOptions, {
P: {};
B: {};
D: {};
C: {};
M: {};
Defaults: {};
}, Readonly<{
pageSchema: PageSchema;
formData?: import('../../../types/ai-form-designer').FormDataModel;
disabled?: boolean;
}> & Readonly<{
onReady?: ((...args: unknown[] & []) => any) | undefined;
}>, {
ready: import('vue').Ref<boolean, boolean>;
pageManager: {
componentInstances: import('vue').Ref<Record<string, import('vue').ComponentPublicInstance>, Record<string, import('vue').ComponentPublicInstance>>;
funcs: import('vue').Ref<Record<string, any>, Record<string, any>>;
isDesignMode: import('vue').Ref<boolean, boolean>;
defaultComponentIds: import('vue').Ref<string[], string[]>;
forms: {};
addFormData: (formData: Record<string, any>, formName?: string) => void;
setFormData: (formData: Record<string, any>, formName?: string) => void;
getComponentInstance: (id: string) => import('vue').ComponentPublicInstance;
find: (id: string) => import('vue').ComponentPublicInstance;
addComponentInstance: (id: string, instance: import('vue').ComponentPublicInstance) => void;
removeComponentInstance: (id: string) => void;
setMethods: (scriptStr: string, outputError?: boolean) => void;
doActions: (actions: import('../../../../utils').ActionsModel[], ...args: any) => void;
setDesignMode: (isDesign?: boolean) => void;
setDefaultComponentIds: (schemas: ComponentSchema[]) => void;
};
getData: (formName?: string) => Promise<import('../../../types/ai-form-designer').FormDataModel>;
setData: (data: import('../../../types/ai-form-designer').FormDataModel, formName?: string) => void;
validate: (formName?: string) => Promise<import('../../../types/ai-form-designer').FormDataModel>;
getForms: () => Promise<Record<string, import('../../../types/ai-form-designer').FormDataModel>>;
setForms: (data: Record<string, import('../../../types/ai-form-designer').FormDataModel>) => void;
validateAll: () => Promise<Record<string, import('../../../types/ai-form-designer').FormDataModel>>;
getFormInstance: (formName?: string) => Promise<any>;
}, {}, {}, {}, {}> | null;
monacoEditorRef: unknown;
}, any, import('vue').ComponentProvideOptions, {
P: {};
B: {};
D: {};
C: {};
M: {};
Defaults: {};
}, Readonly<{
hideConfirm?: boolean;
}> & Readonly<{}>, {
handleOpen: () => void;
}, {}, {}, {}, {}> | null;
};
rootEl: any;
};
type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
declare const __VLS_component: import('vue').DefineComponent<DesignerProps, {
revoke: {
recordList: import('vue').Ref<{
type: string;
componentSchema: string;
}[], import('../../../../utils').RecordModel[] | {
type: string;
componentSchema: string;
}[]>;
undoList: import('vue').Ref<{
type: string;
componentSchema: string;
}[], import('../../../../utils').RecordModel[] | {
type: string;
componentSchema: string;
}[]>;
currentRecord: import('vue').Ref<{
type: string;
componentSchema: string;
} | null, import('../../../../utils').RecordModel | {
type: string;
componentSchema: string;
} | null>;
push: (componentSchema: ComponentSchema[], type?: string) => void;
undo: () => import('../../../../utils').RecordModel | false;
redo: () => import('../../../../utils').RecordModel | false;
reset: () => void;
};
setData: typeof setData;
getData: typeof getData;
reset: typeof reset;
preview: typeof handlePreview;
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
reset: (...args: any[]) => void;
ready: (...args: any[]) => void;
save: (...args: any[]) => void;
toggleDeviceMode: (...args: any[]) => void;
}, string, import('vue').PublicProps, Readonly<DesignerProps> & Readonly<{
onReset?: ((...args: any[]) => any) | undefined;
onReady?: ((...args: any[]) => any) | undefined;
onSave?: ((...args: any[]) => any) | undefined;
onToggleDeviceMode?: ((...args: any[]) => any) | undefined;
}>, {
title: string;
disabledZoom: boolean;
hiddenHeader: boolean;
lockDefaultSchemaEdit: boolean;
formMode: boolean;
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {
previewRef: import('vue').CreateComponentPublicInstanceWithMixins<Readonly<{
hideConfirm?: boolean;
}> & Readonly<{}>, {
handleOpen: () => void;
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, import('vue').PublicProps, {}, false, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {
kb: import('vue').CreateComponentPublicInstanceWithMixins<Readonly<{
pageSchema: PageSchema;
formData?: import('../../../types/ai-form-designer').FormDataModel;
disabled?: boolean;
}> & Readonly<{
onReady?: ((...args: unknown[] & []) => any) | undefined;
}>, {
ready: import('vue').Ref<boolean, boolean>;
pageManager: {
componentInstances: import('vue').Ref<Record<string, import('vue').ComponentPublicInstance>, Record<string, import('vue').ComponentPublicInstance>>;
funcs: import('vue').Ref<Record<string, any>, Record<string, any>>;
isDesignMode: import('vue').Ref<boolean, boolean>;
defaultComponentIds: import('vue').Ref<string[], string[]>;
forms: {};
addFormData: (formData: Record<string, any>, formName?: string) => void;
setFormData: (formData: Record<string, any>, formName?: string) => void;
getComponentInstance: (id: string) => import('vue').ComponentPublicInstance;
find: (id: string) => import('vue').ComponentPublicInstance;
addComponentInstance: (id: string, instance: import('vue').ComponentPublicInstance) => void;
removeComponentInstance: (id: string) => void;
setMethods: (scriptStr: string, outputError?: boolean) => void;
doActions: (actions: import('../../../../utils').ActionsModel[], ...args: any) => void;
setDesignMode: (isDesign?: boolean) => void;
setDefaultComponentIds: (schemas: ComponentSchema[]) => void;
};
getData: (formName?: string) => Promise<import('../../../types/ai-form-designer').FormDataModel>;
setData: (data: import('../../../types/ai-form-designer').FormDataModel, formName?: string) => void;
validate: (formName?: string) => Promise<import('../../../types/ai-form-designer').FormDataModel>;
getForms: () => Promise<Record<string, import('../../../types/ai-form-designer').FormDataModel>>;
setForms: (data: Record<string, import('../../../types/ai-form-designer').FormDataModel>) => void;
validateAll: () => Promise<Record<string, import('../../../types/ai-form-designer').FormDataModel>>;
getFormInstance: (formName?: string) => Promise<any>;
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
ready: ((...args: unknown[]) => any) | (() => any);
}, import('vue').PublicProps, {}, false, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {}, any, import('vue').ComponentProvideOptions, {
P: {};
B: {};
D: {};
C: {};
M: {};
Defaults: {};
}, Readonly<{
pageSchema: PageSchema;
formData?: import('../../../types/ai-form-designer').FormDataModel;
disabled?: boolean;
}> & Readonly<{
onReady?: ((...args: unknown[] & []) => any) | undefined;
}>, {
ready: import('vue').Ref<boolean, boolean>;
pageManager: {
componentInstances: import('vue').Ref<Record<string, import('vue').ComponentPublicInstance>, Record<string, import('vue').ComponentPublicInstance>>;
funcs: import('vue').Ref<Record<string, any>, Record<string, any>>;
isDesignMode: import('vue').Ref<boolean, boolean>;
defaultComponentIds: import('vue').Ref<string[], string[]>;
forms: {};
addFormData: (formData: Record<string, any>, formName?: string) => void;
setFormData: (formData: Record<string, any>, formName?: string) => void;
getComponentInstance: (id: string) => import('vue').ComponentPublicInstance;
find: (id: string) => import('vue').ComponentPublicInstance;
addComponentInstance: (id: string, instance: import('vue').ComponentPublicInstance) => void;
removeComponentInstance: (id: string) => void;
setMethods: (scriptStr: string, outputError?: boolean) => void;
doActions: (actions: import('../../../../utils').ActionsModel[], ...args: any) => void;
setDesignMode: (isDesign?: boolean) => void;
setDefaultComponentIds: (schemas: ComponentSchema[]) => void;
};
getData: (formName?: string) => Promise<import('../../../types/ai-form-designer').FormDataModel>;
setData: (data: import('../../../types/ai-form-designer').FormDataModel, formName?: string) => void;
validate: (formName?: string) => Promise<import('../../../types/ai-form-designer').FormDataModel>;
getForms: () => Promise<Record<string, import('../../../types/ai-form-designer').FormDataModel>>;
setForms: (data: Record<string, import('../../../types/ai-form-designer').FormDataModel>) => void;
validateAll: () => Promise<Record<string, import('../../../types/ai-form-designer').FormDataModel>>;
getFormInstance: (formName?: string) => Promise<any>;
}, {}, {}, {}, {}> | null;
monacoEditorRef: unknown;
}, any, import('vue').ComponentProvideOptions, {
P: {};
B: {};
D: {};
C: {};
M: {};
Defaults: {};
}, Readonly<{
hideConfirm?: boolean;
}> & Readonly<{}>, {
handleOpen: () => void;
}, {}, {}, {}, {}> | null;
}, any>;
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
export default _default;
type __VLS_WithTemplateSlots<T, S> = T & {
new (): {
$slots: S;
};
};