formatting
This commit is contained in:
@@ -1,10 +1,7 @@
|
||||
import InquiryPrivacyFencingPage from "@/components/dashboard/inquiryPrivacyFencing";
|
||||
|
||||
const Page = () => {
|
||||
|
||||
return (
|
||||
<InquiryPrivacyFencingPage />
|
||||
);
|
||||
return <InquiryPrivacyFencingPage />;
|
||||
};
|
||||
|
||||
export default Page;
|
||||
export default Page;
|
||||
|
||||
@@ -12,4 +12,4 @@ const Layout = ({ children }) => {
|
||||
</Stack>
|
||||
);
|
||||
};
|
||||
export default Layout;
|
||||
export default Layout;
|
||||
|
||||
@@ -1,9 +1,5 @@
|
||||
const Page = () => {
|
||||
|
||||
return (
|
||||
<>
|
||||
</>
|
||||
);
|
||||
return <></>;
|
||||
};
|
||||
|
||||
export default Page;
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
import { redirect } from "next/navigation";
|
||||
const prefix = process.env.NODE_ENV === "production" ? "/v3" : "";
|
||||
|
||||
function Page() {
|
||||
redirect("/dashboard", "replace");
|
||||
redirect(prefix + "/dashboard", "replace");
|
||||
return null;
|
||||
}
|
||||
|
||||
|
||||
@@ -99,7 +99,7 @@ const DataTable_Main = (props) => {
|
||||
params.set("sorting", JSON.stringify(sortData));
|
||||
return `${table_url}?${params}`;
|
||||
}, [table_url, filterData, pagination, columns]);
|
||||
|
||||
|
||||
const table = useMaterialReactTable({
|
||||
localization: FA_DATATABLE_LOCALIZATION,
|
||||
columns,
|
||||
|
||||
10
src/core/components/LtrTextField.jsx
Normal file
10
src/core/components/LtrTextField.jsx
Normal file
@@ -0,0 +1,10 @@
|
||||
import { TextField, styled } from "@mui/material";
|
||||
|
||||
const LtrTextField = styled(TextField)`
|
||||
.MuiInputBase-input {
|
||||
/* @noflip */
|
||||
direction: ltr;
|
||||
}
|
||||
`;
|
||||
|
||||
export default LtrTextField;
|
||||
@@ -25,7 +25,7 @@ function AskForKeepData({ filterData, sortData, user_id, page_name, table_name,
|
||||
})
|
||||
.filter(Boolean);
|
||||
filterAction(user_id, page_name, table_name, filteredItems, columns);
|
||||
|
||||
|
||||
sortAction(user_id, page_name, table_name, sortData, columns);
|
||||
toast.dismiss({ containerId: "datatable" });
|
||||
};
|
||||
@@ -75,4 +75,4 @@ function AskForKeepData({ filterData, sortData, user_id, page_name, table_name,
|
||||
);
|
||||
}
|
||||
|
||||
export default AskForKeepData;
|
||||
export default AskForKeepData;
|
||||
|
||||
@@ -15,11 +15,11 @@ function selectPage(item, route) {
|
||||
showSubitems: item.route === route,
|
||||
};
|
||||
} else if (item.Subitems && Array.isArray(item.Subitems)) {
|
||||
const updatedSubitems = item.Subitems.map(subitem => selectPage(subitem, route));
|
||||
const updatedSubitems = item.Subitems.map((subitem) => selectPage(subitem, route));
|
||||
return {
|
||||
...item,
|
||||
Subitems: updatedSubitems,
|
||||
showSubitems: updatedSubitems.some(subitem => subitem.showSubitems || subitem.route === route),
|
||||
showSubitems: updatedSubitems.some((subitem) => subitem.showSubitems || subitem.route === route),
|
||||
};
|
||||
}
|
||||
return item;
|
||||
@@ -28,59 +28,59 @@ function selectPage(item, route) {
|
||||
function reducer(state, action) {
|
||||
switch (action.type) {
|
||||
case "UPDATE_MENU":
|
||||
const _permissions = action.permissions || []
|
||||
const filteredPageMenu = filterMenuItems(state, ['all', ..._permissions])
|
||||
return filteredPageMenu
|
||||
const _permissions = action.permissions || [];
|
||||
const filteredPageMenu = filterMenuItems(state, ["all", ..._permissions]);
|
||||
return filteredPageMenu;
|
||||
case "COLLAPSE_MENU":
|
||||
return state.map((item) =>
|
||||
action.id == item.id
|
||||
? {
|
||||
...item,
|
||||
showSubitems: !item.showSubitems,
|
||||
}
|
||||
...item,
|
||||
showSubitems: !item.showSubitems,
|
||||
}
|
||||
: item
|
||||
);
|
||||
case "COLLAPSE_SUB_ITEMS":
|
||||
return state.map((item) => {
|
||||
return item.hasSubitems
|
||||
? {
|
||||
...item,
|
||||
Subitems: item.Subitems.map((subitem) =>
|
||||
action.id === subitem.id
|
||||
? {
|
||||
...subitem,
|
||||
showSubitems: !subitem.showSubitems,
|
||||
}
|
||||
: subitem
|
||||
),
|
||||
}
|
||||
...item,
|
||||
Subitems: item.Subitems.map((subitem) =>
|
||||
action.id === subitem.id
|
||||
? {
|
||||
...subitem,
|
||||
showSubitems: !subitem.showSubitems,
|
||||
}
|
||||
: subitem
|
||||
),
|
||||
}
|
||||
: item;
|
||||
});
|
||||
case "COLLAPSE_SUB_SECOND_ITEMS":
|
||||
return state.map((item) => {
|
||||
return item.hasSubitems
|
||||
? {
|
||||
...item,
|
||||
Subitems: item.Subitems.map((subitem) => {
|
||||
return subitem.hasSubitems
|
||||
? {
|
||||
...subitem,
|
||||
Subitems: subitem.Subitems.map((secondSubitem) =>
|
||||
action.id === secondSubitem.id
|
||||
? {
|
||||
...secondSubitem,
|
||||
showSubitems: !secondSubitem.showSubitems,
|
||||
}
|
||||
: secondSubitem
|
||||
),
|
||||
}
|
||||
: subitem;
|
||||
}),
|
||||
}
|
||||
...item,
|
||||
Subitems: item.Subitems.map((subitem) => {
|
||||
return subitem.hasSubitems
|
||||
? {
|
||||
...subitem,
|
||||
Subitems: subitem.Subitems.map((secondSubitem) =>
|
||||
action.id === secondSubitem.id
|
||||
? {
|
||||
...secondSubitem,
|
||||
showSubitems: !secondSubitem.showSubitems,
|
||||
}
|
||||
: secondSubitem
|
||||
),
|
||||
}
|
||||
: subitem;
|
||||
}),
|
||||
}
|
||||
: item;
|
||||
});
|
||||
case "SELECTED":
|
||||
return state.map(item => selectPage(item, action.route));
|
||||
return state.map((item) => selectPage(item, action.route));
|
||||
|
||||
default:
|
||||
throw new Error();
|
||||
@@ -88,7 +88,7 @@ function reducer(state, action) {
|
||||
}
|
||||
|
||||
const SidebarMenu = () => {
|
||||
const { data: userPermissions } = usePermissions()
|
||||
const { data: userPermissions } = usePermissions();
|
||||
const [menuItems, dispatch] = useReducer(reducer, pageMenu);
|
||||
const pathname = usePathname();
|
||||
const [selectedKey, setSelectedKey] = useState(null);
|
||||
@@ -99,10 +99,9 @@ const SidebarMenu = () => {
|
||||
}, [userPermissions, pathname]);
|
||||
|
||||
useEffect(() => {
|
||||
if (!userPermissions) return
|
||||
dispatch({ type: 'UPDATE_MENU', permissions: userPermissions });
|
||||
}, [userPermissions])
|
||||
|
||||
if (!userPermissions) return;
|
||||
dispatch({ type: "UPDATE_MENU", permissions: userPermissions });
|
||||
}, [userPermissions]);
|
||||
|
||||
useEffect(() => {
|
||||
selectedKey &&
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
export function filterMenuItems(items, _permissions = []) {
|
||||
return items.reduce((acc, item) => {
|
||||
if (item.permissions) {
|
||||
if (item.permissions.some(permission => _permissions.includes(permission))) {
|
||||
if (item.permissions.some((permission) => _permissions.includes(permission))) {
|
||||
acc.push(item);
|
||||
}
|
||||
} else if (item.hasSubitems) {
|
||||
@@ -14,4 +14,4 @@ export function filterMenuItems(items, _permissions = []) {
|
||||
}
|
||||
return acc;
|
||||
}, []);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import { Security } from "@mui/icons-material";
|
||||
const prefix = process.env.NODE_ENV === 'production' ? '/v3' : ''
|
||||
const prefix = process.env.NODE_ENV === "production" ? "/v3" : "";
|
||||
|
||||
export const pageMenu = [
|
||||
{
|
||||
@@ -8,7 +8,7 @@ export const pageMenu = [
|
||||
type: "page",
|
||||
route: prefix + "/dashboard",
|
||||
icon: <Security sx={{ width: "inherit", height: "inherit" }} />,
|
||||
permissions: ["all"]
|
||||
permissions: ["all"],
|
||||
},
|
||||
{
|
||||
id: "userManagement",
|
||||
@@ -16,7 +16,7 @@ export const pageMenu = [
|
||||
type: "page",
|
||||
route: process.env.NEXT_PUBLIC_API_URL + "/v2/user_management",
|
||||
icon: <Security sx={{ width: "inherit", height: "inherit" }} />,
|
||||
permissions: ['full-user-management', 'limited-user-management']
|
||||
permissions: ["full-user-management", "limited-user-management"],
|
||||
},
|
||||
{
|
||||
id: "projectsManagment",
|
||||
@@ -31,7 +31,7 @@ export const pageMenu = [
|
||||
type: "page",
|
||||
route: process.env.NEXT_PUBLIC_API_URL + "/v2/rahdari_projects/finance",
|
||||
icon: <Security sx={{ width: "inherit", height: "inherit" }} />,
|
||||
permissions: ['show-contract', 'show-contract-province'],
|
||||
permissions: ["show-contract", "show-contract-province"],
|
||||
},
|
||||
{
|
||||
id: "projectsManagmentList",
|
||||
@@ -39,7 +39,7 @@ export const pageMenu = [
|
||||
type: "page",
|
||||
route: process.env.NEXT_PUBLIC_API_URL + "/v2/rahdari_projects/projects_list",
|
||||
icon: <Security sx={{ width: "inherit", height: "inherit" }} />,
|
||||
permissions: ["all"]
|
||||
permissions: ["all"],
|
||||
},
|
||||
{
|
||||
id: "projectsManagmentProposal",
|
||||
@@ -47,7 +47,7 @@ export const pageMenu = [
|
||||
type: "page",
|
||||
route: process.env.NEXT_PUBLIC_API_URL + "/v2/rahdari_projects/proposal",
|
||||
icon: <Security sx={{ width: "inherit", height: "inherit" }} />,
|
||||
permissions: ['show-proposal', 'show-proposal-province']
|
||||
permissions: ["show-proposal", "show-proposal-province"],
|
||||
},
|
||||
{
|
||||
id: "projectsManagmentLawmaker",
|
||||
@@ -55,7 +55,7 @@ export const pageMenu = [
|
||||
type: "page",
|
||||
route: process.env.NEXT_PUBLIC_API_URL + "/v2/rahdari_projects/lawmakers",
|
||||
icon: <Security sx={{ width: "inherit", height: "inherit" }} />,
|
||||
permissions: ['show-lawmaker', 'show-lawmaker-province']
|
||||
permissions: ["show-lawmaker", "show-lawmaker-province"],
|
||||
},
|
||||
{
|
||||
id: "projectsManagmentMap",
|
||||
@@ -63,7 +63,7 @@ export const pageMenu = [
|
||||
type: "page",
|
||||
route: process.env.NEXT_PUBLIC_API_URL + "/v2/map?type=rahdari_projects",
|
||||
icon: <Security sx={{ width: "inherit", height: "inherit" }} />,
|
||||
permissions: ["all"]
|
||||
permissions: ["all"],
|
||||
},
|
||||
],
|
||||
},
|
||||
@@ -86,7 +86,10 @@ export const pageMenu = [
|
||||
label: "کارتابل",
|
||||
type: "page",
|
||||
route: process.env.NEXT_PUBLIC_API_URL + "/v2/road_items/supervisor/cartable",
|
||||
permissions: ['show-road-item-supervise-cartable', 'show-road-item-supervise-cartable-province']
|
||||
permissions: [
|
||||
"show-road-item-supervise-cartable",
|
||||
"show-road-item-supervise-cartable-province",
|
||||
],
|
||||
},
|
||||
],
|
||||
},
|
||||
@@ -102,14 +105,14 @@ export const pageMenu = [
|
||||
label: "ثبت فعالیت",
|
||||
type: "page",
|
||||
route: process.env.NEXT_PUBLIC_API_URL + "/v2/road_items/operator/create",
|
||||
permissions: ['create-road-item']
|
||||
permissions: ["create-road-item"],
|
||||
},
|
||||
{
|
||||
id: "roadItemManagmentOparationCartable",
|
||||
label: "کارتابل",
|
||||
type: "page",
|
||||
route: process.env.NEXT_PUBLIC_API_URL + "/v2/road_items/operator/cartable",
|
||||
permissions: ['create-road-item']
|
||||
permissions: ["create-road-item"],
|
||||
},
|
||||
],
|
||||
},
|
||||
@@ -119,7 +122,11 @@ export const pageMenu = [
|
||||
type: "page",
|
||||
route: process.env.NEXT_PUBLIC_API_URL + "/v2/map?type=road_items",
|
||||
icon: <Security sx={{ width: "inherit", height: "inherit" }} />,
|
||||
permissions: ['show-road-item-supervise-cartable', 'show-road-item-supervise-cartable-province', 'create-road-item']
|
||||
permissions: [
|
||||
"show-road-item-supervise-cartable",
|
||||
"show-road-item-supervise-cartable-province",
|
||||
"create-road-item",
|
||||
],
|
||||
},
|
||||
{
|
||||
id: "roadItemManagmentReport",
|
||||
@@ -127,7 +134,11 @@ export const pageMenu = [
|
||||
type: "page",
|
||||
route: process.env.NEXT_PUBLIC_API_URL + "/v2/road_items/report",
|
||||
icon: <Security sx={{ width: "inherit", height: "inherit" }} />,
|
||||
permissions: ['show-road-item-supervise-cartable', 'show-road-item-supervise-cartable-province', 'create-road-item']
|
||||
permissions: [
|
||||
"show-road-item-supervise-cartable",
|
||||
"show-road-item-supervise-cartable-province",
|
||||
"create-road-item",
|
||||
],
|
||||
},
|
||||
],
|
||||
},
|
||||
@@ -150,7 +161,10 @@ export const pageMenu = [
|
||||
label: "کارتابل",
|
||||
type: "page",
|
||||
route: process.env.NEXT_PUBLIC_API_URL + "/road_patrols/supervisor/cartable",
|
||||
permissions: ['show-road-patrol-supervise-cartable', 'show-road-patrol-supervise-cartable-province']
|
||||
permissions: [
|
||||
"show-road-patrol-supervise-cartable",
|
||||
"show-road-patrol-supervise-cartable-province",
|
||||
],
|
||||
},
|
||||
],
|
||||
},
|
||||
@@ -166,14 +180,14 @@ export const pageMenu = [
|
||||
label: "ثبت اقدام",
|
||||
type: "page",
|
||||
route: process.env.NEXT_PUBLIC_API_URL + "/v2/road_patrols/operator/create",
|
||||
permissions: ['add-road-patrol']
|
||||
permissions: ["add-road-patrol"],
|
||||
},
|
||||
{
|
||||
id: "roadPatrolManagmentOparationCartable",
|
||||
label: "کارتابل",
|
||||
type: "page",
|
||||
route: process.env.NEXT_PUBLIC_API_URL + "/v2/road_patrols/operator/cartable",
|
||||
permissions: ['add-road-patrol']
|
||||
permissions: ["add-road-patrol"],
|
||||
},
|
||||
],
|
||||
},
|
||||
@@ -183,7 +197,11 @@ export const pageMenu = [
|
||||
type: "page",
|
||||
route: process.env.NEXT_PUBLIC_API_URL + "/v2/map?type=road_patrols",
|
||||
icon: <Security sx={{ width: "inherit", height: "inherit" }} />,
|
||||
permissions: ['add-road-patrol', 'show-road-patrol-supervise-cartable', 'show-road-patrol-supervise-cartable-province']
|
||||
permissions: [
|
||||
"add-road-patrol",
|
||||
"show-road-patrol-supervise-cartable",
|
||||
"show-road-patrol-supervise-cartable-province",
|
||||
],
|
||||
},
|
||||
{
|
||||
id: "roadPatrolManagmentReport",
|
||||
@@ -191,7 +209,11 @@ export const pageMenu = [
|
||||
type: "page",
|
||||
route: process.env.NEXT_PUBLIC_API_URL + "/v2/road_patrols/report",
|
||||
icon: <Security sx={{ width: "inherit", height: "inherit" }} />,
|
||||
permissions: ['add-road-patrol', 'show-road-patrol-supervise-cartable', 'show-road-patrol-supervise-cartable-province']
|
||||
permissions: [
|
||||
"add-road-patrol",
|
||||
"show-road-patrol-supervise-cartable",
|
||||
"show-road-patrol-supervise-cartable-province",
|
||||
],
|
||||
},
|
||||
],
|
||||
},
|
||||
@@ -207,23 +229,23 @@ export const pageMenu = [
|
||||
label: "احداث و بهره برداری دیوارکشی و مستحدثات",
|
||||
type: "page",
|
||||
route: prefix + "/dashboard/inquiry_privacy/fencing",
|
||||
permissions: ['all']
|
||||
permissions: ["all"],
|
||||
},
|
||||
{
|
||||
id: "inquiryPrivacyManagmentRoad",
|
||||
label: "احداث راه دسترسی اختصاصی",
|
||||
type: "page",
|
||||
route: prefix + "/dashboard/inquiry_privacy/road",
|
||||
permissions: ['all']
|
||||
permissions: ["all"],
|
||||
},
|
||||
{
|
||||
id: "inquiryPrivacyManagmentInfrastructure",
|
||||
label: "احداث و بهره برداری تاسیسات زیربنایی",
|
||||
type: "page",
|
||||
route: prefix + "/dashboard/inquiry_privacy/infrastructure",
|
||||
permissions: ['all']
|
||||
permissions: ["all"],
|
||||
},
|
||||
]
|
||||
],
|
||||
},
|
||||
{
|
||||
id: "safetyAndPrivacyManagment",
|
||||
@@ -244,14 +266,18 @@ export const pageMenu = [
|
||||
label: "ثبت فعالیت",
|
||||
type: "page",
|
||||
route: process.env.NEXT_PUBLIC_API_URL + "/safety_and_privacy/operator/first_step",
|
||||
permissions: ['add-safety-and-privacy']
|
||||
permissions: ["add-safety-and-privacy"],
|
||||
},
|
||||
{
|
||||
id: "safetyAndPrivacyManagmentOparationCartable",
|
||||
label: "کارتابل",
|
||||
type: "page",
|
||||
route: process.env.NEXT_PUBLIC_API_URL + "/v2/safety_and_privacy/operator/cartable",
|
||||
permissions: ['show-safety-and-privacy-operator-cartable', 'show-safety-and-privacy-operator-cartable-province', 'show-safety-and-privacy-operator-cartable-edarate-shahri']
|
||||
permissions: [
|
||||
"show-safety-and-privacy-operator-cartable",
|
||||
"show-safety-and-privacy-operator-cartable-province",
|
||||
"show-safety-and-privacy-operator-cartable-edarate-shahri",
|
||||
],
|
||||
},
|
||||
],
|
||||
},
|
||||
@@ -261,8 +287,12 @@ export const pageMenu = [
|
||||
type: "page",
|
||||
route: process.env.NEXT_PUBLIC_API_URL + "/v2/map?type=safety_and_privacy",
|
||||
icon: <Security sx={{ width: "inherit", height: "inherit" }} />,
|
||||
permissions: ['show-safety-and-privacy-operator-cartable', 'show-safety-and-privacy-operator-cartable-province',
|
||||
'show-safety-and-privacy-operator-cartable-edarate-shahri', 'add-safety-and-privacy']
|
||||
permissions: [
|
||||
"show-safety-and-privacy-operator-cartable",
|
||||
"show-safety-and-privacy-operator-cartable-province",
|
||||
"show-safety-and-privacy-operator-cartable-edarate-shahri",
|
||||
"add-safety-and-privacy",
|
||||
],
|
||||
},
|
||||
{
|
||||
id: "safetyAndPrivacyManagmentReport",
|
||||
@@ -270,8 +300,12 @@ export const pageMenu = [
|
||||
type: "page",
|
||||
route: process.env.NEXT_PUBLIC_API_URL + "/v2/safety_and_privacy/report",
|
||||
icon: <Security sx={{ width: "inherit", height: "inherit" }} />,
|
||||
permissions: ['show-safety-and-privacy-operator-cartable', 'show-safety-and-privacy-operator-cartable-province',
|
||||
'show-safety-and-privacy-operator-cartable-edarate-shahri', 'add-safety-and-privacy']
|
||||
permissions: [
|
||||
"show-safety-and-privacy-operator-cartable",
|
||||
"show-safety-and-privacy-operator-cartable-province",
|
||||
"show-safety-and-privacy-operator-cartable-edarate-shahri",
|
||||
"add-safety-and-privacy",
|
||||
],
|
||||
},
|
||||
],
|
||||
},
|
||||
@@ -294,7 +328,7 @@ export const pageMenu = [
|
||||
label: "کارتابل",
|
||||
type: "page",
|
||||
route: process.env.NEXT_PUBLIC_API_URL + "/v2/road_observations/supervisor/cartable",
|
||||
permissions: ['supervise-fast-react', 'supervise-fast-react-province']
|
||||
permissions: ["supervise-fast-react", "supervise-fast-react-province"],
|
||||
},
|
||||
],
|
||||
},
|
||||
@@ -304,7 +338,7 @@ export const pageMenu = [
|
||||
type: "page",
|
||||
route: process.env.NEXT_PUBLIC_API_URL + "/v2/road_observations",
|
||||
icon: <Security sx={{ width: "inherit", height: "inherit" }} />,
|
||||
permissions: ['show-fast-react', 'show-fast-react-province', 'show-fast-react-edarate-shahri']
|
||||
permissions: ["show-fast-react", "show-fast-react-province", "show-fast-react-edarate-shahri"],
|
||||
},
|
||||
{
|
||||
id: "roadObservationsManagmentOparation",
|
||||
@@ -318,7 +352,7 @@ export const pageMenu = [
|
||||
label: "کارتابل",
|
||||
type: "page",
|
||||
route: process.env.NEXT_PUBLIC_API_URL + "/v2/road_observations/operator/cartable",
|
||||
permissions: ['show-fast-react', 'show-fast-react-province', 'show-fast-react-edarate-shahri']
|
||||
permissions: ["show-fast-react", "show-fast-react-province", "show-fast-react-edarate-shahri"],
|
||||
},
|
||||
],
|
||||
},
|
||||
@@ -328,7 +362,7 @@ export const pageMenu = [
|
||||
type: "page",
|
||||
route: process.env.NEXT_PUBLIC_API_URL + "/v2/map?type=road_observations",
|
||||
icon: <Security sx={{ width: "inherit", height: "inherit" }} />,
|
||||
permissions: ["all"]
|
||||
permissions: ["all"],
|
||||
},
|
||||
{
|
||||
id: "roadObservationsManagmentReport",
|
||||
@@ -336,7 +370,7 @@ export const pageMenu = [
|
||||
type: "page",
|
||||
route: process.env.NEXT_PUBLIC_API_URL + "/v2/road_observations/report/index",
|
||||
icon: <Security sx={{ width: "inherit", height: "inherit" }} />,
|
||||
permissions: ["all"]
|
||||
permissions: ["all"],
|
||||
},
|
||||
],
|
||||
},
|
||||
@@ -353,7 +387,7 @@ export const pageMenu = [
|
||||
type: "page",
|
||||
route: process.env.NEXT_PUBLIC_API_URL + "/v2/winter_camp",
|
||||
icon: <Security sx={{ width: "inherit", height: "inherit" }} />,
|
||||
permissions: ['show-camp', 'show-camp-province']
|
||||
permissions: ["show-camp", "show-camp-province"],
|
||||
},
|
||||
{
|
||||
id: "winterCampManagmentFirstRing",
|
||||
@@ -361,7 +395,7 @@ export const pageMenu = [
|
||||
type: "page",
|
||||
route: process.env.NEXT_PUBLIC_API_URL + "/v2/map?type=camp",
|
||||
icon: <Security sx={{ width: "inherit", height: "inherit" }} />,
|
||||
permissions: ['show-camp', 'show-camp-province']
|
||||
permissions: ["show-camp", "show-camp-province"],
|
||||
},
|
||||
{
|
||||
id: "winterCampManagmentReport",
|
||||
@@ -369,7 +403,7 @@ export const pageMenu = [
|
||||
type: "page",
|
||||
route: process.env.NEXT_PUBLIC_API_URL + "/v2/map?type=campNew",
|
||||
icon: <Security sx={{ width: "inherit", height: "inherit" }} />,
|
||||
permissions: ['show-camp', 'show-camp-province']
|
||||
permissions: ["show-camp", "show-camp-province"],
|
||||
},
|
||||
],
|
||||
},
|
||||
@@ -392,7 +426,7 @@ export const pageMenu = [
|
||||
label: "کارتابل",
|
||||
type: "page",
|
||||
route: process.env.NEXT_PUBLIC_API_URL + "/v2/receipt",
|
||||
permissions: ["all"]
|
||||
permissions: ["all"],
|
||||
},
|
||||
],
|
||||
},
|
||||
@@ -402,7 +436,7 @@ export const pageMenu = [
|
||||
type: "page",
|
||||
route: process.env.NEXT_PUBLIC_API_URL + "/v2/receipt/report",
|
||||
icon: <Security sx={{ width: "inherit", height: "inherit" }} />,
|
||||
permissions: ["all"]
|
||||
permissions: ["all"],
|
||||
},
|
||||
],
|
||||
},
|
||||
|
||||
@@ -3,4 +3,4 @@ const api = process.env.NEXT_PUBLIC_API_URL;
|
||||
export const GET_USER_ROUTE = api + "/webapi/user/get-permission";
|
||||
export const GET_LOGIN_ROUTE = api + "/login_dev";
|
||||
|
||||
export const GET_PERMISSIONS_ROUTE = api + "/webapi/user/get-permission";
|
||||
export const GET_PERMISSIONS_ROUTE = api + "/webapi/user/get-permission";
|
||||
|
||||
@@ -3,16 +3,16 @@ import useSWR from "swr";
|
||||
import useRequest from "./useRequest";
|
||||
|
||||
export const usePermissions = () => {
|
||||
const request = useRequest()
|
||||
const request = useRequest();
|
||||
|
||||
const fetcher = async (url) => {
|
||||
try {
|
||||
const response = await request(url)
|
||||
return response.data.data
|
||||
const response = await request(url);
|
||||
return response.data.data;
|
||||
} catch (error) {
|
||||
throw new Error();
|
||||
}
|
||||
};
|
||||
|
||||
return useSWR(GET_PERMISSIONS_ROUTE, fetcher, { keepPreviousData: true });
|
||||
}
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user