├── .gitignore ├── README.MD ├── app ├── .gitignore ├── build.gradle.kts ├── proguard-rules.pro └── src │ ├── androidTest │ └── java │ │ └── com │ │ └── mavra │ │ └── nasaassignment │ │ └── ExampleInstrumentedTest.kt │ ├── main │ ├── AndroidManifest.xml │ ├── java │ │ └── com │ │ │ └── mavra │ │ │ └── nasaassignment │ │ │ ├── MainActivity.kt │ │ │ └── NasaAssigmentApplication.kt │ └── res │ │ ├── layout │ │ ├── activity_main.xml │ │ └── content_main.xml │ │ ├── menu │ │ └── menu_main.xml │ │ └── navigation │ │ └── nav_graph.xml │ └── test │ └── java │ └── com │ └── mavra │ └── nasaassignment │ └── ExampleUnitTest.kt ├── arts ├── architecture.png ├── screenshoot_one.png └── screenshoot_two.png ├── core ├── .gitignore ├── build.gradle.kts ├── consumer-rules.pro ├── proguard-rules.pro └── src │ ├── androidTest │ └── java │ │ └── com │ │ └── mavra │ │ └── core │ │ └── ExampleInstrumentedTest.kt │ ├── main │ ├── AndroidManifest.xml │ ├── java │ │ └── com │ │ │ └── mavra │ │ │ └── core │ │ │ ├── components │ │ │ ├── base_components │ │ │ │ ├── EditTextViewComponent.kt │ │ │ │ ├── ImageViewComponent.kt │ │ │ │ └── TextViewComponent.kt │ │ │ └── custom_views │ │ │ │ └── ToolbarComponent.kt │ │ │ ├── utility │ │ │ ├── ImageViewExtension.kt │ │ │ └── RecyclerViewExtension.kt │ │ │ ├── view │ │ │ ├── BaseActivity.kt │ │ │ └── BaseFragment.kt │ │ │ └── viewmodel │ │ │ └── BaseViewModel.kt │ └── res │ │ ├── drawable │ │ ├── ic_launcher_background.xml │ │ └── ic_launcher_foreground.xml │ │ ├── font │ │ └── gotham_light.ttf │ │ ├── layout │ │ └── core_toolbar.xml │ │ ├── mipmap │ │ ├── ic_launcher.webp │ │ └── ic_launcher_round.webp │ │ ├── values-night │ │ ├── colors.xml │ │ └── themes.xml │ │ └── values │ │ ├── attrs.xml │ │ ├── colors.xml │ │ ├── dimens.xml │ │ ├── strings.xml │ │ ├── themes.xml │ │ └── type.xml │ └── test │ └── java │ └── com │ └── mavra │ └── core │ └── ExampleUnitTest.kt ├── data ├── .gitignore ├── build.gradle.kts ├── consumer-rules.pro ├── proguard-rules.pro └── src │ └── main │ ├── AndroidManifest.xml │ └── java │ └── com │ └── mavra │ └── data │ ├── RepositoryImp.kt │ ├── adapters │ ├── JsonAdapterDouble.kt │ ├── JsonAdapterInt.kt │ ├── JsonAdapterLong.kt │ └── JsonAdapterString.kt │ ├── di │ ├── NetworkModule.kt │ └── RepositoryModule.kt │ ├── mapper │ ├── DomainPhotoDetailMapper.kt │ └── DomainPhotoMapper.kt │ ├── model │ ├── ApiError.kt │ ├── BaseApiError.kt │ ├── CameraResponse.kt │ ├── PhotoResponse.kt │ ├── PhotosResponse.kt │ └── RoverResponse.kt │ └── remote │ ├── NasaService.kt │ ├── RemoteDataSource.kt │ ├── adapter │ ├── ApiResponseCall.kt │ └── ApiResponseCallAdapterFactory.kt │ ├── interceptors │ └── AuthorizationInterceptor.kt │ └── throwables │ ├── ApiThrowable.kt │ ├── NoConnectionException.kt │ └── UnauthorizedThrowable.kt ├── domain ├── .gitignore ├── build.gradle.kts ├── consumer-rules.pro ├── proguard-rules.pro └── src │ ├── androidTest │ └── java │ │ └── com │ │ └── mavra │ │ └── domain │ │ └── ExampleInstrumentedTest.kt │ ├── main │ ├── AndroidManifest.xml │ └── java │ │ └── com │ │ └── mavra │ │ └── domain │ │ ├── BaseFlowUseCase.kt │ │ ├── Repository.kt │ │ ├── model │ │ ├── DomainPhoto.kt │ │ ├── DomainPhotoDetail.kt │ │ └── Resource.kt │ │ └── usecases │ │ ├── FetchPhotoDetailUseCase.kt │ │ └── FetchPhotoUseCase.kt │ └── test │ └── java │ └── com │ └── mavra │ └── domain │ └── ExampleUnitTest.kt ├── features ├── .gitignore ├── build.gradle ├── vehicle_detail │ ├── .gitignore │ ├── build.gradle.kts │ ├── consumer-rules.pro │ ├── proguard-rules.pro │ └── src │ │ ├── androidTest │ │ └── java │ │ │ └── com │ │ │ └── mavra │ │ │ └── vehicle_detail │ │ │ └── ExampleInstrumentedTest.kt │ │ ├── main │ │ ├── AndroidManifest.xml │ │ ├── java │ │ │ └── com │ │ │ │ └── mavra │ │ │ │ └── vehicle_detail │ │ │ │ ├── VehicleDetailFragment.kt │ │ │ │ └── VehicleDetailVM.kt │ │ └── res │ │ │ └── layout │ │ │ └── fragment_vehicle_detail.xml │ │ └── test │ │ └── java │ │ └── com │ │ └── mavra │ │ └── vehicle_detail │ │ └── ExampleUnitTest.kt └── vehicle_list │ ├── .gitignore │ ├── build.gradle.kts │ ├── proguard-rules.pro │ └── src │ ├── androidTest │ └── java │ │ └── com │ │ └── mavra │ │ └── vehicle_list │ │ └── ExampleInstrumentedTest.kt │ ├── main │ ├── AndroidManifest.xml │ ├── java │ │ └── com │ │ │ └── mavra │ │ │ └── vehicle_list │ │ │ ├── VehicleListFragment.kt │ │ │ ├── VehicleListVM.kt │ │ │ └── widget │ │ │ └── RoverListAdapter.kt │ └── res │ │ └── layout │ │ ├── fragment_vehicle_list.xml │ │ └── row_rover.xml │ └── test │ └── java │ └── com │ └── mavra │ └── vehicle_list │ └── ExampleUnitTest.kt ├── gradle.properties ├── gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── navgraph ├── .gitignore ├── build.gradle.kts ├── consumer-rules.pro ├── proguard-rules.pro └── src │ ├── androidTest │ └── java │ │ └── com │ │ └── mavra │ │ └── navgraph │ │ └── ExampleInstrumentedTest.kt │ ├── main │ ├── AndroidManifest.xml │ └── res │ │ └── navigation │ │ └── common_graph.xml │ └── test │ └── java │ └── com │ └── mavra │ └── navgraph │ └── ExampleUnitTest.kt ├── settings.gradle.kts └── shared ├── .gitignore ├── build.gradle.kts ├── consumer-rules.pro ├── proguard-rules.pro └── src ├── androidTest └── java │ └── com │ └── mavra │ └── shared │ └── ExampleInstrumentedTest.kt ├── main ├── AndroidManifest.xml └── java │ └── com │ └── mavra │ └── shared │ └── Mapper.kt └── test └── java └── com └── mavra └── shared └── ExampleUnitTest.kt /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/.gitignore -------------------------------------------------------------------------------- /README.MD: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/README.MD -------------------------------------------------------------------------------- /app/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/app/.gitignore -------------------------------------------------------------------------------- /app/build.gradle.kts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/app/build.gradle.kts -------------------------------------------------------------------------------- /app/proguard-rules.pro: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/app/proguard-rules.pro -------------------------------------------------------------------------------- /app/src/androidTest/java/com/mavra/nasaassignment/ExampleInstrumentedTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/app/src/androidTest/java/com/mavra/nasaassignment/ExampleInstrumentedTest.kt -------------------------------------------------------------------------------- /app/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/app/src/main/AndroidManifest.xml -------------------------------------------------------------------------------- /app/src/main/java/com/mavra/nasaassignment/MainActivity.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/app/src/main/java/com/mavra/nasaassignment/MainActivity.kt -------------------------------------------------------------------------------- /app/src/main/java/com/mavra/nasaassignment/NasaAssigmentApplication.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/app/src/main/java/com/mavra/nasaassignment/NasaAssigmentApplication.kt -------------------------------------------------------------------------------- /app/src/main/res/layout/activity_main.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/app/src/main/res/layout/activity_main.xml -------------------------------------------------------------------------------- /app/src/main/res/layout/content_main.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/app/src/main/res/layout/content_main.xml -------------------------------------------------------------------------------- /app/src/main/res/menu/menu_main.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/app/src/main/res/menu/menu_main.xml -------------------------------------------------------------------------------- /app/src/main/res/navigation/nav_graph.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/app/src/main/res/navigation/nav_graph.xml -------------------------------------------------------------------------------- /app/src/test/java/com/mavra/nasaassignment/ExampleUnitTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/app/src/test/java/com/mavra/nasaassignment/ExampleUnitTest.kt -------------------------------------------------------------------------------- /arts/architecture.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/arts/architecture.png -------------------------------------------------------------------------------- /arts/screenshoot_one.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/arts/screenshoot_one.png -------------------------------------------------------------------------------- /arts/screenshoot_two.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/arts/screenshoot_two.png -------------------------------------------------------------------------------- /core/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /core/build.gradle.kts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/core/build.gradle.kts -------------------------------------------------------------------------------- /core/consumer-rules.pro: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /core/proguard-rules.pro: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/core/proguard-rules.pro -------------------------------------------------------------------------------- /core/src/androidTest/java/com/mavra/core/ExampleInstrumentedTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/core/src/androidTest/java/com/mavra/core/ExampleInstrumentedTest.kt -------------------------------------------------------------------------------- /core/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/core/src/main/AndroidManifest.xml -------------------------------------------------------------------------------- /core/src/main/java/com/mavra/core/components/base_components/EditTextViewComponent.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/core/src/main/java/com/mavra/core/components/base_components/EditTextViewComponent.kt -------------------------------------------------------------------------------- /core/src/main/java/com/mavra/core/components/base_components/ImageViewComponent.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/core/src/main/java/com/mavra/core/components/base_components/ImageViewComponent.kt -------------------------------------------------------------------------------- /core/src/main/java/com/mavra/core/components/base_components/TextViewComponent.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/core/src/main/java/com/mavra/core/components/base_components/TextViewComponent.kt -------------------------------------------------------------------------------- /core/src/main/java/com/mavra/core/components/custom_views/ToolbarComponent.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/core/src/main/java/com/mavra/core/components/custom_views/ToolbarComponent.kt -------------------------------------------------------------------------------- /core/src/main/java/com/mavra/core/utility/ImageViewExtension.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/core/src/main/java/com/mavra/core/utility/ImageViewExtension.kt -------------------------------------------------------------------------------- /core/src/main/java/com/mavra/core/utility/RecyclerViewExtension.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/core/src/main/java/com/mavra/core/utility/RecyclerViewExtension.kt -------------------------------------------------------------------------------- /core/src/main/java/com/mavra/core/view/BaseActivity.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/core/src/main/java/com/mavra/core/view/BaseActivity.kt -------------------------------------------------------------------------------- /core/src/main/java/com/mavra/core/view/BaseFragment.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/core/src/main/java/com/mavra/core/view/BaseFragment.kt -------------------------------------------------------------------------------- /core/src/main/java/com/mavra/core/viewmodel/BaseViewModel.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/core/src/main/java/com/mavra/core/viewmodel/BaseViewModel.kt -------------------------------------------------------------------------------- /core/src/main/res/drawable/ic_launcher_background.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/core/src/main/res/drawable/ic_launcher_background.xml -------------------------------------------------------------------------------- /core/src/main/res/drawable/ic_launcher_foreground.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/core/src/main/res/drawable/ic_launcher_foreground.xml -------------------------------------------------------------------------------- /core/src/main/res/font/gotham_light.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/core/src/main/res/font/gotham_light.ttf -------------------------------------------------------------------------------- /core/src/main/res/layout/core_toolbar.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/core/src/main/res/layout/core_toolbar.xml -------------------------------------------------------------------------------- /core/src/main/res/mipmap/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/core/src/main/res/mipmap/ic_launcher.webp -------------------------------------------------------------------------------- /core/src/main/res/mipmap/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/core/src/main/res/mipmap/ic_launcher_round.webp -------------------------------------------------------------------------------- /core/src/main/res/values-night/colors.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/core/src/main/res/values-night/colors.xml -------------------------------------------------------------------------------- /core/src/main/res/values-night/themes.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/core/src/main/res/values-night/themes.xml -------------------------------------------------------------------------------- /core/src/main/res/values/attrs.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/core/src/main/res/values/attrs.xml -------------------------------------------------------------------------------- /core/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/core/src/main/res/values/colors.xml -------------------------------------------------------------------------------- /core/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/core/src/main/res/values/dimens.xml -------------------------------------------------------------------------------- /core/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/core/src/main/res/values/strings.xml -------------------------------------------------------------------------------- /core/src/main/res/values/themes.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/core/src/main/res/values/themes.xml -------------------------------------------------------------------------------- /core/src/main/res/values/type.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/core/src/main/res/values/type.xml -------------------------------------------------------------------------------- /core/src/test/java/com/mavra/core/ExampleUnitTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/core/src/test/java/com/mavra/core/ExampleUnitTest.kt -------------------------------------------------------------------------------- /data/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /data/build.gradle.kts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/data/build.gradle.kts -------------------------------------------------------------------------------- /data/consumer-rules.pro: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /data/proguard-rules.pro: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/data/proguard-rules.pro -------------------------------------------------------------------------------- /data/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/data/src/main/AndroidManifest.xml -------------------------------------------------------------------------------- /data/src/main/java/com/mavra/data/RepositoryImp.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/data/src/main/java/com/mavra/data/RepositoryImp.kt -------------------------------------------------------------------------------- /data/src/main/java/com/mavra/data/adapters/JsonAdapterDouble.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/data/src/main/java/com/mavra/data/adapters/JsonAdapterDouble.kt -------------------------------------------------------------------------------- /data/src/main/java/com/mavra/data/adapters/JsonAdapterInt.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/data/src/main/java/com/mavra/data/adapters/JsonAdapterInt.kt -------------------------------------------------------------------------------- /data/src/main/java/com/mavra/data/adapters/JsonAdapterLong.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/data/src/main/java/com/mavra/data/adapters/JsonAdapterLong.kt -------------------------------------------------------------------------------- /data/src/main/java/com/mavra/data/adapters/JsonAdapterString.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/data/src/main/java/com/mavra/data/adapters/JsonAdapterString.kt -------------------------------------------------------------------------------- /data/src/main/java/com/mavra/data/di/NetworkModule.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/data/src/main/java/com/mavra/data/di/NetworkModule.kt -------------------------------------------------------------------------------- /data/src/main/java/com/mavra/data/di/RepositoryModule.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/data/src/main/java/com/mavra/data/di/RepositoryModule.kt -------------------------------------------------------------------------------- /data/src/main/java/com/mavra/data/mapper/DomainPhotoDetailMapper.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/data/src/main/java/com/mavra/data/mapper/DomainPhotoDetailMapper.kt -------------------------------------------------------------------------------- /data/src/main/java/com/mavra/data/mapper/DomainPhotoMapper.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/data/src/main/java/com/mavra/data/mapper/DomainPhotoMapper.kt -------------------------------------------------------------------------------- /data/src/main/java/com/mavra/data/model/ApiError.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/data/src/main/java/com/mavra/data/model/ApiError.kt -------------------------------------------------------------------------------- /data/src/main/java/com/mavra/data/model/BaseApiError.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/data/src/main/java/com/mavra/data/model/BaseApiError.kt -------------------------------------------------------------------------------- /data/src/main/java/com/mavra/data/model/CameraResponse.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/data/src/main/java/com/mavra/data/model/CameraResponse.kt -------------------------------------------------------------------------------- /data/src/main/java/com/mavra/data/model/PhotoResponse.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/data/src/main/java/com/mavra/data/model/PhotoResponse.kt -------------------------------------------------------------------------------- /data/src/main/java/com/mavra/data/model/PhotosResponse.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/data/src/main/java/com/mavra/data/model/PhotosResponse.kt -------------------------------------------------------------------------------- /data/src/main/java/com/mavra/data/model/RoverResponse.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/data/src/main/java/com/mavra/data/model/RoverResponse.kt -------------------------------------------------------------------------------- /data/src/main/java/com/mavra/data/remote/NasaService.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/data/src/main/java/com/mavra/data/remote/NasaService.kt -------------------------------------------------------------------------------- /data/src/main/java/com/mavra/data/remote/RemoteDataSource.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/data/src/main/java/com/mavra/data/remote/RemoteDataSource.kt -------------------------------------------------------------------------------- /data/src/main/java/com/mavra/data/remote/adapter/ApiResponseCall.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/data/src/main/java/com/mavra/data/remote/adapter/ApiResponseCall.kt -------------------------------------------------------------------------------- /data/src/main/java/com/mavra/data/remote/adapter/ApiResponseCallAdapterFactory.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/data/src/main/java/com/mavra/data/remote/adapter/ApiResponseCallAdapterFactory.kt -------------------------------------------------------------------------------- /data/src/main/java/com/mavra/data/remote/interceptors/AuthorizationInterceptor.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/data/src/main/java/com/mavra/data/remote/interceptors/AuthorizationInterceptor.kt -------------------------------------------------------------------------------- /data/src/main/java/com/mavra/data/remote/throwables/ApiThrowable.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/data/src/main/java/com/mavra/data/remote/throwables/ApiThrowable.kt -------------------------------------------------------------------------------- /data/src/main/java/com/mavra/data/remote/throwables/NoConnectionException.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/data/src/main/java/com/mavra/data/remote/throwables/NoConnectionException.kt -------------------------------------------------------------------------------- /data/src/main/java/com/mavra/data/remote/throwables/UnauthorizedThrowable.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/data/src/main/java/com/mavra/data/remote/throwables/UnauthorizedThrowable.kt -------------------------------------------------------------------------------- /domain/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /domain/build.gradle.kts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/domain/build.gradle.kts -------------------------------------------------------------------------------- /domain/consumer-rules.pro: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /domain/proguard-rules.pro: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/domain/proguard-rules.pro -------------------------------------------------------------------------------- /domain/src/androidTest/java/com/mavra/domain/ExampleInstrumentedTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/domain/src/androidTest/java/com/mavra/domain/ExampleInstrumentedTest.kt -------------------------------------------------------------------------------- /domain/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/domain/src/main/AndroidManifest.xml -------------------------------------------------------------------------------- /domain/src/main/java/com/mavra/domain/BaseFlowUseCase.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/domain/src/main/java/com/mavra/domain/BaseFlowUseCase.kt -------------------------------------------------------------------------------- /domain/src/main/java/com/mavra/domain/Repository.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/domain/src/main/java/com/mavra/domain/Repository.kt -------------------------------------------------------------------------------- /domain/src/main/java/com/mavra/domain/model/DomainPhoto.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/domain/src/main/java/com/mavra/domain/model/DomainPhoto.kt -------------------------------------------------------------------------------- /domain/src/main/java/com/mavra/domain/model/DomainPhotoDetail.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/domain/src/main/java/com/mavra/domain/model/DomainPhotoDetail.kt -------------------------------------------------------------------------------- /domain/src/main/java/com/mavra/domain/model/Resource.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/domain/src/main/java/com/mavra/domain/model/Resource.kt -------------------------------------------------------------------------------- /domain/src/main/java/com/mavra/domain/usecases/FetchPhotoDetailUseCase.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/domain/src/main/java/com/mavra/domain/usecases/FetchPhotoDetailUseCase.kt -------------------------------------------------------------------------------- /domain/src/main/java/com/mavra/domain/usecases/FetchPhotoUseCase.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/domain/src/main/java/com/mavra/domain/usecases/FetchPhotoUseCase.kt -------------------------------------------------------------------------------- /domain/src/test/java/com/mavra/domain/ExampleUnitTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/domain/src/test/java/com/mavra/domain/ExampleUnitTest.kt -------------------------------------------------------------------------------- /features/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /features/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/features/build.gradle -------------------------------------------------------------------------------- /features/vehicle_detail/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /features/vehicle_detail/build.gradle.kts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/features/vehicle_detail/build.gradle.kts -------------------------------------------------------------------------------- /features/vehicle_detail/consumer-rules.pro: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /features/vehicle_detail/proguard-rules.pro: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/features/vehicle_detail/proguard-rules.pro -------------------------------------------------------------------------------- /features/vehicle_detail/src/androidTest/java/com/mavra/vehicle_detail/ExampleInstrumentedTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/features/vehicle_detail/src/androidTest/java/com/mavra/vehicle_detail/ExampleInstrumentedTest.kt -------------------------------------------------------------------------------- /features/vehicle_detail/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/features/vehicle_detail/src/main/AndroidManifest.xml -------------------------------------------------------------------------------- /features/vehicle_detail/src/main/java/com/mavra/vehicle_detail/VehicleDetailFragment.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/features/vehicle_detail/src/main/java/com/mavra/vehicle_detail/VehicleDetailFragment.kt -------------------------------------------------------------------------------- /features/vehicle_detail/src/main/java/com/mavra/vehicle_detail/VehicleDetailVM.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/features/vehicle_detail/src/main/java/com/mavra/vehicle_detail/VehicleDetailVM.kt -------------------------------------------------------------------------------- /features/vehicle_detail/src/main/res/layout/fragment_vehicle_detail.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/features/vehicle_detail/src/main/res/layout/fragment_vehicle_detail.xml -------------------------------------------------------------------------------- /features/vehicle_detail/src/test/java/com/mavra/vehicle_detail/ExampleUnitTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/features/vehicle_detail/src/test/java/com/mavra/vehicle_detail/ExampleUnitTest.kt -------------------------------------------------------------------------------- /features/vehicle_list/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /features/vehicle_list/build.gradle.kts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/features/vehicle_list/build.gradle.kts -------------------------------------------------------------------------------- /features/vehicle_list/proguard-rules.pro: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/features/vehicle_list/proguard-rules.pro -------------------------------------------------------------------------------- /features/vehicle_list/src/androidTest/java/com/mavra/vehicle_list/ExampleInstrumentedTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/features/vehicle_list/src/androidTest/java/com/mavra/vehicle_list/ExampleInstrumentedTest.kt -------------------------------------------------------------------------------- /features/vehicle_list/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/features/vehicle_list/src/main/AndroidManifest.xml -------------------------------------------------------------------------------- /features/vehicle_list/src/main/java/com/mavra/vehicle_list/VehicleListFragment.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/features/vehicle_list/src/main/java/com/mavra/vehicle_list/VehicleListFragment.kt -------------------------------------------------------------------------------- /features/vehicle_list/src/main/java/com/mavra/vehicle_list/VehicleListVM.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/features/vehicle_list/src/main/java/com/mavra/vehicle_list/VehicleListVM.kt -------------------------------------------------------------------------------- /features/vehicle_list/src/main/java/com/mavra/vehicle_list/widget/RoverListAdapter.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/features/vehicle_list/src/main/java/com/mavra/vehicle_list/widget/RoverListAdapter.kt -------------------------------------------------------------------------------- /features/vehicle_list/src/main/res/layout/fragment_vehicle_list.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/features/vehicle_list/src/main/res/layout/fragment_vehicle_list.xml -------------------------------------------------------------------------------- /features/vehicle_list/src/main/res/layout/row_rover.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/features/vehicle_list/src/main/res/layout/row_rover.xml -------------------------------------------------------------------------------- /features/vehicle_list/src/test/java/com/mavra/vehicle_list/ExampleUnitTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/features/vehicle_list/src/test/java/com/mavra/vehicle_list/ExampleUnitTest.kt -------------------------------------------------------------------------------- /gradle.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/gradle.properties -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/gradle/wrapper/gradle-wrapper.properties -------------------------------------------------------------------------------- /gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/gradlew -------------------------------------------------------------------------------- /gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/gradlew.bat -------------------------------------------------------------------------------- /navgraph/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /navgraph/build.gradle.kts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/navgraph/build.gradle.kts -------------------------------------------------------------------------------- /navgraph/consumer-rules.pro: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /navgraph/proguard-rules.pro: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/navgraph/proguard-rules.pro -------------------------------------------------------------------------------- /navgraph/src/androidTest/java/com/mavra/navgraph/ExampleInstrumentedTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/navgraph/src/androidTest/java/com/mavra/navgraph/ExampleInstrumentedTest.kt -------------------------------------------------------------------------------- /navgraph/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/navgraph/src/main/AndroidManifest.xml -------------------------------------------------------------------------------- /navgraph/src/main/res/navigation/common_graph.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/navgraph/src/main/res/navigation/common_graph.xml -------------------------------------------------------------------------------- /navgraph/src/test/java/com/mavra/navgraph/ExampleUnitTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/navgraph/src/test/java/com/mavra/navgraph/ExampleUnitTest.kt -------------------------------------------------------------------------------- /settings.gradle.kts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/settings.gradle.kts -------------------------------------------------------------------------------- /shared/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /shared/build.gradle.kts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/shared/build.gradle.kts -------------------------------------------------------------------------------- /shared/consumer-rules.pro: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /shared/proguard-rules.pro: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/shared/proguard-rules.pro -------------------------------------------------------------------------------- /shared/src/androidTest/java/com/mavra/shared/ExampleInstrumentedTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/shared/src/androidTest/java/com/mavra/shared/ExampleInstrumentedTest.kt -------------------------------------------------------------------------------- /shared/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/shared/src/main/AndroidManifest.xml -------------------------------------------------------------------------------- /shared/src/main/java/com/mavra/shared/Mapper.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/shared/src/main/java/com/mavra/shared/Mapper.kt -------------------------------------------------------------------------------- /shared/src/test/java/com/mavra/shared/ExampleUnitTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/Mavra-Android/NasaAssignment/HEAD/shared/src/test/java/com/mavra/shared/ExampleUnitTest.kt --------------------------------------------------------------------------------