Skip to content

Commit ddb97ba

Browse files
committed
feat: add app settings page
1 parent e249d05 commit ddb97ba

3 files changed

Lines changed: 36 additions & 0 deletions

File tree

apps/web/src/features/admin/index.tsx

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
import type { RouteObject } from 'react-router-dom';
44

5+
import { AdminSettingsPage } from './pages/AdminSettingsPage';
56
import { CreateGroupPage } from './pages/CreateGroupPage';
67
import { CreateUserPage } from './pages/CreateUserPage';
78
import { ManageGroupsPage } from './pages/ManageGroupsPage';
@@ -35,6 +36,10 @@ export const adminRoute: RouteObject = {
3536
element: <CreateUserPage />
3637
}
3738
]
39+
},
40+
{
41+
path: 'settings',
42+
element: <AdminSettingsPage />
3843
}
3944
]
4045
};
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
import React from 'react';
2+
3+
import { Heading } from '@douglasneuroinformatics/libui/components';
4+
import { useTranslation } from '@douglasneuroinformatics/libui/hooks';
5+
6+
import { PageHeader } from '@/components/PageHeader';
7+
8+
export const AdminSettingsPage = () => {
9+
const { t } = useTranslation();
10+
return (
11+
<React.Fragment>
12+
<PageHeader>
13+
<Heading className="text-center" variant="h2">
14+
{t({
15+
en: 'Modify Instance Settings',
16+
fr: "Modifier les paramètres de l'instance"
17+
})}
18+
</Heading>
19+
</PageHeader>
20+
</React.Fragment>
21+
);
22+
};

apps/web/src/hooks/useNavItems.ts

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import { useTranslation } from '@douglasneuroinformatics/libui/hooks';
44
import {
55
BarChartBigIcon,
66
CirclePlayIcon,
7+
CogIcon,
78
ComputerIcon,
89
DatabaseIcon,
910
EyeIcon,
@@ -67,6 +68,14 @@ export function useNavItems() {
6768

6869
const adminItems: NavItem[] = [];
6970
if (currentUser?.ability.can('manage', 'all')) {
71+
adminItems.push({
72+
icon: CogIcon,
73+
label: t({
74+
en: 'App Settings',
75+
fr: "Paramètres de l'application"
76+
}),
77+
url: '/admin/settings'
78+
});
7079
adminItems.push({
7180
icon: UsersIcon,
7281
label: t({

0 commit comments

Comments
 (0)