@revolist/revogrid-column-select
Version:
Select column type for RevoGrid system based on revo-dropdown
33 lines (32 loc) • 890 B
TypeScript
import { ColumnDataSchemaModel, ColumnRegular } from '@revolist/revogrid';
export type SelectOption = string | {
[label: string]: any;
};
export type SelectSourceContext = ColumnDataSchemaModel & {
additionalData?: any;
};
export type SelectSource = SelectOption[] | ((context: SelectSourceContext) => SelectOption[]);
export interface SelectConfig extends ColumnDataSchemaModel {
column: ColumnRegular & {
source?: SelectSource;
sourceLookup?: Record<string, any>;
labelKey?: string;
valueKey?: string;
};
}
type SelectOriginalEvent = Event & {
code?: string;
};
type ObjectChange = {
val: {
label: string;
value: any;
};
originalEvent?: SelectOriginalEvent;
};
type ArrayChange = {
val: string;
originalEvent?: SelectOriginalEvent;
};
export type ChangeValue = ObjectChange | ArrayChange;
export {};