UNPKG

ts-logs

Version:

This package provide a skd for audit and manager logs in nodejs and express

29 lines 1.25 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.autoPublishLog = void 0; const can_auto_publish_util_1 = require("../utils/can-auto-publish.util"); const global_log_1 = require("./global-log"); /** * @description Add middleware to listen response and publish log when status match if options. * @param config connection configuration to connect on provider. * @param options option to check status before publish. You can define publish log only when status match with options. * @returns middleware to apply. * @default publishWhenStatus every statusCode. * @default publish only when exist some step on log. */ const autoPublishLog = (config, options) => { return async (req, res, next) => { res.on('finish', async () => { const canPublish = (0, can_auto_publish_util_1.default)(req, res, options); if (!canPublish) return next(); const log = req?.log || global_log_1.default.singleton(); await log.publish(config); return next(); }); return next(); }; }; exports.autoPublishLog = autoPublishLog; exports.default = exports.autoPublishLog; //# sourceMappingURL=auto-publish-log.builder.js.map