UNPKG

nest-aws-sdk

Version:

A thin wrapping layer around the aws-sdk package for clean NestJS dependency injection.

35 lines 1.38 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.createAwsServiceProvider = void 0; const aws_service_factory_1 = require("./aws-service.factory"); const tokens_1 = require("./tokens"); function createAwsServiceProvider(serviceDetails) { let service; let serviceOptionsOverride; const asWithOptions = serviceDetails; if (asWithOptions.service) { service = asWithOptions.service; serviceOptionsOverride = asWithOptions.serviceOptions; } else { service = serviceDetails; } return { provide: (0, tokens_1.getAwsServiceToken)(service), useFactory: (serviceFactory, optionsFactory) => { const optionsFactoryToUse = serviceOptionsOverride ? serviceOptionsOverride : optionsFactory; const defaultServiceOptions = optionsFactoryToUse && typeof optionsFactoryToUse === 'function' ? optionsFactoryToUse() : optionsFactoryToUse; return serviceFactory.create(service, defaultServiceOptions); }, inject: [ aws_service_factory_1.AwsServiceFactory, tokens_1.AWS_SERVICE_CONFIGURATION_OPTIONS_FACTORY_TOKEN, ], }; } exports.createAwsServiceProvider = createAwsServiceProvider; //# sourceMappingURL=aws-service-provider.factory.js.map