fooder-app/lib/client.dart

35 lines
1,004 B
Dart

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));
}
}