diff --git a/src/components/Dashboard/ExpenseByProject.jsx b/src/components/Dashboard/ExpenseByProject.jsx index 1c87ef33..9a0e5a95 100644 --- a/src/components/Dashboard/ExpenseByProject.jsx +++ b/src/components/Dashboard/ExpenseByProject.jsx @@ -1,6 +1,5 @@ import React, { useState, useEffect } from "react"; import Chart from "react-apexcharts"; -import { useExpenseType } from "../../hooks/masterHook/useMaster"; import { useSelector } from "react-redux"; import { useExpenseDataByProject } from "../../hooks/useDashboard_Data"; import { formatCurrency } from "../../utils/appUtils"; @@ -8,6 +7,7 @@ import { formatDate_DayMonth } from "../../utils/dateUtils"; import { useProjectName } from "../../hooks/useProjects"; import { useSelectedProject } from "../../slices/apiDataManager"; import { SpinnerLoader } from "../common/Loader"; +import { useExpenseCategory } from "../../hooks/masterHook/useMaster"; const ExpenseByProject = () => { const projectId = useSelector((store) => store.localVariables.projectId); @@ -19,7 +19,7 @@ const ExpenseByProject = () => { const [chartData, setChartData] = useState({ categories: [], data: [] }); const selectedProject = useSelectedProject(); - const { ExpenseTypes, loading: typeLoading } = useExpenseType(); + const {expenseCategories , loading: typeLoading } = useExpenseCategory(); const { data: expenseApiData, isLoading } = useExpenseDataByProject( projectId, @@ -50,7 +50,7 @@ const ExpenseByProject = () => { const getSelectedTypeName = () => { if (!selectedType) return "All Types"; - const found = ExpenseTypes.find((t) => t.id === selectedType); + const found = expenseCategories?.find((t) => t.id === selectedType); return found ? found.name : "All Types"; }; @@ -157,7 +157,7 @@ const ExpenseByProject = () => { style={{ maxWidth: "200px" }} > - {ExpenseTypes.map((type) => ( + {expenseCategories?.map((type) => ( diff --git a/src/components/Expenses/ActiveFilters.jsx b/src/components/Expenses/ActiveFilters.jsx new file mode 100644 index 00000000..ebd8639d --- /dev/null +++ b/src/components/Expenses/ActiveFilters.jsx @@ -0,0 +1,50 @@ +const ActiveFilters = ({ filters, optionsLookup = {}, onRemove }) => { + const entries = Object.entries(filters || {}); + + return ( +