fix: error message
This commit is contained in:
parent
9d4c4041dc
commit
ac489266c6
3 changed files with 30 additions and 17 deletions
|
|
@ -60,22 +60,27 @@ const Coupons = () => {
|
||||||
refetchQueries: () => ['coupons']
|
refetchQueries: () => ['coupons']
|
||||||
})
|
})
|
||||||
|
|
||||||
const addCoupon = async (code, discount) => {
|
const addCoupon = (code, discount) => {
|
||||||
setErrorMsg(null)
|
setErrorMsg(null)
|
||||||
const res = await createCoupon({
|
createCoupon({
|
||||||
variables: { code: code, discount: discount }
|
variables: { code: code, discount: discount }
|
||||||
})
|
})
|
||||||
|
.then(res => {
|
||||||
|
if (!res.errors) {
|
||||||
|
return setShowModal(false)
|
||||||
|
} else {
|
||||||
|
const duplicateCouponError = res.errors.some(e => {
|
||||||
|
return e.message.includes('duplicate')
|
||||||
|
})
|
||||||
|
|
||||||
if (!res.errors) {
|
if (duplicateCouponError)
|
||||||
return setShowModal(false)
|
setErrorMsg('There is already a coupon with that code!')
|
||||||
}
|
}
|
||||||
|
})
|
||||||
const duplicateCouponError = res.errors.some(e => {
|
.catch(err => {
|
||||||
return e.message.includes('duplicate')
|
setErrorMsg('Failed to save')
|
||||||
})
|
console.log(err)
|
||||||
|
})
|
||||||
if (duplicateCouponError)
|
|
||||||
setErrorMsg('There is already a coupon with that code!')
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const elements = [
|
const elements = [
|
||||||
|
|
|
||||||
|
|
@ -7,7 +7,9 @@ import {
|
||||||
|
|
||||||
const styles = {
|
const styles = {
|
||||||
footer: {
|
footer: {
|
||||||
margin: [['auto', 0, spacer * 3, 'auto']]
|
display: 'flex',
|
||||||
|
flexDirection: 'row',
|
||||||
|
margin: [['auto', 0, spacer * 3, 0]]
|
||||||
},
|
},
|
||||||
modalLabel1: {
|
modalLabel1: {
|
||||||
marginTop: 20
|
marginTop: 20
|
||||||
|
|
@ -40,6 +42,9 @@ const styles = {
|
||||||
display: 'flex',
|
display: 'flex',
|
||||||
flexDirection: 'column',
|
flexDirection: 'column',
|
||||||
height: '100%'
|
height: '100%'
|
||||||
|
},
|
||||||
|
submit: {
|
||||||
|
margin: [['auto', 0, 0, 'auto']]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -4,6 +4,7 @@ import * as R from 'ramda'
|
||||||
import React from 'react'
|
import React from 'react'
|
||||||
import * as Yup from 'yup'
|
import * as Yup from 'yup'
|
||||||
|
|
||||||
|
import ErrorMessage from 'src/components/ErrorMessage'
|
||||||
import Modal from 'src/components/Modal'
|
import Modal from 'src/components/Modal'
|
||||||
import { Tooltip } from 'src/components/Tooltip'
|
import { Tooltip } from 'src/components/Tooltip'
|
||||||
import { Button } from 'src/components/buttons'
|
import { Button } from 'src/components/buttons'
|
||||||
|
|
@ -50,9 +51,8 @@ const CouponCodesModal = ({ showModal, onClose, errorMsg, addCoupon }) => {
|
||||||
<Formik
|
<Formik
|
||||||
initialValues={initialValues}
|
initialValues={initialValues}
|
||||||
validationSchema={validationSchema}
|
validationSchema={validationSchema}
|
||||||
onSubmit={({ code, discount }, { resetForm }) => {
|
onSubmit={({ code, discount }) => {
|
||||||
handleAddCoupon(code, discount)
|
handleAddCoupon(code, discount)
|
||||||
resetForm()
|
|
||||||
}}>
|
}}>
|
||||||
<Form id="coupon-form" className={classes.form}>
|
<Form id="coupon-form" className={classes.form}>
|
||||||
<H3 className={classes.modalLabel1}>Coupon code name</H3>
|
<H3 className={classes.modalLabel1}>Coupon code name</H3>
|
||||||
|
|
@ -93,9 +93,12 @@ const CouponCodesModal = ({ showModal, onClose, errorMsg, addCoupon }) => {
|
||||||
%
|
%
|
||||||
</TL1>
|
</TL1>
|
||||||
</div>
|
</div>
|
||||||
<span className={classes.error}>{errorMsg}</span>
|
|
||||||
<div className={classes.footer}>
|
<div className={classes.footer}>
|
||||||
<Button type="submit" form="coupon-form">
|
{errorMsg && <ErrorMessage>{errorMsg}</ErrorMessage>}
|
||||||
|
<Button
|
||||||
|
type="submit"
|
||||||
|
form="coupon-form"
|
||||||
|
className={classes.submit}>
|
||||||
Add coupon
|
Add coupon
|
||||||
</Button>
|
</Button>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue