UNPKG

@aws-sdk/client-dynamodb

Version:

AWS SDK for JavaScript Dynamodb Client for Node.js, Browser and React Native

42 lines (41 loc) 2.09 kB
const { AwsSdkSigV4Signer } = require("@aws-sdk/core/httpAuthSchemes"); const { AwsJson1_0Protocol } = require("@aws-sdk/core/protocols"); const { DynamoDBJsonCodec } = require("@aws-sdk/dynamodb-codec"); const { NoOpLogger } = require("@smithy/core/client"); const { parseUrl } = require("@smithy/core/protocols"); const { fromBase64, fromUtf8, toBase64, toUtf8 } = require("@smithy/core/serde"); const { defaultDynamoDBHttpAuthSchemeProvider } = require("./auth/httpAuthSchemeProvider"); const { defaultEndpointResolver } = require("./endpoint/endpointResolver"); const { errorTypeRegistries } = require("./schemas/schemas_0"); exports.getRuntimeConfig = (config) => { return { apiVersion: "2012-08-10", base64Decoder: config?.base64Decoder ?? fromBase64, base64Encoder: config?.base64Encoder ?? toBase64, disableHostPrefix: config?.disableHostPrefix ?? false, endpointProvider: config?.endpointProvider ?? defaultEndpointResolver, extensions: config?.extensions ?? [], httpAuthSchemeProvider: config?.httpAuthSchemeProvider ?? defaultDynamoDBHttpAuthSchemeProvider, httpAuthSchemes: config?.httpAuthSchemes ?? [ { schemeId: "aws.auth#sigv4", identityProvider: (ipc) => ipc.getIdentityProvider("aws.auth#sigv4"), signer: new AwsSdkSigV4Signer(), }, ], logger: config?.logger ?? new NoOpLogger(), protocol: config?.protocol ?? AwsJson1_0Protocol, protocolSettings: config?.protocolSettings ?? { defaultNamespace: "com.amazonaws.dynamodb", errorTypeRegistries, xmlNamespace: "http://dynamodb.amazonaws.com/doc/2012-08-10/", version: "2012-08-10", serviceTarget: "DynamoDB_20120810", jsonCodec: new DynamoDBJsonCodec(), }, serviceId: config?.serviceId ?? "DynamoDB", urlParser: config?.urlParser ?? parseUrl, utf8Decoder: config?.utf8Decoder ?? fromUtf8, utf8Encoder: config?.utf8Encoder ?? toUtf8, }; };