fix: promo code modal allowing white spaces

This commit is contained in:
Rafael Taranto 2025-02-21 12:20:09 +00:00
parent 48eb658c20
commit e57b40776c

View file

@ -21,7 +21,7 @@ const initialValues = {
} }
const validationSchema = Yup.object().shape({ const validationSchema = Yup.object().shape({
code: Yup.string().required().trim().max(25), code: Yup.string().required().trim().max(25).matches(/^\S*$/, 'No whitespace allowed'),
discount: Yup.number().required().min(0).max(100) discount: Yup.number().required().min(0).max(100)
}) })
@ -50,10 +50,11 @@ const PromoCodesModal = ({ showModal, onClose, errorMsg, addCode }) => {
onSubmit={({ code, discount }) => { onSubmit={({ code, discount }) => {
handleAddCode(code, discount) handleAddCode(code, discount)
}}> }}>
<Form id="promo-form" className={classes.form}> {({ errors }) => (
<H3 className={classes.modalLabel1}>Promo code name</H3> <Form id="promo-form" className={classes.form}>
<Field <H3 className={classes.modalLabel1}>Promo code name</H3>
name="code" <Field
name="code"
autoFocus autoFocus
size="lg" size="lg"
autoComplete="off" autoComplete="off"
@ -91,15 +92,20 @@ const PromoCodesModal = ({ showModal, onClose, errorMsg, addCode }) => {
</TL1> </TL1>
</div> </div>
<div className={classes.footer}> <div className={classes.footer}>
{errorMsg && <ErrorMessage>{errorMsg}</ErrorMessage>} {(errorMsg || !R.isEmpty(errors)) && (
<ErrorMessage>
{errorMsg || R.head(R.values(errors))}
</ErrorMessage>
)}
<Button <Button
type="submit" type="submit"
form="promo-form" form="promo-form"
className={classes.submit}> className={classes.submit}>
Add code Add code
</Button> </Button>
</div> </div>
</Form> </Form>
)}
</Formik> </Formik>
</Modal> </Modal>
)} )}