48 Commits

Author SHA1 Message Date
25c7ea2b3c refactor(components): export TreeV2Instance & optimize type usage (#21718)
* refactor(components): export `TreeV2Instance` & optimize type usage

* refactor: change type declaration entry file
2025-08-13 12:33:30 +08:00
2f17df1209 style(eslint-config): newline before import type (#21036)
* perf: change to import-x

* feat: add rules

* chore: fix rule

* chore: fix

* chore: fix

* chore: fix

* style: `pnpm lint:fix`

* Revert "style: `pnpm lint:fix`"

This reverts commit db0116a288299c507e3cfc4d7a22e2207265d920.

* Revert "chore: fix"

This reverts commit 69c82a90c01525e38180be4c21e8ef5602512318.

* chore: fix

* style: `pnpm lint:fix`

* fix: lint

* chore: `pnpm format`
2025-06-16 15:37:12 +08:00
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
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
sea
47bf23be53 refactor: [select, select-v2]: unified name & supplement type (#20050)
* chore: update

* chore: update
2025-06-04 17:46:56 +08:00
38cbfbb0b0 chore: [select] remove @ts-nocheck directive (#19098)
* chore: [select] remove @ts-nocheck directive

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

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

* chore: delete useless type

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

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

* fix: type error

* fix: type error

* chore: use buildProps

* chore: add type

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

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

* chore: fix type

* chore: fix type

* chore: fix types

---------

Co-authored-by: warmthsea <2586244885@qq.com>
Co-authored-by: sea <45450994+warmthsea@users.noreply.github.com>
Co-authored-by: qiang <qw13131wang@gmail.com>
Co-authored-by: btea <2356281422@qq.com>
2025-03-29 17:58:52 +08:00
0ed86e74ce feat(components): [tree/tree-select] add check-on-click-leaf attribute (#19494)
* chore: last leaf node clickable on `show-checkbox`

* chore: revert

* chore: leaf node checkable

* test: checkable by click on leaf node

* chore: test & doc

* chore: add version

* feat: handle tree-v2

* test: tree-v2
2025-02-26 21:24:58 +08:00
sea
cffc025415 fix(components): [tree-select] search solve memory leak (#19895)
* fix(components): [tree-select] search solve memory leak

* feat: update

* fix: test

* chore: update test
2025-02-20 11:37:41 +08:00
19f98d59b2 test: [tree-select] dynamic class case (#19859) 2025-02-14 08:33:05 +08:00
616bb40981 fix(components): [tree-select] dynamic bind class invalid (#19803) 2025-02-13 16:16:33 +08:00
209a803df8 fix(components): [tree-select] expose selectedLabel (#18981)
fix(components): [tree-select] Completion select exposed function
2024-11-22 20:04:39 +08:00
10fcc59ed4 refactor: replace Array.isArray with the built-in isArray (#18671)
chore(components): [descriptions] isArray replace Array.isArray
2024-10-28 15:36:44 +08:00
8e6b88dcca revert(components): [select] cancel type conversion at initialization (#18088)
closed #17944
2024-09-03 15:20:46 +08:00
27bdf1f076 fix(components): [el-tree-select] fix lazy and multiple select node (#17903)
* fix(components): [el-tree-select] fix lazy and multiple select node

1.Fix the issue where non-leaf nodes cannot be selected when using lazy and multiple together.

2. Since the original code did not handle the selection of non-leaf nodes before expanding
lazy-loaded child nodes, additional processing was added to link the selection of parent and child
nodes.

3. Because the time required for lazyLoad after nodeExpand cannot be predicted, the triggering time
of the node-expand event in the tree has been adjusted to occur within the callback of the expand
function. This change only affects the timing when using lazyLoad.

BREAKING CHANGE :
no

closed closed Fixes #17232

* fix: test typecheck

* fix: onNodeExpand event and update function name
2024-09-01 20:59:31 +08:00
79938178dd build: use vue-tsc to generate dts (#16111)
* build: use vue-tsc to generate dts

* reduce inline type declaration

* fix: type checking failed

* apply suggestions from code review

* address PR comments
2024-08-07 12:01:46 +08:00
d9ec05749d refactor(components): [select] cancel type conversion at initialization (#17606)
* refactor(components): [select] cancel type conversion at initialization

* fix: options

* chore: optimized code

* docs: update
2024-08-07 11:53:48 +08:00
fc15cad898 fix(components): [tree-select] fix filter no matching data error (#17473)
* fix(components): [tree-select] fix filter no matching data error

* fix: immediate
2024-07-09 19:01:32 +08:00
6032af5405 fix(ssr): [tree-select] document is not defined (#17460) 2024-07-08 20:09:12 +08:00
e35f403515 fix(types): non-null assertion component name (#16804) 2024-05-15 09:24:42 +08:00
6ccc8ee915 refactor(components): [tree & date-picker] use public function and type (#16017) 2024-03-02 20:41:58 +08:00
5341166584 fix(components): [tree-select] remote method and selected override (#15974) 2024-02-29 18:06:29 +08:00
b6987e9705 fix(components): [tree-select] always focus when using filters (#15768) 2024-02-04 17:58:48 +08:00
5844947198 refactor(components): [select & select-v2] Refactor components (#15352)
* refactor(components): [select&select-v2] refactor components

* refactor(components): [select-v2]

* refactor(components): update

* refactor(components): update

* refactor(components): [select-v2]

update

* refactor(components): update

* refactor(components): update

* refactor(components): update type

* refactor(components): update

* refactor(components): update

* refactor(components): update style

* refactor(components): update docs

* refactor(components): update

* refactor(components): fix #15323

* refactor(theme-chalk): update

* refactor(components): update

* refactor(components): update

* refactor(components): update

* refactor(components): fix bugs

* fix(components): fix issue

* fix(components): update

* fix(components): fix some bug

* feat(components): update

* feat(components): add tag slot

* feat(components): update

* fix(components): update

* style(theme-chalk): update style

* fix(theme-chalk): update

* feat(theme-chalk): update

* fix(components): update

* feat: update

* feat: update

* feat: update

* feat(components): update
2024-01-10 11:14:58 +08:00
553fe41529 fix(components): [tree-select] case-insensitive when filterable (#14617)
Co-authored-by: 叶晨 <cye2@leqee.com>
2024-01-07 00:05:46 +08:00
c56968895b fix(components): [tree-select] v-model invalid when source changes (#14603) 2023-10-30 18:48:23 +08:00
a99dbb3954 fix(components): [select] optimize the triggering of blur event (#11524)
* fix(components): [select] drop-down selection is not closed when blur

closed #10893, #10992

* fix(components): [select] optimize the triggering of blur event

* refactor(components): [select] optimize code
2023-05-28 17:31:25 +08:00
84d331edae docs(components): [tree-select] use new display tag (#12663)
* docs(components): [tree-select] use new display tag

* docs(components): [tree-select] add cache option type
2023-05-16 09:08:47 +08:00
e82c5b36d4 fix(components): [tree-select] incorrect selection when using checkOnClickNode without checkbox (#12826) 2023-05-15 19:24:14 +08:00
7424a78e80 fix(components): [TreeSelect] checking node reset checked cache node (#12367)
* fix(components): [TreeSelect] checking node reset checked cache node

* refactor: remove unused variables and duplicate `onCheck` event
2023-05-15 10:37:21 +08:00
ce1499b98e fix(components): [TreeSelect] incorrect check event params (#12370) 2023-05-14 17:11:54 +08:00
e31533e8fe fix(components): [tree-select] cache data update incorrect (#11225) 2023-03-05 07:24:25 +08:00
f65c5687da fix(components): [tree-select] disabled attribute does not take effect (#10670)
* fix(components): disabled attribute does not take effect

Add default values for attributes, fix #10648

closed #10648

* test: use toBeLessThanOrEqual

* fix(components): recovery code
2023-01-15 07:50:34 +08:00
52ccdf6ed3 fix(components): [tree-select] props cacheData not reactive (#10885)
* fix(components): [tree-select] `cacheData` not reactive

* fix(components): [tree-select] cache options not overwrite the original
2022-12-05 12:49:06 +08:00
33ca7ee4f0 fix(components): [TreeSelect] incorrect label when child not rendered (#10716)
* feat: add `treeEach` utility function

* fix(components): [TreeSelect] incorrect label when child not rendered

* docs(components): [TreeSelect] remove tips for resolved issues

* fix(components): [TreeSelect] add `cacheData` props for lazy label

* docs(components): [TreeSelect] add `cacheData` document and examples

* docs(components): [TreeSelect] add version identification for new props

* refactor(components): [TreeSelect] replace any type

* docs(components): [TreeSelect] update version tag
2022-11-30 23:43:57 +08:00
5ec954c17e refactor(components): [tree-select] use JSX in Unit test (#9786)
Co-authored-by: holazz <2418184580@qq.com>
2022-09-17 08:30:03 +08:00
675b059f26 fix(components): [tree-select] fix typo (#9635) 2022-09-05 07:48:59 +00:00
zz
637ef1e25f fix(components): [tree-select] expand-on-click-node not work (#8973) 2022-08-31 20:53:36 +08:00
4fe9c2bd6c fix(components): [TreeSelect] checkbox interaction (#8102)
* fix(components): [TreeSelect] check child when parent checked

* refactor(components): [TreeSelect] move utility functions to utils.ts

* fix(components): [TreeSelect] exclude check event from click node

* fix(components): [TreeSelect] handle dup when `checkOnClickNode`

* feat(components): [TreeSelect] `treeFind` support find parent node

* fix(components): [TreeSelect] show current selected node only first time

* fix(components): [TreeSelect] incorrect node selection condition

* docs(components): [TreeSelect] update checkbox examples and tips

* fix(components): [TreeSelect] incorrect label when data modify
2022-07-02 14:49:21 +08:00
7097940f4a refactor: add ts-nocheck and check all files (#8401) 2022-06-22 08:04:42 +08:00
Xc
c0681cf18f fix: check-strictly bug (#7422) 2022-05-11 10:05:57 +08:00
Xc
c3d5106f6d fix: tree-select nodeKey default selected (#7172) (#7181)
Fix the problem that nodeKey initialization is invalid
2022-05-09 09:36:53 +08:00
7173e402b7 feat(components): [form-item] auto attach labels to inputs (#7450)
* feat(components): [form-item] auto attach labels to inputs

* feat(components): [form-item] auto-attach up through select

* feat(components): [form-item] auto id complete for all inputs

* feat(components): [form-item] fix lint, remove unused usePopper hook

* feat(components): [form-item] PR comments
2022-05-05 22:04:32 +08:00
1d13ebb05d feat: drop jest (#7248)
* feat: drop jest

* test: remove ssr

* test: rename

* chore: update tsconfig
2022-04-19 16:51:44 +08:00
de0ee53cf0 test(components): switch all components to vitest (#7205)
Co-authored-by: 三咲智子 <sxzz@sxzz.moe>
2022-04-19 12:46:57 +08:00
bc4f82d7b5 fix(components): [tree-select] use proxy instead of ctx (#7160) 2022-04-14 17:49:21 +08:00
839a09d9e4 fix(components): [TreeSelect] incorrect props interaction and css paths (#7156)
* fix(components): [tree-select] `inheritAttrs` causes duplicate attributes

* fix(components): [TreeSelect] css path incorrect

* fix(components): [TreeSelect] `defaultExpandedKeys` contains `undefined`

* fix(components): [TreeSelect] only expand on click node when the `check-strictly` is false and auto expand selected parent node

* test(components): [TreeSelect] update render/filter/props unit test
2022-04-14 11:49:12 +08:00
dcbc0b156f Update css.ts (#7009) 2022-04-10 13:59:22 +08:00
904aa0e21b feat(components): add tree select component (#6843)
* feat(ElTreeSelect): add tree select base component

* refactor(ElTreeSelect): use render function and move select/tree props to them self module

* fix(ElTreeSelect): init value not checked

* fix(ElTreeSelect): `toArray` ignores valid values

* fix(ElTreeSelect): expose not working when defined on mounted

* fix(ElTreeSelect): watch `modelValue` deep

* test(ElTreeSelect): add base unit test

* perf(ElTreeSelect): default slot should be a function

* fix(ElTreeSelect): `onNodeClick` can not call,

* test(ElTreeSelect): update unit test

* fix(ElTreeSelect): `onNodeClick` can not call,

* fix(ElTreeSelect): remove folder node when `checkStrictly` is false

* feat(ElTreeSelect): export `ElTreeSelect`

* fix(ElTreeSelect): `filterMethod` conflicts with `filterNodeMethod`

* docs(ElTreeSelect): add component docs

* fix(ElTreeSelect): fix lint

* docs(ElTreeSelect): fix lazy loading requires non-leaf nodes, and change mock labels

* docs(ElTreeSelect): the link address of the attributes is incorrect

* docs(ElTreeSelect): `dropdown` doesn't need the `-` symbol

* refactor(ElTreeSelect): use alias path and make sure vue is above to components

* refactor(ElTreeSelect): use a unified namespace for styles

* docs(ElTreeSelect): change option labels in default slots

* refactor(ElTreeSelect): import `ElOption` using unified entry and change the way to override the select click event

* style(ElTreeSelect): sort imports

* docs(ElTreeSelect): update the documentation for special codes

* refactor(ElTreeSelect): keep it consistent with the select style

* refactor(ElTreeSelect): use `isFunction` from `@element-plus/utils`

* refactor(ElTreeSelect): use single closing tag when no subset

* docs(ElTreeSelect): set `TreeSelect` promotion as `2.1.8`
2022-04-02 15:15:33 +08:00