hono 4.3.8 → 4.3.9

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.
@@ -218,7 +218,11 @@ var albProcessor = new class ALBProcessor extends EventProcessor {
218
218
  return event.httpMethod;
219
219
  }
220
220
  getQueryString(event) {
221
- return Object.entries(event.queryStringParameters || {}).filter(([, value]) => value).map(([key, value]) => `${key}=${value}`).join("&");
221
+ if (event.queryStringParameters) {
222
+ return Object.entries(event.queryStringParameters || {}).filter(([, value]) => value).map(([key, value]) => `${key}=${value}`).join("&");
223
+ } else {
224
+ return Object.entries(event.multiValueQueryStringParameters || {}).filter(([, value]) => value).map(([key, value]) => `${key}=${value.join(`&${key}=`)}`).join("&");
225
+ }
222
226
  }
223
227
  getCookies(event, headers) {
224
228
  let cookie;
@@ -250,7 +250,11 @@ const albProcessor = new class ALBProcessor extends EventProcessor {
250
250
  return event.httpMethod;
251
251
  }
252
252
  getQueryString(event) {
253
- return Object.entries(event.queryStringParameters || {}).filter(([, value]) => value).map(([key, value]) => `${key}=${value}`).join("&");
253
+ if (event.queryStringParameters) {
254
+ return Object.entries(event.queryStringParameters || {}).filter(([, value]) => value).map(([key, value]) => `${key}=${value}`).join("&");
255
+ } else {
256
+ return Object.entries(event.multiValueQueryStringParameters || {}).filter(([, value]) => value).map(([key, value]) => `${key}=${value.join(`&${key}=`)}`).join("&");
257
+ }
254
258
  }
255
259
  getCookies(event, headers) {
256
260
  let cookie;
@@ -51,6 +51,9 @@ export interface ALBProxyEvent {
51
51
  body: string | null;
52
52
  isBase64Encoded: boolean;
53
53
  queryStringParameters?: Record<string, string | undefined>;
54
+ multiValueQueryStringParameters?: {
55
+ [parameterKey: string]: string[];
56
+ };
54
57
  requestContext: ALBRequestContext;
55
58
  }
56
59
  export interface APIGatewayProxyResult {
@@ -1,7 +1,7 @@
1
1
  import { Hono } from '../../hono';
2
2
  import type { Env, H, HandlerResponse, Input, MiddlewareHandler } from '../../types';
3
3
  type InitApp<E extends Env = Env> = (app: Hono<E>) => void;
4
- interface CreateHandlersInterface<E extends Env, P extends string> {
4
+ export interface CreateHandlersInterface<E extends Env, P extends string> {
5
5
  <I extends Input = {}, R extends HandlerResponse<any> = any>(handler1: H<E, P, I, R>): [
6
6
  H<E, P, I, R>
7
7
  ];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "hono",
3
- "version": "4.3.8",
3
+ "version": "4.3.9",
4
4
  "description": "Ultrafast web framework for the Edges",
5
5
  "main": "dist/cjs/index.js",
6
6
  "type": "module",