import 'package:flutter_riverpod/flutter_riverpod.dart'; import 'package:flutter_secure_storage/flutter_secure_storage.dart'; import 'package:softplayer_dart_proto/src/accounts/v1/accounts_v1.pbgrpc.dart'; import 'package:softplayer_web/features/authorization/data/public_accounts_grpc_repository.dart'; class DashboardState { final bool authorized; const DashboardState({this.authorized = false}); DashboardState copyWith({bool? authorized}) { return DashboardState(authorized: authorized ?? this.authorized); } } final dashboardControllerProvider = AsyncNotifierProvider( DashboardController.new, ); class DashboardController extends AsyncNotifier { static const _storage = FlutterSecureStorage(); @override Future build() async { final accessToken = await _storage.read(key: "x-access-token"); if (accessToken == null || accessToken.isEmpty) { return const DashboardState(authorized: false); } return const DashboardState(authorized: true); } }