Commit Graph

58 Commits

Author SHA1 Message Date
Evan You 24e9efcc21 refactor(runtime-core): extract component emit related logic into dedicated file 2020-04-03 19:08:17 -04:00
Evan You bf473a64ea feat(runtime-core): type and attr fallthrough support for emits option 2020-04-03 12:05:52 -04:00
Carlos Rodrigues 026eb729f3
fix(types): allow use PropType with Function (#915)
close #748
2020-04-03 09:28:13 -04:00
Evan You b3890a93e3 fix(runtime-core): fix component proxy props presence check
fix #864
2020-03-21 16:25:33 -04:00
Evan You ba9a91c48c refactor: remove null comparisons 2020-03-18 18:14:51 -04:00
Evan You aa4ab39c1a refactor: separate vnode hooks and directive hooks 2020-03-18 12:30:26 -04:00
Evan You 3b282e7e3c fix(runtime-core): fix boolean props validation 2020-03-17 10:35:32 -04:00
yang 3d38e6faf3
refactor(componentProps): extract validate prop name logic (#825) 2020-03-16 18:45:08 -04:00
jods c7ae269972
fix(runtime-core): empty boolean props (#844)
close #843
2020-03-16 10:19:06 -04:00
Evan You e1660f4338 refactor(runtime-core): adjust attr fallthrough behavior
BREAKING CHANGE: adjust attr fallthrough behavior

    Updated per pending RFC https://github.com/vuejs/rfcs/pull/137

    - Implicit fallthrough now by default only applies for a whitelist
      of attributes (class, style, event listeners, a11y attributes, and
      data attributes).

    - Fallthrough is now applied regardless of whether the component has
      explicitly declared props. (close #749)
2020-02-28 17:53:26 -05:00
Evan You cfadb98011 fix(runtime-core): rework vnode hooks handling
- peroperly support directive on components (e.g. <foo v-show="x">)
- consistently invoke raw vnode hooks on component vnodes (fix #684)
2020-02-10 13:15:36 -05:00
Evan You da25517377 wip(ssr): initial work on server-renderer 2020-01-27 16:00:17 -05:00
Evan You bb6a346996 fix(runtime-core): should preserve props casing when component has no declared props
close #583
2020-01-06 15:05:57 -05:00
Evan You 2c3c65772b perf: optimize props resolution
Store the keys for props that need default or boolean casting
during normalization, so that later we only need to iterate
through this array instead of the entire props object.
2019-12-12 22:07:48 -05:00
Evan You a834807942 refactor: rename transition components 2019-11-24 16:00:46 -05:00
Evan You 79f23a2f77 feat(transition): support component child 2019-11-20 22:46:32 -05:00
Evan You 08bf9976ae types: ensure props are readonly 2019-11-09 18:40:25 -05:00
Evan You d9c6ff372c feat(core): allow passing explicit refs via props 2019-11-06 12:51:26 -05:00
Evan You 247c53672d refactor(reactivity): simplify effect options 2019-10-30 11:11:23 -04:00
Evan You 8edfbf9df9 feat(core): adjust attrs fallthrough behavior 2019-10-25 12:12:17 -04:00
Junyan d76cfba7fb refactor(reactivity): reduce code of type check (#377) 2019-10-25 11:15:04 -04:00
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
edison 9dcbf17f3a perf(runtime-core): use `makeMap` instead of `RE` (#350) 2019-10-23 10:34:58 -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
Evan You 1393ee52ca types: improve typing 2019-10-08 10:50:10 -04:00
Vladimir f48a2ffc76 chore: fix typos (#103) 2019-10-05 10:48:54 -04:00
月迷津渡 9d6783053c types: simplify types (#104) 2019-10-05 10:09:34 -04:00
Evan You d67418002f feat(compiler): generate patchFlags for runtime 2019-09-30 21:17:12 -04:00
Evan You b3b67b8c7d feat(compiler): ensure interpolation expressions are wrapped with toString() 2019-09-23 15:36:30 -04:00
Evan You 360f3b4f37 types: improve type exports 2019-09-06 12:58:31 -04:00
Evan You 891f21b010 refactor: extract hasOwn helper 2019-09-05 20:48:14 -04:00
Evan You 5a754aac81 test: test for setup() 2019-08-26 18:08:56 -04:00
Evan You 589d3c2feb refactor: immutable -> readonly 2019-08-23 09:38:32 -04:00
Evan You f3e9848bb2 refactor: use const enums for flags 2019-08-22 11:12:37 -04:00
Evan You e1e4a3854c wip: update runtime core to updated reactivity api names 2019-08-16 10:02:53 -04: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 e9a3fa60d6 wip: delete keys from props proxy when needed 2019-06-05 21:38:32 +08:00
Evan You 2848f65a7f wip: refs 2019-06-03 13:44:45 +08:00
Evan You d6d4ba8679 wip: style/class normalization 2019-06-01 17:43:41 +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 333ceaa4b5 wip: props proxy for setup() 2019-05-30 23:16:15 +08:00
Evan You 6ceb732114 refactor: component setup flow 2019-05-29 11:36:16 +08:00
Evan You eac8a4baa3 wip: props immutability 2019-05-29 10:43:27 +08:00
Evan You 46524a0f0f refactor: rename 2019-05-29 09:18:45 +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