From 1bd1aaf7cda4c3908fcb38190d98229c05ba5288 Mon Sep 17 00:00:00 2001 From: Alexander Schueren Date: Mon, 20 Jan 2025 09:59:52 +0100 Subject: [PATCH 1/3] add util-dynamodb as optional --- packages/parser/package.json | 3 +++ 1 file changed, 3 insertions(+) diff --git a/packages/parser/package.json b/packages/parser/package.json index d1774320af..9622cd77f8 100644 --- a/packages/parser/package.json +++ b/packages/parser/package.json @@ -376,6 +376,9 @@ }, "@middy/core": { "optional": true + }, + "@aws-sdk/util-dynamodb": { + "optional": true } }, "devDependencies": { From c83065de71517aabbbe7cebd845df2d7224ee2d4 Mon Sep 17 00:00:00 2001 From: Alexander Schueren Date: Mon, 20 Jan 2025 11:43:41 +0100 Subject: [PATCH 2/3] remove util-ddb and use commons implementation for unmarshall --- packages/parser/package.json | 26 +++++++------------------ packages/parser/src/helpers/dynamodb.ts | 4 ++-- 2 files changed, 9 insertions(+), 21 deletions(-) diff --git a/packages/parser/package.json b/packages/parser/package.json index 9622cd77f8..acc3644b49 100644 --- a/packages/parser/package.json +++ b/packages/parser/package.json @@ -191,10 +191,7 @@ }, "typesVersions": { "*": { - "types": [ - "./lib/cjs/types/index.d.ts", - "./lib/esm/types/index.d.ts" - ], + "types": ["./lib/cjs/types/index.d.ts", "./lib/esm/types/index.d.ts"], "middleware": [ "./lib/cjs/middleware/parser.d.ts", "./lib/esm/middleware/parser.d.ts" @@ -251,10 +248,7 @@ "./lib/cjs/schemas/lambda.d.ts", "./lib/esm/schemas/lambda.d.ts" ], - "schemas/s3": [ - "./lib/cjs/schemas/s3.d.ts", - "./lib/esm/schemas/s3.d.ts" - ], + "schemas/s3": ["./lib/cjs/schemas/s3.d.ts", "./lib/esm/schemas/s3.d.ts"], "schemas/ses": [ "./lib/cjs/schemas/ses.d.ts", "./lib/esm/schemas/ses.d.ts" @@ -331,17 +325,12 @@ "./lib/cjs/envelopes/vpc-latticev2.d.ts", "./lib/esm/envelopes/vpc-latticev2.d.ts" ], - "helpers": [ - "./lib/cjs/helpers.d.ts", - "./lib/esm/helpers.d.ts" - ] + "helpers": ["./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" @@ -365,8 +354,10 @@ "typescript", "nodejs" ], + "dependencies": { + "@aws-lambda-powertools/commons": "^2.13.0" + }, "peerDependencies": { - "@aws-sdk/util-dynamodb": ">=3.x", "@middy/core": "4.x || 5.x || 6.x", "zod": ">=3.x" }, @@ -376,9 +367,6 @@ }, "@middy/core": { "optional": true - }, - "@aws-sdk/util-dynamodb": { - "optional": true } }, "devDependencies": { diff --git a/packages/parser/src/helpers/dynamodb.ts b/packages/parser/src/helpers/dynamodb.ts index 7e1755ca2a..7addeca6fa 100644 --- a/packages/parser/src/helpers/dynamodb.ts +++ b/packages/parser/src/helpers/dynamodb.ts @@ -1,5 +1,5 @@ +import { unmarshallDynamoDB } from '@aws-lambda-powertools/commons/utils/unmarshallDynamoDB'; import type { AttributeValue } from '@aws-sdk/client-dynamodb'; -import { unmarshall } from '@aws-sdk/util-dynamodb'; import { type ZodTypeAny, z } from 'zod'; /** @@ -69,7 +69,7 @@ const DynamoDBMarshalled = (schema: T) => ]) .transform((str, ctx) => { try { - return unmarshall(str); + return unmarshallDynamoDB(str); } catch (err) { ctx.addIssue({ code: 'custom', From 21eaf7f2bfeaa14a6de583c7b7964be09eff1b37 Mon Sep 17 00:00:00 2001 From: Alexander Schueren Date: Mon, 20 Jan 2025 11:46:12 +0100 Subject: [PATCH 3/3] update package lock --- package-lock.json | 4 +++- packages/parser/package.json | 19 +++++++++++++++---- 2 files changed, 18 insertions(+), 5 deletions(-) diff --git a/package-lock.json b/package-lock.json index d61d6cea1d..b6da3cec43 100644 --- a/package-lock.json +++ b/package-lock.json @@ -17208,11 +17208,13 @@ "name": "@aws-lambda-powertools/parser", "version": "2.13.0", "license": "MIT-0", + "dependencies": { + "@aws-lambda-powertools/commons": "^2.13.0" + }, "devDependencies": { "@anatine/zod-mock": "^3.13.3" }, "peerDependencies": { - "@aws-sdk/util-dynamodb": ">=3.x", "@middy/core": "4.x || 5.x || 6.x", "zod": ">=3.x" }, diff --git a/packages/parser/package.json b/packages/parser/package.json index acc3644b49..caf8da2320 100644 --- a/packages/parser/package.json +++ b/packages/parser/package.json @@ -191,7 +191,10 @@ }, "typesVersions": { "*": { - "types": ["./lib/cjs/types/index.d.ts", "./lib/esm/types/index.d.ts"], + "types": [ + "./lib/cjs/types/index.d.ts", + "./lib/esm/types/index.d.ts" + ], "middleware": [ "./lib/cjs/middleware/parser.d.ts", "./lib/esm/middleware/parser.d.ts" @@ -248,7 +251,10 @@ "./lib/cjs/schemas/lambda.d.ts", "./lib/esm/schemas/lambda.d.ts" ], - "schemas/s3": ["./lib/cjs/schemas/s3.d.ts", "./lib/esm/schemas/s3.d.ts"], + "schemas/s3": [ + "./lib/cjs/schemas/s3.d.ts", + "./lib/esm/schemas/s3.d.ts" + ], "schemas/ses": [ "./lib/cjs/schemas/ses.d.ts", "./lib/esm/schemas/ses.d.ts" @@ -325,12 +331,17 @@ "./lib/cjs/envelopes/vpc-latticev2.d.ts", "./lib/esm/envelopes/vpc-latticev2.d.ts" ], - "helpers": ["./lib/cjs/helpers.d.ts", "./lib/esm/helpers.d.ts"] + "helpers": [ + "./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"