{"version":3,"file":"RenderFormField-BOdkJy73-chunk.js","sources":["../../../GSDClient/Scripts/Utils/customFormHandlers.ts","../../../GSDClient/Scripts/Components/Forms/CheckboxField.tsx","../../../GSDClient/Scripts/Components/Forms/HiddenField.tsx","../../../GSDClient/Scripts/Components/Forms/InputField.tsx","../../../GSDClient/Scripts/Components/Forms/SelectField.tsx","../../../GSDClient/Scripts/Components/Forms/TextAreaField.tsx","../../../GSDClient/Scripts/Components/Forms/RenderFormField.tsx"],"sourcesContent":["import { setStateDropDown as setCreateAccountStateDropDown } from 'Scripts/Slices/loginPage';\nimport { setStateDropDown as setFormPageStateDropDown } from 'Scripts/Slices/formPage';\nimport store from 'Scripts/store';\n\ninterface ICustomHandler {\n data: Record;\n target:\n | (EventTarget & HTMLInputElement)\n | (EventTarget & HTMLSelectElement);\n}\n\ninterface IOnChangeCountryData {\n countryValue: string;\n id: string;\n}\n\nconst onChangeCountry = (\n data: IOnChangeCountryData,\n target: ICustomHandler['target']\n) => {\n const { value } = target;\n if (value === data.countryValue) {\n store.dispatch(setFormPageStateDropDown({ value: true, id: data.id }));\n } else {\n store.dispatch(setFormPageStateDropDown({ value: false, id: data.id }));\n }\n};\n\nconst onChangeCountryCreateAccount = (\n data: IOnChangeCountryData,\n target: ICustomHandler['target']\n) => {\n const { value } = target;\n if (value === data.countryValue) {\n store.dispatch(\n setCreateAccountStateDropDown({ value: true, id: data.id })\n );\n } else {\n store.dispatch(\n setCreateAccountStateDropDown({ value: false, id: data.id })\n );\n }\n};\n\n// const onChangeJoinLoyaltyClub = (\n// data: ICustomHandler['data'],\n// target: ICustomHandler['target']\n// ) => {\n// const { checked } = target;\n// store.dispatch(executeSetJoinLoyaltyClub(checked));\n// };\n\nexport const executeFunctionByName = (\n functionName: string,\n data: Record,\n target: (EventTarget & HTMLInputElement) | (EventTarget & HTMLSelectElement)\n) => {\n switch (functionName) {\n case 'onChangeCountry':\n onChangeCountry(data as IOnChangeCountryData, target);\n break;\n case 'onChangeCountryCreateAccount':\n onChangeCountryCreateAccount(data as IOnChangeCountryData, target);\n break;\n // case 'onChangeJoinLoyaltyClub':\n // onChangeJoinLoyaltyClub(data, target);\n // break;\n default:\n break;\n }\n};\n","import { useState } from 'react';\nimport { useSelector } from 'react-redux';\nimport { SerializedError } from '@reduxjs/toolkit';\n\nimport { IFieldValue } from 'Scripts/Slices/loginPage';\nimport { IRootState } from 'Scripts/store';\nimport { ICheckboxModel } from 'Scripts/Types/Litium';\n\nimport { useLazyGetModalContentQuery } from 'Services/formPageApi';\n\nimport Markup from 'Components/Markup';\nimport Modal from 'Components/Modal';\n\nimport CheckBoxIcon from 'Icons/checkbox.svg?url';\n\ninterface CheckboxFieldProps {\n field: ICheckboxModel;\n handleInputChange: (data: IFieldValue) => void;\n renderAsHtml?: boolean;\n loading?: boolean;\n executeFunctionByName: (\n functionName: string,\n data: Record,\n event: EventTarget & HTMLInputElement\n ) => void;\n}\n\nconst CheckboxField = ({\n field,\n handleInputChange,\n loading,\n executeFunctionByName,\n renderAsHtml = false,\n}: CheckboxFieldProps) => {\n const closeButtonLabel = useSelector(\n (state: IRootState) => state.formPage?.closeAgreementsButtonLabel\n );\n const {\n disabled,\n required,\n checked,\n name,\n placeHolder,\n value,\n handlers,\n label,\n } = field;\n\n const [\n getModalContent,\n {\n isLoading: modalContentIsLoading,\n data: modalContentData,\n isError: modalContentIsError,\n error: modalContentError,\n },\n ] = useLazyGetModalContentQuery();\n\n const [isOpenTermsAndConditionModal, setIsOpenTermsAndConditionModal] =\n useState(false);\n\n const handleOnClick = (e: React.MouseEvent) => {\n if (e.target instanceof HTMLAnchorElement) {\n e.preventDefault();\n const { href } = e.target;\n const pageId = href.split(':').pop();\n getModalContent(pageId);\n setIsOpenTermsAndConditionModal(true);\n }\n };\n\n const getErrorMsg = () => {\n if ('status' in modalContentError) {\n const { message } = modalContentError.data as SerializedError;\n return message;\n }\n return modalContentError.message;\n };\n\n return (\n
\n {\n if (handlers?.onChange) {\n const { functionName, data } = handlers.onChange;\n executeFunctionByName(functionName, data, event.target);\n }\n return handleInputChange({\n value: event.target.checked ? 'true' : 'false',\n type: event.target.type,\n name,\n });\n }}\n />\n \n {renderAsHtml ? (\n <>\n \n \n setIsOpenTermsAndConditionModal(false)\n }\n isOpened={isOpenTermsAndConditionModal}\n ariaCloseButtonTranslation={closeButtonLabel}\n backButtonTranslation={closeButtonLabel}\n >\n \n \n \n ) : (\n
\n

\n \n {label}\n \n

\n
\n )}\n {required && *}\n \n
\n );\n};\n\nexport default CheckboxField;\n","import { InputModel } from 'Components/Forms/RenderFormField';\n\ninterface InputFieldProps {\n field: InputModel;\n}\n\nconst HiddenField = ({ field }: InputFieldProps) => {\n const { type, value, name } = field;\n return (\n \n );\n};\nexport default HiddenField;\n","import { IFieldValue } from 'Scripts/Slices/loginPage';\n\nimport { ITextModel } from 'Types/Litium';\nimport { IInputValidation } from 'Components/Forms/RenderFormField';\n\ninterface InputFieldProps {\n field: ITextModel;\n handleInputChange: (data: IFieldValue) => void;\n error: IInputValidation;\n loading?: boolean;\n cssStyles?: string;\n}\n\nconst InputField = ({\n field,\n handleInputChange,\n error,\n loading = false,\n cssStyles,\n}: InputFieldProps) => {\n const hasError =\n error &&\n 'isValid' in error &&\n (!error?.isValid || !error?.isRequiredCriteriaMet);\n\n const {\n type,\n value,\n name,\n autocomplete,\n maxLength,\n required,\n disabled,\n label,\n validationMessage,\n } = field;\n\n return (\n \n \n handleInputChange({\n value: event.target.value,\n type,\n name,\n })\n }\n placeholder={label}\n autoComplete={\n autocomplete.length > 0 ? autocomplete : undefined\n }\n maxLength={maxLength ? +maxLength : null}\n required={required || undefined}\n readOnly={disabled || loading}\n name={name}\n id={name}\n />\n\n \n {label}\n {required && *}\n \n {error &&\n 'isValid' in error &&\n (!error?.isValid || !error?.isRequiredCriteriaMet) && (\n \n {validationMessage}\n \n )}\n \n );\n};\nexport default InputField;\n","import { ISelectModel } from 'Types/Litium';\nimport { IFieldValue } from 'Scripts/Slices/loginPage';\nimport { IInputValidation } from 'Components/Forms/RenderFormField';\nimport ArrowIcon from 'Icons/caretGsd.svg?react';\n\ninterface SelectFieldProps {\n field: ISelectModel;\n handleInputChange: (data: IFieldValue) => void;\n error: IInputValidation;\n loading?: boolean;\n executeFunctionByName: (\n functionName: string,\n data: Record,\n event: EventTarget & HTMLSelectElement\n ) => void;\n}\n\nconst SelectField = ({\n field,\n handleInputChange,\n error,\n loading,\n executeFunctionByName,\n}: SelectFieldProps) => {\n const {\n name,\n label,\n placeHolder,\n handlers,\n options,\n type,\n validationRequiredMessage,\n disabled,\n required,\n } = field;\n\n const selectedOption = options.find(option => option.selected === true);\n\n const hasError =\n error &&\n 'isValid' in error &&\n (!error?.isValid || !error?.isRequiredCriteriaMet);\n\n return (\n
\n \n {error &&\n 'isValid' in error &&\n (!error?.isValid || !error?.isRequiredCriteriaMet) && (\n \n {validationRequiredMessage}\n \n )}\n
\n );\n};\n\nexport default SelectField;\n","import { IFieldValue } from 'Scripts/Slices/loginPage';\n\nimport { ITextAreaModel } from 'Types/Litium';\nimport { IInputValidation } from 'Components/Forms/RenderFormField';\n\ninterface TextAreaFieldProps {\n field: ITextAreaModel;\n handleInputChange: (data: IFieldValue) => void;\n error: IInputValidation;\n loading?: boolean;\n cssStyles?: string;\n}\n\nconst TextAreaField = ({\n field,\n handleInputChange,\n error,\n loading = false,\n cssStyles,\n}: TextAreaFieldProps) => {\n const hasError =\n error &&\n 'isValid' in error &&\n (!error?.isValid || !error?.isRequiredCriteriaMet);\n\n const {\n type,\n value,\n name,\n autocomplete,\n maxLength,\n required,\n disabled,\n label,\n validationMessage,\n } = field;\n\n return (\n \n \n {label}\n {required && *}\n \n\n \n handleInputChange({\n value: event.target.value,\n type,\n name,\n })\n }\n placeholder={label}\n autoComplete={\n autocomplete.length > 0 ? autocomplete : undefined\n }\n maxLength={maxLength ? +maxLength : null}\n required={required || undefined}\n readOnly={disabled || loading}\n name={name}\n id={name}\n />\n\n {error &&\n 'isValid' in error &&\n (!error?.isValid || !error?.isRequiredCriteriaMet) && (\n \n {validationMessage}\n \n )}\n \n );\n};\nexport default TextAreaField;\n","import toast from 'react-hot-toast';\nimport { SerializedError } from '@reduxjs/toolkit';\nimport { FetchBaseQueryError } from '@reduxjs/toolkit/query/react';\n\nimport { IFieldValue } from 'Scripts/Slices/loginPage';\n\nimport { executeFunctionByName } from 'Utils/customFormHandlers';\n\nimport {\n ICheckboxModel,\n IRadioModel,\n ISelectModel,\n ITextAreaModel,\n ITextModel,\n} from 'Types/Litium';\nimport CheckboxField from 'Components/Forms/CheckboxField';\nimport HiddenField from 'Components/Forms/HiddenField';\nimport InputField from 'Components/Forms/InputField';\nimport SelectField from 'Components/Forms/SelectField';\nimport TextAreaField from 'Components/Forms/TextAreaField';\n\nexport interface ValidationSchemaItem {\n isRequiredCriteriaMet: boolean;\n isValid: boolean;\n isVisible: boolean;\n name: string;\n}\n\nexport type ValidationSchema = Array | undefined;\n\nexport type InputModel =\n | ITextModel\n | ITextAreaModel\n | ICheckboxModel\n | IRadioModel\n | ISelectModel;\n\nexport type InputModelArray = (\n | ITextModel\n | ITextAreaModel\n | ICheckboxModel\n | IRadioModel\n | ISelectModel\n)[];\n\nconst isTextModel = (field: InputModel): field is ITextModel =>\n field.type === 'text' && 'validation' in field;\n\nconst isTextAreaModel = (field: InputModel): field is ITextAreaModel =>\n field.type === 'textarea' && 'isToggled' in field;\n\nconst isCheckboxModel = (field: InputModel): field is ICheckboxModel =>\n field.type === 'checkbox' && 'checked' in field;\n\nconst isRadioModel = (field: InputModel): field is IRadioModel =>\n field.type === 'radio' && 'checked' in field;\n\nexport const isSelectModel = (field: InputModel): field is ISelectModel =>\n field.type === 'select' && 'options' in field;\n\nexport const validateFormFields = (\n fields: InputModelArray,\n setValidationObject?: React.Dispatch<\n React.SetStateAction\n >\n) => {\n if (setValidationObject) setValidationObject([]);\n const validationSchema: ValidationSchema = fields.map(field => {\n const hasDepandancy = field.isDependentOn.length > 0;\n const isDependentOnChecked = Boolean(\n field.isDependentOn.length &&\n fields.some(\n f =>\n f.name === field.isDependentOn &&\n isCheckboxModel(f) &&\n f.checked\n )\n );\n\n const isVisible =\n (hasDepandancy &&\n isDependentOnChecked &&\n ((isSelectModel(field) && field.visible) ||\n !isSelectModel(field))) ||\n (!hasDepandancy &&\n ((isSelectModel(field) && field.visible) ||\n !isSelectModel(field)));\n\n const hasValue = () => {\n if (field.required) {\n if (isSelectModel(field)) {\n return (\n field.value !== '' ||\n field.value !== undefined ||\n field.value === null\n );\n }\n if (isCheckboxModel(field)) {\n return field.checked;\n }\n return field.value?.length > 0;\n }\n return true;\n };\n const regx = new RegExp(\n isTextModel(field) || isTextAreaModel(field)\n ? field.validation\n : '^.*$'\n );\n const valid = regx.test(field.value);\n return {\n isRequiredCriteriaMet: hasValue(),\n isValid: field.value?.length > 0 ? valid : true,\n isVisible,\n name: field.name,\n };\n });\n\n if (\n validationSchema.some(\n a => a.isVisible && (!a.isRequiredCriteriaMet || !a.isValid)\n )\n ) {\n if (setValidationObject) setValidationObject(validationSchema);\n return false;\n }\n return true;\n};\n\ninterface FormResultData {\n [key: string]: any;\n redirectUrl?: string;\n}\n\ninterface ErrorObject {\n [key: string]: unknown;\n errors: {\n [key: string]: string;\n };\n}\n\nexport const handleFormPost = (\n data: FormResultData,\n error: FetchBaseQueryError | SerializedError\n) => {\n if (error && 'data' in error) {\n const errorObject = error?.data as ErrorObject;\n if (errorObject?.errors) {\n Object.values(errorObject.errors)\n .flat()\n .forEach((message: string) => toast.error(message));\n } else if (errorObject) {\n Object.values(errorObject)\n .flat()\n .forEach((message: string) => toast.error(message));\n } else {\n toast.error(`Something went wrong: ${error.status}`);\n console.info(error);\n }\n }\n if (data && 'redirectUrl' in data) {\n window.location.href = data.redirectUrl;\n }\n};\n\nexport interface IInputValidation {\n isRequiredCriteriaMet: boolean;\n isValid: boolean;\n isVisible: boolean;\n name: string;\n}\n\nconst WrapperTag = ({\n as: Tag,\n children,\n className = '',\n}: {\n as?: React.ElementType;\n children: React.ReactElement;\n className?: string;\n}) => (Tag ? {children} : children);\n\nconst RenderFormField = ({\n field,\n form,\n validation,\n loading = false,\n handleInputChange,\n cssStyles,\n as,\n}: {\n field: InputModel;\n loading?: boolean;\n form: InputModel[];\n validation: ValidationSchema;\n handleInputChange: (data: IFieldValue) => void;\n cssStyles?: string;\n as?: React.ElementType;\n}) => {\n if (\n field.isDependentOn.length &&\n form.some(\n f =>\n f.name === field.isDependentOn &&\n isCheckboxModel(f) &&\n f.checked\n )\n ) {\n return;\n }\n\n const error = validation.find(element => element.name === field.name);\n switch (field.type) {\n case 'number':\n case 'text':\n case 'email':\n case 'password':\n return (\n \n \n \n );\n case 'textarea':\n return (\n \n \n \n );\n case 'hidden':\n return (\n \n \n \n );\n case 'checkbox':\n case 'htmlCheckbox':\n case 'htmlModalCheckbox':\n return (\n \n \n \n );\n case 'select':\n return (\n isSelectModel(field) &&\n field.visible && (\n \n \n \n )\n );\n default:\n return null;\n }\n};\n\nexport default RenderFormField;\n"],"names":["onChangeCountry","data","target","value","store","setFormPageStateDropDown","onChangeCountryCreateAccount","setCreateAccountStateDropDown","executeFunctionByName","functionName","CheckboxField","field","handleInputChange","loading","renderAsHtml","closeButtonLabel","useSelector","state","_a","disabled","required","checked","name","placeHolder","handlers","label","getModalContent","modalContentIsLoading","modalContentData","modalContentIsError","modalContentError","useLazyGetModalContentQuery","isOpenTermsAndConditionModal","setIsOpenTermsAndConditionModal","useState","handleOnClick","e","href","pageId","getErrorMsg","message","jsxs","jsx","event","CheckBoxIcon","Fragment","Markup","Modal","HiddenField","type","InputField","error","cssStyles","hasError","autocomplete","maxLength","validationMessage","SelectField","options","validationRequiredMessage","selectedOption","option","index","ArrowIcon","TextAreaField","isTextModel","isTextAreaModel","isCheckboxModel","isSelectModel","validateFormFields","fields","setValidationObject","validationSchema","hasDepandancy","isDependentOnChecked","f","isVisible","hasValue","valid","a","handleFormPost","errorObject","toast","WrapperTag","Tag","children","className","RenderFormField","form","validation","as","element"],"mappings":"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"}