UNPKG

@jaspersoft/jv-tools

Version:
79 lines (78 loc) 2.4 kB
export { default as useVisualize } from '../visualize/hooks/useVisualize'; export type InputControlDataTypeType = string | "date" | "datetime" | "time" | "text" | "number" | undefined; export interface InputControlDataType { type?: InputControlDataTypeType; pattern?: string; maxValue?: string; strictMax?: boolean; minValue?: string; strictMin?: boolean; maxLength?: number; } export interface InputControlValidationRule { dateTimeFormatValidationRule?: { errorMessage: string; format: string; }; mandatoryValidationRule?: { errorMessage: string; }; regexpValidationRule?: { errorMessage: string; inverted: boolean; regexp: string; }; rangeValidationRule?: { errorMessage: string; inverted: boolean; maxValue: number; minValue: number; includeMaxValue: boolean; includeMinValue: boolean; }; } export interface InputControlOption { selected: boolean; label: string; value: string; } export interface InputControlState { id: string; uri: string; value?: string | string[] | boolean; error?: string; totalCount?: string; options?: InputControlOption[]; } export type InputControlType = string | "bool" | "singleValueText" | "singleValueNumber" | "singleValueDate" | "singleValueDatetime" | "singleValueTime" | "singleSelect" | "singleSelectRadio" | "multiSelect" | "multiSelectCheckbox" | undefined; export interface CommonInputControlProperties { id: string; type: InputControlType; label: string; mandatory: boolean; readOnly: boolean; visible: boolean; description?: string; uri?: string; state?: InputControlState; validationRules?: InputControlValidationRule[]; dataType?: InputControlDataType; isLoading?: boolean; masterDependencies?: string[]; slaveDependencies?: string[]; } export interface InputControlProperties extends CommonInputControlProperties { events?: { change: (ic: { [key: string]: CommonInputControlProperties[]; }, validationResult?: { [key: string]: string; } | boolean) => void; }; parameters?: { [key: string]: string[]; }; handleIcChange?: (ctrlUpdated: CommonInputControlProperties, resultValidation?: { [key: string]: string; }) => void; }