1859 Commits

Author SHA1 Message Date
Zachary Bear
0cb3a2768c feat(components): [color-picker-panel] add hue-slider-class and hue-slider-style props (#23499)
* fix(style): [color-picker-panel] removed unnecessary background

* feat(components): [color-picker-panel] added props for hue-slider

- Added prop `hue-slider-class` to  define
custom class names for hue-slider
- Added prop `hue-slider-style` to define hue-slider's style

* test(components): [color-picker-panel] tests for new props

testing `hueSliderStyle` and `hueSliderClass`

* perf(types): [color-picker-panel] updated ColorPickerPanelProps

* perf(docs): [color-picker-panel] add descriptions about new props

* Revert "fix(style): [color-picker-panel] removed unnecessary background"

This reverts commit 5e34317c30.

* feat(types): [color-picker-panel] new props

Added `hueSliderClass` and `hueSliderStyle` to
deprecated colorPickerPanelProps.

* fix(components): [color-picker-panel] correct document nits

* test(components): optimized test case

* chore: remove conflict pending state & fix grammar

* chore: bump version

* docs(components): [color-picker-panel] modified version tag

* perf(components): [color-picker-panel] updated types

---------

Co-authored-by: Dsaquel <291874700n@gmail.com>
2026-03-12 21:26:11 +08:00
0song
370153a242 chore: update doc (#23777) 2026-03-11 05:22:29 +00:00
知晓同丶
3387031d21 feat(components): [input] add password-icon slot (#23772)
* feat(components): [input] add `password-icon` slot

* Update docs/en-US/component/input.md

* docs: simply example

* docs: improve example

---------

Co-authored-by: rzzf <cszhjh@gmail.com>
2026-03-11 04:12:13 +00:00
Zachary Bear
8de357ca9a docs(components): [tooltip] optimized basic example (#23756)
* perf(docs): [tooltip] optimized basic example

The `left-*` and `right-*` example are showing single line content,
so user wouldn't see what's the difference between them.

Now I changed them to multiline content.

* style(docs): [tooltip] improve documentation for clarity and consistency

* docs(components): [tooltip] fixed typos

* docs(components): [tooltip] removed leftover prop

* Update docs/examples/tooltip/basic.vue

---------

Co-authored-by: rzzf <cszhjh@gmail.com>
2026-03-09 08:25:40 +00:00
知晓同丶
ef4832863e feat(components): [slider] allow step to be set to "mark" (#23685)
* feat(components): [slider] add prop `restrictToMarks`

* rerun test

* fix: fix issues

* fix: fix issues

* fix: fix issues

* refactor: replace `restrictToMarks` with step 'mark'

* fix: types issue

* fix: fix issue

* refactor: optimize code & add range test

* Update slider.md for version 2.13.4

* refactor: simpify code & add warn

* chore: enhance step prop description

* fix: fix docs & add warn

* refactor: optimize markList computation and validation logic

* chore: sync description

* chore: bump `2.13.6`

---------

Co-authored-by: zhixiaotong <947803089@qq.com>
Co-authored-by: rzzf <cszhjh@gmail.com>
2026-03-09 10:49:59 +08:00
keeplearning66
48276fd604 docs: add label for hiding source code (#23747) 2026-03-08 18:24:40 +08:00
vsqaq
6128e09e21 docs(components): [dropdown] example style adjustments (#23746)
* docs(components): [dropdown] example style adjustments

* docs(components): [dropdown] example style adjustments
2026-03-08 13:55:14 +08:00
Zachary Bear
ada3b2a206 feat(components): [popover] expose hide() through slot (#23694)
* feat(components): [popover] expose hide() through slot

* docs(components): [popover] update slots section

* Update docs/en-US/component/popover.md

Co-authored-by: btea <2356281422@qq.com>

* style(docs): [popover] formatted descriptions

* Update docs/en-US/component/popover.md

Co-authored-by: keeplearning66 <1256734885@qq.com>

---------

Co-authored-by: btea <2356281422@qq.com>
Co-authored-by: keeplearning66 <1256734885@qq.com>
2026-03-06 12:29:08 +08:00
rzzf
2e05c91335 docs: add component changelog drawer and open issues button (#23724)
* docs: add component changelog drawer and open issues button

* docs: update comp name

* docs: optimize code

* docs: apply cb review

* Apply suggestions from code review

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* docs: apply cb review

* docs: apply cb review

* docs: add in-memory cache for issue count requests

Cache GitHub API responses for 5 minutes to avoid redundant
requests when navigating between component pages.

Co-authored-by: GitHub Copilot <noreply@github.com>

* Update docs/.vitepress/vitepress/components/globals/vp-component-meta.vue

Co-authored-by: btea <2356281422@qq.com>

* docs: optimaze code

* docs: fix i18n

* style: update version color

* docs: fix ts error

* docs: improve style and display condition

* fix: alias comp parser

* docs: show the last 20 versions

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: GitHub Copilot <noreply@github.com>
Co-authored-by: btea <2356281422@qq.com>
2026-03-06 08:16:47 +08:00
snowbitx
f695f8f05e feat(components): [time-picker] add save-on-blur prop (#23531)
* feat(components): [time-picker] prevent auto-fill on focus when empty

* docs: add doc

* docs: update doc

* 更新 time-picker.md

* fix: propagate the effect until confirm

* Update time-picker.md

* fix: clear bug

* fix: clear bug

* fix: clear bug

* fix: time-range clear bug

* fix: test error

* test: add test case

* docs: update doc

* fix: clear bug refactor

* Update packages/components/time-picker/src/time-picker-com/basic-time-spinner.vue

Co-authored-by: rzzf <cszhjh@gmail.com>

* refactor: use rAF

* refactor: optimize useOldValue options

* chore: use unknown

---------

Co-authored-by: rzzf <cszhjh@gmail.com>
2026-03-05 14:08:35 +00:00
btea
ea926472df feat(components): [input] textarea supports clearing effects (#23723)
* feat(components): [input] textarea supports clearing effects

* Update packages/components/input/__tests__/input.test.tsx

Co-authored-by: rzzf <cszhjh@gmail.com>

* feat: update

* Apply suggestions from code review

Co-authored-by: Noblet Ouways <91417411+Dsaquel@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: Noblet Ouways <91417411+Dsaquel@users.noreply.github.com>

* style: update

* Update packages/components/input/src/input.vue

Co-authored-by: rzzf <cszhjh@gmail.com>

---------

Co-authored-by: rzzf <cszhjh@gmail.com>
Co-authored-by: Noblet Ouways <91417411+Dsaquel@users.noreply.github.com>
2026-03-05 12:08:29 +01:00
rzzf
25a3595ede docs(components): [watermark] improve text color readability in dark (#23721) 2026-03-04 10:51:28 +08:00
btea
484f2cb298 feat(components): [input] emit clear event pass event parameter (#23696)
* fix(components): [input] click clear icon should trigger the event

* fix: update

* fix: update

* test: update

* docs: update
2026-03-03 10:15:23 +08:00
Bryan Qiu
074e9c022b docs(components): [autocomplete] fix invalid placement enum value (#23708) 2026-03-02 23:36:13 +08:00
0song
125e05d617 chore: update doc (#23707) 2026-03-02 06:53:03 +00:00
leihaohao
91b46a7594 fix(components): [form/form-item] initial value and reset func (#23597)
* fix(components): [form][form-item] initial value and reset func

* fix: resetFields

* fix: coderabbitai

* fix: resetFields

* fix: coderabbitai

* fix: resetFields

* fix: setInitialValues

* chore: simplify

* docs: better doc

* chore: sync doc

Co-authored-by: btea <2356281422@qq.com>

* docs: update

* docs: update

---------

Co-authored-by: Dsaquel <291874700n@gmail.com>
Co-authored-by: btea <2356281422@qq.com>
2026-02-27 11:22:32 +08:00
Noblet Ouways
ed94e7b61e fix(components): [upload] append all values in formdata (#23664)
* fix(components): [upload] append all values in formdata

* chore: apply cb review

* fix(components): [upload] support both array and tuple in formdata

* chore: more guards

* chore: improve type

* Update packages/components/upload/src/ajax.ts

Co-authored-by: rzzf <cszhjh@gmail.com>

* fix: import

* chore: address cb review

---------

Co-authored-by: rzzf <cszhjh@gmail.com>
2026-02-25 11:36:38 +08:00
snowbitx
90ffc112d8 docs(components): [timeline] fix color prop type (#23642) 2026-02-17 22:28:17 +01:00
E66
0192470da6 fix(components): [color-picker] add colorFormat prop validation (#23587)
* feat(components): [color-picker] add type hints for colorFormat prop

* feat(components): [color-picker] add type hints for colorFormat prop

* docs: align color-format type with ColorFormats
2026-02-15 13:51:57 +01:00
rzzf
de984256ab feat(utils): add setPropsDefaults method (#23612)
* feat(components): add `setPropsDefaults` method

* chore: cleanup

* test: add test

* docs: add Custom Defaults

* fix: apply coderabbit suggest

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* feat: support array props

* chore: fix type error

* refactor: use fromPairs replace zipObject

* fix: correct type

* refactor: apply coderabbit suggest

* docs: detail tip

* docs: add warning

* Update docs/en-US/guide/custom-defaults.md

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* chore: revert main.ts

* docs: update

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2026-02-14 13:37:05 +01:00
lostElk
2b1ab441e3 feat(components): [select/select-v2] add tag-tooltip config object prop (#23556)
* feat(components): [select] add collapseTagsTooltipAppendTo & test

Add collapseTagsTooltipAppendTo prop to control where the collapse-tags tooltip is appended. Wire it
to the tag tooltip with fallback to appendTo. Add unit test to verify prop is passed correctly.

* docs(docs): add collapseTagsTooltipAppendTo doc

* refactor(components): [select]rename collapseTagsTooltipAppendTo prop

Rename collapseTagsTooltipAppendTo to tooltipAppendTo
Simplify the prop name by removing redundant context
Behavior remains unchanged

* docs(components): [select] add version tag for tooltipAppendTo prop

* Update packages/components/select/__tests__/select.test.ts

Co-authored-by: rzzf <cszhjh@gmail.com>

* feat(components): [select] add tagTooltip config object

Add TagTooltip to support appendTo, placement, fallbackPlacements, effect, popperClass, popperStyle,
teleported, popperOptions, showAfter, and offsetWire all tagTooltip properties to the collapse-tags
tooltip with fallback to existing select propsProvides more granular control over tooltip behavior
while maintaining backward compatibility

* docs(components): [select] add tag-tooltip config object doc

* docs(components): [select] add default value for fallback-placements

* docs(components): [select]  update tag-tooltip default value to {}

* docs(components): [select]remove string type from TagTooltipProps effect

* docs(components): [select] add fallback mechanism tip for tag-tooltip

* feat(components): [select] extend TagTooltipProps

Add transition, hideAfter, and autoClose properties to TagTooltipProps

Update popperStyle type to accept both string and CSSProperties

* docs(components): [select] enhance tag-tooltip documentation

Add transition, hide-after, and auto-close properties to TagTooltip API table

Clarify fallback mechanism with priority order explanation

Add custom container positioning tip for append-to usage

* docs(components): [select] refine tag-tooltip priority description

Co-authored-by: keeplearning66 <1256734885@qq.com>

* docs(components): [select] refine effect prop type in tag-tooltip

Co-authored-by: keeplearning66 <1256734885@qq.com>

* chore: format

* docs: apply rabbit comment

* feat(components): [select-v2] add TagTooltipProps interface

Add TagTooltipProps interface with popper configuration options

* feat(components): [select-v2] implement tagTooltip prop

* test(components): [select-v2] add tag-tooltip prop test case

Add test case to verify tagTooltip prop functionality with appendTo option

* docs(components): [select-v2] add tag-tooltip API documentation

Add tag-tooltip configuration object to Select V2 API table

Add comprehensive tag-tooltip properties section with fallback mechanism explanation and custom
container positioning tip

* docs(components): [select-v2] add version tag to tag-tooltip prop

* fix(components): [select-v2] Optional chain tagTooltip access

* fix(components): [select] optional chain tagTooltip access

* feat(components): [select-v2] Fix tooltip teleport timing

* docs(components): [select-v] add version tag for tag-tooltip

Co-authored-by: Noblet Ouways <91417411+Dsaquel@users.noreply.github.com>

* docs(components): [select] add version tag for tag-tooltip

Co-authored-by: Noblet Ouways <91417411+Dsaquel@users.noreply.github.com>

---------

Co-authored-by: rzzf <cszhjh@gmail.com>
Co-authored-by: keeplearning66 <1256734885@qq.com>
Co-authored-by: Noblet Ouways <91417411+Dsaquel@users.noreply.github.com>
2026-02-14 00:00:16 +01:00
rzzf
c4b70ffa6b docs(components): [input-tag] correct svg size (#23647) 2026-02-11 11:55:17 +01:00
E66
a005d766e6 fix(components): [watermark] correct fontWeight type definition (#23641) 2026-02-10 09:09:20 +08:00
btea
9ffd7ce279 feat(components): [config-provider] add table config (#23610)
* feat(components): [config-provider] add table config

* fix: update

* Update packages/components/table/src/table-column/watcher-helper.ts

Co-authored-by: Noblet Ouways <91417411+Dsaquel@users.noreply.github.com>

* fix: update

* docs: update

* docs: update

---------

Co-authored-by: Noblet Ouways <91417411+Dsaquel@users.noreply.github.com>
2026-02-10 09:07:40 +08:00
snowbitx
d359c5f4a3 feat(components): [time-select] add name prop (#23633)
* fix(components): [time-select] duplicate end time with format

* docs: add name version

* test: add test case
2026-02-09 09:23:21 +08:00
snowbitx
467dc8daad docs(components): [switch] fix inactive-action-icon attribute typo (#23600)
Fix typo in switch component documentation
2026-02-04 10:05:49 +08:00
snowbitx
065b6b023e docs(components): [radio/checkbox] correct disabled type in props config (#23590)
Co-authored-by: rzzf <cszhjh@gmail.com>
2026-02-03 10:48:33 +08:00
Kylin
f154ce27c6 feat(components): [button] add dashed prop (#22738)
* feat(components): [input] add the dashed attribute

* docs: update tag

* refactor: update the documentation of config-provider

* refactor: update config-provider test

* refactor: update button test

* refactor: update test

* test: update

* refactor: update css

* refactor: reset

* refactor: update css

* refactor: delete blank lines

* docs: update version

* docs: update button type

* docs: update button type

---------

Co-authored-by: rzzf <cszhjh@gmail.com>
2026-02-03 10:39:54 +08:00
btea
3544921d6d docs: improve the dx of search components (#23583)
* docs: improve the dx of search components

* docs: update
2026-02-02 23:09:06 +01:00
btea
63dac65a81 docs: update version (#23567) 2026-01-30 20:04:38 +08:00
E66
5dde0c2415 docs: avoid hardcoded locale links (#23541)
* docs: avoid hardcoded locale links

* docs: add avoid hardcoded locale links

* Update markdown-transform.ts
2026-01-30 09:10:03 +08:00
keeplearning66
05d0ae0269 docs(components): [timeline] add a tip about padding (#23495)
* docs(components): [timeline] add a tip about padding

* docs: apply rabbit comment

* docs: update
2026-01-28 20:21:48 +08:00
An Hao
38df8de99c feat(components): [table] add row-expandable prop (#23140)
* feat(components): [table] add row-expandable prop

* Update table.md

* fix(components): [table] refine rowExpandable and update expandable docs

* fix(components): [table] refine rowExpandable

---------

Co-authored-by: anhao <wzanh@sinopec.com>
2026-01-27 22:59:45 +01:00
snowbitx
0db1ae698c refactor(components): [config-provider] improve ConfigContext types (#23528)
* refactor(components): [config-provider] align shadow type

* refactor(components): [config-provider] align button/link  context type

* Update button.vue

* Change link type from 'primary' to 'success'
2026-01-26 10:35:38 +08:00
btea
59a909311a chore: upgrade vitepress-plugin-group-icons (#23527) 2026-01-25 16:53:45 +08:00
Zachary Bear
6008643019 docs(components): [color-picker-panel] add missing footer slot (#23502)
* perf(docs): [color-picker-panel] described for missed `footer` slot

* docs(components): [color-picker-panel] fix grammar
2026-01-23 10:02:51 +08:00
snowbitx
6a5f2ff2e9 refactor(components): [badge/breadcrumb/button] use type-based definitions (#23414)
* refactor(components): [badge] use type-based definitions

* refactor(components): breadcrumb,breadcrumb-item

* refactor(components): button,button-group

* fix: correct badgeStyle default value

* fix: correct button default value

* fix: correct badge-style

* Update packages/components/button/src/button-group.vue

Co-authored-by: rzzf <cszhjh@gmail.com>

* fix: delete false default

* Update packages/components/badge/src/badge.vue

Co-authored-by: rzzf <cszhjh@gmail.com>

* Update packages/components/breadcrumb/src/breadcrumb-item.vue

Co-authored-by: rzzf <cszhjh@gmail.com>

* fix: correct offset default in badge.md

* fix: revert the badgeStyle handling

---------

Co-authored-by: rzzf <cszhjh@gmail.com>
2026-01-18 16:12:20 +08:00
rzzf
fcf8698c78 refactor(components): [input] use type-based definitions (#23366)
* refactor(components): [input] use type-based props definitions

* fix: update

* chore: rename evt to eve

* refactor: add comments

* Update packages/components/input/src/input.vue

Co-authored-by: Noblet Ouways <91417411+Dsaquel@users.noreply.github.com>

* fix: import markRaw

* chore: change deps

* chore: revert catalog comment

* refactor: remove generic type

* refactor: revert InputInstance

* docs: update deprecated

* fix: update

* chore: remove CSSProperties

---------

Co-authored-by: Noblet Ouways <91417411+Dsaquel@users.noreply.github.com>
2026-01-16 21:49:45 +01:00
E66
5d2526eb72 docs(components): [scrollbar] missing types in examples (#23397)
docs(components): [scrollbar] Fix missing types in examples
2026-01-16 17:19:48 +08:00
btea
1193300411 chore: upgrade vitepress-plugin-group-icons (#23395) 2026-01-16 16:25:52 +08:00
bxh1071
48778958bb docs(components): [tree-v2] improve demo style (#23383)
* Add scoped styles for penultimate tree node

修正示例中的自定义类名样式未生效,节点颜色没变的问题。

* docs: update color

---------

Co-authored-by: rzzf <cszhjh@gmail.com>
2026-01-14 20:27:51 +08:00
rzzf
9c5adc9c48 chore(components): [alert] remove deprecated api (#23369)
* chore(components): [alert] remove deprecated api

* Update docs/en-US/component/alert.md

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* chore: format

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2026-01-12 10:26:05 +01:00
keeplearning66
199700f0ee fix(components): [input-tag] correct the tooltip theme and the style of the collapse tag (#23138)
* fix: correct the tooltip theme and the style of the collapse tag

* fix: update

* docs: update version number

* Update docs/en-US/component/input-tag.md

Co-authored-by: btea <2356281422@qq.com>

* refactor: use collapse-tag

---------

Co-authored-by: btea <2356281422@qq.com>
2026-01-12 09:39:31 +08:00
Yang
eac19da9e1 docs(components): [upload] modify the abort method description (#23363)
docs(components): perfecting the abort method description
2026-01-11 15:26:06 +08:00
Yang
c6e2ed63b1 fix(components): [upload] make abort param optional (#23353)
- Change the parameter type definition of the bort function to optional
2026-01-09 13:37:21 +00:00
0song
b651fb6e5a chore: update doc (#23354) 2026-01-09 12:28:07 +08:00
keeplearning66
8b7d8eacf5 feat(components): [timeline] support mode prop (#22929)
* feat(components): [timeline] support item-placement prop

* feat: update

* feat: update

* feat: update

* feat: update

* feat: update

* test: update

* feat: update

* feat: update

* feat: update

* docs: update version number

* feat: update

* feat: revert padding

* feat: update

* chore: format

* docs: update version number

* chore: use ExtractPublicPropTypes

* Update docs/en-US/component/timeline.md

Co-authored-by: rzzf <cszhjh@gmail.com>

* style: use content-box

* docs: add an example

* style: add padding-right: 0

* docs: remove max-width: 600px

* feat: add alternate-left and alternate-right

* feat: modify the value of mode

---------

Co-authored-by: rzzf <cszhjh@gmail.com>
2026-01-08 21:13:52 +08:00
Zachary Bear
75175cb397 feat(components): [dropdown-item] add icon slot (#23300)
* feat(components): [dropdown-item] 支持通过 slot 设置图标

之前只能通过设置 `icon` prop 来设置菜单项的图标,如果要用其他图标库只能在 prop 中写 VNode 函数,大大降低可读性;要么就重复写 <ElIcon> 来进行统一布局。

现在引入了 `icon` slot,会自动将元素传入 ElIcon 的插槽中,这和 ElButton 的图标设计逻辑是一致的:既可以使用 prop 也可以使用 slot,但 slot 优先级较高。

close #22837

* test(components): [dropdown] added test for icon slot

* docs(components): [dropdown] added description for `icon` slot

* Update docs/en-US/component/dropdown.md

Co-authored-by: btea <2356281422@qq.com>

* style(docs): styling document

* fix(components): [dropdown-item] incorrectly rendered el-icon

* test(components): [dropdown-item] check incorrectly rendering

---------

Co-authored-by: btea <2356281422@qq.com>
2026-01-08 21:06:36 +08:00
lw56777
36471cbedd feat(components): [form] add setInitialValues and setInitialValue function (#23013)
* feat: setInitialFields

* Remove '@eslint/markdown' dependency

Removed '@eslint/markdown' dependency from package.json

* Remove '@eslint/markdown' from pnpm-lock.yaml

Removed '@eslint/markdown' dependency from lock file.

* fix(components): expose setInitialValue alias

* fix: test

* fix: Nitpick comments

* docs(components): add setInitialValues and setInitialValue API docs

* fix: docs[form] setInitialValue

* fix: typecheck

* Update docs/en-US/component/form.md

Co-authored-by: Noblet Ouways <91417411+Dsaquel@users.noreply.github.com>

* fix: test

* fix: test

* fix: test lg

* Update docs/en-US/component/form.md

Co-authored-by: Noblet Ouways <91417411+Dsaquel@users.noreply.github.com>

* fix: update initValue

* fix: form.vue

* fix: form description

* chore: sync comment

* chore: format

---------

Co-authored-by: lw567 <liwei567@example.com>
Co-authored-by: Noblet Ouways <91417411+Dsaquel@users.noreply.github.com>
Co-authored-by: Dsaquel <291874700n@gmail.com>
2026-01-07 21:17:46 +08:00
rzzf
305c3e5d94 feat(components): [upload] add directory prop (#23265)
* feat(components): [upload] add `directory` prop

* refactor: update

* test: update

* fix: update

* docs: add detailed desc

* fix: remove unnecessary compat code

* revert: compat code
2026-01-05 16:28:24 +08:00