Skip to content

Commit c1ddc5d

Browse files
committed
Merge remote-tracking branch 'origin/main' into 1207-individual-scores-not-seen-in-application-details-page
# Conflicts: # e2e/seed/e2e_seed.sql # e2e/src/data/constants.ts
2 parents 6c66445 + 072b89e commit c1ddc5d

60 files changed

Lines changed: 7635 additions & 574 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

clients/assessment_component/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
"check-performance": "rspack --mode=production --env NODE_ENV=production --env BUNDLE_SIZE=true"
1313
},
1414
"dependencies": {
15-
"papaparse": "^5.5.4"
15+
"papaparse": "^5.6.0"
1616
},
1717
"devDependencies": {
1818
"@rspack/cli": "^2.1.10",

clients/core/src/App.tsx

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@ import { KeycloakProvider } from './keycloak/KeycloakProvider'
77
import { AdminAuditLogPage } from './managementConsole/adminAuditLog/AdminAuditLogPage'
88
import { CourseAuditLogPage } from './managementConsole/courseAuditLog/CourseAuditLogPage'
99
import CourseConfiguratorPage from './managementConsole/courseConfigurator/CourseConfiguratorPage'
10+
import { CourseMailingComposePage } from './managementConsole/courseMailing/CourseMailingComposePage'
11+
import { CourseMailingOverviewPage } from './managementConsole/courseMailing/CourseMailingOverviewPage'
1012
import { CourseOverview } from './managementConsole/courseOverview/CourseOverviewPage'
1113
import { CourseSettingsPage } from './managementConsole/courseSettings/CourseSettingsPage'
1214
import { CourseUserManagementPage } from './managementConsole/courseUserManagement/pages/CourseUserManagementPage'
@@ -215,6 +217,54 @@ export const App = () => {
215217
</ManagementRoot>
216218
}
217219
/>
220+
<Route
221+
path='/management/course/:courseId/mailing'
222+
element={
223+
<ManagementRoot>
224+
<PermissionRestriction
225+
requiredPermissions={[
226+
Role.PROMPT_ADMIN,
227+
Role.COURSE_LECTURER,
228+
Role.COURSE_EDITOR,
229+
]}
230+
>
231+
<CourseMailingOverviewPage />
232+
</PermissionRestriction>
233+
</ManagementRoot>
234+
}
235+
/>
236+
<Route
237+
path='/management/course/:courseId/mailing/new'
238+
element={
239+
<ManagementRoot>
240+
<PermissionRestriction
241+
requiredPermissions={[
242+
Role.PROMPT_ADMIN,
243+
Role.COURSE_LECTURER,
244+
Role.COURSE_EDITOR,
245+
]}
246+
>
247+
<CourseMailingComposePage />
248+
</PermissionRestriction>
249+
</ManagementRoot>
250+
}
251+
/>
252+
<Route
253+
path='/management/course/:courseId/mailing/:campaignId'
254+
element={
255+
<ManagementRoot>
256+
<PermissionRestriction
257+
requiredPermissions={[
258+
Role.PROMPT_ADMIN,
259+
Role.COURSE_LECTURER,
260+
Role.COURSE_EDITOR,
261+
]}
262+
>
263+
<CourseMailingComposePage />
264+
</PermissionRestriction>
265+
</ManagementRoot>
266+
}
267+
/>
218268
<Route
219269
path='/management/course/:courseId/:phaseId/*'
220270
element={
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
import { EDITOR_ROLES, type SidebarMenuItemProps } from '@tumaet/prompt-shared-state'
2+
import { Mail } from 'lucide-react'
3+
import { ExternalSidebarComponent } from './ExternalSidebar'
4+
5+
export const CourseMailingSidebar = ({ rootPath, title }: { rootPath: string; title: string }) => {
6+
const courseMailingSidebarItem: SidebarMenuItemProps = {
7+
title: 'Mailing',
8+
icon: <Mail />,
9+
goToPath: '/mailing',
10+
requiredPermissions: EDITOR_ROLES,
11+
}
12+
return (
13+
<ExternalSidebarComponent
14+
title={title}
15+
rootPath={rootPath}
16+
sidebarElement={courseMailingSidebarItem}
17+
/>
18+
)
19+
}

clients/core/src/managementConsole/PhaseMapping/ExternalSidebars/MailingConfigSidebar.tsx

Lines changed: 0 additions & 19 deletions
This file was deleted.

0 commit comments

Comments
 (0)