mirror of
https://github.com/AdrianKuta/android-challange-adrian-kuta.git
synced 2025-07-01 20:58:00 +02:00
This commit introduces the ability to search for flights based on user-defined criteria. Key changes: - Added `GetFlightsSearchContentUseCase` interface in the domain layer and its implementation `GetFlightsSearchContentUseCaseImpl` in the repository layer to handle flight search logic. - Implemented `FlightDomainMapper` to map `FlightResponse` from the API to the domain `Flight` model. - Updated `NetworkModule`: - Introduced `ServicesAPI` and `NativeAppsAPI` qualifiers to differentiate between Retrofit instances for different Ryanair APIs. - Configured a new Retrofit instance for the `nativeapps.ryanair.com` base URL. - Modified `FlightService` to use the `nativeapps.ryanair.com` base URL. - Updated `FlightService` endpoint to `api/v4/en-gb/Availability`. - Integrated `GetFlightsSearchContentUseCase` into `HomeScreenViewModel` to trigger flight searches. - Created `SearchOptions` data class in the domain layer to encapsulate search parameters. - Added `GetFlightsSearchContentUseCaseModule` to provide the use case implementation via Hilt.