fix: use default WebDatabase constructor for web connection

This commit is contained in:
2025-05-04 13:19:27 +03:00
parent e7cc15872a
commit dca892c8a0
@@ -1,30 +1,15 @@
// lib/database/database_connection/connection_web.dart
import 'package:drift/drift.dart';
import 'package:drift/web.dart';
import 'package:drift/wasm.dart'; // Импорт для конфигурации WASM
// import 'package:drift/wasm.dart'; // <-- Удалить этот импорт, он больше не нужен здесь
QueryExecutor connect() {
print("Connecting to database using WebDatabase with explicit WASM config");
print("Connecting to database using WebDatabase (default configuration)");
// Используем конструктор withOptions для явной передачи конфигурации WASM
return WebDatabase.withOptions(
// Используем стандартный конструктор WebDatabase.
// Drift попытается автоматически найти и загрузить sqlite3.wasm по пути /sqlite3.wasm
return WebDatabase(
'db', // Имя базы данных в IndexedDB
logStatements: false,
options: DriftWebOptions(
// Явно указываем Drift, где искать файл WASM.
// WasmDatabase.driver() обрабатывает загрузку и инициализацию.
// '/sqlite3.wasm' - это стандартный путь, куда Flutter помещает файл.
wasmModule: WasmDatabase.driver(
// Указываем URI к файлу sqlite3.wasm
sqlite3WasmUri: Uri.parse('/sqlite3.wasm'),
// driftWorkerUri не обязателен, если не используются веб-воркеры,
// но можно указать для полноты:
// driftWorkerUri: Uri.parse('/drift_worker.js'),
),
// Можно также явно указать тип хранилища, если нужно (по умолчанию IndexedDB)
// storage: DriftWebStorage.indexedDb('db'),
// или localStorage, если IndexedDB не поддерживается/нежелателен
// storage: DriftWebStorage.localStorage('db'),
),
);
}