From 67d26f6ab05ca6c117d4500bed501d10087ddb33 Mon Sep 17 00:00:00 2001 From: victorAnumudu Date: Mon, 1 Sep 2025 21:01:47 +0100 Subject: [PATCH] template endpoint added --- src/component/home/DashPayments.jsx | 4 +- .../product/settingsTab/GeneralTab.jsx | 158 ++++++++++------ .../product/settingsTab/Settings.jsx | 86 ++------- .../settingsTab/SiteTemplateSelector.jsx | 62 +++++- .../product/settingsTab/_GeneralTab.jsx | 128 +++++++++++++ .../product/settingsTab/_Settings.jsx | 179 ++++++++++++++++++ src/services/services.js | 8 + 7 files changed, 483 insertions(+), 142 deletions(-) create mode 100644 src/component/product/settingsTab/_GeneralTab.jsx create mode 100644 src/component/product/settingsTab/_Settings.jsx diff --git a/src/component/home/DashPayments.jsx b/src/component/home/DashPayments.jsx index f470c02..8e44fd6 100644 --- a/src/component/home/DashPayments.jsx +++ b/src/component/home/DashPayments.jsx @@ -2,7 +2,7 @@ import React from 'react' import { getDashPayments } from '../../services/services' import { useQuery } from '@tanstack/react-query' import queryKeys from '../../services/queryKeys' -import getDateFromDateString from '../../helpers/getDateFromDateString' +import getDateTimeFromDateString from '../../helpers/getDateTimeFromDateString' import getImage from '../../utils/getImage' export default function DashPayments() { @@ -65,7 +65,7 @@ export default function DashPayments() { {/* {Number(item?.id).toString().padStart(6,'0')} */} - {getDateFromDateString(item?.added)} + {getDateTimeFromDateString(item?.added)} {item?.option_name} diff --git a/src/component/product/settingsTab/GeneralTab.jsx b/src/component/product/settingsTab/GeneralTab.jsx index 3008775..a85744c 100644 --- a/src/component/product/settingsTab/GeneralTab.jsx +++ b/src/component/product/settingsTab/GeneralTab.jsx @@ -1,4 +1,4 @@ -import React, {memo, useState} from 'react' +import React, {memo, useEffect, useMemo, useState} from 'react' import { useMutation, useQueryClient } from "@tanstack/react-query"; import { pageSettings } from "../../../services/services"; import SiteTemplateSelector from './SiteTemplateSelector'; @@ -12,23 +12,37 @@ const GeneralTab = memo(({name='Full Name', data, isCustom, productData, backend const [reqStatus, setReqStatus] = useState({error: null, message: ''}) - const fieldData = {} - Object.entries(data)?.forEach(([key, value]) => { // LOOP TO POPULATE FIELDDATA PROPERTIES WITH DATA OF EACH TAB - fieldData[value?.name?.toLowerCase().replaceAll(" ", "_")] = '' - }) - backendValues.forEach(item => { //LOOPING THROUGH USER ALREADY ADDED DATA FROM BACKEND IF ANY AND UPDATING THE FIELDDATA OBJECT - fieldData[item?.setting_key?.toLowerCase().replaceAll(" ", "_")] = item?.setting_value - }) + + // const computeFieldData = useMemo(()=>{ + // const fieldData = {} + // Object.entries(data)?.forEach(([key, value]) => { // LOOP TO POPULATE FIELDDATA PROPERTIES WITH DATA OF EACH TAB + // fieldData[value?.name?.toLowerCase().replaceAll(" ", "_")] = '' + // }) + // backendValues?.data?.forEach(item => { //LOOPING THROUGH USER ALREADY ADDED DATA FROM BACKEND IF ANY AND UPDATING THE FIELDDATA OBJECT + // fieldData[item?.setting_key?.toLowerCase().replaceAll(" ", "_")] = item?.setting_value + // }) + // return fieldData + // },[backendValues.data]) - // console.log('fieldData', fieldData) + + const [fields, setFields] = useState({}) - const [fields, setFields] = useState(fieldData) + useEffect(()=>{ + const fieldData = {} + Object.entries(data)?.forEach(([key, value]) => { // LOOP TO POPULATE FIELDDATA PROPERTIES WITH DATA OF EACH TAB + fieldData[value?.name?.toLowerCase().replaceAll(" ", "_")] = '' + }) + backendValues?.data?.forEach(item => { //LOOPING THROUGH USER ALREADY ADDED DATA FROM BACKEND IF ANY AND UPDATING THE FIELDDATA OBJECT + fieldData[item?.setting_key?.toLowerCase().replaceAll(" ", "_")] = item?.setting_value + }) + setFields(fieldData) + },[backendValues.data]) const handleChange = ({target:{name, value}}) => { setFields(prev => ({...prev, [name]:value})) setFieldsChanged(true) } - + const submitSettings = useMutation({ mutationFn: (fields) => { return pageSettings(fields) @@ -62,64 +76,82 @@ const GeneralTab = memo(({name='Full Name', data, isCustom, productData, backend ...fields } } - // console.log('formInfo', reqData) submitSettings.mutate(reqData) } - if (isCustom === true){ - return - } - - return ( -
-
- -
-
- <> - {Object.entries(data)?.map(([key, value]) => { - let fieldName = value.name.toLowerCase().replaceAll(" ", "_") - let fieldValue = fields[value.name.toLowerCase().replaceAll(" ", "_")] - return ( -
- - {value.controls == 'TEXT' ? - - :value.controls == 'TEXTAREA' ? -