Commit Graph

1362 Commits

Author SHA1 Message Date
Evan You
f7a7e8d71d refactor(parser): remove ignoreSpaces option 2019-10-24 12:47:29 -04:00
相学长
abfb2ec8ed types(reactivity): computed types remove as (#367) 2019-10-24 11:37:52 -04:00
Evan You
42bf9ca3e5 feat(props): enable case conversion in all builds, preserve casing for attrs 2019-10-24 10:59:57 -04:00
Evan You
e2917fef96 feat(props): kebab -> camel prop case support in full build 2019-10-23 21:51:01 -04:00
Evan You
af5a8e1154 feat(compiler-core): re-implement v-once to use cache mechanism 2019-10-23 17:57:40 -04:00
Evan You
9291011456 chore: comments [ci skip] 2019-10-23 15:19:55 -04:00
Dmitry Sharshakov
3b613cbecd test(template-refs): add tests for function refs (#359) 2019-10-23 11:54:50 -04:00
Mayness
18a349ce8c fix(reactivity): account for NaN in value change checks (#361) 2019-10-23 11:53:43 -04:00
Cr
246cad7459 fix(reactivity): Map.set should trigger when adding new entry with undefined value (#364) 2019-10-23 11:00:55 -04:00
Evan You
09c248ae87 chore: fix snapshot 2019-10-23 10:57:05 -04:00
Evan You
113339c7b6 fix(compiler-dom): style transform of static styles should not add STYLE patchFlag 2019-10-23 10:49:16 -04:00
大江东去
7cd1b7fcaf test(compiler-dom): test namespace parsing (#356) 2019-10-23 10:35:45 -04:00
edison
9dcbf17f3a perf(runtime-core): use makeMap instead of RE (#350) 2019-10-23 10:34:58 -04:00
likui
e34d2bd853 types: improve slots type (#366) 2019-10-23 09:29:09 -04:00
Evan You
590e4e0ba9 chore: fix DebuggerEvent export 2019-10-22 11:53:32 -04:00
Evan You
af57ad110f chore: revert prettier 2019-10-22 11:53:32 -04:00
Evan You
b5886189ba types: massive refactor 2019-10-22 11:53:32 -04:00
Cr
a23e03f01e feat(apiOptions): add warning for duplicated properties declared by options (#329) 2019-10-21 23:47:16 -04:00
Evan You
a25b1371ab types: improve types 2019-10-21 23:37:03 -04:00
Evan You
bc0ec27739 chore: reference link 2019-10-21 16:46:47 -04:00
Evan You
5023dff60c feat: update svg tag list 2019-10-21 16:39:37 -04:00
Evan You
bb85aefc03 chore: move dom element config to compiler-dom 2019-10-21 16:25:16 -04:00
Evan You
052febc127 feat(compiler): convert text mixed with elements into createVNode calls
This ensures they are tracked as dynamic children when inside blocks.
Also guaruntees compiled vnodes always have vnode children in arrays
so that they can skip normalizeVNode safely in optimized mode.
2019-10-21 15:52:29 -04:00
Evan You
a0d570b16d Revert "feat(compiler-core): hoist element with static ref (#344)"
Static refs still need to be tracked in dynamicChildren because unmount
also takes the fast path when dynamicChildren is present, and all refs
need to be properly unmounted.

This reverts commit 920773fc6b.
2019-10-21 15:17:29 -04:00
likui
f85ba092ce types: improve emit type (#345) 2019-10-21 14:04:42 -04:00
Jooger
67eb29f63b refactor(errorHandlling): handle array in callWithAsyncErrorHandling (#332) 2019-10-21 13:59:10 -04:00
Dmitry Sharshakov
74d8c5919d types: improve computed types (#343) 2019-10-21 13:57:20 -04:00
Dmitry Sharshakov
1f4937c2fd types: use RenderFunction type (#342) 2019-10-21 13:44:01 -04:00
Evan You
520af9787b perf: skip normalizeVNode in optimized mode 2019-10-21 12:24:19 -04:00
Evan You
8be578b6b6 perf: micro optimizations for vnode creation 2019-10-21 11:30:45 -04:00
Evan You
40ccbdeaac chore: remove refs from setupContext
explicit refs should be preferred
2019-10-21 10:36:38 -04:00
Evan You
4abd8d29ef chore: fix merge conflict 2019-10-21 10:33:10 -04:00
HcySunYang
920773fc6b feat(compiler-core): hoist element with static ref (#344) 2019-10-21 10:29:17 -04:00
Dmitry Sharshakov
27f3c2d751 chore: fix typo (#339) 2019-10-21 10:04:34 -04:00
Evan You
f241c92917 chore: remove todo 2019-10-21 10:04:02 -04:00
Evan You
1b9bd6912e perf: v-for fragments do not need to track dynamicChildren 2019-10-21 10:00:45 -04:00
HcySunYang
71f3826f99 chore: rename & property missing (#335) 2019-10-21 10:00:23 -04:00
Evan You
6f9692dcdd chore: cache isStaticNode result for missing branch 2019-10-20 17:01:01 -04:00
Evan You
869ae19c41 fix(compiler): cache handlers should be per-instance, fix hoist w/ cached handlers 2019-10-20 17:00:11 -04:00
Dmitry Sharshakov
39157f7671 chore: fix ci (#338) 2019-10-19 20:03:15 -04:00
Evan You
58593c4714 feat(v-on): cache handlers 2019-10-18 21:51:34 -04:00
Evan You
39ea67a2d2 chore: rename v-on guard constants 2019-10-18 16:36:42 -04:00
Evan You
e98a85f3cb refactor: applyDirectives -> withDirectives 2019-10-18 16:35:01 -04:00
Evan You
cba34453db refactor(v-on): avoid empty modifier guard with only key modifier 2019-10-18 16:20:45 -04:00
Evan You
d69d3bf765 fix(reactivity): revert to Reflect.get and add test cases 2019-10-18 15:31:28 -04:00
Dmitry Sharshakov
068902abec types: fix createComponent type when using simple function (#334) 2019-10-18 14:58:15 -04:00
Evan You
b5194b16bf refactor: rename vnode hooks
So that they can be used as @vnodeMounted="..." in templates
2019-10-18 14:54:35 -04:00
扩散性百万甜面包
3cd2f7e68e types: fix ref unwrapping when nested inside arrays (#331) 2019-10-18 14:54:05 -04:00
Dmitry Sharshakov
2238925fbe feat(core): validate directives names (#326) 2019-10-18 12:34:45 -04:00
edison
60961ef5b6 perf(reactivity): optimize the performance of the canObserve (#330) 2019-10-18 12:11:58 -04:00
宋铄运
7f23eaf661 feat(core): support dynamic component via <component :is> (#320) 2019-10-18 12:09:04 -04:00
Evan You
d179918001 perf: further tweak accessCache 2019-10-17 22:29:51 -04:00
Dmitry Sharshakov
7305f693b1 refactor(runtime-core): extract promise check into shared (#325) 2019-10-17 15:47:26 -04:00
大江东去
bb9dca2047 test(compiler-core): add test for custom delimiter (#315) 2019-10-17 15:04:52 -04:00
Evan You
e3b68972d8 perf: minor tweaks 2019-10-17 15:02:15 -04:00
Evan You
4771319a15 perf(core): cache property access types on renderProxy 2019-10-17 15:02:15 -04:00
Evan You
cdee65aa1b perf: revert to _isRef for perf
Benchmarking shows checking for a plain property is about 4~5x faster
than checking for a Symbol, likely because the Symbol does not fit well
into V8's hidden class model.
2019-10-17 15:02:14 -04:00
Carlos Rodrigues
6c80e13986 chore: typos [ci-skip] (#323) 2019-10-17 15:01:51 -04:00
Evan You
1722dc05c5 fix(runtime-core): handle dynamicChildren when portal is used as a block 2019-10-16 17:43:41 -04:00
Evan You
4b2b29efa1 feat(compiler-core): support Suspense in templates 2019-10-16 17:43:41 -04:00
Evan You
e97951dd2e feat: emit compiler error for invalid JavaScript expressions 2019-10-16 17:43:41 -04:00
Evan You
b980ddb607 perf: skip hasScopeRef check if there are no scope vars 2019-10-16 15:35:04 -04:00
Evan You
d69db0b2fd feat(compiler-core/v-slot): only force dynamic slots when referencing scope vars
This feature is only applied with prefixIdentifiers: true.
2019-10-16 15:35:04 -04:00
Evan You
5e97643c85 feat(compiler-core/v-model): generate modelModifiers for component v-model 2019-10-16 15:35:04 -04:00
Evan You
25dd507f71 feat(compiler-core/v-model): error when v-model is used on scope variable 2019-10-16 15:35:04 -04:00
Evan You
5481f76ce8 feat(compiler-core/v-model): avoid patching v-model handler when possible 2019-10-16 15:35:04 -04:00
Carlos Rodrigues
48b79d02e8 perf(runtime-core): use faster diff map population (#319) 2019-10-16 15:34:51 -04:00
Evan You
6a75c3463b feat(compiler-core): do not generate TEXT flag if child is constant 2019-10-16 12:00:55 -04:00
Carlos Rodrigues
6607edab2d refactor(compiler-core): avoid has call (#314) 2019-10-16 10:46:41 -04:00
Evan You
b20b922d99 perf(v-for): use faster array population in renderList 2019-10-16 10:42:25 -04:00
xiaoboost
32499b16e7 types: improve typing (#309) 2019-10-16 10:31:40 -04:00
Carlos Rodrigues
b54c05f751 types: improve typing (#313) 2019-10-16 10:15:03 -04:00
Ruijia Tang
3e51200bae chore: Remove unnecessary console.log (#312) 2019-10-16 10:11:13 -04:00
Dmitry Sharshakov
0bac763f5a feat(directives): add support for function directives (#252) 2019-10-16 02:12:26 -04:00
Tidyzq
a72652f6e6 refactor(reactivity): immediate return (#301) 2019-10-16 01:58:11 -04:00
likui
29811d1fe8 test(compiler-dom): add test for vModel transform (#289) 2019-10-16 01:47:58 -04:00
Evan You
6f3e768d52 refactor: use makeMap in v-on dom transform 2019-10-15 22:29:52 -04:00
Evan You
65a0207c7b test: test runtime compilation error warning 2019-10-15 22:19:19 -04:00
Jian Zhang
cf12d18b4b refactor(runtime-core): isBuiltInTag -> use makeMap instead of Set (#307) 2019-10-15 22:18:55 -04:00
月迷津渡
f71bf2f1d3 feat: add isCustomElement option (#299) 2019-10-15 17:30:47 -04:00
宋铄运
db5c343c33 test(runtime-dom): add test coverage for v-on runtime guards, fix "exact" guard (#298) 2019-10-15 17:08:43 -04:00
HcySunYang
3385480ba7 fix(compiler-core): avoid prefixing empty interpolations (#290) 2019-10-15 16:58:01 -04:00
Adam Lewkowicz
555e3be69d types(watch): allow readonly arrays for watching multiple sources (#281) 2019-10-15 16:44:14 -04:00
Carlos Rodrigues
0b2573f3d1 types(runtime-dom): cast to the correct eventType instead of any (#292) 2019-10-15 12:26:19 -04:00
MichealXie
a3032b9b39 types: use Omit instead of Pick + Exclude (#296) 2019-10-15 12:24:16 -04:00
Cr
8eba1aba08 feat(vModel): warn if v-model is used on file input (#295) 2019-10-15 12:23:38 -04:00
Evan You
74d501829c chore: use webpack-compatible pure annotation 2019-10-15 12:22:32 -04:00
Evan You
7de3aee317 fix: ensure makeMap calls are tree-shakable 2019-10-15 12:19:46 -04:00
Ayush Goyal
58fffcb987 refactor(core): use makeMap for faster string match checks (#282) 2019-10-15 12:11:08 -04:00
Evan You
e3b14f5904 chore: comments grammar 2019-10-15 12:02:12 -04:00
edison
b5209277de refactor(reactivity): define hadKey if necessary (#288) 2019-10-15 11:59:40 -04:00
Evan You
4cee06ddab refactor(compiler-core): follow up on #276 2019-10-15 11:51:52 -04:00
HcySunYang
68a3879b88 feat(compiler-core): more hoisting optimizations (#276) 2019-10-15 11:41:24 -04:00
夜宴
9a37c4b2c3 refactor(effect): use includes instead of indexOf (#286) 2019-10-15 11:18:26 -04:00
fisker Cheung
1fbb4d22fa chore: use const instead of let (#283) 2019-10-14 23:15:36 -04:00
fisker Cheung
e5d60a0f7a types: use hook type in options (#284) 2019-10-14 23:15:09 -04:00
Evan You
c7074c703e refactor(v-on): do not generate persistent flag when no listener modifier is present 2019-10-14 23:06:51 -04:00
Evan You
2d6d5d4517 chore: move events.spec.ts 2019-10-14 17:46:30 -04:00
Evan You
2b3d5b3f96 chore: move vModel.spec.ts 2019-10-14 17:45:15 -04:00
Evan You
8df3e0a41e refactor: move looseEqual to vModel 2019-10-14 17:40:56 -04:00
Evan You
004223ade6 chore: use consistent type signature 2019-10-14 17:12:02 -04:00
Stanislav Lashmanov
b4eeb2fa1b test(runtime-dom): vModel tests (#255) 2019-10-14 17:07:34 -04:00
月迷津渡
66023a8886 feat: runtime component name validation (#217) 2019-10-14 15:36:29 -04:00
Dmitry Sharshakov
fd209f5a66 feat(core): export version (#254) 2019-10-14 15:31:43 -04:00
terencez
4547d85a38 feat(compiler-core): support <portal> in template (#203) 2019-10-14 15:11:04 -04:00
Evan You
37cbd0098d chore: lint + include tsx files for lint 2019-10-14 15:07:43 -04:00
Evan You
6b3ad95fa4 fix(watch): type inference for computed refs 2019-10-14 12:15:09 -04:00
Cr
6bd26636c3 test: add test for resolveAsset (#273) 2019-10-14 11:56:02 -04:00
Evan You
1c56d1bf19 test: test unwrapping computed refs 2019-10-14 11:21:09 -04:00
Jooger
d8b2b9eb9c types(ref): improve UnwrapRef types (#266) 2019-10-14 11:02:49 -04:00
Cr
d2bcedb213 feat(apiOptions): warn invalid computed options (#225) 2019-10-14 02:15:31 -04:00
Evan You
82b5978e9c build: further shave off runtime compile only code 2019-10-14 01:08:00 -04:00
宋铄运
57a94b530d feat(dom): transform + runtime for v-on (#213) 2019-10-14 00:33:23 -04:00
Jooger
312907c9d8 refactor(scheduler): replace try catch with callWithErrorHandling (#264) 2019-10-14 00:32:01 -04:00
fisker Cheung
70a142c203 refactor(runtime-core): programmatically create lifecycle APIs for DRYness (#246) 2019-10-13 23:18:34 -04:00
Dmitry Sharshakov
7fd1fdde28 refactor(scheduler): minor refactors (#240) 2019-10-13 22:41:23 -04:00
Dmitry Sharshakov
374a85b861 types: improve directive typing (#253) 2019-10-13 22:40:29 -04:00
Evan You
8e5ea98ccd
Revert "chore: remove useless else (#245)" (#257)
This reverts commit 971cebc61c.
2019-10-12 22:52:11 -04:00
fisker Cheung
971cebc61c chore: remove useless else (#245) 2019-10-12 20:12:09 -04:00
likui
46e64b257c feat(compiler-core/runtime-core): show codeframe in runtime compile errors (#220) 2019-10-12 19:49:23 -04:00
Dmitry Sharshakov
78d1821e24 refactor(componentProxy): simplify proxy handling (#214) 2019-10-12 19:44:30 -04:00
Natalia Tepluhina
5d98c51b74 chore: use name const consistently (#249) 2019-10-12 19:43:36 -04:00
fisker Cheung
cdc143d348 refactor(runtime-core): use Array.from instead of loop over iterable (#250) 2019-10-12 19:34:22 -04:00
Sangeeth Sudheer
96681942c1 types: remove unnecessary types (#234) 2019-10-12 19:33:48 -04:00
fisker Cheung
9371e65187 refactor(runtime-dom): use findIndex instead of loop (#244) 2019-10-12 19:32:47 -04:00
Evan You
a7eefaff1e refactor(runtime-dom): remove xlink support since it's been deprecated 2019-10-12 19:25:04 -04:00
Jooger
675ce2c15d types(reactivity): fix ref typing (#239) 2019-10-12 11:05:34 -04:00
Sharvilak
ed5a42e588 refactor(runetime-core): removed unnecessary condition check (#237) 2019-10-12 11:00:29 -04:00
Cong Min
ec05469b1a chore: use Boolean to filter empty (#228) 2019-10-12 10:55:35 -04:00
Cr
64c7be3763 chore: remove redundant type cast (#230) 2019-10-12 10:46:10 -04:00
HcySunYang
4587f4f7c9 chore: consistent call to the newline function (#222) 2019-10-12 10:30:39 -04:00
Cr
f3760f7d34 types: add missing properties to ComponentPublicInstance interface (#218) 2019-10-12 10:30:21 -04:00
Chester
e68321eac0 chore: use '' instead of undefined (#205) 2019-10-11 22:04:33 -04:00
Evan You
14aabf0f98 feat(v-model): number/trim modifier + array checkbox support 2019-10-11 20:35:25 -04:00
Evan You
acf406b779 fix(compiler-core): fix directive args with empty holes 2019-10-11 20:35:01 -04:00
Evan You
59e18e5478 fix(runtime-dom): cast to true for boolean props 2019-10-11 18:59:39 -04:00
Evan You
b0156b5df3 chore: improve formatting 2019-10-11 18:07:18 -04:00
Evan You
1b06b3c424 perf: avoid parentNode call when dynamic child is not a Fragment 2019-10-11 18:06:24 -04:00
Evan You
a42ad6cc9d feat(runtime-dom): v-model directive runtime 2019-10-11 17:55:34 -04:00
Leonardo Piccioni de Almeida
a371b2ec0e chore: fix typo (#216) 2019-10-11 15:09:57 -04:00
Illya Klymov
e32da9169b fix(runtime-core): support object syntax for class (#215) 2019-10-11 15:09:37 -04:00
Evan You
5f28708cb9 test(vnode): tests for shapeFlag and cloneVNode 2019-10-11 11:48:20 -04:00
Evan You
e57d686b9a test(vnode): tests for normlaizeVNode 2019-10-11 11:41:28 -04:00
Evan You
95d7e1f471 feat: log on the fly template compilation error 2019-10-11 11:16:20 -04:00
Illya Klymov
584ac88b54 fix(compiler): update v-if directive to use Comment instead of Empty (#208) 2019-10-11 11:04:55 -04:00
Evan You
35d31a2ba2 chore: remove duplicate helperNameMap entry 2019-10-11 10:49:35 -04:00
Evan You
9ad7ae479e fix(compiler): export COMMENT instead EMPTY runtime helper 2019-10-11 10:47:59 -04:00
Carlos Rodrigues
a84490858f test(compiler-dom): add DOM compiler integration compile test (#189) 2019-10-11 10:13:55 -04:00
Cr
3cdefdbe2d test: add array of objects class test case for mergeProps (#201) 2019-10-11 10:13:04 -04:00
herochen
056764ce47 chore: typo (#198) 2019-10-11 09:59:52 -04:00
Evan You
ba4e6e5b4d test: make dom events spec more stable 2019-10-10 22:02:41 -04:00
Dmitry Sharshakov
26ab5f62cd test(runtime-test): add more tests (#194) 2019-10-10 21:53:15 -04:00
Evan You
e6d0d08a43 test(compiler): test for DirectiveTransform returning needRuntime: Symbol 2019-10-10 18:05:43 -04:00
Evan You
d376439167 wip(compiler-dom): v-model runtime 2019-10-10 18:02:51 -04:00
Evan You
145559e170 chore: remove debugger 2019-10-10 15:37:28 -04:00
Adam Dorling
497ed19277 chore: remove copy-paste comment from v-cloak (#193) 2019-10-10 14:54:50 -04:00
月迷津渡
78f60347dc feat(compiler): add isNativeTag option for determining element type (#139) 2019-10-10 14:54:06 -04:00
Evan You
46d875f4e8 fix(runtime-core): use correct parentNode when patching dynamicChildren (close #98) 2019-10-10 14:49:35 -04:00
Evan You
58772c62f6 workflow: persist template explorer state via localStorage 2019-10-10 14:08:28 -04:00
Dmitry Sharshakov
1139368dc2 types: improve writable computed types (#192) 2019-10-10 14:08:12 -04:00
月迷津渡
f71d252ffe fix(compiler-core): assest id (#190)
* fix(compile-core): asset id

* test(compile-core): asset id
2019-10-10 13:55:26 -04:00
Cédric Exbrayat
4ca32c537d test(compiler): fix copy paste in v-once spec (#191) 2019-10-10 13:54:22 -04:00
相学长
cbb4b19cfb feat(reactivity): ref(Ref) should return Ref (#180) 2019-10-10 11:34:42 -04:00
Illya Klymov
80f5cb2700 fix(compiler): do not hoist element with dynamic key (#187) 2019-10-10 11:19:17 -04:00
Evan You
f11dadc1d2 refactor(compiler): improve member expression check for v-on & v-model 2019-10-10 11:15:24 -04:00
Rahul Kadyan
87c3d2edae feat(compiler-core): create transform for v-model (#146) 2019-10-10 10:33:58 -04:00
二当家的
99bdc5a8c8 chore: correct typo (#188) 2019-10-10 10:26:13 -04:00
Carlos Rodrigues
8cb56ddb81 feat: added transformVText to directiveTransform (#182) 2019-10-10 10:18:19 -04:00
terencez
d10b28ae0e refactor(runtime-core): make h() support single vnode child (#181) 2019-10-10 10:17:16 -04:00
唐道海
b7b89505eb test(reactivity/effect): add test for lazy option (#179) 2019-10-10 10:12:27 -04:00
Cr
211f5b7a45 test: add more complete test for componentProxy (#174) 2019-10-10 10:02:55 -04:00
Evan You
2967745e7b refactor: use early return style in v-for 2019-10-09 22:31:27 -04:00
Evan You
93c6aa4c90 feat: v-once
Note: only compiler transform is tested - integration with runtime
still needs to be tested.
2019-10-09 17:32:58 -04:00
Evan You
5dfb271551 feat(compiler): implement support for v-pre 2019-10-09 16:00:08 -04:00
Stanislav Lashmanov
08df965e3c feat(runtime-dom): support event options (#149) 2019-10-09 15:05:21 -04:00
Evan You
954f3f7560 chore: format globals whitelist 2019-10-09 14:16:11 -04:00
Tim van den Eijnden
0177355242 fix: add warnings (#82)
* fix: add warnings

- invalid watch handler path
- attempting to mutate readonly computed value
- attempt of mutating public property
- attempt of mutating prop

* fix: more descriptive warnings + details

* fix: test apiOptions warnings

* fix: update warning in componentProxy

* fix: update warnings in componentProxy & apiOptions

* fix: update warning in componentProxy

* fix: implemented tests for componentProxy

* fix: remove comment + small refactor
2019-10-09 14:03:21 -04:00
扩散性百万甜面包
def27239bd type: improve typing (#177) 2019-10-09 14:01:53 -04:00
Evan You
8f1475b8dd refactor(reactivity): use NOOP for readonly computed setter in production 2019-10-09 12:22:08 -04:00
Dmitry Sharshakov
530be302fc feat(computed): warn if trying to set a readonly computed (#161) 2019-10-09 12:20:53 -04:00
terencez
7963c01a67 types(runtime-core): simplify types in createComponentInstance() (#170) 2019-10-09 12:17:42 -04:00
terencez
dadfb27eed refactor(reactivity): prefer to use effect symbol and add isEffect() (#169) 2019-10-09 12:16:29 -04:00
terencez
ff68db46ea fix(reactivity): avoid triggering effect when deleting property returns false (#168) 2019-10-09 11:55:57 -04:00
Cr
b9a4d8d088 refactor(reactivity): use function isSymbol instead of typeof (#155) 2019-10-09 11:49:23 -04:00
Evan You
b255f42ab3 types: fix error inference for public compile method 2019-10-09 11:30:56 -04:00
蓝色的秋风
f97d6e7d63 refactor(shared): use Array literal instead of split for global whitelist Set creation (#173) 2019-10-09 11:28:52 -04:00
Evan You
f91d335e65 feat(compiler): v-text transform + move dom-specific errros codes to compiler-dom 2019-10-09 11:13:13 -04:00
Adam Dorling
21441830dd feat(compiler-dom): v-cloak transform (#141) 2019-10-09 10:41:31 -04:00
Tim van den Eijnden
b107401e71 test(vnode): partial tests for vnode creation (#116) 2019-10-09 10:28:43 -04:00
Rahul Kadyan
19c65a61ea refactor(compiler-core): use directive name in error code identifier (#163) 2019-10-09 10:27:24 -04:00
Evan You
723dc8791b workflow: make template-explorer error tolerant 2019-10-08 17:31:22 -04:00
Evan You
0615cf0108 refactor(compiler): flush transform onExit in reverse 2019-10-08 16:53:26 -04:00
Evan You
e8ee163fdd chore: remove unnecessary type cast 2019-10-08 15:58:35 -04:00
Evan You
eadcaead37 feat(compiler-dom): transform for v-html 2019-10-08 15:35:57 -04:00
扩散性百万甜面包
80e5b16f99 types: improve type 'ReactiveEffect' with generics (#99) 2019-10-08 13:48:13 -04:00
Evan You
8da5b007b1 types: improve typing 2019-10-08 12:43:13 -04:00
Evan You
b68eb229c7 types: move scopeIds into PrefixMeta 2019-10-08 12:09:22 -04:00
Evan You
f15528350e test: test expression transform for reserved literals 2019-10-08 11:27:48 -04:00
Evan You
b4d375b0b8 fix(compiler): should not prefix reserved literals (close #142) 2019-10-08 11:25:38 -04:00
夜宴
8d10096d24 test(reactivity): check for key in entries iteration (#152) 2019-10-08 11:00:20 -04:00
Evan You
16da9ae89f fix(compiler): handle block nodes with custom directives + improve ast types 2019-10-08 10:50:10 -04:00
Evan You
1393ee52ca types: improve typing 2019-10-08 10:50:10 -04:00
扩散性百万甜面包
016231d09f types: improve type for WatchHandler (#160) 2019-10-08 10:48:24 -04:00
Evan You
57a5c61320 test: tests for hoistStatic 2019-10-07 17:12:22 -04:00
Evan You
802ecccc49 refactor: give runtimeHelper symbols more readable names during dev 2019-10-07 13:32:29 -04:00
Evan You
3146e6b942 fix(compiler/v-if): avoid incorrect transform application on v-else/else-if branch children 2019-10-07 12:48:43 -04:00
Evan You
caaeaff2fd refactor(runtime-dom/events): use more explicit variable name to avoid shadowing 2019-10-07 10:57:35 -04:00
Stanislav Lashmanov
6d5c12b63a fix(runtime-dom/events): fix wrong scope for event value (#117) 2019-10-07 10:56:24 -04:00
Kyle Hall
fd1d7833e2 test(runtime-core): createSlots method (#119) 2019-10-06 20:19:44 -04:00
Alexander Zibert
4605f43b95 test(reactivity): fixed small copy & paste error (#140) 2019-10-06 20:18:47 -04:00
Andrew / Kana
c6b7afcc23 types: use recursion for unwrapping refs (#137) 2019-10-06 20:11:52 -04:00
月迷津渡
4fc2174dce workflow(template-explorer): improve types (#128) 2019-10-06 11:55:23 -04:00
Carlos Rodrigues
8d70093802 refactor(reactivity): change _isRef to use refSymbol as key (#124) 2019-10-06 11:46:08 -04:00
Evan You
12b7557e8f chore: remove no longer necessary global Vue 2019-10-06 11:39:20 -04:00
Stanislav Lashmanov
b7a9c25f14 fix: expose Vue to compiled template (#120)
This removes the reliance on `Vue` being exposed as a global.
2019-10-06 11:38:05 -04:00
扩散性百万甜面包
d2d32d3810 refactor: rename param on function watch (#134) 2019-10-06 11:27:09 -04:00
月迷津渡
5eacfaf210 fix(reactivity): explicitly do type conversions in warning strings (#129) 2019-10-06 11:26:33 -04:00
Carlos Rodrigues
3d975247cd types: cleanup some unnecessary typing in reactivity (#126) 2019-10-06 11:22:32 -04:00
Evan You
31345b5af9 workflow(template-explorer): persist compilerOptions 2019-10-05 23:29:14 -04:00
Jordan Pittman
a8c82909fa test: Add tests for some runtime helpers (#87)
* test for `renderList`
* test for `toHandlers`
2019-10-05 23:22:42 -04:00
Evan You
c4f9b6d592 test: fix import 2019-10-05 23:20:02 -04:00
Evan You
82bd9eb1db refactor(compiler): refine codegen node types 2019-10-05 22:48:13 -04:00
Evan You
bfecf2cdce refactor(compiler): use symbols for runtime helpers 2019-10-05 22:48:13 -04:00
Rahul Kadyan
f58e5e96f2 types: Use unique symbol type for _isRef property of ref object (#118) 2019-10-05 22:32:50 -04:00
扩散性百万甜面包
caa9297da6 refactor: move writable check out of computed setter (#112) 2019-10-05 15:48:05 -04:00
扩散性百万甜面包
0bdee72e17 feat(reactivity): use Symbol for Ref._isRef (#114) 2019-10-05 15:46:36 -04:00
Andrey Sukhonosov
de9507b6ff fix(compiler/codegen): add simple expression node opening bracket for ConditionalExpression (#110) 2019-10-05 15:42:49 -04:00
扩散性百万甜面包
842f235ede chore: fix typo (#108) 2019-10-05 15:39:47 -04:00
Carlos Rodrigues
8133b3867a test: improve tests and typing for runtime-core (#100)
* test: add test case for declaring Array prop type with constructor casting in `createComponent`

* test: add test case for `setup(props)` with explicit props declaration
2019-10-05 15:37:55 -04:00
Vladimir
f48a2ffc76 chore: fix typos (#103) 2019-10-05 10:48:54 -04:00
扩散性百万甜面包
ec8f7c6375 chore: simplify code in apiWatch.ts (#101) 2019-10-05 10:44:02 -04:00
Carlos Rodrigues
600ec5de42 chore: improve typings in reactivity tests (#96) 2019-10-05 10:39:40 -04:00
Carlos Rodrigues
fbabae0c0a chore: replace some type casts and fix variable and filename typos (#93) 2019-10-05 10:38:02 -04:00
Carlos Rodrigues
23ff681418 chore: fix comment typos (#94) 2019-10-05 10:35:19 -04:00
zrh122
12abcba2c5 chore: fix typo in codegen (#92) 2019-10-05 10:29:50 -04:00
taiyop
a84a2b252d chore: fix typo in vBind.ts (#91) 2019-10-05 10:26:32 -04:00
夜宴
eaf4f67c62 chore: spelling mistake in ast.ts (#88) 2019-10-05 10:23:25 -04:00
扩散性百万甜面包
5c1e42f754 types: improve type 'Ref' (#105) 2019-10-05 10:10:37 -04:00
月迷津渡
9d6783053c types: simplify types (#104) 2019-10-05 10:09:34 -04:00
Reed Jones
ca70aff860 chore: fix docs typo in vOn.ts (#86) 2019-10-04 23:12:49 -04:00
Evan You
21666243e9 fix(compiler): props hoist should also work on elements w/ TEXT flag 2019-10-04 22:51:51 -04:00
Evan You
9c9ef609d8 fix: import patchFlags from @vue/shared in compiler instead
Otherwise this imports unnecessary stuff from the runtime.
2019-10-04 22:47:09 -04:00
Evan You
a0f442f1d4 workflow: include commit link in template explorer 2019-10-04 22:40:54 -04:00
Martin Rojo
ea4a352ee6 fix(typo): transformSlotOutlet name correction (#83) 2019-10-04 22:12:51 -04:00
Evan You
6dfb62e1ac workflow: use CDN deps for template explorer so it can be easily deployed 2019-10-04 17:55:55 -04:00
Evan You
0873254c6c workflow: improve template explorer 2019-10-04 17:43:20 -04:00
Evan You
277651ce89 fix(compiler): avoid hoisting components and directive calls 2019-10-04 14:34:26 -04:00
Evan You
5047bc8dbe workflow: basic template explorer 2019-10-04 13:08:17 -04:00
Evan You
b61d9652dd chore: shorten option name 2019-10-04 09:03:00 -04:00
Evan You
caccf92721 test: fix vbind tests 2019-10-04 08:38:53 -04:00
Evan You
6059fe69e8 fix(compiler): patchFlag analysis should factor in props returned by directive transforms 2019-10-04 08:37:10 -04:00
Evan You
095f5edf8d feat(compiler): hoist static trees 2019-10-03 23:30:25 -04:00
Evan You
2e2b6924da feat(compiler): v-on inline statement handling 2019-10-03 17:47:00 -04:00
Evan You
3354837ce1 refactor: move transformStyle to compiler-dom 2019-10-03 16:55:14 -04:00
Evan You
c2fc7e3347 feat(compiler): force dynamicSlots flag when inside v-for or v-slot 2019-10-03 16:27:46 -04:00
Evan You
4dea23f79e fix(compiler): exclude BAIL flag in annotations 2019-10-03 15:17:45 -04:00
Evan You
227ad034f0 feat(compiler/slot): bail out of optimization mode for non-compiled slots 2019-10-03 15:09:09 -04:00
Evan You
05db2a9c6c wip(compiler): adjust renderSlot() signature 2019-10-03 14:29:12 -04:00
Evan You
306c22efe1 feat(compiler): mark compiler-generated slots for runtime 2019-10-03 14:08:14 -04:00
Evan You
aa9245d55c feat(compiler): render <slot/> as block fragments 2019-10-03 12:03:14 -04:00
Evan You
fc47029ed3 feat(compiler): support v-for on named slots 2019-10-02 23:10:41 -04:00
Evan You
f401ac6b88 refactor: improve vSlot.ts readability 2019-10-02 18:03:42 -04:00
Evan You
3d14265102 feat(compiler): handle conditional v-slot 2019-10-02 17:18:11 -04:00
Evan You
e90b83600a test(compiler): tests for RootNode codegen transform 2019-10-02 14:03:28 -04:00
Evan You
24bd6c27e0 feat(compiler): block optimization codegen for RootNode 2019-10-02 13:11:07 -04:00
Evan You
b33f0ceff1 refactor(compiler): switch to acorn 2019-10-02 11:05:56 -04:00
Evan You
9c9dd73017 chore: fix outdated patchFlag 2019-10-02 10:59:47 -04:00
Evan You
bec01c93bd fix(compiler): v-for fragments should be blocks 2019-10-02 10:47:01 -04:00
Evan You
191db785bd refactor: use global whitelist for render proxy has check 2019-10-02 10:37:06 -04:00
Evan You
d87255ce46 fix(options): data options should preserve original object if possible 2019-10-02 10:03:43 -04:00
Evan You
5ab1d75c39 fix(options): fix renderTriggered option translation 2019-10-02 09:46:29 -04:00
Evan You
fe36555d9e feat(compiler): generate TEXT patchFlag 2019-10-02 00:19:23 -04:00
Evan You
3a95a2f148 fix(compiler): generate correct fragment children when it contains single text node or slot outlet 2019-10-01 23:53:52 -04:00
Evan You
a477594d65 feat(compiler): v-for codegen w/ correct blocks optimization + key flags 2019-10-01 23:19:48 -04:00
Evan You
07955e6c96 test(compiler): tests for v-for codegen w/ block optimization 2019-10-01 21:00:55 -04:00
Evan You
65661b5ec0 test: restructure v-if & v-for tests 2019-10-01 17:58:09 -04:00
Evan You
4fc963bc5a feat(compiler): annotate patchFlags in generated code 2019-10-01 17:53:57 -04:00
Evan You
e5bc17967d wip(compiler): codegen node w/ block optimization for v-for 2019-10-01 16:48:20 -04:00
Evan You
aa134e7a4f test(compiler): codegen tests for Sequence & Conditional expressions 2019-10-01 15:43:59 -04:00
Evan You
ed111cd37b test(compiler): tests for vIf codegen w/ blocks optimization 2019-10-01 15:05:08 -04:00
Evan You
5de744d4e1 wip(compiler): generate blocks for v-if 2019-10-01 12:25:29 -04:00
Evan You
e31fb3c172 wip: Sequence & Conditional expressions for AST 2019-10-01 12:25:29 -04:00
Evan You
d67418002f feat(compiler): generate patchFlags for runtime 2019-09-30 21:17:12 -04:00
Evan You
da0d785d84 test: record snapshots for text optimization 2019-09-30 14:58:20 -04:00
Evan You
e5e40e1e38 feat(compiler): optimize text by merging adjacent nodes 2019-09-30 14:52:10 -04:00
Evan You
7ee07447c5 wip: drop class opt for now + move lazy requires to utils 2019-09-30 14:52:10 -04:00
Evan You
46bd9dbab0 perf: avoid using WeakSet for isRef check 2019-09-30 14:52:10 -04:00
Evan You
7f06981f7c perf: using a _isVNode field is faster than a weakset 2019-09-30 14:52:10 -04:00
Evan You
389a07835c feat(compiler): handle complex destructure expressions in v-for 2019-09-28 16:02:08 -04:00
Evan You
798a9cbe9b test: improve coverage 2019-09-28 14:15:10 -04:00
Evan You
1c410205de test(compiler): test v-slot transform 2019-09-28 14:05:10 -04:00
Evan You
96749e0178 test: test slotFunction codegen 2019-09-28 13:12:41 -04:00
Evan You
a792d697a3 refactor: simplify slot extraneous child check 2019-09-28 01:35:49 -04:00
Evan You
6461b3853e refactor(compiler): split slot / slot outlet / slot scope handling into separate transforms 2019-09-28 00:19:24 -04:00
Evan You
6377af483b fix(compiler): improve auto prefixing cases 2019-09-27 23:20:26 -04:00
Evan You
262be6733c wip(compiler): tweak codegen, avoid duplicated asset resolution, improve formatting 2019-09-27 22:49:20 -04:00
Evan You
32666c7708 feat(compiler): transform component slots 2019-09-27 22:25:32 -04:00
Evan You
ee66ce78b7 feat(compiler): transform slot outlets 2019-09-27 20:29:20 -04:00
Evan You
d900c13efb refactor(compiler): separate Interpolation, SimpleExpression & CompoundExpression types 2019-09-27 11:42:02 -04:00
Evan You
d491a022a7 refactor(compiler): provide context.resetMapping() 2019-09-27 09:25:52 -04:00
Rahul Kadyan
a407b16b2b fix(compiler): generate correct mappings for v-for and object properties (#69) 2019-09-27 09:19:03 -04:00
Evan You
63b6902bdb feat(compiler): correct source map generation 2019-09-26 14:55:53 -04:00
Evan You
2e3a1ff3c3 fix: do not use lookbehind regex yet 2019-09-26 12:22:31 -04:00
Evan You
7c030ee899 build: adjust compiler-core export to avoid collision 2019-09-26 11:51:04 -04:00
Evan You
3bba461128 feat(compiler): include names in source map 2019-09-26 10:14:02 -04:00
Evan You
ac7587fdb5 test: compiler integration tests 2019-09-25 22:29:37 -04:00
Evan You
b5d21aeff7 test: test for transformStyle 2019-09-25 21:02:46 -04:00
Evan You
6c8f226a79 fix: fix source map by fixing advancePositionWithMutation 2019-09-25 19:17:45 -04:00
Evan You
ff2313e43a wip(compiler): adjust statement positions 2019-09-25 15:09:58 -04:00
Evan You
b43f3b61b7 feat(compiler): transformStyle + context.hoist 2019-09-25 14:13:33 -04:00
Evan You
3e8cd3f25f wip(compiler): property deduping 2019-09-25 12:39:46 -04:00
Evan You
f79433cbb3 feat(compiler): include ast in compile result 2019-09-25 09:23:34 -04:00
Evan You
d6852c5669 chore: fix comment 2019-09-25 07:30:14 -04:00
Evan You
61be769ce6 test: move source map test to compile.spec.ts 2019-09-24 23:01:57 -04:00
Evan You
af585081b1 test: test the right branches of code 2019-09-24 22:56:57 -04:00
Evan You
642a44f8f0 chore: fix browser build treeshaking for transformExpression 2019-09-24 22:50:00 -04:00
Evan You
84909648e7 test: tests for v-on transform 2019-09-24 22:39:20 -04:00
Evan You
597ada36ed test: tests for v-bind transform 2019-09-24 22:03:28 -04:00
Evan You
6ad84614f7 feat: renderList helper for v-for 2019-09-24 21:32:29 -04:00
Evan You
9b06e04e0f feat: v-on with no argument 2019-09-24 20:51:48 -04:00
Evan You
0707fa5d21 test: more coverage 2019-09-24 16:40:32 -04:00
Evan You
cae03f616d test: improve coverage 2019-09-24 16:35:01 -04:00
Evan You
e67084e5a1 chore: test todos 2019-09-24 15:51:52 -04:00
Evan You
7a46e51815 test: tests for codegen 2019-09-24 15:49:02 -04:00
Evan You
76a1196935 feat(runtime): support rendering comment nodes 2019-09-24 14:37:14 -04:00
Evan You
f5b3f580f1 test: finish tests for transformExpression 2019-09-24 12:13:08 -04:00
Evan You
4a82e7cdbc wip: test for transformExpression 2019-09-24 12:13:08 -04:00
Evan You
dcf4764360 test: test transformElements 2019-09-23 20:45:40 -04:00
Evan You
c20975ec68 test: refactor vIf tests 2019-09-23 17:31:11 -04:00
Evan You
f0d4eec946 test: refactor vFor tests 2019-09-23 17:16:07 -04:00
Evan You
b3b67b8c7d feat(compiler): ensure interpolation expressions are wrapped with toString() 2019-09-23 15:36:30 -04:00
Evan You
e09e887219 fix: handle nested scope identifiers 2019-09-23 13:56:56 -04:00
Evan You
88e5e96a3e refactor: useWith -> prefixIdentifiers 2019-09-23 13:29:52 -04:00
Evan You
e57cb51066 feat(compiler): expression prefixing + v-for scope analysis 2019-09-23 13:29:52 -04:00
Evan You
b04be6a561 wip: fix transform order 2019-09-23 13:29:52 -04:00
Evan You
bb8524e199 wip: expression rewrite 2019-09-23 13:29:52 -04:00
Evan You
70656690e2 chore: fix todo 2019-09-23 13:29:52 -04:00
Evan You
8076ce1f28 feat(compiler): handle runtime helper injection 2019-09-22 23:07:36 -04:00
Evan You
914087edea feat(compiler): basic v-bind & v-on transforms 2019-09-22 22:19:42 -04:00
Evan You
3ab016e44f wip: improve v-if & v-for codegen output formatting 2019-09-22 21:10:22 -04:00
Evan You
e8463f1198 chore: rename test dir 2019-09-22 20:56:24 -04:00
Evan You
0af0febfc2 fix: make sure v-if and v-for work together 2019-09-22 20:55:18 -04:00
Evan You
3415bbd823 wip: improve v-if codegen output formatting 2019-09-22 17:06:46 -04:00
Evan You
9c01e0bf0d fix(transform): transform should still apply even when node is removed 2019-09-22 17:02:32 -04:00
Evan You
3a177a18d2 feat(compiler): element codegen 2019-09-22 16:50:57 -04:00
Evan You
40307d9642 chore: fix parserOptions usage of props 2019-09-22 13:05:19 -04:00
Evan You
3f05315d17 test: fix tests 2019-09-21 17:48:17 -04:00
Evan You
baa8954884 feat(compiler): element transform 2019-09-21 17:42:12 -04:00
Evan You
93440bba97 wip: element transforms 2019-09-21 15:47:26 -04:00
Haoqun Jiang
b275f8697d test: add tests for rendererChildren (#52)
* test: [wip] add tests for rendererChildren

* chore: use serializeInner for clearer output

* fix: should remove the text node if content is empty

* test: also test for appended content

* test: inserting & removing

* test: moving children

* refactor: use a helper function

* test: finish tests

* test: duplicate keys tests belong to keyed children block

* fix(runtime-test): fix insert when moving node in the same parent

* fix: fix failing test cases for rendererChildren

* test: handle rendererChildren edge case
2019-09-20 18:17:35 -04:00
Evan You
c78d47b788 feat(compiler): set sourcesContent for source map 2019-09-20 12:19:52 -04:00
Evan You
8a923f6a52 refactor: move compile into compiler-core 2019-09-20 12:16:19 -04:00
Evan You
3e1973f065 test: test on-the-fly compilation 2019-09-20 00:56:02 -04:00
Evan You
3ddd121b19 feat: on-the-fly template compilation 2019-09-20 00:24:16 -04:00
Evan You
d7aab859a3 feat: expose compiler APIs 2019-09-20 00:12:37 -04:00
Evan You
3b5ef483a9 build: move named char references to json file to speed up build 2019-09-19 23:19:48 -04:00
Evan You
9b1a548c6b feat(compiler): basic codegen with source map support 2019-09-19 23:05:51 -04:00
Evan You
98571ab496 perf(compiler): further improve advanceBy perf 2019-09-19 21:18:18 -04:00
Evan You
2b4f06b24c test(compiler): transformIf 2019-09-19 15:41:17 -04:00
Evan You
81fd694dd7 perf: avoid cloning in parser advanceBy 2019-09-19 13:59:24 -04:00
Evan You
4c3e7e331a refactor: cleanup unused variables in vFor 2019-09-19 13:48:32 -04:00
Evan You
06c890c336 test: update snapshots 2019-09-19 13:40:08 -04:00
Evan You
1f96d2348f chore: nest v-for tests 2019-09-19 13:36:27 -04:00
Evan You
5f49018601 test(compiler): tests for ast transform 2019-09-19 13:24:02 -04:00
Rahul Kadyan
10c1a2b332 feat(compiler-core): add parser transform for v-for directive (#65)
* feat(compiler-core): add parser transform for v-for directive

* fix: Include source location for expressions

* chore: remove comment

* refactor(compiler-core): extract hepler functions to utils
2019-09-19 13:23:49 -04:00
Evan You
bbb57c26a2 feat(compiler): basic transform implementation 2019-09-17 19:08:47 -04:00
Evan You
a5c1b3283d chore: avoid object.freeze in prod 2019-09-17 16:23:29 -04:00
Evan You
f595b006c2 chore: regex caching makes no difference 2019-09-17 12:26:09 -04:00
Evan You
132cef9063 refactor: further tweak compiler layers 2019-09-17 11:57:37 -04:00
Evan You
6c14b409ca refactor: move dom-specific options to compiler-dom 2019-09-17 11:57:37 -04:00
Evan You
54b200fe54 wip: layout compiler files 2019-09-16 16:31:54 -04:00
Evan You
ca387afeea chore: more restructuring 2019-09-16 15:27:40 -04:00
Evan You
16fa44bd57 chore: organize file structure 2019-09-16 15:11:45 -04:00
Evan You
1c8f5b612a feat(compiler): scaffold compiler-dom 2019-09-16 15:06:45 -04:00
Evan You
86ae92303d feat(compiler): port parser implementation based on work by @znck and @mysticatea 2019-09-16 14:43:29 -04:00
Evan You
54a78f3856 chore: remove unnecessary enum initial value 2019-09-16 13:15:20 -04:00
Evan You
95e796fdb6 test: fix suspense tests in Node 12 2019-09-14 12:13:51 -04:00
Evan You
a83ee65e30 fix: fix reactivity cjs entry 2019-09-14 11:26:53 -04:00
Evan You
1c628d0b79 feat: re-suspense when encountering new async deps in resolved state 2019-09-12 12:16:01 -04:00
Evan You
4b3567035a test: further improve suspense combined test case 2019-09-12 10:40:17 -04:00
Evan You
dfcf494483 test: more comprehesive combined suspense test 2019-09-12 10:31:56 -04:00
Evan You
3b1d87efbe test: test suspense error handling 2019-09-12 01:52:14 -04:00
Evan You
b378b17076 chore: remove unnecessary code 2019-09-12 00:37:44 -04:00
Evan You
b30b17d22d test: test nested suspense & nested async deps 2019-09-11 23:44:37 -04:00
Evan You
bbc3442c52 refactor: move resolveSuspense out 2019-09-11 17:38:26 -04:00
Evan You
6dc91971d1 wip(suspense): discard side effects when content is unmounted before resolve 2019-09-11 13:22:18 -04:00
Evan You
ccfcdb8746 test: more tests for suspense 2019-09-11 11:10:14 -04:00
Evan You
dff4e7cd44 fix: patching a component with pending async setup should update its props and slots 2019-09-11 11:10:13 -04:00
Evan You
356a01780b wip: watcher callback handling inside suspense 2019-09-11 11:10:13 -04:00
Evan You
51914c76e8 wip: do not fire lifecycle hooks when already unmounted 2019-09-11 11:10:13 -04:00
Evan You
6bc368b2b6 wip: only buffer suspense effects when unresolved 2019-09-11 11:10:13 -04:00
Evan You
9ef987830d wip: suspense buffer effects 2019-09-11 11:10:13 -04:00
Evan You
42967f1f5a wip: pass proper args to patchDOMProp 2019-09-11 11:10:13 -04:00
Evan You
2677c91aba wip: pass suspense down as argument 2019-09-11 11:10:13 -04:00
Evan You
0fff3a6ef5 wip: handle suspense as component root el update 2019-09-11 11:10:13 -04:00
Evan You
3959a2a2e1 test: test suspense fallback 2019-09-11 11:10:13 -04:00
Evan You
a16c87be63 wip: suspense refactor 2019-09-11 11:10:13 -04:00
Evan You
c9e625864a wip: retry suspense async deps from resolved dep instead of root 2019-09-11 11:10:13 -04:00
Evan You
0d176ebf2a test: update test 2019-09-11 11:10:13 -04:00
Evan You
bd15138ef5 test: basic test for suspense 2019-09-11 11:10:13 -04:00
Evan You
e688e69b1f wip: handle move and unmount for suspense 2019-09-11 11:10:13 -04:00
Evan You
d5e9682040 wip: suspense feature flag 2019-09-11 11:10:13 -04:00
Evan You
7e70acf9c2 chore: todos 2019-09-11 11:10:13 -04:00
Evan You
02bb156314 wip: somewhat working suspense 2019-09-11 11:10:13 -04:00
Evan You
1dc9d81e3e wip: suspense 2019-09-11 11:10:13 -04:00
Evan You
cc748db33b chore: comments 2019-09-11 11:10:13 -04:00
Evan You
8b3aa60a18 wip: suspense ideas 2019-09-11 11:10:13 -04:00
Evan You
02e9fe3f7d types: fix typing 2019-09-07 11:45:32 -04:00
Evan You
7950980dc3 fix: handle prev children is null in patch element 2019-09-07 11:42:07 -04:00
Evan You
3904678306 types: use stricter HostNode typings 2019-09-06 16:58:32 -04:00
Evan You
360f3b4f37 types: improve type exports 2019-09-06 12:58:31 -04:00
Evan You
d87bed0138 refactor: split componentRenderUtils 2019-09-06 11:25:11 -04:00
Evan You
0f25c29119 refactor: reorganize component related code and types 2019-09-06 11:19:22 -04:00
Evan You
4c075803b5 test: test for app.mixin & warnHandler 2019-09-05 20:59:45 -04:00
Evan You
891f21b010 refactor: extract hasOwn helper 2019-09-05 20:48:14 -04:00
Evan You
7eed0df3c2 wip: $data should only expose properties from data() 2019-09-05 20:36:35 -04:00
Evan You
94a05561f8 feat: fix all cases for h and options type inference 2019-09-05 18:48:49 -04:00
Evan You
6c7cbb0dc9 types: avoid plain objects with value being mistaken as refs 2019-09-05 18:32:19 -04:00
Evan You
9b90e673e8 wip: improve options typing 2019-09-05 16:09:30 -04:00
Evan You
369b9eb583 types: props validation for h 2019-09-05 11:11:33 -04:00
Evan You
81a31f79dc feat: created/beforeCreate 2019-09-05 10:20:40 -04:00
Evan You
a6de6daa17 wip: disable tracking in all hooks 2019-09-04 18:20:47 -04:00
Evan You
13298bc4fa test: test for options API 2019-09-04 18:16:11 -04:00
Evan You
7cd33587ba types: errorCaptured can return void 2019-09-04 13:50:57 -04:00
Evan You
02de984f1f feat: mixins/extends/assets options 2019-09-04 11:37:00 -04:00
Evan You
b4c909c260 feat: $nextTick, $forceUpdate, $watch 2019-09-03 23:04:11 -04:00
Evan You
a6616e4210 feat: 2.x options support 2019-09-03 22:25:38 -04:00
Evan You
c833db9c97 feat: production tip 2019-09-03 20:51:42 -04:00
Evan You
cbc8dddd15 chore: fix test 2019-09-03 20:31:53 -04:00
Evan You
40d33a3973 wip: remove config.silent 2019-09-03 20:17:25 -04:00
Evan You
406dcb0a7a test: test app asset retrieval 2019-09-03 18:30:52 -04:00
Evan You
acda3cf2d9 chore: fix type 2019-09-03 18:24:32 -04:00
Evan You
98d1406214 test: test for app-level APIs 2019-09-03 18:11:04 -04:00
Evan You
1e4535dc78 test: improve warning assertions 2019-09-03 16:17:26 -04:00
Evan You
c5ec29ff9b wip: render() should receive no args, expose props on renderContext as readonly 2019-09-03 15:27:59 -04:00
Evan You
b2d269a651 build: use api-extractor for type rollup 2019-09-03 12:16:22 -04:00
Evan You
015d5dd0f1 feat: asset resolution 2019-09-02 16:43:26 -04:00
Evan You
67fd5b6091 chore: put warning in dev block 2019-09-02 16:16:08 -04:00
Evan You
32713f8fce feat: createApp / appContext 2019-09-02 16:09:34 -04:00
Evan You
aac807bc63 test: test for directives 2019-09-02 12:09:29 -04:00
Evan You
94e72481b8 test: todo 2019-08-31 22:18:21 -04:00
Evan You
9b428c6d83 feat: directives 2019-08-31 22:17:46 -04:00
Evan You
0f0ca4ae7c wip: vnodeXXX directive hooks 2019-08-31 17:06:39 -04:00
Evan You
1c6ecf4144 wip: avoid including full error type strings in prod 2019-08-31 16:43:02 -04:00
Evan You
a3b0f2bd1c feat: applyDirectives 2019-08-31 16:36:36 -04:00
Evan You
6801885f57 test: more coverage for error handling 2019-08-30 16:20:32 -04:00
Evan You
be28f976af test: tests for error handling 2019-08-30 16:08:10 -04:00
Evan You
d5684e1a9d wip: function slot tips 2019-08-30 15:34:57 -04:00
Evan You
0cd8e16366 wip: warn slots when invoked in setup() 2019-08-30 15:26:16 -04:00
Evan You
cb09289474 chore: test comments 2019-08-30 15:16:19 -04:00
Evan You
09593c94c3 feat: error handling in scheduler 2019-08-30 15:15:23 -04:00
Evan You
966d7b5487 feat: error handling for setup / render / watch / event handlers 2019-08-30 15:05:39 -04:00
Evan You
1d55b368e8 test: add test case for regsitering onBeforeUnmount inside onMounted 2019-08-30 13:48:27 -04:00
Evan You
7fe82398f7 refactor: call instead of wrap 2019-08-30 12:22:41 -04:00
Evan You
3d681f8bcd feat: error handling for lifecycle hooks 2019-08-30 12:16:09 -04:00
Evan You
fd018b83b5 feat: warning context 2019-08-30 10:36:30 -04:00
Evan You
010e64c224 test: restructure 2019-08-29 16:56:31 -04:00
Evan You
10bbf52c09 test: test for h 2019-08-29 16:47:00 -04:00
Evan You
ac625e03fe test: test for template ref usage in setup() 2019-08-29 16:39:23 -04:00
Evan You
0cb42fbcf3 wip: make runtime-test nodes non-observable 2019-08-29 16:38:57 -04:00
Evan You
b40b7356ef test: tests for lifecycle api 2019-08-28 12:13:36 -04:00
Evan You
2b6ca9a7b6 test: fix deep watch for Map/Set 2019-08-27 15:01:01 -04:00
Evan You
62e07a1b7e test: coverage 2019-08-27 14:42:05 -04:00
Evan You
7ecdc79d5e test: finish tests for watch api 2019-08-27 11:35:22 -04:00
Evan You
d04a4f9cb0 test: (wip) test for watch api 2019-08-26 22:47:38 -04:00
Evan You
a20eeac7fe test: refactor fragment tests to reduce scope 2019-08-26 21:49:12 -04:00
Evan You
cb3866890f test: effect.onStop 2019-08-26 21:24:44 -04:00
Evan You
a0bc525fee test: test for isRef & toRefs 2019-08-26 18:17:02 -04:00
Evan You
5a754aac81 test: test for setup() 2019-08-26 18:08:56 -04:00
Evan You
0ede301cf2 test: test for provide/inject 2019-08-26 16:14:23 -04:00
Evan You
3efe0ba3cd test: jest warning assert utils 2019-08-26 16:08:23 -04:00
Evan You
a39aa842f3 chore: remove no longer needed package 2019-08-23 17:22:13 -04:00
Evan You
b70f8d267e test: fix temp tests 2019-08-23 15:32:19 -04:00
Evan You
fd1fef5502 test: update fragment tests 2019-08-23 15:27:17 -04:00
Evan You
589d3c2feb refactor: immutable -> readonly 2019-08-23 09:38:32 -04:00
Evan You
e1bbfbba94 test: more test todos 2019-08-23 09:21:29 -04:00
Evan You
ce51ca30d8 test: layout test references 2019-08-22 22:15:39 -04:00
Evan You
daf67397ae wip: pass attrs fallthrough tests 2019-08-22 22:07:51 -04:00
Evan You
7fae3ebaf3 wip: adjust index exports 2019-08-22 21:38:00 -04:00
Evan You
5b38e631e7 chore: test todos 2019-08-22 17:13:25 -04:00
Evan You
7bb822c160 wip: cloneVNode + mergeProps 2019-08-22 17:12:39 -04:00
Evan You
f3e9848bb2 refactor: use const enums for flags 2019-08-22 11:12:37 -04:00
Evan You
f26cd5dfe4 test: layout more runtime-core tests 2019-08-21 22:00:48 -04:00
Evan You
8a01c8e549 types: fix createComponent spec 2019-08-21 17:10:37 -04:00
Evan You
b5384006d2 wip: update runtime-test 2019-08-21 17:05:14 -04:00
Evan You
13f5067656 chore: comments 2019-08-21 16:17:02 -04:00
Evan You
2777cd37b4 test: test immutable + ref 2019-08-21 12:03:35 -04:00
Evan You
0aff144f93 wip: improve computed typing + test for setters 2019-08-21 12:01:05 -04:00
Evan You
8d99ab1ff8 chore: allow custom assignment to this 2019-08-21 09:50:20 -04:00
Evan You
7691c06520 wip: warn when injection not found 2019-08-20 15:51:55 -04:00
Evan You
c5558b7ed1 wip: remove immutability conversion in inject 2019-08-20 14:28:44 -04:00
Evan You
bb2ff037b9 build: bump rollup version 2019-08-20 10:34:25 -04:00
Evan You
aacad85058 test: fix reactivity tests 2019-08-20 09:58:10 -04:00
Evan You
0519e10518 wip: make computed implementation consistent 2019-08-20 09:45:28 -04:00
Evan You
b218678c66 feat: toRefs 2019-08-20 09:38:00 -04:00
Evan You
8f9afdff64 feat: template ref handling + ref unmount 2019-08-19 18:06:20 -04:00
Evan You
10a2cf47ea wip: make injected values immutable 2019-08-19 15:06:03 -04:00
Evan You
e53874f7e7 fix: reactive and immutable should warn for undefined 2019-08-19 15:01:50 -04:00
Evan You
685348f818 wip: adjust inject API 2019-08-19 14:45:11 -04:00
Evan You
145bf98840 wip: fix watch simple effect usage 2019-08-19 14:44:52 -04:00
Evan You
36ab2ab980 wip: update writable computed API to match latest spec 2019-08-19 12:05:07 -04:00
Evan You
42559dc5fe types: watch API type overload 2019-08-18 22:49:08 -04:00
Evan You
6a22ad2fb2 types: simplify ref type 2019-08-18 22:48:46 -04:00
Evan You
3facfa5a55 wip: adjust computed ref type 2019-08-16 10:52:45 -04:00
Evan You
e1e4a3854c wip: update runtime core to updated reactivity api names 2019-08-16 10:02:53 -04:00
Evan You
96d65e1ab5 wip: improve ref typing 2019-08-16 09:54:57 -04:00
Evan You
caba6d5c9e wip: state -> reactive, value -> ref 2019-08-16 09:42:46 -04:00
Evan You
09141b56fd wip: proper handling of value assignment in reactive object 2019-08-13 11:30:28 -04:00
Evan You
2fc0d599db revert: "wip: handle value -> value assignment in reactive object"
This reverts commit 61ab483af1.
2019-08-13 11:27:48 -04:00
Evan You
5aa42f137f types: use unknown 2019-08-13 11:18:23 -04:00
Evan You
1cfa2da78a types: allow string keys in provide/inject 2019-08-13 11:17:55 -04:00
Evan You
61ab483af1 wip: handle value -> value assignment in reactive object 2019-08-13 11:13:26 -04:00
Evan You
645c1eceea wip: update test runtime 2019-06-20 21:28:37 +08:00
Evan You
9c0f820a8e wip: expose getCurrentInstance() 2019-06-20 15:25:10 +08:00
Evan You
8eb20eede9 chore: todo 2019-06-19 22:50:14 +08:00
Evan You
117630fb92 perf: improve inject performance 2019-06-19 22:48:22 +08:00
Evan You
0952d4cf51 wip: provide/inject 2019-06-19 17:31:49 +08:00
Evan You
976844790e wip: $state -> $data 2019-06-19 17:08:42 +08:00
Evan You
5228f0343b wip: setup context + emit 2019-06-19 16:43:34 +08:00
Evan You
08806073a1 chore: comments 2019-06-13 10:25:24 +08:00
Evan You
2230917ab4 wip: types 2019-06-12 16:22:52 +08:00
Evan You
fce6a8fa51 wip: support returning render fn from setup() + improve createComponent type inference 2019-06-12 15:43:19 +08:00
Evan You
bfe6987323 refactor: adjust reactivity structure 2019-06-12 00:03:50 +08:00
Evan You
471899af8b refactor: rename reactivity package name and APIs 2019-06-11 23:50:28 +08:00
Evan You
07403c9aba wip: restructure api + support watch multiple sources 2019-06-07 14:55:38 +08:00
Evan You
d3fe492d7e wip: adjust watcher cleanup api 2019-06-06 15:19:04 +08:00
Evan You
1d41771e56 wip: watcher cleanup improvement 2019-06-06 13:25:05 +08:00
Evan You
e5e56bb358 wip: watcher cleanup 2019-06-06 13:04:49 +08:00
Evan You
693938d956 fix: vnode key ref should default to null 2019-06-06 13:04:31 +08:00
Evan You
39e1fffb9c wip: writable computed 2019-06-06 12:35:49 +08:00
Evan You
e9a3fa60d6 wip: delete keys from props proxy when needed 2019-06-05 21:38:32 +08:00
Evan You
d75d21c1a1 chore: comments 2019-06-03 19:59:15 +08:00
Evan You
ca82c329f0 wip: use typeFlag in slot normalization 2019-06-03 19:58:12 +08:00
Evan You
c442785465 chore: notes on style binding optimization 2019-06-03 13:57:19 +08:00
Evan You
2848f65a7f wip: refs 2019-06-03 13:44:45 +08:00
Evan You
0ad31f29c4 wip: hoc parent el update 2019-06-03 12:40:21 +08:00
Evan You
7fe82b1199 wip: svg & parent chain 2019-06-03 09:43:28 +08:00
Evan You
1681787b43 wip: optimize children shapeFlag 2019-06-02 22:22:44 +08:00
Evan You
6d90ba28d3 wip: include children type in shapeFlag 2019-06-02 19:40:50 +08:00
Evan You
2f1f6b4355 wip: optimize w/ shapeFlag 2019-06-02 16:35:19 +08:00
Evan You
b77709286f chore: comments 2019-06-01 17:47:19 +08:00
Evan You
ee5503b260 chore: remove unused var 2019-06-01 17:44:06 +08:00
Evan You
d6d4ba8679 wip: style/class normalization 2019-06-01 17:43:41 +08:00
Evan You
05556eacb2 wip: always track component nodes 2019-06-01 02:14:49 +08:00
Evan You
da5edd3429 wip: improve props typing 2019-06-01 00:47:05 +08:00
Evan You
c0c06813a7 wip: slots 2019-05-31 18:07:43 +08:00
Evan You
e0a66d0381 wip: shouldUpdateComponent logic for slots 2019-05-31 12:25:11 +08:00
Evan You
333ceaa4b5 wip: props proxy for setup() 2019-05-30 23:16:15 +08:00
Evan You
e665a133e9 types: bump TS version + type test for createComponent 2019-05-30 22:09:48 +08:00
Evan You
caad39c353 refactor: tweak watch getter logic 2019-05-30 21:31:53 +08:00
Evan You
fc5bf5cbe1 chore: comments 2019-05-30 21:27:14 +08:00
Evan You
5abada5ed1 chore: comments 2019-05-30 21:24:40 +08:00
Evan You
200c035862 wip: component update fast path 2019-05-30 16:00:42 +08:00
Evan You
b82b7af29b types: improve value unwrapping 2019-05-30 13:35:50 +08:00
Evan You
6441db45c7 wip: watch 2019-05-29 23:44:59 +08:00
Evan You
dde6c151e4 wip: test + typing for value 2019-05-29 22:11:33 +08:00
Evan You
ef4fde3522 test: update computed specs 2019-05-29 18:47:29 +08:00
Evan You
cf86e32575 wip: computed 2019-05-29 18:44:50 +08:00
Evan You
02421dbe62 wip: value() 2019-05-29 17:36:53 +08:00
Evan You
453cdcd600 wip: portal 2019-05-29 16:10:25 +08:00
Evan You
178c7c827e wip: render proxy 2019-05-29 13:43:46 +08:00
Evan You
6ceb732114 refactor: component setup flow 2019-05-29 11:36:16 +08:00
Evan You
dbbb36bd76 wip: renderTriggered & renderTracked 2019-05-29 11:01:39 +08:00
Evan You
3f281d5ea6 wip: beforeXXX hooks 2019-05-29 10:47:09 +08:00
Evan You
eac8a4baa3 wip: props immutability 2019-05-29 10:43:27 +08:00
Evan You
f2116054a0 refactor: use shared options for component effect runners 2019-05-29 09:19:01 +08:00
Evan You
46524a0f0f refactor: rename 2019-05-29 09:18:45 +08:00
Evan You
9595446291 chore: remove todos 2019-05-28 20:14:04 +08:00
Evan You
42dce36bf1 wip: basic setup wiring 2019-05-28 20:06:44 +08:00
Evan You
7a3a5850dc wip: adjust lifecycle 2019-05-28 19:59:54 +08:00
Evan You
19ed750078 wip: lifecycle hooks 2019-05-28 19:36:15 +08:00
Evan You
9dd133b1e9 wip: props resolving 2019-05-28 18:06:00 +08:00
Evan You
5c069eeae7 wip: scheduler, more component 2019-05-28 17:19:47 +08:00
Evan You
7a92ee04a0 wip: fix reactivity boundary between components 2019-05-28 14:43:23 +08:00
Evan You
b69ea00f5c wip: minimal component implementation 2019-05-28 13:27:31 +08:00
Evan You
28a0c50357 refactor: use util methods 2019-05-28 10:28:25 +08:00
Evan You
a4d116e3f7 chore: comments 2019-05-27 15:59:02 +08:00
Evan You
73df1fa192 wip: complete patchKeyedChildren 2019-05-27 15:29:02 +08:00
Evan You
e4ce78c8c9 wip: diffKeyedChildren 2019-05-27 13:48:40 +08:00
Evan You
444d6f4bda wip: remove decorators 2019-05-27 13:48:27 +08:00
Evan You
3f3e42b8cb wip: compare perf 2019-05-26 15:38:55 +08:00
Evan You
b3f8b5ae0a wip: add types to refactored runtime-core 2019-05-26 15:19:44 +08:00
Evan You
3cded86b98 wip: switch to new implementation 2019-05-25 23:51:20 +08:00
Evan You
35effdee5a feat: simplify prop/attr checking 2019-03-10 06:09:59 +08:00
Evan You
ec0ccd2337 refactor: return Proxy from base class constructor 2019-03-05 16:24:07 -05:00
Evan You
c335939dcf types: remove intersection of props interface on this 2019-03-01 14:06:19 -05:00
Evan You
f00097127a refactor: move decorators into their own package 2019-03-01 13:58:08 -05:00
Evan You
4a4c1b247d refactor: remove experimental context 2019-03-01 13:54:45 -05:00
Evan You
66686f38a7 refactor: expose $self 2019-03-01 13:47:28 -05:00
Evan You
fa2240143c dx: warn private fields usage 2019-03-01 10:28:29 -05:00
Evan You
93744d5889 dx: warn use of reserved methods in render 2019-02-28 12:50:18 -05:00
Evan You
55a2bc483c refactor: simplify conditional 2019-02-26 21:46:01 -05:00
Evan You
e151d34100 test: fix mixin case 2019-02-26 21:45:13 -05:00
Evan You
ff9cddd46f refactor: move prop decorator into core, expose initial props to initialziers 2019-02-26 21:33:50 -05:00
Evan You
2f165c1e87 refactor: remove experimental hooks 2019-02-26 18:10:08 -05:00
Evan You
77dae71062 refactor: adjust files 2019-02-26 18:04:52 -05:00
Evan You
cbf95c642e feat: @prop decorator 2019-02-25 17:47:02 -05:00
Evan You
daf166553b refactor: also check for event timestamp 2019-01-23 19:08:51 -05:00
Evan You
16270edda5 refactor: cache calls to performance.now 2019-01-23 18:52:05 -05:00
Evan You
360a10fff2 refactor: drop event delegation and use simple async edge case fix 2019-01-22 16:03:37 -05:00