UNPKG

@adaptabletools/adaptable

Version:

Powerful AG Grid extension which provides advanced, cutting-edge functionality to meet all DataGrid requirements

68 lines (67 loc) 2.02 kB
import { AdaptableForm, AdaptableObject } from '../../types'; import { FormContext } from '../AdaptableState/Common/FormContext'; import { DataSetSelectedInfo } from '../Api/Events/DataSetSelected'; /** * Options to provide Data Sets */ export interface DataSetOptions<TData = any> { /** * Collection of Data Sets to provide data to AdapTable * * @defaultValue [] */ dataSets?: DataSet<TData>[]; } /** * Defines a Data Set object that can provide data to AdapTable */ export interface DataSet<TData = any> extends AdaptableObject { /** * Name of Data Set */ name: string; /** * Describes the Data Set */ description: string; /** * Params for Data Set popup form */ form?: AdaptableForm<DataSetFormContext>; /** * Additional info for Data Set */ info?: Record<string, string | number | boolean | Date>; /** * Invoked when this Data Set is selected and it does not define a `form`. * * Use for custom loading logic (e.g. server requests). The `DataSetSelected` * event is still fired for backward compatibility. * * @defaultValue undefined */ onSelect?: (info: DataSetSelectedInfo) => void | Promise<void>; /** * Optional shortcut that loads row data into the Grid when this Data Set is * selected (only when no `form` is defined). Runs before `onSelect`. * * @defaultValue undefined */ loadData?: (info: DataSetSelectedInfo) => TData[] | Promise<TData[]>; /** * Invoked when the user submits the Data Set form (Enter key or form button). * When no form `buttons` are defined, an OK button is added automatically. * * @defaultValue undefined */ onFormSubmit?: (context: DataSetFormContext) => void | Promise<void>; } /** * Used when a DataSet displays a Form */ export interface DataSetFormContext extends FormContext { /** * The DataSet which triggered the Form */ dataSet: DataSet; }