@h4ad/serverless-adapter 2.17.0 → 3.0.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 +7 -0
- package/lib/@types/binary-settings.js +2 -11
- package/lib/@types/binary-settings.js.map +1 -1
- package/lib/@types/digital-ocean/digital-ocean-http-event.js +2 -7
- package/lib/@types/digital-ocean/digital-ocean-http-event.js.map +1 -1
- package/lib/@types/digital-ocean/digital-ocean-http-response.js +2 -7
- package/lib/@types/digital-ocean/digital-ocean-http-response.js.map +1 -1
- package/lib/@types/digital-ocean/index.js +2 -18
- package/lib/@types/digital-ocean/index.js.map +1 -1
- package/lib/@types/headers.js +2 -11
- package/lib/@types/headers.js.map +1 -1
- package/lib/@types/helpers.js +2 -6
- package/lib/@types/helpers.js.map +1 -1
- package/lib/@types/huawei/huawei-api-gateway-event.js +2 -14
- package/lib/@types/huawei/huawei-api-gateway-event.js.map +1 -1
- package/lib/@types/huawei/huawei-api-gateway-response.js +2 -7
- package/lib/@types/huawei/huawei-api-gateway-response.js.map +1 -1
- package/lib/@types/huawei/huawei-context.js +2 -36
- package/lib/@types/huawei/huawei-context.js.map +1 -1
- package/lib/@types/huawei/index.js +2 -20
- package/lib/@types/huawei/index.js.map +1 -1
- package/lib/@types/index.js +2 -20
- package/lib/@types/index.js.map +1 -1
- package/lib/adapters/apollo-server/apollo-server-mutation.adapter.js +2 -86
- package/lib/adapters/apollo-server/apollo-server-mutation.adapter.js.map +1 -1
- package/lib/adapters/apollo-server/index.js +2 -18
- package/lib/adapters/apollo-server/index.js.map +1 -1
- package/lib/adapters/aws/alb.adapter.js +2 -129
- package/lib/adapters/aws/alb.adapter.js.map +1 -1
- package/lib/adapters/aws/api-gateway-v1.adapter.js +2 -140
- package/lib/adapters/aws/api-gateway-v1.adapter.js.map +1 -1
- package/lib/adapters/aws/api-gateway-v2.adapter.js +2 -134
- package/lib/adapters/aws/api-gateway-v2.adapter.js.map +1 -1
- package/lib/adapters/aws/base/aws-simple-adapter.js +2 -99
- package/lib/adapters/aws/base/aws-simple-adapter.js.map +1 -1
- package/lib/adapters/aws/base/index.js +2 -18
- package/lib/adapters/aws/base/index.js.map +1 -1
- package/lib/adapters/aws/dynamodb.adapter.js +2 -64
- package/lib/adapters/aws/dynamodb.adapter.js.map +1 -1
- package/lib/adapters/aws/event-bridge.adapter.js +2 -75
- package/lib/adapters/aws/event-bridge.adapter.js.map +1 -1
- package/lib/adapters/aws/index.js +2 -27
- package/lib/adapters/aws/index.js.map +1 -1
- package/lib/adapters/aws/lambda-edge.adapter.js +2 -284
- package/lib/adapters/aws/lambda-edge.adapter.js.map +1 -1
- package/lib/adapters/aws/s3.adapter.js +2 -63
- package/lib/adapters/aws/s3.adapter.js.map +1 -1
- package/lib/adapters/aws/sns.adapter.js +2 -63
- package/lib/adapters/aws/sns.adapter.js.map +1 -1
- package/lib/adapters/aws/sqs.adapter.js +2 -64
- package/lib/adapters/aws/sqs.adapter.js.map +1 -1
- package/lib/adapters/azure/http-trigger-v4.adapter.js +2 -202
- package/lib/adapters/azure/http-trigger-v4.adapter.js.map +1 -1
- package/lib/adapters/azure/index.js +2 -18
- package/lib/adapters/azure/index.js.map +1 -1
- package/lib/adapters/digital-ocean/http-function.adapter.js +2 -118
- package/lib/adapters/digital-ocean/http-function.adapter.js.map +1 -1
- package/lib/adapters/digital-ocean/index.js +2 -18
- package/lib/adapters/digital-ocean/index.js.map +1 -1
- package/lib/adapters/dummy/dummy.adapter.js +2 -54
- package/lib/adapters/dummy/dummy.adapter.js.map +1 -1
- package/lib/adapters/dummy/index.js +2 -18
- package/lib/adapters/dummy/index.js.map +1 -1
- package/lib/adapters/huawei/huawei-api-gateway.adapter.js +2 -126
- package/lib/adapters/huawei/huawei-api-gateway.adapter.js.map +1 -1
- package/lib/adapters/huawei/index.js +2 -18
- package/lib/adapters/huawei/index.js.map +1 -1
- package/lib/contracts/adapter.contract.js +2 -18
- package/lib/contracts/adapter.contract.js.map +1 -1
- package/lib/contracts/framework.contract.js +2 -7
- package/lib/contracts/framework.contract.js.map +1 -1
- package/lib/contracts/handler.contract.js +2 -13
- package/lib/contracts/handler.contract.js.map +1 -1
- package/lib/contracts/index.js +2 -21
- package/lib/contracts/index.js.map +1 -1
- package/lib/contracts/resolver.contract.js +2 -15
- package/lib/contracts/resolver.contract.js.map +1 -1
- package/lib/core/base-handler.js +2 -67
- package/lib/core/base-handler.js.map +1 -1
- package/lib/core/constants.js +2 -33
- package/lib/core/constants.js.map +1 -1
- package/lib/core/current-invoke.js +2 -46
- package/lib/core/current-invoke.js.map +1 -1
- package/lib/core/event-body.js +2 -31
- package/lib/core/event-body.js.map +1 -1
- package/lib/core/headers.js +3 -97
- package/lib/core/headers.js.map +1 -1
- package/lib/core/index.js +2 -28
- package/lib/core/index.js.map +1 -1
- package/lib/core/is-binary.js +2 -118
- package/lib/core/is-binary.js.map +1 -1
- package/lib/core/logger.js +2 -115
- package/lib/core/logger.js.map +1 -1
- package/lib/core/no-op.js +2 -12
- package/lib/core/no-op.js.map +1 -1
- package/lib/core/optional.js +2 -31
- package/lib/core/optional.js.map +1 -1
- package/lib/core/path.js +2 -68
- package/lib/core/path.js.map +1 -1
- package/lib/core/stream.js +2 -63
- package/lib/core/stream.js.map +1 -1
- package/lib/frameworks/apollo-server/apollo-server.framework.js +2 -87
- package/lib/frameworks/apollo-server/apollo-server.framework.js.map +1 -1
- package/lib/frameworks/apollo-server/index.js +2 -18
- package/lib/frameworks/apollo-server/index.js.map +1 -1
- package/lib/frameworks/body-parser/base-body-parser.framework.js +2 -66
- package/lib/frameworks/body-parser/base-body-parser.framework.js.map +1 -1
- package/lib/frameworks/body-parser/index.js +2 -22
- package/lib/frameworks/body-parser/index.js.map +1 -1
- package/lib/frameworks/body-parser/json-body-parser.framework.js +2 -29
- package/lib/frameworks/body-parser/json-body-parser.framework.js.map +1 -1
- package/lib/frameworks/body-parser/raw-body-parser.framework.js +2 -29
- package/lib/frameworks/body-parser/raw-body-parser.framework.js.map +1 -1
- package/lib/frameworks/body-parser/text-body-parser.framework.js +2 -29
- package/lib/frameworks/body-parser/text-body-parser.framework.js.map +1 -1
- package/lib/frameworks/body-parser/urlencoded-body-parser.framework.js +2 -29
- package/lib/frameworks/body-parser/urlencoded-body-parser.framework.js.map +1 -1
- package/lib/frameworks/cors/cors.framework.js +3 -145
- package/lib/frameworks/cors/cors.framework.js.map +1 -1
- package/lib/frameworks/cors/index.js +2 -18
- package/lib/frameworks/cors/index.js.map +1 -1
- package/lib/frameworks/deepkit/http-deepkit.framework.js +2 -33
- package/lib/frameworks/deepkit/http-deepkit.framework.js.map +1 -1
- package/lib/frameworks/deepkit/index.js +2 -18
- package/lib/frameworks/deepkit/index.js.map +1 -1
- package/lib/frameworks/express/express.framework.js +2 -22
- package/lib/frameworks/express/express.framework.js.map +1 -1
- package/lib/frameworks/express/index.js +2 -18
- package/lib/frameworks/express/index.js.map +1 -1
- package/lib/frameworks/fastify/fastify.framework.js +2 -23
- package/lib/frameworks/fastify/fastify.framework.js.map +1 -1
- package/lib/frameworks/fastify/helpers/no-op-content-parser.js +2 -27
- package/lib/frameworks/fastify/helpers/no-op-content-parser.js.map +1 -1
- package/lib/frameworks/fastify/index.js +2 -18
- package/lib/frameworks/fastify/index.js.map +1 -1
- package/lib/frameworks/hapi/hapi.framework.js +2 -23
- package/lib/frameworks/hapi/hapi.framework.js.map +1 -1
- package/lib/frameworks/hapi/index.js +2 -18
- package/lib/frameworks/hapi/index.js.map +1 -1
- package/lib/frameworks/koa/index.js +2 -18
- package/lib/frameworks/koa/index.js.map +1 -1
- package/lib/frameworks/koa/koa.framework.js +2 -22
- package/lib/frameworks/koa/koa.framework.js.map +1 -1
- package/lib/frameworks/lazy/index.js +2 -18
- package/lib/frameworks/lazy/index.js.map +1 -1
- package/lib/frameworks/lazy/lazy.framework.js +2 -82
- package/lib/frameworks/lazy/lazy.framework.js.map +1 -1
- package/lib/frameworks/trpc/index.js +2 -18
- package/lib/frameworks/trpc/index.js.map +1 -1
- package/lib/frameworks/trpc/trpc.framework.js +2 -153
- package/lib/frameworks/trpc/trpc.framework.js.map +1 -1
- package/lib/handlers/aws/aws-stream.handler.js +2 -169
- package/lib/handlers/aws/aws-stream.handler.js.map +1 -1
- package/lib/handlers/aws/index.js +2 -18
- package/lib/handlers/aws/index.js.map +1 -1
- package/lib/handlers/azure/azure.handler.js +2 -74
- package/lib/handlers/azure/azure.handler.js.map +1 -1
- package/lib/handlers/azure/index.js +2 -18
- package/lib/handlers/azure/index.js.map +1 -1
- package/lib/handlers/base/index.js +2 -18
- package/lib/handlers/base/index.js.map +1 -1
- package/lib/handlers/base/raw-request.js +2 -65
- package/lib/handlers/base/raw-request.js.map +1 -1
- package/lib/handlers/default/default.handler.js +2 -191
- package/lib/handlers/default/default.handler.js.map +1 -1
- package/lib/handlers/default/index.js +2 -18
- package/lib/handlers/default/index.js.map +1 -1
- package/lib/handlers/digital-ocean/digital-ocean.handler.js +2 -34
- package/lib/handlers/digital-ocean/digital-ocean.handler.js.map +1 -1
- package/lib/handlers/digital-ocean/index.js +2 -18
- package/lib/handlers/digital-ocean/index.js.map +1 -1
- package/lib/handlers/firebase/http-firebase-v2.handler.js +2 -50
- package/lib/handlers/firebase/http-firebase-v2.handler.js.map +1 -1
- package/lib/handlers/firebase/http-firebase.handler.js +2 -27
- package/lib/handlers/firebase/http-firebase.handler.js.map +1 -1
- package/lib/handlers/firebase/index.js +2 -19
- package/lib/handlers/firebase/index.js.map +1 -1
- package/lib/handlers/gcp/gcp.handler.js +2 -40
- package/lib/handlers/gcp/gcp.handler.js.map +1 -1
- package/lib/handlers/gcp/index.js +2 -18
- package/lib/handlers/gcp/index.js.map +1 -1
- package/lib/handlers/huawei/http-huawei.handler.js +2 -106
- package/lib/handlers/huawei/http-huawei.handler.js.map +1 -1
- package/lib/handlers/huawei/index.js +2 -18
- package/lib/handlers/huawei/index.js.map +1 -1
- package/lib/index.doc.js +2 -0
- package/lib/index.doc.js.map +1 -0
- package/lib/index.js +2 -22
- package/lib/index.js.map +1 -1
- package/lib/network/index.js +2 -21
- package/lib/network/index.js.map +1 -1
- package/lib/network/request.js +2 -46
- package/lib/network/request.js.map +1 -1
- package/lib/network/response-stream.js +7 -88
- package/lib/network/response-stream.js.map +1 -1
- package/lib/network/response.js +4 -127
- package/lib/network/response.js.map +1 -1
- package/lib/network/utils.js +2 -21
- package/lib/network/utils.js.map +1 -1
- package/lib/resolvers/aws-context/aws-context.resolver.js +2 -59
- package/lib/resolvers/aws-context/aws-context.resolver.js.map +1 -1
- package/lib/resolvers/aws-context/index.js +2 -18
- package/lib/resolvers/aws-context/index.js.map +1 -1
- package/lib/resolvers/callback/callback.resolver.js +2 -53
- package/lib/resolvers/callback/callback.resolver.js.map +1 -1
- package/lib/resolvers/callback/index.js +2 -18
- package/lib/resolvers/callback/index.js.map +1 -1
- package/lib/resolvers/dummy/dummy.resolver.js +2 -24
- package/lib/resolvers/dummy/dummy.resolver.js.map +1 -1
- package/lib/resolvers/dummy/index.js +2 -18
- package/lib/resolvers/dummy/index.js.map +1 -1
- package/lib/resolvers/promise/index.js +2 -18
- package/lib/resolvers/promise/index.js.map +1 -1
- package/lib/resolvers/promise/promise.resolver.js +2 -48
- package/lib/resolvers/promise/promise.resolver.js.map +1 -1
- package/lib/serverless-adapter.js +2 -176
- package/lib/serverless-adapter.js.map +1 -1
- package/package.json +61 -79
- package/lib/@types/binary-settings.d.ts +0 -43
- package/lib/@types/digital-ocean/digital-ocean-http-event.d.ts +0 -37
- package/lib/@types/digital-ocean/digital-ocean-http-response.d.ts +0 -22
- package/lib/@types/digital-ocean/index.d.ts +0 -1
- package/lib/@types/headers.d.ts +0 -39
- package/lib/@types/helpers.d.ts +0 -10
- package/lib/@types/huawei/huawei-api-gateway-event.d.ts +0 -84
- package/lib/@types/huawei/huawei-api-gateway-response.d.ts +0 -27
- package/lib/@types/huawei/huawei-context.d.ts +0 -203
- package/lib/@types/huawei/index.d.ts +0 -3
- package/lib/@types/index.d.ts +0 -3
- package/lib/adapters/apollo-server/apollo-server-mutation.adapter.d.ts +0 -56
- package/lib/adapters/apollo-server/index.d.ts +0 -1
- package/lib/adapters/aws/alb.adapter.d.ts +0 -66
- package/lib/adapters/aws/api-gateway-v1.adapter.d.ts +0 -71
- package/lib/adapters/aws/api-gateway-v2.adapter.d.ts +0 -70
- package/lib/adapters/aws/base/aws-simple-adapter.d.ts +0 -85
- package/lib/adapters/aws/base/index.d.ts +0 -1
- package/lib/adapters/aws/dynamodb.adapter.d.ts +0 -56
- package/lib/adapters/aws/event-bridge.adapter.d.ts +0 -64
- package/lib/adapters/aws/index.d.ts +0 -10
- package/lib/adapters/aws/lambda-edge.adapter.d.ts +0 -213
- package/lib/adapters/aws/s3.adapter.d.ts +0 -56
- package/lib/adapters/aws/sns.adapter.d.ts +0 -56
- package/lib/adapters/aws/sqs.adapter.d.ts +0 -56
- package/lib/adapters/azure/http-trigger-v4.adapter.d.ts +0 -81
- package/lib/adapters/azure/index.d.ts +0 -1
- package/lib/adapters/digital-ocean/http-function.adapter.d.ts +0 -65
- package/lib/adapters/digital-ocean/index.d.ts +0 -1
- package/lib/adapters/dummy/dummy.adapter.d.ts +0 -30
- package/lib/adapters/dummy/index.d.ts +0 -1
- package/lib/adapters/huawei/huawei-api-gateway.adapter.d.ts +0 -66
- package/lib/adapters/huawei/index.d.ts +0 -1
- package/lib/contracts/adapter.contract.d.ts +0 -155
- package/lib/contracts/framework.contract.d.ts +0 -19
- package/lib/contracts/handler.contract.d.ts +0 -26
- package/lib/contracts/index.d.ts +0 -4
- package/lib/contracts/resolver.contract.d.ts +0 -86
- package/lib/core/base-handler.d.ts +0 -31
- package/lib/core/constants.d.ts +0 -31
- package/lib/core/current-invoke.d.ts +0 -48
- package/lib/core/event-body.d.ts +0 -21
- package/lib/core/headers.d.ts +0 -47
- package/lib/core/index.d.ts +0 -11
- package/lib/core/is-binary.d.ts +0 -72
- package/lib/core/logger.d.ts +0 -67
- package/lib/core/no-op.d.ts +0 -7
- package/lib/core/optional.d.ts +0 -21
- package/lib/core/path.d.ts +0 -36
- package/lib/core/stream.d.ts +0 -20
- package/lib/frameworks/apollo-server/apollo-server.framework.d.ts +0 -71
- package/lib/frameworks/apollo-server/index.d.ts +0 -1
- package/lib/frameworks/body-parser/base-body-parser.framework.d.ts +0 -69
- package/lib/frameworks/body-parser/index.d.ts +0 -5
- package/lib/frameworks/body-parser/json-body-parser.framework.d.ts +0 -26
- package/lib/frameworks/body-parser/raw-body-parser.framework.d.ts +0 -26
- package/lib/frameworks/body-parser/text-body-parser.framework.d.ts +0 -26
- package/lib/frameworks/body-parser/urlencoded-body-parser.framework.d.ts +0 -26
- package/lib/frameworks/cors/cors.framework.d.ts +0 -78
- package/lib/frameworks/cors/index.d.ts +0 -1
- package/lib/frameworks/deepkit/http-deepkit.framework.d.ts +0 -17
- package/lib/frameworks/deepkit/index.d.ts +0 -1
- package/lib/frameworks/express/express.framework.d.ts +0 -16
- package/lib/frameworks/express/index.d.ts +0 -1
- package/lib/frameworks/fastify/fastify.framework.d.ts +0 -16
- package/lib/frameworks/fastify/helpers/no-op-content-parser.d.ts +0 -13
- package/lib/frameworks/fastify/index.d.ts +0 -1
- package/lib/frameworks/hapi/hapi.framework.d.ts +0 -16
- package/lib/frameworks/hapi/index.d.ts +0 -1
- package/lib/frameworks/koa/index.d.ts +0 -1
- package/lib/frameworks/koa/koa.framework.d.ts +0 -16
- package/lib/frameworks/lazy/index.d.ts +0 -1
- package/lib/frameworks/lazy/lazy.framework.d.ts +0 -55
- package/lib/frameworks/trpc/index.d.ts +0 -1
- package/lib/frameworks/trpc/trpc.framework.d.ts +0 -155
- package/lib/handlers/aws/aws-stream.handler.d.ts +0 -83
- package/lib/handlers/aws/index.d.ts +0 -1
- package/lib/handlers/azure/azure.handler.d.ts +0 -45
- package/lib/handlers/azure/index.d.ts +0 -1
- package/lib/handlers/base/index.d.ts +0 -1
- package/lib/handlers/base/raw-request.d.ts +0 -30
- package/lib/handlers/default/default.handler.d.ts +0 -87
- package/lib/handlers/default/index.d.ts +0 -1
- package/lib/handlers/digital-ocean/digital-ocean.handler.d.ts +0 -16
- package/lib/handlers/digital-ocean/index.d.ts +0 -1
- package/lib/handlers/firebase/http-firebase-v2.handler.d.ts +0 -26
- package/lib/handlers/firebase/http-firebase.handler.d.ts +0 -18
- package/lib/handlers/firebase/index.d.ts +0 -2
- package/lib/handlers/gcp/gcp.handler.d.ts +0 -25
- package/lib/handlers/gcp/index.d.ts +0 -1
- package/lib/handlers/huawei/http-huawei.handler.d.ts +0 -59
- package/lib/handlers/huawei/index.d.ts +0 -1
- package/lib/index.d.ts +0 -5
- package/lib/network/index.d.ts +0 -4
- package/lib/network/request.d.ts +0 -44
- package/lib/network/response-stream.d.ts +0 -41
- package/lib/network/response.d.ts +0 -48
- package/lib/network/utils.d.ts +0 -7
- package/lib/resolvers/aws-context/aws-context.resolver.d.ts +0 -18
- package/lib/resolvers/aws-context/index.d.ts +0 -1
- package/lib/resolvers/callback/callback.resolver.d.ts +0 -23
- package/lib/resolvers/callback/index.d.ts +0 -1
- package/lib/resolvers/dummy/dummy.resolver.d.ts +0 -13
- package/lib/resolvers/dummy/index.d.ts +0 -1
- package/lib/resolvers/promise/index.d.ts +0 -1
- package/lib/resolvers/promise/promise.resolver.d.ts +0 -13
- package/lib/serverless-adapter.d.ts +0 -118
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import { AdapterContract, AdapterRequest, OnErrorProps } from '../../contracts';
|
|
2
|
-
import { IEmptyResponse } from '../../core';
|
|
3
|
-
/**
|
|
4
|
-
* The class that represents a dummy adapter that does nothing and can be used by the cloud that doesn't use adapters.
|
|
5
|
-
*
|
|
6
|
-
* @breadcrumb Adapters / DummyAdapter
|
|
7
|
-
* @public
|
|
8
|
-
*/
|
|
9
|
-
export declare class DummyAdapter implements AdapterContract<any, any, void> {
|
|
10
|
-
/**
|
|
11
|
-
* {@inheritDoc}
|
|
12
|
-
*/
|
|
13
|
-
canHandle(): boolean;
|
|
14
|
-
/**
|
|
15
|
-
* {@inheritDoc}
|
|
16
|
-
*/
|
|
17
|
-
getAdapterName(): string;
|
|
18
|
-
/**
|
|
19
|
-
* {@inheritDoc}
|
|
20
|
-
*/
|
|
21
|
-
getRequest(): AdapterRequest;
|
|
22
|
-
/**
|
|
23
|
-
* {@inheritDoc}
|
|
24
|
-
*/
|
|
25
|
-
getResponse(): IEmptyResponse;
|
|
26
|
-
/**
|
|
27
|
-
* {@inheritDoc}
|
|
28
|
-
*/
|
|
29
|
-
onErrorWhileForwarding(props: OnErrorProps<any, void>): void;
|
|
30
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './dummy.adapter';
|
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
import { HuaweiApiGatewayEvent, HuaweiApiGatewayResponse, HuaweiContext } from '../../@types/huawei';
|
|
2
|
-
import { AdapterContract, AdapterRequest, GetResponseAdapterProps, OnErrorProps } from '../../contracts';
|
|
3
|
-
/**
|
|
4
|
-
* The options to customize the {@link HuaweiApiGatewayAdapter}
|
|
5
|
-
*
|
|
6
|
-
* @breadcrumb Adapters / Huawei / HuaweiApiGatewayAdapter
|
|
7
|
-
* @public
|
|
8
|
-
*/
|
|
9
|
-
export interface HuaweiApiGatewayOptions {
|
|
10
|
-
/**
|
|
11
|
-
* Strip base path for custom domains
|
|
12
|
-
*
|
|
13
|
-
* @defaultValue ''
|
|
14
|
-
*/
|
|
15
|
-
stripBasePath?: string;
|
|
16
|
-
}
|
|
17
|
-
/**
|
|
18
|
-
* The adapter to handle requests from Huawei Api Gateway
|
|
19
|
-
*
|
|
20
|
-
* @example
|
|
21
|
-
* ```typescript
|
|
22
|
-
* const stripBasePath = '/any/custom/base/path'; // default ''
|
|
23
|
-
* const adapter = new ApiGatewayAdapter({ stripBasePath });
|
|
24
|
-
* ```
|
|
25
|
-
*
|
|
26
|
-
* @breadcrumb Adapters / Huawei / HuaweiApiGatewayAdapter
|
|
27
|
-
* @public
|
|
28
|
-
*
|
|
29
|
-
* {@link https://support.huaweicloud.com/intl/en-us/devg-functiongraph/functiongraph_02_0102.html#functiongraph_02_0102__li5178638110137 | Event Reference}
|
|
30
|
-
*/
|
|
31
|
-
export declare class HuaweiApiGatewayAdapter implements AdapterContract<HuaweiApiGatewayEvent, HuaweiContext, HuaweiApiGatewayResponse> {
|
|
32
|
-
protected readonly options?: HuaweiApiGatewayOptions | undefined;
|
|
33
|
-
/**
|
|
34
|
-
* Default constructor
|
|
35
|
-
*
|
|
36
|
-
* @param options - The options to customize the {@link HuaweiApiGatewayAdapter}
|
|
37
|
-
*/
|
|
38
|
-
constructor(options?: HuaweiApiGatewayOptions | undefined);
|
|
39
|
-
/**
|
|
40
|
-
* {@inheritDoc}
|
|
41
|
-
*/
|
|
42
|
-
getAdapterName(): string;
|
|
43
|
-
/**
|
|
44
|
-
* {@inheritDoc}
|
|
45
|
-
*/
|
|
46
|
-
canHandle(event: unknown): event is HuaweiApiGatewayEvent;
|
|
47
|
-
/**
|
|
48
|
-
* {@inheritDoc}
|
|
49
|
-
*/
|
|
50
|
-
getRequest(event: HuaweiApiGatewayEvent): AdapterRequest;
|
|
51
|
-
/**
|
|
52
|
-
* {@inheritDoc}
|
|
53
|
-
*/
|
|
54
|
-
getResponse({ headers: responseHeaders, body, isBase64Encoded, statusCode, }: GetResponseAdapterProps<HuaweiApiGatewayEvent>): HuaweiApiGatewayResponse;
|
|
55
|
-
/**
|
|
56
|
-
* {@inheritDoc}
|
|
57
|
-
*/
|
|
58
|
-
onErrorWhileForwarding({ error, delegatedResolver, respondWithErrors, event, log, }: OnErrorProps<HuaweiApiGatewayEvent, HuaweiApiGatewayResponse>): void;
|
|
59
|
-
/**
|
|
60
|
-
* Get path from event with query strings
|
|
61
|
-
*
|
|
62
|
-
* @param event - The event sent by serverless
|
|
63
|
-
*/
|
|
64
|
-
protected getPathFromEvent(event: HuaweiApiGatewayEvent): string;
|
|
65
|
-
}
|
|
66
|
-
export declare type __ΩHuaweiApiGatewayOptions = any[];
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './huawei-api-gateway.adapter';
|
|
@@ -1,155 +0,0 @@
|
|
|
1
|
-
/// <reference types="node" />
|
|
2
|
-
import { BothValueHeaders, SingleValueHeaders } from '../@types';
|
|
3
|
-
import { ILogger } from '../core';
|
|
4
|
-
import { ServerlessResponse } from '../network';
|
|
5
|
-
import { DelegatedResolver } from './resolver.contract';
|
|
6
|
-
/**
|
|
7
|
-
* The request interface used to bridge any event source to the framework.
|
|
8
|
-
*
|
|
9
|
-
* @breadcrumb Contracts / AdapterContract
|
|
10
|
-
* @public
|
|
11
|
-
*/
|
|
12
|
-
export interface AdapterRequest {
|
|
13
|
-
/**
|
|
14
|
-
* The HTTP Method to use to create the request to the framework
|
|
15
|
-
*/
|
|
16
|
-
method: string;
|
|
17
|
-
/**
|
|
18
|
-
* The path to use to create the request to the framework
|
|
19
|
-
*/
|
|
20
|
-
path: string;
|
|
21
|
-
/**
|
|
22
|
-
* The headers to use to create the request to the framework
|
|
23
|
-
*/
|
|
24
|
-
headers: SingleValueHeaders;
|
|
25
|
-
/**
|
|
26
|
-
* The body as buffer to use to create the request to the framework
|
|
27
|
-
*/
|
|
28
|
-
body?: Buffer;
|
|
29
|
-
/**
|
|
30
|
-
* The remote address (client ip) to use to create the request to the framework
|
|
31
|
-
*/
|
|
32
|
-
remoteAddress?: string;
|
|
33
|
-
/**
|
|
34
|
-
* The address of the event source (used in Lambda\@edge)
|
|
35
|
-
*
|
|
36
|
-
* @deprecated It is no longer used in the library and will be removed in the next major release.
|
|
37
|
-
*/
|
|
38
|
-
host?: string;
|
|
39
|
-
/**
|
|
40
|
-
* The address of the event source (used in Lambda\@edge)
|
|
41
|
-
*
|
|
42
|
-
* @deprecated It is no longer used in the library and will be removed in the next major release.
|
|
43
|
-
*/
|
|
44
|
-
hostname?: string;
|
|
45
|
-
}
|
|
46
|
-
/**
|
|
47
|
-
* The props of the method that get the response from the framework and transform it into a format that the event source can handle
|
|
48
|
-
*
|
|
49
|
-
* @breadcrumb Contracts / AdapterContract
|
|
50
|
-
* @public
|
|
51
|
-
*/
|
|
52
|
-
export interface GetResponseAdapterProps<TEvent> {
|
|
53
|
-
/**
|
|
54
|
-
* The event sent by the serverless
|
|
55
|
-
*/
|
|
56
|
-
event: TEvent;
|
|
57
|
-
/**
|
|
58
|
-
* The framework {@link ServerlessResponse | response}.
|
|
59
|
-
*
|
|
60
|
-
* @remarks It can be optional, as this method can be used when an error occurs during the handling of the request by the framework.
|
|
61
|
-
*/
|
|
62
|
-
response?: ServerlessResponse;
|
|
63
|
-
/**
|
|
64
|
-
* The framework response status code
|
|
65
|
-
*/
|
|
66
|
-
statusCode: number;
|
|
67
|
-
/**
|
|
68
|
-
* The framework response body
|
|
69
|
-
*/
|
|
70
|
-
body: string;
|
|
71
|
-
/**
|
|
72
|
-
* The framework response headers
|
|
73
|
-
*/
|
|
74
|
-
headers: BothValueHeaders;
|
|
75
|
-
/**
|
|
76
|
-
* Indicates whether the response is base64 encoded or not
|
|
77
|
-
*/
|
|
78
|
-
isBase64Encoded: boolean;
|
|
79
|
-
/**
|
|
80
|
-
* The instance of the logger
|
|
81
|
-
*/
|
|
82
|
-
log: ILogger;
|
|
83
|
-
}
|
|
84
|
-
/**
|
|
85
|
-
* The props of the method that handle the response when an error occurs while forwarding the request to the framework
|
|
86
|
-
*
|
|
87
|
-
* @breadcrumb Contracts / AdapterContract
|
|
88
|
-
* @public
|
|
89
|
-
*/
|
|
90
|
-
export interface OnErrorProps<TEvent, TResponse> {
|
|
91
|
-
/**
|
|
92
|
-
* The event sent by the serverless
|
|
93
|
-
*/
|
|
94
|
-
event: TEvent;
|
|
95
|
-
/**
|
|
96
|
-
* The error throwed during forwarding
|
|
97
|
-
*/
|
|
98
|
-
error: Error;
|
|
99
|
-
/**
|
|
100
|
-
* The instance of the resolver
|
|
101
|
-
*/
|
|
102
|
-
delegatedResolver: DelegatedResolver<TResponse>;
|
|
103
|
-
/**
|
|
104
|
-
* Indicates whether to forward the (error.stack) or not to the client
|
|
105
|
-
*/
|
|
106
|
-
respondWithErrors: boolean;
|
|
107
|
-
/**
|
|
108
|
-
* The instance of the logger
|
|
109
|
-
*/
|
|
110
|
-
log: ILogger;
|
|
111
|
-
}
|
|
112
|
-
/**
|
|
113
|
-
* The interface that represents a contract between the adapter and the actual implementation of the adapter.
|
|
114
|
-
*
|
|
115
|
-
* @breadcrumb Contracts / AdapterContract
|
|
116
|
-
* @public
|
|
117
|
-
*/
|
|
118
|
-
export interface AdapterContract<TEvent, TContext, TResponse> {
|
|
119
|
-
/**
|
|
120
|
-
* Get the adapter name
|
|
121
|
-
*/
|
|
122
|
-
getAdapterName(): string;
|
|
123
|
-
/**
|
|
124
|
-
* Decide if this adapter can handle a request based in the event payload
|
|
125
|
-
*
|
|
126
|
-
* @param event - The event sent by serverless
|
|
127
|
-
* @param context - The context sent by the serverless
|
|
128
|
-
* @param log - The instance of logger
|
|
129
|
-
*/
|
|
130
|
-
canHandle(event: unknown, context: TContext, log: ILogger): boolean;
|
|
131
|
-
/**
|
|
132
|
-
* Maps the serverless payload to an actual request that a framework can handle
|
|
133
|
-
*
|
|
134
|
-
* @param event - The event sent by serverless
|
|
135
|
-
* @param context - The context sent by the serverless
|
|
136
|
-
* @param log - The instance of logger
|
|
137
|
-
*/
|
|
138
|
-
getRequest(event: TEvent, context: TContext, log: ILogger): AdapterRequest;
|
|
139
|
-
/**
|
|
140
|
-
* Maps the response of the framework to a payload that serverless can handle
|
|
141
|
-
*
|
|
142
|
-
* @param props - The props sent by serverless
|
|
143
|
-
*/
|
|
144
|
-
getResponse(props: GetResponseAdapterProps<TEvent>): TResponse;
|
|
145
|
-
/**
|
|
146
|
-
* When an error occurs while forwarding the request to the framework
|
|
147
|
-
*
|
|
148
|
-
* @remarks You must call resolver.fail or resolver.succeed when implementing this method.
|
|
149
|
-
*/
|
|
150
|
-
onErrorWhileForwarding(props: OnErrorProps<TEvent, TResponse>): void;
|
|
151
|
-
}
|
|
152
|
-
export declare type __ΩAdapterRequest = any[];
|
|
153
|
-
export declare type __ΩGetResponseAdapterProps = any[];
|
|
154
|
-
export declare type __ΩOnErrorProps = any[];
|
|
155
|
-
export declare type __ΩAdapterContract = any[];
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
/// <reference types="node" />
|
|
2
|
-
import { IncomingMessage, ServerResponse } from 'http';
|
|
3
|
-
/**
|
|
4
|
-
* The interface that represents a contract between the framework and the framework implementation
|
|
5
|
-
*
|
|
6
|
-
* @breadcrumb Contracts
|
|
7
|
-
* @public
|
|
8
|
-
*/
|
|
9
|
-
export interface FrameworkContract<TApp> {
|
|
10
|
-
/**
|
|
11
|
-
* Send the request and response objects to the framework
|
|
12
|
-
*
|
|
13
|
-
* @param app - The instance of your app (Express, Fastify, Koa, etc...)
|
|
14
|
-
* @param request - The request object that will be forward to your app
|
|
15
|
-
* @param response - The response object that will be forward to your app to output the response
|
|
16
|
-
*/
|
|
17
|
-
sendRequest(app: TApp, request: IncomingMessage, response: ServerResponse): void;
|
|
18
|
-
}
|
|
19
|
-
export declare type __ΩFrameworkContract = any[];
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import { BinarySettings } from '../@types';
|
|
2
|
-
import { ILogger } from '../core';
|
|
3
|
-
import { AdapterContract } from './adapter.contract';
|
|
4
|
-
import { FrameworkContract } from './framework.contract';
|
|
5
|
-
import { ResolverContract } from './resolver.contract';
|
|
6
|
-
/**
|
|
7
|
-
* The function used to handle serverless requests
|
|
8
|
-
*
|
|
9
|
-
* @breadcrumb Contracts / HandlerContract
|
|
10
|
-
* @public
|
|
11
|
-
*/
|
|
12
|
-
export declare type ServerlessHandler<TReturn> = (...args: any[]) => TReturn;
|
|
13
|
-
/**
|
|
14
|
-
* The interface that represents the contract between the handler and the real implementation
|
|
15
|
-
*
|
|
16
|
-
* @breadcrumb Contracts / HandlerContract
|
|
17
|
-
* @public
|
|
18
|
-
*/
|
|
19
|
-
export interface HandlerContract<TApp, TEvent, TContext, TCallback, TResponse, TReturn> {
|
|
20
|
-
/**
|
|
21
|
-
* Get the handler that will handle serverless requests
|
|
22
|
-
*/
|
|
23
|
-
getHandler(app: TApp, framework: FrameworkContract<TApp>, adapters: AdapterContract<TEvent, TContext, TResponse>[], resolverFactory: ResolverContract<TEvent, TContext, TCallback, TResponse, TReturn>, binarySettings: BinarySettings, respondWithErrors: boolean, log: ILogger): ServerlessHandler<TReturn>;
|
|
24
|
-
}
|
|
25
|
-
export declare type __ΩServerlessHandler = any[];
|
|
26
|
-
export declare type __ΩHandlerContract = any[];
|
package/lib/contracts/index.d.ts
DELETED
|
@@ -1,86 +0,0 @@
|
|
|
1
|
-
import { ILogger } from '../core';
|
|
2
|
-
import { AdapterContract } from './adapter.contract';
|
|
3
|
-
/**
|
|
4
|
-
* The type that represents a resolver used to send the response, error or success, to the client
|
|
5
|
-
*
|
|
6
|
-
* @breadcrumb Contracts / ResolverContract
|
|
7
|
-
* @public
|
|
8
|
-
*/
|
|
9
|
-
export declare type Resolver<TResponse, TReturn> = {
|
|
10
|
-
/**
|
|
11
|
-
* The method that will perform the task of forwarding the request to the framework and waiting for the promise to be resolved with the response
|
|
12
|
-
*
|
|
13
|
-
* @param task - The task to be executed
|
|
14
|
-
*/
|
|
15
|
-
run(task: () => Promise<TResponse>): TReturn;
|
|
16
|
-
};
|
|
17
|
-
/**
|
|
18
|
-
* The type that represents a delegate resolver that is passed to the adapter to handle what to do when an error occurs during forwarding.
|
|
19
|
-
*
|
|
20
|
-
* @breadcrumb Contracts / ResolverContract
|
|
21
|
-
* @public
|
|
22
|
-
*/
|
|
23
|
-
export declare type DelegatedResolver<TResponse> = {
|
|
24
|
-
/**
|
|
25
|
-
* Send the success response to the client
|
|
26
|
-
*
|
|
27
|
-
* @param success - The serverless response
|
|
28
|
-
*/
|
|
29
|
-
succeed: (response: TResponse) => void;
|
|
30
|
-
/**
|
|
31
|
-
* Send the error response to the client
|
|
32
|
-
*
|
|
33
|
-
* @param error - The error object
|
|
34
|
-
*/
|
|
35
|
-
fail: (error: Error) => void;
|
|
36
|
-
};
|
|
37
|
-
/**
|
|
38
|
-
* The createResolver contract props
|
|
39
|
-
*
|
|
40
|
-
* @breadcrumb Contracts / ResolverContract
|
|
41
|
-
* @public
|
|
42
|
-
*/
|
|
43
|
-
export declare type ResolverProps<TEvent, TContext, TCallback, TResponse> = {
|
|
44
|
-
/**
|
|
45
|
-
* The event sent by the serverless environment
|
|
46
|
-
*/
|
|
47
|
-
event: TEvent;
|
|
48
|
-
/**
|
|
49
|
-
* Indicates whether to forward the (error.stack) or not to the client
|
|
50
|
-
*/
|
|
51
|
-
respondWithErrors: boolean;
|
|
52
|
-
/**
|
|
53
|
-
* The instance of the logger
|
|
54
|
-
*/
|
|
55
|
-
log: ILogger;
|
|
56
|
-
/**
|
|
57
|
-
* The instance of the adapter
|
|
58
|
-
*/
|
|
59
|
-
adapter: AdapterContract<TEvent, TContext, TResponse>;
|
|
60
|
-
/**
|
|
61
|
-
* The context sent by serverless
|
|
62
|
-
*/
|
|
63
|
-
context?: TContext;
|
|
64
|
-
/**
|
|
65
|
-
* The callback sent by serverless
|
|
66
|
-
*/
|
|
67
|
-
callback?: TCallback;
|
|
68
|
-
};
|
|
69
|
-
/**
|
|
70
|
-
* The interface that represents the contract used to send the response to the client
|
|
71
|
-
*
|
|
72
|
-
* @breadcrumb Contracts / ResolverContract
|
|
73
|
-
* @public
|
|
74
|
-
*/
|
|
75
|
-
export interface ResolverContract<TEvent, TContext, TCallback, TResponse, TReturn> {
|
|
76
|
-
/**
|
|
77
|
-
* Create the resolver based on the context, callback or promise
|
|
78
|
-
*
|
|
79
|
-
* @param props - The props used to create the resolver
|
|
80
|
-
*/
|
|
81
|
-
createResolver(props: ResolverProps<TEvent, TContext, TCallback, TResponse>): Resolver<TResponse, TReturn>;
|
|
82
|
-
}
|
|
83
|
-
export declare type __ΩResolver = any[];
|
|
84
|
-
export declare type __ΩDelegatedResolver = any[];
|
|
85
|
-
export declare type __ΩResolverProps = any[];
|
|
86
|
-
export declare type __ΩResolverContract = any[];
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import { BinarySettings } from '../@types';
|
|
2
|
-
import { AdapterContract, AdapterRequest, FrameworkContract, HandlerContract, ResolverContract, ServerlessHandler } from '../contracts';
|
|
3
|
-
import { ServerlessRequest, ServerlessResponse } from '../network';
|
|
4
|
-
import { ILogger } from './index';
|
|
5
|
-
/**
|
|
6
|
-
* The abstract class that represents the base class for a handler
|
|
7
|
-
*
|
|
8
|
-
* @breadcrumb Core
|
|
9
|
-
* @public
|
|
10
|
-
*/
|
|
11
|
-
export declare abstract class BaseHandler<TApp, TEvent, TContext, TCallback, TResponse, TReturn> implements HandlerContract<TApp, TEvent, TContext, TCallback, TResponse, TReturn> {
|
|
12
|
-
/**
|
|
13
|
-
* Get the handler that will handle serverless requests
|
|
14
|
-
*/
|
|
15
|
-
abstract getHandler(app: TApp, framework: FrameworkContract<TApp>, adapters: AdapterContract<TEvent, TContext, TResponse>[], resolverFactory: ResolverContract<TEvent, TContext, TCallback, TResponse, TReturn>, binarySettings: BinarySettings, respondWithErrors: boolean, log: ILogger): ServerlessHandler<TReturn>;
|
|
16
|
-
/**
|
|
17
|
-
* Get the adapter to handle a specific event and context
|
|
18
|
-
*
|
|
19
|
-
* @param event - The event sent by serverless
|
|
20
|
-
* @param context - The context sent by serverless
|
|
21
|
-
* @param adapters - The list of adapters
|
|
22
|
-
* @param log - The instance of logger
|
|
23
|
-
*/
|
|
24
|
-
protected getAdapterByEventAndContext(event: TEvent, context: TContext, adapters: AdapterContract<TEvent, TContext, TResponse>[], log: ILogger): AdapterContract<TEvent, TContext, TResponse>;
|
|
25
|
-
/**
|
|
26
|
-
* Get serverless request and response frmo the adapter request
|
|
27
|
-
*
|
|
28
|
-
* @param requestValues - The request values from adapter
|
|
29
|
-
*/
|
|
30
|
-
protected getServerlessRequestResponseFromAdapterRequest(requestValues: AdapterRequest): [request: ServerlessRequest, response: ServerlessResponse];
|
|
31
|
-
}
|
package/lib/core/constants.d.ts
DELETED
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Default encodings that are treated as binary, they are compared with the `Content-Encoding` header.
|
|
3
|
-
*
|
|
4
|
-
* @breadcrumb Core / Constants
|
|
5
|
-
* @defaultValue ['gzip', 'deflate', 'br']
|
|
6
|
-
* @public
|
|
7
|
-
*/
|
|
8
|
-
export declare const DEFAULT_BINARY_ENCODINGS: string[];
|
|
9
|
-
/**
|
|
10
|
-
* Default content types that are treated as binary, they are compared with the `Content-Type` header.
|
|
11
|
-
*
|
|
12
|
-
* @breadcrumb Core / Constants
|
|
13
|
-
* @defaultValue [new RegExp('^image/.*$'), new RegExp('^video/.*$'), 'application/pdf']
|
|
14
|
-
* @public
|
|
15
|
-
*/
|
|
16
|
-
export declare const DEFAULT_BINARY_CONTENT_TYPES: (string | RegExp)[];
|
|
17
|
-
/**
|
|
18
|
-
* Type alias for empty response and can be used on some adapters when the adapter does not need to return a response.
|
|
19
|
-
*
|
|
20
|
-
* @breadcrumb Core / Constants
|
|
21
|
-
* @public
|
|
22
|
-
*/
|
|
23
|
-
export declare type IEmptyResponse = {};
|
|
24
|
-
/**
|
|
25
|
-
* Constant for empty response and can be used on some adapters when the adapter does not need to return a response.
|
|
26
|
-
*
|
|
27
|
-
* @breadcrumb Core / Constants
|
|
28
|
-
* @public
|
|
29
|
-
*/
|
|
30
|
-
export declare const EmptyResponse: IEmptyResponse;
|
|
31
|
-
export declare type __ΩIEmptyResponse = any[];
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* The type that represents the object that handles the references to the event created by the serverless trigger or context created by the serverless environment.
|
|
3
|
-
*
|
|
4
|
-
* @breadcrumb Core / Current Invoke
|
|
5
|
-
* @public
|
|
6
|
-
*/
|
|
7
|
-
export declare type CurrentInvoke<TEvent, TContext> = {
|
|
8
|
-
/**
|
|
9
|
-
* The event created by the serverless trigger
|
|
10
|
-
*
|
|
11
|
-
* @remarks It's only null when you call {@link getCurrentInvoke} outside this library's pipeline.
|
|
12
|
-
*/
|
|
13
|
-
event: TEvent | null;
|
|
14
|
-
/**
|
|
15
|
-
* The context created by the serverless environment
|
|
16
|
-
*
|
|
17
|
-
* @remarks It's only null when you call {@link getCurrentInvoke} outside this library's pipeline.
|
|
18
|
-
*/
|
|
19
|
-
context: TContext | null;
|
|
20
|
-
};
|
|
21
|
-
/**
|
|
22
|
-
* Get the reference to the event created by the serverless trigger or context created by the serverless environment.
|
|
23
|
-
*
|
|
24
|
-
* @example
|
|
25
|
-
* ```typescript
|
|
26
|
-
* import type { ALBEvent, Context } from 'aws-lambda';
|
|
27
|
-
*
|
|
28
|
-
* // inside the method that handles the aws alb request.
|
|
29
|
-
* const { event, context } = getCurrentInvoke<ALBEvent, Context>();
|
|
30
|
-
* ```
|
|
31
|
-
*
|
|
32
|
-
* @breadcrumb Core / Current Invoke
|
|
33
|
-
* @public
|
|
34
|
-
*/
|
|
35
|
-
export declare function getCurrentInvoke<TEvent = any, TContext = any>(): CurrentInvoke<TEvent, TContext>;
|
|
36
|
-
/**
|
|
37
|
-
* Method that saves to the event created by the serverless trigger or context created by the serverless environment.
|
|
38
|
-
*
|
|
39
|
-
* @remarks This method MUST NOT be called by you, this method MUST only be used internally in this library.
|
|
40
|
-
*
|
|
41
|
-
* @param event - The event created by the serverless trigger
|
|
42
|
-
* @param context - The context created by the serverless environment
|
|
43
|
-
*
|
|
44
|
-
* @breadcrumb Core / Current Invoke
|
|
45
|
-
* @public
|
|
46
|
-
*/
|
|
47
|
-
export declare function setCurrentInvoke<TEvent = any, TContext = any>({ event, context, }: CurrentInvoke<TEvent, TContext>): void;
|
|
48
|
-
export declare type __ΩCurrentInvoke = any[];
|
package/lib/core/event-body.d.ts
DELETED
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
/// <reference types="node" />
|
|
2
|
-
/**
|
|
3
|
-
* Get the event body as buffer from body string with content length
|
|
4
|
-
*
|
|
5
|
-
* @example
|
|
6
|
-
* ```typescript
|
|
7
|
-
* const body = '{}';
|
|
8
|
-
* const [buffer, contentLength] = getEventBodyAsBuffer(body, false);
|
|
9
|
-
* console.log(buffer);
|
|
10
|
-
* // <Buffer 7b 7d>
|
|
11
|
-
* console.log(contentLength);
|
|
12
|
-
* // 2
|
|
13
|
-
* ```
|
|
14
|
-
*
|
|
15
|
-
* @param body - The body string that can be encoded or not
|
|
16
|
-
* @param isBase64Encoded - Tells if body string is encoded in base64
|
|
17
|
-
*
|
|
18
|
-
* @breadcrumb Core
|
|
19
|
-
* @public
|
|
20
|
-
*/
|
|
21
|
-
export declare function getEventBodyAsBuffer(body: string, isBase64Encoded: boolean): [body: Buffer, contentLength: number];
|
package/lib/core/headers.d.ts
DELETED
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import { BothValueHeaders } from '../@types';
|
|
2
|
-
/**
|
|
3
|
-
* Transform a header map and make sure the value is not an array
|
|
4
|
-
*
|
|
5
|
-
* @example
|
|
6
|
-
* ```typescript
|
|
7
|
-
* const headers = { 'accept-encoding': 'gzip', 'accept-language': ['en-US', 'en;q=0.9'] };
|
|
8
|
-
* const flattenedHeaders = getFlattenedHeadersMap(headers, ',', true);
|
|
9
|
-
* console.log(flattenedHeaders);
|
|
10
|
-
* // { 'accept-encoding': 'gzip', 'accept-language': 'en-US,en;q=0.9' }
|
|
11
|
-
* ```
|
|
12
|
-
*
|
|
13
|
-
* @param headersMap - The initial headers
|
|
14
|
-
* @param separator - The separator used when we join the array of header's value
|
|
15
|
-
* @param lowerCaseKey - Should put all keys in lowercase
|
|
16
|
-
*
|
|
17
|
-
* @breadcrumb Core / Headers
|
|
18
|
-
* @public
|
|
19
|
-
*/
|
|
20
|
-
export declare function getFlattenedHeadersMap(headersMap: BothValueHeaders, separator?: string, lowerCaseKey?: boolean): Record<string, string>;
|
|
21
|
-
/**
|
|
22
|
-
* Transforms a header map into a multi-value map header.
|
|
23
|
-
*
|
|
24
|
-
* @example
|
|
25
|
-
* ```typescript
|
|
26
|
-
* const headers = { 'accept-encoding': 'gzip', 'connection': ['keep-alive'] };
|
|
27
|
-
* const multiValueHeaders = getMultiValueHeadersMap(headers);
|
|
28
|
-
* console.log(multiValueHeaders);
|
|
29
|
-
* // { 'accept-encoding': ['gzip'], 'connection': ['keep-alive'] }
|
|
30
|
-
* ```
|
|
31
|
-
*
|
|
32
|
-
* @param headersMap - The initial headers
|
|
33
|
-
*
|
|
34
|
-
* @breadcrumb Core / Headers
|
|
35
|
-
* @public
|
|
36
|
-
*/
|
|
37
|
-
export declare function getMultiValueHeadersMap(headersMap: BothValueHeaders): Record<string, string[]>;
|
|
38
|
-
/**
|
|
39
|
-
* Parse HTTP Raw Headers
|
|
40
|
-
* Attribution to {@link https://github.com/kesla/parse-headers/blob/master/parse-headers.js}
|
|
41
|
-
*
|
|
42
|
-
* @param headers - The raw headers
|
|
43
|
-
*
|
|
44
|
-
* @breadcrumb Core / Headers
|
|
45
|
-
* @public
|
|
46
|
-
*/
|
|
47
|
-
export declare function parseHeaders(headers: string): Record<string, string | string[]>;
|
package/lib/core/index.d.ts
DELETED
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
export * from './base-handler';
|
|
2
|
-
export * from './constants';
|
|
3
|
-
export * from './current-invoke';
|
|
4
|
-
export * from './event-body';
|
|
5
|
-
export * from './headers';
|
|
6
|
-
export * from './is-binary';
|
|
7
|
-
export * from './logger';
|
|
8
|
-
export * from './no-op';
|
|
9
|
-
export * from './optional';
|
|
10
|
-
export * from './path';
|
|
11
|
-
export * from './stream';
|
package/lib/core/is-binary.d.ts
DELETED
|
@@ -1,72 +0,0 @@
|
|
|
1
|
-
import { BinarySettings, BothValueHeaders } from '../@types';
|
|
2
|
-
/**
|
|
3
|
-
* The function that determines by the content encoding whether the response should be treated as binary
|
|
4
|
-
*
|
|
5
|
-
* @example
|
|
6
|
-
* ```typescript
|
|
7
|
-
* const headers = { 'Content-Encoding': 'gzip' };
|
|
8
|
-
* const isBinary = isContentEncodingBinary(headers, ['gzip']);
|
|
9
|
-
* console.log(isBinary);
|
|
10
|
-
* // true
|
|
11
|
-
* ```
|
|
12
|
-
*
|
|
13
|
-
* @param headers - The headers of the response
|
|
14
|
-
* @param binaryEncodingTypes - The list of content encodings that will be treated as binary
|
|
15
|
-
*
|
|
16
|
-
* @breadcrumb Core / isBinary
|
|
17
|
-
* @public
|
|
18
|
-
*/
|
|
19
|
-
export declare function isContentEncodingBinary(headers: BothValueHeaders, binaryEncodingTypes: string[]): boolean;
|
|
20
|
-
/**
|
|
21
|
-
* The function that returns the content type of headers
|
|
22
|
-
*
|
|
23
|
-
* @example
|
|
24
|
-
* ```typescript
|
|
25
|
-
* const headers = { 'Content-Type': 'application/json' };
|
|
26
|
-
* const contentType = getContentType(headers);
|
|
27
|
-
* console.log(contentType);
|
|
28
|
-
* // application/json
|
|
29
|
-
* ```
|
|
30
|
-
*
|
|
31
|
-
* @param headers - The headers of the response
|
|
32
|
-
*
|
|
33
|
-
* @breadcrumb Core / isBinary
|
|
34
|
-
* @public
|
|
35
|
-
*/
|
|
36
|
-
export declare function getContentType(headers: BothValueHeaders): string;
|
|
37
|
-
/**
|
|
38
|
-
* The function that determines by the content type whether the response should be treated as binary
|
|
39
|
-
*
|
|
40
|
-
* @example
|
|
41
|
-
* ```typescript
|
|
42
|
-
* const headers = { 'Content-Type': 'image/png' };
|
|
43
|
-
* const isBinary = isContentTypeBinary(headers, [new RegExp('^image/.*$')]);
|
|
44
|
-
* console.log(isBinary);
|
|
45
|
-
* // true
|
|
46
|
-
* ```
|
|
47
|
-
*
|
|
48
|
-
* @param headers - The headers of the response
|
|
49
|
-
* @param binaryContentTypes - The list of content types that will be treated as binary
|
|
50
|
-
*
|
|
51
|
-
* @breadcrumb Core / isBinary
|
|
52
|
-
* @public
|
|
53
|
-
*/
|
|
54
|
-
export declare function isContentTypeBinary(headers: BothValueHeaders, binaryContentTypes: (string | RegExp)[]): boolean;
|
|
55
|
-
/**
|
|
56
|
-
* The function used to determine from the headers and the binary settings if a response should be encoded or not
|
|
57
|
-
*
|
|
58
|
-
* @example
|
|
59
|
-
* ```typescript
|
|
60
|
-
* const headers = { 'Content-Type': 'image/png', 'Content-Encoding': 'gzip' };
|
|
61
|
-
* const isContentBinary = isBinary(headers, { contentEncodings: ['gzip'], contentTypes: [new RegExp('^image/.*$')] });
|
|
62
|
-
* console.log(isContentBinary);
|
|
63
|
-
* // true
|
|
64
|
-
* ```
|
|
65
|
-
*
|
|
66
|
-
* @param headers - The headers of the response
|
|
67
|
-
* @param binarySettings - The settings for the validation
|
|
68
|
-
*
|
|
69
|
-
* @breadcrumb Core / isBinary
|
|
70
|
-
* @public
|
|
71
|
-
*/
|
|
72
|
-
export declare function isBinary(headers: BothValueHeaders, binarySettings: BinarySettings): boolean;
|