2023-10-16 21:09:30 -07:00
|
|
|
export type FormField = {
|
|
|
|
fieldLabel: string;
|
|
|
|
fieldType: string;
|
|
|
|
requiredField: boolean;
|
|
|
|
fieldOptions?: { values: Array<{ option: string }> };
|
|
|
|
multiselect?: boolean;
|
2024-07-29 05:58:03 -07:00
|
|
|
multipleFiles?: boolean;
|
|
|
|
acceptFileTypes?: string;
|
|
|
|
formatDate?: string;
|
|
|
|
placeholder?: string;
|
2023-10-16 21:09:30 -07:00
|
|
|
};
|
|
|
|
|
|
|
|
export type FormTriggerInput = {
|
|
|
|
isSelect?: boolean;
|
|
|
|
isMultiSelect?: boolean;
|
2023-11-01 05:23:28 -07:00
|
|
|
isTextarea?: boolean;
|
2024-07-29 05:58:03 -07:00
|
|
|
isFileInput?: boolean;
|
2023-10-16 21:09:30 -07:00
|
|
|
isInput?: boolean;
|
2024-07-29 05:58:03 -07:00
|
|
|
label: string;
|
|
|
|
defaultValue?: string;
|
2023-10-16 21:09:30 -07:00
|
|
|
id: string;
|
|
|
|
errorId: string;
|
|
|
|
type?: 'text' | 'number' | 'date';
|
|
|
|
inputRequired: 'form-required' | '';
|
|
|
|
selectOptions?: string[];
|
|
|
|
multiSelectOptions?: Array<{ id: string; label: string }>;
|
2024-07-29 05:58:03 -07:00
|
|
|
acceptFileTypes?: string;
|
|
|
|
multipleFiles?: 'multiple' | '';
|
|
|
|
placeholder?: string;
|
2023-10-16 21:09:30 -07:00
|
|
|
};
|
|
|
|
|
|
|
|
export type FormTriggerData = {
|
|
|
|
testRun: boolean;
|
|
|
|
validForm: boolean;
|
|
|
|
formTitle: string;
|
|
|
|
formDescription?: string;
|
|
|
|
formSubmittedText?: string;
|
2023-12-13 07:00:51 -08:00
|
|
|
redirectUrl?: string;
|
2023-10-16 21:09:30 -07:00
|
|
|
n8nWebsiteLink: string;
|
|
|
|
formFields: FormTriggerInput[];
|
2023-12-13 07:00:51 -08:00
|
|
|
useResponseData?: boolean;
|
2024-04-19 01:26:19 -07:00
|
|
|
appendAttribution?: boolean;
|
2023-10-16 21:09:30 -07:00
|
|
|
};
|
2024-07-29 05:58:03 -07:00
|
|
|
|
|
|
|
export const FORM_TRIGGER_AUTHENTICATION_PROPERTY = 'authentication';
|