deno support #52

Merged
teidesu merged 10 commits from deno into master 2024-04-30 15:58:04 +03:00
Showing only changes of commit 33515169ff - Show all commits

View file

@ -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,