#194 Print First time note coming issue solving
This commit is contained in:
parent
768eae15a1
commit
eb73151a56
47
src/App.jsx
47
src/App.jsx
|
|
@ -1,4 +1,4 @@
|
|||
import { useEffect, lazy, Suspense, useRef } from 'react';
|
||||
import { useEffect, lazy, Suspense, useRef, useState } from 'react';
|
||||
import { useLocation, useNavigate } from 'react-router-dom';
|
||||
import { App as CapacitorApp } from '@capacitor/app';
|
||||
import { Routes, Route } from 'react-router-dom';
|
||||
|
|
@ -26,6 +26,7 @@ import WeightScaleApp from './Pages/BookingScreen/WeightscaleApp.jsx';
|
|||
import useSubscriptionManager from './useSubscriptionManager.js';
|
||||
import useSessionManager from './useSessionManager.js';
|
||||
import ExtendSubscriptionModal from './Pages/ExtentedModal/ExtendSubscriptionModal.jsx';
|
||||
import devtools from 'devtools-detect';
|
||||
|
||||
const isCapacitor = () => !!window.Capacitor?.isNativePlatform?.();
|
||||
|
||||
|
|
@ -51,7 +52,7 @@ const AppRoutes = () => {
|
|||
} = useSubscriptionManager(sessionData, logout);
|
||||
const location = useLocation();
|
||||
const navigate = useNavigate();
|
||||
|
||||
const [devToolsOpen, setDevToolsOpen] = useState(false);
|
||||
// ✅ Flag to prevent stack push when back button navigates
|
||||
const isBackNav = useRef(false);
|
||||
|
||||
|
|
@ -188,7 +189,47 @@ const AppRoutes = () => {
|
|||
} catch (err) {}
|
||||
};
|
||||
}, [navigate, location.pathname, location.search]);
|
||||
|
||||
// mohan
|
||||
useEffect(() => {
|
||||
if (isMobile || isIOS) {
|
||||
console.log("📱 Mobile/iOS device → skipping DevTools detection");
|
||||
return;
|
||||
}
|
||||
const checkDevTools = setInterval(() => {
|
||||
if (devtools.isOpen && !devToolsOpen) {
|
||||
setDevToolsOpen(true);
|
||||
document.body.innerHTML =
|
||||
"<h1 style='color: red; text-align: center;'>Close Inspect to continue using the application.</h1>";
|
||||
}
|
||||
else if (!devtools.isOpen && devToolsOpen) {
|
||||
setDevToolsOpen(false);
|
||||
|
||||
setTimeout(() => {
|
||||
window.location.reload();
|
||||
}, 100);
|
||||
|
||||
clearInterval(checkDevTools);
|
||||
}
|
||||
|
||||
if (!devtools.isOpen) {
|
||||
let before = performance.now();
|
||||
|
||||
let after = performance.now();
|
||||
|
||||
let executionDelay = after - before;
|
||||
|
||||
if (executionDelay > 100) {
|
||||
setDevToolsOpen(true);
|
||||
document.body.innerHTML =
|
||||
"<h1 style='color: red; text-align: center;'>Close Inspect to continue using the application.</h1>";
|
||||
} else {
|
||||
setDevToolsOpen(false);
|
||||
}
|
||||
}
|
||||
}, 1000);
|
||||
|
||||
return () => clearInterval(checkDevTools);
|
||||
}, [devToolsOpen]);
|
||||
if (extendModel) {
|
||||
return (
|
||||
<ExtendSubscriptionModal
|
||||
|
|
|
|||
|
|
@ -10,58 +10,25 @@ import { ApplicationPreferences } from '../../Features/BrachLogin/BranchLogin.js
|
|||
import { SelectedPrintTemplate } from '../../Features/ThemeChange/ThemeChange';
|
||||
import { PreferenceData } from '../../Features/BookingScreen/BookingData/BookingData.js';
|
||||
|
||||
// js Files
|
||||
const PrintStyle1 = lazy(
|
||||
() => import('../BookingScreen/PrintTemplates/ThermalPrinter/PrintStyle1.jsx')
|
||||
);
|
||||
const PrintStyle2 = lazy(
|
||||
() => import('../BookingScreen/PrintTemplates/ThermalPrinter/PrintStyle2.jsx')
|
||||
);
|
||||
const PrintStyle3 = lazy(
|
||||
() => import('../BookingScreen/PrintTemplates/ThermalPrinter/PrintStyle3.jsx')
|
||||
);
|
||||
const PrintStyle4 = lazy(
|
||||
() => import('../BookingScreen/PrintTemplates/ThermalPrinter/PrintStyle4.jsx')
|
||||
);
|
||||
const PrintStyle5 = lazy(
|
||||
() => import('../BookingScreen/PrintTemplates/ThermalPrinter/PrintStyle5.jsx')
|
||||
);
|
||||
const PrintStyle6 = lazy(
|
||||
() => import('../BookingScreen/PrintTemplates/ThermalPrinter/PrintStyle6.jsx')
|
||||
);
|
||||
const PrintStyle7 = lazy(
|
||||
() => import('../BookingScreen/PrintTemplates/ThermalPrinter/PrintStyle7.jsx')
|
||||
);
|
||||
const PrintStyle8 = lazy(
|
||||
() => import('../BookingScreen/PrintTemplates/ThermalPrinter/PrintStyle8.jsx')
|
||||
);
|
||||
const PrintStyle9 = lazy(
|
||||
() => import('../BookingScreen/PrintTemplates/ThermalPrinter/PrintStyle9.jsx')
|
||||
);
|
||||
const PrintStyle10 = lazy(
|
||||
() =>
|
||||
import('../BookingScreen/PrintTemplates/ThermalPrinter/PrintStyle10.jsx')
|
||||
);
|
||||
const PrintStyle11 = lazy(
|
||||
() =>
|
||||
import('../BookingScreen/PrintTemplates/ThermalPrinter/PrintStyle11.jsx')
|
||||
);
|
||||
const PrintStyle12 = lazy(
|
||||
() =>
|
||||
import('../BookingScreen/PrintTemplates/ThermalPrinter/PrintStyle12.jsx')
|
||||
);
|
||||
const PrintA4Style11 = lazy(
|
||||
() => import('../BookingScreen/PrintTemplates/A4/PrintA4Style11.jsx')
|
||||
);
|
||||
const PrintA5Style11 = lazy(
|
||||
() => import('../BookingScreen/PrintTemplates/A4/PrintStyleA5.jsx')
|
||||
);
|
||||
const A4Standard = lazy(
|
||||
() => import('../BookingScreen/PrintTemplates/A4/A4Standard.jsx')
|
||||
);
|
||||
const TaxInvoice = lazy(
|
||||
() => import('../BookingScreen/PrintTemplates/A4/TaxInvoice.jsx')
|
||||
);
|
||||
// js Files
|
||||
import PrintStyle1 from '../BookingScreen/PrintTemplates/ThermalPrinter/PrintStyle1.jsx';
|
||||
import PrintStyle2 from '../BookingScreen/PrintTemplates/ThermalPrinter/PrintStyle2.jsx';
|
||||
import PrintStyle3 from '../BookingScreen/PrintTemplates/ThermalPrinter/PrintStyle3.jsx';
|
||||
import PrintStyle4 from '../BookingScreen/PrintTemplates/ThermalPrinter/PrintStyle4.jsx';
|
||||
import PrintStyle5 from '../BookingScreen/PrintTemplates/ThermalPrinter/PrintStyle5.jsx';
|
||||
import PrintStyle6 from '../BookingScreen/PrintTemplates/ThermalPrinter/PrintStyle6.jsx';
|
||||
import PrintStyle7 from '../BookingScreen/PrintTemplates/ThermalPrinter/PrintStyle7.jsx';
|
||||
import PrintStyle8 from '../BookingScreen/PrintTemplates/ThermalPrinter/PrintStyle8.jsx';
|
||||
import PrintStyle9 from '../BookingScreen/PrintTemplates/ThermalPrinter/PrintStyle9.jsx';
|
||||
import PrintStyle10 from '../BookingScreen/PrintTemplates/ThermalPrinter/PrintStyle10.jsx';
|
||||
import PrintStyle11 from '../BookingScreen/PrintTemplates/ThermalPrinter/PrintStyle11.jsx';
|
||||
import PrintStyle12 from '../BookingScreen/PrintTemplates/ThermalPrinter/PrintStyle12.jsx';
|
||||
|
||||
import PrintA4Style11 from '../BookingScreen/PrintTemplates/A4/PrintA4Style11.jsx';
|
||||
import PrintA5Style11 from '../BookingScreen/PrintTemplates/A4/PrintStyleA5.jsx';
|
||||
import A4Standard from '../BookingScreen/PrintTemplates/A4/A4Standard.jsx';
|
||||
import TaxInvoice from '../BookingScreen/PrintTemplates/A4/TaxInvoice.jsx';
|
||||
|
||||
const PaymentPdfBooking = ({
|
||||
index,
|
||||
orderId,
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
import { useEffect } from 'react';
|
||||
import { useDispatch } from 'react-redux';
|
||||
import { getTemplate } from '../Features/ThemeChange/ThemeChange.js';
|
||||
import { getPrintSelectionComponentData, getTemplate } from '../Features/ThemeChange/ThemeChange.js';
|
||||
|
||||
export const useTemplate = (CompId, BranchId, AppId) => {
|
||||
|
||||
|
|
@ -9,7 +9,9 @@ export const useTemplate = (CompId, BranchId, AppId) => {
|
|||
useEffect(() => {
|
||||
const fetchTemplate = async () => {
|
||||
try {
|
||||
const Data = { AppId, CompId, BranchId };
|
||||
await dispatch(getTemplate({ CompId, BranchId, AppId })).unwrap();
|
||||
dispatch(getPrintSelectionComponentData(Data)).unwrap();
|
||||
} catch (error) {
|
||||
console.error('Failed to fetch template:', error);
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue