UNPKG

amis-model-design

Version:

amis模型设计器

113 lines (112 loc) 2.95 kB
/** * 这个是给模型组件用的 */ import { FieldItem } from '../type'; import { ApiBuilder } from './ApiBuilder'; import { FormSchemaBuilder } from './Form'; import { BaseSchemaBuilder } from './SchemaBuilder'; type ConditionField = any; export interface TableListBuildOptions { /** * 开启哪些功能 */ features: Array<string>; /** * 列表字段信息 */ schemaFields: Array<{ data: any; enabled: boolean; }>; /** * 简单搜索字段 */ simpleFilters?: Array<{ data: any; enabled: boolean; }>; /** * 是否开启模糊搜索 */ keywordsFilter?: boolean; keywordsFilters?: Array<{ field: FieldItem; enabled: boolean; }>; advancedFilter?: boolean; advancedFilters?: Array<{ field: ConditionField; enabled: boolean; }>; /** * 新增字段信息,这个可能并不会存储。 */ createSchemaFields?: Array<{ data: any; enabled: boolean; }>; /** * 更新字段信息,这个可能并不会存储 */ updateSchemaFields?: Array<{ data: any; enabled: boolean; }>; /** * 更新字段信息,这个可能并不会存储 */ bulkUpdateSchemaFields?: Array<{ data: any; enabled: boolean; }>; /** * 详情字段信息,这个可能也不会存储 */ viewSchemaFields?: Array<{ data: any; enabled: boolean; }>; /** * 预设条件 */ presetConditions?: any; dsId: string; dsKey: string; id: string; key: string; name: string; dsName: string; schema?: any; req?: Request; } export declare class TableListSchemaBuilder extends BaseSchemaBuilder { static id: string; readonly formBuilder: FormSchemaBuilder; setTraceMode(value: boolean): void; makeDefaultOptions(): Promise<TableListBuildOptions>; /** * 从 schema 中反推用了哪些功能 */ guessOptionsFromSchema(schema: any): Promise<TableListBuildOptions>; protected buildColumn(field: FieldItem, options: any, ab?: ApiBuilder): Promise<import("amis-core").Schema | undefined>; extractFieldsAndActions(schema: any): { fields: any[]; actions: any[]; }; build(options?: TableListBuildOptions, originSchema?: any): Promise<any>; /** * 生成表单结构 * * @returns 返回生成的表单结构 */ genScaffoldForm(): Promise<any[]>; /** * 生成面板表单 * * @returns 返回面板表单数组 */ genPanelForm(): Promise<any[]>; genFieldPanelForm(options: TableListBuildOptions, field: FieldItem, region: string): Promise<any>; buildFieldSchema(options: TableListBuildOptions, field: FieldItem, fieldOptions: any, region: string): Promise<import("amis-core").Schema | undefined>; } export {};