import 'package:flutter/material.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:tunas/domains/account/account_bloc.dart'; import 'package:tunas/domains/budget/budget_bloc.dart'; import 'package:tunas/domains/category/category_bloc.dart'; import 'package:tunas/domains/transaction/transaction_bloc.dart'; import 'package:tunas/pages/budgets/budgets_page.dart'; import 'package:tunas/pages/data/data_page.dart'; import 'package:tunas/pages/stats/stats_page.dart'; import 'package:tunas/pages/transactions/transactions_page.dart'; import 'package:tunas/repositories/metadata/metadata_repository.dart'; import 'package:tunas/repositories/transactions/transactions_repository.dart'; class HomePage extends StatelessWidget { const HomePage({super.key}); @override Widget build(BuildContext context) { return MultiBlocProvider( providers: [ BlocProvider(create: (context) => AccountBloc(transactionsRepository: RepositoryProvider.of(context), metadataRepository: RepositoryProvider.of(context))), BlocProvider(create: (context) => TransactionBloc(transactionsRepository: RepositoryProvider.of(context))), BlocProvider(create: (context) => CategoryBloc(metadataRepository: RepositoryProvider.of(context))), BlocProvider(create: (context) => BudgetBloc(metadataRepository: RepositoryProvider.of(context))), ], child: DefaultTabController( length: 4, child: Scaffold( body: Stack( children: [ const TabBarView( children: [ StatsPage(), TransactionsPage(), BudgetsPage(), DataPage() ], ), Align( alignment: Alignment.bottomCenter, child: Container( margin: const EdgeInsets.all(15), decoration: BoxDecoration( color: const Color.fromARGB(255, 41, 49, 56), borderRadius: BorderRadius.circular(25) ), child: TabBar( tabAlignment: TabAlignment.center, splashBorderRadius: BorderRadius.circular(25), tabs: const [ Tab(icon: Icon(Icons.insights)), Tab(icon: Icon(Icons.receipt_long)), Tab(icon: Icon(Icons.pie_chart)), Tab(icon: Icon(Icons.settings)), ], ), ), ) ], ), ) ) ); } }