UNPKG

@velis/dynamicforms

Version:

Data entry boilerplate components and a RESTful API consumer

71 lines 2.91 kB
import FilteredActions from '../actions/filtered-actions'; import type { ActionsNS } from '../actions/namespace'; import FormPayload from '../form/definitions/form-payload'; import FormLayout from '../form/definitions/layout'; import TableColumns from '../table/definitions/columns'; import TableFilterRow from '../table/definitions/filterrow'; import TableRows from '../table/definitions/rows'; import { DfTable } from '../table/namespace'; import { APIConsumer } from './namespace'; type IHandlers = ActionsNS.IHandlers; declare abstract class ConsumerLogicBase implements APIConsumer.ConsumerLogicBaseInterface { pkName: string; protected fields: { [key: string]: DfTable.ColumnJSON; }; protected tableColumns: TableColumns; protected loading: boolean; protected responsiveTableLayouts?: DfTable.ResponsiveTableLayoutsDefinition; protected formFields: { [key: string]: unknown; }; protected formLayout: FormLayout | null; protected formComponent: string; protected errors: { [key: string]: unknown; }; protected actions: FilteredActions; protected ux_def: APIConsumer.TableUXDefinition; protected rows: TableRows; protected formData: FormPayload; protected requestedPKValue: null; protected ordering: { parameter: string; style: string | undefined; counter: number; }; protected filterDefinition: TableFilterRow | null; filterData: Object; protected titles: APIConsumer.Titles; protected dialogHandlers?: IHandlers; protected rowSelect: boolean; protected constructor(); get tableDefinition(): { title: string; pkName: string; columns: TableColumns; responsiveTableLayouts: DfTable.ResponsiveTableLayoutsDefinition | undefined; columnDefs: { [key: string]: DfTable.ColumnJSON; }; rows: TableRows; loading: boolean; actions: FilteredActions; filterDefinition: TableFilterRow | null; rowSelect: boolean; }; get pkValue(): any; setDialogHandlers: (handlers?: IHandlers) => void; /** @virtual */ processUXDefinition(UXDefinition: APIConsumer.TableUXDefinition): void; abstract getFormDefinition(pkValue?: APIConsumer.PKValueType): Promise<APIConsumer.FormDefinition>; get formDefinition(): APIConsumer.FormDefinition; title(which: 'table' | 'new' | 'edit'): string; setOrdering(parameter: string, style: any | null, counter: number): void; filter(filterData?: Object | null): Promise<void>; abstract reload(filter?: boolean): Promise<void>; abstract dialogForm(pk: APIConsumer.PKValueType, formData?: any, refresh?: boolean, return_raw_data?: boolean): Promise<any>; abstract deleteRow(tableRow: FormPayload): Promise<void>; } export default ConsumerLogicBase; //# sourceMappingURL=consumer-logic-base.d.ts.map