Skip to content

Releases: DouyinFE/semi-design

v2.3.0-beta.0

07 Jan 12:20
Compare
Choose a tag to compare
v2.3.0-beta.0 Pre-release
Pre-release
  • 【Fix】
    • 修复 Form 使用 formApi.setValue、setError、setTouch 中用父级fieldPath,对多个嵌套field进行批量赋值时,可能存在卡顿的问题(影响版本 v1.32~v2.2)
    • 修复Form formApi.validate 局部校验触发范围不准确的问题
    • 修复 Tooltip 计算 adjustOverflow时未将 spacing纳入,导致内容超出(但未超过8px)后仍未自动切换方向的问题 #491
    • 修复 Tooltip 展现浮层默认方向空间不足,触发 adjustOverflow 自动切换方向时会闪烁的问题 #69
    • 修复 Tree handleNodeDragOver 内部 event 传参不恰当的问题 #345
    • 修复 TreeSelect 当 searchPosition 为 trigger 时,maxTagCount 不生效的问题 #498
    • 修复 TagInput 设置 value 为 undefined 无法生效的问题 #483
    • 修复 Slider 点击刻度不生效的问题
    • 修复 Table 非受控分页在翻页之后, 更新 state 会重置分页状态, 跳转到第一页 #348 @chenc041
  • 【Feat】
    • Select 支持autoClearSearchValue,允许选中后保留当前搜索关键字
    • Slider 拖动时添加鼠标 grabbing 样式
    • 40+ 组件增加无障碍语义化支持 #205
      • Button 新增 aria-label 属性,禁用时 Button 具有 aria-disabled 属性
      • Checkbox 的 role 为 checkbox,CheckboxGroup 的 role 为 list,它的直接子元素为 listitem,新增 aria-label 属性,用于解释选择框的作用;aria-disabled 表示当前的禁用状态;aria-checked 表示当前的选中状态
      • Empty 插图的 aria-hidden 为 true
      • Form 为 Form.Field 增加 label 和错误信息无障碍支持
      • Icon 组件 role 为 img,它的 aria-label 默认为组件的文件名;Icon 内部的 svg 元素为装饰元素,默认设置了 aria-hidden 以不被屏幕阅读器阅读
      • InputGroup 给 Label 新增 name 默认值,以便关联对应的 field
      • Modal 增加 open 前后 focus 位置处理,打开后聚焦在弹出层,关闭后聚焦在打开前聚焦的位置
      • Radio 的 aria-labelledby 默认指向 addon 节点,用于解释 Radio 的内容,aria-describedby 默认指向 extra 节点,用于补充解释 Radio 的内容
      • Select trigger 与弹出层的 role 为 combobox 和 listbox,trigger 绑定了一些 aria-* 属性表示与弹出层的关系;Option 上具有 aria-selected 和 aria-disabled 属性表示当前项的选中状态
      • Slider 的 role 为 slider,同时设置了 aria-valuenow 等属性描述它的当前状态;纵向时 aria-orientation 为 vertical;当 aria-valuenow 的值不容易理解时,支持通过 API aria-valuetext 传递一个字符串使其更友好,也可以通过 geAriaValueText 方法得到 aria-valuetext 的值。#490
      • Table 的行、单元格添加了 role 和 aria-* 属性
      • Tooltip 具有 tooltip role,遵循 WAI-ARIA 规范中对于 Tooltip 的定义;content 的 wrapper 会被自动添加 id 属性,用于与 children 的 aria-describedby 匹配,关联 content 与 children
      • Tree 支持传入 aria-label 来表示该 Tree 作用,同时组件内部为 Tree 和 TreeNode 设置了相应的 role 和 aria-*属性。#493
      • TreeSelect 支持传入 aria-label、aria-errormessage 等属性表示 TreeSelect 的作用和当前状态,同时为子节点设置了相关 aria-* 属性。#493
      • Popover 的 trigger 为 hover 时,Popover 的 content 具有 tooltip role,trigger 为 click、custom 时,Popover 的 content 具有 dialog role
      • 其他组件详情请看各组件文档,点击这里查看无障碍设计指导

  • 【Fix】
    • Fixed the problem that when Form uses the parent fieldPath in formApi.setValue, setError, and setTouch to perform batch assignment to multiple nested fields, there may be a problem of stuck (affecting versions v1.32~v2.2) Checklist
    • Fix the inaccurate trigger range of Form formApi.validate partial verification Checklist
    • Fix the problem that Tooltip did not include spacing when calculating adjustOverflow, which caused the content to exceed (but not exceed 8px) and still not automatically switch the direction. #491
    • Fix Tooltip showing that the default direction of the floating layer is insufficient, and it will flicker when adjustOverflow is triggered to automatically switch the direction. #69
    • Fix Tree handleNodeDragOver internal event parameters are not properly passed #345
    • Fix TreeSelect when searchPosition is trigger, maxTagCount does not take effect #498
    • Fix TagInput setting value to undefined does not take effect #483
    • Fix Slider step marks click not working
    • Fix Table uncontrolled paging after turning the page, updating state will reset the paging state and jump to the first page #348 @chenc041
  • 【Feat】
    • Select supports autoClearSearchValue, allowing the current search keywords to be retained after selection Checklist
    • Slider add cursor grabbing style when drag Checklist
    • 40+ components add accessibility semantic support #205
      • Button adds aria-label attribute, when disabled, Button has aria-disabled attribute
      • The role of Checkbox is checkbox, the role of CheckboxGroup is list, its direct child element is listitem, and the aria-label attribute is added to explain the function of the selection box; aria-disabled means the current disabled state; aria-checked means the current selected state
      • aria-hidden is true for Empty illustrations
      • Form adds label and error message accessibility support for Form.Field
      • Icon component role is img, and its aria-label defaults to the component's file name; the svg element inside Icon is a decorative element, and aria-hidden is set by default to prevent it from being read by screen readers
      • InputGroup adds a default value of name to Label to associate the corresponding field
      • Modal adds focus position processing before and after opening, focusing on the pop-up layer after opening, and focusing on the focused position before opening after closing
      • Radio's aria-labelledby points to the addon node by default, which is used to explain the content of Radio, and aria-describedby points to the extra node by default, which is used to supplement and explain the content of Radio
      • The roles of the Select trigger and the pop-up layer are combobox and listbox, and the trigger is bound with some aria-* attributes to indicate the relationship with the pop-up layer; Option has aria-selected and aria-disabled attributes to indicate the selected state of the current item
      • The role of Slider is slider, and attributes such as aria-valuenow are set to describe its current state; aria-orientation is vertical when it is vertical; when the value of aria-valuenow is not easy to understand, it supports passing a string through API aria-valuetext To make it more friendly, you can also get the value of aria-valuetext through the geAriaValueText method. #490
      • Added role and aria-* attributes to table rows and cells
      • Tooltip has a tooltip role, which follows the definition of Tooltip in the WAI-ARIA specification; the content wrapper will be automatically added with an id attribute to match children's aria-describedby and associate content with children
      • Tree supports passing in aria-label to indicate the role of the Tree, and the corresponding role and aria-* attributes are set for Tree and TreeNode inside the component. #493
      • TreeSelect supports passing in attributes such as aria-label and aria-errormessage to indicate the role and current status of TreeSelect, and sets relevant aria-* attributes for child nodes. #493
      • When the trigger of the Popover is hover, the content of the Popover has the tooltip role, and when the trigger is click, custom, the content of the Popover has the dialog role
      • For details of other components, please refer to the documentation of each component, click to view the accessibility design guide

v2.2.2

31 Dec 08:43
Compare
Choose a tag to compare
  • 【Fix】
    • 修复 Transfer 在 type 是 groupList 场景下, title 属性传入 ReactElement 类型导致key-warning @JontyyYang
    • 修复 DatePicker 范围选择 preset 日期设置为 null 或 undefined,选择日期后面板没有关闭问题 #338
    • 修复 dateRange 类型 DatePicker,triggerRender 传入时选择完日期面板没有关闭问题 #422
    • 修复 InputNumber 精度格式化在受控模式下不正确问题
    • 修复 IconFastForward 拼写错误 @clark-cui

  • 【Fix】
    • Fix Transfer In the groupList scenario, the title attribute is passed into the reactElement node, resulting in key-warning @JontyyYang
    • Fixed DatePicker range selection preset date is set to null or undefined, the panel does not close after selecting the date #338
    • Fix the issue that the dateRange type DatePicker, when triggerRender is passed in, the panel does not close after selecting the date #422
    • Fixed InputNumber precision format bug in controlled mode
    • Fix spelling errors in IconFastForward @clark-cui

v2.2.1

29 Dec 12:17
Compare
Choose a tag to compare
  • 【Fix】
    • 修复 DatePicker 在 needConfirm 模式时,点击取消按钮输入框日期未返回到已选中日期问题 #457
    • 优化 DatePicker 交互细节,确认选择模式 click outside 不再关闭面板,需通过点击取消关闭面板 #457
    • 修复 DatePicker 确认选择模式 footer 按钮间距不正确问题 #457
    • 修复 DatePicker RTL 模式下,年切换按钮方向错误问题 #457
    • 修复 Table head row paddingY 与设计稿不符问题,统一调整为 8px #460

  • 【Fix】
    • Fixed DatePicker input value is back to confirmed value bug when needConfirm is true #457
    • Optimize DatePicker interaction details, needConfirm mode click outside will no longer close the panel, you need to click cancel to close the panel #457
    • Fixed DatePicker needConfirm button margin bug in footer #457
    • Fixed DatePicker year button direction bug when direction='rtl' #457
    • Fixed Table head row paddingY not same with design draft bug and updated to 8px #460

v2.2.0

24 Dec 10:52
Compare
Choose a tag to compare
  • 【Fix】
    • 修复 Tabs 在 umd 方式使用时,tabPlane tab props 不接受动态更新的问题
  • 【Docs】

  • 【Fix】
    • Fix the problem that tabPlane tab props does not accept dynamic updates when Tabs are used in umd mode
  • 【Docs】

v2.2.0-beta.1

23 Dec 11:46
Compare
Choose a tag to compare
v2.2.0-beta.1 Pre-release
Pre-release
  • 【Fix】
    • 修复 DatePicker 输入非法年份导致组件崩溃问题 #422
    • 修复 Notification 多色模式下,背景色透明导致的内容穿透 #430
    • 修复 Vite 构建 CSS 时抛出 @charset utf-8 相关 warning 的问题 #403
    • 修复 Select 多选使用 backSpace 删除已选项后,下拉列表数据显示不正确的问题 #444
    • 修复 Empty 在切换暗色模式时显示 this.updateMode 未定义问题 #452
    • 修复 Safari<=13 版本的响应式报错问题 #442

  • 【Fix】
    • Fixed DatePicker input illegal year causing component crash #422
    • Fixed the content penetration caused by transparent background color in Notification when theme='light' #430
    • Fixed the issue of @charset utf-8 related warning when Vite builds CSS #403
    • Fixed the problem that the data in the drop-down list is not displayed correctly after using backSpace to delete the selected item in Select multiple selection #444
    • Fix Empty display this.updateMode undefined problem when switching dark mode #452
    • Fixed the responsive error reporting issue of Safari<=13 version #442

v2.2.0-beta.0

17 Dec 12:01
Compare
Choose a tag to compare
v2.2.0-beta.0 Pre-release
Pre-release
  • 【Feat】
    • Timeline.Item 支持 onClick #402
    • Cascader
      • 支持仅回显叶子节点,提供 leafOnly API #256
      • 支持多选时点击叶子节点即可选中,提供 enableLeafClick API #302 @btea
      • 支持自定义分隔符,提供 separator API #408
    • Upload #342
      • 支持通过 ref 调用 insert 方法
      • 支持 props showPicInfo
      • 使用 gap 控制 FileCard 间隔
    • Icon #260
      • 添加 double_chevron_left,double_chevron_right 图标
      • Icon 支持跟随当前上下文字体大小
    • LocaleProvider 新增西班牙语语言包 @chenjunxyf
    • Select 新增 inputProps ,便于用户在 filter 为 true 时可实现一些特殊功能。例如传入 onCompositionEnd,onKeyDown 事件监听等
    • DatePicker #260
      • 新增年份切换按钮
      • 优化范围选择交互逻辑,避免出现两个面板是相同月份场景
  • 【Fix】
    • Select
      • 修复 Select renderSelectedItem 返回的 isRenderInTag 为 false 时会报 key 的 warning 的问题 #320
      • 修复 Select 搜索高亮关键字时 warning 提示 mark 标签 key 缺失的问题
    • 修复 Cascader multiple+disabled 时标签样式与设计稿不符 #400
    • 修复 Description type='plain' 时,key 或 itemKey 为 node 时渲染不正确的问题 #406
    • 修复 Pagination 同时使用 hideOnSingePage 与 showSizeChanger 时,总页数只有1时,sizeChanger 会消失无法再切换的问题 #252
    • 修复 通过 webpack plugin variables 方式定义 Select 组件 Design Token 时不生效的问题 #375 @summerstream
    • 修复 Rating 组件设置 size 为 number 后 UI 错误
    • 修复 Timeline 自定义 dot 水平对齐的问题 #395 @chenc041
  • 【Docs】

  • 【Feat】
    • Timeline.Item supports onClick #402
    • Cascader
      • Support only echoing leaf nodes with leafOnly API #256
      • Support click the leaf node to select it in multiple selection with enableLeafClick API #302 @btea
      • Support custom separator with separator API #408
    • Upload #342
      • Support ref.current.insert method
      • Support props showPicInfo
      • Use gap to control FileCard interval
    • Icon #260
      • Add double_chevron_left, double_chevron_right icons
      • Icon supports following the current context font size
    • LocaleProvider added Spanish language pack @chenjunxyf
    • Select added inputProps, which is convenient for users to realize some special functions when filter is true. For example, incoming onCompositionEnd, onKeyDown event monitoring, etc.
    • DatePicker #260
      • Add year switch buttons
      • Optimize the scope selection interaction logic to avoid scenes where the two panels are the same month
  • 【Fix】
    • Select
      • Fixed the issue of key warning when isRenderInTag returned by Select renderSelectedItem is false #320
      • Fixed the problem that the mark tag key is missing when the warning prompts the mark when searching for the highlighted keyword in Select
    • Fixed that the label style does not match the design draft when Cascader is multiple+disabled #400
    • Fixed the problem of incorrect rendering when the key or itemKey is node when Description type='plain' #406
    • Fixed the issue that when Pagination uses hideOnSingePage and showSizeChanger at the same time, when the total number of pages is only 1, the sizeChanger will disappear and can no longer be switched #252
    • Fixed the issue that the design token of the Select component does not take effect when defining the Select component through Webpack plugin variables #375 @summerstream
    • Fixed the UI error after setting the size of the Rating component to number
    • Fixed the horizontal alignment of Timeline custom dot #395 @chenc041
  • 【Docs】

v2.1.5

10 Dec 10:24
Compare
Choose a tag to compare
  • 【Fix】
    • Timeline.time ts 定义支持 ReactNode 类型 #359 @chenc041
    • 修复 Tree 组件 onContextMenu 阻止冒泡的问题 #364 @Nctdtman
    • 修复 Select/Checkbox/Button 缺少 id 的问题 #353
    • 修复 Nav footer、header dts定义相反了的问题
    • 修复 Table fixed 单元格 z-index 过小问题,从 1 调整为 101 #391
    • 修复 Form Field 在未声明 field 属性时使用时下丢失 ref 的问题
  • 【Style】
    • 修复 --overlay-bg token 命名不规范的问题。 修改为 --color-overlay-bg

  • 【Fix】
    • Timeline.time ts definition supports ReactNode type #359 @chenc041
    • Fix the problem of Tree component onContextMenu preventing bubbling #364 @Nctdtman
    • Fix the missing id of Select/Checkbox/Button #353
    • Fix the problem that the definitions of Nav footer and header dts are reversed
    • Fix the problem that the z-index of Table fixed cell is too small, adjusted from 1 to 101 #391
    • Fixed Form Field losing ref bug when it is not given filed prop
  • 【Style】
    • Fix the problem that the naming of --overlay-bg token is not standardized. Modified to --color-overlay-bg

v2.1.4

03 Dec 10:57
Compare
Choose a tag to compare
  • 【Fix】
    • Checkbox onChange 回调的入参 event 增加 nativeEvent.stopImmediatePropagation #343
    • 修复 Cascader 多选时点击 Checkbox 在某些场景下触发冒泡 #343
    • 修复 ButtonGroup 的 children 不是 ReactElement 报错的问题 #318
    • 修复 Rating 组件当父级设置 line-height 时半星展示错误 #346
    • Checkbox/Radio
      • 修复鼠标移入/移出选中按钮过程中,鼠标出现状态切换的样式问题 #319
      • 修复选中态 hover/active 时选中按钮会出现外边框的问题 #319
      • 优化卡片类型 selected+disabled 态的样式 #319

  • 【Fix】
    • Add nativeEvent.stopImmediatePropagation to the event input parameter of Checkbox onChange callback #343
    • Fix the problem that when Cascader is multi-selected, clicking Checkbox will trigger bubbling in some scenarios #343
    • Fix that ButtonGroup children are not ReactElement report errors #318
    • Fix Rating component half star ui error, when parent element set line-height #346
    • Checkbox/Radio
      • Fix the style of the state switching of the mouse when the mouse is moved in/out of the checked button #319
      • Fix the border of the checked button will appear when the checked button is hover/active #319
      • Optimize the style of the checked+disabled state of the card/pureCard type #319

v2.1.3

30 Nov 10:37
Compare
Choose a tag to compare
  • 【Fix】
    • 修复在源码构建过程中,替换 ImportDeclaration 中 source 的bug

  • 【Fix】
    • Fix the bug of replacing source in ImportDeclaration during source code building

v2.1.2

30 Nov 08:46
Compare
Choose a tag to compare
  • 【Feature】
    • 支持 Next.js #153
    • 替换飞书Logo图标
  • 【Fix】
    • 修复 AutoComplete 的样式问题
    • 修复 InputNumber 在编辑器没有 API 语法提示问题 #327
    • 修复 Input focus 时 hover 态边框颜色错误问题 #332

  • 【Feature】
    • Support Next.js #153
    • Replace Feishu Logo icon
  • 【Fix】
    • Fix the style problem of AutoComplete
    • Fixed the problem that InputNumber does not have API syntax hints in the editor #327
    • Fix the wrong color of hover state border when Input focus #332