UNPKG

@energica-city/shared-amplify-utils

Version:

Shared utilities for AWS Amplify projects

41 lines 1.82 kB
/** * REST Middleware Module * * Comprehensive middleware components for AWS API Gateway REST APIs including * error handling, request logging, validation, middleware chain utilities, and * model initialization. * * @example * ```typescript * import { * createRestChain, * createRestErrorHandler, * createRestRequestLogger, * createRestRequestValidator, * createRestModelInitializer * } from '@your-org/shared-utilities/middleware/rest'; * * // Create middleware chain * const chain = createRestChain<MyModelTypes>(); * * // Add middleware * chain.use('errorHandler', createRestErrorHandler()); * chain.use('logger', createRestRequestLogger()); * chain.use('validator', createRestRequestValidator({ body: mySchema })); * chain.use('models', createRestModelInitializer(modelConfig)); * * // Export Lambda handler * export const handler = wrapRestHandler(chain, myHandler); * ``` * * @module RestMiddleware */ export { createRestErrorHandler } from './RestErrorHandler'; export { createRestRequestLogger } from './RestRequestLogger'; export { createRestRequestValidator, getValidatedBody, getValidatedQuery, getValidatedPath, getValidatedHeaders, } from './RestRequestValidator'; export { ValidationPatterns } from '../utils/validation'; export { createRestModelInitializer } from './RestModelInitializer'; export { createRestChain, wrapRestHandler } from './RestMiddlewareChain'; export { buildRestContext, extractEventInfo, setupStructuredLogging, getErrorMessage, getErrorStack, parseJsonBody, getRequestId, buildErrorContext, getModelsFromInput, createSuccessResponse, createErrorResponse, } from './utils'; export { RestErrors, RestErrorCodes, createRestErrorResponse, isRestError, isKnownRestErrorCode, throwRestError, } from './RestErrors'; //# sourceMappingURL=index.js.map