Skip to content

Commit 9d9efd4

Browse files
authored
feat(runtime-vapor): implement defineVaporComponent types (#13831)
1 parent 5ee8913 commit 9d9efd4

31 files changed

+1790
-127
lines changed

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
"test-e2e-vapor": "pnpm run prepare-e2e-vapor && vitest --project e2e-vapor",
2323
"prepare-e2e-vapor": "node scripts/build.js -f cjs+esm-bundler+esm-bundler-runtime && pnpm run -C packages-private/vapor-e2e-test build",
2424
"test-dts": "run-s build-dts test-dts-only",
25-
"test-dts-only": "tsc -p packages-private/dts-built-test/tsconfig.json && tsc -p ./packages-private/dts-test/tsconfig.test.json",
25+
"test-dts-only": "tsc -p packages-private/dts-built-test/tsconfig.json && tsc -p ./packages-private/dts-test/tsconfig.test.json && tsc -p ./packages-private/dts-test/vapor/tsconfig.json",
2626
"test-coverage": "vitest run --project unit* --coverage",
2727
"prebench": "node scripts/build.js -pf esm-browser reactivity",
2828
"prebench-compare": "node scripts/build.js -pf esm-browser reactivity",

packages-private/dts-test/defineComponent.test-d.tsx

Lines changed: 15 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1880,20 +1880,22 @@ interface ErrorMessageSlotProps {
18801880
* component types generated by vue-tsc
18811881
* relying on legacy CreateComponentPublicInstance signature
18821882
*/
1883+
type Props = Readonly<
1884+
vue.ExtractPropTypes<{
1885+
as: {
1886+
type: StringConstructor
1887+
default: any
1888+
}
1889+
name: {
1890+
type: StringConstructor
1891+
required: true
1892+
}
1893+
}> &
1894+
vue.AllowedComponentProps
1895+
>
18831896
declare const ErrorMessage: {
1884-
new (...args: any[]): vue.CreateComponentPublicInstance<
1885-
Readonly<
1886-
vue.ExtractPropTypes<{
1887-
as: {
1888-
type: StringConstructor
1889-
default: any
1890-
}
1891-
name: {
1892-
type: StringConstructor
1893-
required: true
1894-
}
1895-
}>
1896-
>,
1897+
new (props: Props): vue.CreateComponentPublicInstance<
1898+
Props,
18971899
() =>
18981900
| VNode<
18991901
vue.RendererNode,

packages-private/dts-test/tsconfig.test.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,8 @@
55
"module": "esnext",
66
"strict": true,
77
"moduleResolution": "node",
8-
"lib": ["esnext", "dom"]
8+
"lib": ["esnext", "dom"],
9+
"types": ["vue/jsx"]
910
},
1011
"include": ["./*"]
1112
}

packages-private/dts-test/utils.d.ts

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,6 @@
11
// This directory contains a number of d.ts assertions
22
// use \@ts-expect-error where errors are expected.
33

4-
// register global JSX
5-
import 'vue/jsx'
6-
74
export function describe(_name: string, _fn: () => void): void
85
export function test(_name: string, _fn: () => any): void
96

0 commit comments

Comments
 (0)