Skip to content

Commit bde1e89

Browse files
committed
🎉 feat: use fromTypes from index
1 parent 067f206 commit bde1e89

File tree

6 files changed

+18
-26
lines changed

6 files changed

+18
-26
lines changed

bun.lock

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@
2929
"@elysiajs/eden": "^1.4.0",
3030
"@elysiajs/html": "^1.4.0",
3131
"@elysiajs/jwt": "^1.4.0",
32-
"@elysiajs/openapi": "1.4.2",
32+
"@elysiajs/openapi": "1.4.10",
3333
"@elysiajs/opentelemetry": "^1.4.0",
3434
"@elysiajs/server-timing": "^1.4.0",
3535
"@elysiajs/static": "^1.4.0",
@@ -189,7 +189,7 @@
189189

190190
"@elysiajs/jwt": ["@elysiajs/[email protected]", "", { "dependencies": { "jose": "^6.0.11" }, "peerDependencies": { "elysia": ">= 1.4.0" } }, "sha512-Z0PvZhQxdDeKZ8HslXzDoXXD83NKExNPmoiAPki3nI2Xvh5wtUrBH+zWOD17yP14IbRo8fxGj3L25MRCAPsgPA=="],
191191

192-
"@elysiajs/openapi": ["@elysiajs/[email protected].2", "", { "peerDependencies": { "elysia": ">= 1.4.0" } }, "sha512-i+9YYVmX9Qx40dGRI9DE9zZJrEo4qXo5h2lfuxf1WuQZKYY8RonnYQZYbdWr/Azs8upTfIdyCifgjfu3Cht8rw=="],
192+
"@elysiajs/openapi": ["@elysiajs/[email protected].10", "", { "peerDependencies": { "elysia": ">= 1.4.0" } }, "sha512-bEsETp/CGcs1CqH3zW6/CAI2g6d0K/g8wUuH7HwXQm0gtP18s9RnljJESuv4of3ePUoYQgy85t+dha+ABv+L/A=="],
193193

194194
"@elysiajs/opentelemetry": ["@elysiajs/[email protected]", "", { "dependencies": { "@opentelemetry/api": "^1.9.0", "@opentelemetry/instrumentation": "^0.200.0", "@opentelemetry/sdk-node": "^0.200.0" }, "peerDependencies": { "elysia": ">= 1.4.0" } }, "sha512-snW/u/mLXU1OR86XgDW+CvsZEL1sFLeatWqxu2Knxk/0c9mxQsWYfDJP7hpP+iOL2Ryp9z9q1uRwgc6Rxze6eA=="],
195195

docs/at-glance.md

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -223,12 +223,11 @@ Elysia also supports OpenAPI schema generation with **1 line directly from types
223223

224224
```typescript
225225
import { Elysia, t } from 'elysia'
226-
import { openapi } from '@elysiajs/oepnapi'
227-
import { fromTypes } from '@elysiajs/openapi/gen'
226+
import { openapi, fromTypes } from '@elysiajs/openapi'
228227

229228
export const app = new Elysia()
230229
.use(openapi({
231-
references: fromTypes('src/index.ts') // [!code ++]
230+
references: fromTypes() // [!code ++]
232231
}))
233232
.get('/user/:id', ({ params: { id } }) => id, {
234233
params: t.Object({
@@ -246,12 +245,11 @@ With Elysia, you can synchronize your types with your frontend team automaticall
246245

247246
```typescript twoslash
248247
import { Elysia, t } from 'elysia'
249-
import { openapi } from '@elysiajs/openapi'
250-
import { fromTypes } from '@elysiajs/openapi/gen'
248+
import { openapi, fromTypes } from '@elysiajs/openapi'
251249

252250
export const app = new Elysia()
253251
.use(openapi({
254-
references: fromTypes('src/index.ts')
252+
references: fromTypes()
255253
}))
256254
.get('/user/:id', ({ params: { id } }) => id, {
257255
params: t.Object({

docs/blog/openapi-type-gen.md

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -106,17 +106,16 @@ This is something profound, and can hardly replicated by any other framework.
106106
To add OpenAPI Type Gen to your codebase, simply:
107107

108108
1. export an Elysia instance
109-
2. provide file path to type generator
109+
2. provide root Elysia file path (if not provided, Elysia will use `src/index.ts`)
110110

111111
```ts
112112
import { Elysia } from 'elysia'
113-
import { openapi } from '@elysiajs/openapi'
114-
import { fromTypes } from '@elysiajs/openapi/gen' // [!code ++]
113+
import { openapi, fromTypes } from '@elysiajs/openapi' // [!code ++]
115114
116115
export const app = new Elysia() // [!code ++]
117116
.use(
118117
openapi({
119-
references: fromTypes('src/index.ts') // [!code ++]
118+
references: fromTypes() // [!code ++]
120119
})
121120
)
122121
```

docs/index.md

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -250,13 +250,12 @@ new Elysia()
250250

251251
```typescript [With Type Gen]
252252
import { Elysia } from 'elysia'
253-
import { openapi } from '@elysiajs/openapi'
254-
import { fromTypes } from '@elysiajs/openapi/gen'
253+
import { openapi, fromTypes } from '@elysiajs/openapi'
255254

256255
export const app = new Elysia()
257256
.use(
258257
openapi({
259-
references: fromTypes('src/index.ts')
258+
references: fromTypes()
260259
})
261260
)
262261
```

docs/patterns/openapi.md

Lines changed: 6 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -52,18 +52,17 @@ By default, Elysia relies on runtime schema to generate OpenAPI documentation.
5252

5353
However, you can also generate OpenAPI documentation from types by using a generator from OpenAPI plugin as follows:
5454

55-
1. Specify the root file of your project (usually `src/index.ts`), and export an instance
55+
1. Specify your Elysia root file (if not specified, Elysia will use `src/index.ts`), and export an instance
5656

5757
2. Import a generator and provide a **file path from project root** to type generator
5858
```ts
5959
import { Elysia, t } from 'elysia'
60-
import { openapi } from '@elysiajs/openapi'
61-
import { fromTypes } from '@elysiajs/openapi/gen' // [!code ++]
60+
import { openapi, fromTypes } from '@elysiajs/openapi' // [!code ++]
6261
6362
export const app = new Elysia() // [!code ++]
6463
.use(
6564
openapi({
66-
references: fromTypes('src/index.ts') // [!code ++]
65+
references: fromTypes() // [!code ++]
6766
})
6867
)
6968
.get('/', { test: 'hello' as const })
@@ -86,8 +85,7 @@ It's recommended that you should pre-generate the declaration file (**.d.ts**) t
8685

8786
```ts
8887
import { Elysia, t } from 'elysia'
89-
import { openapi } from '@elysiajs/openapi'
90-
import { fromTypes } from '@elysiajs/openapi/gen'
88+
import { openapi, fromTypes } from '@elysiajs/openapi'
9189

9290
const app = new Elysia()
9391
.use(
@@ -110,8 +108,7 @@ As it's unreliable to guess to root of the project, it's recommended to provide
110108

111109
```ts
112110
import { Elysia, t } from 'elysia'
113-
import { openapi } from '@elysiajs/openapi'
114-
import { fromTypes } from '@elysiajs/openapi/gen'
111+
import { openapi, fromTypes } from '@elysiajs/openapi'
115112

116113
export const app = new Elysia()
117114
.use(
@@ -135,8 +132,7 @@ If you have multiple `tsconfig.json` files, it's important that you must specify
135132

136133
```ts
137134
import { Elysia, t } from 'elysia'
138-
import { openapi } from '@elysiajs/openapi'
139-
import { fromTypes } from '@elysiajs/openapi/gen'
135+
import { openapi, fromTypes } from '@elysiajs/openapi'
140136

141137
export const app = new Elysia()
142138
.use(

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@
3232
"@elysiajs/eden": "^1.4.0",
3333
"@elysiajs/html": "^1.4.0",
3434
"@elysiajs/jwt": "^1.4.0",
35-
"@elysiajs/openapi": "1.4.2",
35+
"@elysiajs/openapi": "1.4.10",
3636
"@elysiajs/opentelemetry": "^1.4.0",
3737
"@elysiajs/server-timing": "^1.4.0",
3838
"@elysiajs/static": "^1.4.0",

0 commit comments

Comments
 (0)