import React, {memo} from 'react' import getImage from "../../../utils/getImage"; import { useMutation, useQuery, useQueryClient } from '@tanstack/react-query'; import queryKeys from '../../../services/queryKeys'; import { getProductTemplateData, activateTemplate } from '../../../services/services'; const SiteTemplateSelector = memo(({name='Full Name', data, productData}) =>{ const queryClient = useQueryClient() const {data:templateData, isFetching, isError, error} = useQuery({ queryKey: queryKeys.productTemplateData, queryFn: () => { let reqData = { token: localStorage.getItem('token'), // USER TOKEN uid: localStorage.getItem('uid'), // USER UID product_id: productData?.product_id } return getProductTemplateData(reqData) }, staleTime: 0 }) const templateResponse = templateData?.data const currentTemUID = templateResponse?.current_template_uid const templates = templateResponse?.templates // console.log('data Template', templateResponse) // console.log("Page data == ", data) const handleActivateTemplate = useMutation({ mutationFn: (fields) => { return activateTemplate(fields) }, onSuccess: (res) => { if(res?.data?.resultCode != '0'){ throw new Error(res.data.resultDescription) } queryClient.refetchQueries({ // refetches productProvision API call queryKey: [...queryKeys.settingsData], }) }, onSettled: () => { setTimeout(()=>{ handleActivateTemplate.reset() }, 3000) } }) const handleSubmit = (tem_uid) => { const reqData = { token: localStorage.getItem('token'), // USER TOKEN uid: localStorage.getItem('uid'), // USER UID product_id: productData?.product_id, template_uid: tem_uid } // console.log(reqData) handleActivateTemplate.mutate(reqData) } return (
{isFetching ? <>

Loading...

: isError ?

{error?.message}

:
<> {!templates?.length ?

No data Found

: templates.map(template => (
{template.title}

{template.title}

{currentTemUID == template.template_uid ? : }
)) } {/* {Object.entries(data)?.map(([key, value]) => (
{value.title}

{value.title}

Activate
))} */}
<> {handleActivateTemplate.isPending ?

loading...

: handleActivateTemplate.isError ?

{handleActivateTemplate.error.message}

: handleActivateTemplate.isSuccess?

Templated activated successfully

: null }
}
) } ) export default SiteTemplateSelector