Commit Graph

707 Commits

Author SHA1 Message Date
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
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 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 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 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 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 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 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 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 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 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 5a754aac81 test: test for setup() 2019-08-26 18:08:56 -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 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 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 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 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 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 e1e4a3854c wip: update runtime core to updated reactivity api names 2019-08-16 10:02:53 -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 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 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 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 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 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 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 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 360a10fff2 refactor: drop event delegation and use simple async edge case fix 2019-01-22 16:03:37 -05:00
Evan You 85bcc2b87c refactor: move clone step into util function 2018-12-01 18:09:21 -05:00
Evan You 1b40fa6c16 chore: todos 2018-12-01 17:57:39 -05:00
Evan You 80d1eb7480 refactor: rename things 2018-11-13 11:03:35 -05:00
Evan You 0cd8183fbf refactor: remove shorthands on h 2018-11-13 01:08:22 -05:00
Evan You ca91797c7f fix: fix functional updates 2018-11-13 01:07:13 -05:00
Evan You f5700245b0 refactor: improve functional patch 2018-11-13 00:29:18 -05:00
Evan You fc5aa6d0be feat: proper static tree skip 2018-11-12 22:42:34 -05:00
Evan You 6e424397d1 refactor: bring back clone for reused nodes 2018-11-12 22:21:56 -05:00
Evan You 65c1ea8930 wip: defer patchData as nodeOp 2018-11-12 22:07:55 -05:00
Evan You 2f3ddf20b5 refactor: document new scheduler 2018-11-12 12:42:35 -05:00
Evan You f13fbe8686 wip: properly handle invalidated mount/unmount 2018-11-10 00:33:41 -05:00
Evan You 5639022f80 wip: fix insertBefore 2018-11-09 18:08:53 -05:00
Evan You 544f37ae48 wip: simplify time-slicing implementation 2018-11-09 18:01:58 -05:00
Evan You a95532495a refactor: properly cleanup invalidated jobs 2018-11-08 20:08:28 -05:00
Evan You d39eb6cdbc wip: disable time-slicing in compat mode 2018-11-08 18:41:04 -05:00
Evan You 64029b4a54 feat: detailed info in renderTriggered + hint for skipping slot updates 2018-11-08 18:20:07 -05:00
Evan You 6027d480f3 feat: renderTriggered for forced updates 2018-11-08 14:09:52 -05:00
Evan You bd1b06f1cc test: fix some tests 2018-11-08 12:54:11 -05:00
Evan You 9d1f0f248d wip: fix more tests 2018-11-03 06:31:31 +09:00
Evan You f79f0e658b wip: fix one test 2018-11-03 06:31:31 +09:00
Evan You ba571cda61 wip: trying to make tests work 2018-11-03 06:31:31 +09:00
Evan You d70b7d6dd5 wip: error handling and nextTick for time slicing 2018-11-03 06:31:31 +09:00
Evan You d5862d8c51 feat: make functional components time-slicable 2018-11-03 06:31:30 +09:00
Evan You 6ba02827b1 feat: experimental time-slicing 2018-11-03 06:31:30 +09:00
Evan You ccc835caff chore: fix warning indent 2018-11-03 05:59:29 +09:00
Evan You bf6e49559a chore: do not warn about reserved methods 2018-11-03 05:40:31 +09:00
Evan You 3e31de3742 chore: fix warning newline 2018-11-03 05:37:01 +09:00
Evan You 774cce324d chore: remove unnecessary hooks api 2018-11-03 05:28:29 +09:00
Evan You 8602b61efb refactor: use more efficient useComputed() implementation 2018-10-30 01:10:03 -04:00
Evan You f9e3e38fdb chore: add warning when attempting to mutate non-observable hooks return value 2018-10-30 00:42:26 -04:00
Evan You a17c377be0 feat: enable returning observable state from hooks() 2018-10-30 00:33:45 -04:00
Evan You 6767bf83c4 feat: hooks that match current API 2018-10-29 18:50:07 -04:00
Evan You 894bead914 feat: make hooks usable inside classes 2018-10-28 19:15:18 -04:00
Evan You 98782b326a chore: move hooks to experimental 2018-10-28 17:47:22 -04:00
Evan You a6a571f973 test: basic tests for hooks 2018-10-28 17:45:53 -04:00
Evan You 52e6964d6c test: tests for memoize 2018-10-28 17:18:41 -04:00
Evan You 131936f144 feat: skip constant trees and memoize fn 2018-10-28 16:41:29 -04:00
Evan You d8cda2387f perf: skip props update if data object is the same 2018-10-28 15:58:59 -04:00
Evan You e8dd725e41 fix: fragment replaceVNode 2018-10-28 14:22:52 -04:00
Evan You 45e9a42a1a refactor: improve scheduler error warning message 2018-10-28 14:22:34 -04:00
Evan You 98e79943d2 fix(hooks): fix effect update & cleanup 2018-10-28 12:10:29 -04:00
Evan You a7bcb7898f refactor: improve error logging 2018-10-28 12:09:38 -04:00
Evan You 01bb8d1894 fix: parent chain error when root is functional 2018-10-28 12:08:20 -04:00
Evan You 832d715afe feat: implement basic hooks 2018-10-27 22:10:25 -04:00
Evan You b08b15dba0 refactor: adjust props initialization/updating 2018-10-26 17:49:40 -04:00
Evan You e05673f4d3 refactor: rename packages 2018-10-26 15:44:50 -04:00