* fix: instructor formatting errors
* refactor: simplify logic in Instructor toString, remove unused formatters
* refactor: remove "unnecessary" else's after returns
I think it looks worse like this but whatever
* feat: add CacheStore for GitHub stats and use names instead of usernames
* fix: only cache name for successful API queries
* chore: linting
* chore: refactor any with unknown and add jsdocs
* fix: use cached endpoint to avoid rate limiting issues
* fix: code style
* chore: add type assertion
* fix: use correct type
* Revert "fix: use correct type"
This reverts commit 74956c12f3.
* fix: use correct type
* fix: use URL Web API
* fix: add CONTRIBUTORS_API_ROUTE constant
---------
Co-authored-by: Derek Chen <derex1987@gmail.com>
Co-authored-by: doprz <52579214+doprz@users.noreply.github.com>
* feat: add more relevant links to the From the Team section
* feat: add CRXPages.ts
* chore: update to TS 4.9 satisfies
---------
Co-authored-by: doprz <52579214+doprz@users.noreply.github.com>
* feat: add core curriculum chips to injected popup
* fix: add VP and MAcore indicators
* feat: core now defined in constructor
* fix: make core and flags closer together
* fix: stop empty core chip from showing when no core requirements
* fix: remove optional chaining for core chips
* feat: generalize Chip for both flags and core classes
* fix: change types for storybook and add new story for CoreChip
* fix: remove labelMap prop from Chip, chore: clean up imports
* feat: change tooltip for core curriculum requirement
---------
Co-authored-by: Derek Chen <derex1987@gmail.com>
* refactor(UserSchedule): index by a unique id rather than name
* refactor: Update parameter names in schedule function jsdocs
* refactor: change more instances of .name to .id
* refactor: Fix typo in variable name and update references
* refactor: Remove console.log statement
* fix(chromatic): Update ScheduleListItem story
* refactor: remove unused eslint rule
* style: course selection fix
* fix: generic bugs on course selection
* fix: schedule switch lag when popup is open for too long
* fix: storybook bug
* chore: remove unnecessary dependency
* Temporarily uninstalling husky cause github desktop has issues with it
* Cleaned up some code. Removed unnecessary state value on injected popup
* Should've fixed popup alignment issue. Still need to integrate course schedule with calendar. Still debugging.
* Updated CalendarGridStories
* Fix: change to ExampleCourse from exampleCourse
* setCourse and calendar header need work
* Update as part of merge
* Fix: fixed build errors
* Fix: Added Todo
* Chore: Cleaned up useFlattenedCourseSchedule hook
* fix: List now keeps track of state when existing items are switched, while adding new items to the end
* Added back husky
* Update src/views/components/calendar/Calendar/Calendar.tsx
Co-authored-by: doprz <52579214+doprz@users.noreply.github.com>
* refactor: added type-safety, destructuring, etc. ready for re-review
* refactor: got rid of ts-ignore in openNewTabFromContentScript
* Update src/views/components/calendar/CalendarHeader/CalenderHeader.tsx
Co-authored-by: doprz <52579214+doprz@users.noreply.github.com>
* refactor: using path aliasing
Co-authored-by: doprz <52579214+doprz@users.noreply.github.com>
* refactor: using path aliasing
Co-authored-by: doprz <52579214+doprz@users.noreply.github.com>
* refactor: using satisfies instead of as
Co-authored-by: doprz <52579214+doprz@users.noreply.github.com>
* refactor: using satisfies instead of as
Co-authored-by: doprz <52579214+doprz@users.noreply.github.com>
* style: reformatted spacing
* style: eslint import order
* refactor: added new constructor for UserSchedule to avoid passing down null values to child props
* fix: fixed bug with course cell times starting and after 12 PM. commented in CourseMeeting class
* Update src/views/hooks/useFlattenedCourseSchedule.ts
* fix: fixed build errors by removing old apis
* refactor: added type-safety and destructuring
---------
Co-authored-by: doprz <52579214+doprz@users.noreply.github.com>
* Temporarily uninstalling husky cause github desktop has issues with it
* Cleaned up some code. Removed unnecessary state value on injected popup
* Should've fixed popup alignment issue. Still need to integrate course schedule with calendar. Still debugging.
* Updated CalendarGridStories
* Fix: change to ExampleCourse from exampleCourse
* setCourse and calendar header need work
* Update as part of merge
* Fix: fixed build errors
* Fix: Added Todo
* Chore: Cleaned up useFlattenedCourseSchedule hook
* fix: List now keeps track of state when existing items are switched, while adding new items to the end
* Added back husky
* Update src/views/components/calendar/Calendar/Calendar.tsx
Co-authored-by: doprz <52579214+doprz@users.noreply.github.com>
* refactor: added type-safety, destructuring, etc. ready for re-review
* refactor: got rid of ts-ignore in openNewTabFromContentScript
* Update src/views/components/calendar/CalendarHeader/CalenderHeader.tsx
Co-authored-by: doprz <52579214+doprz@users.noreply.github.com>
* refactor: using path aliasing
Co-authored-by: doprz <52579214+doprz@users.noreply.github.com>
* refactor: using path aliasing
Co-authored-by: doprz <52579214+doprz@users.noreply.github.com>
* refactor: using satisfies instead of as
Co-authored-by: doprz <52579214+doprz@users.noreply.github.com>
* refactor: using satisfies instead of as
Co-authored-by: doprz <52579214+doprz@users.noreply.github.com>
* style: reformatted spacing
* style: eslint import order
* refactor: added new constructor for UserSchedule to avoid passing down null values to child props
---------
Co-authored-by: doprz <52579214+doprz@users.noreply.github.com>
* fix: use path alias
* fix: more path alias
* fix: even more path aliasing
* fix: even moreeeee path aliasing
* fix: sort imports
* fix: sort imports (again)