-
Notifications
You must be signed in to change notification settings - Fork 835
Ensure all hooks are using typedocs + have code examples for each supported SDK #2649
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
base: main
Are you sure you want to change the base?
Conversation
The latest updates on your projects. Learn more about Vercel for GitHub.
|
7d0c880
to
8225f3c
Compare
I cleaned up some of the examples, and moved the parameters and returns sections back to the top - I think for the hooks, they should come first. some of the examples are super long, and push all that important information really far down. for components, i think it's probably fine to have their properties at the bottom, but for hooks, i feel like you'd want to understand the hook, like what's available for the hook, before trying to use it - its a little different than just dropping in a component. let me know your stance on this though 🤔 |
Oooh nice catch. Yeah I'm already doing this for other ones, so I can make sure to do it for this one and others with the same issue. That's no problem. Update: Fixed here: Fix headings for usePaymentElement + here in the javascript repo: Fix headings for usePaymentElement |
Yeah I was divided on this, but I agree, think it's much better to have those first and then the examples. Thanks for moving them! |
## `<CheckoutProvider />` | ||
|
||
The `<CheckoutProvider />` component is a wrapper that provides a checkout context to its children, allowing checkout state to be shared across multiple components. Child components can access the checkout context by calling `useCheckout()`. | ||
|
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.
@alexisintech In the live docs, this section is followed a copy essentially of the shared/use-checkout-options
, which is why I had it twice on this document. I'm not sure if it's an error, but from my understanding they're here twice to show that you can use these parameters for either the useCheckout
hook or as a parameter to the CheckoutProvider
component. See what I mean below.
Under CheckoutProvider
section:

As part of the parameters:

🔎 Previews:
What does this solve?
Fixes https://linear.app/clerk/issue/DOCS-10983/ensure-all-hooks-are-using-typedocs-have-code-examples-for-each.
This PR is part of a broader project aimed at adding more code examples to our hooks documentation. During project discussions, we agreed that the current structure of our hooks docs needed to be revisited. Currently, most of the hook pages are fully rendered through Typedoc, including code examples. However, adding additional examples through Typedoc would have required significant restructuring of the JavaScript repo.
To address this, we decided to:
javascript
for this: hhttps://github.com/docs(repo): Generate all params and return types (hooks work) javascript#6901.Additionally, not all hooks currently use Typedoc. This PR also ensures that all hooks are properly configured to use Typedoc for their returns and parameters.
This PR includes:
This PR will be the second in a sequence. First, we need to merge the
javascript
PR, which:What changed?
This PR adds all the code examples for the supported SDKs for each hook + uses the newly rendered Typedoc returns/ parameters, placing them after the examples for the most part.
Testing
useAuth
- already using typedoc, but examples need to be moved outuseClerk
- already using typedoc, but examples need to be moved outuseUser
- already using typedoc, but examples need to be moved outuseSession
- already using typedoc, but examples need to be moved outuseSessionList
- already using typedoc, but examples need to be moved outuseSignIn
- already using typedoc, but examples need to be moved outuseSignUp
- - already using typedoc, but examples need to be moved outuseCheckout
- need to be using typedocusePaymentAttempts
- need to be using typedocusePaymentElement
- need to be using typedocusePaymentMethods
- need to be using typedocusePlans
- need to be using typedocuseStatements
- need to be using typedocuseSubscription
- need to be using typedocuseReverification
- need to be using typedoc (examples already done)Checklist