概述

版本

Radix Primitives 版本及其更新日志。

2025年2月5日

  • 更新了依赖项,以移除 reactreact-dom 的对等依赖警告 #3350
  • 当子元素是 Fragment 时,跳过将 refs 转发到 SlotClone #3229

2025年1月22日

  • 添加了 radix-ui 包,该包从一个位置公开所有 Radix Primitives 的最新版本。这种可摇树优化的入口点使您可以更轻松地引入所需的任何组件,并保持它们的最新状态,而无需担心冲突或重复的依赖项。
  • 为以下组件更新了 aria-hiddenreact-remove-scroll 依赖项
    • 警告对话框
    • 上下文菜单
    • 对话框
    • 下拉菜单
    • 悬停卡片
    • 菜单栏
    • 导航菜单
    • 弹出框
    • 选择框
    • 吐司通知
    • 工具提示

2024年10月1日

警告对话框

1.1.2
  • 修复了触控板用户的 allowPinchZoom 错误 #3127

头像

1.1.1
  • 在检查图像加载状态时,检查 referrerPolicy #2772

复选框

1.1.2
  • 修复了非受控复选框的 defaultChecked 意外更改的错误 #2135
  • 转发 form 属性到气泡输入元素,以修复非父表单提交 #3161

对话框

1.1.2
  • 修复了触控板用户的 allowPinchZoom 错误 #3127

单选按钮组

1.2.1
  • 转发 form 属性到气泡输入元素,以修复非父表单提交 #3161

滚动区域

1.2.0
  • 修复了 asChild 属性在 Viewport 上未按预期工作的错误 #2945
  • 更新内部样式以修复 Viewport 的其他问题 #2945

选择框

2.1.2
  • 修复了当项目最初未定义时抛出的错误 #2623
  • 修复了触摸设备的几个错误 #2939
  • 转发 form 属性到气泡输入元素,以修复非父表单提交 #3161
  • 修复了弹出框对于长项目可能在屏幕外启动的位置错误 #3149

滑块

1.2.1
  • 将根 form 属性转发到每个滑块拇指的气泡输入元素,以修复非父表单提交 #3161

开关

1.1.1
  • 转发 form 属性到气泡输入元素,以修复非父表单提交 #3161

吐司通知

1.2.2
  • 修复了当 hotkey 是空数组时焦点不正确的错误 #2491

2024年6月28日

复选框

1.1.1
  • 导出 CheckedState 类型

工具提示

1.1.2
  • 导出 TooltipProviderProps 类型

2024年6月21日

传送门

1.1.1
  • package.json 中添加了缺少的内部实用程序。提供 Portal 部分的相应包也收到了补丁更新。 #2966

2024年6月19日

所有基元


发布了所有基元的次要版本,并进行了以下更改

  • 完全兼容 React 19 #2952
  • 完全兼容 RSC #2923
  • 内部构建工具更改 #2922 #2931
  • 更新并固定 react-remove-scroll 依赖项版本,以避免边缘情况下出现双滚动条错误 #2776
  • 不要滚动菜单项以响应悬停 #2451
  • 确保在按下 Escape 键时关闭的组件捕获相应的键盘事件。这样,如果您需要在另一个按下 Escape 键关闭的组件中渲染 Radix 组件时需要更多控制,则可以在 onEscapeKeyDown 中调用 stopPropagation
  • 确保具有漫游焦点的组件不干扰浏览器或系统热键,例如后退导航 #2739
  • 确保支持 hideWhenDetached 属性的组件不允许与隐藏内容进行交互 #2743 #2745

对话框

1.1.0
  • 当缺少通过 Dialog.Title 部分提供的可访问标题时,记录错误 #2948
  • 当缺少通过 Dialog.Description 部分提供的可访问描述时,记录警告 #2948

标签

2.1.0
  • 确保组件在单击数字输入的微调器时不会干扰

导航菜单

1.2.0
  • 删除不支持的 disableOutsidePointerEvents 属性

传送门

1.1.0
  • 修复了初始渲染时 SSR 中的 hydration 错误 #2923

进度条

1.2.0
  • 显式允许 value={undefined} 表示不确定状态,与当前的实际行为匹配 #2947

选择框

2.1.0
  • 添加 nonce 属性,以便能够将 CSP nonce 传递给内联样式 #2728

滚动区域

1.1.0
  • 添加 nonce 属性,以便能够将 CSP nonce 传递给内联样式 #2728

2023年9月25日

警告对话框

1.0.5
  • 修复了单击外部时的 pointer-events 问题 #2177
  • 修复了关于接受 DOM 属性的 Portal 部分类型错误 #2178

头像

1.0.4
  • 防止图像闪烁 #2340

上下文菜单

2.1.5
  • 修复了单击外部时的 pointer-events 问题 #2177
  • 修复了关于接受 DOM 属性的 Portal 部分类型错误 #2178

对话框

1.0.5
  • 修复了单击外部时的 pointer-events 问题 #2177
  • 修复了关于接受 DOM 属性的 Portal 部分类型错误 #2178

下拉菜单

2.0.6
  • 修复了单击外部时的 pointer-events 问题 #2177
  • 修复了关于接受 DOM 属性的 Portal 部分类型错误 #2178

悬停卡片

1.0.7
  • 修复了单击外部时的 pointer-events 问题 #2177
  • 修复了关于接受 DOM 属性的 Portal 部分类型错误 #2178

菜单栏

1.0.4
  • 修复了单击外部时的 pointer-events 问题 #2177
  • 修复了关于接受 DOM 属性的 Portal 部分类型错误 #2178

导航菜单

1.1.4
  • 修复了单击外部时的 pointer-events 问题 #2177
  • 修复了关于接受 DOM 属性的 Portal 部分类型错误 #2178

弹出框

1.0.7
  • 修复了单击外部时的 pointer-events 问题 #2177
  • 修复了关于接受 DOM 属性的 Portal 部分类型错误 #2178
  • 修复了嵌套在 Dialog 内的 Popover 未打开的错误 #2182

滚动区域

1.0.5
  • 添加 scroll-behavior: smooth 兼容性 #2175

选择框

2.0.0主要版本
  • [重大更改] 添加了使用 "" value 重置为占位符的功能。请注意,如果您正在使用 value"" 的选项,则这只是一个重大更改。 #2174
  • 修复了单击外部时的 pointer-events 问题 #2177
  • 修复了关于接受 DOM 属性的 Portal 部分类型错误 #2178

吐司通知

1.1.5
  • 修复了单击外部时的 pointer-events 问题 #2177

工具提示

1.0.7
  • 修复了单击外部时的 pointer-events 问题 #2177
  • 修复了关于接受 DOM 属性的 Portal 部分类型错误 #2178
  • 修复了边界填充计算问题 #2185
  • 添加了始终动态重新定位 Content 的选项 #2092

2023年5月26日

此版本确保我们所有的基元都与 ESM 兼容。我们还将所有 popper 定位的基元更新到最新版本的 Floating UI

所有基元

  • 改进 ESM 兼容性 #2130
  • 修复了可能的上游编译器错误 (@types/react 幻像依赖) #1896

上下文菜单

2.1.4
  • 在匹配触发器大小时正确放置内容 #1995

对话框

1.0.4
  • 防止非模态对话框在 Safari 中使用触发器关闭时重新打开 #2110
  • 确保在删除焦点项目时保持焦点捕获 #2145

下拉菜单

2.0.5
  • 在匹配触发器大小时正确放置内容 #1995

悬停卡片

1.0.6
  • 在匹配触发器大小时正确放置内容 #1995

菜单栏

1.0.3
  • 在匹配触发器大小时正确放置内容 #1995

导航菜单

1.1.3
  • 单击项目且 meta 键按下时不关闭 #2080

弹出框

1.0.6
  • 在匹配触发器大小时正确放置内容 #1995
  • 防止非模态弹出框在 Safari 中使用触发器关闭时重新打开 #2110
  • 确保在使用 collisionBoundary 时正确计算 --radix-popper-available-width #2032

选择框

1.2.2
  • 在匹配触发器大小时正确放置内容 #1995
  • 改进滚动按钮触摸屏支持 #1771

滑块

1.1.2
  • 将滑块拇指位置钳制在范围内 #1988

插槽

1.0.2
  • 确保 Slot 可以在 React 服务器组件中使用 #2116

工具提示

1.0.6
  • 在匹配触发器大小时正确放置内容 #1995
  • 提高大型内容的悬停能力 #2155

2023年3月8日

此版本引入了一个全新的预览版基元:Form

表单

0.0.2预览

2023年2月24日

复选框

1.0.2
  • 当表单重置时,重置复选框状态 #1733

上下文菜单

2.1.2
  • 公开新的 CSS 自定义属性以启用尺寸约束 #1942
  • 当按下 escape 键从子菜单中关闭时不退出全屏模式 #1752
  • 放宽 ContextMenu.CheckboxItem 上的 onCheckedChange 类型 #1778

下拉菜单

2.0.3
  • 公开新的 CSS 自定义属性以启用尺寸约束 #1942
  • 当按下 escape 键从子菜单中关闭时不退出全屏模式 #1752
  • 放宽 DropdownMenu.CheckboxItem 上的 onCheckedChange 类型 #1778

悬停卡片

1.0.4
  • 公开新的 CSS 自定义属性以启用尺寸约束 #1942

菜单栏

1.0.1
  • 公开新的 CSS 自定义属性以启用尺寸约束 #1943
  • 当按下 escape 键从子菜单中关闭时不退出全屏模式 #1752
  • 放宽 Menubar.CheckboxItem 上的 onCheckedChange 类型 #1778

弹出框

1.0.4
  • 公开新的 CSS 自定义属性以启用尺寸约束 #1942

工具提示

1.0.4
  • 公开新的 CSS 自定义属性以启用尺寸约束 #1942

2023年1月17日

此版本引入了一个全新的基元:Menubar。它还为 Select 添加了对高需求功能的支持:以类似于 PopoverDropdownMenu 的方式定位内容的能力。

手风琴

1.1.0
  • 使用新的 orientation 属性添加水平方向支持,以及使用 dir 添加 RTL 支持 #1850

上下文菜单

2.1.1
  • 修复了 RTL 定位的一致性问题 #1890

下拉菜单

2.0.2
  • 修复了 RTL 定位的一致性问题 #1890

悬停卡片

1.0.3
  • 修复了 RTL 定位的一致性问题 #1890

菜单栏

1.0.0主要版本

弹出框

1.0.3
  • 修复了 RTL 定位的一致性问题 #1890

选择框

1.2.0
  • position 属性添加到 Select.Content 以启用 popper 定位 #1853

工具提示

1.0.3
  • 修复了 RTL 定位的一致性问题 #1890

2022年12月14日

上下文菜单

2.1.0
  • disabled 属性添加到 ContextMenu.Trigger #1746

2022年11月15日

选择框

1.1.2
  • 修复了在运行 Firefox 时 Cypress 中的无效 pointerId #1753

2022年10月17日

手风琴

1.0.1
  • 修复了 Firefox 和 Safari 中的初始动画播放问题 #1710

警告对话框

1.0.2
  • 修复了 textarea 元素在 Firefox 中无法滚动的问题 #1550

可折叠

1.0.1
  • 修复了 Firefox 和 Safari 中的初始动画播放问题 #1710

上下文菜单

2.0.1主要版本
  • [重大更改]ContextMenu.CheckboxItem 添加了对不确定状态的支持。请注意,如果您当前正在使用 CheckboxItem 部分并且您的代码库是用 TypeScript 编写的,则这只是一个重大更改。 #1624

对话框

1.0.2
  • 修复了 textarea 元素在 Firefox 中无法滚动的问题 #1550

下拉菜单

2.0.1主要版本
  • [重大变更]DropdownMenu.CheckboxItem 上添加对不确定状态的支持。请注意,如果您当前正在使用 CheckboxItem 组件,并且您的代码库是用 TypeScript 编写的,则这仅是一个重大变更。#1624
  • DropdownMenu.Trigger 关闭时,正确地将其打开状态与 aria-expanded 配对 #1644
  • 修复了使用 asChild 时,项目被过早选中的问题 #1647
  • 修复了组件在单独的弹出窗口中使用时无法关闭的问题 #1677

悬停卡片

1.0.2
  • 改进了文本选择体验 #1692

标签

2.0.0主要版本
  • [重大变更] 移除 useLabelContext 和对完全自定义控件的支持。为了使原生标签正常工作,请确保您的自定义控件基于原生元素,例如 buttoninput#1686
  • 通过使用原生 label 元素来改进原生行为 #1686

导航菜单

1.1.1
  • 防止菜单在被 escape 键关闭后,通过指针重新打开 #1579
  • NavigationMenu.Root 添加 delayDurationskipDelayDuration 属性。请注意,默认情况下,触发器现在在打开前会有短暂的延迟,以改善用户体验,这可以使用提供的属性进行修改。#1716

单选按钮组

1.1.0
  • RadioGroup.Root 添加 disabled 属性 #1530
  • 修复了当所有项目都被禁用时,RadioGroup.Root 仍然可以聚焦的问题 #1530

选择框

1.1.1
  • Select.Root 添加 disabled 属性 #1699
  • Select.Root 添加 required 属性 #1598

滑块

1.1.0
  • 添加使用新的 inverted 属性在 Slider.Root 上视觉反转滑块的功能 #1695
  • Slider.Root 添加 onValueCommit 属性,以更好地处理离散值更改 #1696

插槽

1.0.1
  • 停止过早地创建回调属性 #1713

吐司通知

1.1.1
  • 修复了屏幕阅读器将内容宣布为“group”而不是“status”的回归问题 #1556
  • 修复了子元素上 ref 赋值返回 null 的回归问题 #1668
  • Toast.Root 添加 onPauseonResume 属性 #1669
  • 修复了定时器重置问题,该问题会导致 toast 在某些情况下过早关闭 #1682

工具栏

1.0.1
  • 防止 Toolbar.Item 点击处理程序触发两次 #1526

工具提示

1.0.2
  • 确保在打开计时器到期之前与触发器交互时,工具提示不会打开 #1693

2022 年 7 月 21 日

在此版本中,我们开始严格遵循语义版本控制。所有 primitives 现在都版本为 1.0.0

我们还将 SelectToastNavigationMenu 从预览版移至稳定版。

所有基元

  • 改进了对 React 18 的支持 #1329
  • [重大变更] 提高了 RTL 性能。如果您依赖于文档(或任何元素)的 dir 属性继承,则需要使用 DirectionProvider#1119

警告对话框

1.0.0主要版本
  • [重大变更] 移除 allowPinchZoom 属性,现在默认为 true #1514
  • 通过 AlertDialog.Portal 上的 forceMount 改进了与 JS 动画库的兼容性 #1075
  • 修复了对话框关闭期间/关闭后页面交互的回归问题 #1401

上下文菜单

1.0.0主要版本
  • [重大变更] 改进了上下文菜单的间接嵌套。子菜单现在必须使用显式部件创建。#1394
  • [重大变更] 移除 allowPinchZoom 属性,现在默认为 true #1514
  • [重大变更] 添加了新的 Portal 部件。为避免回归,如果您想要 portal 行为,请使用此部件。请注意,z-index 不再被管理,因此您可以完全控制图层。#1429
  • [重大变更] 移除 Arrow 部件上的 offset #1531
  • [重大变更]Content 部件上的 collisionTolerance 重命名为 collisionPadding,并接受数字或 padding 对象 #1531
  • 修复了 React 18 中出现原生上下文菜单的问题 #1378
  • 添加 data-highlighted 属性以支持样式设置 #1388
  • Trigger 部件添加 data-state 属性 #1455
  • Content 部件上添加 collisionBoundaryarrowPaddingstickyhideWhenDetached 属性 #1531

对话框

1.0.0主要版本
  • [重大变更] 移除 allowPinchZoom 属性,现在默认为 true #1514
  • 通过 Dialog.Portal 上的 forceMount 改进了与 JS 动画库的兼容性 #1075
  • 修复了对话框关闭期间/关闭后页面交互的回归问题 #1401

下拉菜单

1.0.0主要版本
  • [重大变更] 改进了下拉菜单的间接嵌套。子菜单现在必须使用显式部件创建。#1394
  • [重大变更] 移除 allowPinchZoom 属性,现在默认为 true #1514
  • [重大变更] 添加了新的 Portal 部件。为避免回归,如果您想要 portal 行为,请使用此部件。请注意,z-index 不再被管理,因此您可以完全控制图层。#1429
  • [重大变更] 移除 Arrow 部件上的 offset #1531
  • [重大变更]Content 部件上的 collisionTolerance 重命名为 collisionPadding,并接受数字或 padding 对象 #1531
  • 添加 data-highlighted 属性以支持样式设置 #1388
  • 防止 escape 键在 Firefox 和 Safari 中退出全屏模式 #1423
  • Content 部件上添加 collisionBoundaryarrowPaddingstickyhideWhenDetached 属性 #1531

悬停卡片

1.0.0主要版本
  • [重大变更] 添加了新的 Portal 部件。为避免回归,如果您想要 portal 行为,请使用此部件。请注意,z-index 不再被管理,因此您可以完全控制图层。#1426
  • [重大变更] 移除 Arrow 部件上的 offset #1531
  • [重大变更]Content 部件上的 collisionTolerance 重命名为 collisionPadding,并接受数字或 padding 对象 #1531
  • Content 部件上添加 collisionBoundaryarrowPaddingstickyhideWhenDetached 属性 #1531

导航菜单

1.0.0主要版本
  • 确保在点击 NavigationMenu.Link 后关闭菜单 #1347
  • NavigationMenu.Link 添加 onSelect 属性 #1372

弹出框

1.0.0主要版本
  • [重大变更] 移除 allowPinchZoom 属性,现在默认为 true #1514
  • [重大变更] 添加了新的 Portal 部件。为避免回归,如果您想要 portal 行为,请使用此部件。请注意,z-index 不再被管理,因此您可以完全控制图层。#1425
  • [重大变更] 移除 Arrow 部件上的 offset #1531
  • [重大变更]Content 部件上的 collisionTolerance 重命名为 collisionPadding,并接受数字或 padding 对象 #1531
  • Content 部件上添加 collisionBoundaryarrowPaddingstickyhideWhenDetached 属性 #1531

传送门

1.0.0主要版本
  • [重大变更] 请注意,z-index 不再被管理,因此您可以完全控制图层。提供自定义容器的属性从 containerRef (ref) 演变为 container (element)。data-radix-portal 已被移除,因为您可以使用 asChild 来控制元素。#1463

RadioGroup

1.0.0主要版本
  • 向 root 添加 aria-required #1422

滚动区域

1.0.0主要版本
  • ScrollArea.Thumb 现在是可动画的 #1392

选择框

1.0.0主要版本
  • [重大变更]data-state 值从 active|inactive 重命名为 checked|unchecked #1388
  • [重大变更] 添加了新的 Portal 部件。为避免回归,如果您想要 portal 行为,请使用此部件。请注意,z-index 不再被管理,因此您可以完全控制图层。#1459
  • 修复了在 Select.Content 上使用 asChild 时位置错乱的问题 #1245
  • 改进了当 Select.Content 具有 padding 时,触发器/内容对齐 #1312
  • 修复了当项目少于 5 个时,触发器/内容对齐的问题 #1355
  • 支持在未提供值时触发器/内容对齐 #1379
  • 添加 data-highlighted 属性以支持样式设置 #1388
  • 添加了通过 Select.Value 上的 placeholder 属性支持占位符的功能 #1384
  • 解决了与底层原生 select 的值不匹配问题 #1421

插槽

1.0.0主要版本
  • 修复了使用 Slottable 时子元素排序的问题 #1376

Tabs

1.0.0主要版本
  • Tabs.Content 添加了对生命周期动画的支持 #1346

吐司通知

1.0.0主要版本
  • [重大变更] 默认的 toast 顺序已更改,它们现在从最旧到最新,从上到下渲染 #1469
  • 改进了使用 asChild 时的 Typescript 类型 #1300
  • 修复了更新 React 的 key 属性时 toast 重新排序的问题 #1283
  • 提高了与动画库的兼容性 #1468

工具提示

1.0.0主要版本
  • [重大变更] 添加了新的 Portal 部件。为避免回归,如果您想要 portal 行为,请使用此部件。请注意,z-index 不再被管理,因此您可以完全控制图层。#1427
  • [重大变更] 默认情况下,悬停时 Tooltip.Content 将保持打开状态(符合 WCAG 2.1 悬停内容标准)。可以向 Tooltip.Provider 提供 disableHoverableContent 以恢复之前的行为 #1490
  • [重大变更] Tooltip.Content 上的 side 现在默认为 top #1490
  • [重大变更] 现在需要 Tooltip.Provider,您必须包装您的应用程序以避免回归。#1490
  • [重大变更] 移除 Arrow 部件上的 offset #1531
  • [重大变更]Content 部件上的 collisionTolerance 重命名为 collisionPadding,并接受数字或 padding 对象 #1531
  • 改进了工具提示与其他 primitives 的图层 #1314
  • 修复了转换/动画触发器时工具提示关闭的问题 #937
  • Content 部件上添加 collisionBoundaryarrowPaddingstickyhideWhenDetached 属性 #1531

2022 年 2 月 28 日

此版本预览版中引入了 3 个全新的 primitives:SelectToastNavigationMenu,同时还发布了大量修复和改进。

手风琴

0.1.6
  • 防止在按下 Accordion.Trigger 时提交表单 #1085
  • 修复了 React 18 的动画问题 #1125

警告对话框

0.1.7
  • 改进了 pointer-events 管理 #1079

复选框

0.1.5
  • 防止通过 enter 键激活 #1104

可折叠

0.1.6
  • 修复了 React 18 的动画问题 #1125

上下文菜单

0.1.6
  • 防止 DropdownMenu.TriggerItem 点击触发两次 #1057
  • 提高了空闲性能 #1040

对话框

0.1.7主要版本
  • 改进了 pointer-events 管理 #1079
  • [重大变更] Dialog.Title 现在是必需部件,因此如果未使用会抛出错误。如果不需要描述,则必须将 aria-describedby={undefined} 传递给 Dialog.Content#1098

下拉菜单

0.1.6
  • 改进了与 Dialog/AlertDialog 的可组合性 #1097
  • 防止在非模态模式下点击触发器关闭后立即重新打开 #1059
  • 防止 DropdownMenu.TriggerItem 点击触发两次 #1057
  • 提高了空闲性能 #1040

导航菜单

0.1.2预览版
  • 新的 primitive #1172

单选按钮组

0.1.5
  • 防止通过 enter 键激活 #1104

选择框

0.1.1预览版
  • 新的 primitive #1169

滑块

0.1.4
  • 防止在使用 HomeEnd 键时页面滚动 #1076

Tabs

0.1.5
  • 防止通过右键单击意外激活焦点 #1114

吐司通知

0.1.1预览版
  • 新的 primitive #1165

Toggle Group

0.1.5
  • 通过为单个 toggle group 使用 radio 角色来提高可访问性 #1118

2021 年 12 月 13 日

此版本侧重于 React 18 支持,并为某些软件包引入了一些重大变更,主要与 portal 对话框有关。

所有基元

  • [Breaking] 弃用 IdProvider。 改进了对 React 18 的未来支持,并且在旧版本中不再需要。 从你的应用中移除以避免弃用警告。 #1006

手风琴

0.1.5主要
  • 改进 React 18 支持 #984
  • 改进开发模式下 typevalue 属性不匹配时的错误信息 #979
  • 防止 Accordion.Content 在初始页面加载时的高度动画 #977

警告对话框

0.1.5主要
  • [Breaking] 添加新的 Portal 部分。 为了避免回归,如果你想要 portal 行为,请使用此部分。 #936
  • [Breaking] 支持在 AlertDialog.Overlay 内滚动。 将 allowPinchZoom 移动到根元素。 #963
  • 修复 asChild TypeScript 错误 #924

可折叠

0.1.5
  • 防止 Collapsible.Content 在初始页面加载时的高度动画 #977

对话框

0.1.5主要
  • [Breaking] 添加新的 Portal 部分。 为了避免回归,如果你想要 portal 行为,请使用此部分。 #936
  • [Breaking] 支持在 Dialog.Overlay 内滚动。 将 allowPinchZoom 移动到根元素。 #963

下拉菜单

0.1.4
  • 防止禁用的触发器打开菜单 #974

悬停卡片

0.1.3
  • 修复在对话框内时无法聚焦 HoverCard 的问题 #920

单选按钮组

0.1.4
  • 防止程序化聚焦更改值 #939

Tabs

0.1.4主要
  • [Breaking]Tabs.Trigger 更改为 button 元素 #981
  • 改进 TSDocs #978

Toggle Group

0.1.4
  • 移除 role=group 元素上无效的 aria-orientation 属性 #965

工具栏

0.1.4
  • 修复 asChild TypeScript 错误 #924
  • 移除无效的 toolbaritem role #950

工具提示

0.1.6主要
  • [Breaking] 添加新的 TooltipProvider 部分。 你必须包裹你的应用以避免回归。 #1007
  • [Breaking]Tooltip.Trigger 中移除 type=button 属性 #1011
  • 修复 tooltip 激活回归问题 #1035

插槽

0.1.2
  • 修复 key 警告 #1015

2021 年 10 月 15 日

所有基元

  • 所有 primitives 现在都已版本化 0.1.1
  • 通过作用域上下文修复 primitives 之间的组合问题 #906
  • 修复 CSS 卸载动画 #851

手风琴

0.1.1
  • Accordion.Content 添加新的 CSS 变量以帮助实现宽度动画 #879

警告对话框

0.1.1主要
  • 改进与 Dialog 的组合性 #906
  • [Breaking] 移除 AlertDialog.Content onInteractOutside 属性 #846

对话框

0.1.1
  • 改进与 AlertDialog 的组合性 #906
  • 通过 allowPinchZoom 属性向 DropdownMenu.Content 添加捏合缩放支持 #884

上下文菜单

0.1.1
  • 通过 allowPinchZoom 属性向 ContextMenu.Content 添加捏合缩放支持 #884
  • 防止通过子菜单触发器上的箭头键滚动 #908

可折叠

0.1.1
  • Collapsible.Content 添加新的 CSS 变量以帮助实现宽度动画 #879

复选框

0.1.1
  • 防止屏幕阅读器虚拟光标访问隐藏的输入框 #870

下拉菜单

0.1.1
  • 改进与 Tooltip 的组合性 #906
  • 通过 allowPinchZoom 属性向 DropdownMenu.Content 添加捏合缩放支持 #884
  • 防止通过子菜单触发器上的箭头键滚动 #908

悬停卡片

0.1.1
  • 在聚焦时打开以改进键盘支持 #902
  • 在内部组合正确的指针事件 #893

标签

0.1.1
  • 允许其子元素阻止事件传播 #861

单选按钮组

0.1.1
  • 防止屏幕阅读器虚拟光标访问隐藏的输入框 #870

弹出框

0.1.1
  • 通过 allowPinchZoom 属性向 Popover.Content 添加捏合缩放支持 #884

滑块

0.1.1
  • 修复当值为 0 时的计算错误 #866

开关

0.1.1
  • 防止屏幕阅读器虚拟光标访问隐藏的输入框 #870

Tabs

0.1.1主要
  • [Breaking] 当标签页不活动时,卸载 Tabs.Content 中的内容 #859

2021 年 9 月 7 日

所有基元

  • 所有 primitives 均已移至 Beta 并且现在已版本化 0.1.0
  • [Breaking] 将多态 as 属性替换为 asChild 布尔属性。 了解更多关于如何在此处更改渲染元素的信息 #835

对话框

0.1.0
  • 改进与 DropdownMenu 的组合性 #818

下拉菜单

0.1.0
  • 改进与 Dialog 的组合性 #818
  • 重新启用关闭时的 pointer-events #819
  • 防止在关闭时选择 body 文本 (Firefox) #812
  • 确保子触发器在点击时接收焦点 (iOS Safari) #820

Primitive

0.1.0主要
  • [Breaking] 弃用 extendPrimitive 实用程序 #840

2021 年 8 月 4 日

所有基元

  • 提高多态类型性能 #784

警告对话框

0.0.20主要
  • [Breaking] 移除 AlertDialog.Content onPointerDownOutside 属性 #700
  • 防止外部指针事件在触摸设备上过早触发 #767

上下文菜单

0.0.24主要
  • 通过 modal 属性添加模态支持 #700
  • [Breaking] 移除 ContextMenu.Content disableOutsidePointerEvents 属性 #700
  • 防止外部指针事件在触摸设备上过早触发 #767

对话框

0.0.20
  • 通过 modal 属性添加模态支持 #700
  • 改进 React 18 中的动画渲染 #776
  • 确保在使用子元素上的 autofocus 属性时,焦点在关闭时恢复到触发器 #739
  • 防止外部指针事件在触摸设备上过早触发 #767
  • 确保 iOS Safari 始终如一地聚焦第一个可聚焦元素 #776

下拉菜单

0.0.23主要
  • 通过 modal 属性添加模态支持 #700
  • [Breaking] 移除 DropdownMenu.Content disableOutsideScroll 属性 #700
  • [Breaking] 移除 DropdownMenu.Content disableOutsidePointerEvents 属性 #700
  • 防止外部指针事件在触摸设备上过早触发 #767

弹出框

0.0.20主要
  • 通过 modal 属性添加模态支持 #700
  • [Breaking] 移除 Popover.Content disableOutsideScroll 属性 #700
  • [Breaking] 移除 Popover.Content disableOutsidePointerEvents 属性 #700
  • [Breaking] 移除 Popover.Content trapFocus 属性 #700
  • 改进 React 18 中的动画渲染 #776
  • 确保在使用子元素上的 autofocus 属性时,焦点在关闭时恢复到触发器 #739
  • 防止外部指针事件在触摸设备上过早触发 #767
  • 确保 iOS Safari 始终如一地聚焦第一个可聚焦元素 #776

滚动区域

0.0.16
  • ScrollBar 部分添加 data-state 属性 #801

滑块

0.0.17
  • 防止禁用时 thumb 接收焦点 #777
  • 防止在使用 React.StrictMode 时 thumb 丢失焦点 #794

2021 年 6 月 24 日

上下文菜单

0.0.23
  • 现在可以通过长按触摸来触发 #743

对话框

0.0.19
  • 为更简单的标签添加可选的 TitleDescription 部分 #741

滚动区域

0.0.15
  • Scrollbar 添加 data-orientation 以方便样式设置 #720
  • 修复 Scrollbar 上的 forceMount 类型问题 #738

滑块

0.0.16
  • 确保在使用键盘并跨越另一个 thumb 时,聚焦正确的 thumb #731
  • 确保在跨越另一个 thumb 时只需要按一次箭头键 #733

插槽

0.0.12
  • 改进类型兼容性 #737

Toggle Group

0.0.10
  • 确保只需单击一次即可切换单个受控切换组 #722
  • 确保 Safari 上的焦点行为一致 #727

2021 年 6 月 15 日

所有基元

  • 改进多态类型 #648

手风琴

0.0.16主要
  • [Breaking]Accordion.Button 重命名为 Accordion.Trigger #651
  • [Breaking]Accordion.Panel 重命名为 Accordion.Content #651
  • [Breaking] 相应地重命名自定义属性 (--radix-accordion-content-height) #651
  • [Breaking] type=“single” Accordion 现在有一个新的 collapsible 属性,默认值为 false。 这意味着默认行为现在已更改。 默认情况下,用户无法关闭所有项目。 #651

警告对话框

0.0.18主要
  • [Breaking] 允许在 onPointerDownOutside 中阻止默认行为,而不会无意中阻止焦点 #654

复选框

0.0.16主要
  • [Breaking] onCheckedChange(event) 现在是 onCheckedChange(checked: CheckedState) #672
  • 改进与原生表单验证的兼容性 #650
  • 允许在 Checkbox onClick 上停止传播 #672
  • 改进与原生 label 的兼容性 #672
  • 改进包裹在原生 label 中时的可访问性 #672

可折叠

0.0.16主要
  • [Breaking]Collapsible.Button 重命名为 Collapsible.Trigger #651

上下文菜单

0.0.22主要
  • 添加子菜单支持 #682
  • 添加 ContextMenu.TriggerItem #682
  • 添加 ContextMenu.Arrow #682
  • 为支持 RTL 子菜单添加 dir 属性 #682
  • [Breaking] 允许在 onPointerDownOutside 中阻止默认行为,而不会无意中阻止焦点 #654
  • [Breaking] 移除 ContextMenu.Content side 属性 #658
  • [Breaking] 移除 ContextMenu.Content align 属性 #658
  • [Breaking] 如果你之前在 ContextMenu.Content 上使用了 sideOffset,那么现在应该使用 alignOffset。 这是为了标准化根菜单和子菜单的垂直对齐方式。 #712
  • [Breaking] onFocusOutside 现在是一个自定义事件 #671
  • 改进对没有内边距的内容和项目的支持 #658
  • 通过在键盘打开时聚焦第一个项目来与 WAI-ARIA 规范对齐 #694

对话框

0.0.18主要
  • [Breaking] 允许在 onPointerDownOutside 中阻止默认行为,而不会无意中阻止焦点 #654

下拉菜单

0.0.21主要
  • 添加子菜单支持 #682
  • 添加 DropdownMenu.TriggerItem #682
  • 为支持 RTL 子菜单添加 dir 属性 #682
  • [Breaking] 允许在 onPointerDownOutside 中阻止默认行为,而不会无意中阻止焦点 #654
  • [Breaking] onFocusOutside 现在是一个自定义事件 #671
  • [Breaking] 向上箭头不再打开菜单 #702
  • 通过在键盘打开时聚焦第一个项目来与 WAI-ARIA 规范对齐 #694

弹出框

0.0.18主要
  • [Breaking] 允许在 onPointerDownOutside 中阻止默认行为,而不会无意中阻止焦点 #654
  • [Breaking] onFocusOutside 现在是一个自定义事件 #671

单选按钮组

0.0.17主要
  • [Breaking] onValueChange(event) 现在是 onValueChange(value: string) #685
  • [Breaking] 移除 RadioGroup.Item onCheckedChange 属性 #685
  • 改进与原生表单验证的兼容性 #650
  • 改进在表单中的使用 #685

滚动区域

0.0.14主要
  • 全新版本,API 更简洁 #624
  • 改进 Safari 支持 #624
  • 改进 RTL 支持 #624
  • 改进触摸支持 #624
  • Scrollbar 组件的挂载/卸载现在可以动画了 #624
  • 为 thumb 添加最小宽度/高度,使其始终可抓取 #624
  • 将功能性 CSS 移入组件以改进 DX(开发者体验) #624
  • 显著减小了包大小 #624
  • [Breaking] 移除 overflowXoverflowY props #624
  • [Breaking] 移除 ScrollAreaButtonStartScrollAreaButtonEndScrollAreaTrack 组件 #624
  • [Breaking]scrollbarVisibility prop 重命名为 type。可选值为 autoalwaysscrollhover #624
  • [Breaking]scrollbarVisibilityRestTimeout prop 重命名为 scrollHideDelay #624
  • [Breaking] 移除 trackClickBehavior prop,因为我们移除了内置动画。点击轨道始终会捕捉到指针位置 #624
  • [Breaking] ScrollAreaScrollbarXScrollAreaScrollbarY 现在分别是 <ScrollAreaScrollbar orientation="horizontal" /><ScrollAreaScrollbar orientation="vertical" /> #624
  • 确保禁用滚动时,不显示滚动条 #624
  • 确保子组件的事件处理程序不会中断 #624
  • 确保在子组件内容大小更改时,滚动区域会更新 #624

滑块

0.0.15
  • 改进在表单中的使用 #678
  • 修复 LTR 中的按键绑定问题 #718

开关

0.0.14主要
  • [Breaking] onCheckedChange(event) 现在是 onCheckedChange(checked: boolean) #679
  • 改进与原生表单验证的兼容性 #650
  • 改进在表单中的使用 #679
  • 改进包裹在原生 label 时的可访问性 #679

Tabs

0.0.14主要
  • [Breaking]Tabs.Tab 重命名为 Tabs.Trigger #652
  • [Breaking]Tabs.Panel 重命名为 Tabs.Content #652

2021 年 5 月 3 日

所有基元

  • 改进多态类型性能 #613

手风琴

0.0.14
  • 确保只需单击一次即可关闭单个受控的 accordion(手风琴) #594

复选框

0.0.14主要
  • [Breaking] 移除 readOnly prop #600

上下文菜单

0.0.18
  • 添加 onOpenChange prop #604

对话框

0.0.16
  • 确保在窗口失焦并重新聚焦时,焦点位置不会丢失 #589

下拉菜单

0.0.18主要
  • 考虑不可见的项目 #618
  • [Breaking] 移除 anchorRef prop #580
  • 防止在使用空格键选择项目时页面滚动 #626

悬停卡片

0.0.1
  • 新的 primitive 组件 #595

弹出框

0.0.16主要
  • [Breaking] 移除 anchorRef prop,并替换为可选的 Anchor 部分 #580

单选按钮组

0.0.15Major
  • 添加可选的 orientationdirloop props #618
  • [Breaking] 移除 readOnly prop #600

开关

0.0.12Major
  • [Breaking] 移除 readOnly prop #600

Toggle Group

0.0.7
  • 添加可选的 orientationdirloop props #618

工具提示

0.0.17主要
  • [Breaking] 移除 anchorRef prop #580

2021 年 3 月 26 日

所有基元

  • 改进 tree-shaking(摇树优化) #577

上下文菜单

0.0.17
  • 确保在已打开上下文菜单时,可以打开另一个上下文菜单 #565

下拉菜单

0.0.17
  • 修复潜在的重叠问题 #541

弹出框

0.0.15
  • 确保 Content 在具有多个关闭动画时关闭 #571

Toggle(切换)

0.0.6Major
  • [Breaking]ToggleButton primitive 组件重命名为 Toggle #546
  • [Breaking]toggled prop 重命名为 pressed #546
  • [Breaking]defaultToggled prop 重命名为 defaultPressed #546
  • [Breaking]onToggledChange prop 重命名为 onPressedChange #546

Toggle Group

0.0.6
  • 新的 primitive 组件 #376

工具栏

0.0.9

工具提示

0.0.16

2021 年 3 月 5 日

手风琴

0.0.7
  • 为 panel 添加 height CSS 自定义属性,以便更轻松地实现动画 #537

可折叠

0.0.7
  • 为 content 添加 height CSS 自定义属性,以便更轻松地实现动画 #537

工具提示

0.0.9
  • 修复类型定义冲突 #538

2021 年 3 月 3 日

所有基元

  • 添加 SSR(服务器端渲染) 支持
  • [Breaking] 移除 selector prop 和 data-radix-* 属性 #517

手风琴

0.0.6Major
  • [Breaking] 添加对多值的支持。请注意,这是一个重大变更,因为新的 type prop 是必需的 #527

滑块

0.0.6
  • 确保 step 值被正确舍入 #463

Tabs

0.0.6
  • 添加 RTL 支持 (dir prop) #497

2021 年 2 月 17 日

工具提示

0.0.7
  • 确保在使用 <Trigger as={Slot}> 时,事件是组合的 #461

2021 年 2 月 15 日

上下文菜单

0.0.8
  • 公开 onCloseAutoFocus prop #456

下拉菜单

0.0.8
  • 公开 onCloseAutoFocus prop #456

2021 年 2 月 10 日

所有基元

  • 修复使用 as prop 时的类型自动补全 #421

手风琴

0.0.5
  • 防止打开/关闭闪烁 #431

对话框

0.0.6
  • 确保焦点在关闭时正确返回 #422

单选按钮组

0.0.5Major
  • [Breaking]name prop 从 Item 移动到 Root #424

2021 年 2 月 1 日

上下文菜单

0.0.6
  • 重新添加缺失的 children #414

下拉菜单

0.0.6
  • 重新添加缺失的 children #414

弹出框

0.0.5
  • 防止闪烁(滑动)问题 #415

2021 年 1 月 29 日

插槽

0.0.1
  • 新的实用工具函数 #409

2021 年 1 月 25 日

对话框

0.0.3
  • 修复标签页切换出去时会关闭的回归错误 #403

下拉菜单

0.0.3
  • 修复损坏的箭头键导航 #404

2021 年 1 月 22 日

所有基元

  • 添加 selector prop #347

手风琴

0.0.2
  • 确保在 Root 上设置 disabled={false} 不会启用禁用的项目 #400

下拉菜单

0.0.2
  • 在 trigger 上添加回车键支持 #381
  • 防止焦点竞争条件 #394

弹出框

0.0.2
  • 确保 Content 在窗口大小调整时重新定位 #359
  • 确保 Content 内的最后一个元素触发 blur 事件 #395

2020 年 12 月 15 日

所有基元

0.0.1Major
  • 首次发布!🎉 #338
上一篇可访问性
下一篇样式