47 lines
2.7 KiB
Dart
47 lines
2.7 KiB
Dart
import 'package:flutter/material.dart';
|
|
import 'package:flutter/foundation.dart'; // Для kIsWeb
|
|
// import 'package:drift/wasm.dart'; // <-- Удалить этот импорт
|
|
import 'app.dart'; // Import the new app root widget
|
|
import 'database/database.dart'; // Import the database
|
|
|
|
Future<void> main() async {
|
|
// Необходимо для асинхронных операций перед runApp, например, инициализации БД
|
|
WidgetsFlutterBinding.ensureInitialized();
|
|
|
|
// --- Удалить весь этот блок ---
|
|
// // Инициализация WASM-модуля SQLite для веб-платформы
|
|
// if (kIsWeb) {
|
|
// print("Running on Web, attempting to initialize sqlite3.wasm...");
|
|
// // Указываем Drift, где найти файл sqlite3.wasm.
|
|
// // WasmDatabase.resolveFile попытается найти его автоматически (обычно в корне /sqlite3.wasm).
|
|
// final result = await WasmDatabase.resolveFile('sqlite3.wasm'); // <-- Ошибка здесь
|
|
//
|
|
// if (result.isSuccessful) {
|
|
// print("sqlite3.wasm loaded successfully.");
|
|
// } else {
|
|
// // Если файл не найден или произошла ошибка загрузки
|
|
// print("Error loading sqlite3.wasm: ${result.errorMessage}");
|
|
// // Здесь можно предпринять действия, если загрузка не удалась,
|
|
// // например, показать сообщение об ошибке пользователю или использовать
|
|
// // альтернативное хранилище. Пока просто выводим ошибку в консоль.
|
|
// // Приложение может не работать корректно без базы данных.
|
|
// }
|
|
// } else {
|
|
// print("Running on Native platform, skipping WASM initialization.");
|
|
// }
|
|
// --- Конец удаляемого блока ---
|
|
|
|
|
|
// Создаем единственный экземпляр базы данных для всего приложения
|
|
// WebDatabase (вызываемый через connect() на вебе) должен сам справиться с WASM
|
|
final database = AppDatabase();
|
|
|
|
// Опционально: Вставляем начальные данные, если база данных пуста
|
|
// Это полезно для первого запуска или демонстрации
|
|
// Делаем это после создания экземпляра БД
|
|
await database.insertInitialDataIfNeeded();
|
|
|
|
// Запускаем приложение, передавая экземпляр базы данных
|
|
runApp(MyApp(database: database));
|
|
}
|