62 lines
1.6 KiB
TypeScript
62 lines
1.6 KiB
TypeScript
import React, { useEffect, useState } from 'react'
|
|
import { getInitialValues, getValidationSchema, getDataToSend } from '../formUtil'
|
|
import { Tab, TabList, TabPanel as TabBody, Tabs } from 'react-tabs'
|
|
import 'react-tabs/style/react-tabs.css';
|
|
import { MdLanguage } from 'react-icons/md'
|
|
import ViewPage from '../../../Layout/Dashboard/ViewPage';
|
|
import { useTranslation } from 'react-i18next';
|
|
import { BsInfoCircle } from 'react-icons/bs';
|
|
import useNavigateOnSuccess from '../../../Hooks/useNavigateOnSuccess';
|
|
import { useAddCategories } from '../../../api/Categories';
|
|
import Form from './AddForm';
|
|
|
|
const AddcategoriesPage = () => {
|
|
|
|
|
|
const {mutate , isLoading , isSuccess} = useAddCategories()
|
|
const handleSubmit = (values:any)=>{
|
|
|
|
values['name'] = {
|
|
"en" : values.name_en,
|
|
"ar" : values.name_ar,
|
|
"de" : values.name_de,
|
|
}
|
|
mutate(values)
|
|
|
|
|
|
}
|
|
const {t} = useTranslation();
|
|
|
|
useNavigateOnSuccess(isSuccess , '/categories' )
|
|
|
|
|
|
|
|
const ViewProps = { getInitialValues, getValidationSchema, getDataToSend, handleSubmit };
|
|
|
|
|
|
return (
|
|
<div className='ViewPage'>
|
|
|
|
<ViewPage {...ViewProps}>
|
|
<Tabs>
|
|
<TabList>
|
|
<Tab><div className='SignleDriverContainer'><span className='SignleDriverInfoIcon'><MdLanguage size={20} /></span> <h6 className='SingleDriverInfo'>{t("BasicInfo")}</h6></div></Tab>
|
|
|
|
|
|
|
|
</TabList>
|
|
<TabBody >
|
|
<div className=" mt-4"><Form /></div>
|
|
</TabBody>
|
|
|
|
</Tabs>
|
|
</ViewPage>
|
|
|
|
|
|
|
|
</div>
|
|
)
|
|
|
|
}
|
|
|
|
export default AddcategoriesPage |