2024-08-04 20:14:14 +02:00
|
|
|
import 'package:fooder/client/api.dart';
|
|
|
|
import 'package:fooder/client/product.dart';
|
|
|
|
import 'package:fooder/client/entry.dart';
|
|
|
|
import 'package:fooder/client/preset.dart';
|
|
|
|
import 'package:fooder/client/meal.dart';
|
|
|
|
import 'package:fooder/client/diary.dart';
|
|
|
|
|
|
|
|
class Client {
|
|
|
|
final ApiClient api;
|
|
|
|
final ProductClient product;
|
|
|
|
final EntryClient entry;
|
|
|
|
final PresetClient preset;
|
|
|
|
final MealClient meal;
|
|
|
|
final DiaryClient diary;
|
|
|
|
|
|
|
|
Client(
|
|
|
|
{required this.api,
|
|
|
|
required this.product,
|
|
|
|
required this.entry,
|
|
|
|
required this.meal,
|
|
|
|
required this.diary,
|
|
|
|
required this.preset});
|
|
|
|
|
|
|
|
static Future<Client> create({required String baseUrl}) async {
|
|
|
|
var api = await ApiClient.create(baseUrl: baseUrl);
|
|
|
|
|
|
|
|
return Client(
|
|
|
|
api: api,
|
|
|
|
product: ProductClient(apiClient: api),
|
|
|
|
preset: PresetClient(apiClient: api),
|
|
|
|
meal: MealClient(apiClient: api),
|
|
|
|
diary: DiaryClient(apiClient: api),
|
|
|
|
entry: EntryClient(apiClient: api));
|
2023-10-27 17:10:09 +02:00
|
|
|
}
|
2023-07-29 18:10:10 +02:00
|
|
|
}
|