fix(*): resolve appearance against the Ui appearance type instead of Ui - #9281
Conversation
`Appearance<T>` is generic over the theme type, but `@clerk/vue` and
`@clerk/astro` passed the `Ui` type into it. That resolved to
`Ui & GlobalAppearanceOptions & { signIn?: Ui, ... }`, which has none of
`theme`, `variables`, `elements` or `options`, so every appearance object
was rejected. `@clerk/nuxt` inherits this via `PluginOptions`.
Use `ExtractAppearanceType<TUi, Appearance>`, as `@clerk/react` already does.
Co-authored-by: factory-droid[bot] <138933559+factory-droid[bot]@users.noreply.github.com>
🦋 Changeset detectedLatest commit: e1e0911 The changes in this PR will be included in the next version bump. This PR includes changesets to release 3 packages
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 |
|
@BobbyLin7 is attempting to deploy a commit to the Clerk Production Team on Vercel. A member of the Team first needs to authorize it. |
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Repository YAML (base), Organization UI (inherited) Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (4)
🔗 Linked repositories identifiedCodeRabbit considers these linked repositories for cross-repo context during reviews:
📝 WalkthroughWalkthroughUpdated Astro and Vue public option typings to derive Estimated code review effort: 2 (Simple) | ~10 minutes Suggested reviewers: 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches 💡 1🛠️ Fix failing CI checks 💡
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
@clerk/astro
@clerk/backend
@clerk/chrome-extension
@clerk/clerk-js
@clerk/electron
@clerk/electron-passkeys
@clerk/eslint-plugin
@clerk/expo
@clerk/expo-google-signin
@clerk/expo-passkeys
@clerk/express
@clerk/fastify
@clerk/hono
@clerk/localizations
@clerk/nextjs
@clerk/nuxt
@clerk/react
@clerk/react-router
@clerk/shared
@clerk/tanstack-react-start
@clerk/testing
@clerk/ui
@clerk/upgrade
@clerk/vue
commit: |
Appearance<T>is generic over the theme type, but@clerk/vueand@clerk/astropassed theUitype into it. That resolved toUi & GlobalAppearanceOptions & { signIn?: Ui, ... }, which has none oftheme,variables,elementsoroptions, so every appearance object was rejected.@clerk/nuxtinherits this viaPluginOptions.Use
ExtractAppearanceType<TUi, Appearance>, as@clerk/reactalready does.Description
Checklist
pnpm testruns as expected.pnpm buildruns as expected.Type of change