Files
imen_pishghaman/apps/api/dist/common/common.module.js
T

70 lines
2.8 KiB
JavaScript

var __decorate = (this && this.__decorate) || function (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;
};
var __metadata = (this && this.__metadata) || function (k, v) {
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
};
var AuditService_1, RevalidateService_1;
import { Global, Injectable, Logger, Module } from "@nestjs/common";
import { env } from "../config/env.js";
import { PrismaService } from "../prisma/prisma.service.js";
let AuditService = AuditService_1 = class AuditService {
prisma;
logger = new Logger(AuditService_1.name);
constructor(prisma) {
this.prisma = prisma;
}
log(userId, action, entity, entityId = "", summary = "") {
this.prisma.auditLog
.create({ data: { userId, action, entity, entityId: String(entityId), summary } })
.catch((e) => this.logger.warn(`audit log failed: ${String(e)}`));
}
};
AuditService = AuditService_1 = __decorate([
Injectable(),
__metadata("design:paramtypes", [PrismaService])
], AuditService);
export { AuditService };
let RevalidateService = RevalidateService_1 = class RevalidateService {
logger = new Logger(RevalidateService_1.name);
timer;
trigger() {
if (!env.WEB_REVALIDATE_URL)
return;
clearTimeout(this.timer);
this.timer = setTimeout(() => void this.run(), 1500);
this.timer.unref();
}
async run() {
try {
const res = await fetch(env.WEB_REVALIDATE_URL, {
method: "POST",
headers: { "x-revalidate-secret": env.REVALIDATE_SECRET ?? "" },
signal: AbortSignal.timeout(5000),
});
if (!res.ok)
this.logger.warn(`site revalidation returned ${res.status}`);
}
catch (e) {
this.logger.warn(`site revalidation failed: ${String(e)}`);
}
}
};
RevalidateService = RevalidateService_1 = __decorate([
Injectable()
], RevalidateService);
export { RevalidateService };
let CommonModule = class CommonModule {
};
CommonModule = __decorate([
Global(),
Module({
providers: [AuditService, RevalidateService],
exports: [AuditService, RevalidateService],
})
], CommonModule);
export { CommonModule };
//# sourceMappingURL=common.module.js.map