@rytass/secret-adapter-vault-nestjs
Version:
Rytass Sceret Vault nestjs adapter
43 lines (40 loc) • 1.43 kB
JavaScript
import { Global, Module } from '@nestjs/common';
import { ConfigModule, ConfigService } from '@nestjs/config';
import { VAULT_PATH_TOKEN } from './constants.js';
import { VaultService } from './service.js';
function _ts_decorate(decorators, target, key, desc) {
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
else for(var i = decorators.length - 1; i >= 0; i--)if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
return c > 3 && r && Object.defineProperty(target, key, r), r;
}
class VaultModule {
static forRoot(options = {
path: '/'
}) {
return {
imports: [
ConfigModule.forRoot({
envFilePath: options.fallbackFile
})
],
module: VaultModule,
providers: [
ConfigService,
{
provide: VAULT_PATH_TOKEN,
useValue: options.path
},
VaultService
],
exports: [
VaultService
]
};
}
}
VaultModule = _ts_decorate([
Global(),
Module({})
], VaultModule);
export { VaultModule };