Commit Graph

479 Commits

Author SHA1 Message Date
Evan You 5a1a89bd61
feat(custom-element): useShadowRoot() helper
close #6113
close #8195
2024-08-03 14:19:19 +08:00
Evan You e181bff6dc
feat(custom-element): support emit with options
In a custom element created via `defineCustomElement`, if the first
event argument is an object, it will be used as the options object
for the emitted CustomEvent. The entire argument list is still exposed
via the CustomEvent's `detail` property.

```js
emit('event', { bubbles: true })
```

close #7605
2024-08-03 13:46:58 +08:00
Evan You 7f2c505f92
fix(custom-element): ignore scoped id 2024-08-03 13:40:57 +08:00
Evan You 37d2ce5d8e
feat(custom-element): support shadowRoot: false in defineCustomElement()
close #4314
close #4404
2024-08-03 13:14:22 +08:00
Haoqun Jiang 6d4eb94853
feat(runtime-dom): Trusted Types compatibility (#10844) 2024-08-02 12:46:12 +08:00
Evan You 66579ea544
chore: Merge branch 'main' into minor 2024-07-19 18:07:42 +08:00
Tycho 5df67e3675
fix(runtime-dom): handle undefined values in v-html (#11403) 2024-07-19 16:52:03 +08:00
Evan You f15ba2c2e2
chore: Merge branch 'main' into minor 2024-07-17 17:32:31 +08:00
linzhe 3e9e32ee0a
fix(runtime-dom): properly handle innerHTML unmount into new children (#11159)
close #9135
2024-07-17 16:37:14 +08:00
Evan You 7d06ca3a83
chore: Merge branch 'main' into minor 2024-06-22 21:05:15 +08:00
Thorsten Lünborg a2e35d682d
fix(runtime-dom): ensure only symbols are explicitly stringified during attribute patching (#11182)
close #11177
2024-06-22 17:04:41 +08:00
Tycho 8ae4c293ad
fix(runtime-dom): prevent setting state as attribute for custom elements (#11165)
close #11163
2024-06-22 16:42:12 +08:00
Evan You 524e660e35
chore: Merge branch 'main' into minor 2024-06-14 18:15:20 +02:00
Evan You bda5ff1d3f
chore: fix missing type import 2024-06-14 16:04:04 +02:00
Evan You 7c8b12620a
fix(custom-element): support same direct setup function signature in defineCustomElement
close #11116
2024-06-14 15:19:42 +02:00
Evan You 26356264d2
chore: Merge branch 'main' into minor 2024-06-14 12:32:28 +02:00
Evan You 04729ba216
fix(compat): only warn ATTR_FALSE_VALUE when enabled
close #11126
2024-06-14 11:03:04 +02:00
Xu Wei 188f3ae533
fix(runtime-dom): support Symbol for input value bindings (#10608)
close #10597
2024-06-10 17:01:56 +08:00
tomasvn 32262a9af5
chore: use PropertyKey type (#11056)
close #8559
2024-06-06 18:23:21 +08:00
Peixin Liu a88295dc07
fix(custom-elements): compatibility of createElement in older versions of Chrome (#9615)
close #9614
2024-06-06 18:21:28 +08:00
Evan You f1cc478819
chore: format 2024-05-31 23:26:16 +08:00
Evan You 537a571f8c
fix(runtime-dom): also set attribute for form element state
close #6007
close #6012
2024-05-31 23:22:42 +08:00
远方os a52a02f43f
fix(v-model): fix the lazy modifier is not reset by other modifications (#8547)
close #8546
close #6564
close #6773
2024-05-31 21:05:41 +08:00
Evan You 1d8727ec97
chore: Merge branch 'main' into minor 2024-05-30 11:21:12 +08:00
白雾三语 bbb5be299b
fix(custom-element): disconnect MutationObserver in nextTick in case that custom elements are moved (#10613)
Closes #10610
2024-05-22 00:14:02 +08:00
btea fd18ce70b1
fix: correct the type of `<details>`'s `onToggle` event handler (#10938)
Fixes #10928
2024-05-20 19:42:34 +08:00
btea 481b1b6f38
refactor(types): use explicit modifiers type (#10856) 2024-05-07 06:23:04 +08:00
Evan You c146186396
fix(types): fix compat with generated types that rely on CreateComponentPublicInstance
close #10842
2024-04-30 10:09:06 -07:00
Evan You 75c8cf63a1
feat(types): provide internal options for directly using user types in language tools (#10801) 2024-04-27 11:48:37 +08:00
Carlos Rodrigues 4cc9ca870c
types(defineComponent): support for GlobalComponents, typed Directives and respect `expose` on defineComponent (#3399)
close #3367
2024-04-25 16:04:03 +08:00
Vadim Kruglov 65109a70f1
fix(transition): transition is breaking/flickering when enter is canceled (#10688)
Co-authored-by: Vadim Kruglov <vadim.kruglov@libertexgroup.com>
2024-04-22 15:10:08 +08:00
Evan You f26d56601c
chore: improve event value validation message 2024-04-15 23:39:59 +08:00
Adrien Foulon 7ccd453dd0
fix(runtime-dom): sanitize wrongly passed string value as event handler (#8953)
close #8818
2024-04-15 22:28:34 +08:00
Wick 15ffe8f2c9
fix(runtime-dom): force update v-model number with leading 0 (#10506)
close #10503 
close #10615
2024-04-15 22:02:57 +08:00
白雾三语 67722ba23b
fix(runtime-dom): fix css v-bind for suspensed components (#8523)
close #8520
2024-04-15 20:23:28 +08:00
edison 140a7681cc
fix(TransitionGroup): avoid set transition hooks for comment nodes and text nodes (#9421)
close #4621
close #4622
close #5153
close #5168
close #7898
close #9067
2024-04-14 23:16:01 +08:00
yangxiuxiu db374e54c9
fix(runtime-dom): `v-model` string/number coercion for multiselect options (#10576)
Co-authored-by: RicardoErii <‘1974364190@qq.com’>
Co-authored-by: yangchangtao <yangchangtao@kuaishou.com>
2024-03-28 22:09:16 +08:00
edison b49306adff
fix(custom-element): avoid setting attr to null if it is removed (#9012)
Partially fixes #9006
Fixes #10324
2024-03-16 16:28:03 +08:00
chirokas dec8a5294b
types: fix `scroll` event type; add support for `scrollend` (#10443) 2024-03-06 17:23:50 +08:00
Doctor Wu b3f8b5a4e7
fix(runtime-dom): avoid unset option's value (#10416)
close #10412
re-fix #10396
2024-02-28 19:07:12 +08:00
Evan You 364f8902c8 fix(runtime-dom): fix nested v-show priority regression
close #10338
2024-02-26 09:11:05 +08:00
Evan You 9a365fe00d refactor: use more descriptive name for v-show original display key 2024-02-25 21:50:47 +08:00
zhoulixiang e2d323538e
fix(runtime-dom): v-bind style should clear previous css string value (#10373)
close #10352
2024-02-25 20:53:00 +08:00
Evan You ff130c4702 fix(runtime-dom): avoid always resetting nullish option value
close #10396
2024-02-25 17:35:19 +08:00
Evan You 6bef15f094 chore: remove unused argument 2024-02-25 17:30:20 +08:00
zhoulixiang e50963903d
fix(runtime-dom): should not trigger transition when v-show value is falsy (#10311) 2024-02-13 12:56:52 +08:00
zhoulixiang c224897dd4
fix(runtime-dom): ensure v-show respects display value set via v-bind (#10297)
close #10151
2024-02-09 10:17:35 +08:00
Evan You 2cd5b05c3b revert: fix(runtime-dom): ensure v-show respects display value set via v-bind (#10161)
This reverts commit 9b19f09121.

close #10294
reopen #10151
2024-02-09 08:30:51 +08:00
Doctor Wu 9b19f09121
fix(runtime-dom): ensure v-show respects display value set via v-bind (#10161)
close #10151
2024-02-07 12:54:21 +08:00
yangxiuxiu f0b5f7ed8d
fix(hydration): fix SFC style v-bind hydration mismatch warnings (#10250)
close #10215
2024-02-06 17:38:41 +08:00
Doctor Wu f31d782e46
fix(runtime-dom): fix option selected update failed (#10200)
close #10194
close #10267
2024-02-06 16:58:51 +08:00
Evan You 2ffb956efe perf(v-model): optimize v-model multiple select w/ large lists
close #10014
2024-01-18 19:55:15 +08:00
cyx cd419aec3c
fix(runtime-dom): unify behavior for v-show + style display binding (#10075)
close #10074
2024-01-11 17:11:35 +08:00
白雾三语 c379bc29ef
fix(types): allow `null` type for textarea value (#9997)
close #9904
2024-01-08 22:58:27 +08:00
zhoulixiang 2701355e8e
fix(hydration): avoid hydration mismatch warning for styles with different order (#10011)
close #10000
close #10006
2024-01-08 16:36:27 +08:00
三咲智子 Kevin Deng bfe6b459d3
style: update format & lint config (#9162)
Co-authored-by: 丶远方 <yangpanteng@gmail.com>
Co-authored-by: 三咲智子 Kevin Deng <sxzz@sxzz.moe>
Co-authored-by: Guo Xingjun <99574369+Plumbiu@users.noreply.github.com>
2023-12-26 19:39:47 +08:00
Evan You 95f6fffea2 chore: Merge branch 'main' into minor 2023-12-19 18:16:16 +08:00
Thorsten Lünborg 04d2c05054
fix(runtime-dom): cache event handlers by key/modifiers (#9851)
close #9849
2023-12-16 21:54:37 +08:00
Evan You 9f64d2b681 chore: Merge branch 'main' into minor 2023-12-16 14:37:21 +08:00
丶远方 0a387dfb1d
fix(sfc/cssVars): fix loss of CSS v-bind variables when setting inline style with string value (#9824)
close #9821
2023-12-15 09:56:01 +08:00
Mehmet fd0b6ba016
feat(types): export AriaAttributes type (#8909) 2023-12-11 22:05:48 +08:00
Evan You 982a145d38 chore: Merge branch 'main' into minor 2023-12-11 22:03:28 +08:00
丶远方 0d61b429ec
fix(types): add `xmlns:xlink` to `SVGAttributes` (#9300)
close #9299
2023-12-08 22:16:25 +08:00
Fabian Gündel d42b6ba3f5
feat: MathML support (#7836)
close #7820
2023-12-08 18:25:01 +08:00
Evan You 5b002869c5 fix(runtime-dom): fix width and height prop check condition
close #9762
2023-12-07 10:09:26 +08:00
sunjiang0018 af909b7d45
chore: fix typo (#9752) [ci skip] 2023-12-05 12:05:53 +08:00
Carlos Rodrigues 43c3cfdec5
fix(types): improve return type withKeys and withModifiers (#9734) 2023-12-04 07:59:01 +08:00
Evan You da4a4fb5e8 perf(runtime-dom): cache modifier wrapper functions
close #8882
2023-11-30 19:00:00 +08:00
Evan You 6fcec3b2c7 chore: fix width/height check condition 2023-11-30 18:34:06 +08:00
Evan You 9845f1d2a1 chore: optimize widht/height element check 2023-11-30 17:59:27 +08:00
Evan You 38aaa8c886 perf: optimize on* prop check 2023-11-30 17:52:51 +08:00
zhoulixiang bfc1838f31
fix(runtime-dom): set width/height with units as attribute (#8781)
Technically, width / height on `<img>`, `<video>` etc must be integers and cannot contain units. When set as a DOM property, the DOM force converts strings with units to 0. However, this is such a common mistake that most browsers nowadays supports such usage, and it makes sense for Vue to at least let it be set as an attribute.
2023-11-30 17:27:23 +08:00
renovate[bot] 16a6438236
chore(deps): update lint (#9627)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2023-11-18 10:33:24 +08:00
Evan You 5d077c8754 fix(types): revert class type restrictions
reverts #8012 due to breakage in downstream types
2023-11-13 15:23:16 +08:00
Evan You 2424013059 fix(types): widen ClassValue type 2023-11-10 15:36:30 +08:00
Basil Gor 46e33744c8
fix(types): more precise types for class bindings (#8012) 2023-11-10 15:15:54 +08:00
Evan You 5a41231352 chore: fix formatting + remove duplicated property in jsx type 2023-11-10 15:01:05 +08:00
bqy_fe 58e2a94871
fix(types): update jsx type definitions (#8607) 2023-11-10 14:30:45 +08:00
Yuchao 17aa92b79b
fix(types): allow falsy value types in `StyleValue` (#7954)
close #7955
2023-11-10 14:23:54 +08:00
Rudy 5d932a8e6d
fix(types): defineCustomElement using defineComponent return type with emits (#7937)
close #7782
2023-11-10 13:52:54 +08:00
白雾三语 40f4b77bb5
fix(v-model): avoid overwriting number input with same value (#7004)
close #7003
2023-11-09 15:14:38 +08:00
Kaine 72fdafa0cf
types(runtime-dom): update aria-relevant type (#9043) 2023-10-30 15:15:17 +08:00
白雾三语 26ca89e5cf
fix(types): support contenteditable="plaintext-only" (#8796) 2023-10-20 17:35:53 +08:00
丶远方 2ffe3d5b3e
refactor: use symbol for private properties (#8681) 2023-08-22 16:57:15 +08:00
丶远方 24d98f0327
perf(custom-element): cancel `MutationObserver` listener when disconnected (#8666) 2023-07-12 11:13:20 +08:00
Anthony Fu 438027cf9e
perf: mark `defineComponent` as side-effects-free (#8512) 2023-07-11 17:52:43 +08:00
Kid ceb0732e0b
fix(types/jsx): add `inert` attribute and missing `hidden` values (#8090) 2023-07-11 17:30:01 +08:00
JayMe DotDot 364dc53c7c
fix(types): support correct types for style on svg elements (#6322) 2023-07-10 17:59:44 +08:00
Innei 68d6b43f7e
fix(types/jsx): add missing loading attr for img element (#6160) 2023-07-10 17:58:53 +08:00
OrbisK 7121c925c5
types: update `TextareaHTMLAttributes` and `InputHTMLAttributes` (#6294)
* types: update `TextareaHTMLAttributes` and `InputHTMLAttributes`

add `InputTypeHTMLAttribute` (from `@types/react`) to `InputHTMLAttributes['type' ]`

* chore: format

---------

Co-authored-by: 三咲智子 Kevin Deng <sxzz@sxzz.moe>
2023-07-09 13:05:18 +08:00
Evan You 96c76facb7 fix(transition): handle possible auto value for transition/animation durations
close #8409
2023-06-14 12:12:22 +08:00
linghaoSu 4495373d28
fix(runtime-dom): check attribute value when setting option value (#8246)
fix #8227
2023-05-08 15:26:14 +08:00
ntnyq bf16697e25
chore: fix broken vite plugin url in warning message (#8224) 2023-05-08 14:47:02 +08:00
Evan You bdf557f6f2 fix(types): retain type parameters order for public types 2023-04-05 22:30:50 +08:00
三咲智子 Kevin Deng 5a2f5d59cf
feat(types/slots): support slot presence / props type checks via `defineSlots` macro and `slots` option (#7982) 2023-04-03 16:49:16 +08:00
Haoqun Jiang ffe679c490
fix(types/jsx): move JSX DOM types back to `@vue/runtime-dom` (#7979) 2023-03-29 20:22:29 +08:00
Evan You 58e5c51149 build: upgrade to TypeScript 5.x 2023-03-23 17:11:35 +08:00
Evan You eb0c1e7025 build: remove api-extractor 2023-02-03 15:57:00 +08:00
Evan You 124373db50 wip: isolatedModules + use rollup-plugin-esbuild 2023-02-03 04:30:19 +08:00
Evan You 3a6f5eb0f7 fix(build): ensure BaseTransition functions can be tree-shaken 2023-02-02 21:38:57 +08:00