Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion docs/features/event-handler/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ description: Simplify routing and processing of events in AWS Lambda functions

Event handler for Amazon API Gateway REST and HTTP APIs, Application Loader Balancer (ALB), Lambda Function URLs, and VPC Lattice.

[:octicons-arrow-right-24: Read more](./rest.md)
[:octicons-arrow-right-24: Read more](./http.md)

- __AppSync Events API__

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { createReadStream } from 'node:fs';
import { Router } from '@aws-lambda-powertools/event-handler/experimental-rest';
import { Router } from '@aws-lambda-powertools/event-handler/http';
import type { Context } from 'aws-lambda';

const app = new Router();
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { readFile } from 'node:fs/promises';
import { Router } from '@aws-lambda-powertools/event-handler/experimental-rest';
import { Router } from '@aws-lambda-powertools/event-handler/http';
import type { Context } from 'aws-lambda';

const app = new Router();
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { Router } from '@aws-lambda-powertools/event-handler/experimental-rest';
import { Router } from '@aws-lambda-powertools/event-handler/http';
import type { Context } from 'aws-lambda';

const app = new Router();
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
declare function getTodoById<T>(todoId: unknown): Promise<{ id: string } & T>;

import { Router } from '@aws-lambda-powertools/event-handler/experimental-rest';
import { compress } from '@aws-lambda-powertools/event-handler/experimental-rest/middleware';
import { Router } from '@aws-lambda-powertools/event-handler/http';
import { compress } from '@aws-lambda-powertools/event-handler/http/middleware';
import type { Context } from 'aws-lambda';

const app = new Router();
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
declare function getTodoById<T>(todoId: unknown): Promise<{ id: string } & T>;

import { Router } from '@aws-lambda-powertools/event-handler/experimental-rest';
import { cors } from '@aws-lambda-powertools/event-handler/experimental-rest/middleware';
import { Router } from '@aws-lambda-powertools/event-handler/http';
import { cors } from '@aws-lambda-powertools/event-handler/http/middleware';
import type { Context } from 'aws-lambda';

const app = new Router();
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
declare function getTodoById<T>(todoId: unknown): Promise<{ id: string } & T>;

import { Router } from '@aws-lambda-powertools/event-handler/experimental-rest';
import { cors } from '@aws-lambda-powertools/event-handler/experimental-rest/middleware';
import { Router } from '@aws-lambda-powertools/event-handler/http';
import { cors } from '@aws-lambda-powertools/event-handler/http/middleware';
import type { Context } from 'aws-lambda';

const app = new Router();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ declare function createTodo(
title: string
): Promise<{ id: string; title: string }>;

import { Router } from '@aws-lambda-powertools/event-handler/experimental-rest';
import { Router } from '@aws-lambda-powertools/event-handler/http';
import { Logger } from '@aws-lambda-powertools/logger';
import type { Context } from 'aws-lambda';

Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
declare const getAllTodos: () => Promise<Record<string, string>[]>;
declare const putTodo: (body: unknown) => Promise<Record<string, string>>;

import { Router } from '@aws-lambda-powertools/event-handler/experimental-rest';
import { Router } from '@aws-lambda-powertools/event-handler/http';
import type { Context } from 'aws-lambda';
import { apiMiddleware } from './advanced_mw_compose_middleware_shared.js';

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import { composeMiddleware } from '@aws-lambda-powertools/event-handler/experimental-rest';
import { cors } from '@aws-lambda-powertools/event-handler/experimental-rest/middleware';
import { composeMiddleware } from '@aws-lambda-powertools/event-handler/http';
import { cors } from '@aws-lambda-powertools/event-handler/http/middleware';
import type { Middleware } from '@aws-lambda-powertools/event-handler/types';
import { Logger } from '@aws-lambda-powertools/logger';

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ import { getStringFromEnv } from '@aws-lambda-powertools/commons/utils/env';
import {
Router,
UnauthorizedError,
} from '@aws-lambda-powertools/event-handler/experimental-rest';
} from '@aws-lambda-powertools/event-handler/http';
import type { Middleware } from '@aws-lambda-powertools/event-handler/types';
import { Logger } from '@aws-lambda-powertools/logger';
import type { Context } from 'aws-lambda';
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { Router } from '@aws-lambda-powertools/event-handler/experimental-rest';
import { Router } from '@aws-lambda-powertools/event-handler/http';
import type { Middleware } from '@aws-lambda-powertools/event-handler/types';
import type { Context } from 'aws-lambda';

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
declare function getAllTodos(): Promise<{ id: string; title: string }[]>;

import { Router } from '@aws-lambda-powertools/event-handler/experimental-rest';
import { Router } from '@aws-lambda-powertools/event-handler/http';
import type { Middleware } from '@aws-lambda-powertools/event-handler/types';
import { Logger } from '@aws-lambda-powertools/logger';
import type { Context } from 'aws-lambda';
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
declare function getAllTodos(): Promise<{ id: string; title: string }[]>;
declare function putTodo<T>(todo: unknown): Promise<{ id: string } & T>;

import { Router } from '@aws-lambda-powertools/event-handler/experimental-rest';
import { Router } from '@aws-lambda-powertools/event-handler/http';
import type { Middleware } from '@aws-lambda-powertools/event-handler/types';
import { Logger } from '@aws-lambda-powertools/logger';
import type { Context } from 'aws-lambda';
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,7 @@
declare function createVideoStream(): Readable;

import type { Readable } from 'node:stream';
import {
Router,
streamify,
} from '@aws-lambda-powertools/event-handler/experimental-rest';
import { Router, streamify } from '@aws-lambda-powertools/event-handler/http';

const app = new Router();

Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import {
HttpStatusCodes,
Router,
} from '@aws-lambda-powertools/event-handler/experimental-rest';
} from '@aws-lambda-powertools/event-handler/http';
import { Logger } from '@aws-lambda-powertools/logger';
import type { Context } from 'aws-lambda/handler';

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
declare function getTodoById<T>(todoId: unknown): Promise<{ id: string } & T>;

import { Router } from '@aws-lambda-powertools/event-handler/experimental-rest';
import { Router } from '@aws-lambda-powertools/event-handler/http';
import { Logger } from '@aws-lambda-powertools/logger';
import {
correlationPaths,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { Router } from '@aws-lambda-powertools/event-handler/experimental-rest';
import { Router } from '@aws-lambda-powertools/event-handler/http';
import type { APIGatewayProxyEvent, Context } from 'aws-lambda';

const app = new Router();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ declare class GetTodoError extends Error {}
import {
HttpStatusCodes,
Router,
} from '@aws-lambda-powertools/event-handler/experimental-rest';
} from '@aws-lambda-powertools/event-handler/http';
import { Logger } from '@aws-lambda-powertools/logger';
import type { Context } from 'aws-lambda/handler';

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
declare function putTodo<T>(todo: unknown): Promise<{ id: string } & T>;

import { Router } from '@aws-lambda-powertools/event-handler/experimental-rest';
import { Router } from '@aws-lambda-powertools/event-handler/http';
import { Logger } from '@aws-lambda-powertools/logger';
import {
correlationPaths,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
declare function putTodo<T>(todo: unknown): Promise<{ id: string } & T>;

import { Router } from '@aws-lambda-powertools/event-handler/experimental-rest';
import { Router } from '@aws-lambda-powertools/event-handler/http';
import { Logger } from '@aws-lambda-powertools/logger';
import {
correlationPaths,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
declare function getUserTodos(auth: string | null): Promise<{ id: string }>;

import { Router } from '@aws-lambda-powertools/event-handler/experimental-rest';
import { Router } from '@aws-lambda-powertools/event-handler/http';
import type { Context } from 'aws-lambda';

const app = new Router({ prefix: '/todos' });
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { Router } from '@aws-lambda-powertools/event-handler/experimental-rest';
import { Router } from '@aws-lambda-powertools/event-handler/http';
import type { Context } from 'aws-lambda';

const app = new Router();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ declare function isAuthenticated(token: string): boolean;
import {
Router,
UnauthorizedError,
} from '@aws-lambda-powertools/event-handler/experimental-rest';
} from '@aws-lambda-powertools/event-handler/http';
import type { Context } from 'aws-lambda';

const app = new Router();
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { Router } from '@aws-lambda-powertools/event-handler/experimental-rest';
import { Router } from '@aws-lambda-powertools/event-handler/http';

const router = new Router();
router.get('/todos', () => 'Get all todos');
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { Router } from '@aws-lambda-powertools/event-handler/experimental-rest';
import { Router } from '@aws-lambda-powertools/event-handler/http';
import type { APIGatewayProxyEvent, Context } from 'aws-lambda';
import { router } from './split_route';

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { Router } from '@aws-lambda-powertools/event-handler/experimental-rest';
import { Router } from '@aws-lambda-powertools/event-handler/http';

const router = new Router();
router.get('/', () => 'Get all todos');
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { Router } from '@aws-lambda-powertools/event-handler/experimental-rest';
import { Router } from '@aws-lambda-powertools/event-handler/http';
import type { APIGatewayProxyEvent, Context } from 'aws-lambda';
import { router } from './split_route';

Expand Down
4 changes: 2 additions & 2 deletions mkdocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ nav:
- features/metrics.md
- Event Handler:
- features/event-handler/index.md
- features/event-handler/rest.md
- features/event-handler/http.md
- features/event-handler/appsync-events.md
- features/event-handler/appsync-graphql.md
- features/event-handler/bedrock-agents.md
Expand Down Expand Up @@ -182,7 +182,7 @@ plugins:
- features/tracer.md
- features/logger.md
- features/metrics.md
- features/event-handler/rest.md
- features/event-handler/http.md
- features/event-handler/appsync-events.md
- features/event-handler/appsync-graphql.md
- features/event-handler/bedrock-agents.md
Expand Down
26 changes: 13 additions & 13 deletions packages/event-handler/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -70,24 +70,24 @@
"default": "./lib/esm/types/index.js"
}
},
"./experimental-rest": {
"./http": {
"require": {
"types": "./lib/cjs/rest/index.d.ts",
"default": "./lib/cjs/rest/index.js"
"types": "./lib/cjs/http/index.d.ts",
"default": "./lib/cjs/http/index.js"
},
"import": {
"types": "./lib/esm/rest/index.d.ts",
"default": "./lib/esm/rest/index.js"
"types": "./lib/esm/http/index.d.ts",
"default": "./lib/esm/http/index.js"
}
},
"./experimental-rest/middleware": {
"./http/middleware": {
"require": {
"types": "./lib/cjs/rest/middleware/index.d.ts",
"default": "./lib/cjs/rest/middleware/index.js"
"types": "./lib/cjs/http/middleware/index.d.ts",
"default": "./lib/cjs/http/middleware/index.js"
},
"import": {
"types": "./lib/esm/rest/middleware/index.d.ts",
"default": "./lib/esm/rest/middleware/index.js"
"types": "./lib/esm/http/middleware/index.d.ts",
"default": "./lib/esm/http/middleware/index.js"
}
}
},
Expand All @@ -109,9 +109,9 @@
"./lib/cjs/types/index.d.ts",
"./lib/esm/types/index.d.ts"
],
"experimental-rest": [
"./lib/cjs/rest/index.d.ts",
"./lib/esm/rest/index.d.ts"
"http": [
"./lib/cjs/http/index.d.ts",
"./lib/esm/http/index.d.ts"
]
}
},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import type {
ErrorConstructor,
ErrorHandler,
ErrorHandlerRegistryOptions,
} from '../types/rest.js';
} from '../types/http.js';

export class ErrorHandlerRegistry {
readonly #handlers: Map<ErrorConstructor, ErrorHandler> = new Map();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import type {
Middleware,
Path,
RouteHandler,
} from '../types/rest.js';
} from '../types/http.js';

class Route {
readonly id: string;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,11 @@ import { isRegExp } from '@aws-lambda-powertools/commons/typeutils';
import type {
DynamicRoute,
HttpMethod,
HttpRouteHandlerOptions,
Path,
RestRouteHandlerOptions,
RouteRegistryOptions,
ValidationResult,
} from '../types/rest.js';
} from '../types/http.js';
import { ParameterValidationError } from './errors.js';
import { Route } from './Route.js';
import {
Expand Down Expand Up @@ -169,7 +169,7 @@ class RouteHandlerRegistry {
public resolve(
method: HttpMethod,
path: Path
): RestRouteHandlerOptions | null {
): HttpRouteHandlerOptions | null {
if (this.#shouldSort) {
this.#dynamicRoutes.sort(this.#compareRouteSpecificity);
this.#shouldSort = false;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,22 +19,22 @@ import type {
APIGatewayProxyStructuredResultV2,
Context,
} from 'aws-lambda';
import type { HandlerResponse, ResolveOptions } from '../types/index.js';
import type {
ErrorConstructor,
ErrorHandler,
ErrorResolveOptions,
HttpMethod,
HttpRouteOptions,
HttpRouterOptions,
Middleware,
Path,
RequestContext,
ResolveStreamOptions,
ResponseStream,
RestRouteOptions,
RestRouterOptions,
RouteHandler,
RouterResponse,
} from '../types/rest.js';
} from '../types/http.js';
import type { HandlerResponse, ResolveOptions } from '../types/index.js';
import { HttpStatusCodes, HttpVerbs } from './constants.js';
import {
handlerResultToWebResponse,
Expand Down Expand Up @@ -89,7 +89,7 @@ class Router {
*/
protected readonly prefix?: Path;

public constructor(options?: RestRouterOptions) {
public constructor(options?: HttpRouterOptions) {
this.context = {};
const alcLogLevel = getStringFromEnv({
key: 'AWS_LAMBDA_LOG_LEVEL',
Expand Down Expand Up @@ -428,7 +428,7 @@ class Router {
}
}

public route(handler: RouteHandler, options: RestRouteOptions): void {
public route(handler: RouteHandler, options: HttpRouteOptions): void {
const { method, path, middleware = [] } = options;
const methods = Array.isArray(method) ? method : [method];
const resolvedPath = resolvePrefixedPath(path, this.prefix);
Expand Down Expand Up @@ -732,7 +732,7 @@ class Router {
*
* @example
* ```typescript
* import { Router } from '@aws-lambda-powertools/event-handler/experimental-rest';
* import { Router } from '@aws-lambda-powertools/event-handler/http';
*
* const todosRouter = new Router();
*
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,7 @@ const PARAM_PATTERN = /:([a-zA-Z_]\w*)(?=\/|$)/g;

const SAFE_CHARS = "-._~()'!*:@,;=+&$";

const UNSAFE_CHARS = '%<> \\[\\]{}|^';
const UNSAFE_CHARS = String.raw`%<> \[\]{}|^`;

/**
* Default CORS configuration
Expand Down
Loading