UNPKG

synt_backend

Version:

Synt light-weight node backend service

81 lines (78 loc) 1.88 kB
"use strict"; module.exports = { up: async (queryInterface, Sequelize) => { await queryInterface.createTable("MeetingUser", { id: { allowNull: false, autoIncrement: true, primaryKey: true, type: Sequelize.INTEGER, }, MeetingId: { type: Sequelize.INTEGER, references: { model: "Meetings", key: "id", }, allowNull: false, defaultValue: Sequelize.UUIDV4, onUpdate: "CASCADE", onDelete: "CASCADE", }, UserId: { type: Sequelize.INTEGER, references: { model: "Users", key: "id", }, allowNull: false, defaultValue: Sequelize.UUIDV4, onUpdate: "CASCADE", onDelete: "CASCADE", }, is_confirmed_at: { type: Sequelize.DATE, }, has_left_at: { type: Sequelize.DATE, }, has_power_of_attorney: { type: Sequelize.BOOLEAN, defaultValue: false, }, PowerOfAttorneyGivenToUserId: { type: Sequelize.INTEGER, references: { model: "Users", key: "id", }, allowNull: true, defaultValue: Sequelize.UUIDV4, onUpdate: "CASCADE", onDelete: "CASCADE", }, power_of_attorney_given_to_first_name: { type: Sequelize.STRING, allowNull: true, }, power_of_attorney_given_to_last_name: { type: Sequelize.STRING, allowNull: true, }, power_of_attorney_token: { type: Sequelize.STRING, }, createdAt: { allowNull: false, type: Sequelize.DATE, }, updatedAt: { allowNull: false, type: Sequelize.DATE, }, }); }, down: async (queryInterface) => { await queryInterface.dropTable("MeetingUser"); }, };