Commit Graph

354 Commits

Author SHA1 Message Date
edison fb6b9f8e8f
fix(runtime-dom): attribute should be removed with nullish values (#2679)
fix #2677
2020-11-30 19:28:03 -05:00
HcySunYang 87581cd266
fix(v-model): mutate original array for v-model multi checkbox (#2663)
Note: this change will break non-deep `watch` on the `v-model` bound array since the array is no longer replaced. This can be considered part of the Array watch changes in v3 as detailed at https://v3.vuejs.org/guide/migration/watch.html

This is unfortunate but unavoidable since the issue that it fixes is more important: `v-model` should definitely work with a non-ref reactive array.

fix #2662
2020-11-30 17:48:51 -05:00
Evan You 3cd30c5245 fix(v-show): ensure v-show conflict with inline string style binding
fix #2583
2020-11-30 15:48:34 -05:00
Evan You bd6e211287 release: v3.0.3 2020-11-25 11:16:21 -05:00
Evan You 8ac2241b22 wip: more consistent compiler-sfc usage + inline mode for ssr 2020-11-20 14:23:09 -05:00
Evan You 64160e89cc wip: ignore non-ref const mutation cases in codegen 2020-11-18 21:16:09 -05:00
Evan You f92bc5a19a wip: simplify useCssVars 2020-11-17 13:03:47 -05:00
Evan You 41bb7fa330 feat(compiler-sfc): new SFC css varaible injection implementation
ref: https://github.com/vuejs/rfcs/pull/231
2020-11-16 18:27:25 -05:00
Evan You 3a6b1207fa fix(style-vars): apply css vars in post flush effect 2020-11-16 15:40:16 -05:00
Evan You f28ca55692 fix(runtime-dom): use correct import source 2020-11-03 09:54:22 -05:00
Evan You f2d03a59c6 release: v3.0.2 2020-10-20 16:24:12 -04:00
neverland e894caf731
types(tsx): svg xmlns attribute typing (#2344) 2020-10-19 17:40:21 -04:00
Evan You f17f0ddf68 release: v3.0.1 2020-10-15 12:37:21 -04:00
Pick 6a554feb13
perf(runtime-dom/vModel): remove looseHas if model is Set (#2236) 2020-10-13 16:20:05 -04:00
underfin 408a8cad48
fix(sfc/style-vars): should attach css vars while `subtree` changed (#2178)
* fix(cssVars): should attach css vars while `subtree` changed

fix #2177

* fix: fix test
2020-10-13 15:37:45 -04:00
Evan You 54ed7592e4 fix(v-model): ensure initial value is set after other attributes
fix #2325
2020-10-08 16:41:45 -04:00
ᴜɴвʏтᴇ fbd198fbfe
fix(v-model): avoid clearing IME compose state on updates (#2304)
fix #2302
2020-10-07 22:34:53 -04:00
edison d744b8a2dc
fix(runtime-dom): v-model should support number modifier with select tag (#2308)
close #2252
2020-10-07 15:06:41 -04:00
Evan You d8c1536ead release: v3.0.0 2020-09-18 11:28:05 -04:00
Evan You 876ecc8672 release: v3.0.0-rc.13 2020-09-18 01:39:30 -04:00
Evan You 985bd2bcb5 release: v3.0.0-rc.12 2020-09-16 13:50:13 -04:00
Evan You f2ef7d7c8e release: v3.0.0-rc.11 2020-09-15 13:15:42 -04:00
Evan You 5ae7380b4a
feat: update Suspense usage (#2099)
See https://github.com/vuejs/vue-next/pull/2099 for details.
2020-09-15 12:45:06 -04:00
Pick cf1b6c666f
feat(runtime-dom): allow native Set as v-model checkbox source (#1957) 2020-09-14 11:16:50 -04:00
Evan You 4386653e76 release: v3.0.0-rc.10 2020-09-02 12:41:54 -04:00
Guillaume Chau 5df71b739d chore: add repository directories 2020-08-30 15:06:06 +02:00
Evan You 94d94bafc5 release: v3.0.0-rc.9 2020-08-26 18:21:18 -04:00
Evan You ede2e0d1b5 release: v3.0.0-rc.8 2020-08-25 10:31:52 -04:00
Amour1688 a47626a4a3
types(jsx): make HTMLAttributes and SVGAttributes extend Events (#1941) 2020-08-25 09:50:33 -04:00
ᴜɴвʏтᴇ 1d55454e61
fix(runtime-dom): avoid setting unchanged input value (#1937)
fix #1935 (fix v-model usage with HTML5 validation)
2020-08-25 09:47:55 -04:00
Evan You 11804fe93f feat(directives): introduce `created` custom directive hook and ensure
`v-model` event listener fire before template/props listeners

fix #1931
2020-08-24 17:12:16 -04:00
Evan You 6602d6dbff release: v3.0.0-rc.7 2020-08-21 14:13:05 -04:00
XRenSiu bb54a84cd1
chore: use '@vue/shared' instead of '@vue/shared/src' (#1915) 2020-08-21 12:50:06 -04:00
Evan You 91c4735416 release: v3.0.0-rc.6 2020-08-19 18:17:42 -04:00
wxy 3892ea884b
chore(runtime-dom): remove deprecated tags from jsx typing (#1627) 2020-08-18 11:43:14 -04:00
Necmettin Karakaya 86187ca907
chore: typos (#1670) 2020-08-14 17:05:12 -04:00
beary b984d47ac4
fix(types/jsx): update innerHTML property in jsx typing (#1814) 2020-08-12 15:50:11 -04:00
Eduardo San Martin Morote 00683fce9a
fix(runtime-dom): patch `form` as an attribute (#1788)
Close #1787
2020-08-06 09:32:28 -04:00
Evan You 11ed210391 chore: fix tests 2020-08-03 18:01:07 -04:00
Evan You 8d4abc3814 chore: unset removed invokers 2020-08-03 17:56:55 -04:00
Evan You 1c967fc44b fix(runtime-dom): fix v-on same computed handler on multiple elements
fix #1747
2020-08-03 17:55:22 -04:00
Evan You 0cd98c3040 fix(runtime-dom): style binding multi value support
fix #1759
2020-08-03 17:13:17 -04:00
Evan You 848d9ce2ea release: v3.0.0-rc.5 2020-07-28 17:42:05 -04:00
underfin 07ece2e926
fix(style-vars): fix css vars on component with suspense as root (#1718) 2020-07-28 15:30:18 -04:00
Evan You 5c74243211 test: move mockWarn into setup files 2020-07-27 22:58:51 -04:00
Evan You d63daaf9b6 release: v3.0.0-rc.4 2020-07-21 15:40:46 -04:00
Evan You 7753485baa release: v3.0.0-rc.3 2020-07-21 15:27:26 -04:00
Evan You a28a11ef22 chore: make app root attribute consistent with scopeId attributes 2020-07-21 14:56:28 -04:00
Evan You c852bf18d7 fix(v-model): v-model listeners should not fallthrough to plain element root
fix #1643
2020-07-21 14:17:48 -04:00
learningMaster 324167d3d2
test(runtime-dom): add test for vModel composition session (#1631) 2020-07-21 10:34:08 -04:00
Evan You 54727f9874 feat: provide ability to overwrite feature flags in esm-bundler builds
e.g. by replacing `__VUE_OPTIONS_API__` to `false` using webpack's
`DefinePlugin`, the final bundle will drop all code supporting the
options API.

This does not break existing usage, but requires the user to explicitly
configure the feature flags via bundlers to properly tree-shake the
disabled branches. As a result, users will see a console warning if
the flags have not been properly configured.
2020-07-20 21:51:30 -04:00
Evan You ad199e1a25 fix(build): make transition tree-shakeable again 2020-07-20 16:17:14 -04:00
Evan You 1f4045a086 release: v3.0.0-rc.2 2020-07-19 14:52:42 -04:00
motao b8db7ab889
test(runtime-dom): improve v-on system key modifiers test (#1597) 2020-07-18 22:55:39 -04:00
Evan You 0ea14cade9 release: v3.0.0-rc.1 2020-07-17 15:30:17 -04:00
Evan You 5ed73cd874 release: v3.0.0-beta.24 2020-07-16 13:51:52 -04:00
Evan You 8b5d153d7f release: v3.0.0-beta.23 2020-07-16 12:48:56 -04:00
Evan You 44e6da1402 fix(runtime-dom): unref when setting useCssVars 2020-07-15 18:31:10 -04:00
Evan You fcbefdb769 release: v3.0.0-beta.22 2020-07-15 12:43:41 -04:00
Evan You 32a4cb804b test: improve coverage 2020-07-15 10:38:45 -04:00
Evan You 9188e9ea74 release: v3.0.0-beta.21 2020-07-14 17:18:07 -04:00
Evan You cb6a0915c5 fix(runtime-dom): remove attrs with nullish values
fix #1576
2020-07-14 16:25:21 -04:00
Evan You 00ab9e2e85 refactor: adjust event options handling to be JSX friendly 2020-07-14 13:20:59 -04:00
Evan You 380c6792d8 fix(v-on): refactor DOM event options modifer handling
fix #1567

Previously multiple `v-on` handlers with different event attach option
modifers (`.once`, `.capture` and `.passive`) are generated as an array
of objects in the form of `[{ handler, options }]` - however, this
makes it pretty complex for `runtime-dom` to properly handle all
possible value permutations, as each handler may need to be attached
with different options.

With this commit, they are now generated as event props with different
keys - e.g. `v-on:click.capture` is now generated as a prop named
`onClick.capture`. This allows them to be patched as separate props
which makes the runtime handling much simpler.
2020-07-14 11:48:05 -04:00
Evan You 8b320cc12f fix(runtime-dom/v-on): only block event handlers based on attach timestamp
fix #1565
2020-07-13 14:50:11 -04:00
Pick 09f61b4049
types(runtime-core): adjust Renderer's type declaration (#1566) 2020-07-13 12:44:37 -04:00
Evan You b9595e64cf feat: ssr support for `<style vars>` 2020-07-12 18:04:09 -04:00
Evan You 5f271515cf refactor: shorten scoped css var / animation prefix 2020-07-10 18:47:31 -04:00
Evan You 73807aeaf7 types: fix jsx type collision with generated type after concatenation 2020-07-10 18:04:44 -04:00
Evan You 6647e34ce7 refactor: adjust useCSSVars scoped usage 2020-07-10 10:19:16 -04:00
Evan You 879ea17985 test: tests for useCSSVars 2020-07-10 09:44:00 -04:00
Evan You 9f706a9f5e feat(runtime-dom): useCssVars 2020-07-09 16:25:29 -04:00
Evan You 20df2f3817 release: v3.0.0-beta.20 2020-07-08 12:45:30 -04:00
Felix Rilling 829b35e426
chore: typo fixes (#1546)
* chore: fix typos in comments/JSDoc.

* chore: fix typo in internal function name.

* chore: fix typos in test comments/descriptions/variable names.
2020-07-08 12:32:42 +02:00
Evan You d5ab70ba66 release: v3.0.0-beta.19 2020-07-07 10:04:31 -04:00
wonderful-panda a5b4332c69
fix(types/tsx): add JSX.IntrinsicAttributes definition (#1517)
fix #1516
2020-07-06 21:59:26 -04:00
Evan You 9ee85a3783 chore: fix unintended import 2020-07-06 20:41:38 -04:00
underfin 425335c28b
fix(v-model): consistent nullish value handling with 2.x (#1530)
fix #1528
2020-07-06 19:02:33 -04:00
Evan You 441c23602f fix(runtime-dom): should set `<input list="...">` as attribute
fix #1526
2020-07-06 19:01:33 -04:00
djy0 77538ec6d9
fix(runtime-dom/style): fix patchStyle on falsy next value (#1504)
fix #1506
2020-07-06 16:45:15 -04:00
Evan You 7f83856f34 release: v3.0.0-beta.18 2020-07-01 21:06:25 -04:00
Evan You 7886c267f7 refactor: remove unused inheritRef option
This is technically a breaking change, but the option was not meant for public use
and ended up not solving the problem it was introduced for.
2020-07-01 15:40:11 -04:00
Evan You f6da6bf999 release: v3.0.0-beta.17 2020-06-30 12:10:15 -04:00
Evan You b3536d87a5 fix(runtime-dom): allow force updating value bindings for controlled inputs
fix #1471
2020-06-30 11:23:09 -04:00
Evan You ec3c12ee10 release: v3.0.0-beta.16 2020-06-29 18:34:50 -04:00
Evan You 86d3972855 fix(transition-group): vue 2 compatible handling of transition-group w/ multiple v-for children
fix #1126
2020-06-29 18:16:10 -04:00
Evan You d32aed0906 chore: add display names for dom transition components 2020-06-29 18:16:09 -04:00
蜗牛老湿 f8c6f8c7b5
refactor(runtime-dom): insertBefore anchor null equals appendChild (#1463) 2020-06-29 13:19:31 -04:00
underfin d4cd12887e
fix(BaseTransition): collect correct children with slot passthrough in `Transition` (#1456)
fix #1455
2020-06-29 12:04:28 -04:00
Evan You bf84ac8396 fix(transition): enter/leave hook timing consistency with v2
close #1145
2020-06-25 17:56:36 -04:00
underfin 299fda46a1
test(TransitionGroup): test for `TransitionGroup` (#1269) 2020-06-25 16:38:22 -04:00
Evan You 7ae70ea44c fix(transition): fix appear hooks handling 2020-06-25 16:02:28 -04:00
Evan You acd3156d2c fix(transition): fix dom transition cancel hooks not being called 2020-06-25 15:03:58 -04:00
underfin d7beea015b
fix(v-show): fix v-show unmount with falsy value (#1403)
fix #1401
2020-06-25 10:58:31 -04:00
Evan You cf2f278f48 release: v3.0.0-beta.15 2020-06-12 18:09:05 -04:00
Evan You 4492b88938 fix: always treat spellcheck and draggable as attributes
fix #1350
2020-06-12 12:40:54 -04:00
Aneryu 90c3532946
fix(runtime-dom): compatibility for cases where event.timeStamp is 0 (#1328)
close #1325
2020-06-12 11:00:37 -04:00
underfin d4e9b19932
perf: only patch string style when value has changed (#1310)
fix #1309
2020-06-11 17:25:39 -04:00
Evan You 80c868aefe workflow: setup eslint for prohibited syntax and globals
fix #1285
2020-06-10 16:54:23 -04:00
Evan You e4dc03a8b1 feat(types): adjust type exports for manual render function and tooling usage
- v-model and v-show directives are now exposed as public
- compiler-used runtime helpers are now exposed for TS tooling, but marked as @private

close #1329
2020-06-10 14:57:21 -04:00