-
Notifications
You must be signed in to change notification settings - Fork 10
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
User Mentee Applications: add ability for admins to view all notes associated with status #450
Conversation
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #450 +/- ##
=======================================
Coverage 98.94% 98.95%
=======================================
Files 215 217 +2
Lines 3223 3246 +23
=======================================
+ Hits 3189 3212 +23
Misses 34 34 ☔ View full report in Codecov by Sentry. |
This is awesome! Couple comments:
|
@jp524 Looks really great! I think I agree w/ @JoshDevHub's assessment on using the select; it does strike me as though the affordance of that may not be as ideal, both from a UI design standpoint as well as a UX/code perspective. Like Josh mentioned, I typically think of selects in terms of forms. That having been said, I think the way you're using them isn't out of bounds. One thing I liked about your choice to use the select element over the accordion is that it provides a much more streamlined/space efficient experience compared to the accordion, especially as we get further in the process. My initial instinct is that a tabbed component might be a better experience, but it still suffers from some of the issues of space efficiency and finding what's relevant as the process advances onward. As you mentioned, it isn't ideal to have to refresh the page to see the new changes reflected in the page. One alternative interface might be to do something like this: This is kind of like a vertical tab situation and I think would dovetail well with what Josh suggested -- when you create the note and advance the applicant, you can use a turbo frame to prepend the latest status to the box on the left hand side and replace the main content area with a turbo frame containing notes on that page. In this conceptualization, each link on the left hand side representing a previously completed stage in the application process that would fetch the associated notes and replace the main content area. That said, if you can get it working with turbo and the select, this might be an instance where perfect is the enemy of good enough. What do you think? |
Thank you @JoshDevHub and @afogel for your insights! I liked seeing your approaches to the problem and I can see now that it can definitely be solved without JavaScript. I ended up keeping the |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM 🚀
What's the change?
On the admin side of User Mentee Application, all reviewer notes are shown in one place using a
select
tag.The associated Stimulus controller displays a note based on the status selected.
What key workflows are impacted?
Updating an applicant's status.
Highlights / Surprises / Risks / Cleanup
When updating an applicant status from the
admin_user_mentee_application_path(:id)
, theselect
element is not automatically updated. Therefore a manual refresh of the page is required to display the new status and note.I thought about adding a Turbo action to update this
select
tag but since I am using ViewComponents I don't think that is possible.Demo / Screenshots
Screen.Recording.2023-12-04.at.15.51.09.mov
Issue ticket number and link
Closes #429
Checklist before requesting a review