125 Commits

Author SHA1 Message Date
知晓同丶
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
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
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
rzzf
efc729e3e0 fix(components): [textarea] unexpected page scrolling when typing in Firefox (#23606)
* fix(components): [textarea] unexpected page scrolling when typing in Firefox

* docs: add issue number
2026-02-10 23:50:00 +01:00
keeplearning66
1bdfcc3b0d chore: supplement deprecation annotations (#23570)
* chore: supplement deprecation annotations

* chore: update
2026-02-01 14:19:59 +08:00
E66
3ef8bbb985 refactor(components): [autocomplete] use type-based definitions (#23410)
* refactor(components): [autocomplete] use type-based definitions

* refactor(components): [avatar] use type-based definitions

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

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

* revert: rollback changes to avatar-group-props.ts and avatar-group.tsx

* revert: rollback changes to avatar.ts and avatar.vue

* refactor(components): export inputDefaults for reuse

* refactor(components): export inputPropsDefaults for reuse

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

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

---------

Co-authored-by: rzzf <cszhjh@gmail.com>
2026-01-18 16:08:59 +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
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
btea
2d64179491 refactor!: the disabled value of component has the highest priority (#18739)
* refactor!: the disabled value of component has the highest priority

* fix: update

* fix: compatible with switch loading

* feat: apply to cascader, select, select-v2

* fix: update

* fix: update selectv2

* fix: update autocomplete

* fix: date-picker-panel

* fix: update rate/slider/upload

* fix: slider error

* fix: update checkbox

* fix: checkbox error
2025-12-01 21:20:57 +08:00
ls57765867
f40d404a18 fix(components): [input] fix resize not working (#13841)
When setting show-word-limit and resize to horizontal, there is an issue with the positioning, and
it should maintain a spacing of 10px

BREAKING CHANGE :
N

closed #13769

Co-authored-by: Xc <124118265@qq.com>
Co-authored-by: qiang <qw13131wang@gmail.com>
2025-11-19 14:36:00 +01:00
Carl Chen
261012cd1f fix(components): [input] fixed the onchange parameter when type is file (#14687)
* fix(components): [input]

fixed the onchange parameter when type is file

BREAKING CHANGE :
the onchange type of input has been enhanced to string

FileList

closed #14686

* fix: fix lint

* fix: fix lint

* fix(components): input

remove error

* perf(components): input

change event emit event

* fix(components): [input]

add test & fix file clear

* fix: fix unit test

* perf: change input test name

* chore: format

---------

Co-authored-by: qiang <qw13131wang@gmail.com>
2025-11-16 09:35:12 +08:00
qiang
37df183c4b docs(components): [input] adjust the recommended value for the type (#22757)
closed #14686
2025-11-13 08:02:35 +08:00
rzzf
ee8ece6383 fix(components): [textarea] add the missing name attribute (#22718) 2025-11-07 13:38:27 +08:00
btea
f352c5521e fix(components): [input] quickly click the icon and the cursor position is displayed incorrectly (#22563) 2025-10-23 14:44:54 +02:00
一只前端汪
ddf28c98d3 feat(components): [input] add word-limit-position attributes (#22359)
* fix: input maxlength

* fix: make error tip same line

* fix: format

* fix: use     top: 100%;

* feat: expand show-limit-word

* feat: add test

* fix: optimize code

* fix: use nsInput.is and update docs

* fix: update test case

* fix: add wordLimitPosition props

* chore: update docs

* fix: add version tag

* fix: input support outside

* fix: update docs

* fix: add backgroundcolor

* fix: Restore code

* fix: update docs demo

* fix: add input test case

* fix: Remove two useless CSS

* Merge branch 'dev' into input-max-length
2025-10-17 11:46:14 +08:00
Zhong
645df6d95a feat(components): [input] add modelModifiers prop (#22415)
* feat(components): [input] add `modelModifiers` prop

* refactor: update

* refactor: update

* fix: input uncontrolled in lazy mode

* docs: add desc

* perf: cache `Object.keys(props.modelModifiers).length`

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

---------

Co-authored-by: warmthsea <2586244885@qq.com>
Co-authored-by: btea <2356281422@qq.com>
2025-10-16 01:49:54 +00:00
一只前端汪
7c16480bcd refactor(style): Update Eslint to V9 and Prettier to V3 (#21949)
* refactor(style): Update Eslint to V9 and Prettier to V3

* fix: vscode color

* fix: vscode color

* chore: remove Useless dependence and old config file

* chore: format

* Merge branch 'dev' into eslintV9

* fix: fix

* fix: ssr test

* fix: ssr test

* fix: use defineConfig

* fix: prettier format and ignore docs dist

* fix: index.mjs => index.js

* fix: Vscode color

* fix: prettier ignore global.d.ts

* fix: format

---------

Co-authored-by: 2586740555 <15972343+CYJ090915@user.noreply.gitee.com>
2025-09-29 14:14:30 +08:00
Zhong
df88ec60ec chore(components): improve types and JSDoc for better code hints (#21998) 2025-09-02 09:02:00 +08:00
Zhong
75d86dd399 fix(components): [textarea] fix autosize in Splitter (#21840)
* fix(components): [input] fix `autosize` in Splitter

* fix: update

* fix: update
2025-08-26 18:15:43 +08:00
Noblet Ouways
2888dad3f2 fix(components): [input] add work-break to CONTEXT_STYLE (#21809)
closed #21808
2025-08-19 06:57:10 +08:00
Coder Goo
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
Zhong
f930e42967 fix(components): [input] correct textarea height in fullscreen (#21656) 2025-08-09 00:55:06 +02:00
yuhengshen
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
yuhengshen
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
qiang
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
fratzinger
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
Noblet Ouways
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 db0116a288.

* Revert "chore: fix"

This reverts commit 69c82a90c0.

* chore: fix

* style: `pnpm lint:fix`

* fix: lint

* chore: `pnpm format`
2025-06-16 15:37:12 +08:00
IllegalCreed
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
dopamine
7be4a3765e chore: emits smaller declaration files (#20109)
* Revert "fix(types): packing unexpected types (#19419)"

This reverts commit 13506ffb81.

* 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
thinkasany
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
TKSun
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
Mark J
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
qiang
6c6e4c67e2 fix(components): [input] the cursor error when click show-password (#19003)
closed #18387, #18831
2024-11-24 20:02:02 +08:00
qiang
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
btea
d7e5f193cd fix: the disabled state should not trigger focus (#18108) 2024-08-31 19:48:48 +08:00
btea
344c218d01 test(components): [pagination/input] test case (#18080) 2024-08-29 20:20:58 +08:00
dopamine
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
blesstosam
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
qiang
dc8cb90130 fix(components): [input] blur event fails when using textarea (#17836)
closed #17825
2024-08-10 11:02:28 +08:00
qiang
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
dopamine
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
kooriookami
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
qiang
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
chouchouji
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
sleepyShen1989
56d1afa283 fix(components): [input] add prop "row" explicit declare (#17085) 2024-07-21 13:23:04 +08:00