diff --git a/.github/workflows/comment-goodfirstissue.yml b/.github/workflows/comment-goodfirstissue.yml
new file mode 100644
index 00000000000..97c001be75f
--- /dev/null
+++ b/.github/workflows/comment-goodfirstissue.yml
@@ -0,0 +1,30 @@
+name: Comment on Good First Issue
+
+on:
+ issues:
+ types:
+ - labeled
+
+jobs:
+ comment:
+ if: github.event.label.name == 'good first issue'
+ runs-on: ubuntu-latest
+
+ steps:
+ - name: Add comment
+ uses: actions/github-script@v6
+ with:
+ github-token: ${{ secrets.GITHUB_TOKEN }}
+ script: |
+ let body = `**Good First Issue - Notes for Contributors**
+ This issue is for **first-time contributors only**. If you are new to TEAMMATES, feel free to submit a PR for this issue.\n\n`
+ body += "*Please note that we allow only one `good first issue` per contributor.* If you have already made a prior contribution to TEAMMATES, you may wish to take a look at issues with the `help wanted` tag instead.\n\n"
+ body += "**We do not assign issues to contributors**. If you would like to pick up this issue, do post a comment below to express your interest and check if there is anyone else who is already working on the issue. We will do our best to reply and give you the go-ahead, but if we don't, feel free to submit a PR as long as there is no one else working on it.\n\n"
+ body += "**To get started**, do read through our [contributing guidelines](https://teammates.github.io/teammates/contributing-doc.html) carefully, and [set up a development environment on your local machine](https://teammates.github.io/teammates/setting-up.html) before making a PR.\n\n"
+ body += "If you need any clarifications on our [developer guide](https://teammates.github.io/teammates/index.html), or are facing issues that are not found in our [troubleshooting guide](https://teammates.github.io/teammates/troubleshooting-guide.html), please [post a message in our discussion forum](https://github.com/TEAMMATES/teammates/discussions)."
+ await github.rest.issues.createComment({
+ issue_number: context.issue.number,
+ owner: context.repo.owner,
+ repo: context.repo.repo,
+ body,
+ })
diff --git a/src/web/app/components/panel-chevron/panel-chevron.component.html b/src/web/app/components/panel-chevron/panel-chevron.component.html
index 9a924686122..48594557a11 100644
--- a/src/web/app/components/panel-chevron/panel-chevron.component.html
+++ b/src/web/app/components/panel-chevron/panel-chevron.component.html
@@ -1,4 +1,4 @@
-
This is the visibility hint as seen by the feedback giver:
diff --git a/src/web/app/pages-instructor/instructor-course-edit-page/copy-instructors-from-other-courses-modal/__snapshots__/copy-instructors-from-other-courses-modal.component.spec.ts.snap b/src/web/app/pages-instructor/instructor-course-edit-page/copy-instructors-from-other-courses-modal/__snapshots__/copy-instructors-from-other-courses-modal.component.spec.ts.snap
index cda762a9dbe..f05954210be 100644
--- a/src/web/app/pages-instructor/instructor-course-edit-page/copy-instructors-from-other-courses-modal/__snapshots__/copy-instructors-from-other-courses-modal.component.spec.ts.snap
+++ b/src/web/app/pages-instructor/instructor-course-edit-page/copy-instructors-from-other-courses-modal/__snapshots__/copy-instructors-from-other-courses-modal.component.spec.ts.snap
@@ -81,13 +81,16 @@ exports[`CopyInstructorsFromOtherCoursesModalComponent should snap when feedback
class="card-header-btn-toolbar"
>
-
-
+
@@ -218,13 +221,16 @@ exports[`CopyInstructorsFromOtherCoursesModalComponent should snap when instruct
class="card-header-btn-toolbar"
>
-
-
+
@@ -478,13 +484,16 @@ exports[`CopyInstructorsFromOtherCoursesModalComponent should snap when instruct
class="card-header-btn-toolbar"
>
-
-
+
@@ -612,13 +621,16 @@ exports[`CopyInstructorsFromOtherCoursesModalComponent should snap with courses
class="card-header-btn-toolbar"
>
-
-
+
@@ -640,13 +652,16 @@ exports[`CopyInstructorsFromOtherCoursesModalComponent should snap with courses
class="card-header-btn-toolbar"
>
-
-
+
diff --git a/src/web/app/pages-instructor/instructor-home-page/__snapshots__/instructor-home-page.component.spec.ts.snap b/src/web/app/pages-instructor/instructor-home-page/__snapshots__/instructor-home-page.component.spec.ts.snap
index e003acc07c9..0329d14dff8 100644
--- a/src/web/app/pages-instructor/instructor-home-page/__snapshots__/instructor-home-page.component.spec.ts.snap
+++ b/src/web/app/pages-instructor/instructor-home-page/__snapshots__/instructor-home-page.component.spec.ts.snap
@@ -269,15 +269,6 @@ exports[`InstructorHomePageComponent should snap with one course with error load
>
[CS3281]: Thematic Systems I
-
-
-
-
-
Students
@@ -465,6 +457,7 @@ exports[`InstructorHomePageComponent should snap with one course with one feedba
aria-expanded="false"
class="dropdown-toggle btn btn-primary btn-sm"
ngbdropdowntoggle=""
+ type="button"
>
Instructors
@@ -489,6 +482,7 @@ exports[`InstructorHomePageComponent should snap with one course with one feedba
aria-expanded="false"
class="dropdown-toggle btn btn-primary btn-sm"
ngbdropdowntoggle=""
+ type="button"
>
Sessions
@@ -513,6 +507,7 @@ exports[`InstructorHomePageComponent should snap with one course with one feedba
aria-expanded="false"
class="dropdown-toggle btn-course btn btn-primary btn-sm"
ngbdropdowntoggle=""
+ type="button"
>
Course
@@ -553,16 +548,19 @@ exports[`InstructorHomePageComponent should snap with one course with one feedba
+
+
+
+
+
-
-
-
-
-
Students
@@ -1048,6 +1047,7 @@ exports[`InstructorHomePageComponent should snap with one course with two feedba
aria-expanded="false"
class="dropdown-toggle btn btn-primary btn-sm"
ngbdropdowntoggle=""
+ type="button"
>
Instructors
@@ -1072,6 +1072,7 @@ exports[`InstructorHomePageComponent should snap with one course with two feedba
aria-expanded="false"
class="dropdown-toggle btn btn-primary btn-sm"
ngbdropdowntoggle=""
+ type="button"
>
Sessions
@@ -1096,6 +1097,7 @@ exports[`InstructorHomePageComponent should snap with one course with two feedba
aria-expanded="false"
class="dropdown-toggle btn-course btn btn-primary btn-sm"
ngbdropdowntoggle=""
+ type="button"
>
Course
@@ -1120,16 +1122,19 @@ exports[`InstructorHomePageComponent should snap with one course with two feedba
+
+
+
+
+
-
-
-
-
-
Students
@@ -1802,6 +1808,7 @@ exports[`InstructorHomePageComponent should snap with one course with unexpanded
aria-expanded="false"
class="dropdown-toggle btn btn-primary btn-sm"
ngbdropdowntoggle=""
+ type="button"
>
Instructors
@@ -1826,6 +1833,7 @@ exports[`InstructorHomePageComponent should snap with one course with unexpanded
aria-expanded="false"
class="dropdown-toggle btn btn-primary btn-sm"
ngbdropdowntoggle=""
+ type="button"
>
Sessions
@@ -1850,6 +1858,7 @@ exports[`InstructorHomePageComponent should snap with one course with unexpanded
aria-expanded="false"
class="dropdown-toggle btn-course btn btn-primary btn-sm"
ngbdropdowntoggle=""
+ type="button"
>
Course
@@ -1890,16 +1899,19 @@ exports[`InstructorHomePageComponent should snap with one course with unexpanded
+
+
+
+
+
-
-
-
-
-
@@ -2032,6 +2044,7 @@ exports[`InstructorHomePageComponent should snap with one course with unpopulate
aria-expanded="false"
class="dropdown-toggle btn btn-primary btn-sm"
ngbdropdowntoggle=""
+ type="button"
>
Students
@@ -2063,6 +2076,7 @@ exports[`InstructorHomePageComponent should snap with one course with unpopulate
aria-expanded="false"
class="dropdown-toggle btn btn-primary btn-sm"
ngbdropdowntoggle=""
+ type="button"
>
Instructors
@@ -2087,6 +2101,7 @@ exports[`InstructorHomePageComponent should snap with one course with unpopulate
aria-expanded="false"
class="dropdown-toggle btn btn-primary btn-sm"
ngbdropdowntoggle=""
+ type="button"
>
Sessions
@@ -2111,6 +2126,7 @@ exports[`InstructorHomePageComponent should snap with one course with unpopulate
aria-expanded="false"
class="dropdown-toggle btn-course btn btn-primary btn-sm"
ngbdropdowntoggle=""
+ type="button"
>
Course
@@ -2151,16 +2167,19 @@ exports[`InstructorHomePageComponent should snap with one course with unpopulate
+
+
+
+
+
-
-
-
-
-
Students
@@ -2348,6 +2368,7 @@ exports[`InstructorHomePageComponent should snap with one course without feedbac
aria-expanded="false"
class="dropdown-toggle btn btn-primary btn-sm"
ngbdropdowntoggle=""
+ type="button"
>
Instructors
@@ -2372,6 +2393,7 @@ exports[`InstructorHomePageComponent should snap with one course without feedbac
aria-expanded="false"
class="dropdown-toggle btn btn-primary btn-sm"
ngbdropdowntoggle=""
+ type="button"
>
Sessions
@@ -2396,6 +2418,7 @@ exports[`InstructorHomePageComponent should snap with one course without feedbac
aria-expanded="false"
class="dropdown-toggle btn-course btn btn-primary btn-sm"
ngbdropdowntoggle=""
+ type="button"
>
Course
@@ -2436,16 +2459,19 @@ exports[`InstructorHomePageComponent should snap with one course without feedbac
@@ -2021,13 +2028,16 @@ exports[`InstructorSessionEditPageComponent should snap with feedback session qu
class="collapse-caret"
>
-
-
+
-
-
-
-
- User/Group
-
-
- Can see answer
-
-
- Can see giver's name
-
-
- Can see recipient's name
-
-
-
-
-
-
-
+
+
- Recipient(s)
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
- Giver's Team Members
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
- Other students
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
- Instructors
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+ Can see recipient's name
+
+
+
+
+
+
+
+ Recipient(s)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Giver's Team Members
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Other students
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Instructors
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -3956,13 +3970,16 @@ exports[`InstructorSessionEditPageComponent should snap with new question added
class="collapse-caret"
>
-
-
+
-
-
-
-
- User/Group
-
-
- Can see answer
-
-
- Can see giver's name
-
-
- Can see recipient's name
-
-
-
-
-
-
-
+
+
- Recipient(s)
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
- Giver's Team Members
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
- Recipient's Team Members
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
- Other students
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+ Recipient(s)
+
+
+
- Instructors
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+ Giver's Team Members
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Recipient's Team Members
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Other students
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Instructors
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/web/app/pages-instructor/instructor-session-edit-page/copy-questions-from-other-sessions-modal/__snapshots__/copy-questions-from-other-sessions-modal.component.spec.ts.snap b/src/web/app/pages-instructor/instructor-session-edit-page/copy-questions-from-other-sessions-modal/__snapshots__/copy-questions-from-other-sessions-modal.component.spec.ts.snap
index 2bfa2d770dd..495af9d2180 100644
--- a/src/web/app/pages-instructor/instructor-session-edit-page/copy-questions-from-other-sessions-modal/__snapshots__/copy-questions-from-other-sessions-modal.component.spec.ts.snap
+++ b/src/web/app/pages-instructor/instructor-session-edit-page/copy-questions-from-other-sessions-modal/__snapshots__/copy-questions-from-other-sessions-modal.component.spec.ts.snap
@@ -80,13 +80,16 @@ exports[`CopyQuestionsFromOtherSessionsModalComponent should snap when feedback
class="card-header-btn-toolbar"
>
-
-
+
@@ -288,13 +291,16 @@ exports[`CopyQuestionsFromOtherSessionsModalComponent should snap when feedback
class="card-header-btn-toolbar"
>
-
-
+
@@ -420,13 +426,16 @@ exports[`CopyQuestionsFromOtherSessionsModalComponent should snap when feedback
class="card-header-btn-toolbar"
>
-
-
+
@@ -638,13 +647,16 @@ exports[`CopyQuestionsFromOtherSessionsModalComponent should snap with feedback
class="card-header-btn-toolbar"
>
-
-
+
@@ -668,13 +680,16 @@ exports[`CopyQuestionsFromOtherSessionsModalComponent should snap with feedback
class="card-header-btn-toolbar"
>
-
-
+
diff --git a/src/web/app/pages-instructor/instructor-student-activity-logs/__snapshots__/instructor-student-activity-logs.component.spec.ts.snap b/src/web/app/pages-instructor/instructor-student-activity-logs/__snapshots__/instructor-student-activity-logs.component.spec.ts.snap
index 8fb22eed5b3..2c2f0ec0b7e 100644
--- a/src/web/app/pages-instructor/instructor-student-activity-logs/__snapshots__/instructor-student-activity-logs.component.spec.ts.snap
+++ b/src/web/app/pages-instructor/instructor-student-activity-logs/__snapshots__/instructor-student-activity-logs.component.spec.ts.snap
@@ -1249,13 +1249,16 @@ exports[`InstructorStudentActivityLogsComponent should snap with results of a se
class="card-header-btn-toolbar"
>
-
-
+
@@ -1431,13 +1434,16 @@ exports[`InstructorStudentActivityLogsComponent should snap with results of a se
class="card-header-btn-toolbar"
>
-
-
+
diff --git a/src/web/app/pages-instructor/instructor-student-list-page/__snapshots__/instructor-student-list-page.component.spec.ts.snap b/src/web/app/pages-instructor/instructor-student-list-page/__snapshots__/instructor-student-list-page.component.spec.ts.snap
index 1af0749d7cb..fbb9e7a35d7 100644
--- a/src/web/app/pages-instructor/instructor-student-list-page/__snapshots__/instructor-student-list-page.component.spec.ts.snap
+++ b/src/web/app/pages-instructor/instructor-student-list-page/__snapshots__/instructor-student-list-page.component.spec.ts.snap
@@ -86,13 +86,16 @@ exports[`InstructorStudentListPageComponent should snap with a course with stude
class="card-header-btn-toolbar"
>
-