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

Update production with redesign #241

Merged
merged 201 commits into from
Oct 8, 2024
Merged

Update production with redesign #241

merged 201 commits into from
Oct 8, 2024

Conversation

TyHil
Copy link
Member

@TyHil TyHil commented Oct 7, 2024

I will not be providing a description, it's too much

TyHil and others added 30 commits August 23, 2024 14:46
Remove nodag stuff, causes confusion
* Update colors

* Feedback UI
Fix "///" comments before production
TODO: add an api route to store data responses, could be done with Qualtrics API but need access

* When to popup fix

* Add animations

* Redesign homepage (#127)

* Initial

* Bump @babel/traverse from 7.21.4 to 7.23.2 (#120)

Bumps [@babel/traverse](https://github.com/babel/babel/tree/HEAD/packages/babel-traverse) from 7.21.4 to 7.23.2.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.23.2/packages/babel-traverse)

---
updated-dependencies:
- dependency-name: "@babel/traverse"
  dependency-type: indirect
...

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

* Initial

* Refinement

* Update colors

* Use colors

* Add nebula labs link

* A/B Testing autocomplete functionality, needs design fix, and of course google analytics

* A/B Testing styles

* Build fix

* Design recs

---------

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

* Update colors (#128)

* Bump @babel/traverse from 7.21.4 to 7.23.2 (#120)

Bumps [@babel/traverse](https://github.com/babel/babel/tree/HEAD/packages/babel-traverse) from 7.21.4 to 7.23.2.
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
- [Commits](https://github.com/babel/babel/commits/v7.23.2/packages/babel-traverse)

---
updated-dependencies:
- dependency-name: "@babel/traverse"
  dependency-type: indirect
...

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

* Update colors

---------

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

* Backend

* Remove unused vars in homepage

* Remove unused vars in homepage again

* Log sending environment

* Move to component to clean up _app (also moved the GitHub button)

* Build fix

* Autocomplete format change
Replace (<number>|<number> ) <prefix>[.<section>] with <prefix>

* Reformat homepage

* Autocomplete allow returning course or professor

* Homepage warning cleanup

* Input tag functionality!

* Format

* Working enter

* Search bar on dashboard

* Add tags with space from fetch
Also added comments

* Format

* Build fixes

* Prioritize pre-existing nodes in addWithParents for autocomplete graph generation

* Remove syllabi on homescreen

* Autocomplete tweak:
prof number.section to prof number.section prefix

* Fix double space problem

* Fix using first node in addWithParents and allow number.section prof

* Think I fixed looping back issue: must have least common node in first pos for addWithParents

* Format

* Build fix

* Move autocomplete to seperate file

* Fix course tag with space

* Build fix

* Add alert to test mobile

* build fix

* alert all info for debugging

* onKeyDown to onInput bc of a chrome android bug

* Filter Component

* Build changes

* change capitalization

* Allow multiple courses

* Multiple filters

* Small Select

* Labels and styling

* Add data to filters

* None Label for Filter

* remove default labels

* Add filters to search query

* Removing testing bits

* Build fix

* Prevent autocompletion of valid chips from triggering when deleting

* Updated Dashboard to show results in an expandable table. Also rerouted API fetching to get data for all the search results.

* Lint and format fixes

* redesign navbar

* Colorful graph bars

* Move fetchWithCache outside dashboard

* Use next Image for background

* Handles Cartesian Product of search tags (Courses and Professors) to fetch and display results

* Fix linting errors

* Create the left-hand-size Search Results Component

* Add dynamically generated Carousel to right hand side card

* Remove dividers on tab nav

* Change bg color

* Rework fetch logic

* Add academic session select, means working GPA

* Add compare rhs components and data forwarding

* Show warning when not all academic sessions selected

* Loading tracking and indicator

* Table sorting

* Type fixes

* Comments

* Bug fixes: autocomplete limit, rmp undefined, div in p

* Autocomplete graph needed to be rebuilt

* Remove extra useEffect: move grade/rmp fetch logic to .then of results fetch promise

* Reorg result dropdown

* Professor RHS

* Remove filterdResults state

* Prevent being able to add to compare before data is loaded

* Use skeletons for loaading

* Remove unneeded useEffect

* Move dashboard empty and error to components

* Fix key error for LoadingRow

* Fix RMP error handling and duplicate objects when updating state to register a change

* Add single courses/profs to data fetch
Previously it relied on this data being in results but this is not always the case

* Add message for when no results are found

* Refix RMP error handling

* Simplify promises

* Update dashboard on select, not change

* Add search button

* fix for missing prof data

* type fix

* Formatting

* Create course data API route, functions to fetch data, and variables to store course and professor data and loading state

* Display course description in the RHS Course tab and pass through Course data to the courseOverview page.

* Format Course Description text and Class tab layout. Parse description for requisites

* Add browser navigation functionality. Allows back navigation and forward navigation. A new url is pushed to the stack whenever after the search bar is fully cleared (new search).

* Added course aggregate grade data (graph), course offering frequency, and what school a course is part of. Center-Aligned titles

* Updated what data is fed to CourseOverview in index.tsx

* item with no rmp data fix

* oops types

* Add basic Comparison function

* Label the 'Overall' course result when applicable

* Loading animation on course RHS

* Remove build change oops

* re-fix sorting error in CourseData fetch. Makes sure that the newest catalog year's information is displayed

* imperfect compare component. Displays all the information. Color-coded checkboxes.

* fixed compare state loading when grade data is not available

* Use a type for state of fetched data instead of seperate x and xLoading states

* Add more colors (I asked chatgpt for them)

* Remove unused imports

* Add instuctions for when nothing is in compare

* forgot to check types 😔

* forgot to format, on a roll

* Big autocomplete changes!
Removed course+prof suggestions from autocomplete since we don't use them in search, it should be a lot faster now.
This means finding course+prof combos for search results had to be done another way so this add an api route to query an object that maps courses/profs to their combos

* GitHub tooltip didn't merge well

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: Tyler Hill <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: harshptl05 <[email protected]>
Co-authored-by: William Skaggs <[email protected]>
Re add overall in search results
* Actual move

* Build fixes
Instead of fetching the prof ID with web scraping, then its data using graphql this just does it all in graphql. Also sorts results by num ratings to get the one with the most
Realized why all those `as strings`s were required in all the api routes and removed them for cleaner code. TS just needed a variable declared to type check on instead of checking on `req.query.x` every time
No more regex, no longer necessary
this commit sorts the serach ressults alphabetically by course prefix,
then by course number and alphabetically by professor name, first and last
TODO: sort professors names by last name first?
add a backward sorting feature for course prefix (e.g: GOVT before ECON)?

docs: added some comments and separated lines for easier documentation
…-courses

Fix name/credit hours for special courses & special characters in course name
TyHil added 4 commits October 7, 2024 22:28
@TyHil TyHil marked this pull request as ready for review October 8, 2024 04:21
@TyHil TyHil requested a review from iamwood as a code owner October 8, 2024 04:21
@TyHil TyHil requested a review from AbhiramTadepalli October 8, 2024 04:22
Copy link
Contributor

@AbhiramTadepalli AbhiramTadepalli left a comment

Choose a reason for hiding this comment

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

201 Commits. Worth it. 👍

@AbhiramTadepalli AbhiramTadepalli merged commit 6522cb9 into main Oct 8, 2024
2 checks passed
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.