add http_get_cache

This commit is contained in:
2026-01-20 23:18:39 -08:00
parent 572c0789b7
commit 811e884481
168 changed files with 37335 additions and 0 deletions
@@ -0,0 +1,44 @@
export 'src/client/http_client.dart';
export 'src/http_get_cache.dart';
import 'dart:typed_data';
import 'package:sqlite3/common.dart';
import 'http_get_cache.dart';
import 'src/constants.dart';
export 'src/store/base.dart';
export 'src/store/sqlite.dart';
export 'src/database/settings.dart';
export 'src/database/connection/connect.dart';
export 'src/database/database.dart';
Future<HttpGetCacheDatabase> initHttpGetCache({
String name = 'http-get-cache',
bool logStatements = false,
String driftWorkerUri = 'drift_worker.js',
String sqlite3Uri = kDebugMode ? 'sqlite3.debug.wasm' : 'sqlite3.wasm',
void Function(CommonDatabase)? setup,
Future<Uint8List?> Function()? initializeDatabase,
required String cachePath,
required String databasePath,
}) async {
final settings = DatabaseSettings(
name,
logStatements: logStatements,
driftWorkerUri: driftWorkerUri,
sqlite3Uri: sqlite3Uri,
setup: setup,
initializeDatabase: initializeDatabase,
cacheDir: cachePath,
databaseDir: databasePath,
);
final e = createExecutor(settings);
final database = HttpGetCacheDatabase(settings, e);
HttpGetCacheDatabase.instance = database;
if (!kIsWeb) {
SqliteHttpCacheStore.deleteExpired(database).ignore();
}
return database;
}