-
Notifications
You must be signed in to change notification settings - Fork 1.7k
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: tabs #2197
feat: tabs #2197
Conversation
🦋 Changeset detectedLatest commit: 68a9382 The changes in this PR will be included in the next version bump. This PR includes changesets to release 1 package
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
Codecov Report
@@ Coverage Diff @@
## main #2197 +/- ##
==========================================
- Coverage 65.70% 64.93% -0.78%
==========================================
Files 85 80 -5
Lines 5106 5338 +232
Branches 1631 1695 +64
==========================================
+ Hits 3355 3466 +111
- Misses 1747 1868 +121
Partials 4 4
Continue to review full report at Codecov.
|
@n1ru4l IIII seee what you're doing now... and it's freakin' fabulous :) 💯 |
this is looking awesome! i appreciate this immensely part of the reason we wanted to rewrite the react componetry for this effort is as this PR progresses, let's try to pull as much out of this monolith component, and into context providers & consumers as possible. otherwise, it will be very hard to expose useful APIs for user-defined components |
@n1ru4l today I will try to restore deploy previews so that the community can easily see your work and give feedback. thanks for this! |
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.
Let's see if we can architect this in a way that doesn't increase the complexity of the GraphiQL.tsx component as much
@n1ru4l are you up for a discord discussion perhaps? or we could even record a pairing session? |
awesome! maybe they can live in a seperate file? would these be useful to people building other IDEs, and thus maybe live in a state management abstraction such as |
I still want to wait until deploy previews are working again so users can review changes like this. I have the day off because of my injury but I can wrap up that and a few other efforts hopefully |
@n1ru4l if you're able to make another commit, it should trigger a deploy preview now! I will go through and update readme links later for the changed URLs, but this should work for now I think? It disables some of the other deploy previews, and will be slow, but it at least gets us deploy previews for forked branches again |
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.
This is ready to merge in my opinion. But I'd like it if someone else was able to review it!
parameters.operationName = activeTab.operationName; | ||
updateURL(); | ||
} | ||
|
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.
Thanks for catching this detail! @harshithpabbati had a PR to add query parameter handling to the toolkit, which will make for a nice follow up. There is also the possibility of making it an internal detail in 2.0.0 if we are careful
I'll review this over the weekend! |
Quick update: I'm checking out the PR now, working on a few styling adjustments that I'll propose shortly. |
Though this doesn’t matter now with the model history is preserved in memory, so when you toggle back to a tab where you using before, the model undo/redo stack for that tab will still be available |
This is a great start, awesome! I just worked on some styling adjustments, here the before and after: Beforebefore.mp4Afterafter.mp4Changes
Let me know if you object any of the changes, happy to discuss them. For simplicity, I just went ahead and committed them already to this PR. |
@timsuchanek looks like you need to fix a few of the unit tests |
Thanks @acao, will do so in a bit! |
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.
We just need to use tab
, tablist
and tabpanel
roles and other related aria attributes, for proper tab navigation
https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/tablist_role
this aria spec for tabs also determines which keyboard shortcuts we should use
update: switched to an approving review for now so as not to block, but with just a few attributes on a few components this could be made screen reader accessible
@timsuchanek I think this last commit should fix the tests 🥳 |
That's awesome! How do you want to go about the release? I'm happy to give it a try to learn the changeset workflow |
@timsuchanek would love for you to do the honors! here are the steps I would follow:
|
@timsuchanek just rebased, good to go! |
@timsuchanek found another bug i introduced - tab add button is now a child of a button ! oops. chrome doesn't like this and throws a runtime console error |
@timsuchanek everything is looking good here! fixed that bug, found another regex issue with comments |
Awesome! Thanks for looking into it @acao! I'll look into it tomorrow ✌️ |
This looks good, so I'm merging this now! |
No description provided.