From b970597a81d1638fec9cb7ed998537d8b62a8293 Mon Sep 17 00:00:00 2001 From: Elia Bieri Date: Thu, 20 Jul 2023 16:22:28 +0000 Subject: [PATCH] Merged in feature/VBV-451-anwesenheitskontrolle-frontend (pull request #150) VBV-451 Anwesenheitskontrolle frontend & neues Cockpit * Regenerate graphql types after rebase * Fix grading progress * Fix cypress tests * Fix circle selection and add CourseSessionAssignment for Fahrzeug Vorbereitungsauftrag * Use `LearningContentAssignment` explictly * Improve type safety without `as` * Disable feedback details button when no feedback * Extend submission overview titles after review * Improve attendance check state handling * Minor translation/wording fixes Approved-by: Daniel Egger --- client/package-lock.json | 2 +- client/src/components/ui/ItCheckbox.vue | 4 +- client/src/components/ui/ItPersonRow.vue | 1 + client/src/gql/gql.ts | 10 + client/src/gql/graphql.ts | 17 ++ client/src/graphql/client.ts | 6 +- client/src/graphql/mutations.ts | 23 +++ client/src/graphql/queries.ts | 12 ++ client/src/i18nextWrapper.ts | 2 +- client/src/locales/de/translation.json | 19 +- client/src/pages/cockpit/FeedbackPage.vue | 9 +- .../assignmentsPage/AssignmentDetails.vue | 91 +++++---- .../AssignmentSubmissionProgress.vue | 64 ------- .../assignmentsPage/AssignmentsPage.vue | 34 ++-- .../AttendanceCheckPage.vue | 179 ++++++++++++++++++ .../AssignmentSubmissionProgress.vue | 106 +++++++++++ .../cockpit/cockpitPage/AssignmentsTile.vue | 57 ------ .../cockpit/cockpitPage/CockpitDates.vue | 37 ++++ .../pages/cockpit/cockpitPage/CockpitPage.vue | 87 +++++---- .../FeedbackSubmissionProgress.vue | 50 +++++ .../cockpitPage/SubmissionsOverview.vue | 163 ++++++++++++++++ .../assignment/AssignmentView.vue | 8 +- client/src/router/index.ts | 8 +- client/src/services/assignmentService.ts | 62 +++--- client/src/stores/cockpit.ts | 8 +- .../e2e/assignment/assignmentTrainer.cy.js | 10 +- env_secrets/local_elia.env | Bin 390 -> 577 bytes ...signmentcompletion_additional_json_data.py | 18 ++ server/vbv_lernwelt/assignment/models.py | 2 +- .../course/creators/test_course.py | 16 +- .../commands/create_default_courses.py | 16 +- ...r_coursecompletion_additional_json_data.py | 18 ++ server/vbv_lernwelt/course/models.py | 2 +- 33 files changed, 859 insertions(+), 282 deletions(-) delete mode 100644 client/src/pages/cockpit/assignmentsPage/AssignmentSubmissionProgress.vue create mode 100644 client/src/pages/cockpit/attendanceCheckPage/AttendanceCheckPage.vue create mode 100644 client/src/pages/cockpit/cockpitPage/AssignmentSubmissionProgress.vue delete mode 100644 client/src/pages/cockpit/cockpitPage/AssignmentsTile.vue create mode 100644 client/src/pages/cockpit/cockpitPage/CockpitDates.vue create mode 100644 client/src/pages/cockpit/cockpitPage/FeedbackSubmissionProgress.vue create mode 100644 client/src/pages/cockpit/cockpitPage/SubmissionsOverview.vue create mode 100644 server/vbv_lernwelt/assignment/migrations/0004_alter_assignmentcompletion_additional_json_data.py create mode 100644 server/vbv_lernwelt/course/migrations/0003_alter_coursecompletion_additional_json_data.py diff --git a/client/package-lock.json b/client/package-lock.json index 20433d04..029afee7 100644 --- a/client/package-lock.json +++ b/client/package-lock.json @@ -11078,7 +11078,7 @@ "integrity": "sha512-D+mk+qE8VC/PAUrlAU34N+VfXev0ghe5ywmpqrawphmVZc1bEfn56uo9qpyGp1p4xpzOHkSW4ztBd6L7Xx4ACw==", "dev": true, "engines": { - "node": ">=0.3.1" + "node": "^14.15.0 || ^16.10.0 || >=18.0.0" } }, "node_modules/diff-sequences": { diff --git a/client/src/components/ui/ItCheckbox.vue b/client/src/components/ui/ItCheckbox.vue index 66fb71b2..3cf3c57f 100644 --- a/client/src/components/ui/ItCheckbox.vue +++ b/client/src/components/ui/ItCheckbox.vue @@ -18,9 +18,7 @@ const keydown = (e: KeyboardEvent) => { toggle(); } }; -const input = (e: Event) => { - const target = e.target as HTMLInputElement; - log.debug("input", e.type, target.checked, target.value); +const input = () => { emit("toggle"); }; diff --git a/client/src/components/ui/ItPersonRow.vue b/client/src/components/ui/ItPersonRow.vue index 2c3bb41f..0f53595b 100644 --- a/client/src/components/ui/ItPersonRow.vue +++ b/client/src/components/ui/ItPersonRow.vue @@ -10,6 +10,7 @@ defineProps<{