@nestjs-mod/prisma
Version:
Next-generation Node.js and TypeScript ORM for NestJS-mod (preview version only for Postgres)
56 lines • 1.97 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.PrismaSchemaFileService = void 0;
const tslib_1 = require("tslib");
const common_1 = require("@nestjs/common");
const fs_1 = require("fs");
const path_1 = require("path");
const prisma_errors_1 = require("../prisma-errors");
const prisma_configuration_1 = require("../prisma.configuration");
let PrismaSchemaFileService = class PrismaSchemaFileService {
constructor(prismaConfiguration) {
this.prismaConfiguration = prismaConfiguration;
}
getPrismaSchemaFilePath() {
if (!this.prismaConfiguration.schemaFile) {
throw new prisma_errors_1.PrismaError('prismaSchemaFile not set');
}
return this.prismaConfiguration.schemaFile;
}
read() {
const prismaSchemaFile = this.getPrismaSchemaFilePath();
if (!prismaSchemaFile) {
return undefined;
}
try {
return (0, fs_1.readFileSync)(prismaSchemaFile).toString();
}
catch (err) {
return undefined;
}
}
write(data) {
const prismaSchemaFile = this.getPrismaSchemaFilePath();
if (!prismaSchemaFile) {
return;
}
try {
const fileDir = (0, path_1.dirname)(prismaSchemaFile);
if (fileDir) {
if (!(0, fs_1.existsSync)(fileDir)) {
(0, fs_1.mkdirSync)(fileDir, { recursive: true });
}
(0, fs_1.writeFileSync)(prismaSchemaFile, data);
}
}
catch (err) {
//
}
}
};
exports.PrismaSchemaFileService = PrismaSchemaFileService;
exports.PrismaSchemaFileService = PrismaSchemaFileService = tslib_1.__decorate([
(0, common_1.Injectable)(),
tslib_1.__metadata("design:paramtypes", [prisma_configuration_1.PrismaConfiguration])
], PrismaSchemaFileService);
//# sourceMappingURL=prisma-schema-file.service.js.map