2022-08-27 15:58:36 +02:00
|
|
|
import { IconProp } from '@fortawesome/fontawesome-svg-core';
|
2022-05-03 15:08:28 +02:00
|
|
|
|
2022-08-09 23:50:14 +02:00
|
|
|
export interface IInput {
|
2022-08-27 15:58:36 +02:00
|
|
|
type: 'input';
|
2022-05-03 15:08:28 +02:00
|
|
|
label: string;
|
2022-08-05 15:10:37 +02:00
|
|
|
placeholder?: string;
|
2022-08-09 23:50:14 +02:00
|
|
|
default?: string;
|
2022-05-03 15:08:28 +02:00
|
|
|
password?: boolean;
|
|
|
|
|
icon?: IconProp;
|
2022-10-27 03:17:53 -04:00
|
|
|
disabled?: boolean;
|
2022-10-27 13:45:27 +02:00
|
|
|
description?: string;
|
2023-01-08 11:35:30 +01:00
|
|
|
required?: boolean;
|
2022-05-03 15:08:28 +02:00
|
|
|
}
|
2022-08-09 23:50:14 +02:00
|
|
|
|
|
|
|
|
export interface ICheckbox {
|
2022-08-27 15:58:36 +02:00
|
|
|
type: 'checkbox';
|
2022-08-09 23:50:14 +02:00
|
|
|
label: string;
|
|
|
|
|
checked?: boolean;
|
2022-10-27 03:17:53 -04:00
|
|
|
disabled?: boolean;
|
2022-10-27 13:45:27 +02:00
|
|
|
description?: string;
|
2023-01-08 11:35:30 +01:00
|
|
|
required?: boolean;
|
2022-08-09 23:50:14 +02:00
|
|
|
}
|
|
|
|
|
|
2023-01-08 11:50:44 +01:00
|
|
|
export type OptionValue = { value: string; label?: string };
|
2022-08-09 23:50:14 +02:00
|
|
|
export interface ISelect {
|
2022-08-27 15:58:36 +02:00
|
|
|
type: 'select';
|
2022-08-09 23:50:14 +02:00
|
|
|
label: string;
|
|
|
|
|
default?: string;
|
2023-01-08 11:50:44 +01:00
|
|
|
options: Array<OptionValue>;
|
2022-10-27 03:17:53 -04:00
|
|
|
disabled?: boolean;
|
2022-10-27 13:45:27 +02:00
|
|
|
description?: string;
|
2023-01-08 11:35:30 +01:00
|
|
|
required?: boolean;
|
2023-01-09 14:34:41 +01:00
|
|
|
clearable?: boolean;
|
2023-01-09 14:39:49 +01:00
|
|
|
icon?: IconProp;
|
2022-08-09 23:50:14 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
export interface INumber {
|
2022-08-27 15:58:36 +02:00
|
|
|
type: 'number';
|
2022-08-09 23:50:14 +02:00
|
|
|
label: string;
|
|
|
|
|
placeholder?: string;
|
|
|
|
|
default?: number;
|
2022-09-08 12:00:41 +02:00
|
|
|
icon?: IconProp;
|
2022-08-27 15:58:36 +02:00
|
|
|
min?: number;
|
|
|
|
|
max?: number;
|
2022-10-27 03:17:53 -04:00
|
|
|
disabled?: boolean;
|
2022-10-27 13:45:27 +02:00
|
|
|
description?: string;
|
2023-01-08 11:35:30 +01:00
|
|
|
required?: boolean;
|
2022-08-09 23:50:14 +02:00
|
|
|
}
|
2022-08-10 21:05:27 +02:00
|
|
|
|
|
|
|
|
export interface ISlider {
|
2022-08-27 15:58:36 +02:00
|
|
|
type: 'slider';
|
2022-08-10 21:05:27 +02:00
|
|
|
label: string;
|
|
|
|
|
default?: number;
|
|
|
|
|
min?: number;
|
|
|
|
|
max?: number;
|
|
|
|
|
step?: number;
|
2022-10-27 03:17:53 -04:00
|
|
|
disabled?: boolean;
|
2022-10-27 13:45:27 +02:00
|
|
|
description?: string;
|
2022-08-10 21:05:27 +02:00
|
|
|
}
|
2023-01-08 11:23:50 +01:00
|
|
|
|
|
|
|
|
export interface IColorInput {
|
|
|
|
|
type: 'color';
|
|
|
|
|
label: string;
|
|
|
|
|
default?: string;
|
|
|
|
|
disabled?: boolean;
|
|
|
|
|
description?: string;
|
|
|
|
|
format?: 'hex' | 'hexa' | 'rgb' | 'rgba' | 'hsl' | 'hsla';
|
2023-01-08 11:35:30 +01:00
|
|
|
required?: boolean;
|
2023-01-08 11:23:50 +01:00
|
|
|
}
|
2023-01-13 19:09:07 +01:00
|
|
|
|
|
|
|
|
export interface IDateInput {
|
|
|
|
|
type: 'date';
|
|
|
|
|
label: string;
|
|
|
|
|
default?: string;
|
|
|
|
|
disabled?: boolean;
|
|
|
|
|
description?: string;
|
|
|
|
|
required?: boolean;
|
|
|
|
|
placeholder?: string;
|
2023-01-14 13:36:30 +01:00
|
|
|
clearable?: boolean;
|
|
|
|
|
min?: string;
|
|
|
|
|
max?: string;
|
2023-01-13 19:09:07 +01:00
|
|
|
}
|