Spaces:
Configuration error
Configuration error
| import type { DatabaseSync } from "node:sqlite"; | |
| export async function loadSqliteVecExtension(params: { | |
| db: DatabaseSync; | |
| extensionPath?: string; | |
| }): Promise<{ ok: boolean; extensionPath?: string; error?: string }> { | |
| try { | |
| const sqliteVec = await import("sqlite-vec"); | |
| const resolvedPath = params.extensionPath?.trim() ? params.extensionPath.trim() : undefined; | |
| const extensionPath = resolvedPath ?? sqliteVec.getLoadablePath(); | |
| params.db.enableLoadExtension(true); | |
| if (resolvedPath) { | |
| params.db.loadExtension(extensionPath); | |
| } else { | |
| sqliteVec.load(params.db); | |
| } | |
| return { ok: true, extensionPath }; | |
| } catch (err) { | |
| const message = err instanceof Error ? err.message : String(err); | |
| return { ok: false, error: message }; | |
| } | |
| } | |