Commit Graph

2751 Commits

Author SHA1 Message Date
Evan You 9613969ffc workflow(sfc-playground): share and download buttons 2021-03-28 23:36:36 -04:00
Evan You aa8bf1b7a3 workflow(sfc-playground): improve module rewrite 2021-03-28 21:55:22 -04:00
Evan You 3ac661b896 chore: force refresh playground editor on startup 2021-03-28 18:50:12 -04:00
Evan You d1bf35c8b8 workflow(sfc-playground): support multiple files 2021-03-28 18:41:33 -04:00
Evan You 2e3984fd5b chore: default code for sfc playground 2021-03-28 02:24:25 -04:00
Evan You 16e8f45199 workflow(sfc-playground): fix newline 2021-03-28 02:17:55 -04:00
Evan You f76ddc5ac3 workflow: sfc playground 2021-03-28 01:35:45 -04:00
Evan You 2424768808 build: make compiler-sfc global build work 2021-03-27 12:33:52 -04:00
Evan You 67039b3434 release: v3.0.9 2021-03-27 11:30:12 -04:00
Richard Cooke 4549e65bae
fix(runtime-core): remove dev-only props property from setup context for consistency (#3492) 2021-03-27 11:23:10 -04:00
Johnson Chu e752bddb33
fix(compiler-core): fix slot source location (#3494) 2021-03-27 11:20:39 -04:00
Evan You 2121c32e22 fix(runtime-core): fix kebab-case prop required warning
fix #3495
ref #3363
2021-03-27 11:16:39 -04:00
Evan You 37c17091fd fix: ensure backwards compat for pre-compiled sfc components
fix #3493
2021-03-27 10:53:45 -04:00
Evan You 9ff70be2b3 release: v3.0.8 2021-03-26 17:35:44 -04:00
Evan You 60d777d228 fix(runtime-core): fix erraneous emits warnings w/ mixins
fix #2651
2021-03-26 16:29:40 -04:00
Evan You d5824b97c5 fix(runtime-core): should not track deps in pre flush watcher callbacks
fix #2728
2021-03-26 15:52:49 -04:00
Thorsten Lünborg 22cc4a7659
fix(reactivity): ensure that shallow and normal proxies are tracked seperately (close #2843) (#2851)
fix #2843
2021-03-26 15:39:56 -04:00
HcySunYang 68de9f408a
fix(reactivity): fix shallow readonly behavior for collections (#3003)
fix #3007
2021-03-26 15:10:21 -04:00
HcySunYang 9cb21d088e
fix(Teleport): fallback to non-optimized mode when HRM performing updates (#3311)
fix #3302
2021-03-26 14:02:44 -04:00
Evan You 8c3c14a0ff fix(ssr): properly update currentRenderingInstance state during ssr
fix #2863
2021-03-26 14:00:03 -04:00
HcySunYang 9036f88d83
fix(hydration): handle camel-case tag name when performing match assertion (#3247)
fix #3243
2021-03-26 11:59:50 -04:00
HcySunYang 420c8f4580
fix(ssr/hydration): handle ending empty text node (#3246)
fix #3245
2021-03-26 11:45:28 -04:00
Evan You 2e71f07bc1 fix(ssr): ensure async setup error handling work with suspense during ssr 2021-03-26 11:00:30 -04:00
edison d668d48e9e
fix(runtime-core): handle error in async setup (#2881) 2021-03-26 10:26:30 -04:00
Evan You abd129d845 fix(component): prioritize registered component over implicit self-reference via filename
ref: #2827
2021-03-26 10:04:36 -04:00
Evan You da944cb379 fix(ssr): fix memory leak when vnode component render throws error
fix #3100
2021-03-25 18:04:21 -04:00
HcySunYang 2b588cf1bc
fix(types): unwrap refs on public instance data (#3319)
fix #3315
2021-03-25 17:30:10 -04:00
HcySunYang 44166b43d9
fix(runtime-core): cache props default values to avoid unnecessary watcher trigger (#3474)
fix #3471
2021-03-25 17:26:58 -04:00
HcySunYang ebedcccdc0
fix(compiler-core): allow unicode to appear in identifiers (#3443)
fix #3440
2021-03-25 17:24:18 -04:00
HcySunYang 7715c49af9
fix(compiler-core): avoid generating useless createVNode helper (#2938)
close #2739
2021-03-25 17:01:50 -04:00
HcySunYang 2451dd8ae6
fix(runtime-core): the select tag's multiple prop should be set before the children mounting (#3202)
fix #3199
2021-03-25 16:49:34 -04:00
Evan You 084e932e85 refactor: simplify lifecycle hook call logic 2021-03-25 16:48:51 -04:00
HcySunYang b58bb16959
fix(runtime-core): should call chained mixins and extends (#3040)
fix #3038
2021-03-25 16:39:57 -04:00
HcySunYang 86ceef4352
fix(runtime-core): fix warning for absent props (#3363)
fix #3362
2021-03-25 16:22:43 -04:00
bartenra e4a5712a33
fix(types/jsx): llow tabindex to be a string (#3476) 2021-03-25 16:20:38 -04:00
funkyfun c8aed13711
chore(types): remove redundant 'undefined' type (#3484) 2021-03-25 16:19:02 -04:00
edison bbc5fe6a97
fix(compiler-sfc): should not rewrite scope variable (#3449)
fix #3445
2021-03-25 16:16:48 -04:00
GU Yiling ca6aa01181
fix(compiler-dom): stringifyStatic should remove attribute bindings with `null` value (#3477)
fix #3475
2021-03-25 16:14:06 -04:00
Evan You 7cf143dd4f chore: fix test 2021-03-25 16:06:02 -04:00
HcySunYang b4b82159e2
fix(compiler-core): should not condense whitespace in RCDATA text mode (#3482)
fix #3479
2021-03-25 15:53:03 -04:00
HcySunYang 6e88156934
fix(runtime-core): should not cache property access during data() invocation (#3299)
fix #3297
2021-03-25 15:48:12 -04:00
HcySunYang 4bf7ba19bf
fix(compiler-core): detect v-if branch root with comment as dev fragment (#2785)
fix #2780
2021-03-25 15:43:44 -04:00
07akioni 3755e60c52
fix(types): union function prop (#3119)
fix #3357
2021-03-25 11:27:54 -04:00
Evan You 41e02f0fac fix(reactivity): ensure computed can be wrapped by readonly
fix #3376
2021-03-25 11:23:34 -04:00
TJ Koblentz e4b5fccd0c
fix(ssr): watchEffect onInvalidate runner initialization (#3323)
close #3322
2021-03-25 11:17:57 -04:00
edison bf34e33c90
fix(runtime-core): ensure only skip unflushed job (#3406) 2021-03-25 11:13:35 -04:00
HcySunYang 49f4072c83
fix(compiler-ssr): keep the order of imports expression for the fallback branch of SSR (#3448)
fix #3447
2021-03-25 11:10:25 -04:00
HcySunYang 776951315d
fix(Teleport): component with multi roots should be removed when unmounted (#3157)
fix #3156
2021-03-25 11:02:50 -04:00
HcySunYang 0a583d5ca2
fix(ssr): respect render function from extends/mixins in ssr (#3006)
fix #3004
2021-03-25 10:32:17 -04:00
HcySunYang 5dbe834858
fix(rumtime-core): custom dom props should be cloned when cloning a hoisted DOM (#3080)
fix #3072
2021-03-25 10:21:57 -04:00
edison eb1fae63f9
fix(runtime-core): handle error in async watchEffect (#3129) 2021-03-23 10:20:52 +01:00
21d1288133
fix(teleport): targetAnchor should also be removed when unmounted (#2870)
* fix(teleport): targetAnchor should also be removed when unmounted

* fix(teleport): targetAnchor should also be removed when unmounted
2021-03-23 10:19:09 +01:00
Cédric Exbrayat 3b3a9a1f52
fix: add display name for suspense component (#3312) 2021-03-23 10:17:15 +01:00
HcySunYang 67a0290c0a
fix(transition): toggling branches with in-out mode should be transitioned correctly (#3109)
fix #3104
2021-03-22 16:56:24 -04:00
Evan You b2e00f011a test(ssr): test render function Transition usage in SSR 2021-03-22 16:51:51 -04:00
HcySunYang e8e9b00f81
fix(KeepAlive): adapt keepalive for ssr (#3259)
fix #3255
2021-03-22 16:49:07 -04:00
HcySunYang 602b58ebd1
fix(compiler-core): fix the detection of forwarded slots with v-if or v-for (#3353)
fix #3347
2021-03-22 16:34:46 -04:00
HcySunYang 6cb94752b0
fix(compiler-sfc): scope Id should not be attached to @keyframe breakpoint rules (#3308)
fix #3304
2021-03-19 10:32:30 -04:00
Evan You 540e26f49c chore: only set slotted flag on sfc descriptor if style is scoped 2021-03-05 18:28:12 -05:00
Evan You ff4d4ec249 chore: fix all test cases 2021-03-05 18:28:12 -05:00
Evan You 68416e988f chore: fix types 2021-03-05 18:28:12 -05:00
Evan You 02cbbb718c perf: support only attaching slot scope ids when necessary
This is done by adding the `slotted: false` option to:

- compiler-dom
- compiler-ssr
- compiler-sfc (forwarded to template compiler)

At runtime, only slotted component will render slot fragments with
slot scope Ids. For SSR, only slotted component will add slot scope Ids
to rendered slot content. This should improve both runtime performance
and reduce SSR rendered markup size.

Note: requires SFC tooling (e.g. `vue-loader` and `vite`) to pass on
the `slotted` option from the SFC descriptoer to the `compileTemplate`
call.
2021-03-05 18:28:12 -05:00
Evan You f74b16ccfe fix(compiler): properly bail stringfication for nested slot elements 2021-03-05 18:28:12 -05:00
Evan You aea88c3280 refactor: fix implementation of SFC :slotted id handling
fix #2892
2021-03-05 18:28:12 -05:00
Cédric Exbrayat 57e1aa815b
chore: fix ownKeys signature (#3313) 2021-03-03 11:26:49 -05:00
Evan You 3e4c3ac66d build(deps): bump @babel/parser and @babel/types 2021-03-03 11:25:13 -05:00
dependabot[bot] 9fd66d8edc
build(deps-dev): bump pug from 2.0.4 to 3.0.1 (#3344)
Bumps [pug](https://github.com/pugjs/pug) from 2.0.4 to 3.0.1.
- [Release notes](https://github.com/pugjs/pug/releases)
- [Commits](https://github.com/pugjs/pug/compare/pug@2.0.4...pug@3.0.1)

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-03-03 11:19:33 -05:00
Evan You 69304cf166 refactor: adjust logic branches 2021-03-01 15:45:55 -05:00
HcySunYang 7562e72c2b
fix(runtime-core): fix async component ref handling (#3191)
fix #3188
2021-03-01 15:00:32 -05:00
Evan You 75fdcd85ce chore: rename test to match src filename 2021-03-01 12:30:04 -05:00
Kadir Yazıcı 13c9d2ca82
fix(types): allow style to be an array in JSX (#2947) 2021-03-01 12:29:13 -05:00
HcySunYang 8ffcde2836
fix(runtime-dom): support mounting app to svg container (#2929)
fix #2926
2021-03-01 11:51:32 -05:00
Evan You 1a955e2278 release: v3.0.7 2021-03-01 10:59:29 -05:00
Evan You 24b35237a0 test: improve e2e test stability 2021-03-01 10:49:23 -05:00
Evan You 1dedc19e1f fix(compiler-sfc): handle more edge cases in default rewrite 2021-02-26 11:05:20 -05:00
lidlanca 012dc5a303
fix(compiler-ssr) ensure that ssrHelpers are unique after merge from parent context (#3269)
fix #3268
2021-02-25 18:25:39 -05:00
zhufengzhufeng 9cd988342c
perf(reactivity): only call Set.add if doesn't already have value (#3307) 2021-02-25 14:57:35 -05:00
HcySunYang 5ad4036e29
fix(v-show): v-show takes higher priority than style attribute (#3230)
fix #2757
2021-02-25 10:26:54 -05:00
HcySunYang 45fae9d308
fix(scheduler): ensure updates are always inserted in ascending id order (#3184)
fix #2768, fix #2829
2021-02-25 09:37:25 -05:00
Evan You 75964aba03 test: test case for #3300, #3301 2021-02-25 09:07:49 -05:00
HcySunYang e3568bae27
fix(runtime-core): properties in methods should be writable and enumerable in DEV (#3301)
fix #3300
2021-02-25 09:04:28 -05:00
HcySunYang 4a965802e8
types: support object as props type (#3165) 2021-02-24 16:20:41 -05:00
HcySunYang 354966204e
dx(runtime-dom): warn config.isCustomElement usage in runtime-only build (#2945) 2021-02-24 16:18:55 -05:00
Evan You d0ea74556f fix: init devtools after feature flag checks 2021-02-24 15:59:38 -05:00
Evan You d9f91e26f9 release: v3.0.6 2021-02-24 15:19:31 -05:00
Evan You 180310cbe9 refactor(runtime-dom): avoid form attribtue tag check
the tag check while technically stricter, is not really necessary
and introduces too much weight
2021-02-24 15:06:51 -05:00
Thorsten Lünborg c5d147c57f
fix(runtime-dom): ensure readonly type prop on textarea is handled patched as attribute (#2888)
close #2766

Co-authored-by: Thorsten Luenborg <t.luneborg@googlemail.com>
2021-02-24 14:51:19 -05:00
Evan You fcb6c8920c fix(compiler-dom): fix cdn entries
ref #3181 #3185
2021-02-23 10:00:48 -05:00
Evan You 5a7a1b8293 fix(hmr): deep clone reused hoisted trees during dev
fix vitejs/vite#2022
2021-02-15 15:09:27 -05:00
Evan You c69f4ea857 fix(compiler-ssr): avoid duplicated asset imports merged from component slot client branch
fix vitejs/vite#2034
2021-02-15 12:12:50 -05:00
Matias Capeletto 6d762a84ca
fix(compiler-sfc): removeSpecifier issue when removing initial imports (script-setup) (#2729) 2021-02-13 10:06:34 +01:00
Evan You 03360cefa1 fix(compiler-sfc): treat const reactive() bindings as mutable 2021-02-10 11:39:07 -05:00
Evan You 734c65badd fix(compiler-core): do not mark v-for as stable on const bindings
since the source value may be a reactive array

fix vitejs/vite#1956
2021-02-09 11:57:09 -05:00
edison ec8fd10cec
fix(runtime-core): instanceWatch should pass `this.proxy` to source as the first argument (#2753) 2021-02-09 08:00:32 +01:00
JokcyLou bd1240c127
feat: remove useless option in KeepAlive (#3170) 2021-02-09 07:58:53 +01:00
shadowings-zy b302cbbbd3
fix: kebab-case events are attached correctly on web components, see #2841 (#2847) 2021-02-09 07:58:36 +01:00
xiejiahe 1cc8712235
chore: comment initial space (#3192) [skip ci]
fix(typo): Comment add spaces.
2021-02-08 12:32:12 +01:00
Thorsten Lünborg 96b6433524
fix(compiler-dom): ensure global build filename matches the one defined in package.json (close #3181) (#3185)
Co-authored-by: Thorsten Luenborg <t.luneborg@googlemail.com>
2021-02-07 14:40:14 +01:00
HcySunYang f43a3b0beb
fix(runtime-core): align $parent/$root with the template ref when using expose (#3158) 2021-02-07 14:39:52 +01:00
edison 3efa2aff13
chore(runtime-core): remove unnecessary variables (#2680) 2021-02-05 20:06:50 +01:00
Alan Wang 1f567264a7
test: fix typo in expect message (#2678) 2021-02-05 20:06:21 +01:00
Cédric Exbrayat 73117f6b5b
fix(runtime-core): allow overriding properties other than props (#3105)
This is useful for testing, as Jest can't spy on an object without `hasOwnProperty`.
VTU can add it, but this commit is needed first.
2021-02-05 19:59:46 +01:00
HcySunYang 48f0d2944f
fix(types): extract the correct props type for the DateConstructor (#2676) 2021-02-05 19:56:23 +01:00
Thorsten Lünborg 288ae0a8d9
feat(runtime-core): improve render context warning (#2496)
Co-authored-by: Thorsten Luenborg <t.luneborg@googlemail.com>
2021-02-05 19:55:45 +01:00
Yang Mingshan 01fdbf4b06
types: use non-null assertion instead of explicit type cast (#2974) 2021-02-05 19:55:23 +01:00
HcySunYang 347a8798a4
fix(runtime-core): check the DEV_ROOT_FRAGMENT flag correctly in the dev environment (#2750) 2021-02-05 19:54:59 +01:00
HcySunYang 2587f36fe3
fix(runtime-core): component methods should override global properties in DEV (#3074) 2021-02-05 19:52:40 +01:00
Albert Kaaman 4b551420fc
fix: remove superfluous spaces when normalizing class (#3083)
Co-authored-by: Jacek Karczmarczyk <jkarczm@gmail.com>
2021-02-04 14:41:46 +01:00
Evan You 49bc2e4db5
feat(compiler-sfc): upgrade to postcss 8 (#2710) 2021-02-04 14:37:55 +01:00
07akioni a89d985375
types: focusin & out events (#3136) 2021-02-04 14:05:24 +01:00
Yang Mingshan e109f7b898
chore: remove overloads numbers in comments (#2976) 2021-02-04 14:34:40 +08:00
edison c9f94fa3cf
feat(compiler-core): support `BigInt` in template (#2900) 2021-02-03 19:28:46 +01:00
HcySunYang dd02cf37d5
perf(reactivity): should not track `__isVue` (#2940) 2021-02-03 19:28:07 +01:00
underfin 9dc816d634
fix(compiler-sfc): compiler blank srcset (#3005)
fix https://github.com/vitejs/vite/issues/1523
2021-02-03 19:27:34 +01:00
edison ffd5288545
feat(runtime-core): props type support `BigInt` (#2891) 2021-02-03 19:25:45 +01:00
Thorsten Lünborg 6a48d23749
fix: ensure all published packages contan a LICENCE file (close #2650) (#2857)
close #2650

Co-authored-by: Thorsten Luenborg <t.luneborg@googlemail.com>
2021-02-03 19:24:47 +01:00
07akioni 4ca4666d58
fix(toRef): ref created from union typed prop can't be used in watch (#3048) 2021-02-03 19:12:51 +01:00
HcySunYang 6d5b623512
fix(compiler-sfc): the empty lang attribute should be treated as no lang specified (#3051) 2021-02-03 19:11:45 +01:00
luwuer f262438073
fix(runtime-dom): enable set form attr to null on form-elements (#2840) (#2849)
Co-authored-by: Eduardo San Martin Morote <posva@users.noreply.github.com>
Co-authored-by: Thorsten Lünborg <t.luenborg@googlemail.com>
2021-02-03 19:11:09 +01:00
Haoqun Jiang 97d6f1a716
fix: should prefix `ShadowRoot` with `window.` (#2943)
Otherwise this expression would throw in environments that does not
support `ShadowRoot` which includes the common mocha testing environment
setup that uses `jsdom` and `jsdom-global`.

It is because `ShadowRoot` is not an enumerable property on `window`,
`jsdom-global` fails to expose it on the `global` object.

See the error message at: https://app.circleci.com/pipelines/github/vuejs/vue-cli/779/workflows/17d7d7c4-7605-4588-878a-ddb3a6d37102/jobs/24147
2021-02-03 19:10:27 +01:00
hiroki 18b0c9a011
docs(type): remove unmount parameters (#2601) 2021-02-03 19:09:59 +01:00
Thorsten Lünborg 60e05eff23
fix(runtime-core): ensure app instance can be garbage collected after unmount (close #2907) (#2909)
close #2907

Co-authored-by: Thorsten Luenborg <t.luneborg@googlemail.com>
2021-02-03 19:09:20 +01:00
Evan You 310cb8cfab chore: fix useSSRContext casing in warning message 2021-01-29 15:03:52 -05:00
Guillaume Chau 4fecb27f86 fix(devtools): send instance to devtools when it's mounted instead of created 2021-01-29 16:48:37 +01:00
Evan You fd16f2bd78 refactor: avoid global scope parentStack 2021-01-15 16:28:55 -05:00
Godpu f2228a87d4
chore: typo (#2953) 2021-01-06 10:46:51 +01:00
underfin 4d9bcb768d
fix(devtools): init devtools in production (#2906) 2021-01-05 12:54:43 -05:00
Evan You 2ea9867398 fix(compiler-sfc): transformAssetUrls.base should not affect known module requests
fix https://github.com/vitejs/vite/issues/1343
2021-01-04 15:10:51 -05:00
Bruno P. Kinoshita ee266af42a
chore: typo "depdendency" (#2920) 2020-12-31 11:15:57 +01:00
Evan You 5a5d037dbb release: v3.0.5 2020-12-30 15:50:28 -05:00
Evan You 8ad1aab068 test(ssr): refactor ssr render tests
Merge renderToString and renderToStream to run the same tests
2020-12-30 15:40:55 -05:00
Evan You 88f6b33d05 fix(ssr): properly handle ssr empty slot and fallback 2020-12-30 15:40:28 -05:00
Guillaume Chau 3626ff07fe feat(devtools): send instance 2020-12-18 18:24:01 +01:00
Cédric Exbrayat dbe22ba356
dx(runtime-core): add selector in mount warning (#2563) 2020-12-04 18:25:13 -05:00
meteorlxy 5b9b37fc9b
fix(compiler-sfc): should keep template nodes with no content (#2468)
close #2463
2020-12-04 18:23:01 -05:00
Joel Denning db786b1afe
fix(compiler-sfc): support transforming asset urls with full base url. (#2477) 2020-12-04 18:20:25 -05:00
Bas van Meurs 3867bb4c14
fix(runtime-core): component mount anchor memory leak (#2459)
fix #2458
2020-12-04 18:03:10 -05:00
edison 82bf7ebf36
refactor(runtime-core): extract common getComponentName function (#2454) 2020-12-04 17:03:03 -05:00
ᴜɴвʏтᴇ b2189ba2f3
fix(runtime-dom): support mounting app on ShadowRoot (#2447)
fix #2399
2020-12-04 16:51:38 -05:00
Evan You 338d869c70 test(compiler-core): test expression transform w/ bindingMetadata 2020-12-04 16:46:00 -05:00
Zcating d2d27b2e66
types(watch): better typing when watching multiple sources (#2425) 2020-12-04 16:32:26 -05:00
edison 47b3652ecd
chore(compiler-core): improve types (#2428) 2020-12-04 16:28:26 -05:00
Carlos Rodrigues 6684c6334d
types: mixin and extends typing on data and setup (#2404)
close #2350
2020-12-04 16:06:34 -05:00
Evan You cbaa380506 fix(transition): ensure manual style manipulation in transition leave hooks work
ref #2720
2020-12-03 16:10:22 -05:00
童欧巴 df48fc225a
chore: fix file path in comments (#2709) [ci skip] 2020-12-03 12:27:03 -05:00
edison c59897c7b0
fix(runtime-core): skip patchBlockChildren if n1.dynamicChildren is null (#2717)
fix #2715 

The bug was introduced by #2485 where a compiled slot may result in a bailed Fragment
which then gets its dynamicChildren set to `null` by the renderer.
2020-12-03 12:17:04 -05:00
Evan You a8352506f6 refactor: cache constant check result on transform context
also fix edge case for missed createVNode import on static svg nodes
2020-12-03 11:10:40 -05:00
Evan You ad4d3915d3 fix(compiler-core): fix missing createVNode import on nested v-for
fix #2718
2020-12-03 11:03:06 -05:00
luwuer 3f8f9b67b3
fix(transition): ensure styles from *-leave-active trigger transition (#2716)
fix #2712
2020-12-03 10:37:47 -05:00
Evan You d067fb2dbb release: v3.0.4 2020-12-02 17:23:43 -05:00
Evan You 3523f743e5 build(deps-dev): handle @types/jest bump 2020-12-02 17:05:30 -05:00
Evan You e315d84936 fix(types): fix ToRefs type on union value types
fix #2687
2020-12-02 14:58:03 -05:00
luwuer e2618a632d
fix(transition): respect rules in *-leave-from transition class (#2597)
fix #2593
2020-12-02 14:41:20 -05:00
Evan You eaf8a67c72 fix(transition): avoid invoking stale transition end callbacks
fix #2482
2020-12-02 12:15:57 -05:00
Evan You fe5428db12 fix(compiler-ssr): handle v-model checkbox with true-value binding 2020-12-01 12:43:59 -05:00
Evan You 48f00c0f1b fix(v-model): respect checkbox true-value/false-value on initial render
fix #2694
2020-12-01 12:02:37 -05:00
Evan You 085bbd5fe0 fix(compiler-sfc): named imports from .vue file should not be treated as constant
fix #2699
2020-12-01 11:52:29 -05:00
Evan You f2b0a8e81d fix(v-model): avoid mutation when using Set models + fix multi select Set model update 2020-12-01 11:40:14 -05:00
Evan You 83a79a829c Revert "fix(v-model): mutate original array for v-model multi checkbox (#2663)"
This reverts commit 87581cd266.

ref: #2700
2020-12-01 11:16:40 -05:00
Evan You 11a76ebd94 chore: fix snapshot 2020-12-01 09:21:39 -05:00
Evan You 4307610c35 chore: fix setRef usage 2020-11-30 20:07:06 -05:00
Evan You 5a19bb5320 refactor(runtime-dom): avoid unnecessary typeof checks during props patching 2020-11-30 20:05:02 -05:00
edison fb6b9f8e8f
fix(runtime-dom): attribute should be removed with nullish values (#2679)
fix #2677
2020-11-30 19:28:03 -05:00
Evan You 64d4681e4b fix(async-component): forward refs on async component wrapper
fix #2671
2020-11-30 18:59:14 -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
Yasser Lahbibi cd92836223
fix(teleport): Teleport into SVG elements (#2648)
fix #2652
2020-11-30 17:30:41 -05:00
hiroki 7a1a782642
fix(provide): support symbols in applyOptions (#2616)
fix #2615
2020-11-30 16:36:02 -05:00
Evan You e4f09c1419 fix(compiler-core/v-on): handle falsy values when caching v-on handlers
fix #2605
2020-11-30 16:30:36 -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 9db7095962 fix(compiler-core): fix scope var reference check for v-on expressions
fix #2564
2020-11-30 15:19:32 -05:00
Evan You e41b46c396 chore: annotate generated slot flag 2020-11-30 15:19:32 -05:00
edison 5f2a8533ac
fix(compiler-sfc): fix parsing error when `lang=""` is used on plain element (#2569)
fix #2566
2020-11-30 14:45:26 -05:00
Evan You bf16a57fc3 fix(runtime-core): handle static node move in production 2020-11-30 14:42:02 -05:00
underfin 2a9ba0c8e9
fix(runtime-core): remove static node in production mode (#2556)
fix #2553
2020-11-30 14:07:43 -05:00
Thorsten Lünborg 421205d0ad
fix(runtime-core): ensure keep-alive deep-watches include/explude props (#2551)
fix #2550
2020-11-30 14:04:45 -05:00
Evan You 67d1aac6ae feat(sfc): allow sfcs to recursively self-reference in template via name inferred from filename
e.g. A file named `FooBar.vue` can refer to itself as `<FooBar/>`. This gets rid of the need for the `name` option.
2020-11-30 12:30:51 -05:00
Evan You 43eab923ea fix(compiler-sfc): should not remove import statements with no specifier when compiling script setup 2020-11-28 13:51:32 -05:00
Evan You a76e58e5fd build: avoid shipping patch flag name strings in prod 2020-11-27 18:13:04 -05:00
Evan You 3bc2914e32 fix(attr-fallthrough): ensure consistent attr fallthrough for root fragments with comments
fix #2549
2020-11-27 18:04:26 -05:00
shadowings-zy 3532b2b021
fix(runtime-core): fix emit listener check on kebab-case events (#2542)
fix #2540
2020-11-27 15:24:29 -05:00
Evan You 2ab8c41a1a fix(slots): dynamically named slots should be keyed by name
fix #2535
2020-11-27 14:35:46 -05:00
Thorsten Lünborg 6e46a574ed
fix(reactivity): ensure add/set on reactive collections return the proxy (#2534)
fix #2530
2020-11-27 14:16:00 -05:00
HcySunYang 0ff2a4f1c1
fix(runtime-core): should pause tracking when initializing legacy options (#2524)
fix #2521
2020-11-27 14:01:01 -05:00
Evan You 5b6266284d fix(compiler-ssr): should not render key/ref bindings in ssr 2020-11-27 12:37:26 -05:00
Evan You a5d6f8091e fix(compiler-ssr): generate correct children for transition-group
fix #2510
2020-11-27 12:22:14 -05:00
Evan You 55d99d729e fix(compiler-core): fix unintended imports in esm-bundler builds
fix #2258, fix #2515
2020-11-27 11:04:15 -05:00
Evan You 46d80f4d58 fix: allow hmr in all builds
close #2571
2020-11-27 10:36:09 -05:00
Thorsten Lünborg 34703082fd
fix(reactivity): ensure readonly on plain arrays doesn't track array methods. (#2506)
fix #2493
2020-11-27 10:24:31 -05:00
Evan You 53f4885d9e fix(runtime-core): skip functional components in public $parent chain traversal
fix #2437
2020-11-27 10:10:25 -05:00
Evan You 7cd85be2db refactor(compiler-core): reduce slot props check iterations
ref: #2490
2020-11-27 10:00:43 -05:00
edison ef59a30cab
fix(compiler-core): transform kebab case props to camelcase on slots (#2490)
fix #2488
2020-11-27 09:48:30 -05:00
Thorsten Lünborg 735af1c7b7
fix(runtime-core): ensure watchers are always registered to correct instance owner (#2495)
close: #2381
2020-11-27 09:31:50 -05:00
HcySunYang ce4915d8be
fix(slots): should render fallback content when slot content contains no valid nodes (#2485)
fix #2347, fix #2461
2020-11-26 11:35:45 -05:00
Evan You cf7f1dbc9b fix(suspense): fix nested async child toggle inside already resovled suspense
fix #2215
2020-11-26 11:06:55 -05:00
Evan You 426a6c996e test: tests for script setup helpers 2020-11-26 10:01:36 -05:00
Evan You 73cdb9d420 fix(script-setup): ensure useContext() return valid context 2020-11-26 09:25:56 -05:00
Evan You bd6e211287 release: v3.0.3 2020-11-25 11:16:21 -05:00
Evan You 6e8482e8d9 chore: fix snapshots 2020-11-25 10:30:29 -05:00
Evan You 69d5c6887e wip: update directive scope variable mapping 2020-11-24 19:04:21 -05:00
Evan You bdc66c7ea4 wip: revert helpers to compiler-only 2020-11-24 19:04:21 -05:00
Evan You faed98972c wip: support inherit-attrs="false" on sfc `<tempalte>` 2020-11-24 19:04:21 -05:00
Evan You 47d73c23e1 wip: defineOptions -> defineProps + defineEmit + useContext 2020-11-24 19:04:21 -05:00
Evan You ae2caad740 wip: support resolving directives from setup scope variables by naming convention
v-my-dir can be resovled from setup scope variable named "vMyDir".
2020-11-24 19:04:21 -05:00
Evan You 9cb74960ac chore: move style vars deprecation warning to a parse error 2020-11-21 23:53:32 -05:00
Evan You ac80ea2c19 chore: warning for outdated hmr api usage 2020-11-21 16:06:50 -05:00
Evan You 90bdf59f4c refactor(compiler): better constant hoist/stringify checks 2020-11-20 19:26:07 -05:00
Evan You acba86ef45 workflow: log options in template-explorer 2020-11-20 17:16:28 -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 58227e88e9 chore: more readme info for compiler-sfc 2020-11-20 14:23:09 -05:00
Evan You 62830f8fa4 wip: better experimental feature warnings 2020-11-19 20:36:15 -05:00
Evan You 9db42889e6 Revert "wip: allow scriptCompiled to be cached on sfc descriptor"
This reverts commit 737ef424a0.
2020-11-19 20:02:27 -05:00
Evan You 6806facfa1 wip: fix default export side effect handling 2020-11-19 16:58:07 -05:00
Evan You 08879cc3b5 wip: fix compileScript script/script-setup co-usage 2020-11-19 16:17:54 -05:00
Evan You a9424354b0 wip: fix cssVars option warning check 2020-11-19 15:32:32 -05:00
Evan You 0e86cbfcf2 wip: fix default export codegen 2020-11-19 15:30:33 -05:00
Evan You 737ef424a0 wip: allow scriptCompiled to be cached on sfc descriptor 2020-11-19 13:08:27 -05:00
Evan You 6541e70acb wip: return empty string if no cssVars are present 2020-11-19 13:08:27 -05:00
Evan You 03b2bfff09 wip: do not return type imports 2020-11-19 13:08:26 -05:00
Evan You 4c6078ce25 fix(compiler-core/compiler-sfc): handle destructure assignment expressions 2020-11-18 22:39:08 -05:00
Evan You 4d5242128e chore: fix tests 2020-11-18 22:34:55 -05:00
Evan You 64160e89cc wip: ignore non-ref const mutation cases in codegen 2020-11-18 21:16:09 -05:00
Evan You 8567feb2aa wip: properly handle assignment/update expressions in inline mode 2020-11-18 19:38:38 -05:00
Evan You 4449fc3b9e refactor: finer grained binding types for setup 2020-11-18 19:38:38 -05:00
Evan You 760443dca6 wip: ensure string template refs work in inline mode 2020-11-18 19:38:38 -05:00
Evan You 27fca66c89 workflow: add inline option to template explorer 2020-11-18 19:38:38 -05:00
Evan You bb343383f2 refactor(compiler-sfc): parse css vars directly as part of sfc descriptor 2020-11-18 19:38:38 -05:00
Evan You cdc9f336fd wip: new cssVars SSR integration + fix cssVars SSR injection for suspense 2020-11-17 18:54:47 -05:00
Evan You 9297410569 chore: remove non-working esm-browser build for compiler-sfc for now 2020-11-17 18:31:49 -05:00
Evan You a67325140b wip: test case for v-model + inline mode codegen 2020-11-17 15:59:09 -05:00
Evan You 94736f7729 wip: css var injection production mode 2020-11-17 15:58:46 -05:00
Evan You f92bc5a19a wip: simplify useCssVars 2020-11-17 13:03:47 -05:00
Evan You dfac6eee99 wip: fix defineOptions specifier removal 2020-11-17 12:50:10 -05:00
Evan You c15bd6235e wip: generate valid v-model and TS code in script setup inline mode 2020-11-17 12:42:58 -05:00
Evan You 6e870f5b30 wip: update sfc style var injection syntax
ref: https://github.com/vuejs/rfcs/pull/231#issuecomment-728993116
2020-11-17 11:43:29 -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 62372e9943 chore: remove unused dep from compiler-sfc 2020-11-16 17:22:59 -05:00
Evan You e521de1663 Merge branch 'script-setup-2' 2020-11-16 15:42:39 -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 cea8b25fed wip: fix useCssVars helper call + tests 2020-11-16 11:35:38 -05:00
Evan You b79a06c605 wip: optimize expose 2020-11-16 11:28:37 -05:00
Evan You a603d56970 wip: make `<script setup>` closed by default 2020-11-14 12:55:21 -05:00
Evan You 468e0d95cf chore: Merge branch 'feat/expose' into script-setup-2 2020-11-14 12:50:32 -05:00
Evan You 0e59770b92 feat(runtime-core): explicit expose API 2020-11-14 12:49:35 -05:00
Evan You 1ff5960971 wip: useOptions -> defineOptions 2020-11-13 17:38:28 -05:00
Evan You 8ba3a7de40 wip: fix dts tests 2020-11-13 00:12:04 -05:00
Evan You 6fc8d5d0ba wip: type inference for useOptions 2020-11-13 00:01:44 -05:00
Evan You 001f8ce993 wip: defineContext -> useOptions 2020-11-12 22:51:40 -05:00
Evan You 292a657861 wip: fix runtimeConstant marking 2020-11-12 22:44:18 -05:00
Evan You 0ca9137188 wip: tests for defineContext() 2020-11-12 18:11:25 -05:00
Evan You 128621d6a0 wip: further optimize bindings 2020-11-12 16:11:14 -05:00
Evan You 6a9b56ca60 wip: defineContext() 2020-11-12 14:10:39 -05:00
Evan You dc098c7f81 wip: defineContext 2020-11-11 19:40:27 -05:00
Evan You 2a4fc32d15 wip: remove unnecessary inlinePropsIdentifier option 2020-11-11 10:36:59 -05:00
Evan You 4e8ef55237 wip: optimize binding access to known imported components 2020-11-10 18:06:38 -05:00
Evan You 4977526a2b wip: correctly resolve component in setup inline mode 2020-11-10 17:36:06 -05:00
Evan You 3019508e75 wip: fix binding type fallback 2020-11-10 17:31:09 -05:00
Evan You 886ed7681d feat(compiler-sfc): compileScript inline render function mode 2020-11-10 16:28:34 -05:00
Evan You 3f99e239e0 feat(compiler-sfc): support kebab-case components in `<script setup>` sfc template 2020-11-09 17:22:58 -05:00
Evan You 8cf0a40d5b chore: update warning and error messages 2020-11-09 17:00:58 -05:00
underfin af9560455d
fix(runtime-core): ensure scheduler queue is always non-null (#2567)
fix https://github.com/vitejs/vite/issues/1021
2020-11-09 09:19:32 -05:00
Evan You 7a3b964a1b chore: only log prod tip in non-bundler builds 2020-11-06 15:07:35 -05:00
Evan You f28ca55692 fix(runtime-dom): use correct import source 2020-11-03 09:54:22 -05:00
Evan You 3cca6bc3a8 chore: fix snapshots 2020-10-30 17:12:15 -04:00
Evan You 6e3abc8605 fix(compiler-sfc): fix script setup ts helpers 2020-10-30 16:56:12 -04:00
Evan You 8485cd4843 fix: handle case of ref declaration without initial value 2020-10-30 15:29:38 -04:00
Evan You ed2eb81317 refactor(compiler-sfc): always parse explicit script setup signature 2020-10-30 12:03:14 -04:00
Evan You 941b645d58 refactor(compiler-sfc): improve compileScript error messages 2020-10-30 11:52:46 -04:00
Evan You 556560fae3 feat(compiler-sfc): new script setup implementation
- now exposes all top level bindings to template
- support `ref:` syntax sugar
2020-10-29 15:03:39 -04:00
Evan You 8e20375372 fix(types): ensure correct type for toRef and toRefs on existing refs 2020-10-27 18:50:34 -04:00
Evan You 9c23ddf9c5 fix(hmr): fix updates for imported but not yet rendered components 2020-10-26 17:52:27 -04:00
Evan You 118502a4b8 chore: comments [ci skip] 2020-10-23 14:37:09 -04:00
Evan You 51e43e0799 fix(runtime-core): components with static props and slots should not be force updated 2020-10-22 17:50:05 -04:00
Evan You f2d03a59c6 release: v3.0.2 2020-10-20 16:24:12 -04:00
Carlos Rodrigues 1f2a652a9d
fix(types): h support for resolveComponent (#2402)
close #2357
2020-10-20 15:56:29 -04:00
HcySunYang fff62e2ee8
fix(runtime-core): non-stable Fragment should always unmount its children (#2445)
fix #2444
2020-10-20 14:59:55 -04:00
Evan You 0227b4a697 fix(suspense): fix suspense nested child updates in template mode
fix #2214
2020-10-20 12:28:02 -04:00
Hunter 128ec460ec
fix(v-model): built in modifiers support on component (#2348)
close #2326
2020-10-20 09:59:27 -04:00
Evan You 4bbb2b2ee6 fix(runtime-core): fix component .once listener logic 2020-10-20 09:50:18 -04:00
Hunter 6d2a1cb64d
fix(compiler-core): fix multiline member expression check (#2436)
fix #2426
2020-10-20 09:31:08 -04:00
ShaoDamao 288c764e52
chore(runtime-core): fix typo (#2442)
Co-authored-by: shaoziwei <ziwei.shao@cloudchef.io>
2020-10-20 08:51:05 +02:00
Hunter 111d04f119
fix(runtime-core): prevent self-injection (#2424)
fix #2400
2020-10-19 20:45:48 -04:00
Eduardo San Martin Morote 314ab2c7c5
fix(compiler): stringify values on v-text (#2432)
fix #2430
2020-10-19 18:12:09 -04:00
被雨水过滤的空气 edd49dcab4
fix(runtime-core): avoid mutating EMPTY_ARR when setting dev root (#2419)
also freeze EMPTY_ARR in dev

fix #2413
2020-10-19 18:08:54 -04:00
neverland e894caf731
types(tsx): svg xmlns attribute typing (#2344) 2020-10-19 17:40:21 -04:00
Evan You 0e5a3c47a7 fix(reactivity): track length on for in iteration on Array
fix #2427
2020-10-19 17:37:35 -04:00
Carlos Rodrigues d9ad45ad6c
types(defineComponent): fix optional Boolean prop types (#2401)
fix #2338
2020-10-19 17:25:55 -04:00
ᴜɴвʏтᴇ 052a621762
feat(compile-core): handle falsy dynamic args for v-on and v-bind (#2393)
fix #2388
2020-10-19 17:15:53 -04:00
龙腾道 ba881f9190
fix(runtime-core): avoid object prototype keys in property access cache (#2416) 2020-10-19 17:11:28 -04:00
Evan You f17f0ddf68 release: v3.0.1 2020-10-15 12:37:21 -04:00
Evan You 9664267793 chore: fix missed type guard from dbc29c32 2020-10-15 12:10:25 -04:00
Evan You dbc29c32e3 build(deps): bump @babel/types from 7.11.5 to 7.12.0 2020-10-15 12:02:20 -04:00
Evan You 3aabd59de1 build(deps): bump postcss-selector-parser from 6.0.2 to 6.0.4 2020-10-15 11:52:30 -04:00
underfin e78915a740
fix(hmr): full diff props for non-sfc component (#2359)
close #https://github.com/vitejs/vite/issues/872
2020-10-15 11:05:12 -04:00
Hunter 962af85220
test(runtime-core): inject from closest ancestor (#2329) 2020-10-13 16:31:13 -04:00
ᴜɴвʏтᴇ 6df3675548
test(runtime-core): improve test for #2295 (#2309) 2020-10-13 16:29:23 -04:00
underfin 02f355eb69
fix(v-for): handle and warn when `v-for` receives non-integer range number (#2247)
close #2245
2020-10-13 16:28:24 -04:00
Mathieu TUDISCO 8539c0bf32
fix(compiler-ssr): fix SSR issue when dynamic and static class co-exist (#2354) 2020-10-13 16:25:15 -04:00
Pick 6a554feb13
perf(runtime-dom/vModel): remove looseHas if model is Set (#2236) 2020-10-13 16:20:05 -04:00
Lory Lee 6b8cf998c4
chore: add missing space in warning message (#2266) [ci skip] 2020-10-13 16:18:22 -04:00
edison af1f5d33aa
refactor(reactivity): remove `keyIsSymbol` (#2262) 2020-10-13 16:17:52 -04:00