Skip to content

feat(parser): provide sub-path exports #3598

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

130 changes: 10 additions & 120 deletions packages/parser/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -124,61 +124,9 @@
"require": "./lib/cjs/schemas/vpc-latticev2.js",
"import": "./lib/esm/schemas/vpc-latticev2.js"
},
"./envelopes": {
"require": "./lib/cjs/envelopes/index.js",
"import": "./lib/esm/envelopes/index.js"
},
"./envelopes/api-gateway": {
"require": "./lib/cjs/envelopes/apigw.js",
"import": "./lib/esm/envelopes/apigw.js"
},
"./envelopes/api-gatewayv2": {
"require": "./lib/cjs/envelopes/apigwv2.js",
"import": "./lib/esm/envelopes/apigwv2.js"
},
"./envelopes/cloudwatch": {
"require": "./lib/cjs/envelopes/cloudwatch.js",
"import": "./lib/esm/envelopes/cloudwatch.js"
},
"./envelopes/dynamodb": {
"require": "./lib/cjs/envelopes/dynamodb.js",
"import": "./lib/esm/envelopes/dynamodb.js"
},
"./envelopes/eventbridge": {
"require": "./lib/cjs/envelopes/eventbridge.js",
"import": "./lib/esm/envelopes/eventbridge.js"
},
"./envelopes/kafka": {
"require": "./lib/cjs/envelopes/kafka.js",
"import": "./lib/esm/envelopes/kafka.js"
},
"./envelopes/kinesis": {
"require": "./lib/cjs/envelopes/kinesis.js",
"import": "./lib/esm/envelopes/kinesis.js"
},
"./envelopes/kinesis-firehose": {
"require": "./lib/cjs/envelopes/kinesis-firehose.js",
"import": "./lib/esm/envelopes/kinesis-firehose.js"
},
"./envelopes/lambda": {
"require": "./lib/cjs/envelopes/lambda.js",
"import": "./lib/esm/envelopes/lambda.js"
},
"./envelopes/sns": {
"require": "./lib/cjs/envelopes/sns.js",
"import": "./lib/esm/envelopes/sns.js"
},
"./envelopes/sqs": {
"require": "./lib/cjs/envelopes/sqs.js",
"import": "./lib/esm/envelopes/sqs.js"
},
"./envelopes/vpc-lattice": {
"require": "./lib/cjs/envelopes/vpc-lattice.js",
"import": "./lib/esm/envelopes/vpc-lattice.js"
},
"./envelopes/vpc-latticev2": {
"require": "./lib/cjs/envelopes/vpc-latticev2.js",
"import": "./lib/esm/envelopes/vpc-latticev2.js"
"./envelopes/*.ts": {
"require": "./lib/cjs/envelopes/*.js",
"import": "./lib/esm/envelopes/*.js"
},
"./helpers": {
"require": "./lib/cjs/helpers.js",
Expand All @@ -196,7 +144,7 @@
"typesVersions": {
"*": {
"types": [
"./lib/cjs/types/index.d.ts",
"./lib/cjs/types/index.d.ts",
"./lib/esm/types/index.d.ts"
],
"middleware": [
Expand Down Expand Up @@ -256,7 +204,7 @@
"./lib/esm/schemas/lambda.d.ts"
],
"schemas/s3": [
"./lib/cjs/schemas/s3.d.ts",
"./lib/cjs/schemas/s3.d.ts",
"./lib/esm/schemas/s3.d.ts"
],
"schemas/ses": [
Expand All @@ -279,77 +227,19 @@
"./lib/cjs/schemas/vpc-latticev2.d.ts",
"./lib/esm/schemas/vpc-latticev2.d.ts"
],
"envelopes": [
"./lib/cjs/envelopes/index.d.ts",
"./lib/esm/envelopes/index.d.ts"
],
"envelopes/api-gateway": [
"./lib/cjs/envelopes/apigw.d.ts",
"./lib/esm/envelopes/apigw.d.ts"
],
"envelopes/api-gatewayv2": [
"./lib/cjs/envelopes/apigwv2.d.ts",
"./lib/esm/envelopes/apigwv2.d.ts"
],
"envelopes/cloudwatch": [
"./lib/cjs/envelopes/cloudwatch.d.ts",
"./lib/esm/envelopes/cloudwatch.d.ts"
],
"envelopes/dynamodb": [
"./lib/cjs/envelopes/dynamodb.d.ts",
"./lib/esm/envelopes/dynamodb.d.ts"
],
"envelopes/eventbridge": [
"./lib/cjs/envelopes/eventbridge.d.ts",
"./lib/esm/envelopes/eventbridge.d.ts"
],
"envelopes/kafka": [
"./lib/cjs/envelopes/kafka.d.ts",
"./lib/esm/envelopes/kafka.d.ts"
],
"envelopes/kinesis": [
"./lib/cjs/envelopes/kinesis.d.ts",
"./lib/esm/envelopes/kinesis.d.ts"
],
"envelopes/kinesis-firehose": [
"./lib/cjs/envelopes/kinesis-firehose.d.ts",
"./lib/esm/envelopes/kinesis-firehose.d.ts"
],
"envelopes/lambda": [
"./lib/cjs/envelopes/lambda.d.ts",
"./lib/esm/envelopes/lambda.d.ts"
],
"envelopes/sns": [
"./lib/cjs/envelopes/sns.d.ts",
"./lib/esm/envelopes/sns.d.ts"
],
"envelopes/sqs": [
"./lib/cjs/envelopes/sqs.d.ts",
"./lib/esm/envelopes/sqs.d.ts"
],
"schemas/transfer-family": [
"./lib/cjs/schemas/transfer-family.d.ts",
"./lib/esm/schemas/transfer-family.d.ts"
],
"envelopes/vpc-lattice": [
"./lib/cjs/envelopes/vpc-lattice.d.ts",
"./lib/esm/envelopes/vpc-lattice.d.ts"
],
"envelopes/vpc-latticev2": [
"./lib/cjs/envelopes/vpc-latticev2.d.ts",
"./lib/esm/envelopes/vpc-latticev2.d.ts"
"envelopes/*.ts": [
"./lib/cjs/envelopes/*.d.ts",
"./lib/esm/envelopes/*.d.ts"
],
"helpers": [
"./lib/cjs/helpers.d.ts",
"./lib/cjs/helpers.d.ts",
"./lib/esm/helpers.d.ts"
]
}
},
"main": "./lib/cjs/index.js",
"types": "./lib/cjs/index.d.ts",
"files": [
"lib"
],
"files": ["lib"],
"repository": {
"type": "git",
"url": "git+https://github.com/aws-powertools/powertools-lambda-typescript.git"
Expand Down
10 changes: 5 additions & 5 deletions packages/parser/src/envelopes/index.ts
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
export { ApiGatewayEnvelope } from './apigw.js';
export { ApiGatewayV2Envelope } from './apigwv2.js';
export { ApiGatewayEnvelope } from './api-gateway.js';
export { ApiGatewayV2Envelope } from './api-gatewayv2.js';
export { CloudWatchEnvelope } from './cloudwatch.js';
export { DynamoDBStreamEnvelope } from './dynamodb.js';
export { EventBridgeEnvelope } from './event-bridge.js';
export { EventBridgeEnvelope } from './eventbridge.js';
export { KafkaEnvelope } from './kafka.js';
export { KinesisEnvelope } from './kinesis.js';
export { KinesisFirehoseEnvelope } from './kinesis-firehose.js';
export { KinesisEnvelope } from './kinesis.js';
export { LambdaFunctionUrlEnvelope } from './lambda.js';
export { SnsSqsEnvelope } from './sns-sqs.js';
export { SnsEnvelope } from './sns.js';
export { SqsEnvelope } from './sqs.js';
export { SnsSqsEnvelope } from './snssqs.js';
export { VpcLatticeEnvelope } from './vpc-lattice.js';
export { VpcLatticeV2Envelope } from './vpc-latticev2.js';
13 changes: 13 additions & 0 deletions packages/parser/src/types/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -10,34 +10,47 @@ export type { Envelope } from './envelope.js';
export type {
ALBEvent,
ALBMultiValueHeadersEvent,
APIGatewayEventRequestContext,
APIGatewayProxyEvent,
APIGatewayProxyEventV2,
APIGatewayRequestAuthorizerEvent,
APIGatewayRequestAuthorizerV2,
APIGatewayRequestContextV2,
APIGatewayTokenAuthorizerEvent,
AppSyncBatchResolverEvent,
AppSyncResolverEvent,
CloudFormationCustomResourceCreateEvent,
CloudFormationCustomResourceDeleteEvent,
CloudFormationCustomResourceUpdateEvent,
CloudWatchLogEvent,
CloudWatchLogsDecode,
CloudWatchLogsEvent,
DynamoDBStreamEvent,
DynamoDBStreamToKinesisRecordEvent,
EventBridgeEvent,
KafkaMskEvent,
KafkaRecord,
KafkaSelfManagedEvent,
KinesisDataStreamEvent,
KinesisDataStreamRecordEvent,
KinesisDynamoDBStreamEvent,
KinesisFireHoseEvent,
KinesisFirehoseRecord,
KinesisFireHoseSqsEvent,
KinesisFirehoseSqsRecord,
LambdaFunctionUrlEvent,
S3Event,
S3EventNotificationEventBridge,
S3ObjectLambdaEvent,
S3SqsEventNotification,
SesEvent,
SesRecord,
SnsEvent,
SnsNotification,
SnsRecord,
SnsSqsNotification,
SqsEvent,
SqsRecord,
TransferFamilyEvent,
VpcLatticeEvent,
VpcLatticeEventV2,
Expand Down
40 changes: 35 additions & 5 deletions packages/parser/src/types/schema.ts
Original file line number Diff line number Diff line change
@@ -1,23 +1,29 @@
import type { z } from 'zod';
import type {
APIGatewayEventRequestContextSchema,
APIGatewayProxyEventSchema,
APIGatewayProxyEventV2Schema,
APIGatewayRequestAuthorizerEventSchema,
APIGatewayRequestAuthorizerV2Schema,
APIGatewayRequestContextV2Schema,
APIGatewayTokenAuthorizerEventSchema,
AlbMultiValueHeadersSchema,
AlbSchema,
AppSyncBatchResolverSchema,
AppSyncResolverSchema,
CloudFormationCustomResourceCreateSchema,
CloudFormationCustomResourceDeleteSchema,
CloudFormationCustomResourceUpdateSchema,
CloudWatchLogEventSchema,
CloudWatchLogsDecodeSchema,
CloudWatchLogsSchema,
DynamoDBStreamSchema,
DynamoDBStreamToKinesisRecord,
EventBridgeSchema,
KafkaMskEventSchema,
KafkaRecordSchema,
KafkaSelfManagedEventSchema,
KinesisDataStreamRecord,
KinesisDataStreamSchema,
KinesisDynamoDBStreamSchema,
KinesisFirehoseRecordSchema,
Expand Down Expand Up @@ -48,6 +54,18 @@ type ALBMultiValueHeadersEvent = z.infer<typeof AlbMultiValueHeadersSchema>;

type APIGatewayProxyEvent = z.infer<typeof APIGatewayProxyEventSchema>;

type APIGatewayRequestAuthorizerEvent = z.infer<
typeof APIGatewayRequestAuthorizerEventSchema
>;

type APIGatewayTokenAuthorizerEvent = z.infer<
typeof APIGatewayTokenAuthorizerEventSchema
>;

type APIGatewayEventRequestContext = z.infer<
typeof APIGatewayEventRequestContextSchema
>;

type APIGatewayProxyEventV2 = z.infer<typeof APIGatewayProxyEventV2Schema>;

type APIGatewayRequestAuthorizerV2 = z.infer<
Expand All @@ -62,6 +80,10 @@ type AppSyncResolverEvent = z.infer<typeof AppSyncResolverSchema>;

type AppSyncBatchResolverEvent = z.infer<typeof AppSyncBatchResolverSchema>;

type CloudWatchLogEvent = z.infer<typeof CloudWatchLogEventSchema>;

type CloudWatchLogsDecode = z.infer<typeof CloudWatchLogsDecodeSchema>;

type CloudFormationCustomResourceCreateEvent = z.infer<
typeof CloudFormationCustomResourceCreateSchema
>;
Expand Down Expand Up @@ -94,6 +116,8 @@ type KinesisDataStreamEvent = z.infer<typeof KinesisDataStreamSchema>;

type KinesisDynamoDBStreamEvent = z.infer<typeof KinesisDynamoDBStreamSchema>;

type KinesisDataStreamRecordEvent = z.infer<typeof KinesisDataStreamRecord>;

type KinesisFireHoseEvent = z.infer<typeof KinesisFirehoseSchema>;

type KinesisFirehoseRecord = z.infer<typeof KinesisFirehoseRecordSchema>;
Expand Down Expand Up @@ -139,39 +163,45 @@ type VpcLatticeEventV2 = z.infer<typeof VpcLatticeV2Schema>;
export type {
ALBEvent,
ALBMultiValueHeadersEvent,
APIGatewayEventRequestContext,
APIGatewayProxyEvent,
APIGatewayProxyEventV2,
APIGatewayRequestAuthorizerEvent,
APIGatewayRequestAuthorizerV2,
APIGatewayRequestContextV2,
AppSyncResolverEvent,
APIGatewayTokenAuthorizerEvent,
AppSyncBatchResolverEvent,
AppSyncResolverEvent,
CloudFormationCustomResourceCreateEvent,
CloudFormationCustomResourceDeleteEvent,
CloudFormationCustomResourceUpdateEvent,
CloudWatchLogEvent,
CloudWatchLogsDecode,
CloudWatchLogsEvent,
DynamoDBStreamEvent,
DynamoDBStreamToKinesisRecordEvent,
EventBridgeEvent,
KafkaSelfManagedEvent,
KafkaMskEvent,
KafkaRecord,
KafkaSelfManagedEvent,
KinesisDataStreamEvent,
KinesisDataStreamRecordEvent,
KinesisDynamoDBStreamEvent,
KinesisFireHoseEvent,
KinesisFirehoseRecord,
KinesisFireHoseSqsEvent,
KinesisFirehoseRecord,
KinesisFirehoseSqsRecord,
LambdaFunctionUrlEvent,
S3Event,
S3EventNotificationEventBridge,
S3SqsEventNotification,
S3ObjectLambdaEvent,
S3SqsEventNotification,
SesEvent,
SesRecord,
SnsEvent,
SnsSqsNotification,
SnsNotification,
SnsRecord,
SnsSqsNotification,
SqsEvent,
SqsRecord,
TransferFamilyEvent,
Expand Down
30 changes: 14 additions & 16 deletions packages/parser/tests/types/envelopes.test.ts
Original file line number Diff line number Diff line change
@@ -1,21 +1,19 @@
import { describe, expect, expectTypeOf, it } from 'vitest';
import { z } from 'zod';
import {
ApiGatewayEnvelope,
ApiGatewayV2Envelope,
CloudWatchEnvelope,
DynamoDBStreamEnvelope,
EventBridgeEnvelope,
KafkaEnvelope,
KinesisEnvelope,
KinesisFirehoseEnvelope,
LambdaFunctionUrlEnvelope,
SnsEnvelope,
SnsSqsEnvelope,
SqsEnvelope,
VpcLatticeEnvelope,
VpcLatticeV2Envelope,
} from '../../src/envelopes/index.js';
import { ApiGatewayEnvelope } from '../../src/envelopes/api-gateway.js';
import { ApiGatewayV2Envelope } from '../../src/envelopes/api-gatewayv2.js';
import { CloudWatchEnvelope } from '../../src/envelopes/cloudwatch.js';
import { DynamoDBStreamEnvelope } from '../../src/envelopes/dynamodb.js';
import { EventBridgeEnvelope } from '../../src/envelopes/eventbridge.js';
import { KafkaEnvelope } from '../../src/envelopes/kafka.js';
import { KinesisFirehoseEnvelope } from '../../src/envelopes/kinesis-firehose.js';
import { KinesisEnvelope } from '../../src/envelopes/kinesis.js';
import { LambdaFunctionUrlEnvelope } from '../../src/envelopes/lambda.js';
import { SnsSqsEnvelope } from '../../src/envelopes/sns-sqs.js';
import { SnsEnvelope } from '../../src/envelopes/sns.js';
import { SqsEnvelope } from '../../src/envelopes/sqs.js';
import { VpcLatticeEnvelope } from '../../src/envelopes/vpc-lattice.js';
import { VpcLatticeV2Envelope } from '../../src/envelopes/vpc-latticev2.js';
import type { ParserOutput } from '../../src/types/parser.js';

describe('Types ', () => {
Expand Down
3 changes: 2 additions & 1 deletion packages/parser/tests/types/parser.test.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
import { describe } from 'node:test';
import { expect, expectTypeOf, it } from 'vitest';
import { z } from 'zod';
import { EventBridgeEnvelope, SqsEnvelope } from '../../src/envelopes/index.js';
import { EventBridgeEnvelope } from '../../src/envelopes/eventbridge.js';
import { SqsEnvelope } from '../../src/envelopes/sqs.js';
import { parse } from '../../src/parser.js';
import type { EventBridgeEvent, SqsEvent } from '../../src/types/schema.js';
import { getTestEvent } from '../unit/helpers/utils.js';
Expand Down
Loading
Loading