Commit Graph

2747 Commits

Author SHA1 Message Date
Evan You
c32760147c wip: relay compiler-core warnings in compiler-sfc with codeframe 2021-05-05 14:24:46 -04:00
Evan You
7f93c76b96 wip: exclude legacy slots from $scopedSlots 2021-05-05 11:06:15 -04:00
Evan You
5278e0622a wip: more private properties 2021-05-05 09:47:14 -04:00
Evan You
7e6a76e587 wip: enable private vnode properties even for built-ins 2021-05-04 18:26:28 -04:00
Evan You
ae0fb14305 wip: fix native template compat 2021-05-04 18:26:28 -04:00
Evan You
7c1e665215 wip: root instance $destroy before $mount 2021-05-04 18:26:28 -04:00
Evan You
4d62670d3d wip: vm._data for vuex compat 2021-05-04 18:26:28 -04:00
Evan You
80303bcf5a wip: compat test coverage 2021-04-30 18:05:03 -04:00
Evan You
324a00c85d wip: test for global filter registration 2021-04-30 17:16:47 -04:00
Evan You
bd3cc4d2c7 wip: tests for compiler compat 2021-04-30 15:50:32 -04:00
Evan You
b4c92ccf6b wip: move compat test cases + filter tests 2021-04-29 16:58:14 -04:00
Evan You
bb76cfae12 wip: test for v-model compat 2021-04-29 16:22:39 -04:00
Evan You
6db7c00b42 wip: test for legacy component compat 2021-04-29 15:51:37 -04:00
Evan You
3963f2e963 wip: more tests for v2 compat 2021-04-29 14:45:22 -04:00
Evan You
d3d9355c5a wip: test for instance and options compat 2021-04-28 17:21:05 -04:00
Evan You
d0dd6674bb wip: fix isCustomElement 2021-04-28 12:36:08 -04:00
Evan You
cd33714935 chore: Merge branch 'v2-compat' 2021-04-28 12:30:57 -04:00
Evan You
c27f01bc74 wip: tests for global config compat 2021-04-28 12:29:51 -04:00
Evan You
ce0bbe053a feat: support component-level compilerOptions when using runtime compiler
- The `delimiters` component option is deprecated.
  Use `compilerOptions.delimiters` instead.
2021-04-28 11:40:16 -04:00
Evan You
e486254431 fix(compiler-core): preserve comment content in production when comments option is enabled 2021-04-28 11:22:16 -04:00
Evan You
1d1af403ca wip: tests for global api compat 2021-04-27 17:34:19 -04:00
Evan You
86703c23a6 wip: ref v-for compat 2021-04-26 17:35:41 -04:00
Evan You
3e815be24e wip: fix tests 2021-04-26 17:35:30 -04:00
Evan You
5913e01d6b wip: whitespace behavior compat 2021-04-26 12:21:36 -04:00
Evan You
091e6d67bf feat(config): support configuring runtime compiler via app.config.compilerOptions
- `config.isCustomElement` is deprecated - use `app.config.compilerOptions.isCustomElement` instead.
2021-04-26 11:46:29 -04:00
Evan You
b047a0864c refactor(compiler): improve whitespace: 'preserve' behavior from #1600
- discard leading/ending whitespace inside an element
- condense preserved whitesapce into single space
2021-04-26 11:46:17 -04:00
CodeDaraW
dee3d6ab8b feat(compiler-core): whitespace handling strategy 2021-04-26 09:44:27 -04:00
sallycn
b46d8578fd
chore: fix typo in assertion 2021-04-26 17:57:15 +08:00
Guillaume Chau
03ae3006e1 feat(devtools): improved KeepAlive support
This change allows the devtools to access the cached vnodes from the KeepAlive component in order to display them as inactive in the components tree
2021-04-23 16:52:28 +02:00
Evan You
7b37f78dc9 wip: add private api compat flag 2021-04-22 17:50:49 -04:00
Evan You
6f8fe4eac9 wip: more compat tweaks 2021-04-22 17:30:54 -04:00
Evan You
7e0224aa8c wip: more compat tweaks 2021-04-22 14:59:54 -04:00
Evan You
98bc9a26e9 wip: more compat tweaks 2021-04-22 09:49:25 -04:00
Evan You
12abd4af85 wip: class/style fallthrough compat 2021-04-21 22:04:26 -04:00
Evan You
a75b00c558 wip: treat compat model listener as already declared 2021-04-21 19:13:26 -04:00
Evan You
5566d39d46 perf: only trigger $attrs update when it has actually changed 2021-04-21 19:05:20 -04:00
Evan You
66b6b4226b chore: include component info in recursive update warning 2021-04-21 15:20:15 -04:00
Evan You
1b8f14ee76 wip: more compat progress 2021-04-21 15:09:18 -04:00
Evan You
62b8f4a39c fix(watch): avoid traversing non-plain objects 2021-04-20 17:13:58 -04:00
Evan You
f6dee53270 wip: compat integration progress 2021-04-20 09:25:12 -04:00
zhaozhao
060c5f1d0a
chore: adjust the parameter order of the mountChildren function 2021-04-20 13:43:19 +08:00
Evan You
7dc681c196 wip: filters compat 2021-04-19 12:29:55 -04:00
Evan You
467076361a wip: warn against <template functional> 2021-04-17 23:51:40 -04:00
Evan You
3ea68691e2 wip: inline-template compat 2021-04-17 23:19:40 -04:00
Evan You
1390ece04f wip: refactor 2021-04-17 22:50:16 -04:00
Evan You
505269405e wip: plain template tag compat 2021-04-17 22:16:48 -04:00
Evan You
048ac299f3 perf(compiler): skip unncessary checks when parsing end tag 2021-04-17 22:05:18 -04:00
Evan You
2c31227e7c wip: warn v-bind object ordering 2021-04-17 20:53:55 -04:00
Evan You
bf41354abd wip: remove unncessary deprecation messages 2021-04-17 16:13:57 -04:00
Evan You
810fe4d583 wip: default mode for compat build 2021-04-17 16:05:27 -04:00
Evan You
c5c304af14 wip: compiler should default to v3 behavior 2021-04-17 15:55:14 -04:00
Evan You
3528ced0b4 wip: warn key usage of v-if branches 2021-04-17 15:35:44 -04:00
Evan You
ab21468982 wip: warn v-if/v-for co-usage 2021-04-17 14:38:30 -04:00
Evan You
7ceb873783 wip: v-bind.sync compat 2021-04-16 17:11:44 -04:00
Evan You
ad97bbab85 wip: invert compiler compat behavior default during tests 2021-04-16 12:26:17 -04:00
Evan You
bbf708dbe9 wip: support configuring compiler deprecations at runtime + warn invalid deprecation configs 2021-04-16 12:19:12 -04:00
Evan You
79cbf21c3e wip: generate codeframe for compiler deprecations 2021-04-16 11:51:47 -04:00
Evan You
d974adb327 wip: is usage compat 2021-04-16 11:43:05 -04:00
kiyon
7a8bac73e1
chore: fix typo in test case description 2021-04-16 10:43:56 +08:00
Evan You
e130c7db23 wip: compiler deprecation config 2021-04-12 19:43:53 -04:00
Evan You
115372dd5b wip: refactor deprecations into a single file 2021-04-12 18:47:50 -04:00
Evan You
af9e6999e1 feat: support casting plain element to component via is="vue:xxx"
In Vue 3's custom elements interop, we no longer process `is` usage on
known native elements as component casting. (ref:
https://v3.vuejs.org/guide/migration/custom-elements-interop.html)
This introduced the need for `v-is`. However, since it is a directive,
its value is considered a JavaScript expression. This makes it awkward
to use (e.g. `v-is="'foo'"`) when majority of casting is non-dynamic,
and also hinders static analysis when casting to built-in Vue
components, e.g. transition-group.

This commit adds the ability to cast a native element to a Vue component
by simply adding a `vue:` prefix:

```html
<button is="vue:my-button"></button>
<ul is="vue:transition-group" tag="ul"></ul>
```
2021-04-12 13:08:07 -04:00
Evan You
422b13e798 wip: testing compiler deprecation warnings 2021-04-12 09:09:00 -04:00
edison
7db8c9c19a
chore: use isArray to keep the code consistency 2021-04-12 18:31:11 +08:00
Evan You
24bab94a72 wip: staticStyle and staticClass 2021-04-11 22:21:10 -04:00
Evan You
62bfdae043 wip: Vue.util compat 2021-04-11 16:53:43 -04:00
Evan You
c55f3ed0e8 wip: fix render fn compat detection 2021-04-11 11:15:40 -04:00
Evan You
a2f441dc0e wip: refactor compat check utils 2021-04-09 23:51:50 -04:00
Evan You
7a25cbb7a7 wip: fix compat utils usage 2021-04-09 23:21:54 -04:00
Evan You
183f9b0013 wip: component v-model compat 2021-04-09 23:10:29 -04:00
Evan You
f05d6dfd98 wip: render function compat 2021-04-09 18:56:31 -04:00
Evan You
457a56e331 wip: compat for legacy functional component 2021-04-09 15:14:14 -04:00
Evan You
d71c488540 chore: fix dts 2021-04-08 17:15:02 -04:00
Evan You
3db29eb773 wip: support per-component compatConfig 2021-04-08 17:11:05 -04:00
Evan You
f8e2361d83 wip: make tests pass again 2021-04-08 16:33:53 -04:00
Evan You
18cf63ff05 wip: async component compat 2021-04-08 16:11:28 -04:00
Evan You
d7957a7440 wip: tweak warning dedupe logic 2021-04-08 11:09:40 -04:00
Evan You
d4af747a50 wip: $attrs class/style warning 2021-04-08 10:41:25 -04:00
Evan You
c9a93a5c4c wip: $scopedSlots compat 2021-04-08 10:21:14 -04:00
Evan You
960e9deaed wip: vm.$listeners compat 2021-04-08 10:06:12 -04:00
Evan You
c1e5cfe7d6 wip: attr coersion compat 2021-04-07 17:42:03 -04:00
Evan You
cf6bcdf895 wip: transition group root compat 2021-04-07 16:19:25 -04:00
Evan You
1c2c77eb9f wip: apply compat enabled flags to currently implemented features 2021-04-07 16:19:25 -04:00
Evan You
208bef5d97 wip: watch array compat 2021-04-07 16:19:25 -04:00
Evan You
e2fc84c773 wip: compat configuration 2021-04-07 16:19:24 -04:00
Evan You
068d93b9e5 wip: keyCode compat 2021-04-07 16:19:24 -04:00
Evan You
2784d6615d wip: $children compat 2021-04-07 16:19:24 -04:00
Evan You
db09805688 wip: instance event emitter api compat 2021-04-07 16:19:24 -04:00
Evan You
9828ef0845 wip: transition class compat 2021-04-07 16:19:24 -04:00
Evan You
926e12862b wip: fix root data option compat 2021-04-07 16:19:24 -04:00
Evan You
3d810eb422 wip: basic compat test 2021-04-07 16:19:24 -04:00
Evan You
47b765d63a wip: custom directive compat 2021-04-07 16:19:24 -04:00
Evan You
d619a770a8 wip: props default this compat 2021-04-07 16:19:24 -04:00
Evan You
65cc649559 wip: beforeDestroy & destroyed compat 2021-04-07 16:19:24 -04:00
Evan You
960e0943f7 wip: config.ignoredElements compat 2021-04-07 16:19:24 -04:00
Evan You
d0da0028f2 wip: data option compat 2021-04-07 16:19:24 -04:00
Evan You
53b8127a9c wip: progress 2021-04-07 16:19:24 -04:00
Evan You
40e3dd28e1 wip: restructure compat code + global api alignment 2021-04-07 16:19:24 -04:00
Evan You
e2d6ff845b wip: root mount api compat 2021-04-07 16:19:24 -04:00
Evan You
24850a99c6 wip: initial compat build setup 2021-04-07 16:19:24 -04:00
Evan You
870f2a7ba3 fix(watch): this.$watch should support watching keypath 2021-04-07 16:19:04 -04:00
Eduardo San Martin Morote
0f2d8f3244
test: typo in spy (#3556) 2021-04-07 14:19:12 +02:00
Evan You
4fe4de0a49 fix(runtime-core): ensure declare prop keys are always present
fix #3288
2021-04-01 20:25:12 -04:00
Evan You
f0cf14bcc5 release: v3.0.11 2021-04-01 19:52:45 -04:00
Evan You
c1cd42e627 fix(runtime-core): fix v-on object kebab-case event emit matching
fix #3527
2021-04-01 19:47:58 -04:00
HcySunYang
995d76bd12
fix(runtime-core): fix render function + optimized slot edge case (#3523)
fix #2893

Manually rendering the optimized slots should allow subsequent updates to exit the optimization mode correctly
2021-04-01 19:28:58 -04:00
Cédric Exbrayat
c90fb945f4
refactor(sfc-playground): modes declaration (#3522) 2021-04-01 18:37:50 -04:00
Evan You
7f7dcc9f7d fix(compiler-sfc): fix wrong scopeId for nested <script setup> components 2021-04-01 18:11:04 -04:00
edison
8c57b9131d
chore(types): use NormalizedStyle for consistency (#2590) 2021-04-01 11:29:24 +08:00
Evan You
4dc457dae5 workflow(sfc-playground): make it work in safari and ff 2021-03-31 15:23:01 -04:00
Evan You
5ee7e6bc70 workflow(sfc-playground): support import map 2021-03-31 13:31:00 -04:00
Evan You
e097bd4dd5 chore(sfc-playground): use svg logo 2021-03-31 12:36:45 -04:00
Evan You
7bc5fd9a04 chore(sfc-playground): teardown preview update watcher 2021-03-31 12:22:25 -04:00
Evan You
ebf396251c chore(sfc-playground): responsive 2021-03-30 22:10:18 -04:00
Evan You
9d39cd46e9 workflow(sfc-playground): support selecting versions 2021-03-30 22:00:46 -04:00
Evan You
ad6c124e6c release: v3.0.10 2021-03-30 20:05:45 -04:00
Evan You
9cf75258c8 fix(runtime-core): fix dev fragment root flag check 2021-03-30 19:55:05 -04:00
Evan You
66b94dc5e1 chore: use alias instead of module field
...before we figure out what is the ideal behavior when adding exports field
2021-03-30 19:51:55 -04:00
Evan You
58e2376c4d refactor(ssr): adjust ssr scope id logic for client-compiled render functions 2021-03-30 19:30:05 -04:00
Evan You
5e54081d5b fix(ssr): fix scopeId inheritance across mixed parent chain
fix #3513
2021-03-30 18:39:42 -04:00
Evan You
6cab91dfe8 workflow(sfc-playground): clear errors in edge cases 2021-03-30 12:49:50 -04:00
Evan You
b6298dbd01 workflow(sfc-playground): warn on <style module> usage 2021-03-30 12:39:08 -04:00
Evan You
c771b1dc80 workflow(sfc-playground): add ssr compile output 2021-03-30 12:36:59 -04:00
edison
2e50acfbb8
perf(runtime-core): optimize the performance of getTypeIndex (#3206) 2021-03-30 10:53:14 -04:00
Evan You
c8df6185fe chore: bump vite 2021-03-29 21:44:12 -04:00
Evan You
b39208cf06 perf(compiler-sfc): skip srcset transform if all candidates are external 2021-03-29 19:15:57 -04:00
HcySunYang
33ba0e3229
fix(runtime-dom): fix event listeners call in firefox <= 53 (#3501)
fix #3485
2021-03-29 19:15:12 -04:00
Jonas Kruckenberg
42b68c773d
fix(compiler-sfc): fix missing whitespace issue in srcsets (#3132)
fix #3069
2021-03-29 18:28:22 -04:00
Calvin Liang
0fe567abfc
fix(compiler-core): properly transform replaced nodes (#2927) 2021-03-29 18:08:10 -04:00
HcySunYang
5db2b141dc
fix(types): add a type-only differentiator to assist Mixin's type infer (#3481)
fix #3468
2021-03-29 18:07:36 -04:00
liaoliao666
c61e767422
fix(reactivity): should not trigger when setting value to same proxy (#2904) 2021-03-29 17:52:57 -04:00
Kael
4f26835dac
fix(types/tsx): make JSX.Element extend VNode (#3171) 2021-03-29 17:38:25 -04:00
Evan You
bb8cdcad9f fix(compiler-sfc): support proper type arguments for defineEmit helper
fix #2874
2021-03-29 16:38:07 -04:00
Evan You
2793bc0918 chore(sfc-playground): use type defineEmit 2021-03-29 16:36:40 -04:00
Evan You
f5827fdf78 fix(compiler-sfc): do not resolve assets from setup bindings
when not using script setup

fix #3270, fix #3275
2021-03-29 16:11:38 -04:00
Evan You
4d9f9fdf9d workflow(sfc-playground): make warnings dismissable 2021-03-29 16:11:38 -04:00
Evan You
7ab519cc96 workflow(sfc-playground): pass along analyzed bindings when compiling template 2021-03-29 16:11:38 -04:00
Evan You
4d2853ef57 workflow(sfc-playground): display analyzed bindings in js output 2021-03-29 16:11:38 -04:00
HcySunYang
555b016dcb
fix(compiler-core): allow PascalCase dynamic component tag usage (#3508)
fix #3507
2021-03-29 15:18:25 -04:00
HcySunYang
3736496006
fix(runtime-core): avoid unmount teleport's children multiple times (#3499)
fix #3497
2021-03-29 15:15:08 -04:00
Evan You
117a61bc17 chore(sfc-playground): fix clipboard usage 2021-03-29 10:54:32 -04:00
Evan You
24a90abeda chore(sfc-playground): logo, responsive 2021-03-29 10:33:19 -04:00
Evan You
3aaa53748b workflow(sfc-playground): tweaks and commit links 2021-03-29 02:07:04 -04:00
Evan You
69b4727204 fix(compiler-sfc): fix function scope variable declaration marking 2021-03-29 00:32:46 -04:00
Evan You
bb937e9033 workflow(sfc-playground): attach filename 2021-03-29 00:32:28 -04:00
Evan You
ce5e0b67a9 workflow(sfc-playground): fix download 2021-03-28 23:48:01 -04:00
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