Compare commits

..

2 Commits

Author SHA1 Message Date
Your Name 7b7d8fced5 nov 14 push 2025-11-14 10:06:15 +05:30
Your Name 886015cac4 issue solved 2025-11-13 18:15:01 +05:30
24 changed files with 1326 additions and 1095 deletions

View File

@ -80,7 +80,6 @@
&.open { &.open {
background: #050d36 !important; background: #050d36 !important;
color: #23bbff; color: #23bbff;
border-right: 2px solid #23bbff;
font-weight: 600; font-weight: 600;
width: 95%; width: 95%;
} }
@ -89,14 +88,16 @@
background: #050d36 !important; background: #050d36 !important;
color: #ffffff !important; color: #ffffff !important;
font-weight: 600; font-weight: 600;
border-radius: 6px; border-radius: 6px 4px 4px 6px;
border-right: 2px solid #23bbff !important;
.pozo-menu-icon { .pozo-menu-icon {
color: #23bbff !important; color: #ffffff !important;
} }
.pozo-menu-label { .pozo-menu-label {
color: #ffffff !important; color: #ffffff !important;
font-weight: 500 !important;
} }
.pozo-menu-arrow { .pozo-menu-arrow {
@ -151,7 +152,7 @@
flex: 1; flex: 1;
color: #ffffff; color: #ffffff;
font-size: 12px; font-size: 12px;
font-weight: 500; font-weight: 400;
word-break: break-word; word-break: break-word;
line-height: 1.2; line-height: 1.2;
font-family: "Poppins", sans-serif !important; font-family: "Poppins", sans-serif !important;
@ -403,7 +404,7 @@
color: #fff; color: #fff;
.pozo-menu-item { .pozo-menu-item {
color: rgba(255, 255, 255, 0.85); color: #ffffffd9;
&:hover { &:hover {
background: #1890ff; background: #1890ff;

View File

@ -182,7 +182,8 @@ const AdminTaxForm = () => {
setpage(current); setpage(current);
}; };
const columns = useMemo(() => [ const columns = useMemo(
() => [
{ {
title: 'Sl.NO', title: 'Sl.NO',
key: 'sno', key: 'sno',
@ -213,7 +214,8 @@ const AdminTaxForm = () => {
); );
}, },
sorter: (a, b) => a?.TaxIdName?.localeCompare(b?.TaxIdName), sorter: (a, b) => a?.TaxIdName?.localeCompare(b?.TaxIdName),
sortOrder: sortedInfo.columnKey === 'TaxIdName' ? sortedInfo.order : null, sortOrder:
sortedInfo.columnKey === 'TaxIdName' ? sortedInfo.order : null,
ellipsis: true, ellipsis: true,
}, },
{ {
@ -223,8 +225,10 @@ const AdminTaxForm = () => {
width: '100px', width: '100px',
align: 'right', align: 'right',
render: (text) => <a style={{ color: 'black' }}>{text}</a>, render: (text) => <a style={{ color: 'black' }}>{text}</a>,
sorter: (a, b) => parseFloat(a.TaxPercentage) - parseFloat(b.TaxPercentage), sorter: (a, b) =>
sortOrder: sortedInfo.columnKey === 'TaxPercentage' ? sortedInfo.order : null, parseFloat(a.TaxPercentage) - parseFloat(b.TaxPercentage),
sortOrder:
sortedInfo.columnKey === 'TaxPercentage' ? sortedInfo.order : null,
ellipsis: true, ellipsis: true,
}, },
@ -238,7 +242,8 @@ const AdminTaxForm = () => {
<a style={{ color: 'black' }}>{ExtractDateFormate(text)}</a> <a style={{ color: 'black' }}>{ExtractDateFormate(text)}</a>
), ),
sorter: (a, b) => new Date(a.EffectiveFrom) - new Date(b.EffectiveFrom), sorter: (a, b) => new Date(a.EffectiveFrom) - new Date(b.EffectiveFrom),
sortOrder: sortedInfo.columnKey === 'EffectiveFrom' ? sortedInfo.order : null, sortOrder:
sortedInfo.columnKey === 'EffectiveFrom' ? sortedInfo.order : null,
ellipsis: true, ellipsis: true,
}, },
{ {
@ -249,10 +254,13 @@ const AdminTaxForm = () => {
align: 'right', align: 'right',
render: (text) => <a style={{ color: 'black' }}>{text}</a>, render: (text) => <a style={{ color: 'black' }}>{text}</a>,
sorter: (a, b) => a?.Reference?.localeCompare(b?.Reference), sorter: (a, b) => a?.Reference?.localeCompare(b?.Reference),
sortOrder: sortedInfo.columnKey === 'Reference' ? sortedInfo.order : null, sortOrder:
sortedInfo.columnKey === 'Reference' ? sortedInfo.order : null,
ellipsis: true, ellipsis: true,
}, },
], [searchedText, sortedInfo, page]); ],
[searchedText, sortedInfo, page]
);
const onComplete = useCallback(() => { const onComplete = useCallback(() => {
setMessageData(null); setMessageData(null);
@ -272,7 +280,7 @@ const AdminTaxForm = () => {
} }
}; };
return ( return (
<div className="userPageTable"> <div className="userPageTable adminTaxMaster">
<div className="userPageContent"> <div className="userPageContent">
<Messages <Messages
messageType={messageType} messageType={messageType}
@ -282,8 +290,7 @@ const AdminTaxForm = () => {
<div className="formAddNew"> <div className="formAddNew">
<div> <div>
<FormHeader title={'Tax'} /> <FormHeader title={'Tax'} />
<div className="searchAddDiv"> <div className="searchAddDiv"></div>
</div>
</div> </div>
<div className="searchAddDiv"> <div className="searchAddDiv">
<div className="formSearch"> <div className="formSearch">
@ -322,7 +329,7 @@ const AdminTaxForm = () => {
<div className="formDiv "> <div className="formDiv ">
<Form className="formDivAnt" ref={formRef} onFinish={onFinish}> <Form className="formDivAnt" ref={formRef} onFinish={onFinish}>
<div className="formDivS "> <div className="formDivS ">
<div className="inputForm"> <div className="inputForm addTaxinputDrawer">
<Form.Item <Form.Item
name="TaxName" name="TaxName"
rules={[ rules={[
@ -381,6 +388,14 @@ const AdminTaxForm = () => {
}, },
]} ]}
> >
<div
style={{
display: 'flex',
flexDirection: 'column',
}}
>
<label style={{color:"#5a5a5a", fontSize:"12px", fontFamily:"Arial",padding:"0 6px"}} htmlFor="Effective From">Effective From</label>
<DatePic <DatePic
field="Effective From" field="Effective From"
name="Effective From" name="Effective From"
@ -412,6 +427,7 @@ const AdminTaxForm = () => {
</span> </span>
} }
/> />
</div>
</Form.Item> </Form.Item>
<Form.Item <Form.Item
@ -423,7 +439,8 @@ const AdminTaxForm = () => {
}, },
{ {
max: 20, max: 20,
message: 'Reference cannot be more than 20 characters', message:
'Reference cannot be more than 20 characters',
}, },
{ {
validator: async (_, value) => { validator: async (_, value) => {

View File

@ -45,7 +45,7 @@ import {
FaParking, FaParking,
} from 'react-icons/fa'; } from 'react-icons/fa';
import { CiMenuBurger } from 'react-icons/ci'; import { CiMenuBurger } from 'react-icons/ci';
import { IoCloseOutline } from 'react-icons/io5'; import { IoClose, IoCloseOutline } from 'react-icons/io5';
import { FaCalendar } from 'react-icons/fa6'; import { FaCalendar } from 'react-icons/fa6';
import { RiPrinterFill } from 'react-icons/ri'; import { RiPrinterFill } from 'react-icons/ri';
import { GiShoppingBag } from 'react-icons/gi'; import { GiShoppingBag } from 'react-icons/gi';
@ -542,6 +542,7 @@ const BSNavbar3 = ({ optionNames }) => {
{renderWithTooltip(<BSNavBarAddUser />, 'Add Customer')} {renderWithTooltip(<BSNavBarAddUser />, 'Add Customer')}
</span> </span>
)} )}
<IoClose className="DropDownsCustomerClose" strokeWidth={3} />
</div> </div>
{offerOption && ( {offerOption && (
@ -718,6 +719,16 @@ const BSNavbar3 = ({ optionNames }) => {
</div> </div>
)} )}
</TooltipWrapper> </TooltipWrapper>
{verifyproduct && (
<div style={{ color: 'green' }}>
<TooltipWrapper title={'Verfied Products'} isMobile={isMobile}>
<div>
<VerfiedProducts />
</div>
</TooltipWrapper>
</div>
)}
</div> </div>
{isMobile && ( {isMobile && (
<div <div
@ -728,15 +739,7 @@ const BSNavbar3 = ({ optionNames }) => {
<BSMobilePrintSettings /> <BSMobilePrintSettings />
</div> </div>
)} )}
{verifyproduct && (
<div style={{ color: 'green' }}>
<TooltipWrapper title={'Verfied Products'} isMobile={isMobile}>
<div>
<VerfiedProducts />
</div>
</TooltipWrapper>
</div>
)}
<div className="userDates"> <div className="userDates">
<div className="datesNewtimedate"> <div className="datesNewtimedate">
<CurrentDateDisplay /> <CurrentDateDisplay />

View File

@ -195,10 +195,11 @@ const VerfiedProducts = () => {
<> <>
<div> <div>
<RiVerifiedBadgeFill <RiVerifiedBadgeFill
style={{ cursor: 'pointer' }} style={{ cursor: 'pointer', marginTop: '2px', display: 'flex' }}
onClick={() => setisOpenModal((p) => !p)} onClick={() => setisOpenModal((p) => !p)}
size={25} size={22}
color="#fff" color="#fff"
className="RiVerifiedBadgeFill"
/> />
</div> </div>

View File

@ -10,6 +10,14 @@
height: 100%; height: 100%;
display: flex; display: flex;
flex-direction: column; flex-direction: column;
.billing-table-header:nth-child(5){
text-align: right !important;
}
.Table3-item-price,
.Table-3_qty,
.Table3-items {
padding: 10px 6px !important;
}
} }
// Shopping Cart Header // Shopping Cart Header
@ -139,7 +147,7 @@
font-weight: 700; font-weight: 700;
color: #059669; color: #059669;
text-align: right; text-align: right;
font-family: 'Inter', sans-serif; font-family: "Inter", sans-serif;
} }
.delete-action { .delete-action {
@ -162,7 +170,6 @@
border-radius: 4px; border-radius: 4px;
transition: background-color 0.2s; transition: background-color 0.2s;
svg { svg {
color: #ef4444; color: #ef4444;
font-size: 1.125rem; font-size: 1.125rem;
@ -194,7 +201,6 @@
cursor: pointer; cursor: pointer;
transition: all 0.2s; transition: all 0.2s;
svg { svg {
font-size: 1.25rem; font-size: 1.25rem;
color: #6b7280; color: #6b7280;
@ -216,7 +222,6 @@
cursor: pointer; cursor: pointer;
transition: all 0.2s; transition: all 0.2s;
svg { svg {
font-size: 1.125rem; font-size: 1.125rem;
} }
@ -259,13 +264,11 @@
&.card-button { &.card-button {
background: #8b5cf6; background: #8b5cf6;
color: white; color: white;
} }
&.upi-button { &.upi-button {
background: #0ea5e9; background: #0ea5e9;
color: white; color: white;
} }
} }
@ -290,7 +293,7 @@
font-weight: 700; font-weight: 700;
cursor: pointer; cursor: pointer;
transition: all 0.2s; transition: all 0.2s;
font-family: 'Inter', sans-serif; font-family: "Inter", sans-serif;
svg { svg {
font-size: 1.5rem; font-size: 1.5rem;
@ -299,7 +302,6 @@
// Responsive Design // Responsive Design
@media (max-width: 768px) { @media (max-width: 768px) {
.standatdTableBill3 { .standatdTableBill3 {
border-radius: 8px; border-radius: 8px;
} }

View File

@ -356,9 +356,11 @@ const SalesCountForStandard = ({
)} )}
</div> </div>
} }
onClick={() =>OverAllOrderCount || 0 >0 && setIsModalOpen(true)} onClick={() =>
OverAllOrderCount || (0 > 0 && setIsModalOpen(true))
}
> >
<FaChartLine color="#fde047" /> <FaChartLine color="#ffffffff" />
<div className="NetAmountNew"> <div className="NetAmountNew">
{isMobile ? 'Count' : 'Sales Count'} : {OverAllOrderCount} {isMobile ? 'Count' : 'Sales Count'} : {OverAllOrderCount}
</div> </div>
@ -372,9 +374,11 @@ const SalesCountForStandard = ({
fontSize: '0.9rem', fontSize: '0.9rem',
cursor: 'pointer', cursor: 'pointer',
}} }}
onClick={() => OverAllOrderCount || 0 >0 && setIsModalOpen(true)} onClick={() =>
OverAllOrderCount || (0 > 0 && setIsModalOpen(true))
}
> >
<FaChartLine color="#fde047" /> <FaChartLine color="#ffffffff" />
<div className="NetAmountNew"> <div className="NetAmountNew">
{isMobile ? 'Count' : 'Sales Count'} : {OverAllOrderCount} {isMobile ? 'Count' : 'Sales Count'} : {OverAllOrderCount}
</div> </div>
@ -472,7 +476,7 @@ const SalesCountForStandard = ({
onClick={() => netAmount > 0 && setIsNetAmtModalOpen(true)} onClick={() => netAmount > 0 && setIsNetAmtModalOpen(true)}
style={{ cursor: 'pointer' }} style={{ cursor: 'pointer' }}
> >
<FaRupeeSign color="#fde047" /> <FaRupeeSign color="#ffffffff" />
<div className="NetAmountNew"> <div className="NetAmountNew">
{isMobile ? 'NA' : 'Net Amount'} : {safeRound(netAmount)} {isMobile ? 'NA' : 'Net Amount'} : {safeRound(netAmount)}
</div> </div>
@ -532,8 +536,6 @@ const SalesCountForStandard = ({
cursor: 'pointer', cursor: 'pointer',
}} }}
/> />
{/* <button className="BookingCloseButton"
onClick={OpenBookingModal}>Booking Close</button> */}
</TooltipWrapper> </TooltipWrapper>
</div> </div>
) : ( ) : (

View File

@ -699,7 +699,7 @@ const EmpAccessForm = ({ formType }) => {
</div> </div>
</Form> </Form>
<div className="reportTable"> <div className="reportTable empAccessreportTable">
<Tables <Tables
columns={columns} columns={columns}
data={SelectedUserData ? TableData : []} data={SelectedUserData ? TableData : []}

View File

@ -1,14 +1,12 @@
.other-services-container { .other-services-container {
background: #fff; background: #fff;
padding: 24px; // padding: 24px;
border-radius: 8px; border-radius: 8px;
max-width: 1100px; max-width: 1100px;
// margin: 24px auto 0 auto; // margin: 24px auto 0 auto;
box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04); box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
width: 100%; width: 100%;
height: 100%; height: 100%;
} }
// .other-service-row { // .other-service-row {
@ -23,7 +21,8 @@
/* gap: 24px; */ /* gap: 24px; */
margin-bottom: 16px; margin-bottom: 16px;
align-items: center; align-items: center;
justify-content: center;} justify-content: center;
}
// .other-service-group { // .other-service-group {
// flex: 1 1 300px; // flex: 1 1 300px;
// min-width: 250px; // min-width: 250px;
@ -33,13 +32,15 @@
// } // }
.other-service-group { .other-service-group {
display: flex; display: flex;
flex-direction: row; flex-direction: row;
justify-content: flex-start; justify-content: flex-start;
width: 100%; width: 100%;
flex-wrap: wrap; flex-wrap: wrap;
column-gap: 20px; column-gap: 20px;
.ant-form-item{
margin-bottom: 10px !important;
}
} }
.other-service-checkbox-group { .other-service-checkbox-group {
min-width: 180px; min-width: 180px;
@ -58,6 +59,7 @@
.other-service-row { .other-service-row {
flex-direction: column; flex-direction: column;
gap: 0; gap: 0;
align-items: flex-start;
} }
.other-service-group { .other-service-group {
min-width: 100%; min-width: 100%;

View File

@ -68,9 +68,8 @@ const PublicQrCode = () => {
const [branchData, setBranchData] = useState([]); const [branchData, setBranchData] = useState([]);
const [page, setPage] = useState(1); const [page, setPage] = useState(1);
const [isPreviewModalOpen, setIsPreviewModalOpen] = useState(false);
const [pdfPreviewUrl, setPdfPreviewUrl] = useState('');
const qrCodeRef = useRef(null); const qrCodeRef = useRef(null);
const printContentRef = useRef(null);
const CompId = getSession('CompId'); const CompId = getSession('CompId');
const BranchId = getSession('BranchId'); const BranchId = getSession('BranchId');
const AppId = getSession('AppId'); const AppId = getSession('AppId');
@ -296,7 +295,7 @@ const PublicQrCode = () => {
if (res?.data?.statusCode == 1) { if (res?.data?.statusCode == 1) {
const QrUrl = `${subDirectory}selfBooking/${res?.data?.ReferenceNo}`; const QrUrl = `${subDirectory}selfBooking/${res?.data?.ReferenceNo}`;
setQrCodeUrl(QrUrl); setQrCodeUrl(QrUrl);
generatePDF(true, QrUrl); setTimeout(() => window.print(), 500);
} }
} catch (error) { } catch (error) {
console.error('HandleSubmit Error:', error); console.error('HandleSubmit Error:', error);
@ -305,187 +304,7 @@ const PublicQrCode = () => {
} }
}; };
// Function to generate PDF
const generatePDF = async (isPreview = false, encrypted) => {
console.log('generatePDF called with:', { isPreview, encrypted });
if (!encrypted) {
setMessageType('error');
setMessageData('Please generate QR code first');
return;
}
try {
// Get booking type name and table name for display
const bookingTypeName =
filtered?.find((item) => item.ConfigId === configId)?.ConfigName ||
'Both';
const tableName =
Tabledata?.find((item) => item.TableId === TableId)?.TableName || '';
// Get branch details
const branch = branchData?.[0] || {};
const branchName = branch.BrName || branch.CompName || '';
const branchMobile = branch.BrMobile || '';
const companyLogo = branch.CompLogo || '';
const branchAddress =
[
branch.Address1,
branch.Address2,
branch.City,
branch.State,
branch.Zip,
]
.filter(Boolean)
.join(', ') || '';
// Create a temporary div for PDF content
const tempDiv = document.createElement('div');
tempDiv.style.padding = '40px';
tempDiv.style.backgroundColor = 'white';
tempDiv.style.fontFamily = 'Arial, sans-serif';
tempDiv.style.textAlign = 'center';
tempDiv.style.width = '600px';
tempDiv.style.margin = '0 auto';
// Add content to the temporary div
tempDiv.innerHTML = `
<div style="margin-bottom: 10px; border-bottom: 2px solid #eee; padding-bottom: 10px;">
${companyLogo ? `<div style="margin-bottom: 10px;"><img id="company-logo" src="${companyLogo}" style="max-width: 120px; max-height: 80px; object-fit: contain;" crossorigin="anonymous" /></div>` : ''}
<h1 style="color: #333; margin: 10px 0; font-size: 24px; font-weight: bold;">${branchName ? branchName : ''}</h1>
<p style="color: #666; margin: 5px 0; font-size: 14px;">${branchAddress ? branchAddress : ''}</p>
<p style="color: #666; margin: 5px 0; font-size: 14px;"><strong>Mobile:</strong> ${branchMobile ? branchMobile : ''}</p>
</div>
<div style="margin-bottom: 30px;">
<h2 style="color: #666; margin-bottom: 20px; font-size: 20px;">Self Booking QR Code</h2>
</div>
<div style="margin-bottom: 30px;">
<div style="display: inline-block; padding: 20px; background: white; border-radius: 8px; box-shadow: 0 2px 8px rgba(0,0,0,0.1);">
<div id="qr-code-container"></div>
</div>
</div>
<div style="margin-top: 20px;">
<p style="font-size: 12px; color: #666; word-break: break-all;">URL: ${encrypted}</p>
</div>
`;
// Add the temporary div to the document
document.body.appendChild(tempDiv);
// Create QR code in the container
const qrContainer = tempDiv.querySelector('#qr-code-container');
const qrCodeSvg = document.createElementNS(
'http://www.w3.org/2000/svg',
'svg'
);
qrCodeSvg.setAttribute('width', '200');
qrCodeSvg.setAttribute('height', '200');
qrCodeSvg.setAttribute('viewBox', '0 0 256 256');
// Use the QRCode library to generate SVG content
const QRCodeLib = await import('qrcode');
const qrDataUrl = await QRCodeLib.toDataURL(encrypted, {
width: 200,
margin: 2,
});
// Create an image element for the QR code
const qrImage = document.createElement('img');
qrImage.src = qrDataUrl;
qrImage.style.width = '200px';
qrImage.style.height = '200px';
qrContainer.appendChild(qrImage);
// Wait for all images to load (QR code and company logo if present)
const imagesToLoad = [qrImage];
const companyLogoImg = tempDiv.querySelector('#company-logo');
if (companyLogoImg) {
imagesToLoad.push(companyLogoImg);
}
await Promise.all(
imagesToLoad.map(
(img) =>
new Promise((resolve) => {
if (img.complete) {
resolve();
} else {
img.onload = resolve;
img.onerror = resolve; // Continue even if logo fails to load
}
})
)
);
// Generate PDF using html2canvas and jsPDF
const canvas = await html2canvas(tempDiv, {
scale: 2,
useCORS: true,
allowTaint: true,
backgroundColor: '#ffffff',
});
const imgData = canvas.toDataURL('image/png');
const pdf = new jsPDF('p', 'mm', 'a4');
const imgWidth = 190;
const pageHeight = 295;
const imgHeight = (canvas.height * imgWidth) / canvas.width;
let heightLeft = imgHeight;
let position = 10;
pdf.addImage(imgData, 'PNG', 10, position, imgWidth, imgHeight);
heightLeft -= pageHeight;
while (heightLeft >= 0) {
position = heightLeft - imgHeight;
pdf.addPage();
pdf.addImage(imgData, 'PNG', 10, position, imgWidth, imgHeight);
heightLeft -= pageHeight;
}
// Clean up
document.body.removeChild(tempDiv);
if (isPreview) {
// Generate blob URL for preview
console.log('Generating PDF preview...');
const pdfBlob = pdf.output('blob');
const pdfUrl = URL.createObjectURL(pdfBlob);
console.log('PDF preview URL created:', pdfUrl);
setPdfPreviewUrl(pdfUrl);
setIsPreviewModalOpen(true);
} else {
// Download the PDF
console.log('Downloading PDF...');
const branch = branchData?.[0] || {};
const branchName = (
branch.BrName ||
branch.CompName ||
'Branch'
).replace(/[^a-zA-Z0-9]/g, '_');
const fileName = `QR_Code_${branchName}_${bookingTypeName}_${tableName}_${new Date().toISOString().split('T')[0]}.pdf`;
console.log('PDF filename:', fileName);
pdf.save(fileName);
console.log('PDF download initiated');
setMessageType('success');
setMessageData('PDF downloaded successfully!');
}
} catch (error) {
console.error('Error generating PDF:', error);
console.error('Error details:', {
message: error.message,
stack: error.stack,
encrypted: encrypted,
configId: configId,
TableId: TableId,
});
setMessageType('error');
setMessageData(
`Error generating PDF: ${error.message}. Please try again.`
);
}
};
const onComplete = useCallback(() => { const onComplete = useCallback(() => {
setMessageData(null); setMessageData(null);
@ -571,7 +390,7 @@ const PublicQrCode = () => {
<FormHeader title={'QR Code Generator'} /> <FormHeader title={'QR Code Generator'} />
</div> </div>
<div className="searchAddDiv"> <div className="searchAddDiv">
<div style={{ display: 'flex', gap: '1rem', flexWrap: 'wrap' }}> <div style={{ display: 'flex', gap: '2rem', flexWrap: 'wrap' }}>
<DropDowns <DropDowns
options={[ options={[
// { value: 'All', label: 'Both' }, // Add "Select" option // { value: 'All', label: 'Both' }, // Add "Select" option
@ -673,6 +492,17 @@ const PublicQrCode = () => {
</div> </div>
{qrCodeUrl && ( {qrCodeUrl && (
<> <>
<div className="productMaster-input">
<Buttons
buttonText="Print"
className="tertiary_Button"
color="28a745"
handleSubmit={() => window.print()}
icon={<EyeOutlined />}
>
PRINT
</Buttons>
</div>
<div className="productMaster-input"> <div className="productMaster-input">
<Buttons <Buttons
buttonText="Clear" buttonText="Clear"
@ -684,8 +514,6 @@ const PublicQrCode = () => {
setTableId(null); setTableId(null);
setWaiterId(null); setWaiterId(null);
setTabledata([]); setTabledata([]);
setPdfPreviewUrl('');
setIsPreviewModalOpen(false);
}} }}
> >
CLEAR CLEAR
@ -696,7 +524,7 @@ const PublicQrCode = () => {
</div> </div>
</div> </div>
</div> </div>
<div className="reportTable"> <div className="reportTable no-print">
{qrCodeUrl && ( {qrCodeUrl && (
<div <div
ref={qrCodeRef} ref={qrCodeRef}
@ -745,69 +573,79 @@ const PublicQrCode = () => {
<PublicQrCodeShare qrCodeUrl={qrCodeUrl} /> <PublicQrCodeShare qrCodeUrl={qrCodeUrl} />
)} )}
</div> </div>
</div>
{/* PDF Preview Modal */} {/* Print Content - A4 Format */}
<Modal {qrCodeUrl && (
title="PDF Preview" <div ref={printContentRef} className="print-only" style={{ display: 'none' }}>
open={isPreviewModalOpen} <div style={{ padding: '40px 30px', textAlign: 'center', fontFamily: 'Arial, sans-serif' }}>
onCancel={() => { {branchData?.[0]?.CompLogo && (
setIsPreviewModalOpen(false); <div style={{ marginBottom: '20px' }}>
if (pdfPreviewUrl) { <img
URL.revokeObjectURL(pdfPreviewUrl); src={branchData[0].CompLogo}
setPdfPreviewUrl(''); alt="Company Logo"
} style={{ maxWidth: '150px', maxHeight: '100px', objectFit: 'contain' }}
}}
footer={false}
// footer={[
// <Buttons
// key="download"
// buttonText="Download PDF"
// className="tertiary_Button"
// color="28a745"
// handleSubmit={() => {
// generatePDF(false, qrCodeUrl);
// setIsPreviewModalOpen(false);
// if (pdfPreviewUrl) {
// URL.revokeObjectURL(pdfPreviewUrl);
// setPdfPreviewUrl('');
// }
// }}
// icon={<DownloadOutlined />}
// >
// DOWNLOAD
// </Buttons>,
// <Buttons
// key="close"
// buttonText="Close"
// className="secondary_Button"
// color="6c757d"
// handleSubmit={() => {
// setIsPreviewModalOpen(false);
// if (pdfPreviewUrl) {
// URL.revokeObjectURL(pdfPreviewUrl);
// setPdfPreviewUrl('');
// }
// }}
// >
// CLOSE
// </Buttons>
// ]}
width={1000}
style={{ top: 20 }}
>
{pdfPreviewUrl && (
<div style={{ textAlign: 'center' }}>
<iframe
src={pdfPreviewUrl}
width="100%"
height="600px"
style={{ border: 'none', borderRadius: '4px' }}
title="PDF Preview"
/> />
</div> </div>
)} )}
</Modal> <h1 style={{ margin: '15px 0', fontSize: '28px', color: '#333', fontWeight: 'bold' }}>
{branchData?.[0]?.BrName || branchData?.[0]?.CompName || ''}
</h1>
<p style={{ margin: '8px 0', fontSize: '14px', color: '#666' }}>
{[branchData?.[0]?.Address1, branchData?.[0]?.Address2, branchData?.[0]?.City, branchData?.[0]?.State, branchData?.[0]?.Zip]
.filter(Boolean)
.join(', ')}
</p>
<p style={{ margin: '8px 0', fontSize: '14px', color: '#666' }}>
<strong>Mobile:</strong> {branchData?.[0]?.BrMobile || ''}
</p>
<div style={{ margin: '40px 0', display: 'flex', justifyContent: 'center' }}>
<div style={{ padding: '20px', background: 'white', display: 'inline-block', border: '2px solid #ddd' }}>
<QRCode
size={300}
value={qrCodeUrl}
viewBox={`0 0 256 256`}
/>
</div>
</div>
<p style={{ marginTop: '30px', fontSize: '12px', color: '#666', wordBreak: 'break-all', maxWidth: '80%', margin: '30px auto 0' }}>
<strong>URL:</strong> {qrCodeUrl}
</p>
</div>
</div>
)}
</div>
<style>{`
@media print {
@page {
size: A4 portrait;
margin: 0;
}
html, body {
height: 100%;
margin: 0;
padding: 0;
}
body * {
visibility: hidden;
}
.print-only, .print-only * {
visibility: visible;
}
.print-only {
display: block !important;
position: fixed;
left: 0;
top: 0;
width: 100%;
height: 100%;
page-break-after: avoid;
}
.no-print {
display: none !important;
}
}
`}</style>
</div> </div>
); );
}; };

File diff suppressed because it is too large Load Diff

View File

@ -1,5 +1,5 @@
.slot-management { .slot-management {
font-family: 'Poppins', sans-serif; font-family: "Poppins", sans-serif;
width: 100%; width: 100%;
margin: 0 auto; margin: 0 auto;
@ -257,3 +257,19 @@
.SlotManagementTable { .SlotManagementTable {
margin-top: 20px; margin-top: 20px;
} }
.slotmanagemantTable {
.ant-table-cell {
font-size: 12px;
}
.ant-table-tbody {
font-family: "Poppins";
}
button{
font-family: "Poppins";
span{
font-family: "Poppins";
}
}
}

View File

@ -1,23 +1,32 @@
import { useCallback, useEffect, useState } from "react"; import { useCallback, useEffect, useState } from 'react';
import { useDispatch, useSelector } from "react-redux"; import { useDispatch, useSelector } from 'react-redux';
import { dateTimeFormatChange, getSession } from "../../Services/Others"; import { dateTimeFormatChange, getSession } from '../../Services/Others';
import { deleteSlotManagement, getSlotManagement, GlobalSlotDetailData } from "../../Features/SlotManagement/SlotManagement"; import {
import { Button, Modal, Table, Tag, List, Space } from "antd"; deleteSlotManagement,
import { ClockCircleOutlined, CalendarOutlined, DeleteFilled, PlusOutlined } from "@ant-design/icons"; getSlotManagement,
import Buttons from "../../Components/Forms/Buttons"; GlobalSlotDetailData,
import Search from "../../Components/Forms/Search"; } from '../../Features/SlotManagement/SlotManagement';
import FormHeader from "../PageComponents/FormHeader"; import { Button, Modal, Table, Tag, List, Space } from 'antd';
import { useNavigate } from "react-router-dom"; import {
import { Messages } from "../../Components/Notifications/Messages"; ClockCircleOutlined,
import { Tables } from "../../Components/Tables/Table"; CalendarOutlined,
import { changeBreadCrumb } from "../../Features/AppPage/CenterPage"; DeleteFilled,
PlusOutlined,
} from '@ant-design/icons';
import Buttons from '../../Components/Forms/Buttons';
import Search from '../../Components/Forms/Search';
import FormHeader from '../PageComponents/FormHeader';
import { useNavigate } from 'react-router-dom';
import { Messages } from '../../Components/Notifications/Messages';
import { Tables } from '../../Components/Tables/Table';
import { changeBreadCrumb } from '../../Features/AppPage/CenterPage';
const subDirectory = import.meta.env.BASE_URL; const subDirectory = import.meta.env.BASE_URL;
const SlotManagementList = () => { const SlotManagementList = () => {
const CompId = getSession("CompId"); const CompId = getSession('CompId');
const BranchId = getSession("BranchId"); const BranchId = getSession('BranchId');
const AppId = getSession("AppId"); const AppId = getSession('AppId');
const UserId = getSession("UserId"); const UserId = getSession('UserId');
const dispatch = useDispatch(); const dispatch = useDispatch();
const navigate = useNavigate(); const navigate = useNavigate();
@ -36,7 +45,6 @@ const SlotManagementList = () => {
const [filteredInfo, setFilteredInfo] = useState({}); const [filteredInfo, setFilteredInfo] = useState({});
const [page, setpage] = useState(1); const [page, setpage] = useState(1);
console.log(SloteData, 'fsafsfsdfdsfdsfdafda'); console.log(SloteData, 'fsafsfsdfdsfdsfdafda');
useEffect(() => { useEffect(() => {
@ -59,25 +67,26 @@ useEffect(() => {
} catch (err) { } catch (err) {
console.log(err, 'err'); console.log(err, 'err');
} }
}, []); }, []);
const fetchManagementHistory = async () => { const fetchManagementHistory = async () => {
const response = await dispatch(getSlotManagement({ CompId, BranchId, AppId })).unwrap(); const response = await dispatch(
getSlotManagement({ CompId, BranchId, AppId })
).unwrap();
const slotData = response?.data?.data; const slotData = response?.data?.data;
setSloteData(slotData || []); setSloteData(slotData || []);
}; };
const handleDelete = async (ExceptionId) => { const handleDelete = async (ExceptionId) => {
try { try {
const deleteData = { const deleteData = {
ExceptionId: ExceptionId, ExceptionId: ExceptionId,
UpdatedBy: UserId, UpdatedBy: UserId,
ActiveStatus: "D", ActiveStatus: 'D',
}; };
const response = await dispatch(deleteSlotManagement(deleteData)).unwrap(); const response = await dispatch(
deleteSlotManagement(deleteData)
).unwrap();
if (response?.data?.statusCode == 1) { if (response?.data?.statusCode == 1) {
fetchManagementHistory(); fetchManagementHistory();
setMessageType('success'); setMessageType('success');
@ -85,7 +94,7 @@ useEffect(() => {
} }
} catch (error) { } catch (error) {
setMessageType('success'); setMessageType('success');
setMessageData("Failed to delete slot."); setMessageData('Failed to delete slot.');
} }
}; };
@ -94,7 +103,8 @@ useEffect(() => {
setMessageType(null); setMessageType(null);
}, []); }, []);
const handleViewSlots = (record) => { const handleViewSlots = (record) => {
const flattenedSlots = record?.SlotDetails?.flatMap((slot) => const flattenedSlots =
record?.SlotDetails?.flatMap((slot) =>
slot.SlotExceptionDetails.map((exception) => ({ slot.SlotExceptionDetails.map((exception) => ({
...exception, ...exception,
ProdSubCatName: slot.ProdSubCatName, ProdSubCatName: slot.ProdSubCatName,
@ -140,16 +150,16 @@ useEffect(() => {
), ),
}, },
{ {
title: "Slot Action", title: 'Slot Action',
dataIndex: "ExceptionType", dataIndex: 'ExceptionType',
key: "ExceptionType", key: 'ExceptionType',
render: (text) => { render: (text) => {
if (!text) return "-"; if (!text) return '-';
const mapping = { const mapping = {
block: "Block", block: 'Block',
holiday: "Holiday", holiday: 'Holiday',
pricechange: "Price Change" pricechange: 'Price Change',
}; };
// convert value safely (case-insensitive) // convert value safely (case-insensitive)
@ -158,17 +168,19 @@ useEffect(() => {
return <span>{formattedValue}</span>; return <span>{formattedValue}</span>;
}, },
}, },
{ title: "Activity Type", dataIndex: "ModeOfException", key: "ModeOfException", {
title: 'Activity Type',
dataIndex: 'ModeOfException',
key: 'ModeOfException',
render: (text) => { render: (text) => {
if (!text) return "-"; if (!text) return '-';
const mapping = { const mapping = {
subcategory: "Sub Category", subcategory: 'Sub Category',
product: "Facility", product: 'Facility',
slot: "Slot", slot: 'Slot',
full_branch: "Full Branch", full_branch: 'Full Branch',
category: "Category", category: 'Category',
}; };
// convert value safely (case-insensitive) // convert value safely (case-insensitive)
@ -178,14 +190,13 @@ useEffect(() => {
}, },
}, },
{ {
title: "Slot Details", title: 'Slot Details',
key: "SlotDetails", key: 'SlotDetails',
align: "center", align: 'center',
render: (_, record) => ( render: (_, record) => (
<Button <Button
icon={<ClockCircleOutlined style={{ color: "#52c41a" }} />} icon={<ClockCircleOutlined style={{ color: '#52c41a' }} />}
type="link" type="link"
onClick={() => handleViewSlots(record)} onClick={() => handleViewSlots(record)}
> >
@ -194,63 +205,76 @@ useEffect(() => {
), ),
}, },
{ {
title: "Day(s)", title: 'Day(s)',
key: "DayOfWeek", key: 'DayOfWeek',
align: "center", align: 'center',
render: (_, record) => ( render: (_, record) =>
record?.DayOfWeek.length > 0 ? ( record?.DayOfWeek.length > 0 ? (
<Button <Button
icon={<CalendarOutlined style={{ color: "#fa8c16" }} />} icon={<CalendarOutlined style={{ color: '#fa8c16' }} />}
type="link" type="link"
onClick={() => handleViewDays(record)} onClick={() => handleViewDays(record)}
> >
View View
</Button> </Button>
) :'-' ) : (
'-'
), ),
}, },
{ title: "Reason", dataIndex: "Reason", key: "Reason" }, { title: 'Reason', dataIndex: 'Reason', key: 'Reason' },
{ {
title: "Action", title: 'Action',
key: "Action", key: 'Action',
dataIndex: "Action", dataIndex: 'Action',
width: 100, width: 100,
align: "center", align: 'center',
render: (_, record) => ( render: (_, record) => (
<Space size="middle"> <Space size="middle">
<DeleteFilled <DeleteFilled
style={{ color: "#FF4D4F", fontSize: "16px", cursor: "pointer" }} style={{ color: '#FF4D4F', fontSize: '16px', cursor: 'pointer' }}
onClick={() => handleDelete(record.ExceptionId)} onClick={() => handleDelete(record.ExceptionId)}
/> />
</Space> </Space>
), ),
} },
]; ];
// Utility: check if a column has any non-null / non-empty data // Utility: check if a column has any non-null / non-empty data
const hasDataInColumn = (data, key) => { const hasDataInColumn = (data, key) => {
return data.some(item => item[key] !== null && item[key] !== undefined && item[key] !== "" && item[key] !== 0); return data.some(
(item) =>
item[key] !== null &&
item[key] !== undefined &&
item[key] !== '' &&
item[key] !== 0
);
}; };
const allSlotColumns = [ const allSlotColumns = [
{ title: "Slot Name", dataIndex: "SlotName", key: "SlotName" }, { title: 'Slot Name', dataIndex: 'SlotName', key: 'SlotName' },
{ title: "Facility", dataIndex: "ProdName", key: "ProdName" }, { title: 'Facility', dataIndex: 'ProdName', key: 'ProdName' },
{ title: "Sub category", dataIndex: "ProdSubCatName", key: "ProdSubCatName" },
{ {
title: "Valid From", title: 'Sub category',
dataIndex: "ExceptionFrom", dataIndex: 'ProdSubCatName',
key: "ExceptionFrom", key: 'ProdSubCatName',
},
{
title: 'Valid From',
dataIndex: 'ExceptionFrom',
key: 'ExceptionFrom',
render: (text) => dateTimeFormatChange(text), render: (text) => dateTimeFormatChange(text),
}, },
{ {
title: "Valid To", title: 'Valid To',
dataIndex: "ExceptionTo", dataIndex: 'ExceptionTo',
key: "ExceptionTo", key: 'ExceptionTo',
render: (text) => dateTimeFormatChange(text), render: (text) => dateTimeFormatChange(text),
}, },
{ title: "New Price", dataIndex: "NewPrice", key: "NewPrice" }, { title: 'New Price', dataIndex: 'NewPrice', key: 'NewPrice' },
{ title: "Single Price", dataIndex: "SinglePrice", key: "SinglePrice" }, { title: 'Single Price', dataIndex: 'SinglePrice', key: 'SinglePrice' },
]; ];
const slotColumns = allSlotColumns.filter(col => hasDataInColumn(selectedSlots, col.dataIndex)); const slotColumns = allSlotColumns.filter((col) =>
hasDataInColumn(selectedSlots, col.dataIndex)
);
const handlePageChange = (current) => { const handlePageChange = (current) => {
setpage(current); setpage(current);
}; };
@ -286,7 +310,7 @@ const slotColumns = allSlotColumns.filter(col => hasDataInColumn(selectedSlots,
</Buttons> </Buttons>
</div> </div>
</div> </div>
<div className="reportTable"> <div className="reportTable slotmanagemantTable">
<Tables <Tables
columns={managementColumns} columns={managementColumns}
dataSource={SloteData} dataSource={SloteData}
@ -299,7 +323,7 @@ const slotColumns = allSlotColumns.filter(col => hasDataInColumn(selectedSlots,
</div> </div>
{/* Slot Modal */} {/* Slot Modal */}
<Modal <Modal
title={`Slot Details ${selectedProduct?.ProdName || ""}`} title={`Slot Details ${selectedProduct?.ProdName || ''}`}
open={isSlotModalOpen} open={isSlotModalOpen}
onCancel={() => setIsSlotModalOpen(false)} onCancel={() => setIsSlotModalOpen(false)}
footer={null} footer={null}
@ -327,7 +351,10 @@ const slotColumns = allSlotColumns.filter(col => hasDataInColumn(selectedSlots,
dataSource={selectedDays} dataSource={selectedDays}
renderItem={(day) => ( renderItem={(day) => (
<List.Item> <List.Item>
<Tag color="blue" style={{ fontSize: "14px", padding: "4px 8px" }}> <Tag
color="blue"
style={{ fontSize: '14px', padding: '4px 8px' }}
>
{day.toUpperCase()} {day.toUpperCase()}
</Tag> </Tag>
</List.Item> </List.Item>
@ -339,7 +366,6 @@ const slotColumns = allSlotColumns.filter(col => hasDataInColumn(selectedSlots,
</Modal> </Modal>
</div> </div>
</div> </div>
); );
}; };

View File

@ -37,7 +37,7 @@
// width: 99.9% !important; // width: 99.9% !important;
@media (max-width: 500px) { @media (max-width: 500px) {
height: 91vh !important; height: 95vh !important;
} }
} }

View File

@ -327,7 +327,7 @@
} }
.CategoryHorizontalNew { .CategoryHorizontalNew {
padding: 1rem 1rem; padding: 12px 12px;
font-family: 'Inter', sans-serif; font-family: 'Inter', sans-serif;
display: flex; display: flex;
align-items: center; align-items: center;

View File

@ -115,7 +115,7 @@
color: #52c41a; color: #52c41a;
font-size: 14px; font-size: 14px;
font-weight: 600; font-weight: 600;
font-family: 'Gilroy'; font-family: "Gilroy";
// nk // nk
white-space: nowrap; white-space: nowrap;
overflow: hidden; overflow: hidden;
@ -595,7 +595,7 @@
.qtyUomName { .qtyUomName {
font-size: 15px; font-size: 15px;
font-weight: 600; font-weight: 600;
font-family: 'Gilroy'; font-family: "Gilroy";
text-align: center; text-align: center;
} }
@ -603,7 +603,7 @@
.qtyUomName-itemCard { .qtyUomName-itemCard {
font-size: 15px; font-size: 15px;
font-weight: 600; font-weight: 600;
font-family: 'Gilroy'; font-family: "Gilroy";
text-align: center; text-align: center;
white-space: nowrap; white-space: nowrap;
overflow: hidden; overflow: hidden;
@ -1010,7 +1010,7 @@
flex-direction: column; flex-direction: column;
gap: 0.5rem; gap: 0.5rem;
padding: 1rem; padding: 1rem;
font-family: 'Inter', sans-serif; font-family: "Inter", sans-serif;
letter-spacing: -0.5px; letter-spacing: -0.5px;
@media (max-width: 500px) { @media (max-width: 500px) {
@ -1023,7 +1023,7 @@
line-height: 1.25rem; line-height: 1.25rem;
font-weight: 500; font-weight: 500;
color: #1f2937; color: #1f2937;
font-family: 'Inter', ui-sans-serif, system-ui, sans-serif; font-family: "Inter", ui-sans-serif, system-ui, sans-serif;
@media (max-width: 500px) { @media (max-width: 500px) {
font-size: 0.7rem; font-size: 0.7rem;
@ -1036,7 +1036,7 @@
justify-content: space-between; justify-content: space-between;
width: 100%; width: 100%;
font-weight: 500; font-weight: 500;
font-family: 'Inter', ui-sans-serif, system-ui, sans-serif; font-family: "Inter", ui-sans-serif, system-ui, sans-serif;
} }
.card4Price { .card4Price {
@ -1059,7 +1059,7 @@
padding: 0.375rem 0.75rem; padding: 0.375rem 0.75rem;
font-weight: 500; font-weight: 500;
border-radius: 50px; border-radius: 50px;
font-family: 'Inter', ui-sans-serif, system-ui, sans-serif; font-family: "Inter", ui-sans-serif, system-ui, sans-serif;
} }
} }
@ -1139,7 +1139,7 @@
transition: transition:
background-color 0.2s ease, background-color 0.2s ease,
color 0.2s ease; color 0.2s ease;
font-family: 'Poppins', sans-serif; font-family: "Poppins", sans-serif;
&:hover { &:hover {
background-color: #dce7ff; background-color: #dce7ff;
@ -1220,7 +1220,7 @@
row-gap: 0.5rem; row-gap: 0.5rem;
// position: fixed; // position: fixed;
// bottom: 10px; // bottom: 10px;
font-family: 'Poppins'; font-family: "Poppins";
font-size: 14px; font-size: 14px;
color: #000; color: #000;
font-weight: 400; font-weight: 400;
@ -1283,7 +1283,7 @@
color: #fff; color: #fff;
font-size: 16px; font-size: 16px;
font-weight: 400; font-weight: 400;
font-family: 'Poppins'; font-family: "Poppins";
display: flex; display: flex;
align-items: center; align-items: center;
gap: 4px; gap: 4px;
@ -1324,7 +1324,7 @@
background-color: #4caf50; background-color: #4caf50;
color: #fff; color: #fff;
font-size: 14px; font-size: 14px;
font-family: 'Poppins'; font-family: "Poppins";
border-radius: 6px; border-radius: 6px;
cursor: pointer; cursor: pointer;
} }
@ -1338,7 +1338,7 @@
} }
.blukSlotTbody { .blukSlotTbody {
font-family: 'Poppins', sans-serif; font-family: "Poppins", sans-serif;
text-align: center; text-align: center;
} }
@ -1428,7 +1428,7 @@
.slot-price { .slot-price {
font-weight: 500; font-weight: 500;
font-family: 'Poppins'; font-family: "Poppins";
font-size: 0.8rem; font-size: 0.8rem;
> div:nth-child(1) { > div:nth-child(1) {
@ -1478,7 +1478,7 @@
.bookingModalBulk { .bookingModalBulk {
min-width: max-content !important; min-width: max-content !important;
max-width: 90vw !important; max-width: 90vw !important;
font-family: 'Poppins' !important; font-family: "Poppins" !important;
.ant-modal-content { .ant-modal-content {
padding: 24px !important; padding: 24px !important;
@ -1495,6 +1495,9 @@
min-width: 60vw; min-width: 60vw;
overflow: auto; overflow: auto;
max-width: 90vw; max-width: 90vw;
@media (max-width: 600px) {
max-width: 83vw;
}
} }
.bulk-submit-btn { .bulk-submit-btn {
@ -1507,7 +1510,7 @@
width: max-content; width: max-content;
height: max-content; height: max-content;
padding: 9px 16px; padding: 9px 16px;
font-family: 'Poppins', sans-serif; font-family: "Poppins", sans-serif;
font-size: 14px; font-size: 14px;
font-weight: 400; font-weight: 400;
border-radius: 6px; border-radius: 6px;
@ -1524,6 +1527,10 @@
align-items: center; align-items: center;
display: flex; display: flex;
padding: 2px 5px; padding: 2px 5px;
@media (max-width: 768px) {
flex-wrap: wrap;
gap: 6px;
}
} }
.SportsSlotHeader1 { .SportsSlotHeader1 {
@ -1531,7 +1538,7 @@
align-items: center; align-items: center;
display: flex; display: flex;
font-size: 18px; font-size: 18px;
font-family: 'Poppins'; font-family: "Poppins";
font-weight: 500; font-weight: 500;
.CiShopIcon { .CiShopIcon {
@ -1546,7 +1553,7 @@
} }
p { p {
font-family: 'Poppins'; font-family: "Poppins";
font-weight: 400; font-weight: 400;
font-size: 16px; font-size: 16px;
} }
@ -1566,6 +1573,10 @@
background: #ffffff; background: #ffffff;
margin-bottom: 8px; margin-bottom: 8px;
gap: 2rem; gap: 2rem;
@media (max-width: 600px) {
flex-wrap: wrap;
gap: 10px;
}
} }
.sports-slot-toggle { .sports-slot-toggle {
@ -1586,7 +1597,7 @@
cursor: pointer; cursor: pointer;
transition: all 0.2s ease; transition: all 0.2s ease;
min-width: 90px; min-width: 90px;
font-family: 'Poppins', sans-serif; font-family: "Poppins", sans-serif;
&:hover { &:hover {
background: rgba(13, 110, 253, 0.1); background: rgba(13, 110, 253, 0.1);
@ -1656,6 +1667,9 @@
gap: 12px; gap: 12px;
min-width: 300px; min-width: 300px;
justify-content: center; justify-content: center;
@media (max-width: 600px) {
min-width: 280px;
}
} }
.bookingSportSlot { .bookingSportSlot {
@ -1667,7 +1681,7 @@
color: #495057; color: #495057;
min-width: 120px; min-width: 120px;
text-align: center; text-align: center;
font-family: 'Poppins', sans-serif; font-family: "Poppins", sans-serif;
width: 100%; width: 100%;
transition: all 0.3s; transition: all 0.3s;
scrollbar-width: thin; scrollbar-width: thin;
@ -1677,6 +1691,9 @@
&:hover { &:hover {
border-color: #3793f5; border-color: #3793f5;
} }
@media (max-width: 600px) {
padding: 2px 2px;
}
} }
.slotproductName { .slotproductName {
@ -1708,13 +1725,17 @@
display: flex; display: flex;
flex-wrap: wrap; flex-wrap: wrap;
gap: 10px; gap: 10px;
@media (max-width: 600px) {
gap: 4px;
justify-content: space-between;
width: 100%;
}
} }
.slotTimingSelect { .slotTimingSelect {
padding: 8px 8px; padding: 8px 8px;
border-radius: 6px; border-radius: 6px;
cursor: pointer; cursor: pointer;
transition: all 0.2s ease;
border: 1px solid #ddd; border: 1px solid #ddd;
text-align: center; text-align: center;
width: 145px; width: 145px;
@ -1723,16 +1744,15 @@
flex-direction: column; flex-direction: column;
align-items: center; align-items: center;
justify-content: center; justify-content: center;
@media (max-width: 600px) {
width: 130px;
height: 95px;
}
&.available { &.available {
background-color: #008000; background-color: #008000;
color: #fff; color: #fff;
border-color: #4caf50; border-color: #4caf50;
&:hover {
background-color: #ffffff;
color: #008000;
}
} }
&.booked { &.booked {
@ -1740,10 +1760,6 @@
color: #ffffff; color: #ffffff;
border-color: #f44336; border-color: #f44336;
cursor: not-allowed; cursor: not-allowed;
&:hover {
color: #c90b0b;
background-color: #ffff;
}
} }
&.incart { &.incart {
@ -1756,10 +1772,6 @@
background-color: #ffe8bf; background-color: #ffe8bf;
color: #5f4204; color: #5f4204;
border-color: #ff9800; border-color: #ff9800;
&:hover {
background-color: #5f4204;
color: #ffe8bf;
}
} }
&.blocked { &.blocked {
@ -1767,10 +1779,6 @@
color: #ffffff; color: #ffffff;
border-color: #31a0f0; border-color: #31a0f0;
cursor: not-allowed; cursor: not-allowed;
// &:hover{
// color:#148498;
// background-color: #fff;
// }
} }
&.selected { &.selected {
@ -1920,7 +1928,7 @@
.booked-details-container { .booked-details-container {
padding: 8px; padding: 8px;
font-family: 'Poppins', sans-serif; font-family: "Poppins", sans-serif;
.booked-details-title { .booked-details-title {
font-size: 24px; font-size: 24px;
@ -2051,7 +2059,7 @@
font-weight: 400; font-weight: 400;
cursor: pointer; cursor: pointer;
transition: all 0.3s ease; transition: all 0.3s ease;
font-family: 'Poppins', sans-serif; font-family: "Poppins", sans-serif;
min-width: 70px; min-width: 70px;
&:disabled { &:disabled {
@ -2101,7 +2109,7 @@
font-weight: 500; font-weight: 500;
cursor: pointer; cursor: pointer;
transition: all 0.3s ease; transition: all 0.3s ease;
font-family: 'Poppins', sans-serif; font-family: "Poppins", sans-serif;
min-width: 120px; min-width: 120px;
box-shadow: 0 2px 4px rgba(55, 147, 245, 0.3); box-shadow: 0 2px 4px rgba(55, 147, 245, 0.3);
@ -2127,7 +2135,7 @@
.all-bookings-container { .all-bookings-container {
padding: 8px; padding: 8px;
font-family: 'Poppins', sans-serif; font-family: "Poppins", sans-serif;
.all-bookings-title { .all-bookings-title {
font-size: 22px; font-size: 22px;
@ -2215,7 +2223,7 @@
font-weight: 500; font-weight: 500;
cursor: pointer; cursor: pointer;
transition: all 0.3s ease; transition: all 0.3s ease;
font-family: 'Poppins', sans-serif; font-family: "Poppins", sans-serif;
min-width: 60px; min-width: 60px;
&:disabled { &:disabled {

View File

@ -48,6 +48,10 @@
svg { svg {
display: flex; display: flex;
transition: all 0.2s ease-in-out;
&:hover {
color: #1292ee !important;
}
} }
@media (max-width: 1000px) { @media (max-width: 1000px) {
@ -105,13 +109,37 @@
display: flex; display: flex;
align-items: center; align-items: center;
gap: 0.1rem; gap: 0.1rem;
.RiVerifiedBadgeFill {
transition: all 0.2s ease-in-out;
height: 37px;
width: 37px;
padding: 6px 4px;
border-radius: 0.5rem;
&:hover {
color: #1292ee !important;
}
}
.BSBillingNavBar1-AllIcons { .BSBillingNavBar1-AllIcons {
color: #ffffff !important; color: #ffffff !important;
&:hover {
color: #1292ee !important;
}
} }
.bs-membership__icon-btn { .bs-membership__icon-btn {
display: flex;
align-items: center;
justify-content: center;
svg { svg {
transition: all 0.2s ease-in-out;
color: #ffffff !important; color: #ffffff !important;
} }
&:hover {
svg {
color: #1292ee !important;
}
}
} }
} }
@ -155,30 +183,33 @@
color: #6b7280 !important; color: #6b7280 !important;
cursor: pointer; cursor: pointer;
// background-color: #2563eb; // background-color: #2563eb;
height: 41px; height: 40px;
width: 41px; width: 40px;
transition: all 0.2s ease-in-out;
svg { svg {
color: #ffffff !important; color: #ffffff !important;
} }
&:hover { &:hover {
background-color: #eff6ff; color: #1292ee;
color: #2563eb; svg {
color: #1292ee !important;
}
} }
} }
.FaTruckIconHold { .FaTruckIconHold {
padding: 10px 7px; padding: 10px 7px;
border-radius: 0.5rem; border-radius: 0.5rem;
color: #6b7280; color: #ffffff;
cursor: pointer; cursor: pointer;
width: 40px !important; width: 40px !important;
height: 40px !important; height: 40px !important;
// background-color: #2563eb; // background-color: #2563eb;
transition: all 0.2s ease-in-out;
&:hover { &:hover {
background-color: #eff6ff; color: #1292ee;
color: #2563eb;
} }
} }
@ -194,6 +225,7 @@
// background-color: #2563eb; // background-color: #2563eb;
height: 41px; height: 41px;
width: 41px; width: 41px;
transition: all 0.2s ease-in-out;
.BSBillingNav-icon { .BSBillingNav-icon {
height: 22px !important; height: 22px !important;
@ -201,8 +233,7 @@
} }
&:hover { &:hover {
background-color: #eff6ff; color: #1292ee;
color: #2563eb;
} }
} }
@ -245,18 +276,31 @@
} }
.BsNavbarUser { .BsNavbarUser {
color: #6b7280; color: #ffffff;
font-size: 1.3rem; font-size: 1.3rem;
cursor: pointer; cursor: pointer;
position: relative; position: relative;
display: flex;
align-items: center;
justify-content: center;
transition: all 0.2s ease-in-out;
&:hover {
color: #1292ee;
}
} }
.DropDownsCustomer { .DropDownsCustomer {
display: flex; display: flex;
gap: 2px; gap: 2px;
position: relative;
align-items: center;
.BSBillingNav-icon { .BSBillingNav-icon {
color: #ffffff !important; color: #ffffff !important;
transition: all 0.2s ease-in-out;
&:hover {
color: #1292ee !important;
}
} }
.ant-select { .ant-select {
@ -272,6 +316,20 @@
} }
} }
.DropDownsCustomerClose {
color: #c2c2c2;
position: absolute;
right: 60px;
font-weight: 500;
cursor: pointer;
&:hover {
color: #727272;
}
@media (max-width: 768px) {
right: 30px;
}
}
.DropDownsCustomer.always-visible { .DropDownsCustomer.always-visible {
.ant-select { .ant-select {
width: 7rem !important; width: 7rem !important;
@ -350,7 +408,7 @@
} }
svg { svg {
color: #6b7280; color: #ffffff !important;
display: flex; display: flex;
} }

View File

@ -34,7 +34,7 @@ body {
} }
@media (max-width: 500px) { @media (max-width: 500px) {
top: 3.1rem; top: 2.9rem;
} }
} }
@ -288,7 +288,7 @@ body {
justify-content: space-between; justify-content: space-between;
// justify-content: space-between; // justify-content: space-between;
width: 100%; width: 100%;
padding: 0.75rem 1.5rem; padding: 8px 8px;
background-color: #1e2536; background-color: #1e2536;
font-family: "Inter", ui-sans-serif, system-ui, sans-serif !important; font-family: "Inter", ui-sans-serif, system-ui, sans-serif !important;

View File

@ -173,7 +173,7 @@
justify-content: center; justify-content: center;
border-radius: 4px; border-radius: 4px;
color: #fff; color: #fff;
font-family: 'Poppins'; font-family: "Poppins";
font-weight: 600; font-weight: 600;
} }
@ -185,7 +185,7 @@
justify-content: center; justify-content: center;
border-radius: 4px; border-radius: 4px;
color: #fff; color: #fff;
font-family: 'Poppins'; font-family: "Poppins";
font-weight: 600; font-weight: 600;
} }
@ -197,7 +197,7 @@
justify-content: center; justify-content: center;
border-radius: 4px; border-radius: 4px;
color: #fff; color: #fff;
font-family: 'Poppins'; font-family: "Poppins";
font-weight: 600; font-weight: 600;
} }
@ -210,7 +210,7 @@
height: max-content; height: max-content;
min-height: 8rem; min-height: 8rem;
border-radius: 8px; border-radius: 8px;
font-family: 'Poppins'; font-family: "Poppins";
width: max-content; width: max-content;
min-width: 250px; min-width: 250px;
@ -256,7 +256,7 @@
display: flex; display: flex;
flex-direction: column; flex-direction: column;
gap: 10px; gap: 10px;
font-family: 'Poppins'; font-family: "Poppins";
padding: 0.7rem 1rem; padding: 0.7rem 1rem;
margin: 1vw 2vh; margin: 1vw 2vh;
background-color: #e0e0e0; background-color: #e0e0e0;
@ -319,7 +319,6 @@
} }
@media (min-width: 280px) and (max-width: 499px) { @media (min-width: 280px) and (max-width: 499px) {
//srinath //srinath
.ant-picker-dropdown .ant-picker-panel-container .ant-picker-panels { .ant-picker-dropdown .ant-picker-panel-container .ant-picker-panels {
width: 50vw !important; width: 50vw !important;
@ -746,7 +745,7 @@
padding: 10px 16px; padding: 10px 16px;
font-size: 16px; font-size: 16px;
text-transform: capitalize; text-transform: capitalize;
font-family: 'Gilroy'; font-family: "Gilroy";
font-weight: 500; font-weight: 500;
cursor: pointer; cursor: pointer;
background-color: #20a720; background-color: #20a720;
@ -800,7 +799,7 @@
.RetailDashboard-Master { .RetailDashboard-Master {
width: 100%; width: 100%;
font-family: 'Poppins' !important; font-family: "Poppins" !important;
display: flex; display: flex;
flex-direction: column; flex-direction: column;
align-items: flex-start; align-items: flex-start;
@ -1113,7 +1112,8 @@
} }
.detailsProductsCard { .detailsProductsCard {
background: linear-gradient(90deg, background: linear-gradient(
90deg,
rgb(255, 255, 255) 0%, rgb(255, 255, 255) 0%,
rgba(143, 209, 142, 0.71) 4%, rgba(143, 209, 142, 0.71) 4%,
rgb(255, 255, 255) 7%, rgb(255, 255, 255) 7%,
@ -1150,7 +1150,8 @@
rgb(255, 255, 255) 97%, rgb(255, 255, 255) 97%,
rgb(255, 255, 255) 97%, rgb(255, 255, 255) 97%,
rgba(143, 209, 142, 0.71) 100%, rgba(143, 209, 142, 0.71) 100%,
rgb(76, 175, 80) 100%); rgb(76, 175, 80) 100%
);
background-color: #ffffff; background-color: #ffffff;
width: 95px; width: 95px;
height: 85px; height: 85px;
@ -1257,7 +1258,7 @@
width: 100%; width: 100%;
gap: 10px; gap: 10px;
margin-top: 2rem; margin-top: 2rem;
font-family: 'Poppins'; font-family: "Poppins";
} }
.tltExpense { .tltExpense {
@ -1389,7 +1390,7 @@
cursor: pointer; cursor: pointer;
transition: background 0.2s; transition: background 0.2s;
margin-left: 8px; margin-left: 8px;
font-family: 'Poppins'; font-family: "Poppins";
svg { svg {
font-size: 18px; font-size: 18px;
@ -1451,7 +1452,7 @@
box-shadow 0.18s; box-shadow 0.18s;
// min-width: 130px; // min-width: 130px;
position: relative; position: relative;
font-family: 'Poppins'; font-family: "Poppins";
justify-content: space-between; justify-content: space-between;
svg { svg {
@ -1605,9 +1606,9 @@
flex: 1; flex: 1;
padding: 16px 2px; padding: 16px 2px;
text-align: center; text-align: center;
font-weight: 500; font-weight: 600;
-webkit-text-stroke-width: 0.2px; -webkit-text-stroke-width: 0.2px;
font-size: 1.8rem; font-size: 1.7rem;
display: flex; display: flex;
flex-direction: column; flex-direction: column;
align-items: center; align-items: center;
@ -1627,15 +1628,15 @@
} }
.todaySnapshotBox.orders { .todaySnapshotBox.orders {
color: #1976d2; color: #3b3b3b;
} }
.todaySnapshotBox.customers { .todaySnapshotBox.customers {
color: #1976d2; color: #3b3b3b;
} }
.todaySnapshotBox.pending { .todaySnapshotBox.pending {
color: #1976d2; color: #3b3b3b;
} }
.quickActionsRow { .quickActionsRow {
@ -2180,7 +2181,6 @@
// Responsive // Responsive
@media (max-width: 1024px) { @media (max-width: 1024px) {
.dashboardMainGrid, .dashboardMainGrid,
.dashboardSecondaryGrid { .dashboardSecondaryGrid {
flex-direction: column; flex-direction: column;
@ -2465,7 +2465,7 @@
display: flex; display: flex;
align-items: center; align-items: center;
gap: 8px; gap: 8px;
font-family: 'Inter', sans-serif; font-family: "Inter", sans-serif;
width: 100%; width: 100%;
transition: background 0.2s; transition: background 0.2s;
} }
@ -2680,7 +2680,7 @@
} }
.ai-suggestion::before { .ai-suggestion::before {
content: ''; content: "";
font-size: 18px; font-size: 18px;
margin-right: 8px; margin-right: 8px;
color: #f7b731; color: #f7b731;
@ -2712,7 +2712,7 @@
div { div {
color: #2a2a2a; color: #2a2a2a;
font-family: 'Inter', sans-serif; font-family: "Inter", sans-serif;
font-weight: 600; font-weight: 600;
font-size: 14px; font-size: 14px;
text-transform: uppercase; text-transform: uppercase;
@ -2726,7 +2726,7 @@
background-color: #e53935; background-color: #e53935;
color: #fff; color: #fff;
cursor: pointer; cursor: pointer;
font-family: 'Poppins'; font-family: "Poppins";
border-radius: 6px; border-radius: 6px;
font-weight: 500; font-weight: 500;
display: flex; display: flex;

View File

@ -5,3 +5,28 @@
} }
// .ant-checkbox .ant-checkbox-inner:after // .ant-checkbox .ant-checkbox-inner:after
.empAccessreportTable {
scrollbar-width: thin;
}
// Disable all Ant Design table animations and hover effects
.ant-table,
.ant-table * {
transition: none !important;
animation: none !important;
animation-duration: 0s !important;
transition-duration: 0s !important;
}
.ant-table-tbody > tr:hover > td,
.ant-table-tbody > tr:hover,
.ant-table-row:hover > td,
.ant-table-row:hover {
background: transparent !important;
background-color: transparent !important;
}
.ant-table-cell-row-hover {
background: transparent !important;
background-color: transparent !important;
}

View File

@ -5,7 +5,7 @@
} }
.cardpage-title { .cardpage-title {
font-family: 'Barlow Condensed', sans-serif; font-family: "Barlow Condensed", sans-serif;
font-size: 26px; font-size: 26px;
text-transform: uppercase; text-transform: uppercase;
} }
@ -101,7 +101,7 @@
align-items: flex-start; align-items: flex-start;
justify-content: flex-start; justify-content: flex-start;
flex-wrap: wrap; flex-wrap: wrap;
font-family: 'Manrope', sans-serif; font-family: "Manrope", sans-serif;
text-transform: capitalize; text-transform: capitalize;
font-weight: 600; font-weight: 600;
// font-size: 1rem; // font-size: 1rem;
@ -217,7 +217,7 @@
align-items: flex-start; align-items: flex-start;
justify-content: flex-start; justify-content: flex-start;
flex-wrap: wrap; flex-wrap: wrap;
font-family: 'Manrope', sans-serif; font-family: "Manrope", sans-serif;
text-transform: capitalize; text-transform: capitalize;
font-weight: 600; font-weight: 600;
// font-size: 1rem; // font-size: 1rem;
@ -329,7 +329,7 @@
align-items: flex-start; align-items: flex-start;
justify-content: flex-start; justify-content: flex-start;
flex-wrap: wrap; flex-wrap: wrap;
font-family: 'Manrope', sans-serif; font-family: "Manrope", sans-serif;
text-transform: capitalize; text-transform: capitalize;
font-weight: 600; font-weight: 600;
// font-size: 1rem; // font-size: 1rem;
@ -360,10 +360,10 @@
flex-direction: row; flex-direction: row;
justify-content: space-between; justify-content: space-between;
background: #f3f3f3; background: #f3f3f3;
padding: '20px'; padding: "20px";
height: 35px; height: 35px;
align-items: center; align-items: center;
cursor: 'pointer'; cursor: "pointer";
} }
.ProVariantCard-dis { .ProVariantCard-dis {
@ -371,13 +371,12 @@
flex-direction: row; flex-direction: row;
justify-content: space-between; justify-content: space-between;
background: #f3f3f3; background: #f3f3f3;
padding: '20px'; padding: "20px";
height: 35px; height: 35px;
align-items: center; align-items: center;
pointer-events: none; pointer-events: none;
} }
.selfBookCardBook { .selfBookCardBook {
display: grid; display: grid;
grid-template-columns: 1fr 1fr; grid-template-columns: 1fr 1fr;
@ -413,12 +412,10 @@
background-color: #ffebee; background-color: #ffebee;
border-color: #f44336; border-color: #f44336;
} }
} }
} }
} }
.ProVariantCardSports { .ProVariantCardSports {
flex-direction: column; flex-direction: column;
display: flex; display: flex;
@ -428,9 +425,9 @@
height: max-content; height: max-content;
margin-top: 10px; margin-top: 10px;
border-radius: 6px; border-radius: 6px;
background-color: #e8f5e8; background-color: #008000;
border: 1px solid #4caf50; border: 1px solid #008000;
color: #26922a; color: #ffffff;
text-align: center; text-align: center;
gap: 2px; gap: 2px;
width: 48%; width: 48%;
@ -444,11 +441,11 @@
} }
.ProVariantCardSports:hover { .ProVariantCardSports:hover {
background-color: #d9fcd9; background-color: #ffffff;
cursor: pointer; cursor: pointer;
color: #008000;
} }
.ProVariantCardSports-dis { .ProVariantCardSports-dis {
display: flex; display: flex;
align-items: center; align-items: center;
@ -457,9 +454,9 @@
flex-direction: column; flex-direction: column;
margin-top: 10px; margin-top: 10px;
border-radius: 6px; border-radius: 6px;
background-color: #ffebee; background-color: #f02626f3;
border: 1px solid #d83126; border: 1px solid #f02626f3;
color: #f44336; color: #ffffff;
text-align: center; text-align: center;
white-space: nowrap; white-space: nowrap;
gap: 2px; gap: 2px;
@ -485,7 +482,6 @@
font-family: "Poppins"; font-family: "Poppins";
} }
.KioskCard-card { .KioskCard-card {
position: relative; position: relative;
@ -501,7 +497,6 @@
&:hover, &:hover,
:active { :active {
background-color: red !important; background-color: red !important;
} }
} }
} }
@ -567,7 +562,6 @@
font-family: "Poppins"; font-family: "Poppins";
position: relative; position: relative;
&.active { &.active {
background: #007bff; background: #007bff;
color: #fff; color: #fff;
@ -627,11 +621,9 @@
} }
} }
.BTNslot { .BTNslot {
display: flex; display: flex;
align-items: center; align-items: center;
} }
.BookingSlotDateGroup { .BookingSlotDateGroup {

View File

@ -111,7 +111,6 @@
@media (max-width: 500px) { @media (max-width: 500px) {
height: max-content; height: max-content;
margin-bottom: 0; margin-bottom: 0;
} }
} }
@ -192,7 +191,6 @@
} }
.address-type-section { .address-type-section {
// padding: 12px; // padding: 12px;
// background-color: #f8fafc; // background-color: #f8fafc;
// border-radius: 8px; // border-radius: 8px;
@ -588,9 +586,6 @@
padding: 8px; padding: 8px;
color: white; color: white;
cursor: pointer; cursor: pointer;
} }
.lowStock-SaveButton:hover { .lowStock-SaveButton:hover {
background-color: #13c12a; background-color: #13c12a;
@ -635,3 +630,14 @@
overflow: hidden !important; overflow: hidden !important;
} }
} }
.addTaxinputDrawer {
display: flex;
align-items: flex-start;
flex-direction: column;
gap: 2rem;
}
.productlistSearchDiv {
flex-direction: column;
}

View File

@ -292,3 +292,22 @@ a {
font-family: VAR(--PARA_FONT_FAMILY); font-family: VAR(--PARA_FONT_FAMILY);
color: VAR(--ERROR_COLOR); color: VAR(--ERROR_COLOR);
} }
/* Disable all Ant Design table animations and hover effects */
.ant-table,
.ant-table *,
.ant-table-wrapper * {
transition: none !important;
animation: none !important;
animation-duration: 0s !important;
transition-duration: 0s !important;
}
.ant-table-tbody > tr:hover > td,
.ant-table-tbody > tr:hover,
.ant-table-row:hover > td,
.ant-table-row:hover,
.ant-table-cell-row-hover {
background: transparent !important;
background-color: transparent !important;
}

View File

@ -197,7 +197,7 @@ const fetchComponent = async () => {
sessionStore('userName', 'Karthiga'); sessionStore('userName', 'Karthiga');
sessionStorage.setItem( sessionStorage.setItem(
'auth', 'auth',
'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJodHRwOi8vc2NoZW1hcy54bWxzb2FwLm9yZy93cy8yMDA1LzA1L2lkZW50aXR5L2NsYWltcy9uYW1lIjoiOTY5ODgzODk2NiIsIlBhc3N3b3JkIjoiWkB6MTIzNCIsImF1ZCI6WyJodHRwOi8vMTkyLjE2OC4xLjM3OjgwMTMiLCJodHRwOi8vMTkyLjE2OC4xLjM3OjgwMTIiLCJodHRwOi8vMTkyLjE2OC4xLjM3OjgwMTQiLCJodHRwOi8vMTkyLjE2OC4xLjM3OjgwMTMiXSwiZXhwIjoxNzYzMDYwNjE4LCJpc3MiOiJodHRwOi8vMTkyLjE2OC4xLjM3OjgwMDEifQ.nN96UzT0oV1Ssn5WHIMpTwYFO1N3ifu81HLXwE-SvB8' 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJodHRwOi8vc2NoZW1hcy54bWxzb2FwLm9yZy93cy8yMDA1LzA1L2lkZW50aXR5L2NsYWltcy9uYW1lIjoiOTY5ODgzODk2NiIsIlBhc3N3b3JkIjoiWkB6MTIzNCIsImF1ZCI6WyJodHRwOi8vMTkyLjE2OC4xLjM3OjgwMTMiLCJodHRwOi8vMTkyLjE2OC4xLjM3OjgwMTIiLCJodHRwOi8vMTkyLjE2OC4xLjM3OjgwMTQiLCJodHRwOi8vMTkyLjE2OC4xLjM3OjgwMTMiXSwiZXhwIjoxNzYzMTQ1MzUwLCJpc3MiOiJodHRwOi8vMTkyLjE2OC4xLjM3OjgwMDEifQ.6nO0-3OBKfiBafld-gWIccjG-7yGuYA3q-ZRxfultu8'
); );
// sessionStore('AppId', 1); // sessionStore('AppId', 1);
// sessionStore('BranchId', 121); // sessionStore('BranchId', 121);
@ -263,7 +263,7 @@ const fetchHomeComponent = async () => {
sessionStore('userName', 'Karthiga'); sessionStore('userName', 'Karthiga');
sessionStorage.setItem( sessionStorage.setItem(
'auth', 'auth',
'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJodHRwOi8vc2NoZW1hcy54bWxzb2FwLm9yZy93cy8yMDA1LzA1L2lkZW50aXR5L2NsYWltcy9uYW1lIjoiOTY5ODgzODk2NiIsIlBhc3N3b3JkIjoiWkB6MTIzNCIsImF1ZCI6WyJodHRwOi8vMTkyLjE2OC4xLjM3OjgwMTMiLCJodHRwOi8vMTkyLjE2OC4xLjM3OjgwMTIiLCJodHRwOi8vMTkyLjE2OC4xLjM3OjgwMTQiLCJodHRwOi8vMTkyLjE2OC4xLjM3OjgwMTMiXSwiZXhwIjoxNzYzMDYwNjE4LCJpc3MiOiJodHRwOi8vMTkyLjE2OC4xLjM3OjgwMDEifQ.nN96UzT0oV1Ssn5WHIMpTwYFO1N3ifu81HLXwE-SvB8' 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJodHRwOi8vc2NoZW1hcy54bWxzb2FwLm9yZy93cy8yMDA1LzA1L2lkZW50aXR5L2NsYWltcy9uYW1lIjoiOTY5ODgzODk2NiIsIlBhc3N3b3JkIjoiWkB6MTIzNCIsImF1ZCI6WyJodHRwOi8vMTkyLjE2OC4xLjM3OjgwMTMiLCJodHRwOi8vMTkyLjE2OC4xLjM3OjgwMTIiLCJodHRwOi8vMTkyLjE2OC4xLjM3OjgwMTQiLCJodHRwOi8vMTkyLjE2OC4xLjM3OjgwMTMiXSwiZXhwIjoxNzYzMTQ1MzUwLCJpc3MiOiJodHRwOi8vMTkyLjE2OC4xLjM3OjgwMDEifQ.6nO0-3OBKfiBafld-gWIccjG-7yGuYA3q-ZRxfultu8'
); );
// sessionStore('AppId', 1); // sessionStore('AppId', 1);
// sessionStore('BranchId', 121); // sessionStore('BranchId', 121);