import 'dart:async'; import 'package:flutter/widgets.dart'; import 'package:path/path.dart'; import 'package:sqflite/sqflite.dart'; import 'package:fooder/storage/product.dart'; class Storage { Database db; ProductStorage product; Storage({required this.db, required this.product}); static Future create() async { var db = await database(); return Storage(db: db, product: ProductStorage(db: db)); } static Future createTables(Database db, int version) async { await ProductStorage.createTable(db, version); } static Future database({String path = "storage.db"}) async { WidgetsFlutterBinding.ensureInitialized(); return openDatabase( join(await getDatabasesPath(), path), onCreate: createTables, version: 1, ); } }