@asenajs/hono-adapter 5.1.0 → 5.2.0

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.
@@ -3,7 +3,7 @@ import type { Server } from 'bun';
3
3
  import type { WebsocketRouteParams } from '@asenajs/asena/adapter';
4
4
  import { AsenaAdapter, type AsenaServeOptions, type AsenaStartOptions, type BaseMiddleware, type RouteParams } from '@asenajs/asena/adapter';
5
5
  import type { GlobalMiddlewareRouteConfig } from '@asenajs/asena/server/config';
6
- import type { HonoAdapterOptions, HonoErrorHandler, HonoNotFoundHandler, StaticServeExtras } from './types';
6
+ import type { HonoAdapterOptions, HonoDevtoolsBus, HonoErrorHandler, HonoNotFoundHandler, StaticServeExtras } from './types';
7
7
  import { type ServerLogger } from '@asenajs/asena/logger';
8
8
  import type { ValidationSchema } from './defaults';
9
9
  import type { Context as HonoAdapterContext } from './defaults/Context';
@@ -24,6 +24,9 @@ export declare class HonoAdapter extends AsenaAdapter<HonoAdapterContext, Valida
24
24
  private hasErrorHandler;
25
25
  /** Whether the application registered an onNotFound hook (see start()) */
26
26
  private hasNotFoundHandler;
27
+ private devtools?;
28
+ private failedValidations?;
29
+ private answeredByValidator?;
27
30
  /**
28
31
  * Normalizes a route path for Hono compatibility.
29
32
  * Strips trailing slash (except root '/') because Hono's strict:false
@@ -105,6 +108,18 @@ export declare class HonoAdapter extends AsenaAdapter<HonoAdapterContext, Valida
105
108
  * @param htmlBundle - The HTML bundle returned by importing an .html file
106
109
  */
107
110
  registerHTMLRoute(path: string, htmlBundle: unknown, controllerName: string, controllerBasePath: string): void;
111
+ /**
112
+ * Records every HTTP request for `asena console`: `start()` serves a `fetch` that frames each
113
+ * request in a record, and the adapter adds the steps only it can see - its own 404, its own
114
+ * error response and the legacy `validator:` schemas it checks itself.
115
+ *
116
+ * Core calls this before any route is registered, and only in a process the console spawned.
117
+ * Without the call, `start()` serves `app.fetch` itself and nothing on the request path changes.
118
+ *
119
+ * @param bus - Core's devtools bus as this adapter's server sees it: a record opened through it
120
+ * is reported as that server's
121
+ */
122
+ attachDevtools(bus: HonoDevtoolsBus): void;
108
123
  use(middleware: BaseMiddleware<HonoAdapterContext>, config?: GlobalMiddlewareRouteConfig): void;
109
124
  registerRoute(params: RouteParams<HonoAdapterContext, ValidationSchema, StaticServeExtras>): Promise<void>;
110
125
  /**
@@ -117,6 +132,13 @@ export declare class HonoAdapter extends AsenaAdapter<HonoAdapterContext, Valida
117
132
  */
118
133
  registerWebsocketRoute(params: WebsocketRouteParams<HonoAdapterContext>): Promise<void> | void;
119
134
  start(options?: AsenaStartOptions): Promise<Server<WebSocketData<any>>>;
135
+ /**
136
+ * Frames each request in a devtools record and enters it for the whole dispatch, so every step
137
+ * lands in it by async context - an `override: true` middleware sees hono's own `Context`, not
138
+ * the Asena wrapper, so the context object cannot be the key. A websocket upgrade is not a
139
+ * request the console inspects, and core can disable the bus while the server keeps serving.
140
+ */
141
+ private recordRequests;
120
142
  /**
121
143
  * Registers the handler for requests that match no route.
122
144
  *
@@ -180,6 +202,9 @@ export declare class HonoAdapter extends AsenaAdapter<HonoAdapterContext, Valida
180
202
  * so the same failure produced three different envelopes across the two adapters.
181
203
  */
182
204
  private defaultErrorResponse;
205
+ /** A validation failure no handler answered is the validator's answer; the adapter only renders it. */
206
+ private recordDefaultAnswer;
207
+ private recordAdapterDefault;
183
208
  /**
184
209
  * The status the caller will be answered with, for anything thrown.
185
210
  *
@@ -231,6 +256,11 @@ export declare class HonoAdapter extends AsenaAdapter<HonoAdapterContext, Valida
231
256
  * @returns Array of Hono middleware handlers for validation
232
257
  */
233
258
  private prepareValidator;
259
+ /**
260
+ * Core never sees a legacy `validator:` schema run, so the adapter records its step. Hono's compose
261
+ * hands a downstream throw to `onError` where it happened, so only the validator's own reaches `catch`.
262
+ */
263
+ private observeValidator;
234
264
  private createValidatorMiddleware;
235
265
  /**
236
266
  * @description Answer a failed validation.
@@ -9,6 +9,7 @@ import { blue, green, red, yellow } from '@asenajs/asena/logger';
9
9
  import { zValidator } from '@hono/zod-validator';
10
10
  import { brandHonoHttpException, ValidationError, warnOnNestedHono } from './errors';
11
11
  import { middlewareParser } from './utils/middlewareParser';
12
+ import { describeThrown, guardThrows, unwrapThrown } from './utils/nonErrorThrow';
12
13
  import { compareRoutePriority } from './utils/routePriority';
13
14
  import { HttpMethod } from '@asenajs/asena/web-types';
14
15
  import { HonoWebsocketAdapter } from './HonoWebsocketAdapter';
@@ -41,6 +42,12 @@ const cookieIdentity = (setCookie, requestPath) => {
41
42
  const separator = pair.indexOf('=');
42
43
  return `${(separator === -1 ? '' : pair.slice(0, separator)).trim()}\u0000${domain}\u0000${path}`;
43
44
  };
45
+ // The handle is bound, so its class is gone; core passes the component as the route's `validatorName`,
46
+ // read structurally because the published core's RouteParams does not declare it. Ergenecore reads the same field.
47
+ const validatorStepName = (route, target) => {
48
+ const component = route.validatorName;
49
+ return typeof component === 'string' && component !== '' ? `${component}.${target}` : target;
50
+ };
44
51
  export class HonoAdapter extends AsenaAdapter {
45
52
  name = 'HonoAdapter';
46
53
  app;
@@ -56,6 +63,9 @@ export class HonoAdapter extends AsenaAdapter {
56
63
  hasErrorHandler = false;
57
64
  /** Whether the application registered an onNotFound hook (see start()) */
58
65
  hasNotFoundHandler = false;
66
+ devtools;
67
+ failedValidations;
68
+ answeredByValidator;
59
69
  /**
60
70
  * Normalizes a route path for Hono compatibility.
61
71
  * Strips trailing slash (except root '/') because Hono's strict:false
@@ -221,6 +231,22 @@ export class HonoAdapter extends AsenaAdapter {
221
231
  this.htmlRoutes.set(path.slice(0, -1), htmlBundle);
222
232
  }
223
233
  }
234
+ /**
235
+ * Records every HTTP request for `asena console`: `start()` serves a `fetch` that frames each
236
+ * request in a record, and the adapter adds the steps only it can see - its own 404, its own
237
+ * error response and the legacy `validator:` schemas it checks itself.
238
+ *
239
+ * Core calls this before any route is registered, and only in a process the console spawned.
240
+ * Without the call, `start()` serves `app.fetch` itself and nothing on the request path changes.
241
+ *
242
+ * @param bus - Core's devtools bus as this adapter's server sees it: a record opened through it
243
+ * is reported as that server's
244
+ */
245
+ attachDevtools(bus) {
246
+ this.devtools = bus;
247
+ this.failedValidations = new WeakMap();
248
+ this.answeredByValidator = new WeakMap();
249
+ }
224
250
  use(middleware, config) {
225
251
  // Store middleware with config for deferred application during route registration
226
252
  this.globalMiddlewares.push({ middleware, config });
@@ -266,12 +292,12 @@ export class HonoAdapter extends AsenaAdapter {
266
292
  // built-in handler dumps a bare stack to stderr with no path, method or status, `logErrors:
267
293
  // false` could not suppress it, and a 4xx produced no output at all.
268
294
  if (!this.hasErrorHandler) {
269
- this.app.onError((error, context) => this.withRequestCookies(this.defaultErrorResponse(error, context.req.path, context.req.method), context));
295
+ this.app.onError((error, context) => this.withRequestCookies(this.defaultErrorResponse(unwrapThrown(error), context), context));
270
296
  }
271
297
  this.websocketAdapter.prepareWebSocket(this.options?.wsOptions);
272
298
  const serveConfig = {
273
299
  ...this.options.serveOptions,
274
- fetch: this.app.fetch,
300
+ fetch: this.devtools ? this.recordRequests(this.devtools, this.app.fetch) : this.app.fetch,
275
301
  websocket: this.websocketAdapter.websocket,
276
302
  };
277
303
  if (options?.unix) {
@@ -313,6 +339,32 @@ export class HonoAdapter extends AsenaAdapter {
313
339
  : `Server running at http://localhost:${this.server.port}`);
314
340
  return this.server;
315
341
  }
342
+ /**
343
+ * Frames each request in a devtools record and enters it for the whole dispatch, so every step
344
+ * lands in it by async context - an `override: true` middleware sees hono's own `Context`, not
345
+ * the Asena wrapper, so the context object cannot be the key. A websocket upgrade is not a
346
+ * request the console inspects, and core can disable the bus while the server keeps serving.
347
+ */
348
+ recordRequests(bus, fetch) {
349
+ const answeredByAdapter = { kind: 'adapter-default', name: this.name };
350
+ return (request, env, executionCtx) => {
351
+ if (!bus.enabled || request.headers.get('upgrade')?.toLowerCase() === 'websocket') {
352
+ return fetch(request, env, executionCtx);
353
+ }
354
+ const record = bus.open(request.method, new URL(request.url).pathname);
355
+ return bus.run(record, async () => {
356
+ try {
357
+ const response = await fetch(request, env, executionCtx);
358
+ bus.close(record, response.status, this.answeredByValidator?.get(request));
359
+ return response;
360
+ }
361
+ catch (error) {
362
+ bus.close(record, 500, answeredByAdapter);
363
+ throw error;
364
+ }
365
+ });
366
+ };
367
+ }
316
368
  /**
317
369
  * Registers the handler for requests that match no route.
318
370
  *
@@ -358,6 +410,7 @@ export class HonoAdapter extends AsenaAdapter {
358
410
  * application that shaped its own 404 gets no line from here.
359
411
  */
360
412
  defaultNotFoundResponse(path, method) {
413
+ this.recordAdapterDefault();
361
414
  if (this.logErrors !== false) {
362
415
  this.logger.info('Route not found:', { path, method, status: 404 });
363
416
  }
@@ -388,9 +441,10 @@ export class HonoAdapter extends AsenaAdapter {
388
441
  */
389
442
  onError(errorHandler) {
390
443
  this.hasErrorHandler = true;
391
- this.app.onError(async (error, context) => {
444
+ this.app.onError(async (carried, context) => {
392
445
  // Wrap context for user handler
393
446
  const wrapper = this.getRequestWrapper(context);
447
+ const error = unwrapThrown(carried);
394
448
  try {
395
449
  const customResponse = await errorHandler(error, wrapper);
396
450
  // A handler that returns nothing is saying "not mine, use the default" - the contract
@@ -408,7 +462,7 @@ export class HonoAdapter extends AsenaAdapter {
408
462
  // as an unhandled rejection.
409
463
  this.logger.error('Error handler threw an error, using the default response:', handlerError);
410
464
  }
411
- return this.withRequestCookies(this.defaultErrorResponse(error, context.req.path, context.req.method), context);
465
+ return this.withRequestCookies(this.defaultErrorResponse(error, context), context);
412
466
  });
413
467
  }
414
468
  /**
@@ -444,8 +498,9 @@ export class HonoAdapter extends AsenaAdapter {
444
498
  * application with no config and `{error, message, timestamp}` for one whose handler declined,
445
499
  * so the same failure produced three different envelopes across the two adapters.
446
500
  */
447
- defaultErrorResponse(error, path, method) {
448
- this.logHandledError(error, path, method);
501
+ defaultErrorResponse(error, context) {
502
+ this.recordDefaultAnswer(error, context.req.raw);
503
+ this.logHandledError(error, context.req.path, context.req.method);
449
504
  // Hono's own class first, and deliberately by `instanceof` rather than by the brand. The brand
450
505
  // reaches it only because `brandHonoHttpException()` patched the prototype from this class's
451
506
  // constructor; if that call is ever removed, reordered, or defeated by `hono/http-exception`
@@ -474,6 +529,20 @@ export class HonoAdapter extends AsenaAdapter {
474
529
  headers: { 'Content-Type': 'application/json' },
475
530
  });
476
531
  }
532
+ /** A validation failure no handler answered is the validator's answer; the adapter only renders it. */
533
+ recordDefaultAnswer(error, request) {
534
+ const validator = error instanceof ValidationError ? this.failedValidations?.get(error) : undefined;
535
+ if (validator) {
536
+ this.answeredByValidator?.set(request, validator);
537
+ }
538
+ else {
539
+ this.recordAdapterDefault();
540
+ }
541
+ }
542
+ recordAdapterDefault() {
543
+ if (this.devtools?.enabled)
544
+ this.devtools.step('adapter-default', this.name);
545
+ }
477
546
  /**
478
547
  * The status the caller will be answered with, for anything thrown.
479
548
  *
@@ -508,11 +577,11 @@ export class HonoAdapter extends AsenaAdapter {
508
577
  const status = this.resolveErrorStatus(error);
509
578
  const isServerError = status >= 500;
510
579
  const meta = {
511
- message: error.message,
580
+ message: error instanceof Error ? error.message : describeThrown(error),
512
581
  path,
513
582
  method,
514
583
  status,
515
- ...(isServerError ? { stack: error.stack } : {}),
584
+ ...(isServerError && error instanceof Error ? { stack: error.stack } : {}),
516
585
  };
517
586
  if (isServerError) {
518
587
  this.logger.error('Application error occurred:', meta);
@@ -533,7 +602,7 @@ export class HonoAdapter extends AsenaAdapter {
533
602
  return middlewareParser(middlewares, () => this.server);
534
603
  }
535
604
  prepareHandler(handler) {
536
- return (c) => handler(this.getRequestWrapper(c));
605
+ return guardThrows((c) => handler(this.getRequestWrapper(c)));
537
606
  }
538
607
  getRequestWrapper(context) {
539
608
  return (context.get('_asenaContextWrapper') ??
@@ -630,7 +699,7 @@ export class HonoAdapter extends AsenaAdapter {
630
699
  return response;
631
700
  return context.notFound();
632
701
  };
633
- return async (context, next) => {
702
+ return guardThrows(async (context, next) => {
634
703
  const requestPath = context.req.path;
635
704
  if (!requestPath.includes('%'))
636
705
  return ownMiss(serve, context, next);
@@ -648,14 +717,14 @@ export class HonoAdapter extends AsenaAdapter {
648
717
  return context.text('Forbidden', 403);
649
718
  }
650
719
  return ownMiss(serveStatic({ ...options, path: rewritten }), context, next);
651
- };
720
+ });
652
721
  }
653
722
  /**
654
723
  * Prepares validation middleware with enhanced error handling
655
724
  * @param baseValidator - The validator to prepare
656
725
  * @returns Array of Hono middleware handlers for validation
657
726
  */
658
- async prepareValidator(baseValidator, cache, routeLabel) {
727
+ async prepareValidator(baseValidator, cache, routeLabel, route) {
659
728
  if (!baseValidator) {
660
729
  return [];
661
730
  }
@@ -666,15 +735,16 @@ export class HonoAdapter extends AsenaAdapter {
666
735
  if (!validatorHandler || typeof validatorHandler.handle !== 'function') {
667
736
  continue;
668
737
  }
738
+ const stepName = validatorStepName(route, key);
669
739
  if (!cache) {
670
- validators.push(async (context, next) => {
740
+ validators.push(this.observeValidator(stepName, async (context, next) => {
671
741
  const schema = await validatorHandler.handle();
672
742
  if (!schema) {
673
743
  this.logger.warn(`Validator for '${key}' returned null/undefined, skipping`);
674
744
  return next();
675
745
  }
676
746
  return this.createValidatorMiddleware(schema, key)(context, next);
677
- });
747
+ }));
678
748
  continue;
679
749
  }
680
750
  try {
@@ -683,7 +753,7 @@ export class HonoAdapter extends AsenaAdapter {
683
753
  this.logger.warn(`Validator for '${key}' returned null/undefined, skipping`);
684
754
  continue;
685
755
  }
686
- validators.push(this.createValidatorMiddleware(schema, key));
756
+ validators.push(this.observeValidator(stepName, this.createValidatorMiddleware(schema, key)));
687
757
  }
688
758
  catch (error) {
689
759
  throw new Error(`Validator preparation failed for ${routeLabel} target '${key}': ${error instanceof Error ? error.message : String(error)}`, { cause: error });
@@ -691,6 +761,31 @@ export class HonoAdapter extends AsenaAdapter {
691
761
  }
692
762
  return validators;
693
763
  }
764
+ /**
765
+ * Core never sees a legacy `validator:` schema run, so the adapter records its step. Hono's compose
766
+ * hands a downstream throw to `onError` where it happened, so only the validator's own reaches `catch`.
767
+ */
768
+ observeValidator(name, validator) {
769
+ const guarded = guardThrows(validator);
770
+ const bus = this.devtools;
771
+ const failures = this.failedValidations;
772
+ if (!bus || !failures)
773
+ return guarded;
774
+ const step = { kind: 'validator', name };
775
+ return async (context, next) => {
776
+ if (!bus.enabled)
777
+ return guarded(context, next);
778
+ bus.step(step.kind, step.name);
779
+ try {
780
+ return await guarded(context, next);
781
+ }
782
+ catch (error) {
783
+ if (error instanceof ValidationError)
784
+ failures.set(error, step);
785
+ throw error;
786
+ }
787
+ };
788
+ }
694
789
  createValidatorMiddleware(validationSchema, key) {
695
790
  const schema = typeof validationSchema === 'object' && 'schema' in validationSchema
696
791
  ? validationSchema.schema
@@ -886,16 +981,16 @@ export class HonoAdapter extends AsenaAdapter {
886
981
  : [];
887
982
  const preparedMiddlewares = this.prepareMiddlewares(route.middlewares || []);
888
983
  const validators = route.validator
889
- ? await this.prepareValidator(route.validator, route.validatorCache !== false, routeLabel)
984
+ ? await this.prepareValidator(route.validator, route.validatorCache !== false, routeLabel, route)
890
985
  : [];
891
986
  const contract = route.contextContract ?? contextClass?.[ASENA_CONTEXT_CONTRACT];
892
987
  const validateContract = contract ? prepareContextValidation(contract) : undefined;
893
988
  const contractValidator = validateContract
894
989
  ? [
895
- async (context, next) => {
990
+ guardThrows(async (context, next) => {
896
991
  await validateContract(this.getRequestWrapper(context));
897
992
  await next();
898
- },
993
+ }),
899
994
  ]
900
995
  : [];
901
996
  // Global middlewares are registered at top level via registerGlobalMiddlewaresTopLevel()
@@ -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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"}
@@ -0,0 +1,20 @@
1
+ export type HonoDevtoolsStepKind = 'global-middleware' | 'middleware' | 'validator' | 'controller' | 'catch' | 'config-onError' | 'adapter-default' | 'not-found';
2
+ export interface HonoDevtoolsStep {
3
+ kind: HonoDevtoolsStepKind;
4
+ name: string;
5
+ }
6
+ /**
7
+ * The members of core's devtools bus this adapter relies on, declared structurally so the adapter
8
+ * builds against a core that has no devtools. `AsenaServer.start()` hands each adapter its own
9
+ * server's view of the bus through {@link HonoAdapter.attachDevtools}, only in a process
10
+ * `asena console` spawned.
11
+ *
12
+ * @typeParam R - The record `open()` returns; opaque to the adapter
13
+ */
14
+ export interface HonoDevtoolsBus<R extends object = object> {
15
+ readonly enabled: boolean;
16
+ open(method: string, path: string): R;
17
+ run<T>(record: R, fn: () => T): T;
18
+ step(kind: HonoDevtoolsStepKind, name: string): void;
19
+ close(record: R, status: number, answeredBy?: HonoDevtoolsStep): void;
20
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=HonoDevtoolsBus.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HonoDevtoolsBus.js","sourceRoot":"","sources":["../../../lib/types/HonoDevtoolsBus.ts"],"names":[],"mappings":""}
@@ -3,3 +3,4 @@ export * from '../defaults/Context';
3
3
  export * from './StaticServeExtras';
4
4
  export * from './HonoAdapterOptions';
5
5
  export * from './SendPingStrategy';
6
+ export * from './HonoDevtoolsBus';
@@ -3,4 +3,5 @@ export * from '../defaults/Context';
3
3
  export * from './StaticServeExtras';
4
4
  export * from './HonoAdapterOptions';
5
5
  export * from './SendPingStrategy';
6
+ export * from './HonoDevtoolsBus';
6
7
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../lib/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../lib/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,qBAAqB,CAAC;AACpC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import { HonoContextWrapper } from '../HonoContextWrapper';
2
2
  import { createFactory } from 'hono/factory';
3
+ import { asError, guardThrows } from './nonErrorThrow';
3
4
  /**
4
5
  * Parses Asena middlewares to Hono middleware format with optimizations
5
6
  * - Reuses context wrappers when possible
@@ -14,7 +15,7 @@ export const middlewareParser = (middlewares, getServer) => {
14
15
  return middlewares.map((middleware) => {
15
16
  if (middleware.override) {
16
17
  // @ts-expect-error - Allow override middleware to use raw Hono context
17
- return (c, next) => middleware.handle(c, next);
18
+ return guardThrows((c, next) => middleware.handle(c, next));
18
19
  }
19
20
  return factory.createMiddleware(async (context, next) => {
20
21
  // Reuse wrapper if already exists in context (performance optimization)
@@ -23,7 +24,6 @@ export const middlewareParser = (middlewares, getServer) => {
23
24
  wrapper = new HonoContextWrapper(context, getServer?.());
24
25
  context.set('_asenaContextWrapper', wrapper);
25
26
  }
26
- // eslint-disable-next-line no-useless-catch
27
27
  try {
28
28
  // Call middleware handler
29
29
  const result = await middleware.handle(wrapper, next);
@@ -47,8 +47,7 @@ export const middlewareParser = (middlewares, getServer) => {
47
47
  // Note: Hono middleware should handle next() calls properly
48
48
  }
49
49
  catch (error) {
50
- // Let Hono's error handler catch it
51
- throw error;
50
+ throw asError(error);
52
51
  }
53
52
  });
54
53
  });
@@ -1 +1 @@
1
- {"version":3,"file":"middlewareParser.js","sourceRoot":"","sources":["../../../lib/utils/middlewareParser.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAI7C;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC9B,WAAiD,EACjD,SAA2C,EACtB,EAAE;IACvB,MAAM,OAAO,GAAG,aAAa,EAAE,CAAC;IAEhC,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE;QACpC,IAAI,UAAU,CAAC,QAAQ,EAAE,CAAC;YACxB,uEAAuE;YACvE,OAAO,CAAC,CAAU,EAAE,IAAc,EAAE,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;QACpE,CAAC;QAED,OAAO,OAAO,CAAC,gBAAgB,CAAC,KAAK,EAAE,OAAgB,EAAE,IAAU,EAAE,EAAE;YACrE,wEAAwE;YACxE,IAAI,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAuB,CAAC;YAExE,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,OAAO,GAAG,IAAI,kBAAkB,CAAC,OAAO,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;gBACzD,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE,OAAO,CAAC,CAAC;YAC/C,CAAC;YAED,4CAA4C;YAC5C,IAAI,CAAC;gBACH,0BAA0B;gBAC1B,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;gBAEtD,gEAAgE;gBAChE,gDAAgD;gBAChD,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;oBACrB,OAAO,CAAC,GAAG,GAAG,IAAI,QAAQ,CAAC,WAAW,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;oBAEzD,OAAO;gBACT,CAAC;gBAED,8DAA8D;gBAC9D,0EAA0E;gBAC1E,8DAA8D;gBAC9D,IAAI,MAAM,YAAY,QAAQ,EAAE,CAAC;oBAC/B,OAAO,CAAC,GAAG,GAAG,IAAI,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE;wBACtC,MAAM,EAAE,MAAM,CAAC,MAAM;wBACrB,OAAO,EAAE,MAAM,CAAC,OAAO;qBACxB,CAAC,CAAC;oBAEH,OAAO;gBACT,CAAC;gBAED,oDAAoD;gBACpD,4DAA4D;YAC9D,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,oCAAoC;gBACpC,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC"}
1
+ {"version":3,"file":"middlewareParser.js","sourceRoot":"","sources":["../../../lib/utils/middlewareParser.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAG7C,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAEvD;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC9B,WAAiD,EACjD,SAA2C,EACtB,EAAE;IACvB,MAAM,OAAO,GAAG,aAAa,EAAE,CAAC;IAEhC,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE;QACpC,IAAI,UAAU,CAAC,QAAQ,EAAE,CAAC;YACxB,uEAAuE;YACvE,OAAO,WAAW,CAAC,CAAC,CAAU,EAAE,IAAU,EAAE,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;QAC7E,CAAC;QAED,OAAO,OAAO,CAAC,gBAAgB,CAAC,KAAK,EAAE,OAAgB,EAAE,IAAU,EAAE,EAAE;YACrE,wEAAwE;YACxE,IAAI,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAuB,CAAC;YAExE,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,OAAO,GAAG,IAAI,kBAAkB,CAAC,OAAO,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;gBACzD,OAAO,CAAC,GAAG,CAAC,sBAAsB,EAAE,OAAO,CAAC,CAAC;YAC/C,CAAC;YAED,IAAI,CAAC;gBACH,0BAA0B;gBAC1B,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,MAAM,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;gBAEtD,gEAAgE;gBAChE,gDAAgD;gBAChD,IAAI,MAAM,KAAK,KAAK,EAAE,CAAC;oBACrB,OAAO,CAAC,GAAG,GAAG,IAAI,QAAQ,CAAC,WAAW,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;oBAEzD,OAAO;gBACT,CAAC;gBAED,8DAA8D;gBAC9D,0EAA0E;gBAC1E,8DAA8D;gBAC9D,IAAI,MAAM,YAAY,QAAQ,EAAE,CAAC;oBAC/B,OAAO,CAAC,GAAG,GAAG,IAAI,QAAQ,CAAC,MAAM,CAAC,IAAI,EAAE;wBACtC,MAAM,EAAE,MAAM,CAAC,MAAM;wBACrB,OAAO,EAAE,MAAM,CAAC,OAAO;qBACxB,CAAC,CAAC;oBAEH,OAAO;gBACT,CAAC;gBAED,oDAAoD;gBACpD,4DAA4D;YAC9D,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,OAAO,CAAC,KAAK,CAAC,CAAC;YACvB,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC"}
@@ -0,0 +1,5 @@
1
+ import type { Context, Next } from 'hono';
2
+ export declare const asError: (value: unknown) => Error;
3
+ export declare const unwrapThrown: (error: Error) => unknown;
4
+ export declare const describeThrown: (value: unknown) => string;
5
+ export declare const guardThrows: <H extends (context: Context, next: Next) => unknown>(handler: H) => H;
@@ -0,0 +1,37 @@
1
+ // Hono's compose and hono-base hand only `instanceof Error` to `onError` and rethrow anything else
2
+ // out of `fetch`, so a thrown non-Error travels in this carrier and is unwrapped in `onError`.
3
+ class ThrownValue extends Error {
4
+ value;
5
+ constructor(value) {
6
+ super('A non-Error value was thrown');
7
+ this.value = value;
8
+ }
9
+ }
10
+ export const asError = (value) => (value instanceof Error ? value : new ThrownValue(value));
11
+ export const unwrapThrown = (error) => (error instanceof ThrownValue ? error.value : error);
12
+ // A circular or BigInt-carrying value must not make the error path itself throw.
13
+ export const describeThrown = (value) => {
14
+ try {
15
+ return JSON.stringify(value);
16
+ }
17
+ catch {
18
+ return Object.prototype.toString.call(value);
19
+ }
20
+ };
21
+ const isThenable = (value) => typeof value?.then === 'function';
22
+ const rethrowAsError = (value) => {
23
+ throw asError(value);
24
+ };
25
+ export const guardThrows = (handler) => ((context, next) => {
26
+ try {
27
+ const result = handler(context, next);
28
+ if (result instanceof Promise)
29
+ return result.catch(rethrowAsError);
30
+ // Hono awaits only a real Promise: any other thenable would be handed to Bun as the response.
31
+ return isThenable(result) ? Promise.resolve(result).catch(rethrowAsError) : result;
32
+ }
33
+ catch (error) {
34
+ throw asError(error);
35
+ }
36
+ });
37
+ //# sourceMappingURL=nonErrorThrow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nonErrorThrow.js","sourceRoot":"","sources":["../../../lib/utils/nonErrorThrow.ts"],"names":[],"mappings":"AAEA,mGAAmG;AACnG,+FAA+F;AAC/F,MAAM,WAAY,SAAQ,KAAK;IACM;IAAnC,YAAmC,KAAc;QAC/C,KAAK,CAAC,8BAA8B,CAAC,CAAC;QADL,UAAK,GAAL,KAAK,CAAS;IAEjD,CAAC;CACF;AAED,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,KAAc,EAAS,EAAE,CAAC,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;AAE5G,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,KAAY,EAAW,EAAE,CAAC,CAAC,KAAK,YAAY,WAAW,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;AAE5G,iFAAiF;AACjF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,KAAc,EAAU,EAAE;IACvD,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IAC/B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,MAAM,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC/C,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,UAAU,GAAG,CAAC,KAAc,EAAiC,EAAE,CACnE,OAAQ,KAA+C,EAAE,IAAI,KAAK,UAAU,CAAC;AAE/E,MAAM,cAAc,GAAG,CAAC,KAAc,EAAS,EAAE;IAC/C,MAAM,OAAO,CAAC,KAAK,CAAC,CAAC;AACvB,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,WAAW,GAAG,CAAsD,OAAU,EAAK,EAAE,CAChG,CAAC,CAAC,OAAgB,EAAE,IAAU,EAAE,EAAE;IAChC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAEtC,IAAI,MAAM,YAAY,OAAO;YAAE,OAAO,MAAM,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QAEnE,8FAA8F;QAC9F,OAAO,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IACrF,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;AACH,CAAC,CAAM,CAAC"}
package/package.json CHANGED
@@ -9,7 +9,7 @@
9
9
  "README.md",
10
10
  "LICENSE"
11
11
  ],
12
- "version": "5.1.0",
12
+ "version": "5.2.0",
13
13
  "author": "LibirSoft",
14
14
  "repository": {
15
15
  "type": "git",
@@ -23,6 +23,8 @@
23
23
  "test": "bun test",
24
24
  "test:watch": "bun test --watch",
25
25
  "test:coverage": "bun test --coverage",
26
+ "test:core-chain": "ASENA_REQUIRE_EXCEPTION_CHAIN=1 bun test",
27
+ "test:local-core": "bun test/utils/localCore.ts",
26
28
  "build": "bun run clean && tsc",
27
29
  "typecheck": "tsc -p tsconfig.typecheck.json",
28
30
  "clean": "rm -rf dist",
@@ -41,7 +43,7 @@
41
43
  "release": "bun run build && changeset publish"
42
44
  },
43
45
  "devDependencies": {
44
- "@asenajs/asena": "^0.12.0",
46
+ "@asenajs/asena": "^0.13.0",
45
47
  "@changesets/cli": "^2.31.1",
46
48
  "@types/bun": "latest",
47
49
  "@typescript-eslint/eslint-plugin": "^8.68.0",
@@ -55,7 +57,7 @@
55
57
  "zod": "^4.4.3"
56
58
  },
57
59
  "peerDependencies": {
58
- "@asenajs/asena": "^0.12.0",
60
+ "@asenajs/asena": "^0.12.0 || ^0.13.0",
59
61
  "hono": ">=4.12.9",
60
62
  "typescript": "^5.8.2",
61
63
  "zod": "^4.3.6"