Commit Graph

118 Commits

Author SHA1 Message Date
E66
e53399fae4 fix(components): [select/select-v2] prevent empty input from causing unnecessary line breaks (#23394)
* fix(components): [select] prevent empty input from taking space

* fix(components): [select-v2] prevent empty input from taking space

* test(components): Supplement related test cases

* test: update test case
2026-02-19 21:46:17 +08: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
btea
a170f52aa1 test: eliminate interfering logs (#23370) 2026-01-13 23:11:17 +01:00
rzzf
287af74f6e fix(components): [select/select-v2] dropdown requires two clicks to open (#23344)
fix(components): [select/select-v2] requires two clicks to open the dropdown when automaticDropdown is enabled
2026-01-10 10:21:50 +08:00
YXY-cell
4b04769769 fix(components): [select/select-v2] show empty slot when remote search empty (#23195)
* fix(components): [Select] show empty slot when remote search empty

Fixes #23191

* fix(components): [Select] show empty slot when remote empty,add test

* test(components): fix false test in select

* test(components): fix false test in select

* test(components): select-v2 repaired like select
2026-01-02 22:44:51 +01:00
dopamine
0ca1570aa1 chore: upgrade to Vue 3.5 (#22096)
* chore: upgrade deps

* chore: replace __ExtractPublicPropTypes with ExtractPublicPropTypes

* fix: get rid of type errors

* fix: resolve test errors with @vue/test-utils v2.4.6

* fix: resolve test errors with Vue 3.5.22

* ci: set pnpm flag

* chore: update the Vue peer dependency version

* Apply suggestion from @tolking

Co-authored-by: qiang <qw13131wang@gmail.com>

* docs: update example code

Co-authored-by: warmthsea <2586244885@qq.com>

* chore: remove csstype (#22487)

* chore: fix merge code type error

* chore: fix test:ssr error

- Cannot read properties of undefined (reading 'getSSRProps')

* chore: fix typecheck:vitest error

* chore: update pnpm yaml file

* test: fix collapse accordion error

* chore: update deps

* chore: fix type error

* chore: lock file

* chore: sync change

sync with the remove of vue macro

* refactor: use computed instead of eagerComputed

* fix: timeline.test.tsx typecheck

* chore: clean lock file

try dont throw CodeFactor issues in ci

did:
- rm pnpm-lock.yaml
- rm -rf ./**/node_modules
- pnpm store prune
- pnpm cache delete
- pnpm install

Also stay in 3.1.0 for vue-tsc in order to avoid the warnings of
template refs, see https://github.com/vuejs/language-tools/issues/5815

* chore: format code

---------

Co-authored-by: Dsaquel <291874700n@gmail.com>
Co-authored-by: qiang <qw13131wang@gmail.com>
Co-authored-by: warmthsea <2586244885@qq.com>
Co-authored-by: Noblet Ouways <91417411+Dsaquel@users.noreply.github.com>
Co-authored-by: sea <45450994+warmthsea@users.noreply.github.com>
Co-authored-by: btea <2356281422@qq.com>
2025-12-16 09:34:03 +08:00
Jeff
663607ad8b test(components): add case about the disabled value of component has the highest priority (#23042)
* test: button add form disabled case

* test: cascader add test case

* test: checkbox add test case

* test: colorPicker add test case

* test: inputNumber add test case

* test: input add test case

* test: radio add test case

* feat: rate add test case

* test: segemented add test case

* test: select add test case

* test: selectV2 add test case

* test: slider add test case

* test: switch add test case

* test: timeselect add test case

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

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

* test: modify desc

* test(components):  clean annotation

* Update packages/components/time-select/__tests__/time-select.test.tsx

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

* Update packages/components/time-select/__tests__/time-select.test.tsx

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

---------

Co-authored-by: btea <2356281422@qq.com>
Co-authored-by: rzzf <cszhjh@gmail.com>
2025-12-11 13:11:08 +08:00
qiang
f23c2d3ee1 fix(components): [select] ensure dropdown remains open when filterable (#22975) 2025-12-01 21:21:26 +08:00
Rainbow
0b1a57f23d fix(components): [select/select-v2] correct the trigger timing of visible-change (#22897)
fix(components): correct the trigger timing of visible-change
2025-11-22 23:14:53 +08:00
Putia3
1375b3e604 fix(components): [select] shouldn't add is-hovering to disabled option (#22845)
fix(components): [select] shouldn't add "is-hovering" when disabled
2025-11-22 17:14:32 +08:00
Rainbow
439c0b5b88 improvement(components): [select/select-v2] hoveringIndex stays on the most recently selected option with multiple (#22782)
* improvement: hoveringIndex stays on the last selected option

* improvement: update

---------

Co-authored-by: rzzf <cszhjh@gmail.com>
2025-11-20 15:09:16 +08:00
Rainbow
3243b71e37 improvement(components): [select] locate the most recently selected option when using multiple (#22753)
* improvement: locate the most recently selected one when using multiple

* test: add test case
2025-11-20 14:45:53 +08:00
Map1en
21a651b13d fix(components): [select] after the last select unmounts memory leak issue (#22764)
* fix(components): after the last select unmounts memory leak issue

* fix: avoid intercepting info from other components

---------

Co-authored-by: btea <2356281422@qq.com>
2025-11-15 10:33:07 +08:00
yicheny
581a83a9b9 fix(components): [select] sync label when persistent is false and options change (#22755)
fix(components): sync label when persistent=false and options change

- Rehydrate options from slot vnodes on slots/model change when dropdown is closed

BREAKING CHANGE: Closes #22754

closed #22754

Co-authored-by: alex.yang <alex.yang@hytechc.com>
2025-11-12 22:37:20 +08:00
rzzf
5868853923 fix(components): [select] unable to select options using NumpadEnter (#22715) 2025-11-07 10:16:31 +08:00
Noblet Ouways
34db6aedc3 fix(components): [select] allow delete non existant option (#22706) 2025-11-06 10:49:05 +08:00
btea
43b9a0d5b8 test: coverage config update (#22656)
* test: coverage config update

* test: update
2025-10-31 22:32:59 +08:00
snowbitx
0877f73cdd feat(components): [select] support home and end key events (#22446)
* feat(components): [select] support home and end key events

* fix: keydown end error

* fix: filterable input

* fix: keydown stop error

* refactor: change default behavior and fix disabled

* Update packages/components/select/src/useSelect.ts

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

* Update packages/components/select/src/useSelect.ts

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

* Update packages/components/select/src/useSelect.ts

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

* fix: build error

* refactor: use inline function

---------

Co-authored-by: Zhong <cszhjh@gmail.com>
2025-10-29 15:54:25 +08:00
Zhong
2dca78bd76 fix(components): [select] scrolling is not triggered when the option value is zero (#22578)
* fix(components): [select] scroll missing when first option value is zero

* test: add case

* test: update
2025-10-25 11:58:21 +02:00
Lensiq
d66daf3e2b fix(components): [select] prevent duplicate option registration (#22541)
* fix(components): [select] prevent duplicate option registration

* fix: update

* chore: add test

* fix: update

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

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

---------

Co-authored-by: Zhong <cszhjh@gmail.com>
Co-authored-by: btea <2356281422@qq.com>
2025-10-22 16:51:23 +08:00
Rainbow
b917fafccc feat(components): [select/select-v2] support debounce prop (#22471)
* feat(components): [select/select-v2] support debounce prop

* feat: update

* feat: update

* feat: update

* docs: update version number

* feat: update

* feat: update

* feat: update

* feat: update

* feat: update

* feat: update
2025-10-20 10:46:24 +08:00
Rainbow
7d1f52127f fix(components): [select] loading appears on first click when remote (#22323)
* fix(components): [select] loading appears on first click when remote

* test: add test case
2025-10-09 23:00:06 +02:00
kooriookami
80850b4cb3 fix(components): [select] fix label not show when persistent is false (#22317)
* fix(components): [select] fix label not show when persistent is false

* fix(components): [select]

* fix(components): [select]

* fix(components): [select]
2025-09-26 13:45:31 +08:00
一只前端汪
3d7fcdadab fix(components): [select/v2] width of drop-down panel exceeds the input (#21910)
* fix(components): [select/V2] width of dropdown panel exceeds the input

* fix(components): [select/V2] width of drop-down panel exceeds the input

* fix: select constants

* fix: select

---------

Co-authored-by: 2586740555 <15972343+CYJ090915@user.noreply.gitee.com>
2025-08-29 15:10:36 +08:00
Noblet Ouways
853df25476 feat(components): [select/v2] add index to label slot (#21884)
* feat(components): [select/v2] add index to label slot

* chore: simplify

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

* chore: fix edge cases

---------

Co-authored-by: btea <2356281422@qq.com>
2025-08-25 18:49:02 +02:00
Noblet Ouways
7644c1fe4a feat(components): [cascader/select/date-picker] add popper-style (#21807)
* feat(components): add popper style

* test: enforce ci passing

* chore: handle select-v2 & apply review

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

* chore: bump for select component

---------

Co-authored-by: btea <2356281422@qq.com>
2025-08-21 10:46:06 +02:00
Noblet Ouways
c83b99d2f2 feat(components): unify clear btn display on focus (#21732)
* feat(components): unify clear btn display on focus

* test: add tests

* chore: apply review
2025-08-18 10:54:32 +02:00
qiang
826373a133 fix(components): [select] click outside should lose focus (#21702)
* fix(components): [select] click outside should lose focus

* chore: add test
2025-08-11 14:44:03 +08:00
snowbitx
dbbacae7d1 feat(components): [select] support options prop rendering (#21203)
* feat(components): [select] support options prop rendering

* feat(components):[select] format

* feat(components):[select] format

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

Thanks for the guidance!

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

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

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

* Merge remote-tracking branch 'upstream/dev' into feat/autocomplete-size

* feat(components): [select] format

* feat(components): [select] Add test case

* feat(components): [select] Add doc

* Update packages/components/select/src/select.ts

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

* feat(components): [select] Code optimization

* feat(components): [select] Code optimization

* feat(components): [select] format

* feat(components): [select] format

* docs: refact

* refactor: simplify

* chore: useless diff change

* Update shared.ts

* Update message.ts

* Update popper.ts

* Update result.ts

* Update form-item.ts

* Update cascader-panel.test.tsx

* chore: useless change

* Update select.vue

* Update option.vue

* Update select.vue

---------

Co-authored-by: Noblet Ouways <91417411+Dsaquel@users.noreply.github.com>
Co-authored-by: Dsaquel <291874700n@gmail.com>
2025-07-29 09:54:30 +08:00
Noblet Ouways
4f8cca0f6c feat(components): [select/select-v2/cascader] expose more tag options (#21157)
* feat(components): [select/select-v2] bind `data` for tag slot

* chore: remove console.log

* feat: expose `deleteTag` aswell

---------

Co-authored-by: warmthsea <2586244885@qq.com>
2025-06-29 13:17:20 +00:00
baozj
524f901045 feat(components): [select] expose selectDisabled prop to #tag slot (#21093)
* feat(components): [select] expose selectDisabled prop to #tag slot

* feat(components): [select] expose selectDisabled and update docs

* feat(components): [select-v2] expose selectDisabled to #tag slot

Add example demonstrating how to use selectDisabled in custom tag rendering.

* docs(components): [select, select-v2] add selectDisabled to #tag slot

* docs(components): [select, select-v2] remove tag-disabled.vue examples

---------

Co-authored-by: baozhangjie <jay.bao@photonpay.com>
2025-06-29 20:59:04 +08:00
btea
880de62fee fix(components): [tree-select] value label rendering error (#20947)
* fix(components): [tree-select] value label rendering error

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

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* fix: update

* fix: update

* fix: lint

* test: case

* fix: lint

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-06-11 21:37:04 +08:00
Jeff
6f8e91f771 refactor(components): [select] modify manuallyRenderSlots execute (#20854)
* refactor(components): [select] modify `manuallyRenderSlots` execute

* refactor(components): [select] modify ’manuallyRenderSlots‘ execute

* fix(components): [select] fix render slots attempt when persistent=false

* fix: remove duplicate judgments

---------

Co-authored-by: Dsaquel <291874700n@gmail.com>
Co-authored-by: btea <2356281422@qq.com>
2025-06-06 08:56:35 +08:00
伊墨
b31e727edd fix(components): [select] display exception when label is 0 or "" (#20905)
* fix(components): [option] display exception when label is `0` or `""`

* test: add test case
2025-06-03 01:07:37 +00:00
btea
433b622aee refactor: rename test env (#20816) 2025-05-22 16:17:15 +08:00
btea
8ddbb1d85a fix(components): [select] select value label rendering error (#20769)
* fix(components): [select] select value label rendering error

* chore: comment

* fix: update

* fix: update

* feat: manual render

* refactor: immediate watch

* test: update

* test: with multiple
2025-05-21 13:54:59 +08:00
Noki
f31d3b6d0c fix(components): [select] typed value causes default-first-option to fail (#19806)
* fix(components): [select] default-first-option

* fix(components): [select] watch optionArray ref

* test(components): [select] add default-first-option

* test(components): [select] remove only

* test(components): [select] use remote-method

* fix(components): [select] add condition for optionsArray loop

* fix(components): [select] remove condition for optionsArray loop
2025-03-11 15:24:07 +00:00
dopamine
be43878d2f fix(components): [select] use option.isDisabled as the source of truth (#19137)
* fix(components): [select] use option.isDisabled as the source of truth

* add one test case
2024-12-05 19:56:02 +08:00
qiang
990aa4b768 feat(components): [select] add tabindex attribute (#19034) 2024-11-28 13:54:05 +08:00
Aaron-zon
2bef172a07 test(components): fix test cases in select.test.ts (#18969) 2024-11-21 20:30:33 +08:00
sea
300b58c548 fix(components): [select] keep the selected label (#18549)
* fix(components): [select] keep the selected label

* style: op code & fix eslint warn

* fix: update

* feat: update cu
Co-authored-by: dopamine <coderzyou@gmail.com>

* feat: update cu

Co-authored-by: dopamine <coderzyou@gmail.com>

* feat: update cu

Co-authored-by: dopamine <coderzyou@gmail.com>

* update select.test.ts

Co-authored-by: dopamine <coderzyou@gmail.com>

* chore: delete useless code

---------

Co-authored-by: dopamine <coderzyou@gmail.com>
2024-11-17 14:06:44 +08:00
Zhong
d59acf696e fix(components): [select] prevent keyboard from deleting disabled option (#18752)
* fix(components): [Select] prevent backspace from delete disabled option

* fix(components): [select] prevent keyboard from deleting disabled option
2024-11-04 15:32:33 +08:00
qiang
a6430f5b98 fix(components): [select] error parameters of getValueIndex (#14173)
* fix(components): [select] error arguments of getValueIndex

closed #14139 #18247

* test: fix test

* style(components): [select] optimize code format
2024-10-29 14:43:24 +08:00
sea
1f82e8ca61 feat(components): [select & select-v2] explicit export selectedLabel (#18350)
* feat(components): [select] export selectedLabel

* docs: update

* docs: update th

* docs: update selectedLabel version
2024-10-11 13:48:12 +08:00
qiang
8908e738e5 fix(components): [select] the blur not triggered when click the outside (#18478)
* fix(components): [select] the blur not triggered when click the outside

closed #18235, #18238

* test: add test
2024-10-11 11:47:35 +08:00
tangyongjie
271385f6a5 test(components): [select] fix test warning (#18211) 2024-09-07 07:54:26 +08:00
qiang
8e6b88dcca revert(components): [select] cancel type conversion at initialization (#18088)
closed #17944
2024-09-03 15:20:46 +08:00
wzc520pyfm
c90ebf8ca4 test(components): [select] add case for disabled and automatic-dropdown (#18112) 2024-09-01 08:02:55 +08:00
qiang
044f0afc1e fix(components): [select] switching single/multiple generates an error (#18030)
closed #17890
2024-08-29 19:06:41 +08:00
qiang
2f69776b30 fix(components): [select] binding click event is invalid (#17876)
* fix(components): [select] binding click event is invalid

closed #17863

* chore: typo
2024-08-14 10:50:23 +08:00