104 Commits

Author SHA1 Message Date
bf0568cacf feat(components): add custom clear icon (#21699)
* feat(components): add custom clear icon function

added `clear-icon` property to Cascader, Input, and InputTag components to customize the clear icon.

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

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

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

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

* feat(components): add custom clear icon use case

* docs(components): reduce cascader clear-icon use case options

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

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

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

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

---------

Co-authored-by: btea <2356281422@qq.com>
2025-08-15 18:47:30 +02:00
f930e42967 fix(components): [input] correct textarea height in fullscreen (#21656) 2025-08-09 00:55:06 +02:00
cfc661c626 feat(types): [components] add public prop types (#21222)
* feat(types): [utils] add ExtractPublicPropTypes type

* feat(types): [components] add props public type

* chore(types): use type-only import for Prop from 'vue'

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

---------

Co-authored-by: Noblet Ouways <91417411+Dsaquel@users.noreply.github.com>
2025-07-07 00:51:32 +08:00
a579224896 fix(components): [autocomplete] add placeholder prop type definition (#21206)
* fix(components): [autocomplete] add placeholder prop type definition

* feat(components): [autocomplete] add inputProps and merge properties

* docs: [input] description typo

* feat: explicitly using the `model` & `disabled`

* fix(components): [time-picker] single input name type

* docs: add input attrs link

---------

Co-authored-by: warmthsea <2586244885@qq.com>
2025-07-03 00:15:53 +02:00
b881ef25cb refactor(hooks): [useFocusController] add disabled attribute (#21032)
refactor(hooks): [useFocusController] add disabled prop

Co-authored-by: warmthsea <2586244885@qq.com>
2025-07-01 08:41:35 +00:00
bc7773b673 feat(components): [input] native inputmode prop for el-input & el-input-number (#14997)
* feat(components): add native inputmode for el-input

* feat(components): add native inputmode for el-input-number
 Please enter the commit message for your changes. Lines starting

* chore: rm "props" in template
2025-06-20 20:24:26 +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
aab2df4b40 refactor: delete useless code (#20759)
* refactor: delete useless code

A && B && C && ( C || D ) === A && B && C 所以第四个判断完全没意义

* chore: format code

---------

Co-authored-by: warmthsea <2586244885@qq.com>
2025-05-19 09:07:05 +08:00
7be4a3765e chore: emits smaller declaration files (#20109)
* Revert "fix(types): packing unexpected types (#19419)"

This reverts commit 13506ffb814d2b1300bf57c06648b6b27281c7c5.

* Revert "chore: add explicit type annoation (#19352)"

* fix(typescript): borken import paths in declaration files

* chore: emits smaller declaration files
2025-03-18 10:08:44 +08:00
e87a8670d4 refactor(components): [description, input] use the component name constant (#20107)
* refactor(components): [description] extracts the component name constant

* refactor: extracts the component name constant

* refactor: change the location of COMPONENT_NAME

* Update packages/components/descriptions/src/description-item.ts

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

* refactor: change the name

* refactor: Extract COMPONENT_NAME to a separate file

* refactor: Adjust rows

---------

Co-authored-by: btea <2356281422@qq.com>
2025-03-15 23:14:51 +08:00
7dbac0e1bc chore: use event constants instead string (#20104)
* chore: use UPDATE_MODEL_EVENT constants

* chore: update INPUT_EVENT & CHANGE_EVENT
2025-03-12 15:52:07 +08:00
sea
7acf11ec37 test(components): [input] use formatter , event val check (#20031)
Co-authored-by: btea <2356281422@qq.com>
2025-03-06 09:44:45 +08:00
b46fc201e4 fix(components): [input] @change event value formatter (#20000)
* fix: change事件值没有被格式化

fix: change事件值没有被格式化

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

---------

Co-authored-by: btea <2356281422@qq.com>
2025-03-06 09:36:49 +08:00
fbbb50a9b2 fix(components): [input] refused to apply inline style because it violates csp (#19541)
fix(components): [input] CSP support #15065

`element.setAttribute('style', 'css code')` violate Content Security Policy (CSP)
using `element.style.setProperty()` instead
2025-01-24 15:05:10 +08:00
6c6e4c67e2 fix(components): [input] the cursor error when click show-password (#19003)
closed #18387, #18831
2024-11-24 20:02:02 +08:00
845c07adef feat(components): [date-picker] accessibility enhancement (#18109)
* feat(components): [date-picker] accessibility enhancement

closed #14150

* docs: update

* test: add test

* chore: change prevent to passive

* fix: long press the clear icon to open the time panel

* fix: cannot read $el

* fix: cannot read $el

* docs: updata
2024-10-27 12:14:53 +08:00
Lo
5917190205 feat(components): [input] show pwd visible icon when the input is readonly (#18458)
feat(components): [input] show pwd visible icon when input is readonly
2024-10-15 13:35:34 +08:00
d7e5f193cd fix: the disabled state should not trigger focus (#18108) 2024-08-31 19:48:48 +08:00
344c218d01 test(components): [pagination/input] test case (#18080) 2024-08-29 20:20:58 +08:00
8618a6bcd0 refactor: import shared utilities from @element-plus/utils (#18048)
chore: import shared utilities from `@element-plus/utils`
2024-08-29 09:04:03 +08:00
1d81c3982d chore(components): [input] remove repeated export of InputInstance (#17907)
* chore: remove repeated export of InputInstance

* chore: recover settings.json

* fix: lint error

* fix: test

---------

Co-authored-by: WL01-10045094 <weilei@weileideMacBook-Pro.local>
2024-08-16 10:42:05 +08:00
dc8cb90130 fix(components): [input] blur event fails when using textarea (#17836)
closed #17825
2024-08-10 11:02:28 +08:00
949479699b refactor(hooks): determine the focus by event listening (#17719)
* refactor(hooks): determine the focus by event listening

* test: skip the focus test

* test: fix test

* feat(hooks): add beforeFocus

* fix: optimize blur

* chore(components): [mention] remove focus & blur
2024-08-07 18:35:30 +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
0f8282520f chore(components): remove deprecated 2.8.0 (#17735)
* chore(components): remove deprecated 2.8.0

* chore(components): update
2024-08-02 11:08:24 +08:00
0456c790db feat: add mention component (#17586)
* feat: add mention component

* fix: build error

* fix: build error

* feat: delete as a whole

* fix: update docs

* fix: update global.d.ts

* fix: update

* fix: update code

* fix: update code

* fix: update code

* fix: rename

* fix: update code

* fix: upload code

* fix: update code

* fix: fixed cursor position abnormality

* fix: update code

* fix: docs add avatar

* fix: tooltip position is wrong when placing on top

* feat: add overview icon

* fix: overview icon color
2024-08-02 11:00:26 +08:00
233d38b631 refactor(hooks): rewrite composition as a composable function (#14240)
* refactor(hooks): rewrite composition as a composable function

* fix(components): [select] avoid navigateOptions when composing Chinese

* fix: error

* chore: change afterComposition
2024-07-28 21:11:20 +08:00
2564007850 refactor(components): optimize component boolean type (#17622)
* refactor(components): optimize component boolean type

* style(components): [overlay] fromat code
2024-07-25 14:17:23 +08:00
56d1afa283 fix(components): [input] add prop "row" explicit declare (#17085) 2024-07-21 13:23:04 +08:00
39ac0b5a0d fix(components): [input] class bind error corresponding to dynamic slot (#17194) 2024-06-15 12:40:06 +08:00
73968424d7 feat(components): [input] add is-focus class name when textarea focus (#17049) 2024-06-03 11:44:18 +08:00
bd1613d599 feat(hooks): add use-aria hooks (#16598)
* feat(hooks): add use-aria hooks

* feat(components): update

* feat(hooks): update

* feat(hooks): update
2024-04-23 13:56:44 +08:00
Xc
beaac3736c fix(components): [input] type hidden use class (#15865) 2024-02-20 13:02:20 +08:00
5ae172962b fix(components): [input] resolve input attributes issue for textarea (#15514)
fix(components): resolve input attributes issue for textarea

The minlength and maxlength attributes were not working properly when the input type was set to textarea. This commit fixes this issue, ensuring these attributes function as expected for textarea inputs.
2024-01-15 17:06:54 +08:00
49ca14fecd fix(components): [input] remove useless contants (#15351)
* fix(components): [input] remove useless contants

* fix: remove useless contants
2024-01-04 20:52:17 +08:00
62206bb0c0 fix(components): [input] remove unnecessary properties (#15220) 2023-12-22 09:56:46 +08:00
c4dac14f1b refactor(components): [input] get maxlength and minlength from props instead of attrs (#15212)
* refactor(components): [input] get maxlength and minlength from props

* refactor: remove default
2023-12-21 14:30:57 +08:00
e5a3a13760 fix(components): [input] input-style rendering error (#15174)
fix(components): [el-input] input-style rendering error
2023-12-17 12:49:28 +08:00
09bb91abef fix(components): [input] missing autofocus types (#14246)
* fix(components): [input] missing autofocus types

closed #14243

* fix: autofocus default to false
2023-09-14 10:25:51 +08:00
55272b51c3 chore(components): [input] fix inputStyle comment typo (#13768) 2023-07-29 08:55:02 +08:00
8fc38655b0 refactor(components): [input] extract InputInstance (#13620) 2023-07-18 17:37:21 +08:00
704399fadd fix(components): [input] lose focus when click suffix icon (#13264)
* feat(hooks): add useFocusController

* fix(components): [input] lose focus when click suffix icon

closed #13153, #13159

* refactor(hooks): use-focus-controller

* test: fix test

* test: update

* fix(theme-chalk): [input] add cursor style to the wrapper
2023-07-13 16:41:18 +08:00
03e2a15411 fix(components): [input] fix formatter and parse problem (#12622)
* fix(components): [input] fix formatter and parse problem

closed #12613

* fix(components): [input] fix input value problem

* fix(components): [input] update return value for input event emit

* test(components): [input] add test for formatter and parser
2023-06-04 13:51:44 +08:00
105d79b0d9 refactor: extract isClient and isNumber isBoolean (#12504)
* refactor: extract isClient and isNumber isBoolean

* test: update test

* refactor: extract isClient to browser
2023-04-20 20:00:49 +08:00
6c20f21831 fix(components): [input] textarea height calc (#12087) 2023-03-23 16:42:16 +00:00
6026035c8e fix(components): [input] scrollbar not hide after autosize (#10137)
* fix(components): [input] scrollbar not hide after autoresize

closed #8825

* chore: add note for force repaint

* chore: remove useless type

* fix: duplicate call calcTextareaHeight
2023-03-20 09:51:57 +08:00
b38607f53b fix(components): [input] update input value length calculate (#11816)
* fix(components): [input] update input value length calculate

* fix: update test
2023-03-10 14:52:40 +08:00
4c27822ef0 fix(components): circular referencing issue (#11777)
* fix(components): circular referencing issue

* Move sizes related into hooks.
* Remove size definitions in forms only re-exports.

* chore: fix failing tests
2023-03-01 16:44:09 +08:00
11925c8231 refactor(tokens) - [form] (#11743)
* refactor(tokens): [form] - remove tokens/form

* Move content in tokens/form to components/form.
* Replace token imports in components/form.

* chore: remove form/tokens and replace imports

* refactor(components): [form/form-item]

* Move `useForm` related hooks to components/form
* Replace references to reduce circular dependencies.
2023-02-27 13:19:20 +08:00
9d3d77c674 fix(components): [input] fix textarea autosize (#11376)
* fix(components): [input] fix textarea autosize
2023-02-14 23:51:32 +08:00