Open
Description
- Discussion from [RFC] Planning about v6 #51919
- Preparation
- Create next branch
- React support version bump to 18
- CI 16, 17, 18 Test Case change to 18, 19 @zombieJ
-
rc-util
remove all the.js
suffix file @li-jia-nan -
rc-util/ref
support React 19 chore: support Ref check update react-component/util#594 -
rc-util
ReactRender
remove React 17 support refactor: rm legacy code react-component/util#617 - Latest nextjs version example update @li-jia-nan
- Pre compile with react compiler
- Use ES classes, remove these babel plugins: ant-design/antd-tools@3b3447e/lib/getBabelCommonConfig.js#L20-L22 @Wxh16144
- Raise build target to reduce bundle size @zombieJ refactor: Update build tools #53390
- Remove findDOMNode & Update Ref
- Remove
findDOMNode
:- Remove
findDOMNode
fromrc-util/React/findDOMNode
@Zyf665 remove React.findDOMNode react-component/util#611 - Remove
findDOMNode
fromrc-resize-observer
@Zyf665 feat: Remove findDOMNode react-component/resize-observer#216 -
Remove(check and no need) @GDobbyfindDOMNode
fromrc-trigger
- Remove
findDOMNode
fromrc-virtual-list
@CoderSerio feat: remove findDomNode react-component/virtual-list#295 - Remove
findDOMNode
fromrc-mutation-observer
Remove findDOMNode from rc-mutate-observer react-component/mutate-observer#14 - Remove
findDOMNode
fromrc-css-motion
feat: Remove findDOMNode from rc-css-motion react-component/motion#59
- Remove
- Update
ref
- Keep
forwardRef
as fallback to compatible with React 18. This may do nothing currently
- Keep
- Tag remove margin @li-jia-nan
- Remove
- css variables only
- @ant-design/cssinjs provide pure css variable mode
- Change theme should not re-render sub component
- Remove style compatible code & docs
- Remove React ≤ 18 version compatible code
- Remove dynamic style code and provide css variables code only
- Update
@ant-design/cssinjs-util
- Remove antd ConfigProvider
cssvar
config. @Roxannej - zero runtime ability
- @ant-design/cssinjs provide pure css variable mode
- Retire v4 deprecated API
- Check
dist/antd.js
for listing thewarning
method listing. - Remove Icon file chore: [v6] rm legacy Icon component #52241
- Remove BackTop file chore: [v6] rm legacy BackTop component #52206
- rc component warning fixing & update antd code @aojunhao123
-
@ant-design/compatible
for v6 - Remove Dropdown.Button demo & API @Meet-student chore: [v6] rm Dropdown.Button #53793 feat(Dropdown.Button): deprecated in favor of Space.Compact + Dropdown + Button #53262
- antd deprecated API @kiner-tang
- antd warning fixing
- Remove doc from antd site
- Remove test case from antd code
Components: - auto-complete feat: [V6] Retire deprecated api for AutoComplete #52198
- breadcrumb feat: [v6] Retire deprecated api for bredcrumb #52202
- cascader feat: [v6] Retire deprecated api for cascader #52203
- collapse feat: [v6] Retire deprecated api for collapse #52204
- config-provider
- date-picker feat: [v6] Retire deprecated api for date-picker #52232
- drawer feat: [v6] Retire deprecated api for drawer #52233
- dropdown feat: [v6] Retire deprecated api for dropdown #52234
- form feat: [v6] Retire deprecated api for form #52235
- modal feat: [v6] Retire deprecated api for modal #52237
- popconfirm feat: [V6] Retire deprecated api for tooltip/popover/popconfirm #52457 @thinkasany
- progress feat: [v6] Retire deprecated api for progress #52244
- select feat: [v6] Retire deprecated api for select #52368
- slider feat: [v6] Retire deprecated api for slider #52369
- table feat: [v6] Retire deprecated api for table #52460
- tag feat: [v6] Tag support disabled and href #52229 @aojunhao123
- time-picker
- tooltip feat: [V6] Retire deprecated api for tooltip/popover/popconfirm #52457 @thinkasany
- tree
- tree-select feat: [v6] Retire deprecated api for tree-select #52471
- typography feat: [v6] Retire deprecated api for typography #52472
- upload feat: [V6] Retire deprecated api upload #52476
- Check
- Mobile UX improvement
- Refactor
rc-trigger
to support mobile style switch - Listing component with popup for update
-
rc-picker
add mobile vision
- Refactor
- Completely drop the dependency on
@ctrl/tinycolor
- Replace
@ctrl/tinycolor
to@ant-design/fast-color
@aojunhao123
- Replace
- Features
- Masonry @OysterD3
- Grid support media query @985563349
- Replace Result default image to reduce bundle size
- Carousel dot show duration Carousel dot show duration #46876
- Remove copy-to-clipboard
- Semantic DOM & Design [RFC] Semantic DOM Structure with classNames or styles #51885
- All
dropdown
rename topopup
@aojunhao123 - Semantic DOM Update @thinkasany
- Affix @thinkasany feat: ConfigProvider support classname and style for affix #52745
- Alert @thinkasany feat: ConfigProvider support classnames and styles for Alert #52669
- Anchor @thinkasany feat: ConfigProvider support classnames and styles for anchor #52866
- App @thinkasany
- AutoComplete @thinkasany feat: ConfigProvider support classNames and styles for autoComplete #53150
- Avatar @thinkasany refactor: hooks of context for avatar #52807
BackTop - Badge @thinkasany feat: ConfigProvider support Badge.Ribbon #52303
- Breadcrumb @thinkasany feat: ConfigProvider support classnames and styles for breadcrumb #52859
- Button @thinkasany @liangchaofei feat: ConfigProvider support classNames and styles for button #53055
- Calendar @thinkasany feat: ConfigProvider support classNames and styles for calendar #53159
- Card @thinkasany feat: configProvider support Card.Meta #52214
- Carousel @zombieJ
- Cascader @thinkasany feat: ConfigProvider support classNames and styles for Cascader #53694
- Checkbox @thinkasany feat: ConfigProvider support classnames and styles for checkbox #52781
- Col @thinkasany
- Collapse @thinkasany feat: ConfigProvider support Collapse semantic props
classNames
andstyles
#52258 - ColorPicker @thinkasany feat: ConfigProvider support classNames and styles for colorPicker #53303
- DatePicker @thinkasany feat: ConfigProvider support classNames and styles for TimePicker / DatePicker #53489
- Descriptions @thinkasany feat: ConfigProvider support
classNames
andstyles
for Descriptions #52120 - Divider @thinkasany feat: ConfigProvider support classNames and styles for divider #53890
- Drawer @thinkasany feat: improve Semantic for Drawer #52247
- Dropdown @thinkasany feat: ConfigProvider support classNames and styles for dropdown #53272
- Empty @thinkasany feat: ConfigProvider support classNames and styles for Empty #52208
- Flex @thinkasany
- FloatButton @thinkasany @zombieJ feat: FloatButton support semantic structure & ConfigProvider support passing related props #54145
- Form @thinkasany feat: ConfigProvider support classNames and styles for form #53226
- Image @thinkasany feat: ConfigProvider support classNames and styles for image #53028
- Input @thinkasany @aojunhao123 feat: input support semantic dom #53958
- InputNumber @thinkasany feat: ConfigProvider support classNames and styles for inputNumber #53698
- Layout @thinkasany
- List @thinkasany @zombieJ feat: ConfigProvider support classnames and styles for list #52908
- Mentions @thinkasany feat: ConfigProvider support classnames and styles for mentions #52961
- Menu @thinkasany feat: ConfigProvider support classNames and styles for menu #53324
- Modal @thinkasany feat: ConfigProvider support
classNames
andstyles
for Modal #52340 - Pagination @thinkasany feat: ConfigProvider support classnames and styles for pagination #52893
- Popconfirm @thinkasany feat: ConfigProvider support popconfirm #52126
- Popover @thinkasany feat: ConfigProvider support popover #52110
- Progress @thinkasany @zombieJ feat: ConfigProvider support classNames and styles for Progress #53535
- QRCode @thinkasany feat: ConfigProvider support qrcode #52172
- Radio @thinkasany feat: ConfigProvider support classNames and styles for radio #52780
- Rate @thinkasany refactor: context hook of rate #52883
- Result @thinkasany feat: ConfigProvider support classNames and styles for Result #52171
- Row @thinkasany
- Segmented @thinkasany feat: ConfigProvider support classnames and styles for segmented #52376
- Select @thinkasany feat: ConfigProvider support classnames and styles for select #52948
- Skeleton @coding-ice feat: Enhance Skeleton components with classNames and styles support #52470
- Slider @thinkasany feat: ConfigProvider support classNames and styles for slider #52185
- Space @thinkasany feat: ConfigProvider support root for Space #52248
- Spin @thinkasany feat: ConfigProvider support classNames and styles for Spin #52823
- Splitter @thinkasany @wanpan11 feat: Splitter support classNames and styles #53225
- Splitter custom dragger icon @wanpan11
- Statistic @thinkasany feat: ConfigProvider support
classNames
andstyles
for Statistic #52141 - Steps @thinkasany @zombieJ feat: ConfigProvider support classNames and styles for Steps #53789
- Switch @thinkasany feat: ConfigProvider support classnames and styles for switch #52849
- Table @thinkasany feat: ConfigProvider support classNames and styles for table #53659
- Tabs @thinkasany feat: ConfigProvider support classnames and styles for tabs #52895
- Tag @thinkasany feat: ConfigProvider support classnames and styles for tag #52764
- TimePicker @thinkasany feat: ConfigProvider support classNames and styles for TimePicker / DatePicker #53489
- Timeline @thinkasany feat: ConfigProvider support classnames and styles for timeline #52976
- Tooltip @thinkasany feat: ConfigProvider support tooltip #51872
- Tour @thinkasany feat: ConfigProvider support Tour #52250
- Transfer @zombieJ feat: ConfigProvider support classNames and styles for Transfer #53429
- Tree @thinkasany feat: ConfigProvider support classNames and styles for tree #53174
- TreeSelect @thinkasany feat: ConfigProvider support classNames and styles for treeSelect #53229
- Typography @thinkasany
- Upload @thinkasany feat: ConfigProvider support classnames and styles for upload #52972
- Watermark @thinkasany feat: ConfigProvider support classname and style for watermark #52811
- message @thinkasany feat: ConfigProvider support classnames and styles for message #52793
- notification @thinkasany feat: ConfigProvider support classnames and styles for notification #52759
- All
- antd-migration-helper (v5 => v6)
- Before release
- All semantic structure
- variant same style (solid, filled, outlined, borderless)
- classNames.root should only affect on the single element not same as
rootClassName