import 'package:enaklo_pos/core/components/spaces.dart'; import 'package:enaklo_pos/core/extensions/build_context_ext.dart'; import 'package:enaklo_pos/presentation/home/bloc/current_outlet/current_outlet_bloc.dart'; import 'package:enaklo_pos/presentation/home/dialog/outlet_dialog.dart'; import 'package:flutter/material.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; import '../../../core/components/search_input.dart'; import '../../../core/constants/colors.dart'; class HomeTitle extends StatelessWidget { final TextEditingController controller; final Function(String value)? onChanged; const HomeTitle({ super.key, required this.controller, this.onChanged, }); @override Widget build(BuildContext context) { return Container( height: context.deviceHeight * 0.1, padding: const EdgeInsets.symmetric(horizontal: 16.0, vertical: 12.0), decoration: BoxDecoration( color: AppColors.white, ), child: Row( mainAxisAlignment: MainAxisAlignment.spaceBetween, children: [ GestureDetector( onTap: () => showDialog( context: context, builder: (context) => OutletDialog(), ), child: BlocBuilder( builder: (context, state) { return Row( children: [ state.maybeWhen( orElse: () => const Text( 'DEFAULT OUTLET', style: TextStyle( color: AppColors.primary, fontSize: 18, fontWeight: FontWeight.w600, ), ), loading: () => Center( child: SizedBox( height: 16, width: 16, child: CircularProgressIndicator( color: AppColors.primary, ), ), ), loaded: (outlet) => Text( outlet.name ?? 'DEFAULT OUTLET', style: TextStyle( color: AppColors.primary, fontSize: 18, fontWeight: FontWeight.w600, ), ), ), SpaceWidth(2), Icon(Icons.keyboard_arrow_down, color: AppColors.primary), ], ); }, ), ), SizedBox( width: context.deviceWidth * 0.2, child: SearchInput( controller: controller, onChanged: onChanged, hintText: 'Search..', ), ), ], ), ); } }