npm install --save @effect-aws/lib-dynamodb
With default DynamoDBClient instance:
import { DynamoDBDocument } from "@effect-aws/lib-dynamodb"
const program = DynamoDBDocument.put(args)
const result = pipe(
program,
Effect.provide(DynamoDBDocument.defaultLayer),
Effect.runPromise
)
With custom DynamoDBClient instance:
import { DynamoDBDocument } from "@effect-aws/lib-dynamodb"
const program = DynamoDBDocument.put(args)
const result = await pipe(
program,
Effect.provide(
DynamoDBDocumentClient.from(
new DynamoDBClient({ region: "eu-central-1" }),
{ marshallOptions: { removeUndefinedValues: true } }
)
),
Effect.runPromise
)
With custom DynamoDBClient configuration:
import { DynamoDBDocument } from "@effect-aws/lib-dynamodb"
const program = DynamoDBDocument.put(args)
const result = await pipe(
program,
Effect.provide(
DynamoDBDocument.layer({
marshallOptions: { removeUndefinedValues: true }
})
),
Effect.runPromiseExit
)
or use DynamoDBDocument.baseLayer((default) => DynamoDBDocumentClient.from(new DynamoDBClient({ ...default, region: "eu-central-1" }), { marshallOptions: { removeUndefinedValues: true } }))