-
Notifications
You must be signed in to change notification settings - Fork 40
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
fix(ToggleGroup): align with new css and api principles #2424
Conversation
🦋 Changeset detectedLatest commit: 5628e86 The changes in this PR will be included in the next version bump. This PR includes changesets to release 4 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 |
Coverage Report
File CoverageNo changed files found. |
Preview deployments for this pull request: Theme |
Preview deployments for this pull request: Theme |
Preview deployments for this pull request: Theme |
Preview deployments for this pull request: Theme |
Preview deployments for this pull request: Theme |
*/ | ||
export const ToggleGroupRoot = forwardRef<HTMLDivElement, ToggleGroupProps>( | ||
( | ||
export const ToggleGroup = forwardRef<HTMLDivElement, ToggleGroupProps>( |
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 has a context and is required for ToggleGroup
to work, do we want to go without the Context
suffix because we render a div 🤔
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.
I suggest yes; .Context
is only used when not rendering a element, ref;
#2221 (comment)
For the end user, it is not important wether or not a context is used under the hood, but it is important wether or not a DOM element is rendered :)
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.
As long as we have consistent rules. We should probably make this support asChild
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.
That however means we have to move the hidden input outside of the wrapping div 🤔
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.
Why do we need to support asChild
on the wrapper?
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.
It's just for consistency, but we can look at this later on.
This PR was opened by the [Changesets release](https://github.com/changesets/action) GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to next, this PR will be updated.⚠️ ⚠️ ⚠️ ⚠️ ⚠️ ⚠️ `next` is currently in **pre mode** so this branch has prereleases rather than normal releases. If you want to exit prereleases, run `changeset pre exit` on `next`.⚠️ ⚠️ ⚠️ ⚠️ ⚠️ ⚠️ # Releases ## @digdir/[email protected] ### Patch Changes - Textarea: Use `field-sizing: content` ([#2463](#2463)) - ErrorSummary: Rename ErrorSummary.Root to ErrorSummary ([#2437](#2437)) - Tabs: ([#2448](#2448)) - Renames `Tabs.Root` to `Tabs` - Renames `Tabs.Content` to `Tabs.Panel` - Rename classes from `ds-error-message*` to `ds-validation-message*` ([#2473](#2473)) - Modal: css changes ([#2418](#2418)) - DropdownMenu: ([#2432](#2432)) - Rename from `DropdownMenu` to `Dropdown` - Change API and structure - Rename `.Root` to `.Context` - Rename `.Content` to `Dropdown` - Tabs: css changes ([#2431](#2431)) - ToggleGroup: Rename ToggleGroup.Root to ToggleGroup ([#2424](#2424)) - Badge: Only use single DOM element for rendering ([#2422](#2422)) - Skeleton: Replace Skeleton.Text, Skeleton.Circle and Skeleton.Rectangle with <Skeleton variant=""> ([#2435](#2435)) - Breadcrumbs: Rename `Breadcrumbs.Root` to `Breadcrumbs` and remove `Breadcrumbs.Nav` ([#2428](#2428)) - HelpText: ([#2438](#2438)) - Use Popover API - Remove `portal` prop - Render icon with pseudo element and require aria-label - Fieldset: Style using css attributes ([#2447](#2447)) ## @digdir/[email protected] ### Patch Changes - Correctly mark dependencies as external. This ensures Accordion works when consumers have enabled tree-shaking. ([#2479](#2479)) - Button: Remove `type` when `asChild={true}` ([#2472](#2472)) - ErrorSummary: Rename ErrorSummary.Root to ErrorSummary ([#2437](#2437)) - Tabs: ([#2448](#2448)) - Renames `Tabs.Root` to `Tabs` - Renames `Tabs.Content` to `Tabs.Panel` - Modal: css changes ([#2418](#2418)) - Rename `ErrorMessage` to `ValidationMessage` ([#2473](#2473)) - DropdownMenu: ([#2432](#2432)) - Rename from `DropdownMenu` to `Dropdown` - Change API and structure - Rename `.Root` to `.Context` - Rename `.Content` to `Dropdown` - Tabs: css changes ([#2431](#2431)) - ToggleGroup: Rename ToggleGroup.Root to ToggleGroup ([#2424](#2424)) - Badge: Only use single DOM element for rendering ([#2422](#2422)) - Skeleton: Replace Skeleton.Text, Skeleton.Circle and Skeleton.Rectangle with <Skeleton variant=""> ([#2435](#2435)) - Breadcrumbs: Rename `Breadcrumbs.Root` to `Breadcrumbs` and remove `Breadcrumbs.Nav` ([#2428](#2428)) - HelpText: ([#2438](#2438)) - Use Popover API - Remove `portal` prop - Render icon with pseudo element and require aria-label - Fieldset: Style using css attributes ([#2447](#2447)) ## @digdir/[email protected] ## @digdir/[email protected] Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Part of #2295 and #2221