This commit introduces a passenger counter component to the home screen, allowing users to specify the number of adults, teens, and children for their flight search.
Key changes:
- Added `ui:sharedui` module dependency to `ui:home`.
- Updated `PreviewDevices` annotation to include `showBackground = true`.
- Modified `HomeScreen`:
- Added parameters to `HomeContent` and `SearchForm` for passenger count change callbacks.
- Integrated the `Counter` composable from `ui:sharedui` for adults, teens, and children.
- Added `VerticalDivider` between counters.
- Updated previews to reflect passenger counter integration.
- Updated `HomeScreenViewModel`:
- Introduced `MutableStateFlow` for `adultCount`, `teenCount`, and `childCount`.
- Created `passengersState` flow by combining individual passenger count flows.
- Updated `homeUiState` to include `passengersState`.
- Added public functions `updateAdultCount`, `updateTeenCount`, and `updateChildCount` to modify passenger counts with validation.
- Added `PassengersState` data class to hold passenger counts.
- Updated `Counter` composable in `ui:sharedui`:
- Added an optional `minVal` parameter (defaulting to 0) to define the minimum allowed value for the counter.
- Ensured the decrement button is disabled when the counter value reaches `minVal`.
- Centered text in increment and decrement buttons.