Evan You
8cdaf28515
test(ssr): test for rendering components
2020-01-29 16:46:18 -05:00
Evan You
6e06810add
test(ssr): tests for utils and props rendering
2020-01-29 15:10:45 -05:00
Evan You
bc07e95ca8
fix(ssr): avoid hard-coded ssr checks in cjs builds
2020-01-29 09:49:17 -05:00
Evan You
6b1ce00621
wip(ssr): renderer support for optimized and manual slots
2020-01-28 22:58:02 -05:00
Evan You
a7b0954f14
wip(ssr): move ssr only utils to conditional export
2020-01-28 22:14:43 -05:00
Evan You
6f43c4b516
wip(ssr): vdom serialization
2020-01-28 18:48:27 -05:00
Evan You
27fbfbdb8b
fix(runtime-core): render context set should not unwrap reactive values
2020-01-27 18:05:30 -05:00
Evan You
012bc5df9d
wip(ssr): restructure
2020-01-27 17:23:42 -05:00
Evan You
d293876c34
release: v3.0.0-alpha.4
2020-01-27 16:20:00 -05:00
Evan You
6b10f0cd1d
refactor: remove implicit reactive() call on renderContext
...
reference: https://github.com/vuejs/rfcs/issues/121
BREAKING CHANGE: object returned from `setup()` are no longer implicitly
passed to `reactive()`.
The renderContext is the object returned by `setup()` (or a new object
if no setup() is present). Before this change, it was implicitly passed
to `reactive()` for ref unwrapping. But this has the side effect of
unnecessary deep reactive conversion on properties that should not be
made reactive (e.g. computed return values and injected non-reactive
objects), and can lead to performance issues.
This change removes the `reactive()` call and instead performs a
shallow ref unwrapping at the render proxy level. The breaking part is
when the user returns an object with a plain property from `setup()`,
e.g. `return { count: 0 }`, this property will no longer trigger
updates when mutated by a in-template event handler. Instead, explicit
refs are required.
This also means that any objects not explicitly made reactive in
`setup()` will remain non-reactive. This can be desirable when
exposing heavy external stateful objects on `this`.
2020-01-27 16:00:18 -05:00
Evan You
2884831065
fix(runtime-core): instance should not expose non-declared props
2020-01-27 16:00:18 -05:00
Evan You
066ba82c7f
wip(ssr): escape helpers
2020-01-27 16:00:18 -05:00
Evan You
297282a812
perf(ssr): avoid unnecessary async overhead
2020-01-27 16:00:17 -05:00
Evan You
25a0d4a65f
wip(ssr): reduce reactivity overhead during ssr
2020-01-27 16:00:17 -05:00
Evan You
cee36ad028
wip(ssr): render real components
2020-01-27 16:00:17 -05:00
Evan You
da25517377
wip(ssr): initial work on server-renderer
2020-01-27 16:00:17 -05:00
Evan You
c07751fd36
refactor: adjust createApp
related API signatures
...
BREAKING CHANGE: `createApp` API has been adjusted.
- `createApp()` now accepts the root component, and optionally a props
object to pass to the root component.
- `app.mount()` now accepts a single argument (the root container)
- `app.unmount()` no longer requires arguments.
New behavior looks like the following:
``` js
const app = createApp(RootComponent)
app.mount('#app')
app.unmount()
```
2020-01-27 16:00:17 -05:00
Evan You
2837ce8428
fix(v-model/emit): update:camelCase events should trigger kebab case equivalent
...
close #656
2020-01-26 14:14:03 -05:00
Evan You
b41677bf42
release: v3.0.0-alpha.3
2020-01-22 11:10:30 -05:00
likui
ec63623fe8
fix: Suspense should include into dynamic children ( #653 )
...
fix #649
2020-01-22 10:45:27 -05:00
Evan You
2569890e31
refactor: move mockWarn utility to @vue/shared
...
close #652
2020-01-22 09:29:45 -05:00
Evan You
4f06eebc1c
fix(dom): fix <svg> and <foreignObject> mount and updates
2020-01-21 11:32:33 -05:00
Evan You
035b6560f7
fix(runtime-core): isSVG check should also apply for patch branch
...
fix #639
2020-01-20 11:55:18 -05:00
Evan You
e81c8a32c7
feat(runtime-core): emit now returns array of return values from all triggered handlers
...
close #635
2020-01-20 11:24:08 -05:00
Rustin
787ac5f74e
test(runtime-core): modify test case to set different value ( #620 )
2020-01-20 09:43:58 -05:00
Evan You
751d838fb9
fix(runtime-core): should not warn unused attrs when accessed via setup context
...
close #625
2020-01-16 17:45:08 -05:00
Evan You
c35fea3d60
fix(runtime-core): condition for parent node check should be any different nodes
...
fix #622
2020-01-16 16:21:37 -05:00
likui
04ac6c467a
feat(runtime-core): support app.unmount(container) ( #601 )
...
close #593
2020-01-16 12:23:47 -05:00
Sören Schwert
1081ef8089
chore: fix error reporting URL to point to vue-next ( #624 ) [ci skip]
2020-01-15 21:50:06 -05:00
Evan You
9f65d811af
release: v3.0.0-alpha.2
2020-01-13 17:44:30 -05:00
Evan You
2e9726e6a2
fix(runtime-core/renderer): fix v-if toggle inside blocks
...
Should check both branches for parent container access.
Fix #604 . Close #607 .
2020-01-13 17:31:22 -05:00
Cédric Exbrayat
74baea108a
fix(types): components options should accept components defined with defineComponent ( #602 )
2020-01-13 17:12:45 -05:00
Yang Mingshan
f465199946
types: fix setup this type ( #605 )
2020-01-10 11:46:34 -05:00
Kael
8f616a89c5
fix(runtime-core): allow classes to be passed as plugins ( #588 )
2020-01-08 12:40:24 -05:00
Yang Mingshan
453e6889da
fix(watch): remove recorded effect on manual stop ( #590 )
2020-01-08 12:06:16 -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
84dc5a6862
fix(runtime-core/vnode): should not render boolean values in vnode children ( close #574 )
2020-01-06 11:57:19 -05:00
Evan You
1bb1271b5e
release: v3.0.0-alpha.1
2020-01-02 18:25:17 -05:00
Evan You
bfb0ad5a5e
types: refactor watcher types naming
2019-12-30 11:30:12 -05:00
likui
a7ef59c4c3
test(vnode): add test for dynamic children ( #563 )
2019-12-30 11:25:44 -05:00
Yang Mingshan
3980ad65de
types: exports watch api types ( #562 )
2019-12-30 11:19:57 -05:00
Evan You
7df5e70c83
types: accept defineComponent return types in app.mount
2019-12-24 11:04:44 -05:00
宋铄运
4d20981eb0
fix(runtime-core): pass options to plugins ( #561 )
2019-12-24 10:33:47 -05:00
Evan You
7d436ab59a
fix: mounting new children
2019-12-22 16:24:24 -05:00
Evan You
2fdb499bd9
fix(fragment): perform direct remove when removing fragments
...
This avoids trying to grab .el from hoisted child nodes (which can
be created by another instance), and also skips transition check
since fragment children cannot have transitions.
2019-12-22 16:15:16 -05:00
Evan You
47a6a84631
fix(core): clone mounted hoisted vnodes on patch
...
...since they may need to be checked as fragment child
2019-12-22 13:31:13 -05:00
Evan You
eda495efd8
feat(hmr): root instance reload
2019-12-22 12:25:04 -05:00
Evan You
c9b9ae3941
refactor: rename apiApp.ts -> apiCreateApp.ts
2019-12-22 11:27:40 -05:00
Chris Fritz
1c4cdd841d
refactor(createComponent): rename to defineComponent ( #549 )
2019-12-22 10:58:12 -05:00
Evan You
d6da48a33f
perf: optimize public properties access on componentProxy
2019-12-19 14:19:58 -05:00
Evan You
bdbfead1e0
chore: adjust package.json
2019-12-19 14:19:58 -05:00
Evan You
9f52dce0d5
fix(renderer): should also use latest parent node when patching block child components
2019-12-18 17:09:28 -05:00
Evan You
3deb20df63
feat(watch): warn when using lazy with simple callback
2019-12-18 11:54:12 -05:00
Yang Mingshan
c2c9c2b57e
fix(watch): ignore lazy option in simple watch ( #546 )
...
* fix(watch): ignore lazy option in simple watch
* test: ignore lazy option in simple watch
2019-12-18 11:46:59 -05:00
Evan You
d84cf3a538
feat(sfc): css modules support
2019-12-18 10:00:49 -05:00
Evan You
b689ca6e85
test: test scopeId support
2019-12-17 12:31:38 -05:00
Evan You
8ea2101553
test: test hot module replacement
2019-12-17 12:31:38 -05:00
Evan You
f194aa0eea
feat(sfc): ::slotted selector support
2019-12-17 12:31:38 -05:00
Evan You
69c9dbc825
feat(sfc): scopeId runtime support
2019-12-17 12:31:38 -05:00
Evan You
b2c2d0590e
refactor: extract SFCInternalOptions inteface
2019-12-17 12:31:38 -05:00
Evan You
35858cec8c
build: adjust global names + allow inline overrides of build flags
2019-12-15 15:37:43 -05:00
Evan You
2b178981bc
refactor: move isRuntimeCompiled flag into component.ts
2019-12-14 22:15:38 -05:00
Evan You
d6acb9c073
fix(hmr): force full diff on HMR
2019-12-13 17:57:21 -05:00
Evan You
fa5390fb6f
fix(fragment): properly remove compiler generated fragments
2019-12-13 10:31:40 -05:00
Cr
6797e35703
chore: fix typos ( #541 )
2019-12-13 11:49:01 +01:00
Evan You
7431c2e46e
fix(runtime-core): ensure $forceUpdate behavior consistency with 2.x
2019-12-12 22:12:45 -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
8ffd79c754
fix(compiler-core): handle template root and template v-if as stable fragments
2019-12-12 21:09:47 -05:00
Evan You
f77ae132e5
feat(hmr): reload and force slot update on re-render
2019-12-12 21:09:47 -05:00
Evan You
ef50c333ce
fix(core): generate fragment root with patchFlag + optimize fragment w/ patchFlag
2019-12-12 21:09:47 -05:00
Evan You
efe39db023
feat(runtime-core): hot module replacement
2019-12-12 21:09:47 -05:00
Evan You
3116b5d6c3
fix(runtime-core): initialize renderCache if not present
2019-12-12 21:09:47 -05:00
Evan You
5ecc77df5a
chore: fix missed save
2019-12-11 10:39:29 -05:00
Evan You
4d730f464d
refactor: move runtime compile error handling to vue
2019-12-11 10:25:34 -05:00
Evan You
d3d4fe84cd
fix(vue): properly cache runtime compilation
2019-12-11 09:46:42 -05:00
Evan You
136ab753b3
build: adjust esm formats
2019-12-10 22:14:02 -05:00
Evan You
8ed04ed503
build: release script
2019-12-10 21:29:52 -05:00
Evan You
cd5ba7cfcc
build: remove lerna
2019-12-10 18:24:59 -05:00
Evan You
c97d83aff2
refactor(runtime-core): tweak component proxy implementation
2019-12-10 11:14:29 -05:00
GCA
2383b45e32
chore: fix typo ( #530 ) [ci skip]
2019-12-09 14:23:57 -05:00
Evan You
e7e1314ccc
test: fix warning
2019-12-09 14:23:01 -05:00
Evan You
c53fae987d
feat(runtime-core): warn incorrect root props value ( close #375 )
2019-12-09 14:06:31 -05:00
Evan You
83428fb844
chore: update readme
2019-12-09 14:06:31 -05:00
meteorlxy
f3007a6b4f
fix(core): use String to convert primitive types ( #518 )
2019-12-04 18:28:52 +01:00
Evan You
89a187b895
refactor(reactivity): separate track and trigger operation types
2019-12-03 11:30:24 -05:00
Evan You
a58da63f16
fix(core): should not warn extraneous props when root is toggled
2019-12-02 15:17:30 -05:00
Evan You
57bbbb227c
fix(core): propsProxy should not convert non-reactive nested values
2019-12-02 14:11:12 -05:00
hujiulong
08a1de5e29
chore: remove jsx.d.ts from package.files ( #512 )
2019-12-02 09:40:42 -05:00
Evan You
24f6d63c6a
fix(core): use correct parent for v-if toggle
2019-12-01 23:42:14 -05:00
Evan You
f5f2dca132
feat(core): support recursively resolving self component by name
2019-12-01 23:17:00 -05:00
JiZhi
ec2feeafad
chore: typo ( #488 ) [ci skip]
2019-12-01 12:03:26 -05:00
Evan You
800b0f0e7a
feat(transition): TransitionGroup
2019-11-28 18:41:01 -05:00
Evan You
a758540b6a
test(transition): test usage with KeepAlive
2019-11-28 12:16:42 -05:00
fisker Cheung
b87c05159b
style(runtime-core): remove a unnecessary continue ( #505 )
2019-11-28 10:45:48 -05:00
fisker Cheung
92b02dc48f
chore: comment typo ( #506 )
2019-11-28 10:01:53 +01:00
Evan You
32602ccee1
test(transition): in-out, appear & persisted
2019-11-27 17:54:41 -05:00
Evan You
7aac3418c0
test(transition): test for mode: out-in
2019-11-27 15:25:18 -05:00
Evan You
7209fb66c2
test: wip more tests for BaseTransition
2019-11-27 12:17:16 -05:00
Gabriel Loiácono
fbcc47841b
fix(runtime-core): fix error when passed plugin is undefined ( #502 )
2019-11-27 09:18:03 -05:00
Gabriel Loiácono
d4f4c7c4d4
fix(runtime-core): renderList with default value when source is undefined ( #498 )
2019-11-26 21:00:32 -05:00
Evan You
bb39910e8e
test: wip tests for BaseTransition
2019-11-26 18:07:05 -05:00
Evan You
43097987cf
feat(core): respect $stable slots flag per RFC
2019-11-26 10:03:36 -05:00
JiZhi
fc28a677bc
chore: fix warn typo ( #496 )
2019-11-26 09:27:51 +01:00
Rustin
d5f4cc9c42
chore: fix comment typo ( #499 )
...
* chore(typo): fix comment typo
* chore(typo): fix comment typo of KeepAlive
2019-11-26 09:26:03 +01:00
Evan You
c6fb506fc0
feat(transition): compat with keep-alive
2019-11-25 17:35:15 -05:00
Evan You
16ea2993d6
test: fix resolveDyanmicComponent test
2019-11-25 12:51:57 -05:00
Evan You
08a3d95e52
fix: resolveDynamicComponent should use context instance
2019-11-25 11:41:28 -05:00
Evan You
01eb3c12e9
feat(transition): warn non-animatable component root node
2019-11-25 11:41:28 -05:00
Evan You
1765985ec2
feat(transition): support in templates
2019-11-24 18:37:59 -05:00
Evan You
a834807942
refactor: rename transition components
2019-11-24 16:00:46 -05:00
Evan You
bdafa1dfc4
refactor: adjust warning for fn props and component with many props
2019-11-23 22:17:46 -05:00
Evan You
a6aa64b0cc
refactor: tweaks
2019-11-22 23:32:53 -05:00
Evan You
1b8236615e
feat(transition): handle persisted mode
2019-11-22 23:21:53 -05:00
Evan You
24b4120c21
types: fix dts
2019-11-22 18:09:26 -05:00
Evan You
5c691aebfd
feat(transition): handle cancel hooks
2019-11-22 17:10:17 -05:00
Evan You
7859e4bce3
feat(transition): CSS transition for runtime-dom
2019-11-22 15:35:41 -05:00
Evan You
21c41b3228
types: fix Transition exported typing
2019-11-21 10:21:09 -05:00
Evan You
79f23a2f77
feat(transition): support component child
2019-11-20 22:46:32 -05:00
Evan You
93561b080e
feat(transition): base transition component
2019-11-20 22:46:32 -05:00
JiZhi
f838715b7c
test(runtime-core): add tests for scheduler ( #462 )
2019-11-16 16:32:06 -05:00
JiZhi
aa6c67ee2e
fix(scheduler): warn recursive updates in postFlushCbs as well ( #456 )
2019-11-14 12:06:23 -05:00
ztplz
8e8397374c
chore: remove useless code ( #447 )
2019-11-14 11:23:04 -05:00
Evan You
08bf9976ae
types: ensure props are readonly
2019-11-09 18:40:25 -05:00
张晨成
f2cdc82be3
chore: fix typo ( #439 )
2019-11-08 22:41:55 -05:00
Evan You
acbbe3298c
refactor: move codeframe to @vue/shared
2019-11-06 15:13:15 -05:00
Evan You
d9c6ff372c
feat(core): allow passing explicit refs via props
2019-11-06 12:51:26 -05:00
Evan You
e79c918676
feat(inject): allow usage in functional components
2019-11-06 12:51:26 -05:00
Evan You
c61e5463fa
feat: warn duplicate plugin installations
2019-11-05 10:49:15 -05:00
Chester
2d5f9b58ac
refactor: skip destructuring when use with ( #425 )
2019-11-05 10:45:04 -05:00
Evan You
dfc7c0f12a
refactor: adjust internal vnode types + more dts tests
2019-11-04 18:38:55 -05:00
Evan You
957d3a0547
refactor: portal should not expect ref target
2019-11-04 14:42:47 -05:00
sh7dm
1a361e2e71
test(createRenderer): add tests for portal and fix found bugs
2019-11-04 14:37:50 -05:00
Evan You
e1d25e3537
feat: show fragment ids in dev
2019-11-04 14:28:01 -05:00
Evan You
300a705221
refactor: use __TEST__ flag
2019-11-04 14:28:01 -05:00
Evan You
25af8dc73b
refactor: improve warning output
2019-11-02 23:21:02 -04:00
Evan You
7f054782ad
feat: warn ref usage on functional components
2019-11-02 21:33:37 -04:00
Evan You
a651fc44f6
refactor: adjust shapeFlag naming
2019-11-02 21:26:25 -04:00
Evan You
90b9884eb4
refactor: rename/re-organize files
2019-11-02 12:18:35 -04:00
Evan You
abdaf10d88
chore: comments regarding Readonly usage
2019-11-02 10:40:08 -04:00
Evan You
26c859aedd
chore: simplify check
2019-11-02 10:38:25 -04:00
Evan You
5cdeeaa702
types: fix types
2019-11-01 23:04:28 -04:00
Evan You
66ecd8b47f
types: setup tests for built d.ts files
2019-11-01 22:54:01 -04:00
Evan You
7b7b8ef221
types: improve h inference + infer required props without need for as const
2019-11-01 17:06:19 -04:00
Evan You
b5c501c0b4
fix: fix shapeflags export
2019-11-01 17:05:38 -04:00
Evan You
492c1306f6
types: fix suspense exported type
2019-11-01 12:43:27 -04:00
Evan You
fc5b2964de
types: fix dts reliance on @vue/shared
2019-11-01 12:24:33 -04:00
Evan You
5eee1152ca
types: (wip) improve dts output
2019-11-01 11:32:53 -04:00
Evan You
06c5b0a861
types: refactor VNodeProps type
2019-11-01 09:58:27 -04:00
Evan You
3a6dcd3aba
types: improve h() and TSX type inference
...
- Should allow extraneous props as attrs in TSX
- Should check props when using constructor type returned by
createComponent() in h()
2019-10-31 12:43:05 -04:00
Evan You
b114cdf6ee
chore: comments explaining keep-alive implementation details [ci skip]
2019-10-31 12:41:28 -04:00