UNPKG

@emigrate/cli

Version:

Emigrate is a tool for managing database migrations. It is designed to be simple yet support advanced setups, modular and extensible.

19 lines 890 B
import { toMigrationMetadata } from './to-migration-metadata.js'; import { getMigrations as getMigrationsOriginal } from './get-migrations.js'; export async function* collectMigrations(cwd, directory, history, getMigrations = getMigrationsOriginal) { const allMigrations = await getMigrations(cwd, directory); const seen = new Set(); for await (const entry of history) { const migration = allMigrations.find((migrationFile) => { return migrationFile.name === entry.name || migrationFile.name === `${entry.name}.js`; }); if (!migration) { continue; } yield toMigrationMetadata({ ...entry, name: migration.name }, { cwd, directory }); seen.add(migration.name); } yield* allMigrations.filter((migration) => !seen.has(migration.name)); seen.clear(); } //# sourceMappingURL=collect-migrations.js.map