Skip to content

Commit

Permalink
Merge pull request #217 from ls1intum/133-add-upcoming-deadlines--tod…
Browse files Browse the repository at this point in the history
…o-list-to-dashboard

Add MyTasksSection component
  • Loading branch information
fabian-emilius authored Aug 30, 2024
2 parents 9ee10ea + 3114604 commit a086953
Show file tree
Hide file tree
Showing 143 changed files with 2,676 additions and 880 deletions.
15 changes: 15 additions & 0 deletions .github/workflows/deploy_docker.yml
Original file line number Diff line number Diff line change
Expand Up @@ -102,7 +102,14 @@ jobs:
echo "SERVER_HOST=${{ vars.SERVER_HOST }}" >> .env.prod
echo "CLIENT_HOST=${{ vars.CLIENT_HOST }}" >> .env.prod
echo "APPLICATION_TITLE=${{ vars.APPLICATION_TITLE }}" >> .env.prod
echo "PRIVACY_NOTICE=${{ vars.PRIVACY_NOTICE }}" >> .env.prod
echo "DEFAULT_SUPERVISOR_UUID=${{ vars.DEFAULT_SUPERVISOR_UUID }}" >> .env.prod
echo "THESIS_TYPES=${{ vars.THESIS_TYPES }}" >> .env.prod
echo "STUDY_PROGRAMS=${{ vars.STUDY_PROGRAMS }}" >> .env.prod
echo "STUDY_DEGREES=${{ vars.STUDY_DEGREES }}" >> .env.prod
echo "GENDERS=${{ vars.GENDERS }}" >> .env.prod
echo "CUSTOM_DATA=${{ vars.CUSTOM_DATA }}" >> .env.prod
echo "MAIL_SENDER=${{ vars.MAIL_SENDER }}" >> .env.prod
echo "MAIL_SIGNATURE=${{ vars.MAIL_SIGNATURE }}" >> .env.prod
Expand All @@ -113,6 +120,14 @@ jobs:
echo "KEYCLOAK_HOST=${{ vars.KEYCLOAK_HOST }}" >> .env.prod
echo "KEYCLOAK_REALM_NAME=${{ vars.KEYCLOAK_REALM_NAME }}" >> .env.prod
echo "KEYCLOAK_CLIENT_ID=${{ vars.KEYCLOAK_CLIENT_ID }}" >> .env.prod
echo "KEYCLOAK_SERVICE_CLIENT_ID=${{ vars.KEYCLOAK_SERVICE_CLIENT_ID }}" >> .env.prod
echo "KEYCLOAK_SERVICE_CLIENT_SECRET=${{ secrets.KEYCLOAK_SERVICE_CLIENT_SECRET }}" >> .env.prod
echo "KEYCLOAK_SERVICE_STUDENT_GROUP_NAME=${{ vars.KEYCLOAK_SERVICE_STUDENT_GROUP_NAME }}" >> .env.prod
echo "CALDAV_ENABLED=${{ vars.CALDAV_ENABLED }}" >> .env.prod
echo "CALDAV_URL=${{ vars.CALDAV_URL }}" >> .env.prod
echo "CALDAV_USERNAME=${{ vars.CALDAV_USERNAME }}" >> .env.prod
echo "CALDAV_PASSWORD=${{ secrets.CALDAV_PASSWORD }}" >> .env.prod
echo "SERVER_IMAGE_TAG=${{ inputs.server_image_tag }}" >> .env.prod
echo "CLIENT_IMAGE_TAG=${{ inputs.client_image_tag }}" >> .env.prod
Expand Down
93 changes: 36 additions & 57 deletions client/package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

12 changes: 6 additions & 6 deletions client/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@
"@tiptap/starter-kit": "2.6.6",
"i18n-iso-countries": "7.11.3",
"jwt-decode": "4.0.0",
"keycloak-js": "25.0.2",
"keycloak-js": "25.0.4",
"mantine-datatable": "7.11.3",
"phosphor-react": "1.4.1",
"react": "18.3.1",
Expand All @@ -40,8 +40,8 @@
"devDependencies": {
"@eslint/compat": "1.1.1",
"@eslint/eslintrc": "3.1.0",
"@eslint/js": "9.9.0",
"@types/react": "18.3.3",
"@eslint/js": "9.9.1",
"@types/react": "18.3.4",
"@types/react-dom": "18.3.0",
"@typescript-eslint/eslint-plugin": "8.3.0",
"@typescript-eslint/parser": "8.3.0",
Expand All @@ -50,14 +50,14 @@
"copy-webpack-plugin": "12.0.2",
"css-loader": "7.1.2",
"css-minimizer-webpack-plugin": "7.0.0",
"eslint": "9.9.0",
"eslint": "9.9.1",
"eslint-config-prettier": "9.1.0",
"eslint-plugin-prettier": "5.2.1",
"eslint-plugin-react": "7.35.0",
"fork-ts-checker-webpack-plugin": "9.0.2",
"globals": "15.9.0",
"html-webpack-plugin": "5.6.0",
"mini-css-extract-plugin": "2.9.0",
"mini-css-extract-plugin": "2.9.1",
"postcss": "8.4.41",
"postcss-loader": "8.1.1",
"postcss-preset-mantine": "1.17.0",
Expand All @@ -69,7 +69,7 @@
"ts-node": "10.9.2",
"typescript": "5.5.4",
"typescript-plugin-css-modules": "5.1.0",
"webpack": "5.93.0",
"webpack": "5.94.0",
"webpack-bundle-analyzer": "4.10.2",
"webpack-cli": "5.1.4",
"webpack-dev-server": "5.0.4",
Expand Down
23 changes: 12 additions & 11 deletions client/public/generate-runtime-env.js
Original file line number Diff line number Diff line change
@@ -1,32 +1,33 @@
const { promises: fsp } = require('fs');
const { promises: fsp } = require('fs')

const ALLOWED_ENVIRONMENT_VARIABLES = [
'SERVER_HOST',
'KEYCLOAK_HOST',
'KEYCLOAK_REALM_NAME',
'KEYCLOAK_CLIENT_ID',
// no defaults
'DEFAULT_SUPERVISOR_UUID',
// optional
'APPLICATION_TITLE',
'FOCUS_TOPICS',
'RESEARCH_AREAS',
'GENDERS',
'STUDY_DEGREES',
'STUDY_PROGRAMS',
'UNIVERSITY_ID_JWT_ATTRIBUTE',
];
'PRIVACY_NOTICE',
'CALDAV_URL'
]

async function generateConfig() {
const runtimeEnvironment = {};
const runtimeEnvironment = {}

for (const key of ALLOWED_ENVIRONMENT_VARIABLES) {
if (process.env[key]) {
runtimeEnvironment[key] = process.env[key];
runtimeEnvironment[key] = process.env[key]
}
}

await fsp.writeFile('runtime-env.js', `window.RUNTIME_ENVIRONMENT_VARIABLES=${JSON.stringify(runtimeEnvironment)};\n`, 'utf-8');
await fsp.writeFile(
'runtime-env.js',
`window.RUNTIME_ENVIRONMENT_VARIABLES=${JSON.stringify(runtimeEnvironment)};\n`,
'utf-8',
)
}

void generateConfig();
void generateConfig()
30 changes: 14 additions & 16 deletions client/src/app/Routes.tsx
Original file line number Diff line number Diff line change
@@ -1,21 +1,15 @@
import React, { lazy, Suspense } from 'react'
import { BrowserRouter, Route, Routes } from 'react-router-dom'
import { BrowserRouter, Navigate, Route, Routes } from 'react-router-dom'
import AuthenticatedArea from './layout/AuthenticatedArea/AuthenticatedArea'
import PageLoader from '../components/PageLoader/PageLoader'

const LegacyThesisApplicationForm = lazy(
() => import('../pages/LegacySubmitApplicationPage/LegacySubmitApplicationPage'),
)
const LegacyApplicationReviewPage = lazy(
() => import('../pages/LegacyApplicationReviewPage/LegacyApplicationReviewPage'),
)
const NotFoundPage = lazy(() => import('../pages/NotFoundPage/NotFoundPage'))
const ThesisOverviewPage = lazy(() => import('../pages/ThesisOverviewPage/ThesisOverviewPage'))
const DashboardPage = lazy(() => import('../pages/DashboardPage/DashboardPage'))
const LogoutPage = lazy(() => import('../pages/LogoutPage/LogoutPage'))
const MyInformationPage = lazy(() => import('../pages/MyInformationPage/MyInformationPage'))
const SubmitApplicationPage = lazy(
() => import('../pages/SubmitApplicationPage/SubmitApplicationPage'),
const ReplaceApplicationPage = lazy(
() => import('../pages/ReplaceApplicationPage/ReplaceApplicationPage'),
)
const ManageTopicsPage = lazy(() => import('../pages/ManageTopicsPage/ManageTopicsPage'))
const TopicPage = lazy(() => import('../pages/TopicPage/TopicPage'))
Expand Down Expand Up @@ -50,7 +44,15 @@ const AppRoutes = () => {
path='/submit-application/:topicId?'
element={
<AuthenticatedArea>
<SubmitApplicationPage />
<ReplaceApplicationPage />
</AuthenticatedArea>
}
/>
<Route
path='/edit-application/:applicationId'
element={
<AuthenticatedArea>
<ReplaceApplicationPage />
</AuthenticatedArea>
}
/>
Expand All @@ -70,7 +72,7 @@ const AppRoutes = () => {
</AuthenticatedArea>
}
/>
<Route path='/applications/thesis' element={<LegacyThesisApplicationForm />} />
<Route path='/applications/thesis' element={<Navigate to='/' replace />} />
<Route
path='/applications/:applicationId?'
element={
Expand Down Expand Up @@ -100,11 +102,7 @@ const AppRoutes = () => {
/>
<Route
path='/management/thesis-applications/:applicationId?'
element={
<AuthenticatedArea requiredGroups={['admin', 'advisor', 'supervisor']}>
<LegacyApplicationReviewPage />
</AuthenticatedArea>
}
element={<Navigate to='/applications' replace />}
/>
<Route path='/logout' element={<LogoutPage />} />
<Route path='/' element={<LandingPage />} />
Expand Down
Loading

0 comments on commit a086953

Please sign in to comment.