2weekmail/api/db/migrations/20250318185713_invite_table.js
2025-03-19 19:56:57 -05:00

30 lines
807 B
JavaScript

/**
* @param { import("knex").Knex } knex
* @returns { Promise<void> }
*/
exports.up = function(knex) {
return knex.schema.hasTable('invites').then(function(exists) {
if (!exists) {
return knex.schema.createTable('invites', (table) => {
table.increments('id').primary();
table.integer('user_id').unsigned().references('id').inTable('users');
table.string('token').notNullable();
table.datetime('created').defaultTo(knex.fn.now());
table.datetime('expires').notNullable();
});
}
});
};
/**
* @param { import("knex").Knex } knex
* @returns { Promise<void> }
*/
exports.down = function(knex) {
return knex.schema.hasTable('invites').then(function(exists) {
if (exists) {
return knex.schema.dropTable('invites');
}
});
};