@asenajs/hono-adapter 4.0.0 → 5.0.1
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 +5 -3
- package/dist/lib/HonoAdapter.d.ts +6 -22
- package/dist/lib/HonoAdapter.js +89 -90
- package/dist/lib/HonoAdapter.js.map +1 -1
- package/dist/lib/HonoContextWrapper.d.ts +18 -4
- package/dist/lib/HonoContextWrapper.js +202 -23
- package/dist/lib/HonoContextWrapper.js.map +1 -1
- package/dist/lib/defaults/Context.d.ts +5 -1
- package/dist/lib/defaults/Context.js +2 -1
- package/dist/lib/defaults/Context.js.map +1 -1
- package/dist/lib/defaults/MiddlewareService.d.ts +1 -1
- package/dist/lib/defaults/MiddlewareService.js +1 -0
- package/dist/lib/defaults/MiddlewareService.js.map +1 -1
- package/dist/lib/defaults/index.d.ts +1 -0
- package/dist/lib/defaults/index.js +1 -0
- package/dist/lib/defaults/index.js.map +1 -1
- package/dist/lib/defineContext.d.ts +8 -0
- package/dist/lib/defineContext.js +10 -0
- package/dist/lib/defineContext.js.map +1 -0
- package/dist/lib/middlewares/RateLimiterMiddleware.d.ts +73 -3
- package/dist/lib/middlewares/RateLimiterMiddleware.js +95 -7
- package/dist/lib/middlewares/RateLimiterMiddleware.js.map +1 -1
- package/dist/lib/middlewares/WebSocketOriginMiddleware.d.ts +81 -0
- package/dist/lib/middlewares/WebSocketOriginMiddleware.js +81 -0
- package/dist/lib/middlewares/WebSocketOriginMiddleware.js.map +1 -0
- package/dist/lib/utils/serveStatic.d.ts +3 -0
- package/dist/lib/utils/serveStatic.js +17 -0
- package/dist/lib/utils/serveStatic.js.map +1 -0
- package/package.json +4 -4
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Asena Hono Adapter
|
|
2
2
|
|
|
3
|
-
[](https://github.com/AsenaJs/hono-adapter)
|
|
4
4
|
[](https://bun.sh)
|
|
5
5
|
|
|
6
6
|
HTTP and WebSocket adapter implementation based on Hono web framework for Asena.js.
|
|
@@ -15,10 +15,12 @@ HTTP and WebSocket adapter implementation based on Hono web framework for Asena.
|
|
|
15
15
|
- Validation support with Zod
|
|
16
16
|
- Decorators for controller-based routing
|
|
17
17
|
|
|
18
|
+
Request pipeline order: global middlewares → route middlewares → validator → handler.
|
|
19
|
+
|
|
18
20
|
## Requirements
|
|
19
21
|
|
|
20
22
|
- [Bun](https://bun.sh) v1.4 or higher
|
|
21
|
-
- [@asenajs/asena](https://github.com/AsenaJs/Asena) v0.
|
|
23
|
+
- [@asenajs/asena](https://github.com/AsenaJs/Asena) v0.12.0 or higher (peer dependency)
|
|
22
24
|
- [Hono](https://hono.dev) v4.12.9 or higher (peer dependency)
|
|
23
25
|
- [Zod](https://zod.dev) v4.3.6 or higher (peer dependency)
|
|
24
26
|
- TypeScript v5.8.2 or above
|
|
@@ -166,4 +168,4 @@ bun run build
|
|
|
166
168
|
|
|
167
169
|
## License
|
|
168
170
|
|
|
169
|
-
This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.
|
|
171
|
+
This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.
|
|
@@ -202,6 +202,7 @@ export declare class HonoAdapter extends AsenaAdapter<HonoAdapterContext, Valida
|
|
|
202
202
|
setPort(port: number): void;
|
|
203
203
|
private prepareMiddlewares;
|
|
204
204
|
private prepareHandler;
|
|
205
|
+
private getRequestWrapper;
|
|
205
206
|
/**
|
|
206
207
|
* Prepares static serve options with enhanced features
|
|
207
208
|
* @param staticServe - Base static serve parameters
|
|
@@ -214,6 +215,7 @@ export declare class HonoAdapter extends AsenaAdapter<HonoAdapterContext, Valida
|
|
|
214
215
|
* @returns Array of Hono middleware handlers for validation
|
|
215
216
|
*/
|
|
216
217
|
private prepareValidator;
|
|
218
|
+
private createValidatorMiddleware;
|
|
217
219
|
/**
|
|
218
220
|
* @description Answer a failed validation.
|
|
219
221
|
*
|
|
@@ -242,27 +244,6 @@ export declare class HonoAdapter extends AsenaAdapter<HonoAdapterContext, Valida
|
|
|
242
244
|
* - Exclude patterns → runtime shouldApplyMiddleware check (Hono has no native exclude)
|
|
243
245
|
*/
|
|
244
246
|
private registerGlobalMiddlewaresTopLevel;
|
|
245
|
-
/**
|
|
246
|
-
* Gets global middlewares that should be applied to a specific path
|
|
247
|
-
*
|
|
248
|
-
* Filters global middlewares based on their include/exclude patterns.
|
|
249
|
-
* Pattern matching happens once during route registration (zero runtime overhead).
|
|
250
|
-
*
|
|
251
|
-
* @param path - The route path to check against middleware patterns
|
|
252
|
-
* @returns Array of middlewares that should be applied to this path
|
|
253
|
-
*
|
|
254
|
-
* @example
|
|
255
|
-
* ```typescript
|
|
256
|
-
* // If global middlewares are:
|
|
257
|
-
* // - authMiddleware with { include: ['/api/*'], exclude: ['/api/health'] }
|
|
258
|
-
* // - rateLimitMiddleware with no config
|
|
259
|
-
*
|
|
260
|
-
* getGlobalMiddlewaresForPath('/api/users') // => [authMiddleware, rateLimitMiddleware]
|
|
261
|
-
* getGlobalMiddlewaresForPath('/api/health') // => [rateLimitMiddleware]
|
|
262
|
-
* getGlobalMiddlewaresForPath('/public/file') // => [rateLimitMiddleware]
|
|
263
|
-
* ```
|
|
264
|
-
*/
|
|
265
|
-
private getGlobalMiddlewaresForPath;
|
|
266
247
|
/**
|
|
267
248
|
* Sorts the queued routes and registers each one with its own middlewares.
|
|
268
249
|
*
|
|
@@ -286,7 +267,10 @@ export declare class HonoAdapter extends AsenaAdapter<HonoAdapterContext, Valida
|
|
|
286
267
|
*/
|
|
287
268
|
private registerWebsocketRouteDirect;
|
|
288
269
|
/**
|
|
289
|
-
* Registers a single route directly without grouping
|
|
270
|
+
* Registers a single route directly without grouping.
|
|
271
|
+
*
|
|
272
|
+
* Route middlewares run before the route's validator - global middlewares → route
|
|
273
|
+
* middlewares → validator → handler - matching ergenecore.
|
|
290
274
|
*/
|
|
291
275
|
private registerRouteDirect;
|
|
292
276
|
/**
|
package/dist/lib/HonoAdapter.js
CHANGED
|
@@ -2,7 +2,7 @@ import { Hono } from 'hono';
|
|
|
2
2
|
import { HTTPException } from 'hono/http-exception';
|
|
3
3
|
import * as bun from 'bun';
|
|
4
4
|
import { HonoContextWrapper } from './HonoContextWrapper';
|
|
5
|
-
import { AsenaAdapter, isHttpException, VALIDATOR_METHODS, } from '@asenajs/asena/adapter';
|
|
5
|
+
import { AsenaAdapter, assertContextAdapter, assertRouteContract, ASENA_CONTEXT_CONTRACT, isHttpException, prepareContextValidation, VALIDATOR_METHODS, } from '@asenajs/asena/adapter';
|
|
6
6
|
import { shouldApplyMiddleware } from '@asenajs/asena/utils';
|
|
7
7
|
import { blue, green, red, yellow } from '@asenajs/asena/logger';
|
|
8
8
|
import { zValidator } from '@hono/zod-validator';
|
|
@@ -11,7 +11,7 @@ import { middlewareParser } from './utils/middlewareParser';
|
|
|
11
11
|
import { compareRoutePriority } from './utils/routePriority';
|
|
12
12
|
import { HttpMethod } from '@asenajs/asena/web-types';
|
|
13
13
|
import { HonoWebsocketAdapter } from './HonoWebsocketAdapter';
|
|
14
|
-
import { serveStatic } from '
|
|
14
|
+
import { serveStatic } from './utils/serveStatic';
|
|
15
15
|
export class HonoAdapter extends AsenaAdapter {
|
|
16
16
|
name = 'HonoAdapter';
|
|
17
17
|
app;
|
|
@@ -295,7 +295,7 @@ export class HonoAdapter extends AsenaAdapter {
|
|
|
295
295
|
onNotFound(notFoundHandler) {
|
|
296
296
|
this.hasNotFoundHandler = true;
|
|
297
297
|
this.app.notFound(async (context) => {
|
|
298
|
-
const wrapper =
|
|
298
|
+
const wrapper = this.getRequestWrapper(context);
|
|
299
299
|
try {
|
|
300
300
|
const response = await notFoundHandler(wrapper, {
|
|
301
301
|
path: context.req.path,
|
|
@@ -361,7 +361,7 @@ export class HonoAdapter extends AsenaAdapter {
|
|
|
361
361
|
this.hasErrorHandler = true;
|
|
362
362
|
this.app.onError(async (error, context) => {
|
|
363
363
|
// Wrap context for user handler
|
|
364
|
-
const wrapper =
|
|
364
|
+
const wrapper = this.getRequestWrapper(context);
|
|
365
365
|
try {
|
|
366
366
|
const customResponse = await errorHandler(error, wrapper);
|
|
367
367
|
// A handler that returns nothing is saying "not mine, use the default" - the contract
|
|
@@ -483,7 +483,11 @@ export class HonoAdapter extends AsenaAdapter {
|
|
|
483
483
|
return middlewareParser(middlewares, () => this.server);
|
|
484
484
|
}
|
|
485
485
|
prepareHandler(handler) {
|
|
486
|
-
return (c) => handler(
|
|
486
|
+
return (c) => handler(this.getRequestWrapper(c));
|
|
487
|
+
}
|
|
488
|
+
getRequestWrapper(context) {
|
|
489
|
+
return (context.get('_asenaContextWrapper') ??
|
|
490
|
+
new HonoContextWrapper(context, this.server));
|
|
487
491
|
}
|
|
488
492
|
/**
|
|
489
493
|
* Prepares static serve options with enhanced features
|
|
@@ -518,7 +522,7 @@ export class HonoAdapter extends AsenaAdapter {
|
|
|
518
522
|
});
|
|
519
523
|
}
|
|
520
524
|
// Call user callback
|
|
521
|
-
await staticServe.onFound.handler(path,
|
|
525
|
+
await staticServe.onFound.handler(path, this.getRequestWrapper(c));
|
|
522
526
|
};
|
|
523
527
|
}
|
|
524
528
|
}
|
|
@@ -544,7 +548,7 @@ export class HonoAdapter extends AsenaAdapter {
|
|
|
544
548
|
}
|
|
545
549
|
else {
|
|
546
550
|
staticServeOptions.onNotFound = (path, c) => {
|
|
547
|
-
staticServe.onNotFound.handler(path,
|
|
551
|
+
staticServe.onNotFound.handler(path, this.getRequestWrapper(c));
|
|
548
552
|
};
|
|
549
553
|
}
|
|
550
554
|
}
|
|
@@ -559,7 +563,7 @@ export class HonoAdapter extends AsenaAdapter {
|
|
|
559
563
|
* @param baseValidator - The validator to prepare
|
|
560
564
|
* @returns Array of Hono middleware handlers for validation
|
|
561
565
|
*/
|
|
562
|
-
async prepareValidator(baseValidator) {
|
|
566
|
+
async prepareValidator(baseValidator, cache, routeLabel) {
|
|
563
567
|
if (!baseValidator) {
|
|
564
568
|
return [];
|
|
565
569
|
}
|
|
@@ -570,64 +574,61 @@ export class HonoAdapter extends AsenaAdapter {
|
|
|
570
574
|
if (!validatorHandler || typeof validatorHandler.handle !== 'function') {
|
|
571
575
|
continue;
|
|
572
576
|
}
|
|
577
|
+
if (!cache) {
|
|
578
|
+
validators.push(async (context, next) => {
|
|
579
|
+
const schema = await validatorHandler.handle();
|
|
580
|
+
if (!schema) {
|
|
581
|
+
this.logger.warn(`Validator for '${key}' returned null/undefined, skipping`);
|
|
582
|
+
return next();
|
|
583
|
+
}
|
|
584
|
+
return this.createValidatorMiddleware(schema, key)(context, next);
|
|
585
|
+
});
|
|
586
|
+
continue;
|
|
587
|
+
}
|
|
573
588
|
try {
|
|
574
|
-
const
|
|
575
|
-
|
|
576
|
-
if (!validationSchema) {
|
|
589
|
+
const schema = await validatorHandler.handle();
|
|
590
|
+
if (!schema) {
|
|
577
591
|
this.logger.warn(`Validator for '${key}' returned null/undefined, skipping`);
|
|
578
592
|
continue;
|
|
579
593
|
}
|
|
580
|
-
|
|
581
|
-
let hook;
|
|
582
|
-
if (typeof validationSchema === 'object' && 'schema' in validationSchema) {
|
|
583
|
-
schema = validationSchema.schema;
|
|
584
|
-
hook = validationSchema.hook;
|
|
585
|
-
// Validate schema is actually a Zod schema
|
|
586
|
-
if (!schema || typeof schema.parse !== 'function') {
|
|
587
|
-
throw new Error(`Invalid Zod schema provided for '${key}' validator`);
|
|
588
|
-
}
|
|
589
|
-
}
|
|
590
|
-
else {
|
|
591
|
-
schema = validationSchema;
|
|
592
|
-
if (!schema || typeof schema.parse !== 'function') {
|
|
593
|
-
throw new Error(`Invalid Zod schema provided for '${key}' validator`);
|
|
594
|
-
}
|
|
595
|
-
}
|
|
596
|
-
// The user hook runs first and wins if it answers the request, but it no
|
|
597
|
-
// longer *replaces* the default handling: a hook added for logging or
|
|
598
|
-
// context enrichment used to silently change that route's error contract
|
|
599
|
-
const validator = zValidator(key, schema, async (result, c) => {
|
|
600
|
-
if (hook) {
|
|
601
|
-
const hookResult = await hook(result, c);
|
|
602
|
-
// Only the two forms zValidator itself honours short-circuit here; anything
|
|
603
|
-
// else falls through to the default so the contract stays consistent
|
|
604
|
-
if (hookResult instanceof Response) {
|
|
605
|
-
return hookResult;
|
|
606
|
-
}
|
|
607
|
-
if (hookResult && typeof hookResult === 'object' && 'response' in hookResult) {
|
|
608
|
-
return hookResult;
|
|
609
|
-
}
|
|
610
|
-
}
|
|
611
|
-
if (result.success) {
|
|
612
|
-
return;
|
|
613
|
-
}
|
|
614
|
-
// zValidator intersects the result union with `{ target }`, which stops TS
|
|
615
|
-
// narrowing it on `success`. The error type is also widened to a
|
|
616
|
-
// `$ZodError | ZodError` union because zValidator accepts zod-core schemas;
|
|
617
|
-
// ours are always classic `z.ZodType` (see ValidationSchema), so the runtime
|
|
618
|
-
// value is a classic ZodError.
|
|
619
|
-
const { error } = result;
|
|
620
|
-
return this.handleValidationFailure(error, key);
|
|
621
|
-
});
|
|
622
|
-
validators.push(validator);
|
|
594
|
+
validators.push(this.createValidatorMiddleware(schema, key));
|
|
623
595
|
}
|
|
624
596
|
catch (error) {
|
|
625
|
-
|
|
626
|
-
throw new Error(`Validator preparation failed for '${key}': ${error instanceof Error ? error.message : String(error)}`);
|
|
597
|
+
throw new Error(`Validator preparation failed for ${routeLabel} target '${key}': ${error instanceof Error ? error.message : String(error)}`, { cause: error });
|
|
627
598
|
}
|
|
628
599
|
}
|
|
629
600
|
return validators;
|
|
630
601
|
}
|
|
602
|
+
createValidatorMiddleware(validationSchema, key) {
|
|
603
|
+
const schema = typeof validationSchema === 'object' && 'schema' in validationSchema
|
|
604
|
+
? validationSchema.schema
|
|
605
|
+
: validationSchema;
|
|
606
|
+
const hook = typeof validationSchema === 'object' && 'schema' in validationSchema ? validationSchema.hook : undefined;
|
|
607
|
+
if (!schema || typeof schema.parse !== 'function') {
|
|
608
|
+
throw new Error(`Invalid Zod schema provided for '${key}' validator`);
|
|
609
|
+
}
|
|
610
|
+
if (!hook) {
|
|
611
|
+
return zValidator(key, schema, undefined, {
|
|
612
|
+
validationFunction: async (target, value) => {
|
|
613
|
+
const result = await target.safeParseAsync(value);
|
|
614
|
+
return result.success ? result : this.handleValidationFailure(result.error, key);
|
|
615
|
+
},
|
|
616
|
+
});
|
|
617
|
+
}
|
|
618
|
+
return zValidator(key, schema, async (result, context) => {
|
|
619
|
+
if (hook) {
|
|
620
|
+
const hookResult = await hook(result, context);
|
|
621
|
+
if (hookResult instanceof Response)
|
|
622
|
+
return hookResult;
|
|
623
|
+
if (hookResult && typeof hookResult === 'object' && 'response' in hookResult)
|
|
624
|
+
return hookResult;
|
|
625
|
+
}
|
|
626
|
+
if (result.success)
|
|
627
|
+
return;
|
|
628
|
+
const { error } = result;
|
|
629
|
+
return this.handleValidationFailure(error, key);
|
|
630
|
+
});
|
|
631
|
+
}
|
|
631
632
|
/**
|
|
632
633
|
* @description Answer a failed validation.
|
|
633
634
|
*
|
|
@@ -688,31 +689,6 @@ export class HonoAdapter extends AsenaAdapter {
|
|
|
688
689
|
}
|
|
689
690
|
}
|
|
690
691
|
}
|
|
691
|
-
/**
|
|
692
|
-
* Gets global middlewares that should be applied to a specific path
|
|
693
|
-
*
|
|
694
|
-
* Filters global middlewares based on their include/exclude patterns.
|
|
695
|
-
* Pattern matching happens once during route registration (zero runtime overhead).
|
|
696
|
-
*
|
|
697
|
-
* @param path - The route path to check against middleware patterns
|
|
698
|
-
* @returns Array of middlewares that should be applied to this path
|
|
699
|
-
*
|
|
700
|
-
* @example
|
|
701
|
-
* ```typescript
|
|
702
|
-
* // If global middlewares are:
|
|
703
|
-
* // - authMiddleware with { include: ['/api/*'], exclude: ['/api/health'] }
|
|
704
|
-
* // - rateLimitMiddleware with no config
|
|
705
|
-
*
|
|
706
|
-
* getGlobalMiddlewaresForPath('/api/users') // => [authMiddleware, rateLimitMiddleware]
|
|
707
|
-
* getGlobalMiddlewaresForPath('/api/health') // => [rateLimitMiddleware]
|
|
708
|
-
* getGlobalMiddlewaresForPath('/public/file') // => [rateLimitMiddleware]
|
|
709
|
-
* ```
|
|
710
|
-
*/
|
|
711
|
-
getGlobalMiddlewaresForPath(path) {
|
|
712
|
-
return this.globalMiddlewares
|
|
713
|
-
.filter(({ config }) => shouldApplyMiddleware(path, config))
|
|
714
|
-
.map(({ middleware }) => middleware);
|
|
715
|
-
}
|
|
716
692
|
/**
|
|
717
693
|
* Sorts the queued routes and registers each one with its own middlewares.
|
|
718
694
|
*
|
|
@@ -779,14 +755,9 @@ export class HonoAdapter extends AsenaAdapter {
|
|
|
779
755
|
* Converts HTTP GET route to WebSocket upgrade endpoint
|
|
780
756
|
*/
|
|
781
757
|
async registerWebsocketRouteDirect(wsRoute) {
|
|
782
|
-
// Get filtered global middlewares for this WebSocket route
|
|
783
|
-
const applicableGlobalMiddlewares = this.getGlobalMiddlewaresForPath(wsRoute.path);
|
|
784
|
-
const preparedGlobalMiddlewares = this.prepareMiddlewares(applicableGlobalMiddlewares);
|
|
785
758
|
const preparedMiddlewares = this.prepareMiddlewares(wsRoute.middlewares || []);
|
|
786
|
-
// Combine: global middlewares -> route middlewares
|
|
787
|
-
const allMiddlewares = [...preparedGlobalMiddlewares, ...preparedMiddlewares];
|
|
788
759
|
const normalizedWsPath = this.normalizePath(`/${wsRoute.path}`);
|
|
789
|
-
this.app.get(normalizedWsPath, ...
|
|
760
|
+
this.app.get(normalizedWsPath, ...preparedMiddlewares, async (c, next) => {
|
|
790
761
|
const websocketData = c.get('_websocketData') || {};
|
|
791
762
|
const id = bun.randomUUIDv7();
|
|
792
763
|
const dataPath = normalizedWsPath.startsWith('/') ? normalizedWsPath.slice(1) : normalizedWsPath;
|
|
@@ -799,13 +770,41 @@ export class HonoAdapter extends AsenaAdapter {
|
|
|
799
770
|
});
|
|
800
771
|
}
|
|
801
772
|
/**
|
|
802
|
-
* Registers a single route directly without grouping
|
|
773
|
+
* Registers a single route directly without grouping.
|
|
774
|
+
*
|
|
775
|
+
* Route middlewares run before the route's validator - global middlewares → route
|
|
776
|
+
* middlewares → validator → handler - matching ergenecore.
|
|
803
777
|
*/
|
|
804
778
|
async registerRouteDirect(route) {
|
|
779
|
+
const routeLabel = `${route.method.toUpperCase()} ${route.path}`;
|
|
780
|
+
const contextClass = route.contextClass;
|
|
781
|
+
assertRouteContract(route, contextClass, routeLabel);
|
|
782
|
+
assertContextAdapter(contextClass, 'hono-adapter');
|
|
783
|
+
const routeWrapper = contextClass
|
|
784
|
+
? [
|
|
785
|
+
async (context, next) => {
|
|
786
|
+
const wrapper = new contextClass(context, this.server);
|
|
787
|
+
context.set('_asenaContextWrapper', wrapper);
|
|
788
|
+
await next();
|
|
789
|
+
},
|
|
790
|
+
]
|
|
791
|
+
: [];
|
|
805
792
|
const preparedMiddlewares = this.prepareMiddlewares(route.middlewares || []);
|
|
806
|
-
const validators = route.validator
|
|
793
|
+
const validators = route.validator
|
|
794
|
+
? await this.prepareValidator(route.validator, route.validatorCache !== false, routeLabel)
|
|
795
|
+
: [];
|
|
796
|
+
const contract = route.contextContract ?? contextClass?.[ASENA_CONTEXT_CONTRACT];
|
|
797
|
+
const validateContract = contract ? prepareContextValidation(contract) : undefined;
|
|
798
|
+
const contractValidator = validateContract
|
|
799
|
+
? [
|
|
800
|
+
async (context, next) => {
|
|
801
|
+
await validateContract(this.getRequestWrapper(context));
|
|
802
|
+
await next();
|
|
803
|
+
},
|
|
804
|
+
]
|
|
805
|
+
: [];
|
|
807
806
|
// Global middlewares are registered at top level via registerGlobalMiddlewaresTopLevel()
|
|
808
|
-
const allMiddlewares = [...validators, ...
|
|
807
|
+
const allMiddlewares = [...routeWrapper, ...preparedMiddlewares, ...validators, ...contractValidator];
|
|
809
808
|
const methodHandler = this.methodMap[route.method] ??
|
|
810
809
|
((path, ...handlers) => this.app.on([route.method.toUpperCase()], path, ...handlers));
|
|
811
810
|
// Normalize path for Hono: strip trailing slash (except root '/')
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HonoAdapter.js","sourceRoot":"","sources":["../../lib/HonoAdapter.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"HonoAdapter.js","sourceRoot":"","sources":["../../lib/HonoAdapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +1,25 @@
|
|
|
1
|
+
import { type InputMap, type InputOutput, type InputTarget } from '@asenajs/asena/adapter';
|
|
1
2
|
import type { Server } from 'bun';
|
|
2
3
|
import type { Context, HonoRequest } from 'hono';
|
|
3
4
|
import type { AsenaContext, AsenaSSEStreamWriter, AsenaStreamWriter, AsenaVariables, CookieExtra, SendOptions } from '@asenajs/asena/adapter';
|
|
4
5
|
import type { CookieOptions } from 'hono/utils/cookie';
|
|
5
|
-
export declare class HonoContextWrapper implements AsenaContext<HonoRequest<any, any>, Response> {
|
|
6
|
+
export declare class HonoContextWrapper<I extends InputMap = Record<never, never>> implements AsenaContext<HonoRequest<any, any>, Response> {
|
|
7
|
+
private get validatedInput();
|
|
8
|
+
private ensureValidatedInput;
|
|
9
|
+
get input(): Readonly<I>;
|
|
10
|
+
/** @internal */
|
|
11
|
+
setValidated(target: InputTarget, value: unknown): void;
|
|
12
|
+
/** @internal */
|
|
13
|
+
completeValidatedInput(): void;
|
|
14
|
+
/** @internal */
|
|
15
|
+
readContractInput(target: InputTarget): Promise<unknown> | unknown;
|
|
16
|
+
private readCachedFormData;
|
|
6
17
|
private _context;
|
|
7
18
|
private _server?;
|
|
8
19
|
private _requestIp?;
|
|
20
|
+
private _url?;
|
|
9
21
|
constructor(context: Context, server?: Server<never>);
|
|
10
|
-
get req(): HonoRequest<any,
|
|
22
|
+
get req(): HonoRequest<any, any>;
|
|
11
23
|
get res(): Response;
|
|
12
24
|
get routePattern(): string | undefined;
|
|
13
25
|
get headers(): Record<string, string>;
|
|
@@ -20,7 +32,7 @@ export declare class HonoContextWrapper implements AsenaContext<HonoRequest<any,
|
|
|
20
32
|
* keys into arrays and applies coercions into `req.valid('form')`, while `parseBody()` without
|
|
21
33
|
* options is last-value-wins - so the handler read a shape the schema had already replaced.
|
|
22
34
|
*/
|
|
23
|
-
getParseBody(): Promise<
|
|
35
|
+
getParseBody<T = keyof I extends never ? any : InputOutput<I, 'form'>>(): Promise<T>;
|
|
24
36
|
getBlob(): Promise<Blob>;
|
|
25
37
|
getFormData(): Promise<FormData>;
|
|
26
38
|
getParam(s: string): string;
|
|
@@ -36,11 +48,13 @@ export declare class HonoContextWrapper implements AsenaContext<HonoRequest<any,
|
|
|
36
48
|
*
|
|
37
49
|
* Routes without a validator are unaffected - `valid('json')` is undefined and we fall through.
|
|
38
50
|
*/
|
|
39
|
-
getBody<T
|
|
51
|
+
getBody<T = keyof I extends never ? any : InputOutput<I, 'body'>>(): Promise<T>;
|
|
40
52
|
getQuery(query: string): Promise<string | undefined>;
|
|
41
53
|
getQueryAll(query: string): Promise<string[]>;
|
|
42
54
|
getAllQueries(): Record<string, string | string[]>;
|
|
43
55
|
send(data: string | any, statusOrOptions?: SendOptions | number): Response;
|
|
56
|
+
private sendText;
|
|
57
|
+
private sendJson;
|
|
44
58
|
getCookie(name: string, secret?: string | BufferSource): Promise<string | false>;
|
|
45
59
|
setCookie(name: string, value: string, options?: CookieExtra<CookieOptions>): Promise<void>;
|
|
46
60
|
deleteCookie(name: string, options?: CookieExtra<CookieOptions>): Promise<void>;
|