initial commit
This commit is contained in:
57
src/menu-items/dashboard.js
Normal file
57
src/menu-items/dashboard.js
Normal file
@@ -0,0 +1,57 @@
|
||||
// third-party
|
||||
import { FormattedMessage } from 'react-intl';
|
||||
|
||||
// project import
|
||||
import { useSelector } from 'store';
|
||||
|
||||
// assets
|
||||
import { DashboardOutlined, GoldOutlined } from '@ant-design/icons';
|
||||
|
||||
const icons = {
|
||||
dashboard: DashboardOutlined,
|
||||
components: GoldOutlined
|
||||
};
|
||||
|
||||
// ==============================|| MENU ITEMS - API ||============================== //
|
||||
|
||||
export const Menu = () => {
|
||||
const { menu } = useSelector((state) => state.menu);
|
||||
|
||||
const SubChildrenLis = (SubChildrenLis) => {
|
||||
return SubChildrenLis?.map((subList) => {
|
||||
return {
|
||||
...subList,
|
||||
title: <FormattedMessage id={`${subList.title}`} />,
|
||||
icon: icons[subList.icon]
|
||||
};
|
||||
});
|
||||
};
|
||||
|
||||
const itemList = (subList) => {
|
||||
let list = {
|
||||
...subList,
|
||||
title: <FormattedMessage id={`${subList.title}`} />,
|
||||
icon: icons[subList.icon]
|
||||
};
|
||||
|
||||
if (subList.type === 'collapse') {
|
||||
list.children = SubChildrenLis(subList.children);
|
||||
}
|
||||
return list;
|
||||
};
|
||||
|
||||
const withoutMenu = menu?.children?.filter((item) => item.id !== 'no-menu');
|
||||
|
||||
const ChildrenList = withoutMenu?.map((subList) => {
|
||||
return itemList(subList);
|
||||
});
|
||||
|
||||
const menuList = {
|
||||
...menu,
|
||||
title: <FormattedMessage id={`${menu.title}`} />,
|
||||
icon: icons[menu.icon],
|
||||
children: ChildrenList
|
||||
};
|
||||
|
||||
return menuList;
|
||||
};
|
||||
14
src/menu-items/index.js
Normal file
14
src/menu-items/index.js
Normal file
@@ -0,0 +1,14 @@
|
||||
// project import
|
||||
// import other from './other';
|
||||
import nearle from './nearle';
|
||||
|
||||
// ==============================|| MENU ITEMS ||============================== //
|
||||
|
||||
const menuItems = {
|
||||
items: [
|
||||
// other,
|
||||
nearle
|
||||
]
|
||||
};
|
||||
|
||||
export default menuItems;
|
||||
154
src/menu-items/nearle.js
Normal file
154
src/menu-items/nearle.js
Normal file
@@ -0,0 +1,154 @@
|
||||
// third-party
|
||||
import { FormattedMessage } from 'react-intl';
|
||||
import DirectionsBikeOutlinedIcon from '@mui/icons-material/DirectionsBikeOutlined';
|
||||
import ReceiptOutlinedIcon from '@mui/icons-material/ReceiptOutlined';
|
||||
import MopedOutlinedIcon from '@mui/icons-material/MopedOutlined';
|
||||
import { TbListDetails } from 'react-icons/tb';
|
||||
|
||||
// assets
|
||||
import {
|
||||
BorderOutlined,
|
||||
BoxPlotOutlined,
|
||||
ChromeOutlined,
|
||||
DeploymentUnitOutlined,
|
||||
GatewayOutlined,
|
||||
MenuUnfoldOutlined,
|
||||
QuestionOutlined,
|
||||
SmileOutlined,
|
||||
StopOutlined,
|
||||
DashboardOutlined,
|
||||
ClockCircleOutlined,
|
||||
UserOutlined,
|
||||
SettingOutlined,
|
||||
TeamOutlined,
|
||||
MailOutlined,
|
||||
ImportOutlined,
|
||||
BarChartOutlined,
|
||||
MoneyCollectOutlined,
|
||||
FileDoneOutlined
|
||||
} from '@ant-design/icons';
|
||||
|
||||
// icons
|
||||
const icons = {
|
||||
ChromeOutlined,
|
||||
MenuUnfoldOutlined,
|
||||
BoxPlotOutlined,
|
||||
StopOutlined,
|
||||
BorderOutlined,
|
||||
SmileOutlined,
|
||||
GatewayOutlined,
|
||||
QuestionOutlined,
|
||||
DeploymentUnitOutlined,
|
||||
DashboardOutlined,
|
||||
ClockCircleOutlined,
|
||||
UserOutlined,
|
||||
SettingOutlined,
|
||||
TeamOutlined,
|
||||
MailOutlined,
|
||||
ImportOutlined,
|
||||
BarChartOutlined,
|
||||
ReceiptOutlinedIcon,
|
||||
FileDoneOutlined
|
||||
};
|
||||
|
||||
// ==============================|| MENU ITEMS - SUPPORT ||============================== //
|
||||
|
||||
const nearle = {
|
||||
id: 'nearle_Pages',
|
||||
title: <FormattedMessage id="Nearle" />,
|
||||
icon: icons.FileDoneOutlined,
|
||||
type: 'group',
|
||||
children: [
|
||||
{
|
||||
id: 'orders',
|
||||
title: <FormattedMessage id="orders" />,
|
||||
type: 'item',
|
||||
url: '/nearle/orders',
|
||||
icon: icons.DashboardOutlined
|
||||
},
|
||||
|
||||
{
|
||||
id: 'deliveries',
|
||||
title: <FormattedMessage id="deliveries" />,
|
||||
type: 'item',
|
||||
url: '/nearle/deliveries',
|
||||
icon: MopedOutlinedIcon
|
||||
},
|
||||
{
|
||||
id: 'tenants',
|
||||
title: <FormattedMessage id="tenants" />,
|
||||
type: 'item',
|
||||
url: '/nearle/tenants',
|
||||
icon: icons.UserOutlined
|
||||
},
|
||||
{
|
||||
id: 'pricing',
|
||||
title: <FormattedMessage id="pricing" />,
|
||||
type: 'item',
|
||||
url: '/nearle/pricing',
|
||||
icon: MoneyCollectOutlined
|
||||
},
|
||||
{
|
||||
id: 'customers',
|
||||
title: <FormattedMessage id="customers" />,
|
||||
type: 'item',
|
||||
url: '/nearle/customers',
|
||||
icon: icons.TeamOutlined
|
||||
},
|
||||
{
|
||||
id: 'riders',
|
||||
title: <FormattedMessage id="riders" />,
|
||||
type: 'item',
|
||||
url: '/nearle/riders',
|
||||
icon: DirectionsBikeOutlinedIcon
|
||||
},
|
||||
{
|
||||
id: 'reports',
|
||||
title: <FormattedMessage id="reports" />,
|
||||
type: 'collapse',
|
||||
icon: icons.BarChartOutlined,
|
||||
children: [
|
||||
{
|
||||
id: 'reports',
|
||||
title: <FormattedMessage id="ordersummary" />,
|
||||
type: 'item',
|
||||
url: '/nearle/reports/orderssummary',
|
||||
icon: TbListDetails
|
||||
},
|
||||
{
|
||||
id: 'ordersdetails',
|
||||
title: <FormattedMessage id="ordersdetails" />,
|
||||
type: 'item',
|
||||
url: '/nearle/reports/ordersdetails',
|
||||
icon: icons.DashboardOutlined
|
||||
// target: true
|
||||
},
|
||||
{
|
||||
id: 'riderssummary',
|
||||
title: <FormattedMessage id="riderssummary" />,
|
||||
type: 'item',
|
||||
url: '/nearle/reports/riderssummary',
|
||||
icon: DirectionsBikeOutlinedIcon
|
||||
// target: true
|
||||
},
|
||||
{
|
||||
id: 'riderslogs',
|
||||
title: <FormattedMessage id="riderslogs" />,
|
||||
type: 'item',
|
||||
url: '/nearle/reports/riderslogs',
|
||||
icon: DirectionsBikeOutlinedIcon
|
||||
// target: true
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
id: 'invoice',
|
||||
title: <FormattedMessage id="invoice" />,
|
||||
type: 'item',
|
||||
url: '/nearle/invoice',
|
||||
icon: icons.ReceiptOutlinedIcon
|
||||
}
|
||||
]
|
||||
};
|
||||
|
||||
export default nearle;
|
||||
178
src/menu-items/other.js
Normal file
178
src/menu-items/other.js
Normal file
@@ -0,0 +1,178 @@
|
||||
// third-party
|
||||
import { FormattedMessage } from 'react-intl';
|
||||
// import TwoWheelerOutlinedIcon from '@mui/icons-material/TwoWheelerOutlined';
|
||||
// import SportsMotorsportsOutlinedIcon from '@mui/icons-material/SportsMotorsportsOutlined';
|
||||
import DirectionsBikeOutlinedIcon from '@mui/icons-material/DirectionsBikeOutlined';
|
||||
import ReceiptOutlinedIcon from '@mui/icons-material/ReceiptOutlined';
|
||||
import MopedOutlinedIcon from '@mui/icons-material/MopedOutlined';
|
||||
import { TbListDetails } from 'react-icons/tb';
|
||||
|
||||
// assets
|
||||
import {
|
||||
BorderOutlined,
|
||||
BoxPlotOutlined,
|
||||
ChromeOutlined,
|
||||
DeploymentUnitOutlined,
|
||||
GatewayOutlined,
|
||||
MenuUnfoldOutlined,
|
||||
QuestionOutlined,
|
||||
SmileOutlined,
|
||||
StopOutlined,
|
||||
DashboardOutlined,
|
||||
ClockCircleOutlined,
|
||||
UserOutlined,
|
||||
SettingOutlined,
|
||||
TeamOutlined,
|
||||
MailOutlined,
|
||||
ImportOutlined,
|
||||
BarChartOutlined,
|
||||
MoneyCollectOutlined
|
||||
} from '@ant-design/icons';
|
||||
|
||||
// icons
|
||||
const icons = {
|
||||
ChromeOutlined,
|
||||
MenuUnfoldOutlined,
|
||||
BoxPlotOutlined,
|
||||
StopOutlined,
|
||||
BorderOutlined,
|
||||
SmileOutlined,
|
||||
GatewayOutlined,
|
||||
QuestionOutlined,
|
||||
DeploymentUnitOutlined,
|
||||
DashboardOutlined,
|
||||
ClockCircleOutlined,
|
||||
UserOutlined,
|
||||
SettingOutlined,
|
||||
TeamOutlined,
|
||||
MailOutlined,
|
||||
ImportOutlined,
|
||||
BarChartOutlined,
|
||||
ReceiptOutlinedIcon
|
||||
};
|
||||
|
||||
// ==============================|| MENU ITEMS - SUPPORT ||============================== //
|
||||
|
||||
const other = {
|
||||
id: 'other',
|
||||
title: <FormattedMessage id="MENU" />,
|
||||
type: 'group',
|
||||
children: [
|
||||
{
|
||||
id: 'orders',
|
||||
title: <FormattedMessage id="Orders" />,
|
||||
type: 'item',
|
||||
url: '/orders',
|
||||
icon: icons.DashboardOutlined
|
||||
},
|
||||
|
||||
{
|
||||
// id: 'deliveries',
|
||||
id: 'dashboard',
|
||||
title: <FormattedMessage id="Deliveries" />,
|
||||
type: 'item',
|
||||
url: '/deliveries',
|
||||
icon: MopedOutlinedIcon
|
||||
},
|
||||
{
|
||||
id: 'tenants',
|
||||
title: <FormattedMessage id="Tenants" />,
|
||||
type: 'item',
|
||||
url: '/tenants',
|
||||
icon: icons.UserOutlined
|
||||
},
|
||||
{
|
||||
id: 'pricing',
|
||||
title: <FormattedMessage id="Pricing" />,
|
||||
type: 'item',
|
||||
url: '/clients_pricing',
|
||||
icon: MoneyCollectOutlined
|
||||
},
|
||||
{
|
||||
id: 'customers',
|
||||
title: <FormattedMessage id="Customers" />,
|
||||
type: 'item',
|
||||
url: '/customers',
|
||||
icon: icons.TeamOutlined
|
||||
},
|
||||
{
|
||||
id: 'riders',
|
||||
title: <FormattedMessage id="Riders" />,
|
||||
type: 'item',
|
||||
url: '/riders',
|
||||
icon: DirectionsBikeOutlinedIcon
|
||||
},
|
||||
{
|
||||
id: 'reports',
|
||||
title: <FormattedMessage id="Reports" />,
|
||||
type: 'collapse',
|
||||
icon: icons.BarChartOutlined,
|
||||
children: [
|
||||
{
|
||||
id: 'orderssummary',
|
||||
title: <FormattedMessage id="Orders Summary" />,
|
||||
type: 'item',
|
||||
url: '/reports/orderssummary',
|
||||
icon: TbListDetails
|
||||
},
|
||||
{
|
||||
id: 'ordersdetails',
|
||||
title: <FormattedMessage id="Orders Details" />,
|
||||
type: 'item',
|
||||
url: '/reports/ordersdetails',
|
||||
icon: icons.DashboardOutlined
|
||||
// target: true
|
||||
},
|
||||
{
|
||||
id: 'riderssummary',
|
||||
title: <FormattedMessage id="Riders Summary" />,
|
||||
type: 'item',
|
||||
url: '/reports/riderssummary',
|
||||
icon: DirectionsBikeOutlinedIcon
|
||||
// target: true
|
||||
},
|
||||
{
|
||||
id: 'riderslogs',
|
||||
title: <FormattedMessage id="Riders Logs" />,
|
||||
type: 'item',
|
||||
url: '/reports/riderslogs',
|
||||
icon: DirectionsBikeOutlinedIcon
|
||||
// target: true
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
id: 'invoice',
|
||||
title: <FormattedMessage id="Invoice" />,
|
||||
type: 'item',
|
||||
url: '/invoice',
|
||||
icon: icons.ReceiptOutlinedIcon
|
||||
}
|
||||
|
||||
// {
|
||||
// id: 'documentation',
|
||||
// title: <FormattedMessage id="documentation" />,
|
||||
// type: 'item',
|
||||
// url: 'https://links.codedthemes.com/BQFrl',
|
||||
// icon: icons.QuestionOutlined,
|
||||
// external: true,
|
||||
// target: true,
|
||||
// chip: {
|
||||
// label: 'gitbook',
|
||||
// color: 'secondary',
|
||||
// size: 'small'
|
||||
// }
|
||||
// },
|
||||
// {
|
||||
// id: 'roadmap',
|
||||
// title: <FormattedMessage id="roadmap" />,
|
||||
// type: 'item',
|
||||
// url: 'https://links.codedthemes.com/RXnKQ',
|
||||
// icon: icons.DeploymentUnitOutlined,
|
||||
// external: true,
|
||||
// target: true
|
||||
// }
|
||||
]
|
||||
};
|
||||
|
||||
export default other;
|
||||
Reference in New Issue
Block a user