Skip to content

Commit 10ff527

Browse files
fix: add typing for decorators and routes (#241)
* fix: add typing for decorators and routes * Set version of fastify to ^5.3.2 everywhere --------- Co-authored-by: Wei Wang <[email protected]>
1 parent 5ad3fc7 commit 10ff527

File tree

11 files changed

+63
-58
lines changed

11 files changed

+63
-58
lines changed

package.json

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@
77
"private": "true",
88
"devDependencies": {
99
"execa": "^9.5.2",
10-
"fastify": "^5.2.2",
1110
"oxlint": "^0.9.10",
1211
"vite": "^6.2.5",
1312
"vitest": "^1.3.0",

packages/fastify-vite/package.json

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -45,10 +45,10 @@
4545
},
4646
"version": "8.0.5",
4747
"optionalDependencies": {
48-
"vite": "^6.2.4",
49-
"@fastify/vue": "workspace:^",
48+
"@fastify/htmx": "workspace:^",
5049
"@fastify/react": "workspace:^",
51-
"@fastify/htmx": "workspace:^"
50+
"@fastify/vue": "workspace:^",
51+
"vite": "^6.2.4"
5252
},
5353
"dependencies": {
5454
"@fastify/deepmerge": "^3.0.0",
@@ -64,13 +64,16 @@
6464
"@biomejs/biome": "^1.9.4",
6565
"@types/node": "^22.13.17",
6666
"@vitest/ui": "^3.1.1",
67-
"fastify": "^5.2.2",
67+
"fastify": "^5.3.2",
6868
"typescript": "~5.8.2",
6969
"vitest": "^3.1.1"
7070
},
7171
"peerDependencies": {
7272
"fastify": ">=5",
7373
"vite": ">=5"
7474
},
75-
"keywords": ["fastify", "vite"]
75+
"keywords": [
76+
"fastify",
77+
"vite"
78+
]
7679
}

pnpm-lock.yaml

Lines changed: 32 additions & 35 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

pnpm-workspace.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ catalog:
99
'@vitejs/plugin-vue': ^5.2.3
1010
'@vitejs/plugin-react': ^4.4.1
1111
devalue: ^5.1.1
12-
fastify: ^5.2.2
12+
fastify: ^5.3.2
1313
oxlint: ^0.16.6
1414
react-dom: ^19.1.0
1515
react-router: ^7.5.1

starters/react-base/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
"@fastify/one-line-logger": "^2.0.2",
1212
"@fastify/react": "latest",
1313
"@fastify/vite": "latest",
14-
"fastify": "^5.2.2",
14+
"fastify": "^5.3.2",
1515
"history": "^5.3.0",
1616
"minipass": "^7.1.2",
1717
"react": "^19.1.0",

starters/react-kitchensink/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
"@fastify/one-line-logger": "^2.0.2",
1212
"@fastify/react": "workspace:^",
1313
"@fastify/vite": "workspace:^",
14-
"fastify": "^5.2.2",
14+
"fastify": "^5.3.2",
1515
"history": "^5.3.0",
1616
"minipass": "^7.1.2",
1717
"react": "^19.1.0",

starters/react-typescript/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
"@fastify/one-line-logger": "^2.0.2",
1414
"@fastify/react": "workspace:^",
1515
"@fastify/vite": "workspace:^",
16-
"fastify": "^5.2.2",
16+
"fastify": "^5.3.2",
1717
"history": "^5.3.0",
1818
"minipass": "^7.1.2",
1919
"react": "^19.1.0",

starters/react-typescript/server.ts

Lines changed: 16 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,10 @@ import Fastify from 'fastify'
22
import FastifyVite from '@fastify/vite'
33
import FastifyFormBody from '@fastify/formbody'
44

5+
interface Database {
6+
todoList: string[]
7+
}
8+
59
const server = Fastify({
610
logger: {
711
transport: {
@@ -10,35 +14,37 @@ const server = Fastify({
1014
}
1115
})
1216

13-
// @ts-ignore
1417
await server.register(FastifyFormBody)
15-
// @ts-ignore
18+
1619
await server.register(FastifyVite, {
1720
// TODO handle via CLI path argument with proper resolve
1821
root: process.cwd(),
1922
renderer: '@fastify/react',
2023
})
2124

22-
// @ts-ignore
2325
await server.vite.ready()
2426

25-
server.decorate('db', {
27+
server.decorate<Database>('db', {
2628
todoList: [
2729
'Do laundry',
2830
'Respond to emails',
2931
'Write report',
3032
]
3133
})
3234

33-
server.put('/api/todo/items', (req, reply) => {
34-
// @ts-ignore
35-
server.db.todoList.push(req.body)
35+
server.put<{
36+
Body: string
37+
}>('/api/todo/items', (req, reply) => {
38+
const db = server.getDecorator<Database>('db')
39+
db.todoList.push(req.body)
3640
reply.send({ ok: true })
3741
})
3842

39-
server.delete('/api/todo/items', (req, reply) => {
40-
// @ts-ignore
41-
server.db.todoList.splice(req.body, 1)
43+
server.delete<{
44+
Body: number
45+
}>('/api/todo/items', (req, reply) => {
46+
const db = server.getDecorator<Database>('db')
47+
db.todoList.splice(req.body, 1)
4248
reply.send({ ok: true })
4349
})
4450

starters/vue-base/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
"@fastify/one-line-logger": "^2.0.2",
1313
"@fastify/vite": "8.0.0",
1414
"@fastify/vue": "1.0.0",
15-
"fastify": "^5.2.2",
15+
"fastify": "^5.3.2",
1616
"unihead": "^0.8.0",
1717
"vue": "^3.5.13",
1818
"vue-router": "^4.5.0"

starters/vue-kitchensink/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
"@fastify/one-line-logger": "^2.0.2",
1313
"@fastify/vite": "8.0.0",
1414
"@fastify/vue": "1.0.0",
15-
"fastify": "^5.2.2",
15+
"fastify": "^5.3.2",
1616
"html-rewriter-wasm": "^0.4.1",
1717
"unihead": "^0.8.0",
1818
"vue": "^3.5.13",

0 commit comments

Comments
 (0)