-
-
Notifications
You must be signed in to change notification settings - Fork 235
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
feat: repository selection & add to insights #693
Conversation
β Deploy Preview for oss-insights failed.
|
β Deploy Preview for design-insights ready!
To edit notification comments on pull requests, go to your Netlify site settings. |
This is an excellent first pass. I have a few questions.
I also found a unrelated bug while QAing this #704 |
that's the default color design of the pre-existing components in the project: checkbox & button. Thought it was intentional for consistency.
Yes sure.
It works for any number of repos. Tested with 20 repos and it works. The implementation isn't affected by the number of repos
I just tested it and it works on the live site. |
Confirmed this is only an issue on beta |
Well that's wierd. It's supposed to automatically merge that with this PR |
For clarification. The feature should be useable to select repos, just redirecting the user when they try to navigate to the create page. There may be a small challenge in storing the saved repos after the redirect. i.e. I choose 3 repos and get redirected when I hit create to login in. After logging in, I should see the repos in the shopping cart on the create page. |
I've noticed some janky/buggy behavior in some cases of selecting repos, so I'll add more fixes |
So I've had a look in UseSupabaseAuth hook, and I've found this return {
signIn: (data: SignInWithOAuthCredentials) => supabase.auth.signInWithOAuth({
...data,
options: {
redirectTo: process.env.NEXT_PUBLIC_BASE_URL ?? "/"
}
}), The part options: {
redirectTo: process.env.NEXT_PUBLIC_BASE_URL ?? "/"
} is basically hard-coding the sign-in to redirect to the root path, even if a custom redirect was passed to it. Is there a reason why it is implemented that way? |
@brandonroberts can shed light on it. It came down to the authentication not playing nice with next. I believe there is context in ClickUp |
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.
- Match the button color to orange
- Prevent this feature from showing unless the user is logged in
- Ensure this feature still works bug: Click to un-filter by repoΒ #592
@Deadreyo that may have been a side effect of the auth integration we had at the time. You can modify the method signature to take the additional options and apply them to the sign in redirect. |
I've tried playing around a lot with the signIn: (data: SignInWithOAuthCredentials) => supabase.auth.signInWithOAuth({
...data,
options: {redirectTo: 'http://localhost:3000/hub/insights'}
}), and still leads to |
Would be able to use the api folder and manage this with a serverless function? https://www.netlify.com/blog/2021/12/11/serverless-functions-made-simple-just-add-files/ |
Hmm, not sure how that can help here. Signing in happens by going to a github page from the frontend so not sure if it's doable to change the signing in method with a serverless function (that's the usecase I thought of related to serverless functions) |
This reverts commit 99f4dfd.
Reverted the redirect commit to unblock this PR. Redirect should be handled in a separate issue |
I've investigated the issue of logging in random parts of the app and I don't think it is possible to consistently redirect to the second session managed system by just using For this reason, I think we should abort the selection of repos before logging in, hint at the checkbox with a disabled state, and in case the user clicks to log in, would be redirected to the same page (from the middleware), where one could now select the repos to add to the insight page. This invalidates current checks for |
Done. |
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.
Code-wise LGTM! π
Testing the disabled checkbox now am wondering if some form of extra feedback is needed, like the transition from automatically logging in and being sent to the wrong page versus the checkbox not doing anything while logged, but also not hinting at the user having to log in. Not sure what the best approach is here, let's wait for the triage team to test this out in the UI as well β€οΈ π
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
Maybe some alt text on the checkboxes/button to "Connect to GitHub" would be enough on desktop at least |
## [1.23.0-beta.6](v1.23.0-beta.5...v1.23.0-beta.6) (2023-01-03) ### π Features * add Edit Page button to insight pages ([#738](#738)) ([bde1eb8](bde1eb8)), closes [#685](#685) * enable repository selection & add to new insights page ([#693](#693)) ([ba6405d](ba6405d)), closes [#593](#593) [#592](#592) ### π Bug Fixes * add missing title props ([cdcc28d](cdcc28d))
## [1.23.0](v1.22.2...v1.23.0) (2023-01-05) ### π§βπ» Code Refactoring * update pr velocity indicator ([#707](#707)) ([7e96735](7e96735)), closes [#684](#684) ### π Bug Fixes * add missing title props ([cdcc28d](cdcc28d)) * correct some tooling and dependency issues ([#749](#749)) ([cb4ec9f](cb4ec9f)) * only pull insights for stacked avatar on insight pages ([#761](#761)) ([80ae119](80ae119)) * overflow x bug on dashboard ([#709](#709)) ([b022dbc](b022dbc)), closes [#677](#677) * user profile auth avatar processing errors ([#755](#755)) ([3ba87a6](3ba87a6)), closes [#733](#733) ### π Features * add Edit Page button to insight pages ([#738](#738)) ([bde1eb8](bde1eb8)), closes [#685](#685) * add favorite repos on the design system ([#744](#744)) ([c8660b5](c8660b5)), closes [#717](#717) * add hover card and expand on contributor stack ([#742](#742)) ([9f45b3d](9f45b3d)) * adjust search font-size ([c451450](c451450)) * change name to enhace from logarithmic ([#743](#743)) ([4384324](4384324)) * enable repository selection & add to new insights page ([#693](#693)) ([ba6405d](ba6405d)), closes [#593](#593) [#592](#592) * Filter dashboard scatter plot by PR states ([#736](#736)) ([f04093a](f04093a)) * handle close modal when click outside and improve select usage ([#705](#705)) ([105a47b](105a47b)), closes [#689](#689) * update icon PR details row ([#706](#706)) ([dac42ba](dac42ba)), closes [#696](#696)
π This PR is included in version 1.23.0 π The release is available on GitHub release Your semantic-release bot π¦π |
* origin/main: (29 commits) chore(minor): release 1.23.0 [skip ci] chore(minor): release 1.23.0-beta.13 on beta channel [skip ci] feat: update icon PR details row (#706) chore(patch): release 1.23.0-beta.12 on beta channel [skip ci] fix: only pull insights for stacked avatar on insight pages (#761) chore(patch): release 1.23.0-beta.11 on beta channel [skip ci] refactor: update pr velocity indicator (#707) chore(minor): release 1.23.0-beta.10 on beta channel [skip ci] feat: add hover card and expand on contributor stack (#742) chore(patch): release 1.23.0-beta.9 on beta channel [skip ci] fix: user profile auth avatar processing errors (#755) chore(minor): release 1.23.0-beta.8 on beta channel [skip ci] feat: handle close modal when click outside and improve select usage (#705) chore(patch): release 1.23.0-beta.7 on beta channel [skip ci] fix: correct some tooling and dependency issues (#749) chore(minor): release 1.23.0-beta.6 on beta channel [skip ci] fix: add missing title props feat: add Edit Page button to insight pages (#738) feat: enable repository selection & add to new insights page (#693) chore(minor): release 1.23.0-beta.5 on beta channel [skip ci] ...
## [1.23.0-beta.6](open-sauced/app@v1.23.0-beta.5...v1.23.0-beta.6) (2023-01-03) ### π Features * add Edit Page button to insight pages ([#738](open-sauced/app#738)) ([bde1eb8](open-sauced/app@bde1eb8)), closes [#685](open-sauced/app#685) * enable repository selection & add to new insights page ([#693](open-sauced/app#693)) ([ba6405d](open-sauced/app@ba6405d)), closes [#593](open-sauced/app#593) [#592](open-sauced/app#592) ### π Bug Fixes * add missing title props ([cdcc28d](open-sauced/app@cdcc28d))
## [1.23.0](open-sauced/app@v1.22.2...v1.23.0) (2023-01-05) ### π§βπ» Code Refactoring * update pr velocity indicator ([#707](open-sauced/app#707)) ([7e96735](open-sauced/app@7e96735)), closes [#684](open-sauced/app#684) ### π Bug Fixes * add missing title props ([cdcc28d](open-sauced/app@cdcc28d)) * correct some tooling and dependency issues ([#749](open-sauced/app#749)) ([cb4ec9f](open-sauced/app@cb4ec9f)) * only pull insights for stacked avatar on insight pages ([#761](open-sauced/app#761)) ([80ae119](open-sauced/app@80ae119)) * overflow x bug on dashboard ([#709](open-sauced/app#709)) ([b022dbc](open-sauced/app@b022dbc)), closes [#677](open-sauced/app#677) * user profile auth avatar processing errors ([#755](open-sauced/app#755)) ([3ba87a6](open-sauced/app@3ba87a6)), closes [#733](open-sauced/app#733) ### π Features * add Edit Page button to insight pages ([#738](open-sauced/app#738)) ([bde1eb8](open-sauced/app@bde1eb8)), closes [#685](open-sauced/app#685) * add favorite repos on the design system ([#744](open-sauced/app#744)) ([c8660b5](open-sauced/app@c8660b5)), closes [#717](open-sauced/app#717) * add hover card and expand on contributor stack ([#742](open-sauced/app#742)) ([9f45b3d](open-sauced/app@9f45b3d)) * adjust search font-size ([c451450](open-sauced/app@c451450)) * change name to enhace from logarithmic ([#743](open-sauced/app#743)) ([4384324](open-sauced/app@4384324)) * enable repository selection & add to new insights page ([#693](open-sauced/app#693)) ([ba6405d](open-sauced/app@ba6405d)), closes [#593](open-sauced/app#593) [#592](open-sauced/app#592) * Filter dashboard scatter plot by PR states ([#736](open-sauced/app#736)) ([f04093a](open-sauced/app@f04093a)) * handle close modal when click outside and improve select usage ([#705](open-sauced/app#705)) ([105a47b](open-sauced/app@105a47b)), closes [#689](open-sauced/app#689) * update icon PR details row ([#706](open-sauced/app#706)) ([dac42ba](open-sauced/app@dac42ba)), closes [#696](open-sauced/app#696)
What type of PR is this? (check all applicable)
Description
Feature: ability to select 1 or more repositories from the Repository tab.
Selected Repositories can be used as items for a new insights page for the user.
Feature: clicking on an already filtered-by repo will remove the filter
Unsigned users clicking on "Add to Insight" will be lead to login, then after logging in will be redirected to
insights/hub
with the selected repos.Related Tickets & Documents
fixes #593
fixes #592
Mobile & Desktop Screenshots/Recordings
Added tests?
Added to documentation?
[optional] Are there any post-deployment tasks we need to perform?
[optional] What gif best describes this PR or how it makes you feel?