Commit Graph

432 Commits

Author SHA1 Message Date
Evan You 07ce2c5fa7 perf: improve directive runtime performance 2019-10-26 16:00:07 -04:00
Dmitry Sharshakov 7394f7ec42 fix(apiInject): fix stringifying of symbol injection key (#383) 2019-10-26 10:52:29 -04:00
Dmitry Sharshakov 134e932322 fix(types): fix VNodeTypes unique symbols (#387) 2019-10-26 10:51:55 -04:00
Dmitry Sharshakov 49914efc9e fix(Portal): add ability to use element as target (#380) 2019-10-26 10:32:16 -04:00
Evan You b788c03992 test: fix context.attrs test case 2019-10-26 10:31:36 -04:00
Evan You b3282028bb chore: remove it.only 2019-10-26 10:27:49 -04:00
Evan You 8edfbf9df9 feat(core): adjust attrs fallthrough behavior 2019-10-25 12:12:17 -04:00
Junyan d76cfba7fb refactor(reactivity): reduce code of type check (#377) 2019-10-25 11:15:04 -04:00
likui 532b5eebd7 feat(runtime-core): support array in watch option (#376) 2019-10-25 10:25:52 -04:00
Evan You 8c1638da33 feat(runtime-core): warn access of undefined property during render 2019-10-25 10:12:58 -04:00
Evan You 6a92bbd9c0 feat(runtime-dom): support using mount target innerHTML as template 2019-10-24 21:58:34 -04:00
Evan You ed29af7bea fix: generate v-if fallback comment as block 2019-10-24 21:19:02 -04:00
Evan You 7b637319a8 fix: export missing createCommentVNode fn 2019-10-24 21:08:28 -04:00
Evan You 1c0a2c6d41 refactor(compiler): use shorter helpers for text and comment nodes 2019-10-24 17:55:00 -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
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 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 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
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
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
HcySunYang 71f3826f99 chore: rename & property missing (#335) 2019-10-21 10:00:23 -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
Evan You e98a85f3cb refactor: applyDirectives -> withDirectives 2019-10-18 16:35:01 -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
Dmitry Sharshakov 2238925fbe feat(core): validate directives names (#326) 2019-10-18 12:34:45 -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
Evan You 4771319a15 perf(core): cache property access types on renderProxy 2019-10-17 15:02:15 -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
Carlos Rodrigues 48b79d02e8 perf(runtime-core): use faster diff map population (#319) 2019-10-16 15:34:51 -04:00
Evan You b20b922d99 perf(v-for): use faster array population in renderList 2019-10-16 10:42:25 -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
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
Adam Lewkowicz 555e3be69d types(watch): allow readonly arrays for watching multiple sources (#281) 2019-10-15 16:44:14 -04:00
Ayush Goyal 58fffcb987 refactor(core): use makeMap for faster string match checks (#282) 2019-10-15 12:11:08 -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
月迷津渡 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
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
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
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
fisker Cheung cdc143d348 refactor(runtime-core): use `Array.from` instead of loop over `iterable` (#250) 2019-10-12 19:34:22 -04:00
Sharvilak ed5a42e588 refactor(runetime-core): removed unnecessary condition check (#237) 2019-10-12 11:00:29 -04:00
Cr 64c7be3763 chore: remove redundant type cast (#230) 2019-10-12 10:46:10 -04:00
Cr f3760f7d34 types: add missing properties to ComponentPublicInstance interface (#218) 2019-10-12 10:30:21 -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
Evan You 9ad7ae479e fix(compiler): export COMMENT instead EMPTY runtime helper 2019-10-11 10:47:59 -04:00
Cr 3cdefdbe2d test: add array of objects class test case for mergeProps (#201) 2019-10-11 10:13:04 -04:00
Evan You d376439167 wip(compiler-dom): v-model runtime 2019-10-10 18:02:51 -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
Dmitry Sharshakov 1139368dc2 types: improve writable computed types (#192) 2019-10-10 14:08:12 -04:00
terencez d10b28ae0e refactor(runtime-core): make h() support single vnode child (#181) 2019-10-10 10:17:16 -04:00
Cr 211f5b7a45 test: add more complete test for componentProxy (#174) 2019-10-10 10:02:55 -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
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
terencez 7963c01a67 types(runtime-core): simplify types in createComponentInstance() (#170) 2019-10-09 12:17:42 -04:00
Tim van den Eijnden b107401e71 test(vnode): partial tests for vnode creation (#116) 2019-10-09 10:28:43 -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 1393ee52ca types: improve typing 2019-10-08 10:50:10 -04:00