26 lines
677 B
Dart
26 lines
677 B
Dart
import 'package:flutter/material.dart';
|
|
import 'package:food_health/api/dto/user_profile_dto.dart';
|
|
|
|
class SelectionState extends ChangeNotifier {
|
|
UserProfileDto userProfile = UserProfileDto();
|
|
|
|
SelectionState(this.userProfile);
|
|
|
|
void update(void Function(UserProfileDto) updater) {
|
|
updater(userProfile);
|
|
notifyListeners();
|
|
}
|
|
}
|
|
|
|
class SelectionProvider extends InheritedNotifier<SelectionState> {
|
|
const SelectionProvider({
|
|
super.key,
|
|
required SelectionState super.notifier,
|
|
required super.child,
|
|
});
|
|
|
|
static SelectionState of(BuildContext context) {
|
|
return context.dependOnInheritedWidgetOfExactType<SelectionProvider>()!.notifier!;
|
|
}
|
|
}
|