import 'package:auto_route/auto_route.dart'; import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:remever/common/functions.dart'; import 'package:remever/common/resources.dart'; import 'package:remever/common/widgets/typography.dart'; import 'package:remever/common/widgets/wspace.dart'; import 'package:remever/components/extensions/context.dart'; import 'package:remever/gen/assets.gen.dart'; import 'package:remever/screens/settings/cubit/settings_cubit.dart'; import 'package:remever/screens/settings/states/about.dart'; import 'package:remever/screens/settings/states/faq.dart'; import 'package:remever/screens/settings/states/initial.dart'; import 'package:remever/screens/settings/states/notifications.dart'; import 'package:remever/screens/settings/states/profile.dart'; import 'package:remever/widgets/primary_button.dart'; @RoutePage() class SettingsScreen extends StatelessWidget { const SettingsScreen({super.key}); @override Widget build(BuildContext context) { return BlocProvider( create: (BuildContext context) => SettingsCubit(), child: _buildMain(), ); } /// /// Построение основного блока /// Widget _buildMain() { return PopScope( canPop: false, child: BlocBuilder( builder: (BuildContext context, state) { return state.when( initial: () => InitialSettingsState(), profile: () => ProfileSettingsState(), notifications: () => NotificationsSettingsState(), faq: () => FaqSettingsState(), about: () => AboutSettingsState(), ); }, ), ); } }