Commit Graph

343 Commits

Author SHA1 Message Date
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 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 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 2ee60e0a03 test: all tests passing! 2018-11-08 13:37:39 -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