nest-aws-sdk
Version:
A thin wrapping layer around the aws-sdk package for clean NestJS dependency injection.
38 lines • 1.43 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.createExportableProvider = void 0;
function isFactoryProvider(provider) {
return provider && Object.keys(provider).includes('useFactory');
}
function isValueProvider(provider) {
return provider && Object.keys(provider).includes('useValue');
}
function createExportableProvider(provide, asyncModuleProvider) {
var _a;
if (isFactoryProvider(asyncModuleProvider)) {
const factoryProvider = asyncModuleProvider;
const provider = {
provide,
useFactory: factoryProvider.useFactory,
inject: factoryProvider.inject,
};
return {
provider,
exports: [provide],
imports: ((_a = factoryProvider === null || factoryProvider === void 0 ? void 0 : factoryProvider.imports) === null || _a === void 0 ? void 0 : _a.length)
? [...factoryProvider.imports]
: [],
};
}
else if (isValueProvider(asyncModuleProvider)) {
const valueProvider = asyncModuleProvider;
const provider = {
provide,
useValue: valueProvider.useValue,
};
return { provider, exports: [provide], imports: [] };
}
return { provider: null, exports: [], imports: [] };
}
exports.createExportableProvider = createExportableProvider;
//# sourceMappingURL=module-utils.js.map