@nestjs-mod/terminus
Version:
Terminus integration provides readiness/liveness health checks for NestJS-mod (Wrapper for https://www.npmjs.com/package/@nestjs/terminus)
29 lines • 1.78 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.TerminusHealthCheckService = void 0;
const tslib_1 = require("tslib");
const common_1 = require("@nestjs/common");
const terminus_1 = require("@nestjs/terminus");
const terminus_configuration_1 = require("./terminus.configuration");
const terminus_decorators_1 = require("./terminus.decorators");
let TerminusHealthCheckService = class TerminusHealthCheckService {
constructor(terminusHealthCheckFeatureConfigurations, terminusHealthCheckConfiguration, healthCheckService) {
this.terminusHealthCheckFeatureConfigurations = terminusHealthCheckFeatureConfigurations;
this.terminusHealthCheckConfiguration = terminusHealthCheckConfiguration;
this.healthCheckService = healthCheckService;
}
async check() {
return this.healthCheckService.check([
...(this.terminusHealthCheckConfiguration.standardHealthIndicators ?? []).map(({ check }) => check),
...this.terminusHealthCheckFeatureConfigurations.map((terminusHealthCheckFeatureConfiguration) => () => terminusHealthCheckFeatureConfiguration.featureConfiguration.isHealthy(terminusHealthCheckFeatureConfiguration.featureConfiguration.name)),
].filter(Boolean));
}
};
exports.TerminusHealthCheckService = TerminusHealthCheckService;
exports.TerminusHealthCheckService = TerminusHealthCheckService = tslib_1.__decorate([
(0, common_1.Injectable)(),
tslib_1.__param(0, (0, terminus_decorators_1.InjectTerminusHealthCheckFeatures)()),
tslib_1.__metadata("design:paramtypes", [Array, terminus_configuration_1.TerminusHealthCheckConfiguration,
terminus_1.HealthCheckService])
], TerminusHealthCheckService);
//# sourceMappingURL=terminus.service.js.map