* B2B-36: add dashboard cards * B2B-36: add dashboard cards * card variants, some improvements, gen db types * add menus to home page * update db types * remove unnecessary card variant --------- Co-authored-by: Helena <helena@Helenas-MacBook-Pro.local>
73 lines
1.8 KiB
TypeScript
73 lines
1.8 KiB
TypeScript
import {
|
|
FileLineChart,
|
|
HeartPulse,
|
|
LineChart,
|
|
MousePointerClick,
|
|
ShoppingCart,
|
|
Stethoscope,
|
|
TestTube2,
|
|
} from 'lucide-react';
|
|
import { z } from 'zod';
|
|
|
|
import { NavigationConfigSchema } from '@kit/ui/navigation-schema';
|
|
|
|
import pathsConfig from '~/config/paths.config';
|
|
|
|
const iconClasses = 'w-4 stroke-[1.5px]';
|
|
|
|
const routes = [
|
|
{
|
|
children: [
|
|
{
|
|
label: 'common:routes.overview',
|
|
path: pathsConfig.app.home,
|
|
Icon: <LineChart className={iconClasses} />,
|
|
end: true,
|
|
},
|
|
{
|
|
label: 'common:routes.booking',
|
|
path: pathsConfig.app.booking,
|
|
Icon: <MousePointerClick className={iconClasses} />,
|
|
end: true,
|
|
},
|
|
{
|
|
label: 'common:routes.myOrders',
|
|
path: pathsConfig.app.myOrders,
|
|
Icon: <ShoppingCart className={iconClasses} />,
|
|
end: true,
|
|
},
|
|
{
|
|
label: 'common:routes.analysisResults',
|
|
path: pathsConfig.app.analysisResults,
|
|
Icon: <TestTube2 className={iconClasses} />,
|
|
end: true,
|
|
},
|
|
{
|
|
label: 'common:routes.orderAnalysisPackage',
|
|
path: pathsConfig.app.orderAnalysisPackage,
|
|
Icon: <HeartPulse className={iconClasses} />,
|
|
end: true,
|
|
},
|
|
{
|
|
label: 'common:routes.orderAnalysis',
|
|
path: pathsConfig.app.orderAnalysis,
|
|
Icon: <FileLineChart className={iconClasses} />,
|
|
end: true,
|
|
},
|
|
{
|
|
label: 'common:routes.orderHealthAnalysis',
|
|
path: pathsConfig.app.orderHealthAnalysis,
|
|
Icon: <Stethoscope className={iconClasses} />,
|
|
end: true,
|
|
},
|
|
],
|
|
},
|
|
] satisfies z.infer<typeof NavigationConfigSchema>['routes'];
|
|
|
|
export const personalAccountNavigationConfig = NavigationConfigSchema.parse({
|
|
routes,
|
|
style: 'custom',
|
|
sidebarCollapsed: false,
|
|
sidebarCollapsedStyle: 'icon',
|
|
});
|