UNPKG

synt_backend

Version:

Synt light-weight node backend service

42 lines (41 loc) 1.02 kB
"use strict"; const { Model } = require("sequelize"); import { getPresignedUrl } from "./../../helpers/upload"; module.exports = (sequelize, DataTypes) => { class Image extends Model { /** * Helper method for defining associations. * This method is not a part of Sequelize lifecycle. * The `models/index` file will call this method automatically. */ static associate(models) { // define association here Image.belongsTo(models.Incident); } async getPresignedUrl() { try { return await getPresignedUrl({ bucket: this.bucket, key: this.key, }); } catch (error) { console.error("Error generating signed URL:", error); return null; } } } Image.init( { original_name: DataTypes.STRING, bucket: DataTypes.STRING, key: DataTypes.STRING, url: DataTypes.STRING, type: DataTypes.STRING, }, { sequelize, modelName: "Image", } ); return Image; };