feat: cr changes and improvements
This commit is contained in:
parent
1f7c183e7e
commit
232f11d142
|
|
@ -1,94 +1,102 @@
|
||||||
// MUI Icons imports
|
// MUI Icons imports
|
||||||
import HomeOutlinedIcon from '@mui/icons-material/HomeOutlined';
|
import HomeOutlinedIcon from "@mui/icons-material/HomeOutlined";
|
||||||
import HomeIcon from '@mui/icons-material/Home';
|
import HomeIcon from "@mui/icons-material/Home";
|
||||||
import LocalHospitalOutlinedIcon from '@mui/icons-material/LocalHospitalOutlined';
|
import LocalHospitalOutlinedIcon from "@mui/icons-material/LocalHospitalOutlined";
|
||||||
import LocalHospitalIcon from '@mui/icons-material/LocalHospital';
|
import LocalHospitalIcon from "@mui/icons-material/LocalHospital";
|
||||||
import PeopleOutlineIcon from '@mui/icons-material/PeopleOutline';
|
import PeopleOutlineIcon from "@mui/icons-material/PeopleOutline";
|
||||||
import PeopleIcon from '@mui/icons-material/People';
|
import PeopleIcon from "@mui/icons-material/People";
|
||||||
import SettingsOutlinedIcon from '@mui/icons-material/SettingsOutlined';
|
import SettingsOutlinedIcon from "@mui/icons-material/SettingsOutlined";
|
||||||
import SettingsIcon from '@mui/icons-material/Settings';
|
import SettingsIcon from "@mui/icons-material/Settings";
|
||||||
import ArticleIcon from '@mui/icons-material/Article';
|
import ArticleIcon from "@mui/icons-material/Article";
|
||||||
import ArticleOutlinedIcon from '@mui/icons-material/ArticleOutlined';
|
import ArticleOutlinedIcon from "@mui/icons-material/ArticleOutlined";
|
||||||
import PaymentIcon from '@mui/icons-material/Payment';
|
import PaymentIcon from "@mui/icons-material/Payment";
|
||||||
import PaymentOutlinedIcon from '@mui/icons-material/PaymentOutlined';
|
import PaymentOutlinedIcon from "@mui/icons-material/PaymentOutlined";
|
||||||
import { USER_ROLES } from '../../../constants';
|
import { USER_ROLES } from "../../../constants";
|
||||||
|
|
||||||
// Define the sidebar configuration with proper permission fields
|
// Define the sidebar configuration with proper permission fields
|
||||||
export const SIDEBAR_CONFIG = [
|
export const SIDEBAR_CONFIG = [
|
||||||
{
|
{
|
||||||
text: 'Dashboard',
|
text: "Dashboard",
|
||||||
path: '',
|
path: "",
|
||||||
icon: HomeOutlinedIcon,
|
icon: HomeOutlinedIcon,
|
||||||
activeIcon: HomeIcon,
|
activeIcon: HomeIcon,
|
||||||
// Dashboard is accessible to all roles
|
// Dashboard is accessible to all roles
|
||||||
roles: [USER_ROLES.SUPER_ADMIN, USER_ROLES.CLINIC_ADMIN]
|
roles: [USER_ROLES.SUPER_ADMIN, USER_ROLES.CLINIC_ADMIN],
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
text: 'Clinics List',
|
text: "Clinics",
|
||||||
path: 'clinics',
|
path: "clinics",
|
||||||
icon: LocalHospitalOutlinedIcon,
|
icon: LocalHospitalOutlinedIcon,
|
||||||
activeIcon: LocalHospitalIcon,
|
activeIcon: LocalHospitalIcon,
|
||||||
// Only super admin can access clinics list
|
// Only super admin can access clinics list
|
||||||
roles: [USER_ROLES.SUPER_ADMIN]
|
roles: [USER_ROLES.SUPER_ADMIN],
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
text: 'Admin Staff Management',
|
text: "Admin Staff Management",
|
||||||
path: 'admin',
|
path: "admin",
|
||||||
icon: PeopleOutlineIcon,
|
icon: PeopleOutlineIcon,
|
||||||
activeIcon: PeopleIcon,
|
activeIcon: PeopleIcon,
|
||||||
// Only super admin can access admin staff management
|
// Only super admin can access admin staff management
|
||||||
roles: [USER_ROLES.SUPER_ADMIN]
|
roles: [USER_ROLES.SUPER_ADMIN],
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
text: 'Master Data Management',
|
text: "Master Data Management",
|
||||||
path: 'masterData',
|
path: "masterData",
|
||||||
icon: SettingsOutlinedIcon,
|
icon: SettingsOutlinedIcon,
|
||||||
activeIcon: SettingsIcon,
|
activeIcon: SettingsIcon,
|
||||||
// Only super admin can access admin staff management
|
// Only super admin can access admin staff management
|
||||||
roles: [USER_ROLES.SUPER_ADMIN]
|
roles: [USER_ROLES.SUPER_ADMIN],
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
text: 'Payment Management',
|
text: "Payment Management",
|
||||||
path: 'payment-management',
|
path: "payment-management",
|
||||||
icon: PaymentOutlinedIcon,
|
icon: PaymentOutlinedIcon,
|
||||||
activeIcon: PaymentIcon,
|
activeIcon: PaymentIcon,
|
||||||
// Only super admin can access payment management
|
// Only super admin can access payment management
|
||||||
roles: [USER_ROLES.SUPER_ADMIN]
|
roles: [USER_ROLES.SUPER_ADMIN],
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
text: 'Doctor/Nurse Management',
|
text: "Signup Charges",
|
||||||
path: 'doctor',
|
path: "signup-charges",
|
||||||
|
icon: PaymentOutlinedIcon,
|
||||||
|
activeIcon: PaymentIcon,
|
||||||
|
// Only super admin can access payment management
|
||||||
|
roles: [USER_ROLES.SUPER_ADMIN],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
text: "Doctor/Nurse Management",
|
||||||
|
path: "doctor",
|
||||||
requireSaprateApp: false,
|
requireSaprateApp: false,
|
||||||
icon: PeopleOutlineIcon,
|
icon: PeopleOutlineIcon,
|
||||||
activeIcon: PeopleIcon,
|
activeIcon: PeopleIcon,
|
||||||
// Clinic admin can access user management
|
// Clinic admin can access user management
|
||||||
roles: [USER_ROLES.CLINIC_ADMIN]
|
roles: [USER_ROLES.CLINIC_ADMIN],
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
text: 'Clinic Setup',
|
text: "Clinic Setup",
|
||||||
path: 'clinicSetup',
|
path: "clinicSetup",
|
||||||
requireSaprateApp: false,
|
requireSaprateApp: false,
|
||||||
icon: SettingsOutlinedIcon,
|
icon: SettingsOutlinedIcon,
|
||||||
activeIcon: SettingsIcon,
|
activeIcon: SettingsIcon,
|
||||||
// Clinic admin can access clinic setup
|
// Clinic admin can access clinic setup
|
||||||
roles: [USER_ROLES.CLINIC_ADMIN]
|
roles: [USER_ROLES.CLINIC_ADMIN],
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
text: 'Call Transcripts',
|
text: "Call Transcripts",
|
||||||
path: 'transcripts',
|
path: "transcripts",
|
||||||
requireSaprateApp: false,
|
requireSaprateApp: false,
|
||||||
icon: ArticleOutlinedIcon,
|
icon: ArticleOutlinedIcon,
|
||||||
activeIcon: ArticleIcon,
|
activeIcon: ArticleIcon,
|
||||||
// Clinic admin can access call transcripts
|
// Clinic admin can access call transcripts
|
||||||
roles: [USER_ROLES.CLINIC_ADMIN]
|
roles: [USER_ROLES.CLINIC_ADMIN],
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
text: 'Clinic Documents',
|
text: "Clinic Documents",
|
||||||
path: 'docs',
|
path: "docs",
|
||||||
requireSaprateApp: false,
|
requireSaprateApp: false,
|
||||||
icon: ArticleOutlinedIcon,
|
icon: ArticleOutlinedIcon,
|
||||||
activeIcon: ArticleIcon,
|
activeIcon: ArticleIcon,
|
||||||
// Clinic admin can access call transcripts
|
// Clinic admin can access call transcripts
|
||||||
roles: [USER_ROLES.CLINIC_ADMIN]
|
roles: [USER_ROLES.CLINIC_ADMIN],
|
||||||
},
|
},
|
||||||
];
|
];
|
||||||
|
|
|
||||||
|
|
@ -141,7 +141,7 @@ function MainLayout() {
|
||||||
className={classes.functionalityNotAvailableText}
|
className={classes.functionalityNotAvailableText}
|
||||||
variant="h4"
|
variant="h4"
|
||||||
>
|
>
|
||||||
This section will launch soon.
|
This section will accessible after approval
|
||||||
</Typography>
|
</Typography>
|
||||||
<LoadingButton
|
<LoadingButton
|
||||||
variant="contained"
|
variant="contained"
|
||||||
|
|
|
||||||
|
|
@ -15,6 +15,7 @@ import PaymentManagement from "../views/PaymentManagement";
|
||||||
import ClinicDocUpdater from "../views/ClinicDocUpdate";
|
import ClinicDocUpdater from "../views/ClinicDocUpdate";
|
||||||
import ForgotPassword from "../views/ForgotPassword";
|
import ForgotPassword from "../views/ForgotPassword";
|
||||||
import ResetPassword from "../views/ResetPassword";
|
import ResetPassword from "../views/ResetPassword";
|
||||||
|
import SignupCharges from "../views/SignupCharges";
|
||||||
|
|
||||||
export const routesData = [
|
export const routesData = [
|
||||||
{
|
{
|
||||||
|
|
@ -31,6 +32,7 @@ export const routesData = [
|
||||||
{ path: "/masterData", component: MasterDataManagement },
|
{ path: "/masterData", component: MasterDataManagement },
|
||||||
{ path: "/payment-management", component: PaymentManagement },
|
{ path: "/payment-management", component: PaymentManagement },
|
||||||
{ path: "/docs", component: ClinicDocUpdater },
|
{ path: "/docs", component: ClinicDocUpdater },
|
||||||
|
{ path: "/signup-charges", component: SignupCharges },
|
||||||
],
|
],
|
||||||
isProtected: true,
|
isProtected: true,
|
||||||
},
|
},
|
||||||
|
|
|
||||||
|
|
@ -32,8 +32,8 @@ const GeneralInformation = ({ clinicData, clinicAdminData }) => {
|
||||||
<Grid item xs={3}>
|
<Grid item xs={3}>
|
||||||
<Typography className={classes.generalInfoUploaded}>
|
<Typography className={classes.generalInfoUploaded}>
|
||||||
Uploaded:{' '}
|
Uploaded:{' '}
|
||||||
{clinicData?.updatedAt
|
{clinicData?.update_time
|
||||||
? format(new Date(clinicData?.createdAt), 'dd MMM yyyy')
|
? format(new Date(clinicData?.update_time), 'dd MMM yyyy')
|
||||||
: ''}
|
: ''}
|
||||||
</Typography>
|
</Typography>
|
||||||
</Grid>
|
</Grid>
|
||||||
|
|
@ -92,7 +92,7 @@ const GeneralInformation = ({ clinicData, clinicAdminData }) => {
|
||||||
<Box>
|
<Box>
|
||||||
<Typography className={classes.companyUserDetailsTitle}>
|
<Typography className={classes.companyUserDetailsTitle}>
|
||||||
{clinicAdminData?.designation
|
{clinicAdminData?.designation
|
||||||
? clinicAdminData?.designation
|
? clinicAdminData?.designation.toUpperCase()
|
||||||
: NOT_AVAILABLE_TEXT}
|
: NOT_AVAILABLE_TEXT}
|
||||||
</Typography>
|
</Typography>
|
||||||
<Typography className={classes.companyUserDetailsSubTitle}>
|
<Typography className={classes.companyUserDetailsSubTitle}>
|
||||||
|
|
|
||||||
|
|
@ -80,7 +80,7 @@ function ClinicDetails() {
|
||||||
path: "/",
|
path: "/",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: "Clinic List",
|
label: "Clinics",
|
||||||
path: "/clinics",
|
path: "/clinics",
|
||||||
query: { tab: queryParams.get("tab") || "UNREGISTERED" },
|
query: { tab: queryParams.get("tab") || "UNREGISTERED" },
|
||||||
},
|
},
|
||||||
|
|
@ -363,7 +363,7 @@ function ClinicDetails() {
|
||||||
</Box>
|
</Box>
|
||||||
</Box>
|
</Box>
|
||||||
{/* ..........on hold Button..... */}
|
{/* ..........on hold Button..... */}
|
||||||
<Button
|
{/* <Button
|
||||||
disableTouchRipple={isOnHoldButtonShow ? false : true}
|
disableTouchRipple={isOnHoldButtonShow ? false : true}
|
||||||
className={
|
className={
|
||||||
isOnHoldButtonShow
|
isOnHoldButtonShow
|
||||||
|
|
@ -382,7 +382,7 @@ function ClinicDetails() {
|
||||||
alt="On Hold Button Icon"
|
alt="On Hold Button Icon"
|
||||||
/>
|
/>
|
||||||
On Hold
|
On Hold
|
||||||
</Button>
|
</Button> */}
|
||||||
|
|
||||||
{/* ......accept button...... */}
|
{/* ......accept button...... */}
|
||||||
<Button
|
<Button
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,6 @@ import React, { useState, useMemo, useEffect, useRef } from "react";
|
||||||
import { useTheme } from "@emotion/react";
|
import { useTheme } from "@emotion/react";
|
||||||
import { useLocation, useNavigate, Link } from "react-router-dom";
|
import { useLocation, useNavigate, Link } from "react-router-dom";
|
||||||
import StoreIcon from "@mui/icons-material/Store";
|
import StoreIcon from "@mui/icons-material/Store";
|
||||||
import BlockIcon from "@mui/icons-material/Block";
|
|
||||||
import {
|
import {
|
||||||
Box,
|
Box,
|
||||||
Chip,
|
Chip,
|
||||||
|
|
@ -65,16 +64,14 @@ const ClinicsList = () => {
|
||||||
[
|
[
|
||||||
// ..............sro number column......................
|
// ..............sro number column......................
|
||||||
{
|
{
|
||||||
size: 50,
|
size: 100,
|
||||||
isBold: true,
|
|
||||||
header: "Sr. No.",
|
header: "Sr. No.",
|
||||||
Cell: (props) => {
|
Cell: (props) => {
|
||||||
const tableState = props?.table?.getState();
|
const tableState = props?.table?.getState();
|
||||||
const serialNumber = (
|
const serialNumber = (
|
||||||
props?.row?.index +
|
props?.row?.index +
|
||||||
1 +
|
1 +
|
||||||
tableState?.pagination?.pageIndex *
|
tableState?.pagination?.pageIndex * tableState?.pagination?.pageSize
|
||||||
tableState?.pagination?.pageSize
|
|
||||||
)
|
)
|
||||||
?.toString()
|
?.toString()
|
||||||
?.padStart(2, "0");
|
?.padStart(2, "0");
|
||||||
|
|
@ -86,7 +83,7 @@ const ClinicsList = () => {
|
||||||
{
|
{
|
||||||
enableColumnFilter: false,
|
enableColumnFilter: false,
|
||||||
enableSorting: true,
|
enableSorting: true,
|
||||||
size: "260px",
|
size: "220px",
|
||||||
accessorKey: "name",
|
accessorKey: "name",
|
||||||
header: "Clinic Name",
|
header: "Clinic Name",
|
||||||
Cell: ({ row }) => (
|
Cell: ({ row }) => (
|
||||||
|
|
@ -195,10 +192,11 @@ const ClinicsList = () => {
|
||||||
},
|
},
|
||||||
// .................Company status column..................
|
// .................Company status column..................
|
||||||
{
|
{
|
||||||
enableSorting: true,
|
enableSorting: false,
|
||||||
accessorKey: "status",
|
accessorKey: "status",
|
||||||
header: "Status",
|
header: "Status",
|
||||||
size: 100,
|
size: 100,
|
||||||
|
enableColumnFilter: false,
|
||||||
Filter: ({ header }) => (
|
Filter: ({ header }) => (
|
||||||
<TableSelect
|
<TableSelect
|
||||||
name="Status"
|
name="Status"
|
||||||
|
|
@ -465,7 +463,7 @@ const ClinicsList = () => {
|
||||||
path: "/",
|
path: "/",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: "Clinic List",
|
label: "Clinics",
|
||||||
path: "/clinics",
|
path: "/clinics",
|
||||||
query: { tab: queryParams.get("tab") || "UNREGISTERED" },
|
query: { tab: queryParams.get("tab") || "UNREGISTERED" },
|
||||||
},
|
},
|
||||||
|
|
@ -480,7 +478,7 @@ const ClinicsList = () => {
|
||||||
<>
|
<>
|
||||||
<Box>
|
<Box>
|
||||||
<PageHeader
|
<PageHeader
|
||||||
pageTitle="Clinic List"
|
pageTitle="Clinics"
|
||||||
hideAddButton
|
hideAddButton
|
||||||
addButtonIcon={<FileDownloadIcon />}
|
addButtonIcon={<FileDownloadIcon />}
|
||||||
extraComponent={
|
extraComponent={
|
||||||
|
|
@ -505,7 +503,7 @@ const ClinicsList = () => {
|
||||||
variant="outlined"
|
variant="outlined"
|
||||||
loading={isDownloading}
|
loading={isDownloading}
|
||||||
startIcon={<FileDownloadIcon />}
|
startIcon={<FileDownloadIcon />}
|
||||||
// onClick={handleExport}
|
onClick={handleExport}
|
||||||
>
|
>
|
||||||
Download Excel
|
Download Excel
|
||||||
</LoadingButton>
|
</LoadingButton>
|
||||||
|
|
|
||||||
|
|
@ -19,44 +19,40 @@ const SuperAdminTotals = ({ isLoading, data }) => {
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<ProtectedComponent>
|
<ProtectedComponent>
|
||||||
<Grid container className={classes.numbers} spacing={2.3}>
|
<Grid container className={classes.numbers} spacing={2}>
|
||||||
<Grid item>
|
<Grid item>
|
||||||
<TotalNumber
|
<TotalNumber
|
||||||
heading={"Total Accounts"}
|
heading={`Pending Requests`}
|
||||||
isLoading={isLoading}
|
|
||||||
value={totalAccounts}
|
|
||||||
helperText={"Clinics"}
|
|
||||||
/>
|
|
||||||
</Grid>
|
|
||||||
<Grid item>
|
|
||||||
<TotalNumber
|
|
||||||
heading={`Registration Request`}
|
|
||||||
isLoading={isLoading}
|
isLoading={isLoading}
|
||||||
viewAllClick={() => viewAllClick(true)}
|
viewAllClick={() => viewAllClick(true)}
|
||||||
value={registrationRequest}
|
value={registrationRequest}
|
||||||
helperText={"Clinics"}
|
|
||||||
/>
|
/>
|
||||||
</Grid>
|
</Grid>
|
||||||
<Grid item>
|
<Grid item>
|
||||||
<TotalNumber
|
<TotalNumber
|
||||||
heading={`Approved`}
|
heading={`Approved Requests`}
|
||||||
isLoading={isLoading}
|
isLoading={isLoading}
|
||||||
viewAllClick={() => viewAllClick(false)}
|
viewAllClick={() => viewAllClick(false)}
|
||||||
value={registered}
|
value={registered}
|
||||||
helperText={"Clinics"}
|
|
||||||
color={theme.palette.grey[52]}
|
color={theme.palette.grey[52]}
|
||||||
/>
|
/>
|
||||||
</Grid>
|
</Grid>
|
||||||
<Grid item>
|
<Grid item>
|
||||||
<TotalNumber
|
<TotalNumber
|
||||||
heading={`Rejected`}
|
heading={`Rejected Requests`}
|
||||||
isLoading={isLoading}
|
isLoading={isLoading}
|
||||||
viewAllClick={() => viewAllClick(false)}
|
viewAllClick={() => viewAllClick(false)}
|
||||||
value={rejected}
|
value={rejected}
|
||||||
helperText={"Clinics"}
|
|
||||||
color={theme.palette.grey[57]}
|
color={theme.palette.grey[57]}
|
||||||
/>
|
/>
|
||||||
</Grid>
|
</Grid>
|
||||||
|
<Grid item>
|
||||||
|
<TotalNumber
|
||||||
|
heading={"Total Requests"}
|
||||||
|
isLoading={isLoading}
|
||||||
|
value={totalAccounts}
|
||||||
|
/>
|
||||||
|
</Grid>
|
||||||
</Grid>
|
</Grid>
|
||||||
</ProtectedComponent>
|
</ProtectedComponent>
|
||||||
);
|
);
|
||||||
|
|
|
||||||
|
|
@ -107,7 +107,7 @@ const PaymentConfig = () => {
|
||||||
<Paper elevation={3} sx={{ p: 3, mb: 4, borderRadius: 2 }}>
|
<Paper elevation={3} sx={{ p: 3, mb: 4, borderRadius: 2 }}>
|
||||||
<Box mb={2}>
|
<Box mb={2}>
|
||||||
<Typography variant="h6" fontWeight="bold">
|
<Typography variant="h6" fontWeight="bold">
|
||||||
Payment Configuration
|
Signup Charges
|
||||||
</Typography>
|
</Typography>
|
||||||
<Typography variant="body2" color="text.secondary">
|
<Typography variant="body2" color="text.secondary">
|
||||||
Configure payment details for new clinic registrations
|
Configure payment details for new clinic registrations
|
||||||
|
|
@ -146,13 +146,13 @@ const PaymentConfig = () => {
|
||||||
<Grid item xs={12} md={4}>
|
<Grid item xs={12} md={4}>
|
||||||
<TextField
|
<TextField
|
||||||
fullWidth
|
fullWidth
|
||||||
label="Per Call Charges"
|
label="Per Minute Charges"
|
||||||
name="per_call_charges"
|
name="per_call_charges"
|
||||||
value={paymentConfig.per_call_charges}
|
value={paymentConfig.per_call_charges}
|
||||||
onChange={handleInputChange}
|
onChange={handleInputChange}
|
||||||
InputProps={{
|
InputProps={{
|
||||||
startAdornment: <InputAdornment position="start">$</InputAdornment>,
|
startAdornment: <InputAdornment position="start">$</InputAdornment>,
|
||||||
endAdornment: <InputAdornment position="end">/call</InputAdornment>,
|
endAdornment: <InputAdornment position="end">/min</InputAdornment>,
|
||||||
}}
|
}}
|
||||||
variant="outlined"
|
variant="outlined"
|
||||||
/>
|
/>
|
||||||
|
|
|
||||||
|
|
@ -49,9 +49,9 @@ const SuperAdmin = () => {
|
||||||
</Box>
|
</Box>
|
||||||
|
|
||||||
{/* Payment Configuration Section */}
|
{/* Payment Configuration Section */}
|
||||||
<Box mt={4}>
|
{/* <Box mt={4}>
|
||||||
<PaymentConfig />
|
<PaymentConfig />
|
||||||
</Box>
|
</Box> */}
|
||||||
</Box>
|
</Box>
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -108,7 +108,7 @@ function Dashboard() {
|
||||||
const clinicAdmin = (
|
const clinicAdmin = (
|
||||||
<Box>
|
<Box>
|
||||||
{!isActive && (
|
{!isActive && (
|
||||||
<ThankYou canClose={false} />
|
<ThankYou />
|
||||||
)}
|
)}
|
||||||
<Box>
|
<Box>
|
||||||
<Box>
|
<Box>
|
||||||
|
|
|
||||||
|
|
@ -94,10 +94,9 @@ function YourDetailsForm() {
|
||||||
const selectedLocalityRef = useRef();
|
const selectedLocalityRef = useRef();
|
||||||
const [testConnection, setTestConnDone] = useState(false);
|
const [testConnection, setTestConnDone] = useState(false);
|
||||||
|
|
||||||
|
|
||||||
const errorStatus = new URLSearchParams(window.location.search).get("status");
|
const errorStatus = new URLSearchParams(window.location.search).get("status");
|
||||||
|
|
||||||
console.log(errorStatus)
|
console.log(errorStatus);
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
setIsLoading(true);
|
setIsLoading(true);
|
||||||
|
|
@ -154,10 +153,10 @@ function YourDetailsForm() {
|
||||||
// Clinic details
|
// Clinic details
|
||||||
companyName: "",
|
companyName: "",
|
||||||
designation: "",
|
designation: "",
|
||||||
businessPhonePrefix: "",
|
businessPhonePrefix: mobilePrefixOptions[0].name,
|
||||||
businessPhone: "",
|
businessPhone: "",
|
||||||
emergencyBusinessPhone: "",
|
emergencyBusinessPhone: "",
|
||||||
emergencyBusinessPhonePrefix: "",
|
emergencyBusinessPhonePrefix: mobilePrefixOptions[0].name,
|
||||||
businessFax: "",
|
businessFax: "",
|
||||||
clinicLogo: "",
|
clinicLogo: "",
|
||||||
businessEmail: "",
|
businessEmail: "",
|
||||||
|
|
@ -213,10 +212,11 @@ function YourDetailsForm() {
|
||||||
};
|
};
|
||||||
|
|
||||||
if (yourDetailsFormData) {
|
if (yourDetailsFormData) {
|
||||||
defaultFormData.current = { ...yourDetailsFormData };
|
Object.keys(defaultFormData.current).forEach((field) => {
|
||||||
console.log(yourDetailsFormData)
|
if (yourDetailsFormData[field]) {
|
||||||
// setLocalityOption([yourDetailsFormData?.locality])
|
defaultFormData.current[field] = yourDetailsFormData[field];
|
||||||
selectedLocalityRef.current = yourDetailsFormData?.locality;
|
}
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
const validationSchema = Yup.object().shape({
|
const validationSchema = Yup.object().shape({
|
||||||
|
|
@ -266,11 +266,6 @@ function YourDetailsForm() {
|
||||||
businessEmail: Yup.string()
|
businessEmail: Yup.string()
|
||||||
.required("Business Email is required")
|
.required("Business Email is required")
|
||||||
.email("Please enter valid Email Address"),
|
.email("Please enter valid Email Address"),
|
||||||
businessFax: Yup.string()
|
|
||||||
.required("Business Fax is required")
|
|
||||||
.matches(/^[0-9]+$/, "Business Fax must be a valid number")
|
|
||||||
.min(10, "Business Fax number should have 10 digits only.")
|
|
||||||
.max(10, "Business Fax number should have 10 digits only."),
|
|
||||||
practiceManagementSystem: Yup.string()
|
practiceManagementSystem: Yup.string()
|
||||||
.required("Practice Management System is required")
|
.required("Practice Management System is required")
|
||||||
.typeError("Practice Management System must be string"),
|
.typeError("Practice Management System must be string"),
|
||||||
|
|
@ -349,23 +344,23 @@ function YourDetailsForm() {
|
||||||
setOtpField(true);
|
setOtpField(true);
|
||||||
const payload = {
|
const payload = {
|
||||||
email: formik.values.email,
|
email: formik.values.email,
|
||||||
}
|
};
|
||||||
const response = await getEmailOtp(payload);
|
const response = await getEmailOtp(payload);
|
||||||
if (response?.data?.error) {
|
if (response?.data?.error) {
|
||||||
pushNotification(response?.data?.message, NOTIFICATION.ERROR);
|
pushNotification(response?.data?.message, NOTIFICATION.ERROR);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
pushNotification(response?.data?.message, NOTIFICATION.SUCCESS);
|
pushNotification("OTP sent successfully to your email", NOTIFICATION.SUCCESS);
|
||||||
};
|
};
|
||||||
|
|
||||||
const verifyOTP = async (e) => {
|
const verifyOTP = async (e) => {
|
||||||
e.preventDefault();
|
e.preventDefault();
|
||||||
console.log(otp)
|
console.log(otp);
|
||||||
console.log("OTP verified");
|
console.log("OTP verified");
|
||||||
const payload = {
|
const payload = {
|
||||||
email: formik.values.email,
|
email: formik.values.email,
|
||||||
otp: otp,
|
otp: otp,
|
||||||
}
|
};
|
||||||
const response = await verifyOtp(payload);
|
const response = await verifyOtp(payload);
|
||||||
if (response?.data?.error) {
|
if (response?.data?.error) {
|
||||||
pushNotification(response?.data?.message, NOTIFICATION.ERROR);
|
pushNotification(response?.data?.message, NOTIFICATION.ERROR);
|
||||||
|
|
@ -381,10 +376,15 @@ function YourDetailsForm() {
|
||||||
const handleFormSubmit = async () => {
|
const handleFormSubmit = async () => {
|
||||||
dispatch(updateFormDetails(formik.values));
|
dispatch(updateFormDetails(formik.values));
|
||||||
|
|
||||||
if(!otpVerified){
|
if (!otpField) {
|
||||||
pushNotification("Please verify OTP first", NOTIFICATION.ERROR);
|
pushNotification("Please Request OTP first", NOTIFICATION.ERROR);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!otpVerified) {
|
||||||
|
pushNotification("Please verify OTP first", NOTIFICATION.ERROR);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
const body = formatedData(formik.values);
|
const body = formatedData(formik.values);
|
||||||
|
|
||||||
|
|
@ -400,7 +400,7 @@ function YourDetailsForm() {
|
||||||
dispatch(resetFormData());
|
dispatch(resetFormData());
|
||||||
navigate("/auth/signup/payment");
|
navigate("/auth/signup/payment");
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
console.error('Error signing up:', error);
|
console.error("Error signing up:", error);
|
||||||
} finally {
|
} finally {
|
||||||
formik.isSubmitting(false);
|
formik.isSubmitting(false);
|
||||||
}
|
}
|
||||||
|
|
@ -467,16 +467,17 @@ function YourDetailsForm() {
|
||||||
file_name: value.name,
|
file_name: value.name,
|
||||||
};
|
};
|
||||||
|
|
||||||
const presignedUrlResponseClinicLogo = await getPresignedUrl(
|
const presignedUrlResponseClinicLogo = await getPresignedUrl(filePayload);
|
||||||
filePayload,
|
|
||||||
);
|
|
||||||
|
|
||||||
await uploadToS3(
|
await uploadToS3(
|
||||||
value,
|
value,
|
||||||
presignedUrlResponseClinicLogo?.data?.data?.api_url
|
presignedUrlResponseClinicLogo?.data?.data?.api_url
|
||||||
);
|
);
|
||||||
|
|
||||||
formik.setFieldValue("clinicLogo", presignedUrlResponseClinicLogo?.data?.data?.key);
|
formik.setFieldValue(
|
||||||
|
"clinicLogo",
|
||||||
|
presignedUrlResponseClinicLogo?.data?.data?.key
|
||||||
|
);
|
||||||
|
|
||||||
// Return a temporary local URL for preview purposes
|
// Return a temporary local URL for preview purposes
|
||||||
return URL.createObjectURL(value);
|
return URL.createObjectURL(value);
|
||||||
|
|
@ -574,15 +575,13 @@ function YourDetailsForm() {
|
||||||
|
|
||||||
// Set uploaded file URL
|
// Set uploaded file URL
|
||||||
const setUploadedFileUrl = (documentName, fileUrl) => {
|
const setUploadedFileUrl = (documentName, fileUrl) => {
|
||||||
console.log('Document Name:', documentName);
|
|
||||||
console.log('File URL:', fileUrl);
|
|
||||||
console.log('File URL Type:', typeof fileUrl);
|
|
||||||
|
|
||||||
if (documentName && fileUrl !== undefined) {
|
if (documentName && fileUrl !== undefined) {
|
||||||
formik.setFieldValue(documentName, fileUrl);
|
formik.setFieldValue(documentName, fileUrl);
|
||||||
console.log('After setting value:', formik.values[documentName]);
|
|
||||||
} else {
|
} else {
|
||||||
console.error('Invalid parameters for setUploadedFileUrl:', { documentName, fileUrl });
|
console.error("Invalid parameters for setUploadedFileUrl:", {
|
||||||
|
documentName,
|
||||||
|
fileUrl,
|
||||||
|
});
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
@ -629,6 +628,10 @@ function YourDetailsForm() {
|
||||||
}
|
}
|
||||||
|
|
||||||
const handleSaveAndNext = async () => {
|
const handleSaveAndNext = async () => {
|
||||||
|
if (!otpField) {
|
||||||
|
pushNotification("Please Request OTP first", NOTIFICATION.ERROR);
|
||||||
|
return;
|
||||||
|
}
|
||||||
if (!otpVerified) {
|
if (!otpVerified) {
|
||||||
pushNotification("Please verify OTP first", NOTIFICATION.ERROR);
|
pushNotification("Please verify OTP first", NOTIFICATION.ERROR);
|
||||||
otpButtonRef.current?.focus();
|
otpButtonRef.current?.focus();
|
||||||
|
|
@ -649,8 +652,6 @@ function YourDetailsForm() {
|
||||||
|
|
||||||
const errors = Object.keys(formikError);
|
const errors = Object.keys(formikError);
|
||||||
|
|
||||||
console.log(errors)
|
|
||||||
|
|
||||||
if (errors.length) {
|
if (errors.length) {
|
||||||
// Find the first invalid field and focus it
|
// Find the first invalid field and focus it
|
||||||
const firstErrorField = errors[0];
|
const firstErrorField = errors[0];
|
||||||
|
|
@ -766,50 +767,6 @@ function YourDetailsForm() {
|
||||||
/>
|
/>
|
||||||
</Grid>
|
</Grid>
|
||||||
|
|
||||||
{/* email id grid */}
|
|
||||||
<Grid item md={4} sm={6} xs={12}>
|
|
||||||
<InputLabel className={classes.inputLabel}>
|
|
||||||
Your Official Email ID*
|
|
||||||
</InputLabel>
|
|
||||||
<TextField
|
|
||||||
fullWidth
|
|
||||||
placeholder="Enter Your Email"
|
|
||||||
color="secondary"
|
|
||||||
variant="outlined"
|
|
||||||
name="email"
|
|
||||||
value={formik.values.email}
|
|
||||||
onChange={formik.handleChange}
|
|
||||||
onBlur={formik.handleBlur}
|
|
||||||
inputRef={fieldRefs.email}
|
|
||||||
error={Boolean(
|
|
||||||
formik.errors.email && formik.touched.email
|
|
||||||
)}
|
|
||||||
helperText={
|
|
||||||
formik.errors.email && formik.touched.email
|
|
||||||
? formik.errors.email
|
|
||||||
: ""
|
|
||||||
}
|
|
||||||
InputProps={{
|
|
||||||
endAdornment: (
|
|
||||||
<InputAdornment position="end">
|
|
||||||
<Button
|
|
||||||
variant="text"
|
|
||||||
color="info"
|
|
||||||
disabled={!formik.values.email}
|
|
||||||
onClick={handleOTPButton}
|
|
||||||
ref={otpButtonRef}
|
|
||||||
>
|
|
||||||
Request OTP
|
|
||||||
</Button>
|
|
||||||
</InputAdornment>
|
|
||||||
),
|
|
||||||
}}
|
|
||||||
/>
|
|
||||||
<Typography className={classes.emailNote}>
|
|
||||||
Note: This will be your login ID.
|
|
||||||
</Typography>
|
|
||||||
</Grid>
|
|
||||||
|
|
||||||
{/* mobile numer grid */}
|
{/* mobile numer grid */}
|
||||||
<Grid item md={4} sm={6} xs={12}>
|
<Grid item md={4} sm={6} xs={12}>
|
||||||
<InputLabel className={classes.inputLabel}>
|
<InputLabel className={classes.inputLabel}>
|
||||||
|
|
@ -846,7 +803,6 @@ function YourDetailsForm() {
|
||||||
onChange={formik.handleChange}
|
onChange={formik.handleChange}
|
||||||
onBlur={formik.handleBlur}
|
onBlur={formik.handleBlur}
|
||||||
inputRef={fieldRefs.mobilePrefix}
|
inputRef={fieldRefs.mobilePrefix}
|
||||||
defaultValue={"61"}
|
|
||||||
>
|
>
|
||||||
{mobilePrefixOptions.map((option) => (
|
{mobilePrefixOptions.map((option) => (
|
||||||
<MenuItem
|
<MenuItem
|
||||||
|
|
@ -855,7 +811,7 @@ function YourDetailsForm() {
|
||||||
border: "none",
|
border: "none",
|
||||||
}}
|
}}
|
||||||
key={option.id}
|
key={option.id}
|
||||||
value={option.id}
|
value={option.name}
|
||||||
>
|
>
|
||||||
{option.name}
|
{option.name}
|
||||||
</MenuItem>
|
</MenuItem>
|
||||||
|
|
@ -879,6 +835,53 @@ function YourDetailsForm() {
|
||||||
/>
|
/>
|
||||||
</Grid>
|
</Grid>
|
||||||
|
|
||||||
|
{/* email id grid */}
|
||||||
|
<Grid item md={4} sm={6} xs={12}>
|
||||||
|
<InputLabel className={classes.inputLabel}>
|
||||||
|
Your Official Email ID*
|
||||||
|
</InputLabel>
|
||||||
|
<TextField
|
||||||
|
fullWidth
|
||||||
|
placeholder="Enter Your Email"
|
||||||
|
color="secondary"
|
||||||
|
variant="outlined"
|
||||||
|
name="email"
|
||||||
|
value={formik.values.email}
|
||||||
|
onChange={formik.handleChange}
|
||||||
|
onBlur={formik.handleBlur}
|
||||||
|
disabled={otpVerified}
|
||||||
|
inputRef={fieldRefs.email}
|
||||||
|
error={Boolean(
|
||||||
|
formik.errors.email && formik.touched.email
|
||||||
|
)}
|
||||||
|
helperText={
|
||||||
|
formik.errors.email && formik.touched.email
|
||||||
|
? formik.errors.email
|
||||||
|
: ""
|
||||||
|
}
|
||||||
|
InputProps={{
|
||||||
|
endAdornment: (
|
||||||
|
<InputAdornment position="end">
|
||||||
|
<Button
|
||||||
|
variant="text"
|
||||||
|
color="info"
|
||||||
|
disabled={
|
||||||
|
!formik.values.email || otpVerified
|
||||||
|
}
|
||||||
|
onClick={handleOTPButton}
|
||||||
|
ref={otpButtonRef}
|
||||||
|
>
|
||||||
|
Request OTP
|
||||||
|
</Button>
|
||||||
|
</InputAdornment>
|
||||||
|
),
|
||||||
|
}}
|
||||||
|
/>
|
||||||
|
<Typography className={classes.emailNote}>
|
||||||
|
Note: This will be your login ID.
|
||||||
|
</Typography>
|
||||||
|
</Grid>
|
||||||
|
|
||||||
{/* otp verification grid */}
|
{/* otp verification grid */}
|
||||||
{otpField && (
|
{otpField && (
|
||||||
<Grid item md={4} sm={6} xs={12}>
|
<Grid item md={4} sm={6} xs={12}>
|
||||||
|
|
@ -894,10 +897,17 @@ function YourDetailsForm() {
|
||||||
value={otp}
|
value={otp}
|
||||||
onChange={(e) => setOtp(e.target.value)}
|
onChange={(e) => setOtp(e.target.value)}
|
||||||
onBlur={formik.handleBlur}
|
onBlur={formik.handleBlur}
|
||||||
|
disabled={otpVerified}
|
||||||
InputProps={{
|
InputProps={{
|
||||||
type: "text",
|
type: "text",
|
||||||
pattern: "[0-9]*",
|
pattern: "[0-9]*",
|
||||||
endAdornment: (
|
endAdornment: otpVerified ? (
|
||||||
|
<InputAdornment position="end">
|
||||||
|
<VerifiedIcon
|
||||||
|
className={classes.verifyIcon}
|
||||||
|
/>
|
||||||
|
</InputAdornment>
|
||||||
|
) : (
|
||||||
<InputAdornment position="end">
|
<InputAdornment position="end">
|
||||||
<Button
|
<Button
|
||||||
variant="text"
|
variant="text"
|
||||||
|
|
@ -1143,12 +1153,12 @@ function YourDetailsForm() {
|
||||||
{/* Business Phone grid */}
|
{/* Business Phone grid */}
|
||||||
<Grid item md={4} sm={6} xs={12}>
|
<Grid item md={4} sm={6} xs={12}>
|
||||||
<InputLabel className={classes.inputLabel}>
|
<InputLabel className={classes.inputLabel}>
|
||||||
Business PhoneNumber*
|
Business Phone Number*
|
||||||
</InputLabel>
|
</InputLabel>
|
||||||
<TextField
|
<TextField
|
||||||
className={classes.mobileNumberInput}
|
className={classes.mobileNumberInput}
|
||||||
fullWidth
|
fullWidth
|
||||||
placeholder="Enter Mobile Number"
|
placeholder="Enter Business Phone Number"
|
||||||
color="secondary"
|
color="secondary"
|
||||||
variant="outlined"
|
variant="outlined"
|
||||||
name="businessPhone"
|
name="businessPhone"
|
||||||
|
|
@ -1178,7 +1188,6 @@ function YourDetailsForm() {
|
||||||
onChange={formik.handleChange}
|
onChange={formik.handleChange}
|
||||||
onBlur={formik.handleBlur}
|
onBlur={formik.handleBlur}
|
||||||
inputRef={fieldRefs.businessPhonePrefix}
|
inputRef={fieldRefs.businessPhonePrefix}
|
||||||
defaultValue={"61"}
|
|
||||||
>
|
>
|
||||||
{mobilePrefixOptions.map((option) => (
|
{mobilePrefixOptions.map((option) => (
|
||||||
<MenuItem
|
<MenuItem
|
||||||
|
|
@ -1252,7 +1261,6 @@ function YourDetailsForm() {
|
||||||
inputRef={
|
inputRef={
|
||||||
fieldRefs.emergencyBusinessPhonePrefix
|
fieldRefs.emergencyBusinessPhonePrefix
|
||||||
}
|
}
|
||||||
defaultValue={"61"}
|
|
||||||
>
|
>
|
||||||
{mobilePrefixOptions.map((option) => (
|
{mobilePrefixOptions.map((option) => (
|
||||||
<MenuItem
|
<MenuItem
|
||||||
|
|
@ -1288,7 +1296,7 @@ function YourDetailsForm() {
|
||||||
{/* Business Fax grid */}
|
{/* Business Fax grid */}
|
||||||
<Grid item md={4} sm={6} xs={12}>
|
<Grid item md={4} sm={6} xs={12}>
|
||||||
<InputLabel className={classes.inputLabel}>
|
<InputLabel className={classes.inputLabel}>
|
||||||
Business Fax Number*
|
Business Fax Number
|
||||||
</InputLabel>
|
</InputLabel>
|
||||||
<TextField
|
<TextField
|
||||||
// className={classes.mobileNumberInput}
|
// className={classes.mobileNumberInput}
|
||||||
|
|
@ -1399,7 +1407,6 @@ function YourDetailsForm() {
|
||||||
</InputLabel>
|
</InputLabel>
|
||||||
<TextField
|
<TextField
|
||||||
fullWidth
|
fullWidth
|
||||||
label="PMS ID"
|
|
||||||
name="practiceId"
|
name="practiceId"
|
||||||
value={formik.values.practiceId}
|
value={formik.values.practiceId}
|
||||||
onChange={formik.handleChange}
|
onChange={formik.handleChange}
|
||||||
|
|
@ -1425,7 +1432,6 @@ function YourDetailsForm() {
|
||||||
</InputLabel>
|
</InputLabel>
|
||||||
<TextField
|
<TextField
|
||||||
fullWidth
|
fullWidth
|
||||||
label="Practice Name"
|
|
||||||
name="practiceName"
|
name="practiceName"
|
||||||
value={formik.values.practiceName}
|
value={formik.values.practiceName}
|
||||||
onChange={formik.handleChange}
|
onChange={formik.handleChange}
|
||||||
|
|
@ -1458,7 +1464,14 @@ function YourDetailsForm() {
|
||||||
|
|
||||||
{/* Clinic logo grid */}
|
{/* Clinic logo grid */}
|
||||||
<Grid item md={5} sm={12}>
|
<Grid item md={5} sm={12}>
|
||||||
<InputLabel className={classes.inputLabel}>
|
<InputLabel
|
||||||
|
sx={{
|
||||||
|
display: "flex",
|
||||||
|
alignItems: "center",
|
||||||
|
justifyContent: "space-between",
|
||||||
|
}}
|
||||||
|
className={classes.inputLabel}
|
||||||
|
>
|
||||||
Add Business Logo
|
Add Business Logo
|
||||||
{(logoImage || formik.values.clinicLogo) && (
|
{(logoImage || formik.values.clinicLogo) && (
|
||||||
<div>
|
<div>
|
||||||
|
|
@ -1886,7 +1899,7 @@ function YourDetailsForm() {
|
||||||
>
|
>
|
||||||
<Box mr={2}>
|
<Box mr={2}>
|
||||||
<Tooltip title="Download the contract template">
|
<Tooltip title="Download the contract template">
|
||||||
<Button>Download Template</Button>
|
<Button>Download Contract Template</Button>
|
||||||
</Tooltip>
|
</Tooltip>
|
||||||
</Box>
|
</Box>
|
||||||
<CustomFileUpload
|
<CustomFileUpload
|
||||||
|
|
@ -1925,7 +1938,10 @@ function YourDetailsForm() {
|
||||||
name="termsAccepted"
|
name="termsAccepted"
|
||||||
/>
|
/>
|
||||||
</Box>
|
</Box>
|
||||||
<Typography className={classes.checkBoxLabel}>
|
<Typography
|
||||||
|
ref={fieldRefs.termsAccepted}
|
||||||
|
className={classes.checkBoxLabel}
|
||||||
|
>
|
||||||
I agree to{" "}
|
I agree to{" "}
|
||||||
<span>
|
<span>
|
||||||
{" "}
|
{" "}
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,33 @@
|
||||||
|
import { Box } from "@mui/system";
|
||||||
|
import React from "react";
|
||||||
|
import { useStyles } from "./signupChargesStyles";
|
||||||
|
import PageHeader from "../../components/PageHeader";
|
||||||
|
import PaymentConfig from "../Dashboard/components/PaymentConfig";
|
||||||
|
|
||||||
|
const SignupCharges = () => {
|
||||||
|
const classes = useStyles();
|
||||||
|
|
||||||
|
const breadcrumbs = [
|
||||||
|
{
|
||||||
|
label: "Dashboard",
|
||||||
|
path: "/",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: "Signup Charges",
|
||||||
|
path: "/signup-charges",
|
||||||
|
},
|
||||||
|
];
|
||||||
|
|
||||||
|
return (
|
||||||
|
<Box>
|
||||||
|
<Box>
|
||||||
|
<PageHeader pageTitle="Signup Charges" hideAddButton />
|
||||||
|
<Box>
|
||||||
|
<PaymentConfig />
|
||||||
|
</Box>
|
||||||
|
</Box>
|
||||||
|
</Box>
|
||||||
|
);
|
||||||
|
};
|
||||||
|
|
||||||
|
export default SignupCharges;
|
||||||
|
|
@ -0,0 +1,119 @@
|
||||||
|
import makeStyles from '@mui/styles/makeStyles';
|
||||||
|
import { pxToRem } from '../../theme/typography';
|
||||||
|
|
||||||
|
export const useStyles = makeStyles((theme) => ({
|
||||||
|
chipClass: {
|
||||||
|
height: 'fit-content',
|
||||||
|
minHeight: '30px',
|
||||||
|
padding: '2px',
|
||||||
|
alignItems: 'center',
|
||||||
|
},
|
||||||
|
statusColor: {
|
||||||
|
color: theme.palette.primary.main,
|
||||||
|
fontSize: pxToRem(10),
|
||||||
|
},
|
||||||
|
tabsBox: {
|
||||||
|
display: 'flex',
|
||||||
|
justifyContent: ' space-around',
|
||||||
|
// width: '55%',
|
||||||
|
marginTop: theme.spacing(0.5),
|
||||||
|
marginRight: theme.spacing(5.0),
|
||||||
|
alignItems: 'center',
|
||||||
|
},
|
||||||
|
secondaryButton: {
|
||||||
|
width: '200px',
|
||||||
|
height: '46px',
|
||||||
|
borderRadius: '8px',
|
||||||
|
justifyContent: 'space-evenly',
|
||||||
|
fontSize: pxToRem(16),
|
||||||
|
},
|
||||||
|
tableActionIcons: {
|
||||||
|
marginRight: theme.spacing(1.4),
|
||||||
|
width: '15px',
|
||||||
|
},
|
||||||
|
companyNameTableColumn: {
|
||||||
|
display: 'flex',
|
||||||
|
alignItems: 'center',
|
||||||
|
},
|
||||||
|
companyName: {
|
||||||
|
marginLeft: theme.spacing(1),
|
||||||
|
fontSize: pxToRem(14),
|
||||||
|
objectFit: 'contain',
|
||||||
|
width: '260px',
|
||||||
|
},
|
||||||
|
companyNameLink: {
|
||||||
|
textDecoration: 'none',
|
||||||
|
color: theme.palette.grey[10],
|
||||||
|
'&:hover': {
|
||||||
|
color: theme.palette.info.main,
|
||||||
|
textDecoration: 'underline',
|
||||||
|
},
|
||||||
|
},
|
||||||
|
companyWebsiteLabel: {
|
||||||
|
fontSize: pxToRem(12),
|
||||||
|
},
|
||||||
|
companyNameLogo: {
|
||||||
|
height: '40px',
|
||||||
|
width: '40px',
|
||||||
|
borderRadius: theme.shape.borderRadiusComponent,
|
||||||
|
objectFit: 'contain',
|
||||||
|
},
|
||||||
|
sendEmailStatus: {
|
||||||
|
fontSize: pxToRem(14),
|
||||||
|
color: theme.palette.primary.main,
|
||||||
|
},
|
||||||
|
sendEmailLastSentMailDate: {
|
||||||
|
fontSize: pxToRem(12),
|
||||||
|
},
|
||||||
|
addDiscountCodeLink: {
|
||||||
|
fontSize: pxToRem(12),
|
||||||
|
color: theme.palette.primary.main,
|
||||||
|
},
|
||||||
|
addDiscountCodeLabel: {
|
||||||
|
fontSize: pxToRem(14),
|
||||||
|
backgroundColor: theme.palette.common.white,
|
||||||
|
color: theme.palette.common.black,
|
||||||
|
},
|
||||||
|
customModel: {
|
||||||
|
display: 'flex',
|
||||||
|
flexDirection: 'column',
|
||||||
|
justifyContent: 'center',
|
||||||
|
alignItems: 'center',
|
||||||
|
height: '100%',
|
||||||
|
},
|
||||||
|
customModelBox: {
|
||||||
|
paddingLeft: theme.spacing(5),
|
||||||
|
paddingRight: theme.spacing(5),
|
||||||
|
textAlign: 'center',
|
||||||
|
display: 'flex',
|
||||||
|
flexDirection: 'column',
|
||||||
|
justifyContent: 'center',
|
||||||
|
alignItems: 'center',
|
||||||
|
// height: '100%',
|
||||||
|
border: 'none',
|
||||||
|
},
|
||||||
|
newPlanTitleText: {
|
||||||
|
fontSize: pxToRem(28),
|
||||||
|
fontFamily: theme.fontFamily.bold,
|
||||||
|
},
|
||||||
|
newPlanSubTitleText: {
|
||||||
|
fontSize: pxToRem(18),
|
||||||
|
padding: theme.spacing(1),
|
||||||
|
},
|
||||||
|
addPlanSuccessIcon: {
|
||||||
|
padding: theme.spacing(2),
|
||||||
|
paddingTop: theme.spacing(1),
|
||||||
|
},
|
||||||
|
planAddedText: {
|
||||||
|
fontSize: pxToRem(12),
|
||||||
|
color: theme.palette.grey[54],
|
||||||
|
display: 'flex',
|
||||||
|
alignItems: 'center',
|
||||||
|
alignSelf: 'center',
|
||||||
|
},
|
||||||
|
verifyIcon: {
|
||||||
|
marginLeft: theme.spacing(0.3),
|
||||||
|
fontSize: pxToRem(12),
|
||||||
|
color: theme.palette.grey[54],
|
||||||
|
},
|
||||||
|
}));
|
||||||
Loading…
Reference in New Issue