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