fix(deno): lazily import @db/sqlite
This commit is contained in:
parent
341e8e9d3e
commit
33515169ff
1 changed files with 10 additions and 1 deletions
|
@ -1,6 +1,6 @@
|
||||||
import { BaseSqliteStorageDriver, ISqliteDatabase } from '@mtcute/core'
|
import { BaseSqliteStorageDriver, ISqliteDatabase } from '@mtcute/core'
|
||||||
|
|
||||||
import { Database } from '@db/sqlite'
|
let Database: typeof import('@db/sqlite').Database
|
||||||
|
|
||||||
export interface SqliteStorageDriverOptions {
|
export interface SqliteStorageDriverOptions {
|
||||||
/**
|
/**
|
||||||
|
@ -24,6 +24,15 @@ export class SqliteStorageDriver extends BaseSqliteStorageDriver {
|
||||||
super()
|
super()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
async _load(): Promise<void> {
|
||||||
|
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 {
|
_createDatabase(): ISqliteDatabase {
|
||||||
const db = new Database(this.filename, {
|
const db = new Database(this.filename, {
|
||||||
int64: true,
|
int64: true,
|
||||||
|
|
Loading…
Reference in a new issue