import React, { createContext, useState, useEffect, useContext } from "react"; import Breadcrumb from "../../components/common/Breadcrumb"; import GlobalModel from "../../components/common/GlobalModel"; import ManagePaymentRequest from "../../components/PaymentRequest/ManagePaymentRequest"; import ExpenseFilterPanel from "../../components/Expenses/ExpenseFilterPanel"; import { useFab } from "../../Context/FabContext"; import PaymentRequestList from "../../components/PaymentRequest/PaymentRequestList"; import PaymentRequestFilterPanel from "../../components/PaymentRequest/PaymentRequestFilterPanel"; import { defaultPaymentRequestFilter,SearchPaymentRequestSchema } from "../../components/PaymentRequest/PaymentRequestSchema"; import ViewPaymentRequest from "../../components/PaymentRequest/ViewPaymentRequest"; export const PaymentRequestContext = createContext(); export const usePaymentRequestContext = () => { const context = useContext(PaymentRequestContext); if (!context) { throw new Error("usePaymentRequestContext must be used within an ExpenseProvider"); } return context; }; const PaymentRequestPage = () => { const [ManageRequest, setManageRequest] = useState({ IsOpen: null, RequestId: null, }); const [ViewRequest,setVieRequest] = useState({view:false,requestId:null}) const { setOffcanvasContent, setShowTrigger } = useFab(); const [filters, setFilters] = useState(defaultPaymentRequestFilter); const [search, setSearch] = useState(""); const contextValue = { setManageRequest, setVieRequest }; useEffect(() => { setShowTrigger(true); setOffcanvasContent( "Payment Request Filters", ); return () => { setShowTrigger(false); setOffcanvasContent("", null); }; }, []); return (
{/* Breadcrumb */} {/* Top Bar */}
setSearch(e.target.value)} />
{/* Add/Edit Modal */} {ManageRequest.IsOpen && ( setManageRequest({ IsOpen: null, expenseId: null }) } > setManageRequest({ IsOpen: null, RequestId: null }) } /> )} {ViewRequest.view && ( setVieRequest({ requestId: null, view: false })} > )}
); }; export default PaymentRequestPage;