Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Team Assessments #2548

Merged
merged 154 commits into from
Mar 26, 2024
Merged

Conversation

CheongYeeMing
Copy link
Contributor

@CheongYeeMing CheongYeeMing commented Jul 10, 2023

Description

Addresses #2501
Proposal: https://docs.google.com/document/d/1miHRQM6HWpc067NCd5vuPgdqU3ldQH60ncZwoEsac6o/edit
Wiki entry: https://github.com/source-academy/frontend/wiki/Team-Assessment

Source Academy - Team Assessments Module

This is the PR for the MVP of integrating Team Assessments into the existing Source Academy. Collaboration among students in coursework through the implementation of this collaborative module offers immense benefits and serves as a powerful motivation for its adoption. By providing students with the option to collaborate, share ideas, and work together on assessments, projects, and discussions, they can tap into a diverse range of perspectives and insights.

Type of change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • This change requires a documentation update
  • Code quality improvements

How to test

Checklist

  • I have tested this code
  • I have updated the documentation

To be completed:

  • Team Formation Landing Page
  • Team Creation Form
  • Import Teams via .xlsx
  • Update Ground Control Table with TanStack
  • Assessment Type Identifier: Team or Individual
  • Assessment Workspace Teams tab (team assessments)
  • Save-safe feature
  • Tests
  • Documentation

Notes

@CheongYeeMing CheongYeeMing marked this pull request as draft July 14, 2023 07:41
Copy link
Member

@RichDom2185 RichDom2185 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

After so long, finally, LGTM, thanks a lot!

Follow-up changes will be brought in #2875.

@RichDom2185 RichDom2185 enabled auto-merge (squash) March 26, 2024 13:28
@RichDom2185 RichDom2185 disabled auto-merge March 26, 2024 13:28
@RichDom2185 RichDom2185 enabled auto-merge (squash) March 26, 2024 13:28
@RichDom2185 RichDom2185 disabled auto-merge March 26, 2024 13:28
@RichDom2185 RichDom2185 merged commit f4ee0b6 into source-academy:master Mar 26, 2024
6 checks passed
izruff pushed a commit that referenced this pull request Apr 2, 2024
* Migrate ground control table to tanstack, without filtering and sorting functionalities

* Add filter to ground control table

* Remove defualt filter for ground control table

* Add team size column for ground control table

* Add ID to ground control table

* Update team size edit cell

* Add team size edit column for ground control

* Remove console logs

* Replace row-wise update button with one update button

* Fix bug of team size edit cell not responding for the first click

* Remove unused logs and dependencies

* Fix dependency warning for ground control

* Establish connection with Backend

* Modify payload for postTeams API Call

* Refetch after successfully creating Teams

* Fix page button in team formation

* Add config file

* Modify response payload for fetching students

* Refetch after successfully updating Teams

* Add Upload CSV API Call

* Update assessment workspace

* Remove console logs

* Add team information page to assessment workspace

* Display names in team info page

* Add team flag to assessment dashboard

* Fix assessment overview card

* Modify request to handle 409 Conflict Response

* Update Upload Teams CSV format

* Change minTeamSize to 0

* Add disable Save button in Assessment Workspace

* Add TeamFormationOverview to SessionState

* Revert changes made by Yiting

* Add assessment type indication: Team or Individual

* Add TeamFormationOverview to AssessmentWorkspce

* Add role checks to remove error 403

* Modify GradingQuestion for team submissions

* Remove console logs

* Remove unused code

* Resolve warning ==

* Add lastModifiedAt field for Answer

* Add Save-Safe

* Update Jest Snapshots

* Write tests for FE components

* Write test for SessionActions

* Remove commented code

* Add comments for API calls

* Retrieve create team error message from BE resp

* Add Workspace for TeamFormation

* Update Team Formation Table Filter

* Add Student Name Column Filter

* Fix TeamFormation table global student name filter

* Fix TeamFormation table global student name filter

* Retrieve student username to grading

* Resolve yarn lock

* Split student names in grading editor

* Fix Team Submission for GradingOverview

* Fix Grading Table Header

* Bump Node.js to version 20, update documentation (#2712)

* Create .node-version file

* Add selective WebGL dependency resolution

* Bump node version in CI workflows

* Fix missing dependencies in CI workflow

* Update CD workflow

* Install apt dependencies before building
* Use checkout v3 instead of master
* Replace manual caching strategy with updated setup node action

* Fix typo in CLI option

* Fix insufficient permissions

* Update actions to v4

* Fix resolution warning

* Reorganize documentation

* Create separate CONTRIBUTING.md file for developer-specific items
* Reorganize and reword some sections and sentences

* Update and simplify README instructions

Include references to `.node-version` file and Python dependency, as
well as simplifying some wording.

* Add Python 3.11 disclaimer

* Prettier formatting rules

* Yarn Eslint

* Update snapshot

* Fix yarn run tsc

* Update snapshot

* Update failing snapshots

* Remove package-log.json

Done as the project uses Yarn.

* Restore old environment visualizer snapshots

* Bump follow-redirects from 1.15.2 to 1.15.4 (#2720)

Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.15.2 to 1.15.4.
- [Release notes](https://github.com/follow-redirects/follow-redirects/releases)
- [Commits](follow-redirects/follow-redirects@v1.15.2...v1.15.4)

---
updated-dependencies:
- dependency-name: follow-redirects
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Update field to generate new date

* Remove commented code

* Change student fields to array

* Separate names in Team Formation Table by comma

* Add Team related fields to GradingOverview

* Fix yarn run tsc

* Fix formatting issues

* Remove commented code

* Clean up some code

* Remove console.log statement
* Remove unused stylesheet import
* Remove more commented code

* Update Individual Assignment to have maxTeamSize of 1

* Remove commented code

* Correct API response for GradingOverviews

* Update failing snapshots

* Remove unused code

* Update snapshots post-merge conflict

* Use CSS modules for team formation

* Fix incorrect minimum team size

* Clean up `GroundControlEditTeamSizeCell`

* Update imports
* Update typings
* Remove commented code
* Remove unused type export
* Refactor to use `useCallback`
* Remove unnecessary divs, classes

* Remove unnecessary styles

The styles won't matter for a flex item, thus are removed.

* Remove unnecessary function

* Simplify variable name for readability

* Revert "Remove commented code"

This reverts commit 0cf1f60.

* Fix data flow for editing max team size

* Fix unnecessary API calls

* Reran yarn install post-merge

* Remove unnecessary stub types package

* Fix format post-merge

* Update snapshots post-merge

* Remove TODO comment

The default value of 1 is intentional.

* Make last modified date optional

* Revert "Make last modified date optional"

This reverts commit 6bebb24.

* Update snapshots post-merge

* Migrate new action creators to RTK

* Fix incorrect past merge conflict resolution

* Improve codebase consistency

* Update lockfile

* Update snapshots post-merge

* Format files post-merge

* Fix errors post-merge

* Restore comment

* Fix incorrect condition check

* Update lockfile post merge

* Migrate team actions to RTK

* Fix tests

* Fix compile error post-merge

* Fix lint

---------

Co-authored-by: Lu Yiting <[email protected]>
Co-authored-by: Richard Dominick <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants