Commit Graph

1561 Commits

Author SHA1 Message Date
三咲智子 Kevin Deng 93f77292c9
fix(compiler-sfc): disallow `expose` property in `defineOptions` (#7967) 2023-03-28 17:32:37 +08:00
三咲智子 Kevin Deng bcf5841dde
feat(compiler-sfc): add defineOptions macro (#5738) 2023-03-28 10:43:51 +08:00
Evan You d77557c403
feat(types): `defineComponent()` with generics support (#7963)
BREAKING CHANGE: The type of `defineComponent()` when passing in a function has changed. This overload signature is rarely used in practice and the breakage will be minimal, so repurposing it to something more useful should be worth it.

close #3102
2023-03-27 18:28:43 +08:00
Evan You c288c7b0bd fix(types): ensure defineProps with generics return correct types 2023-03-26 15:58:04 +08:00
Evan You 4c9bfd2b99 feat(dx): improve readability of displayed types for props 2023-03-24 15:06:43 +08:00
Evan You 58e5c51149 build: upgrade to TypeScript 5.x 2023-03-23 17:11:35 +08:00
Evan You c02d8d097d chore: remove warnings due to potential false-positives 2023-02-21 22:43:45 +08:00
Evan You 8d2d5bf48a fix(runtime-core): support `getCurrentInstance` across mutiple builds of Vue 2023-02-21 21:59:41 +08:00
Evan You 34ad609bd7 refactor(runtime-core): use Symbol.for for runtime Symbols 2023-02-21 17:42:06 +08:00
Evan You 1ddde63b40 build: adjust dts test setup 2023-02-03 17:10:31 +08:00
Evan You eb0c1e7025 build: remove api-extractor 2023-02-03 15:57:00 +08:00
Evan You 6213b73cd2 build: custom const enum processing 2023-02-03 09:54:15 +08:00
Evan You 124373db50 wip: isolatedModules + use rollup-plugin-esbuild 2023-02-03 04:30:19 +08:00
Evan You 3a6f5eb0f7 fix(build): ensure BaseTransition functions can be tree-shaken 2023-02-02 21:38:57 +08:00
三咲智子 Kevin Deng a0a010ddc9
fix(types): optional boolean props should have boolean type in return type of defineProps (#7619)
close #7116
fix #5847
fix #7487
2023-02-01 21:57:28 -05:00
李想 1fde49c0f5
fix(runtime-core): fix keep-alive cache prune logic on vnodes with same type but different keys (#7510)
fix #7355
2023-02-01 04:02:03 -05:00
Anthony Fu 5f1883ec53
fix(types): accept sync `serverPrefetch()` (#7000) 2023-02-01 03:15:51 -05:00
Evan You a6be280fc3 chore: only wrap during tests 2023-01-26 20:59:30 +08:00
Evan You 7e8f175db7 wip(vitest-migration): runtime-core tests passing 2023-01-26 20:48:47 +08:00
Evan You f0d78e8c8f wip(vitest-migration): ssr tests passing 2023-01-26 16:18:40 +08:00
Evan You 8867bb259a wip(vitest-migration): reactivity tests passing 2023-01-26 15:25:55 +08:00
Anthony Fu 4a16b204be chore: run format 2023-01-12 12:58:11 +01:00
skirtle 4902354925
dx(runtime-core): warn when expose() is misused (#7221) 2023-01-09 15:23:10 +01:00
Thorsten Lünborg cd7c887b75
fix(reactivity): ensure watch(Effect) can run independent of unmounted instance if created in a detatched effectScope (fix #7319) (#7330)
* fix(reactivity): ensure watch(Effect) can run independent of unmounted instance if created in a detatched effectScope

* test: use separate counters for each watcher to make test more robust
2023-01-09 15:20:21 +01:00
白雾三语 c6e5bda27d
fix(customElement): customElement can emit event (#7296)
close https://github.com/vuejs/core/issues/7293
2022-12-23 22:32:21 +01:00
白雾三语 620327d527
fix(runtime-core): ensure prop type validation warning shows custom class names (#7198)
* fix(runtime-core): 

* fix(runtime-core): update

* fix(runtime-core): update reg

* test(runtime-core): add test case for warnings about prop type mismatches

Co-authored-by: Thorsten Luenborg <t.luenborg@googlemail.com>
2022-11-25 20:52:39 +01:00
Evan You b55846f05c fix(shared): toNumber should only coerce strings 2022-11-14 17:50:56 +08:00
翠 / green eb2a83283c
fix(types): allow assigning wider SetupContext type (#2818)
fix #2362
2022-11-14 04:33:29 -05:00
Evan You ce363e55a8 chore: fix assertNumber for undefined value 2022-11-14 16:57:44 +08:00
Evan You 7d0c63ff43 fix(custom-elements): use strict number casting
close #4946
close #2598
close #2604

This commit also refactors internal usage of previous loose
implementation of `toNumber` to the stricter version where applicable.
Use of `looseToNumber` is preserved for `v-model.number` modifier to
ensure backwards compatibility and consistency with Vue 2 behavior.
2022-11-14 16:20:12 +08:00
webfansplz 11bd8db768
chore(types): remove unnecessary type assertions (#7032) 2022-11-14 01:44:06 -05:00
Zollero da2ced1533
fix(runtime-core): set scope id before props (#6948)
close #6923
Also ensure consistency with Vue 2
2022-11-13 22:53:46 -05:00
webfansplz 0187f998f7
chore(runtime-core): add `isRegExp` to check `RegExp` (#6041) 2022-11-13 20:14:28 -05:00
Tony Trinh c513126c5d
types(runtime-core): support plugin options type inference (#3969) 2022-11-13 20:13:32 -05:00
Evan You ffef822869 fix(custom-elements): respect slot props in custom element mode 2022-11-11 16:06:05 +08:00
Thorsten Lünborg 665f2ae121
fix(custom-elements): fix event emitting for async custom elements (#5601)
fix #5599
2022-11-10 23:33:17 -05:00
花果山大圣 4798a9f704
refactor: more concise bitwise operations for flag removal (#7092) 2022-11-10 20:15:37 -05:00
被雨水过滤的空气(Rairn) 4049ffcf29
fix(runtime-core): fix move/removal of static fragments containing text nodes (#6858)
fix #6852
2022-11-10 05:03:10 -05:00
被雨水过滤的空气(Rairn) a54bff2c9c
fix(hmr/keep-alive): fix error in reload component (#7049)
fix #7042
2022-11-10 05:01:31 -05:00
Evan You f73925d76a fix(sfc): ensure `<script setup>` binding behavior consistency on `this` between prod and dev
close #6248
2022-11-10 16:02:45 +08:00
Evan You 11214eedd2 fix(teleport/css-v-bind): fix css v-bind in teleport in child component slot 2022-11-10 15:08:25 +08:00
Evan You 42239cf284 fix(teleport/css-v-bind): fix css v-bind for teleported content
fix #4605
close #4609 (used tests from this PR)
2022-11-10 14:41:45 +08:00
Evan You d45cbfcdfb chore(types): mark more internal component instance properties 2022-11-10 14:11:55 +08:00
Thorsten Lünborg 5dc593ba28
fix(watch): for immediate watch with single source, ensure cb is called with undefined as oldValue (#7075)
fix: #7074
2022-11-09 18:19:35 -05:00
skirtle fccfb1821f
chore(compat): change 'vnode-' to 'vue:' in event hooks warning (#7063) 2022-11-09 08:15:41 -05:00
Evan You 23e85e21a5 fix(watch): ensure oldValue in multi-source watcher is always an array
fix #7070
2022-11-09 20:50:02 +08:00
Evan You d33292dd47 chore: return early in warn() in prod 2022-11-09 11:48:35 +08:00
Evan You 8dbf083133 build: put ssrContext warning behind __DEV__ flag 2022-11-09 11:41:26 +08:00
被雨水过滤的空气(Rairn) 64e6d9221d
fix(transition/keep-alive): fix unmount bug for component with out-in transition (#6839)
fix #6835
2022-11-08 10:01:43 -05:00
Evan You 9906e3a82a chore: remove blank line [ci skip] 2022-11-08 14:29:13 +08:00