Uh oh!
There was an error while loading. Please reload this page.
feat(headless): add Popover primitive - #8478
Conversation
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
032b0f0 to
24adffaCompare2316ca7 to
144f752Compare144f752 to
8c0b810Compare24adffa to
38c58e6Compare38c58e6 to
8136289Compare8c0b810 to
6a80c95Compare6a80c95 to
c190d6fCompare8136289 to
3b5f83fCompare3b5f83f to
e6b05b8Comparec190d6f to
db49302Comparee6b05b8 to
97e0dbdComparedb49302 to
a01dab9Compare97e0dbd to
7bc3787Comparea01dab9 to
64c21e3CompareIntroduces the @clerk/headless package — a zero-style React component library providing accessible headless UI primitives. This first PR establishes the core infrastructure and patterns: - Package scaffold: Vite build, Vitest browser tests (Chromium), TypeScript config - Core utils: renderElement (polymorphic rendering with render prop support), mergeProps (event handler chaining, style/className merging) - Hooks: useControllableState, useTransitionStatus, useAnimationsFinished, useTransition - First primitive: Dialog (modal with focus trapping, scroll lock, portal support) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Introduces the @clerk/headless package — a zero-style React component library providing accessible headless UI primitives. This first PR establishes the core infrastructure and patterns: - Package scaffold: Vite build, Vitest browser tests (Chromium), TypeScript config - Core utils: renderElement (polymorphic rendering with render prop support), mergeProps (event handler chaining, style/className merging) - Hooks: useControllableState, useTransitionStatus, useAnimationsFinished, useTransition - First primitive: Dialog (modal with focus trapping, scroll lock, portal support) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Introduces the @clerk/headless package — a zero-style React component library providing accessible headless UI primitives. This first PR establishes the core infrastructure and patterns: - Package scaffold: Vite build, Vitest browser tests (Chromium), TypeScript config - Core utils: renderElement (polymorphic rendering with render prop support), mergeProps (event handler chaining, style/className merging) - Hooks: useControllableState, useTransitionStatus, useAnimationsFinished, useTransition - First primitive: Dialog (modal with focus trapping, scroll lock, portal support) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Introduces the @clerk/headless package — a zero-style React component library providing accessible headless UI primitives. This first PR establishes the core infrastructure and patterns: - Package scaffold: Vite build, Vitest browser tests (Chromium), TypeScript config - Core utils: renderElement (polymorphic rendering with render prop support), mergeProps (event handler chaining, style/className merging) - Hooks: useControllableState, useTransitionStatus, useAnimationsFinished, useTransition - First primitive: Dialog (modal with focus trapping, scroll lock, portal support) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
64c21e3 to
da71e49Compare7bc3787 to
9cc0903Comparealexcarpenter
commented
Jun 9, 2026
Superseded by #8790, which consolidates the remaining headless primitive stack (Tabs → Collapsible) into a single PR for one review pass. Closing in favor of that. |
Summary
Review Stack
Test plan
pnpm buildsucceedspnpm testpasses (+24 popover tests)🤖 Generated with Claude Code