Evan You
c6cbca25fe
feat(core): keep-alive
2019-10-29 22:28:38 -04:00
Evan You
083296ead6
fix: fix h signature for suspense
2019-10-29 14:04:53 -04:00
Evan You
4dd5d2cb74
refactor(suspense): move more suspense details into suspense.ts
2019-10-29 12:40:54 -04:00
Evan You
17d71fa407
refactor(suspense): make suspense tree-shakeable
2019-10-29 12:30:09 -04:00
Dmitry Sharshakov
5cce23f4c6
feat(apiApp): add more warnings ( #394 )
2019-10-28 16:22:03 -04:00
Dmitry Sharshakov
325e15ef41
feat(createRenderer): handle errors in function refs ( #403 )
2019-10-28 12:03:30 -04:00
likui
8454e7e004
refactor: remove unnecessary variable ( #401 )
2019-10-28 10:13:26 -04:00
Dmitry Sharshakov
db7666d0f3
fix(warning): handle errors in warn handler ( #396 )
2019-10-27 20:55:50 -04:00
Dmitry Sharshakov
e7e3eb8662
refactor(VNode): improve helper types ( #392 )
2019-10-27 20:54:54 -04:00
Dmitry Sharshakov
e581b14dff
feat(apiApp): return app from provide method for chaining ( #393 )
2019-10-27 20:54:33 -04:00
Evan You
a8aa328907
chore: comment on cloneVNode implementation [ci skip]
2019-10-27 20:45:59 -04:00
Evan You
43f4bd3aaa
chore: fix typing for withDirectives
2019-10-26 16:32:27 -04:00
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
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
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
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
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
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
Illya Klymov
e32da9169b
fix(runtime-core): support object syntax for class ( #215 )
2019-10-11 15:09:37 -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
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
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
扩散性百万甜面包
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
扩散性百万甜面包
016231d09f
types: improve type for WatchHandler ( #160 )
2019-10-08 10:48:24 -04:00
Kyle Hall
fd1d7833e2
test(runtime-core): createSlots method ( #119 )
2019-10-06 20:19:44 -04:00
扩散性百万甜面包
d2d32d3810
refactor: rename param on function watch ( #134 )
2019-10-06 11:27:09 -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
fbabae0c0a
chore: replace some type casts and fix variable and filename typos ( #93 )
2019-10-05 10:38:02 -04:00
月迷津渡
9d6783053c
types: simplify types ( #104 )
2019-10-05 10:09:34 -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
3d14265102
feat(compiler): handle conditional v-slot
2019-10-02 17:18:11 -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
a477594d65
feat(compiler): v-for codegen w/ correct blocks optimization + key flags
2019-10-01 23:19:48 -04:00
Evan You
4fc963bc5a
feat(compiler): annotate patchFlags in generated code
2019-10-01 17:53:57 -04:00
Evan You
d67418002f
feat(compiler): generate patchFlags for runtime
2019-09-30 21:17:12 -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
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
ff2313e43a
wip(compiler): adjust statement positions
2019-09-25 15:09:58 -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
76a1196935
feat(runtime): support rendering comment nodes
2019-09-24 14:37:14 -04:00
Evan You
b3b67b8c7d
feat(compiler): ensure interpolation expressions are wrapped with toString()
2019-09-23 15:36:30 -04:00
Evan You
8076ce1f28
feat(compiler): handle runtime helper injection
2019-09-22 23:07:36 -04:00
Evan You
3a177a18d2
feat(compiler): element codegen
2019-09-22 16:50:57 -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
8a923f6a52
refactor: move compile into compiler-core
2019-09-20 12:16:19 -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
54a78f3856
chore: remove unnecessary enum initial value
2019-09-16 13:15:20 -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
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
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