@kamaalio/hono-standard-openapi 0.0.11 → 0.0.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +26 -1
- package/dist/compose.d.ts +1 -1
- package/dist/compose.d.ts.map +1 -1
- package/dist/compose.js.map +1 -1
- package/dist/json-schema.js +13 -1
- package/dist/json-schema.js.map +1 -1
- package/dist/type-inference.d.ts +7 -13
- package/dist/type-inference.d.ts.map +1 -1
- package/package.json +3 -1
package/README.md
CHANGED
|
@@ -6,6 +6,7 @@ validator. Routes validate requests, infer handler types, and generate a matchin
|
|
|
6
6
|
## Index
|
|
7
7
|
|
|
8
8
|
- [Installation](#installation)
|
|
9
|
+
- [Schema-library support](#schema-library-support)
|
|
9
10
|
- [Set up a route](#set-up-a-route)
|
|
10
11
|
- [Add middleware to a route](#add-middleware-to-a-route)
|
|
11
12
|
- [Add response examples](#add-response-examples)
|
|
@@ -15,6 +16,8 @@ validator. Routes validate requests, infer handler types, and generate a matchin
|
|
|
15
16
|
- [Using ArkType](./docs/arktype.md)
|
|
16
17
|
- [Using Zod](./docs/zod.md)
|
|
17
18
|
- [Using Valibot](./docs/valibot.md)
|
|
19
|
+
- [Using Sury](./docs/sury.md)
|
|
20
|
+
- [Using VineJS](./docs/vinejs.md)
|
|
18
21
|
|
|
19
22
|
## Installation
|
|
20
23
|
|
|
@@ -28,6 +31,26 @@ Install one supported schema library as well. The examples below use Zod:
|
|
|
28
31
|
pnpm add zod
|
|
29
32
|
```
|
|
30
33
|
|
|
34
|
+
## Schema-library support
|
|
35
|
+
|
|
36
|
+
The libraries below are supported for request validation and OpenAPI generation.
|
|
37
|
+
|
|
38
|
+
| Library | Request validation | OpenAPI schemas | Named components |
|
|
39
|
+
| ---------------------------------- | ------------------ | --------------- | ------------------------------- |
|
|
40
|
+
| [ArkType](./docs/arktype.md) | ✅ | ✅ | ✅ |
|
|
41
|
+
| [Zod](./docs/zod.md) | ✅ | ✅ | ✅ |
|
|
42
|
+
| [Zod Mini](./docs/zod.md#zod-mini) | ✅ | ✅ | ✅ |
|
|
43
|
+
| [Valibot](./docs/valibot.md) | ✅ | ✅ | ✅ |
|
|
44
|
+
| [Sury](./docs/sury.md) | ✅ | ✅ | ❌ — schemas are emitted inline |
|
|
45
|
+
| [VineJS](./docs/vinejs.md) | ✅ | ✅ | ❌ — schemas are emitted inline |
|
|
46
|
+
|
|
47
|
+
Sury requires `S.enableStandardJSONSchema()` once before routes are registered.
|
|
48
|
+
Its schemas do not currently emit names for reusable OpenAPI components, so
|
|
49
|
+
their generated OpenAPI schemas remain inline.
|
|
50
|
+
|
|
51
|
+
VineJS v4.3.0 and later exposes compiled validators through its Standard JSON
|
|
52
|
+
Schema input converter. Its response schemas are emitted inline.
|
|
53
|
+
|
|
31
54
|
## Set up a route
|
|
32
55
|
|
|
33
56
|
Define the request and response schemas, describe the route with `createRoute`, then register it
|
|
@@ -92,7 +115,7 @@ const getCard = createRoute({
|
|
|
92
115
|
## Add response examples
|
|
93
116
|
|
|
94
117
|
Put an OpenAPI `example` next to a response media type. This is independent of the schema library,
|
|
95
|
-
so it works with ArkType, Zod, Valibot, and every other supported Standard Schema library:
|
|
118
|
+
so it works with ArkType, Zod, Valibot, Sury, and every other supported Standard Schema library:
|
|
96
119
|
|
|
97
120
|
```ts
|
|
98
121
|
responses: {
|
|
@@ -157,3 +180,5 @@ that needs the document directly, call `app.getOpenAPIDocument(config)` with the
|
|
|
157
180
|
- [Use ArkType](./docs/arktype.md): native JSON Schema, components, multiple responses, and errors.
|
|
158
181
|
- [Use Zod](./docs/zod.md): components, multiple responses, and validation errors.
|
|
159
182
|
- [Use Valibot](./docs/valibot.md): converter setup, components, multiple responses, and errors.
|
|
183
|
+
- [Use Sury](./docs/sury.md): native JSON Schema and request validation.
|
|
184
|
+
- [Use VineJS](./docs/vinejs.md): native Standard JSON Schema and request validation.
|
package/dist/compose.d.ts
CHANGED
|
@@ -38,7 +38,7 @@ export declare function allOf(schemas: readonly SchemaOrReference[]): ComposedSc
|
|
|
38
38
|
* {@link allOf} then composes with the rest of that response.
|
|
39
39
|
*/
|
|
40
40
|
export declare function objectSchema(properties: Readonly<Record<string, SchemaOrReference>>): ComposedSchema;
|
|
41
|
-
export declare function isComposedSchema(value:
|
|
41
|
+
export declare function isComposedSchema<T>(value: T): value is T & ComposedSchema;
|
|
42
42
|
export declare function compositeOf(schema: ComposedSchema): Composite;
|
|
43
43
|
export {};
|
|
44
44
|
//# sourceMappingURL=compose.d.ts.map
|
package/dist/compose.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compose.d.ts","sourceRoot":"","sources":["../src/compose.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEpD,KAAK,SAAS,GACV;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,eAAe,CAAC,MAAM,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,SAAS,iBAAiB,EAAE,CAAA;CAAE,GAChG;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,eAAe,CAAC,MAAM,CAAC;IAAC,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAAA;CAAE,CAAC;AAEvH;;;;;;;GAOG;AACH,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,CAAC,OAAO,CAAC,EAAE,SAAS,CAAC;CAC/B;AAED,QAAA,MAAM,OAAO,EAAE,OAAO,MAA8D,CAAC;AAErF,QAAA,MAAM,eAAe;aAAK,MAAM,EAAE,OAAO;aAAE,MAAM,EAAE,QAAQ;CAAW,CAAC;AAEvE;;;;;;GAMG;AACH,wBAAgB,KAAK,CAAC,OAAO,EAAE,SAAS,iBAAiB,EAAE,GAAG,cAAc,CAE3E;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC,GAAG,cAAc,CAEpG;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"compose.d.ts","sourceRoot":"","sources":["../src/compose.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAEpD,KAAK,SAAS,GACV;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,eAAe,CAAC,MAAM,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,SAAS,iBAAiB,EAAE,CAAA;CAAE,GAChG;IAAE,QAAQ,CAAC,IAAI,EAAE,OAAO,eAAe,CAAC,MAAM,CAAC;IAAC,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAAA;CAAE,CAAC;AAEvH;;;;;;;GAOG;AACH,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,CAAC,OAAO,CAAC,EAAE,SAAS,CAAC;CAC/B;AAED,QAAA,MAAM,OAAO,EAAE,OAAO,MAA8D,CAAC;AAErF,QAAA,MAAM,eAAe;aAAK,MAAM,EAAE,OAAO;aAAE,MAAM,EAAE,QAAQ;CAAW,CAAC;AAEvE;;;;;;GAMG;AACH,wBAAgB,KAAK,CAAC,OAAO,EAAE,SAAS,iBAAiB,EAAE,GAAG,cAAc,CAE3E;AAED;;;;;;GAMG;AACH,wBAAgB,YAAY,CAAC,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC,GAAG,cAAc,CAEpG;AAED,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,KAAK,IAAI,CAAC,GAAG,cAAc,CAEzE;AAED,wBAAgB,WAAW,CAAC,MAAM,EAAE,cAAc,GAAG,SAAS,CAE7D"}
|
package/dist/compose.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compose.js","sourceRoot":"","sources":["../src/compose.ts"],"names":[],"mappings":"AAkBA,MAAM,OAAO,GAAkB,MAAM,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC;AAErF,MAAM,eAAe,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAW,CAAC;AAEvE;;;;;;GAMG;AACH,MAAM,UAAU,KAAK,CAAC,OAAqC;IACzD,OAAO,EAAE,CAAC,OAAO,CAAC,EAAE,EAAE,IAAI,EAAE,eAAe,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,CAAC;AAClE,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,YAAY,CAAC,UAAuD;IAClF,OAAO,EAAE,CAAC,OAAO,CAAC,EAAE,EAAE,IAAI,EAAE,eAAe,CAAC,MAAM,EAAE,UAAU,EAAE,EAAE,CAAC;AACrE,CAAC;AAED,MAAM,UAAU,gBAAgB,
|
|
1
|
+
{"version":3,"file":"compose.js","sourceRoot":"","sources":["../src/compose.ts"],"names":[],"mappings":"AAkBA,MAAM,OAAO,GAAkB,MAAM,CAAC,GAAG,CAAC,yCAAyC,CAAC,CAAC;AAErF,MAAM,eAAe,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAW,CAAC;AAEvE;;;;;;GAMG;AACH,MAAM,UAAU,KAAK,CAAC,OAAqC;IACzD,OAAO,EAAE,CAAC,OAAO,CAAC,EAAE,EAAE,IAAI,EAAE,eAAe,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,CAAC;AAClE,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,YAAY,CAAC,UAAuD;IAClF,OAAO,EAAE,CAAC,OAAO,CAAC,EAAE,EAAE,IAAI,EAAE,eAAe,CAAC,MAAM,EAAE,UAAU,EAAE,EAAE,CAAC;AACrE,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAI,KAAQ;IAC1C,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,IAAI,KAAK,CAAC;AACzE,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,MAAsB;IAChD,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC;AACzB,CAAC"}
|
package/dist/json-schema.js
CHANGED
|
@@ -117,9 +117,21 @@ export function convertSchema(schema, options) {
|
|
|
117
117
|
return walk(named, context);
|
|
118
118
|
}
|
|
119
119
|
function describe(schema, io, target, libraryOptions) {
|
|
120
|
-
const
|
|
120
|
+
const converter = schema['~standard'].jsonSchema;
|
|
121
|
+
const options = { libraryOptions, target };
|
|
122
|
+
const raw = io === 'output' ? describeOutput(converter, options) : converter.input(options);
|
|
123
|
+
const { $schema: _dialect, ...rest } = raw;
|
|
121
124
|
return rest;
|
|
122
125
|
}
|
|
126
|
+
/** Uses an input schema when a library does not expose a separate output schema. */
|
|
127
|
+
function describeOutput(converter, options) {
|
|
128
|
+
try {
|
|
129
|
+
return converter.output(options);
|
|
130
|
+
}
|
|
131
|
+
catch {
|
|
132
|
+
return converter.input(options);
|
|
133
|
+
}
|
|
134
|
+
}
|
|
123
135
|
function splitDefinitions(raw) {
|
|
124
136
|
const root = { ...raw };
|
|
125
137
|
const definitions = {};
|
package/dist/json-schema.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json-schema.js","sourceRoot":"","sources":["../src/json-schema.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"json-schema.js","sourceRoot":"","sources":["../src/json-schema.ts"],"names":[],"mappings":"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"}
|
package/dist/type-inference.d.ts
CHANGED
|
@@ -52,28 +52,22 @@ export type ComputeInput<R extends RouteConfigBase> = InputTypeBase<R, 'params',
|
|
|
52
52
|
* Keys can be written either way — `200` or `'200'` — so both forms resolve to the same code.
|
|
53
53
|
*/
|
|
54
54
|
type StatusFrom<Key> = Key extends StatusCode ? Key : Key extends `${infer Status extends number}` ? Status extends StatusCode ? Status : never : never;
|
|
55
|
-
type ResponseBody<
|
|
55
|
+
type ResponseBody<ResponseEntry, MediaType> = MediaType extends keyof ResponseEntry ? ResponseEntry[MediaType] extends {
|
|
56
56
|
schema: infer Schema extends StandardSchemaV1;
|
|
57
57
|
} ? StandardSchemaV1.InferOutput<Schema> : never : never;
|
|
58
|
-
type TypedResponseFor<
|
|
58
|
+
type TypedResponseFor<ResponseEntry, Status extends StatusCode> = ResponseEntry extends {
|
|
59
59
|
content: infer Content;
|
|
60
|
-
} ? ResponseBody<Content, JsonMediaType<Content>> extends infer Body ? [Body] extends [never] ? TypedResponse<unknown, Status, '
|
|
60
|
+
} ? JsonMediaType<Content> extends never ? Response & TypedResponse<unknown, Status, 'text'> : [ResponseBody<Content, JsonMediaType<Content>>] extends [infer Body] ? [Body] extends [never] ? Response & TypedResponse<unknown, Status, 'json'> : Response & TypedResponse<Body, Status, 'json'> : never : never;
|
|
61
61
|
/** The responses a handler is allowed to return, one per documented status code. */
|
|
62
62
|
export type RouteConfigToTypedResponse<R extends RouteConfigBase> = {
|
|
63
63
|
[Key in keyof R['responses']]: TypedResponseFor<R['responses'][Key], StatusFrom<Key>>;
|
|
64
64
|
}[keyof R['responses']];
|
|
65
|
-
type HasContentlessResponse<R extends RouteConfigBase> = {
|
|
66
|
-
[Key in keyof R['responses']]: R['responses'][Key] extends {
|
|
67
|
-
content: unknown;
|
|
68
|
-
} ? never : true;
|
|
69
|
-
}[keyof R['responses']];
|
|
70
65
|
/**
|
|
71
|
-
* What a handler may return
|
|
72
|
-
*
|
|
73
|
-
*
|
|
74
|
-
* `Response`, since there is no schema to satisfy.
|
|
66
|
+
* What a handler may return: either the response typed against the route's own documented schemas, or
|
|
67
|
+
* a plain `Response` it built itself. Hono accepts a raw `Response` from any handler regardless of a
|
|
68
|
+
* route's declared shape, so this type only ever adds precision — it never has to be the sole option.
|
|
75
69
|
*/
|
|
76
|
-
export type RouteHandlerResponse<R extends RouteConfigBase> =
|
|
70
|
+
export type RouteHandlerResponse<R extends RouteConfigBase> = RouteConfigToTypedResponse<R> | Promise<RouteConfigToTypedResponse<R>> | Response | Promise<Response>;
|
|
77
71
|
export type RouteHandler<R extends RouteConfigBase, E extends Env = Env> = Handler<E, ConvertPathType<R['path']>, ComputeInput<R>, RouteHandlerResponse<R>>;
|
|
78
72
|
export type RouteMiddleware<E extends Env = Env> = MiddlewareHandler<E> | readonly MiddlewareHandler<E>[];
|
|
79
73
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"type-inference.d.ts","sourceRoot":"","sources":["../src/type-inference.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"type-inference.d.ts","sourceRoot":"","sources":["../src/type-inference.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kamaalio/hono-standard-openapi",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.13",
|
|
4
4
|
"description": "Generate OpenAPI documents from any Standard Schema library, for Hono.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"hono",
|
|
@@ -51,6 +51,7 @@
|
|
|
51
51
|
"@standard-schema/spec": "^1.1.0",
|
|
52
52
|
"@types/node": "^26.2.0",
|
|
53
53
|
"@valibot/to-json-schema": "^1.7.1",
|
|
54
|
+
"@vinejs/vine": "^4.4.0",
|
|
54
55
|
"@vitest/coverage-v8": "^4.1.11",
|
|
55
56
|
"arktype": "^2.2.3",
|
|
56
57
|
"eslint-plugin-import": "^2.32.0",
|
|
@@ -60,6 +61,7 @@
|
|
|
60
61
|
"oxfmt": "^0.64.0",
|
|
61
62
|
"oxlint": "^1.80.0",
|
|
62
63
|
"oxlint-tsgolint": "^7.0.2001",
|
|
64
|
+
"sury": "11.0.0-rc.2",
|
|
63
65
|
"typescript": "^7.0.2",
|
|
64
66
|
"valibot": "^1.4.2",
|
|
65
67
|
"vitest": "^4.1.11",
|