From 72ba7b81a4f9aa4f4176fc06f9f5905a20367e20 Mon Sep 17 00:00:00 2001 From: Maksim Sitnikov Date: Tue, 21 May 2024 21:24:38 +0300 Subject: [PATCH] feat: add onlyOne option to migrate and rollback helpers --- lib/core.ts | 21 +++++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) diff --git a/lib/core.ts b/lib/core.ts index e1d8973..f50db7b 100644 --- a/lib/core.ts +++ b/lib/core.ts @@ -103,13 +103,26 @@ export function initDB({ await db.ready(); await db.primary.migrate.rollback({}, true); }, - rollbackDatabase: async function () { + rollbackDatabase: async function (args?: {onlyOne: boolean}) { await db.ready(); - await db.primary.migrate.rollback({}); + + const onlyOne = args ? args.onlyOne : false; + + if (onlyOne) { + await db.primary.migrate.down(); + } else { + await db.primary.migrate.rollback({}); + } }, - migrateDatabase: async function () { + migrateDatabase: async function (args?: {onlyOne: boolean}) { await db.ready(); - await db.primary.migrate.latest(); + + const onlyOne = args ? args.onlyOne : false; + if (onlyOne) { + await db.primary.migrate.up(); + } else { + await db.primary.migrate.latest(); + } }, prepareDatabase: async function () { await db.primary.migrate.latest();