* 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
* fix(components): disabled attribute does not take effect
Add default values for attributes, fix#10648closed#10648
* test: use toBeLessThanOrEqual
* fix(components): recovery code
* 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
* 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
* 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
* 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`