df-ae-forms-package
Version:
A comprehensive React form preview component library with form controls, validation, and responsive design for Angular/Ionic integration
75 lines • 2.39 kB
TypeScript
import { FormComponentType, IConditionalLogic, ICondition } from '../df-form-controls/df-form-preview-interfaces';
export type { FormComponentType, IConditionalLogic, ICondition };
export type TComponentCategory = 'Basic' | 'Advanced' | 'Layout' | 'Custom';
export type TBasicComponentName = 'text-input' | 'number-input' | 'email-input' | 'textarea' | 'select' | 'checkbox' | 'radio' | 'segment' | 'date-picker' | 'datetime-picker' | 'info' | 'signature' | 'heading' | 'instructions' | 'section' | 'table' | 'datagrid' | 'file' | 'location';
export type TComponentName = TBasicComponentName;
export declare enum ELabelAlignment {
Top = "top",
Left = "left"
}
export interface IOption {
label: string;
value: string;
selected?: boolean;
enableNotes?: boolean;
enableAttachment?: boolean;
enableRaiseIssue?: boolean;
enableSendEmail?: boolean;
color?: string;
backgroundColor?: string;
icon?: string;
}
export type TCheckboxValue = string | string[];
export interface IBaseProps {
label: string;
value: string;
defaultValue: string | number;
placeholder?: string;
options?: any[];
description?: string;
collapsed?: boolean;
valid?: boolean;
enableNotes?: boolean;
enableAttachment?: boolean;
enableRaiseIssue?: boolean;
enableSendEmail?: boolean;
}
export interface IBaseValidationProps {
required: boolean;
customValidationMessage: string;
readonly: boolean;
}
export interface IBaseStyleProps {
labelAlignment: ELabelAlignment;
width?: number;
height?: number;
minWidth?: number;
maxWidth?: number;
minHeight?: number;
maxHeight?: number;
column?: number;
backgroundColor?: string;
borderColor?: string;
borderWidth?: string;
borderRadius?: string;
padding?: string;
margin?: string;
}
export type TInputComponentType = 'text' | 'number' | 'email';
export interface IBaseInputComponent {
inputType: TInputComponentType;
}
export interface IBaseComponent {
id: string;
_id: string;
name: TComponentName;
category: TComponentCategory;
basic: IBaseProps;
validation: IBaseValidationProps;
styles: IBaseStyleProps;
position: number;
options: any[];
conditional: IConditionalLogic;
}
export type TFormComponent = FormComponentType;
//# sourceMappingURL=form-builder-schema.model.d.ts.map