@asenajs/hono-adapter 1.3.0 → 1.5.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.
- package/README.md +2 -2
- package/dist/lib/HonoAdapter.d.ts +41 -4
- package/dist/lib/HonoAdapter.js +169 -54
- package/dist/lib/HonoAdapter.js.map +1 -1
- package/dist/lib/HonoContextWrapper.d.ts +16 -3
- package/dist/lib/HonoContextWrapper.js +77 -2
- package/dist/lib/HonoContextWrapper.js.map +1 -1
- package/dist/lib/HonoWebsocketAdapter.d.ts +2 -16
- package/dist/lib/HonoWebsocketAdapter.js +25 -53
- package/dist/lib/HonoWebsocketAdapter.js.map +1 -1
- package/dist/lib/defaults/ValidationService.d.ts +4 -4
- package/dist/lib/middlewares/CorsMiddleware.d.ts +1 -1
- package/dist/lib/middlewares/CorsMiddleware.js +5 -6
- package/dist/lib/middlewares/CorsMiddleware.js.map +1 -1
- package/dist/lib/middlewares/RateLimiterMiddleware.d.ts +1 -1
- package/dist/lib/middlewares/RateLimiterMiddleware.js +11 -9
- package/dist/lib/middlewares/RateLimiterMiddleware.js.map +1 -1
- package/dist/lib/types/HonoAdapterOptions.d.ts +27 -0
- package/dist/lib/types/HonoAdapterOptions.js +2 -0
- package/dist/lib/types/HonoAdapterOptions.js.map +1 -0
- package/dist/lib/types/SendPingStrategy.d.ts +4 -0
- package/dist/lib/types/SendPingStrategy.js +2 -0
- package/dist/lib/types/SendPingStrategy.js.map +1 -0
- package/dist/lib/types/index.d.ts +2 -0
- package/dist/lib/types/index.js +2 -0
- package/dist/lib/types/index.js.map +1 -1
- package/dist/lib/utils/createHonoAdapter.d.ts +2 -1
- package/dist/lib/utils/createHonoAdapter.js +9 -1
- package/dist/lib/utils/createHonoAdapter.js.map +1 -1
- package/dist/lib/utils/middlewareParser.d.ts +5 -1
- package/dist/lib/utils/middlewareParser.js +19 -4
- package/dist/lib/utils/middlewareParser.js.map +1 -1
- package/dist/lib/utils/routePriority.d.ts +40 -0
- package/dist/lib/utils/routePriority.js +75 -0
- package/dist/lib/utils/routePriority.js.map +1 -0
- package/dist/test/utils/testHelpers.d.ts +61 -0
- package/dist/test/utils/testHelpers.js +109 -0
- package/dist/test/utils/testHelpers.js.map +1 -0
- package/package.json +21 -15
package/README.md
CHANGED
|
@@ -44,8 +44,8 @@ await new AsenaServer(adapter)
|
|
|
44
44
|
### Controller Example
|
|
45
45
|
|
|
46
46
|
```typescript
|
|
47
|
-
import { Controller } from '@asenajs/asena/
|
|
48
|
-
import { Get } from '@asenajs/asena/
|
|
47
|
+
import { Controller } from '@asenajs/asena/decorators';
|
|
48
|
+
import { Get } from '@asenajs/asena/decorators/http';
|
|
49
49
|
import type { Context } from '@asenajs/hono-adapter';
|
|
50
50
|
|
|
51
51
|
@Controller()
|
|
@@ -1,18 +1,28 @@
|
|
|
1
1
|
import { Hono } from 'hono';
|
|
2
2
|
import type { Server } from 'bun';
|
|
3
|
-
import type {
|
|
3
|
+
import type { WebsocketRouteParams } from '@asenajs/asena/adapter';
|
|
4
4
|
import { AsenaAdapter, type AsenaServeOptions, type BaseMiddleware, type RouteParams } from '@asenajs/asena/adapter';
|
|
5
5
|
import type { GlobalMiddlewareRouteConfig } from '@asenajs/asena/server/config';
|
|
6
|
-
import type { HonoErrorHandler, StaticServeExtras } from './types';
|
|
6
|
+
import type { HonoAdapterOptions, HonoErrorHandler, 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';
|
|
10
|
+
import { HonoWebsocketAdapter } from './HonoWebsocketAdapter';
|
|
10
11
|
import type { WebSocketData } from '@asenajs/asena/web-socket';
|
|
11
12
|
export declare class HonoAdapter extends AsenaAdapter<HonoAdapterContext, ValidationSchema> {
|
|
12
13
|
name: string;
|
|
13
|
-
app: Hono
|
|
14
|
+
app: Hono;
|
|
15
|
+
private _strict;
|
|
14
16
|
private server;
|
|
15
17
|
private options;
|
|
18
|
+
/**
|
|
19
|
+
* Normalizes a route path for Hono compatibility.
|
|
20
|
+
* Strips trailing slash (except root '/') because Hono's strict:false
|
|
21
|
+
* normalizes incoming request paths by removing trailing slashes.
|
|
22
|
+
* Registered routes must match this normalized form.
|
|
23
|
+
*/
|
|
24
|
+
private normalizePath;
|
|
25
|
+
stop(closeActiveConnections?: boolean): Promise<void>;
|
|
16
26
|
private routeQueue;
|
|
17
27
|
/**
|
|
18
28
|
* WebSocket route queue for deferred registration
|
|
@@ -24,9 +34,15 @@ export declare class HonoAdapter extends AsenaAdapter<HonoAdapterContext, Valida
|
|
|
24
34
|
* Middlewares are stored with their pattern config and applied during route registration
|
|
25
35
|
*/
|
|
26
36
|
private globalMiddlewares;
|
|
37
|
+
/**
|
|
38
|
+
* HTML routes for FrontendController pages
|
|
39
|
+
* Stored separately and merged into Bun.serve() routes at start time
|
|
40
|
+
*/
|
|
41
|
+
private htmlRoutes;
|
|
27
42
|
private routesRegistered;
|
|
28
43
|
private readonly methodMap;
|
|
29
|
-
constructor(
|
|
44
|
+
constructor(options: HonoAdapterOptions);
|
|
45
|
+
constructor(logger: ServerLogger, websocketAdapter?: HonoWebsocketAdapter, app?: Hono<any, any, any>);
|
|
30
46
|
/**
|
|
31
47
|
* Registers a global middleware with optional path filtering
|
|
32
48
|
*
|
|
@@ -53,6 +69,14 @@ export declare class HonoAdapter extends AsenaAdapter<HonoAdapterContext, Valida
|
|
|
53
69
|
* });
|
|
54
70
|
* ```
|
|
55
71
|
*/
|
|
72
|
+
/**
|
|
73
|
+
* Registers an HTML route for FrontendController pages.
|
|
74
|
+
* HTML routes bypass the middleware chain and are served directly by Bun.serve().
|
|
75
|
+
*
|
|
76
|
+
* @param path - Full URL path (e.g., '/ui/home')
|
|
77
|
+
* @param htmlBundle - The HTML bundle returned by importing an .html file
|
|
78
|
+
*/
|
|
79
|
+
registerHTMLRoute(path: string, htmlBundle: unknown): void;
|
|
56
80
|
use(middleware: BaseMiddleware<HonoAdapterContext>, config?: GlobalMiddlewareRouteConfig): void;
|
|
57
81
|
registerRoute(params: RouteParams<HonoAdapterContext, ValidationSchema, StaticServeExtras>): Promise<void>;
|
|
58
82
|
/**
|
|
@@ -107,6 +131,19 @@ export declare class HonoAdapter extends AsenaAdapter<HonoAdapterContext, Valida
|
|
|
107
131
|
* @returns Array of Hono middleware handlers for validation
|
|
108
132
|
*/
|
|
109
133
|
private prepareValidator;
|
|
134
|
+
/**
|
|
135
|
+
* Registers global middlewares at the top level of the Hono app
|
|
136
|
+
*
|
|
137
|
+
* Must be called BEFORE route registration so middlewares run before route matching.
|
|
138
|
+
* This ensures global middlewares (like CORS) handle all requests including
|
|
139
|
+
* OPTIONS preflight requests that don't have explicit route handlers.
|
|
140
|
+
*
|
|
141
|
+
* Uses Hono's native path-based middleware registration:
|
|
142
|
+
* - No config → app.use('*', mw)
|
|
143
|
+
* - Only include patterns → app.use('/api/*', mw) per pattern
|
|
144
|
+
* - Exclude patterns → runtime shouldApplyMiddleware check (Hono has no native exclude)
|
|
145
|
+
*/
|
|
146
|
+
private registerGlobalMiddlewaresTopLevel;
|
|
110
147
|
/**
|
|
111
148
|
* Gets global middlewares that should be applied to a specific path
|
|
112
149
|
*
|
package/dist/lib/HonoAdapter.js
CHANGED
|
@@ -3,19 +3,37 @@ import { HTTPException } from 'hono/http-exception';
|
|
|
3
3
|
import * as bun from 'bun';
|
|
4
4
|
import { HonoContextWrapper } from './HonoContextWrapper';
|
|
5
5
|
import { AsenaAdapter, VALIDATOR_METHODS, } from '@asenajs/asena/adapter';
|
|
6
|
-
import { shouldApplyMiddleware } from '@asenajs/asena/utils
|
|
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';
|
|
9
9
|
import { middlewareParser } from './utils/middlewareParser';
|
|
10
|
+
import { compareRoutePriority } from './utils/routePriority';
|
|
10
11
|
import { HttpMethod } from '@asenajs/asena/web-types';
|
|
11
12
|
import { HonoWebsocketAdapter } from './HonoWebsocketAdapter';
|
|
12
13
|
import { serveStatic } from 'hono/bun';
|
|
13
14
|
export class HonoAdapter extends AsenaAdapter {
|
|
14
15
|
name = 'HonoAdapter';
|
|
15
|
-
app
|
|
16
|
+
app;
|
|
17
|
+
_strict = true;
|
|
16
18
|
server;
|
|
17
|
-
// @ts-ignore
|
|
18
19
|
options = {};
|
|
20
|
+
/**
|
|
21
|
+
* Normalizes a route path for Hono compatibility.
|
|
22
|
+
* Strips trailing slash (except root '/') because Hono's strict:false
|
|
23
|
+
* normalizes incoming request paths by removing trailing slashes.
|
|
24
|
+
* Registered routes must match this normalized form.
|
|
25
|
+
*/
|
|
26
|
+
normalizePath(path) {
|
|
27
|
+
if (path.length > 1 && path.endsWith('/')) {
|
|
28
|
+
return path.slice(0, -1);
|
|
29
|
+
}
|
|
30
|
+
return path;
|
|
31
|
+
}
|
|
32
|
+
async stop(closeActiveConnections = true) {
|
|
33
|
+
if (this.server) {
|
|
34
|
+
this.server.stop(closeActiveConnections);
|
|
35
|
+
}
|
|
36
|
+
}
|
|
19
37
|
// Deferred route registration
|
|
20
38
|
routeQueue = [];
|
|
21
39
|
/**
|
|
@@ -28,6 +46,11 @@ export class HonoAdapter extends AsenaAdapter {
|
|
|
28
46
|
* Middlewares are stored with their pattern config and applied during route registration
|
|
29
47
|
*/
|
|
30
48
|
globalMiddlewares = [];
|
|
49
|
+
/**
|
|
50
|
+
* HTML routes for FrontendController pages
|
|
51
|
+
* Stored separately and merged into Bun.serve() routes at start time
|
|
52
|
+
*/
|
|
53
|
+
htmlRoutes = new Map();
|
|
31
54
|
routesRegistered = false;
|
|
32
55
|
methodMap = {
|
|
33
56
|
[HttpMethod.GET]: (path, ...handlers) => this.app.get(path, ...handlers),
|
|
@@ -36,19 +59,40 @@ export class HonoAdapter extends AsenaAdapter {
|
|
|
36
59
|
[HttpMethod.DELETE]: (path, ...handlers) => this.app.delete(path, ...handlers),
|
|
37
60
|
[HttpMethod.PATCH]: (path, ...handlers) => this.app.patch(path, ...handlers),
|
|
38
61
|
[HttpMethod.OPTIONS]: (path, ...handlers) => this.app.options(path, ...handlers),
|
|
39
|
-
[HttpMethod.CONNECT]: (path, ...handlers) => this.app.on(HttpMethod.CONNECT.toUpperCase(), path, ...handlers),
|
|
40
|
-
|
|
41
|
-
|
|
62
|
+
[HttpMethod.CONNECT]: (path, ...handlers) => this.app.on([HttpMethod.CONNECT.toUpperCase()], path, ...handlers),
|
|
63
|
+
// HEAD is handled automatically by Hono via GET routes (HTTP spec: HEAD = GET without body).
|
|
64
|
+
// Registering via app.on(['HEAD'], ...) does not work in Hono — it silently 404s.
|
|
65
|
+
[HttpMethod.HEAD]: (path, ...handlers) => this.app.get(path, ...handlers),
|
|
66
|
+
[HttpMethod.TRACE]: (path, ...handlers) => this.app.on([HttpMethod.TRACE.toUpperCase()], path, ...handlers),
|
|
67
|
+
[HttpMethod.ALL]: (path, ...handlers) => this.app.all(path, ...handlers),
|
|
42
68
|
};
|
|
43
|
-
constructor(
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
69
|
+
constructor(loggerOrOptions, websocketAdapter, app) {
|
|
70
|
+
let logger;
|
|
71
|
+
let wsAdapter;
|
|
72
|
+
let honoApp;
|
|
73
|
+
if (typeof loggerOrOptions === 'object' && 'logger' in loggerOrOptions) {
|
|
74
|
+
logger = loggerOrOptions.logger;
|
|
75
|
+
wsAdapter = loggerOrOptions.websocketAdapter ?? new HonoWebsocketAdapter(logger);
|
|
76
|
+
honoApp = loggerOrOptions.app;
|
|
47
77
|
}
|
|
48
|
-
|
|
78
|
+
else {
|
|
79
|
+
logger = loggerOrOptions;
|
|
80
|
+
wsAdapter = websocketAdapter ?? new HonoWebsocketAdapter(logger);
|
|
81
|
+
honoApp = app;
|
|
82
|
+
}
|
|
83
|
+
super(logger, wsAdapter);
|
|
49
84
|
if (!this.websocketAdapter.logger && logger) {
|
|
50
85
|
this.websocketAdapter.logger = this.logger;
|
|
51
86
|
}
|
|
87
|
+
this._strict = typeof loggerOrOptions === 'object' && 'logger' in loggerOrOptions
|
|
88
|
+
? loggerOrOptions.strict ?? true
|
|
89
|
+
: true;
|
|
90
|
+
if (honoApp) {
|
|
91
|
+
this.app = honoApp;
|
|
92
|
+
}
|
|
93
|
+
else {
|
|
94
|
+
this.app = new Hono({ strict: this._strict });
|
|
95
|
+
}
|
|
52
96
|
}
|
|
53
97
|
/**
|
|
54
98
|
* Registers a global middleware with optional path filtering
|
|
@@ -76,6 +120,26 @@ export class HonoAdapter extends AsenaAdapter {
|
|
|
76
120
|
* });
|
|
77
121
|
* ```
|
|
78
122
|
*/
|
|
123
|
+
/**
|
|
124
|
+
* Registers an HTML route for FrontendController pages.
|
|
125
|
+
* HTML routes bypass the middleware chain and are served directly by Bun.serve().
|
|
126
|
+
*
|
|
127
|
+
* @param path - Full URL path (e.g., '/ui/home')
|
|
128
|
+
* @param htmlBundle - The HTML bundle returned by importing an .html file
|
|
129
|
+
*/
|
|
130
|
+
registerHTMLRoute(path, htmlBundle) {
|
|
131
|
+
if (this.htmlRoutes.has(path)) {
|
|
132
|
+
throw new Error(`Duplicate HTML route: "${path}" is already registered.`);
|
|
133
|
+
}
|
|
134
|
+
this.htmlRoutes.set(path, htmlBundle);
|
|
135
|
+
// Register trailing slash variant for consistent routing
|
|
136
|
+
if (path !== '/' && !path.endsWith('/')) {
|
|
137
|
+
this.htmlRoutes.set(`${path}/`, htmlBundle);
|
|
138
|
+
}
|
|
139
|
+
else if (path !== '/' && path.endsWith('/')) {
|
|
140
|
+
this.htmlRoutes.set(path.slice(0, -1), htmlBundle);
|
|
141
|
+
}
|
|
142
|
+
}
|
|
79
143
|
use(middleware, config) {
|
|
80
144
|
// Store middleware with config for deferred application during route registration
|
|
81
145
|
this.globalMiddlewares.push({ middleware, config });
|
|
@@ -103,20 +167,29 @@ export class HonoAdapter extends AsenaAdapter {
|
|
|
103
167
|
async start() {
|
|
104
168
|
// Register all queued routes with optimization
|
|
105
169
|
if (!this.routesRegistered) {
|
|
170
|
+
// Register global middlewares at top level BEFORE routes
|
|
171
|
+
// This ensures they run for ALL requests including OPTIONS preflight
|
|
172
|
+
this.registerGlobalMiddlewaresTopLevel();
|
|
106
173
|
await this.optimizeAndRegisterRoutes();
|
|
107
174
|
this.routesRegistered = true;
|
|
108
175
|
}
|
|
109
176
|
this.websocketAdapter.prepareWebSocket(this.options?.wsOptions);
|
|
110
|
-
|
|
177
|
+
const serveConfig = {
|
|
111
178
|
...this.options.serveOptions,
|
|
112
179
|
port: this.port,
|
|
113
180
|
fetch: this.app.fetch,
|
|
114
181
|
websocket: this.websocketAdapter.websocket,
|
|
115
|
-
}
|
|
182
|
+
};
|
|
183
|
+
// Add HTML routes if any are registered (FrontendController pages)
|
|
184
|
+
// Bun checks routes first, then falls through to fetch (Hono) for API routes
|
|
185
|
+
if (this.htmlRoutes.size > 0) {
|
|
186
|
+
serveConfig.routes = Object.fromEntries(this.htmlRoutes);
|
|
187
|
+
}
|
|
188
|
+
this.server = bun.serve(serveConfig);
|
|
116
189
|
this.websocketAdapter.startWebsocket(this.server);
|
|
117
190
|
// Log controller-based route information
|
|
118
191
|
if (this.routeQueue.length > 0 || this.wsRouteQueue.length > 0) {
|
|
119
|
-
this.logger.info(this.buildControllerBasedLog());
|
|
192
|
+
this.logger.info('\n' + this.buildControllerBasedLog());
|
|
120
193
|
}
|
|
121
194
|
this.logger.info(`Server running at http://localhost:${this.server.port}`);
|
|
122
195
|
return this.server;
|
|
@@ -157,7 +230,7 @@ export class HonoAdapter extends AsenaAdapter {
|
|
|
157
230
|
timestamp: new Date().toISOString(),
|
|
158
231
|
});
|
|
159
232
|
// Wrap context for user handler
|
|
160
|
-
const wrapper = new HonoContextWrapper(context);
|
|
233
|
+
const wrapper = new HonoContextWrapper(context, this.server);
|
|
161
234
|
// Handle HTTPException with Hono's standard pattern
|
|
162
235
|
if (error instanceof HTTPException) {
|
|
163
236
|
try {
|
|
@@ -197,10 +270,10 @@ export class HonoAdapter extends AsenaAdapter {
|
|
|
197
270
|
this.port = port;
|
|
198
271
|
}
|
|
199
272
|
prepareMiddlewares(middlewares) {
|
|
200
|
-
return middlewareParser(middlewares);
|
|
273
|
+
return middlewareParser(middlewares, () => this.server);
|
|
201
274
|
}
|
|
202
275
|
prepareHandler(handler) {
|
|
203
|
-
return (c) => handler(new HonoContextWrapper(c));
|
|
276
|
+
return (c) => handler(new HonoContextWrapper(c, this.server));
|
|
204
277
|
}
|
|
205
278
|
/**
|
|
206
279
|
* Prepares static serve options with enhanced features
|
|
@@ -208,7 +281,7 @@ export class HonoAdapter extends AsenaAdapter {
|
|
|
208
281
|
* @returns Configured static serve options for Hono
|
|
209
282
|
*/
|
|
210
283
|
prepareStaticServeOptions(staticServe) {
|
|
211
|
-
|
|
284
|
+
const staticServeOptions = {
|
|
212
285
|
root: staticServe.root,
|
|
213
286
|
};
|
|
214
287
|
if (staticServe.rewriteRequestPath) {
|
|
@@ -216,7 +289,6 @@ export class HonoAdapter extends AsenaAdapter {
|
|
|
216
289
|
}
|
|
217
290
|
if (staticServe.onFound) {
|
|
218
291
|
if (staticServe.onFound.override) {
|
|
219
|
-
// @ts-ignore
|
|
220
292
|
staticServeOptions.onFound = staticServe.onFound.handler;
|
|
221
293
|
}
|
|
222
294
|
else {
|
|
@@ -236,7 +308,7 @@ export class HonoAdapter extends AsenaAdapter {
|
|
|
236
308
|
});
|
|
237
309
|
}
|
|
238
310
|
// Call user callback
|
|
239
|
-
await staticServe.onFound.handler(path, new HonoContextWrapper(c));
|
|
311
|
+
await staticServe.onFound.handler(path, new HonoContextWrapper(c, this.server));
|
|
240
312
|
};
|
|
241
313
|
}
|
|
242
314
|
}
|
|
@@ -258,12 +330,11 @@ export class HonoAdapter extends AsenaAdapter {
|
|
|
258
330
|
}
|
|
259
331
|
if (staticServe.onNotFound) {
|
|
260
332
|
if (staticServe.onNotFound.override) {
|
|
261
|
-
// @ts-ignore
|
|
262
333
|
staticServeOptions.onNotFound = staticServe.onNotFound.handler;
|
|
263
334
|
}
|
|
264
335
|
else {
|
|
265
336
|
staticServeOptions.onNotFound = (path, c) => {
|
|
266
|
-
staticServe.onNotFound.handler(path, new HonoContextWrapper(c));
|
|
337
|
+
staticServe.onNotFound.handler(path, new HonoContextWrapper(c, this.server));
|
|
267
338
|
};
|
|
268
339
|
}
|
|
269
340
|
}
|
|
@@ -333,6 +404,49 @@ export class HonoAdapter extends AsenaAdapter {
|
|
|
333
404
|
}
|
|
334
405
|
return validators;
|
|
335
406
|
}
|
|
407
|
+
/**
|
|
408
|
+
* Registers global middlewares at the top level of the Hono app
|
|
409
|
+
*
|
|
410
|
+
* Must be called BEFORE route registration so middlewares run before route matching.
|
|
411
|
+
* This ensures global middlewares (like CORS) handle all requests including
|
|
412
|
+
* OPTIONS preflight requests that don't have explicit route handlers.
|
|
413
|
+
*
|
|
414
|
+
* Uses Hono's native path-based middleware registration:
|
|
415
|
+
* - No config → app.use('*', mw)
|
|
416
|
+
* - Only include patterns → app.use('/api/*', mw) per pattern
|
|
417
|
+
* - Exclude patterns → runtime shouldApplyMiddleware check (Hono has no native exclude)
|
|
418
|
+
*/
|
|
419
|
+
registerGlobalMiddlewaresTopLevel() {
|
|
420
|
+
for (const { middleware, config } of this.globalMiddlewares) {
|
|
421
|
+
const parsed = middlewareParser([middleware], () => this.server);
|
|
422
|
+
if (!config) {
|
|
423
|
+
// No pattern filter → apply to all routes
|
|
424
|
+
this.app.use('*', ...parsed);
|
|
425
|
+
}
|
|
426
|
+
else if (config.include && !config.exclude) {
|
|
427
|
+
// Only include patterns → use Hono's native path matching
|
|
428
|
+
for (const pattern of config.include) {
|
|
429
|
+
this.app.use(pattern, ...parsed);
|
|
430
|
+
}
|
|
431
|
+
}
|
|
432
|
+
else {
|
|
433
|
+
// Exclude patterns exist → runtime filtering required
|
|
434
|
+
this.app.use('*', async (c, next) => {
|
|
435
|
+
if (shouldApplyMiddleware(new URL(c.req.url).pathname, config)) {
|
|
436
|
+
for (const mw of parsed) {
|
|
437
|
+
let called = false;
|
|
438
|
+
await mw(c, async () => {
|
|
439
|
+
called = true;
|
|
440
|
+
});
|
|
441
|
+
if (!called)
|
|
442
|
+
return;
|
|
443
|
+
}
|
|
444
|
+
}
|
|
445
|
+
await next();
|
|
446
|
+
});
|
|
447
|
+
}
|
|
448
|
+
}
|
|
449
|
+
}
|
|
336
450
|
/**
|
|
337
451
|
* Gets global middlewares that should be applied to a specific path
|
|
338
452
|
*
|
|
@@ -367,7 +481,7 @@ export class HonoAdapter extends AsenaAdapter {
|
|
|
367
481
|
*/
|
|
368
482
|
extractBasePath(path) {
|
|
369
483
|
// Remove trailing slash
|
|
370
|
-
|
|
484
|
+
const normalized = path.endsWith('/') && path !== '/' ? path.slice(0, -1) : path;
|
|
371
485
|
// Find the last segment without parameters
|
|
372
486
|
const segments = normalized.split('/');
|
|
373
487
|
const baseSegments = [];
|
|
@@ -423,9 +537,16 @@ export class HonoAdapter extends AsenaAdapter {
|
|
|
423
537
|
async optimizeAndRegisterRoutes() {
|
|
424
538
|
// Register HTTP routes
|
|
425
539
|
if (this.routeQueue.length > 0) {
|
|
540
|
+
// Sort routes by priority: static > param > wildcard, more specific first.
|
|
541
|
+
// Hono matches in registration order — correct ordering prevents /:id
|
|
542
|
+
// from catching static routes like /count or /search.
|
|
543
|
+
// @see routePriority.ts for the segment-based comparison algorithm.
|
|
544
|
+
this.routeQueue.sort((a, b) => compareRoutePriority(a.path, b.path));
|
|
426
545
|
// Group routes by base path
|
|
427
546
|
const routeGroups = this.groupRoutesByBasePath(this.routeQueue);
|
|
428
|
-
|
|
547
|
+
// Sort groups by the same priority algorithm to ensure correct inter-group order
|
|
548
|
+
const sortedGroups = [...routeGroups.entries()].sort(([a], [b]) => compareRoutePriority(a, b));
|
|
549
|
+
for (const [basePath, routes] of sortedGroups) {
|
|
429
550
|
// Find common middlewares for this group
|
|
430
551
|
const commonMiddlewares = this.extractCommonMiddlewares(routes);
|
|
431
552
|
if (routes.length > 1 && commonMiddlewares.length > 0) {
|
|
@@ -497,14 +618,8 @@ export class HonoAdapter extends AsenaAdapter {
|
|
|
497
618
|
*/
|
|
498
619
|
async registerRouteGroup(basePath, commonMiddlewares, routes) {
|
|
499
620
|
// Create grouped Hono instance
|
|
500
|
-
const group = new Hono();
|
|
501
|
-
//
|
|
502
|
-
const applicableGlobalMiddlewares = this.getGlobalMiddlewaresForPath(basePath);
|
|
503
|
-
const preparedGlobalMiddlewares = this.prepareMiddlewares(applicableGlobalMiddlewares);
|
|
504
|
-
// Apply global middlewares first (before common middlewares)
|
|
505
|
-
if (preparedGlobalMiddlewares.length > 0) {
|
|
506
|
-
group.use('*', ...preparedGlobalMiddlewares);
|
|
507
|
-
}
|
|
621
|
+
const group = new Hono({ strict: this._strict });
|
|
622
|
+
// Global middlewares are registered at top level via registerGlobalMiddlewaresTopLevel()
|
|
508
623
|
// Apply common middlewares to the entire group
|
|
509
624
|
const preparedCommonMiddlewares = this.prepareMiddlewares(commonMiddlewares);
|
|
510
625
|
if (preparedCommonMiddlewares.length > 0) {
|
|
@@ -518,9 +633,10 @@ export class HonoAdapter extends AsenaAdapter {
|
|
|
518
633
|
[HttpMethod.DELETE]: (path, ...handlers) => group.delete(path, ...handlers),
|
|
519
634
|
[HttpMethod.PATCH]: (path, ...handlers) => group.patch(path, ...handlers),
|
|
520
635
|
[HttpMethod.OPTIONS]: (path, ...handlers) => group.options(path, ...handlers),
|
|
521
|
-
[HttpMethod.CONNECT]: (path, ...handlers) => group.on(HttpMethod.CONNECT.toUpperCase(), path, ...handlers),
|
|
522
|
-
|
|
523
|
-
[HttpMethod.
|
|
636
|
+
[HttpMethod.CONNECT]: (path, ...handlers) => group.on([HttpMethod.CONNECT.toUpperCase()], path, ...handlers),
|
|
637
|
+
// HEAD is handled automatically by Hono via GET routes (HTTP spec: HEAD = GET without body).
|
|
638
|
+
[HttpMethod.HEAD]: (path, ...handlers) => group.get(path, ...handlers),
|
|
639
|
+
[HttpMethod.TRACE]: (path, ...handlers) => group.on([HttpMethod.TRACE.toUpperCase()], path, ...handlers),
|
|
524
640
|
};
|
|
525
641
|
// Register each route in the group
|
|
526
642
|
for (const route of routes) {
|
|
@@ -529,10 +645,8 @@ export class HonoAdapter extends AsenaAdapter {
|
|
|
529
645
|
const preparedMiddlewares = this.prepareMiddlewares(uniqueMiddlewares);
|
|
530
646
|
const validators = route.validator ? await this.prepareValidator(route.validator) : [];
|
|
531
647
|
const allMiddlewares = [...validators, ...preparedMiddlewares];
|
|
532
|
-
const methodHandler = groupMethodMap[route.method]
|
|
533
|
-
|
|
534
|
-
throw new Error(`Invalid HTTP method: ${route.method}`);
|
|
535
|
-
}
|
|
648
|
+
const methodHandler = groupMethodMap[route.method] ??
|
|
649
|
+
((path, ...handlers) => group.on([route.method.toUpperCase()], path, ...handlers));
|
|
536
650
|
// Calculate relative path
|
|
537
651
|
let relativePath = route.path;
|
|
538
652
|
if (route.path.startsWith(basePath) && basePath !== '/') {
|
|
@@ -541,39 +655,40 @@ export class HonoAdapter extends AsenaAdapter {
|
|
|
541
655
|
if (!relativePath.startsWith('/')) {
|
|
542
656
|
relativePath = '/' + relativePath;
|
|
543
657
|
}
|
|
658
|
+
// Normalize path for Hono trailing slash compatibility
|
|
659
|
+
const normalizedRelativePath = this.normalizePath(relativePath);
|
|
544
660
|
// Register to group
|
|
545
661
|
if (route.staticServe) {
|
|
546
|
-
methodHandler(
|
|
662
|
+
methodHandler(normalizedRelativePath, ...allMiddlewares, serveStatic(this.prepareStaticServeOptions(route.staticServe)));
|
|
547
663
|
}
|
|
548
664
|
else {
|
|
549
665
|
const handler = this.prepareHandler(route.handler);
|
|
550
|
-
methodHandler(
|
|
666
|
+
methodHandler(normalizedRelativePath, ...allMiddlewares, handler);
|
|
551
667
|
}
|
|
552
668
|
}
|
|
553
|
-
// Mount group to main app
|
|
554
|
-
this.app.route(basePath, group);
|
|
669
|
+
// Mount group to main app (normalize basePath too)
|
|
670
|
+
this.app.route(this.normalizePath(basePath), group);
|
|
555
671
|
}
|
|
556
672
|
/**
|
|
557
673
|
* Registers a single route directly without grouping
|
|
558
674
|
*/
|
|
559
675
|
async registerRouteDirect(route) {
|
|
560
|
-
// Get filtered global middlewares for this route
|
|
561
|
-
const applicableGlobalMiddlewares = this.getGlobalMiddlewaresForPath(route.path);
|
|
562
|
-
const preparedGlobalMiddlewares = this.prepareMiddlewares(applicableGlobalMiddlewares);
|
|
563
676
|
const preparedMiddlewares = this.prepareMiddlewares(route.middlewares || []);
|
|
564
677
|
const validators = route.validator ? await this.prepareValidator(route.validator) : [];
|
|
565
|
-
//
|
|
566
|
-
const allMiddlewares = [...validators, ...
|
|
567
|
-
const methodHandler = this.methodMap[route.method]
|
|
568
|
-
|
|
569
|
-
|
|
570
|
-
|
|
678
|
+
// Global middlewares are registered at top level via registerGlobalMiddlewaresTopLevel()
|
|
679
|
+
const allMiddlewares = [...validators, ...preparedMiddlewares];
|
|
680
|
+
const methodHandler = this.methodMap[route.method] ??
|
|
681
|
+
((path, ...handlers) => this.app.on([route.method.toUpperCase()], path, ...handlers));
|
|
682
|
+
// Normalize path for Hono: strip trailing slash (except root '/')
|
|
683
|
+
// Hono strict:false strips trailing slash from incoming requests,
|
|
684
|
+
// so registered paths must also not have trailing slash to match.
|
|
685
|
+
const normalizedPath = this.normalizePath(route.path);
|
|
571
686
|
if (route.staticServe) {
|
|
572
|
-
methodHandler(
|
|
687
|
+
methodHandler(normalizedPath, ...allMiddlewares, serveStatic(this.prepareStaticServeOptions(route.staticServe)));
|
|
573
688
|
}
|
|
574
689
|
else {
|
|
575
690
|
const handler = this.prepareHandler(route.handler);
|
|
576
|
-
methodHandler(
|
|
691
|
+
methodHandler(normalizedPath, ...allMiddlewares, handler);
|
|
577
692
|
}
|
|
578
693
|
}
|
|
579
694
|
/**
|
|
@@ -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,9 +1,12 @@
|
|
|
1
|
+
import type { Server } from 'bun';
|
|
1
2
|
import type { Context, HonoRequest } from 'hono';
|
|
2
|
-
import type { AsenaContext, CookieExtra, SendOptions } from '@asenajs/asena/adapter';
|
|
3
|
+
import type { AsenaContext, AsenaSSEStreamWriter, AsenaStreamWriter, AsenaVariables, CookieExtra, SendOptions } from '@asenajs/asena/adapter';
|
|
3
4
|
import type { CookieOptions } from 'hono/utils/cookie';
|
|
4
5
|
export declare class HonoContextWrapper implements AsenaContext<HonoRequest<any, any>, Response> {
|
|
5
6
|
private _context;
|
|
6
|
-
|
|
7
|
+
private _server?;
|
|
8
|
+
private _requestIp?;
|
|
9
|
+
constructor(context: Context, server?: Server<never>);
|
|
7
10
|
get req(): HonoRequest<any, unknown>;
|
|
8
11
|
get res(): Response;
|
|
9
12
|
get headers(): Record<string, string>;
|
|
@@ -15,16 +18,26 @@ export declare class HonoContextWrapper implements AsenaContext<HonoRequest<any,
|
|
|
15
18
|
getBody<T>(): Promise<T>;
|
|
16
19
|
getQuery(query: string): Promise<string>;
|
|
17
20
|
getQueryAll(query: string): Promise<string[]>;
|
|
21
|
+
getAllQueries(): Record<string, string | string[]>;
|
|
18
22
|
send(data: string | any, statusOrOptions?: SendOptions | number): Response;
|
|
19
23
|
getCookie(name: string, secret?: string | BufferSource): Promise<string | false>;
|
|
20
24
|
setCookie(name: string, value: string, options?: CookieExtra<CookieOptions>): Promise<void>;
|
|
21
25
|
deleteCookie(name: string, options?: CookieExtra<CookieOptions>): Promise<void>;
|
|
26
|
+
getRequestIp(): string | null;
|
|
27
|
+
setResponseHeader(key: string, value: string): void;
|
|
22
28
|
redirect(url: string): Response & import("hono").TypedResponse<undefined, 302, "redirect">;
|
|
23
|
-
getValue<
|
|
29
|
+
getValue<K extends keyof AsenaVariables>(key: K): AsenaVariables[K];
|
|
30
|
+
getValue<T = any>(key: string): T;
|
|
31
|
+
setValue<K extends keyof AsenaVariables>(key: K, value: AsenaVariables[K]): void;
|
|
24
32
|
setValue(key: string, value: any): void;
|
|
25
33
|
setWebSocketValue(value: any): void;
|
|
26
34
|
getWebSocketValue<T>(): T;
|
|
27
35
|
html(data: string, statusOrOptions?: SendOptions | number): Response;
|
|
36
|
+
stream(cb: (stream: AsenaStreamWriter) => Promise<void>, onError?: (error: Error, stream: AsenaStreamWriter) => Promise<void>): Response;
|
|
37
|
+
streamSSE(cb: (stream: AsenaSSEStreamWriter) => Promise<void>, onError?: (error: Error, stream: AsenaSSEStreamWriter) => Promise<void>): Response;
|
|
38
|
+
streamText(cb: (stream: AsenaStreamWriter) => Promise<void>, onError?: (error: Error, stream: AsenaStreamWriter) => Promise<void>): Response;
|
|
39
|
+
private wrapStreamingApi;
|
|
40
|
+
private wrapSSEStreamingApi;
|
|
28
41
|
get context(): Context;
|
|
29
42
|
set context(value: Context);
|
|
30
43
|
}
|