feat: infinite query implementation
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
import 'package:fl_query/src/core/query.dart';
|
||||
import 'package:fl_query/src/core/retryer.dart';
|
||||
import 'package:fl_query/src/collections/refresh_config.dart';
|
||||
import 'package:fl_query/src/collections/retry_config.dart';
|
||||
|
||||
abstract class DefaultConstants {
|
||||
static const RetryConfig retryConfig = RetryConfig(
|
||||
@@ -11,5 +11,6 @@ abstract class DefaultConstants {
|
||||
static const RefreshConfig refreshConfig = RefreshConfig(
|
||||
staleDuration: Duration(seconds: 10),
|
||||
refreshInterval: Duration(seconds: 5),
|
||||
refreshOnMount: true,
|
||||
);
|
||||
}
|
||||
|
||||
@@ -0,0 +1,9 @@
|
||||
class JsonConfig<T> {
|
||||
final Map<String, dynamic> Function(T data) toJson;
|
||||
final T Function(Map<String, dynamic> json) fromJson;
|
||||
|
||||
const JsonConfig({
|
||||
required this.toJson,
|
||||
required this.fromJson,
|
||||
});
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
class RefreshConfig {
|
||||
final Duration staleDuration;
|
||||
final Duration refreshInterval;
|
||||
final bool refreshOnMount;
|
||||
|
||||
const RefreshConfig({
|
||||
required this.staleDuration,
|
||||
required this.refreshInterval,
|
||||
required this.refreshOnMount,
|
||||
});
|
||||
}
|
||||
@@ -0,0 +1,11 @@
|
||||
class RetryConfig {
|
||||
final int maxRetries;
|
||||
final Duration retryDelay;
|
||||
final Duration timeout;
|
||||
|
||||
const RetryConfig({
|
||||
required this.maxRetries,
|
||||
required this.retryDelay,
|
||||
required this.timeout,
|
||||
});
|
||||
}
|
||||
Reference in New Issue
Block a user