fix Capacitor to use the same migrations (migrations run but accounts aren't created)

This commit is contained in:
2025-06-04 22:01:14 -06:00
parent 705c6092a3
commit 8e57692387
6 changed files with 96 additions and 270 deletions

View File

@@ -1,5 +1,4 @@
import migrationService from "../services/migrationService";
import type { QueryExecResult } from "../interfaces/database";
import { DEFAULT_ENDORSER_API_SERVER } from "@/constants/app";
import { arrayBufferToBase64 } from "@/libs/crypto";
@@ -119,16 +118,21 @@ const MIGRATIONS = [
},
];
export async function registerMigrations(): Promise<void> {
// Register all migrations
for (const migration of MIGRATIONS) {
await migrationService.registerMigration(migration);
}
}
export async function runMigrations(
sqlExec: (sql: string, params?: unknown[]) => Promise<Array<QueryExecResult>>,
/**
* @param sqlExec - A function that executes a SQL statement and returns the result
* @param extractMigrationNames - A function that extracts the names (string array) from "select name from migrations"
*/
export async function runMigrations<T>(
sqlExec: (sql: string) => Promise<unknown>,
sqlQuery: (sql: string) => Promise<T>,
extractMigrationNames: (result: T) => Set<string>,
): Promise<void> {
await registerMigrations();
await migrationService.runMigrations(sqlExec);
for (const migration of MIGRATIONS) {
migrationService.registerMigration(migration);
}
await migrationService.runMigrations(
sqlExec,
sqlQuery,
extractMigrationNames,
);
}