diff --git a/packages/deno/src/sqlite/driver.ts b/packages/deno/src/sqlite/driver.ts index e983f027..fd58c458 100644 --- a/packages/deno/src/sqlite/driver.ts +++ b/packages/deno/src/sqlite/driver.ts @@ -1,6 +1,6 @@ import { BaseSqliteStorageDriver, ISqliteDatabase } from '@mtcute/core' -import { Database } from '@db/sqlite' +let Database: typeof import('@db/sqlite').Database export interface SqliteStorageDriverOptions { /** @@ -24,6 +24,15 @@ export class SqliteStorageDriver extends BaseSqliteStorageDriver { super() } + async _load(): Promise { + if (!Database) { + // we load this lazily to avoid loading ffi if it's not needed, + // in case the user doesn't use sqlite storage + Database = (await import('@db/sqlite')).Database + } + super._load() + } + _createDatabase(): ISqliteDatabase { const db = new Database(this.filename, { int64: true,