Compare commits
2 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 0f58da3dce | |||
| 1101e80d91 |
@@ -1,7 +1,7 @@
|
|||||||
import { Form, Formik } from "formik";
|
import { Form, Formik } from "formik";
|
||||||
import * as Yup from "yup";
|
import * as Yup from "yup";
|
||||||
import { useMutation } from '@tanstack/react-query';
|
import { useMutation } from '@tanstack/react-query';
|
||||||
import { completePWDReset } from '../../../services/services';
|
import { setExternalURL } from '../../../services/services';
|
||||||
|
|
||||||
const validationSchema = Yup.object().shape({
|
const validationSchema = Yup.object().shape({
|
||||||
url: Yup.string().required("URL is required").matches(/^https?:\/\/[a-zA-Z0-9\-]+\.[a-zA-Z0-9\-]+\.[a-zA-Z]+/, 'Must be like: https://example.mysite.com'),
|
url: Yup.string().required("URL is required").matches(/^https?:\/\/[a-zA-Z0-9\-]+\.[a-zA-Z0-9\-]+\.[a-zA-Z]+/, 'Must be like: https://example.mysite.com'),
|
||||||
@@ -18,10 +18,19 @@ const URLConfiguration = ({productData}) => {
|
|||||||
// API to set url
|
// API to set url
|
||||||
const setURL = useMutation({
|
const setURL = useMutation({
|
||||||
mutationFn: (fields) => {
|
mutationFn: (fields) => {
|
||||||
return completePWDReset(fields)
|
return setExternalURL(fields)
|
||||||
},
|
},
|
||||||
// onSuccess: (res) => {
|
onSuccess: (res) => {
|
||||||
// },
|
if(res.data.resultCode != '0'){
|
||||||
|
// throw({message: res?.data?.resultDescription})
|
||||||
|
throw({message: 'Something went wrong!'})
|
||||||
|
}
|
||||||
|
},
|
||||||
|
onSettled: () => {
|
||||||
|
setTimeout(()=>{
|
||||||
|
setURL.reset()
|
||||||
|
}, 3000)
|
||||||
|
}
|
||||||
// onError: (err) => {
|
// onError: (err) => {
|
||||||
// console.log('err', err)
|
// console.log('err', err)
|
||||||
// }
|
// }
|
||||||
@@ -29,10 +38,12 @@ const URLConfiguration = ({productData}) => {
|
|||||||
|
|
||||||
const handleSubmit = (values) => {
|
const handleSubmit = (values) => {
|
||||||
let reqData = {
|
let reqData = {
|
||||||
url: values.url
|
token: localStorage.getItem('token'), // USER TOKEN
|
||||||
|
uid: localStorage.getItem('uid'), // USER UID
|
||||||
|
subscription_uid: productData?.subscription_uid,
|
||||||
|
external_url: values.url
|
||||||
}
|
}
|
||||||
console.log('URL', values.url)
|
setURL.mutate(reqData)
|
||||||
// setURL.mutate(reqData)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return <>
|
return <>
|
||||||
@@ -71,8 +82,20 @@ const URLConfiguration = ({productData}) => {
|
|||||||
<label htmlFor="exampleInputEmail1">Enter your full URL <span className={`${(props.errors.url && props.touched.url) && 'text-danger'}`}>{props.errors.url}</span></label>
|
<label htmlFor="exampleInputEmail1">Enter your full URL <span className={`${(props.errors.url && props.touched.url) && 'text-danger'}`}>{props.errors.url}</span></label>
|
||||||
<input value={props.values.url} onChange={props.handleChange} type="text" className="form-control" id="url" aria-describedby="url" placeholder="https://example.mysite.com"/>
|
<input value={props.values.url} onChange={props.handleChange} type="text" className="form-control" id="url" aria-describedby="url" placeholder="https://example.mysite.com"/>
|
||||||
</div>
|
</div>
|
||||||
<button type="submit" className="btn btn-primary">Submit</button>
|
<button type="submit" disabled={setURL.isPending} className="btn btn-primary">{setURL.isPending ? 'Loading...' : 'Submit'}</button>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
{setURL.error &&
|
||||||
|
<div className="col-12">
|
||||||
|
<p className='text-danger'>{setURL.error.message}</p>
|
||||||
|
</div>
|
||||||
|
}
|
||||||
|
|
||||||
|
{setURL.isSuccess &&
|
||||||
|
<div className="col-12">
|
||||||
|
<p className='text-success'>{'Completed successfully'}</p>
|
||||||
|
</div>
|
||||||
|
}
|
||||||
</div>
|
</div>
|
||||||
</Form>
|
</Form>
|
||||||
);
|
);
|
||||||
|
|||||||
@@ -246,6 +246,14 @@ export const getCommonPractice = (reqData) => {
|
|||||||
return postAuxEnd(`/panel/common/practice`, postData, false)
|
return postAuxEnd(`/panel/common/practice`, postData, false)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// FUNCTION TO SET EXTERNAL URL
|
||||||
|
export const setExternalURL = (reqData) => {
|
||||||
|
let postData = {
|
||||||
|
...reqData
|
||||||
|
}
|
||||||
|
return postAuxEnd('/panel/myproduct/external-url', postData, false)
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user