├── Demo-JokesApp.gif ├── README.md ├── app ├── .gitignore ├── build.gradle ├── proguard-rules.pro └── src │ ├── androidTest │ └── java │ │ └── prieto │ │ └── fernando │ │ └── jokesapp │ │ ├── custom │ │ ├── CustomFragmentRobot.kt │ │ └── CustomFragmentTest.kt │ │ ├── dashboard │ │ ├── DashboardFragmentRobot.kt │ │ └── DashboardFragmentTest.kt │ │ ├── detail │ │ ├── DetailFragmentRobot.kt │ │ └── DetailFragmentTest.kt │ │ ├── infinite │ │ ├── InfiniteFragmentRobot.kt │ │ └── InfiniteFragmentTest.kt │ │ ├── utils │ │ ├── RecyclerViewItemCountAssertion.kt │ │ ├── RecyclerViewMatcher.kt │ │ └── TestConfigurationRule.kt │ │ └── webmock │ │ ├── AssetReaderUtil.kt │ │ ├── ErrorDispatcher.kt │ │ ├── MockTestRunner.kt │ │ ├── SuccessDispatcher.kt │ │ └── TestConfigurationBuilder.kt │ ├── debug │ └── assets │ │ └── network_files │ │ ├── custom_joke_success.json │ │ ├── joke_list_success.json │ │ └── random_joke_success.json │ └── main │ ├── AndroidManifest.xml │ ├── ic_launcher-web.png │ ├── java │ └── prieto │ │ └── fernando │ │ └── jokesapp │ │ ├── JokesApp.kt │ │ ├── di │ │ ├── ActivityScope.kt │ │ ├── AppComponent.kt │ │ ├── AppModule.kt │ │ └── MainActivityModule.kt │ │ └── view │ │ ├── MainActivity.kt │ │ ├── custom │ │ └── CustomJokeFragment.kt │ │ ├── dashboard │ │ └── DashboardFragment.kt │ │ ├── detail │ │ ├── DetailFragment.kt │ │ └── DetailViewModel.kt │ │ ├── extension │ │ └── Lifecycle.kt │ │ └── infinite │ │ ├── InfiniteJokesFragment.kt │ │ ├── adapter │ │ └── JokesAdapter.kt │ │ └── widget │ │ └── InfiniteScrollListener.kt │ └── res │ ├── drawable-v24 │ └── ic_launcher_foreground.xml │ ├── drawable │ ├── ic_launcher_background.xml │ └── ic_launcher_foreground.xml │ ├── layout │ ├── activity_main.xml │ ├── fragment_custom_joke.xml │ ├── fragment_dashboard.xml │ ├── fragment_detail.xml │ ├── fragment_infinite_jokes.xml │ └── item_joke.xml │ ├── mipmap-anydpi-v26 │ ├── ic_launcher.xml │ └── ic_launcher_round.xml │ ├── mipmap-hdpi │ ├── ic_launcher.png │ └── ic_launcher_round.png │ ├── mipmap-mdpi │ ├── ic_launcher.png │ └── ic_launcher_round.png │ ├── mipmap-xhdpi │ ├── ic_launcher.png │ └── ic_launcher_round.png │ ├── mipmap-xxhdpi │ ├── ic_launcher.png │ └── ic_launcher_round.png │ ├── mipmap-xxxhdpi │ ├── ic_launcher.png │ └── ic_launcher_round.png │ └── values │ ├── colors.xml │ ├── dimens.xml │ ├── ic_launcher_background.xml │ ├── strings.xml │ └── styles.xml ├── base-android-library.gradle ├── core ├── .gitignore ├── build.gradle ├── consumer-rules.pro ├── proguard-rules.pro └── src │ ├── androidTest │ └── java │ │ └── prieto │ │ └── fernando │ │ └── core │ │ └── ExampleInstrumentedTest.kt │ └── main │ ├── AndroidManifest.xml │ ├── java │ └── prieto │ │ └── fernando │ │ ├── presentation │ │ ├── BaseViewModel.kt │ │ ├── SchedulerProvider.kt │ │ └── ViewModelProviderFactory.kt │ │ └── ui │ │ ├── BaseActivity.kt │ │ ├── BaseFragment.kt │ │ └── BaseView.kt │ └── res │ └── values │ └── strings.xml ├── data-cache ├── .gitignore ├── build.gradle ├── consumer-rules.pro ├── proguard-rules.pro └── src │ ├── androidTest │ └── java │ │ └── prieto │ │ └── fernando │ │ └── data_cache │ │ └── ExampleInstrumentedTest.kt │ └── main │ ├── AndroidManifest.xml │ ├── java │ └── prieto │ │ └── fernando │ │ ├── model │ │ └── RandomJokeLocalModel.kt │ │ └── source │ │ └── JokesLocalSource.kt │ └── res │ └── values │ └── strings.xml ├── data-jokesapi ├── .gitignore ├── build.gradle ├── consumer-rules.pro ├── proguard-rules.pro └── src │ ├── androidTest │ └── java │ │ └── prieto │ │ └── fernando │ │ └── data_jokesapi │ │ └── ExampleInstrumentedTest.kt │ └── main │ ├── AndroidManifest.xml │ ├── java │ └── prieto │ │ └── fernando │ │ ├── ApiService.kt │ │ ├── data │ │ └── JokesRemoteSource.kt │ │ ├── di │ │ ├── BaseUrl.kt │ │ ├── ChuckNorrisApiModule.kt │ │ └── NetworkModule.kt │ │ └── model │ │ ├── MultipleRandomJokeResponse.kt │ │ └── RandomJokeResponse.kt │ └── res │ └── values │ └── strings.xml ├── domain ├── .gitignore ├── build.gradle ├── consumer-rules.pro ├── proguard-rules.pro └── src │ ├── androidTest │ └── java │ │ └── prieto │ │ └── fernando │ │ └── domain │ │ └── ExampleInstrumentedTest.kt │ ├── main │ ├── AndroidManifest.xml │ ├── java │ │ └── prieto │ │ │ └── fernando │ │ │ ├── data │ │ │ └── RandomJokeDomainModel.kt │ │ │ ├── di │ │ │ └── RepositoryModule.kt │ │ │ ├── mapper │ │ │ ├── MultipleRandomJokeResponseToLocalModelMapper.kt │ │ │ ├── RandomJokeLocalToDomainModelMapper.kt │ │ │ └── RandomJokeResponseToLocalModelMapper.kt │ │ │ ├── repository │ │ │ └── JokesRepositoryImpl.kt │ │ │ └── usecase │ │ │ ├── GetCustomRandomJokeUseCase.kt │ │ │ ├── GetMultipleRandomJokeUseCase.kt │ │ │ ├── GetRandomJokeUseCase.kt │ │ │ └── ResetCustomRandomJokeUseCase.kt │ └── res │ │ └── values │ │ └── strings.xml │ └── test │ └── java │ └── prieto │ └── fernando │ └── domain │ ├── mapper │ ├── MultipleRandomJokeResponseToLocalModelMapperTest.kt │ ├── RandomJokeLocalToDomainModelMapperTest.kt │ └── RandomJokeResponseToLocalModelMapperTest.kt │ ├── repository │ └── JokesRepositoryImplTest.kt │ └── usecase │ ├── GetCustomRandomJokeUseCaseTest.kt │ ├── GetMultipleRandomJokeUseCaseTest.kt │ └── GetRandomJokeUseCaseTest.kt ├── gradle.properties ├── gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── navigation ├── build.gradle ├── consumer-rules.pro ├── proguard-rules.pro └── src │ └── main │ ├── AndroidManifest.xml │ └── res │ └── navigation │ └── nav_graph.xml ├── presentation ├── .gitignore ├── build.gradle ├── consumer-rules.pro ├── proguard-rules.pro └── src │ ├── androidTest │ └── java │ │ └── prieto │ │ └── fernando │ │ └── presentation │ │ └── ExampleInstrumentedTest.kt │ ├── main │ ├── AndroidManifest.xml │ ├── java │ │ └── prieto │ │ │ └── fernando │ │ │ └── presentation │ │ │ ├── RandomJokeUiModel.kt │ │ │ ├── custom │ │ │ ├── CustomJokeViewModel.kt │ │ │ └── NamesButtonStateEvaluator.kt │ │ │ ├── dashboard │ │ │ └── DashboardViewModel.kt │ │ │ ├── data │ │ │ └── RandomJokeAndTitleResource.kt │ │ │ ├── infinite │ │ │ └── InfiniteJokesViewModel.kt │ │ │ ├── main │ │ │ └── MainViewModel.kt │ │ │ ├── mapper │ │ │ └── RandomJokeDomainToUiModelMapper.kt │ │ │ └── model │ │ │ └── NamesData.kt │ └── res │ │ └── values │ │ └── strings.xml │ └── test │ └── java │ └── prieto │ └── fernando │ └── presentation │ ├── CustomJokeViewModelTest.kt │ ├── NamesButtonStateEvaluatorTest.kt │ ├── ViewModelSetup.kt │ ├── dashboard │ └── DashboardViewModelTest.kt │ ├── infinite │ └── InfiniteJokesViewModelTest.kt │ ├── mapper │ └── RandomJokeDomainToUiModelMapperTest.kt │ └── scheduler │ └── TestSchedulerProvider.kt └── settings.gradle /Demo-JokesApp.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/Demo-JokesApp.gif -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/README.md -------------------------------------------------------------------------------- /app/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /app/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/build.gradle -------------------------------------------------------------------------------- /app/proguard-rules.pro: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/proguard-rules.pro -------------------------------------------------------------------------------- /app/src/androidTest/java/prieto/fernando/jokesapp/custom/CustomFragmentRobot.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/androidTest/java/prieto/fernando/jokesapp/custom/CustomFragmentRobot.kt -------------------------------------------------------------------------------- /app/src/androidTest/java/prieto/fernando/jokesapp/custom/CustomFragmentTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/androidTest/java/prieto/fernando/jokesapp/custom/CustomFragmentTest.kt -------------------------------------------------------------------------------- /app/src/androidTest/java/prieto/fernando/jokesapp/dashboard/DashboardFragmentRobot.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/androidTest/java/prieto/fernando/jokesapp/dashboard/DashboardFragmentRobot.kt -------------------------------------------------------------------------------- /app/src/androidTest/java/prieto/fernando/jokesapp/dashboard/DashboardFragmentTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/androidTest/java/prieto/fernando/jokesapp/dashboard/DashboardFragmentTest.kt -------------------------------------------------------------------------------- /app/src/androidTest/java/prieto/fernando/jokesapp/detail/DetailFragmentRobot.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/androidTest/java/prieto/fernando/jokesapp/detail/DetailFragmentRobot.kt -------------------------------------------------------------------------------- /app/src/androidTest/java/prieto/fernando/jokesapp/detail/DetailFragmentTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/androidTest/java/prieto/fernando/jokesapp/detail/DetailFragmentTest.kt -------------------------------------------------------------------------------- /app/src/androidTest/java/prieto/fernando/jokesapp/infinite/InfiniteFragmentRobot.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/androidTest/java/prieto/fernando/jokesapp/infinite/InfiniteFragmentRobot.kt -------------------------------------------------------------------------------- /app/src/androidTest/java/prieto/fernando/jokesapp/infinite/InfiniteFragmentTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/androidTest/java/prieto/fernando/jokesapp/infinite/InfiniteFragmentTest.kt -------------------------------------------------------------------------------- /app/src/androidTest/java/prieto/fernando/jokesapp/utils/RecyclerViewItemCountAssertion.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/androidTest/java/prieto/fernando/jokesapp/utils/RecyclerViewItemCountAssertion.kt -------------------------------------------------------------------------------- /app/src/androidTest/java/prieto/fernando/jokesapp/utils/RecyclerViewMatcher.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/androidTest/java/prieto/fernando/jokesapp/utils/RecyclerViewMatcher.kt -------------------------------------------------------------------------------- /app/src/androidTest/java/prieto/fernando/jokesapp/utils/TestConfigurationRule.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/androidTest/java/prieto/fernando/jokesapp/utils/TestConfigurationRule.kt -------------------------------------------------------------------------------- /app/src/androidTest/java/prieto/fernando/jokesapp/webmock/AssetReaderUtil.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/androidTest/java/prieto/fernando/jokesapp/webmock/AssetReaderUtil.kt -------------------------------------------------------------------------------- /app/src/androidTest/java/prieto/fernando/jokesapp/webmock/ErrorDispatcher.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/androidTest/java/prieto/fernando/jokesapp/webmock/ErrorDispatcher.kt -------------------------------------------------------------------------------- /app/src/androidTest/java/prieto/fernando/jokesapp/webmock/MockTestRunner.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/androidTest/java/prieto/fernando/jokesapp/webmock/MockTestRunner.kt -------------------------------------------------------------------------------- /app/src/androidTest/java/prieto/fernando/jokesapp/webmock/SuccessDispatcher.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/androidTest/java/prieto/fernando/jokesapp/webmock/SuccessDispatcher.kt -------------------------------------------------------------------------------- /app/src/androidTest/java/prieto/fernando/jokesapp/webmock/TestConfigurationBuilder.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/androidTest/java/prieto/fernando/jokesapp/webmock/TestConfigurationBuilder.kt -------------------------------------------------------------------------------- /app/src/debug/assets/network_files/custom_joke_success.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/debug/assets/network_files/custom_joke_success.json -------------------------------------------------------------------------------- /app/src/debug/assets/network_files/joke_list_success.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/debug/assets/network_files/joke_list_success.json -------------------------------------------------------------------------------- /app/src/debug/assets/network_files/random_joke_success.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/debug/assets/network_files/random_joke_success.json -------------------------------------------------------------------------------- /app/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/main/AndroidManifest.xml -------------------------------------------------------------------------------- /app/src/main/ic_launcher-web.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/main/ic_launcher-web.png -------------------------------------------------------------------------------- /app/src/main/java/prieto/fernando/jokesapp/JokesApp.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/main/java/prieto/fernando/jokesapp/JokesApp.kt -------------------------------------------------------------------------------- /app/src/main/java/prieto/fernando/jokesapp/di/ActivityScope.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/main/java/prieto/fernando/jokesapp/di/ActivityScope.kt -------------------------------------------------------------------------------- /app/src/main/java/prieto/fernando/jokesapp/di/AppComponent.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/main/java/prieto/fernando/jokesapp/di/AppComponent.kt -------------------------------------------------------------------------------- /app/src/main/java/prieto/fernando/jokesapp/di/AppModule.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/main/java/prieto/fernando/jokesapp/di/AppModule.kt -------------------------------------------------------------------------------- /app/src/main/java/prieto/fernando/jokesapp/di/MainActivityModule.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/main/java/prieto/fernando/jokesapp/di/MainActivityModule.kt -------------------------------------------------------------------------------- /app/src/main/java/prieto/fernando/jokesapp/view/MainActivity.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/main/java/prieto/fernando/jokesapp/view/MainActivity.kt -------------------------------------------------------------------------------- /app/src/main/java/prieto/fernando/jokesapp/view/custom/CustomJokeFragment.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/main/java/prieto/fernando/jokesapp/view/custom/CustomJokeFragment.kt -------------------------------------------------------------------------------- /app/src/main/java/prieto/fernando/jokesapp/view/dashboard/DashboardFragment.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/main/java/prieto/fernando/jokesapp/view/dashboard/DashboardFragment.kt -------------------------------------------------------------------------------- /app/src/main/java/prieto/fernando/jokesapp/view/detail/DetailFragment.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/main/java/prieto/fernando/jokesapp/view/detail/DetailFragment.kt -------------------------------------------------------------------------------- /app/src/main/java/prieto/fernando/jokesapp/view/detail/DetailViewModel.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/main/java/prieto/fernando/jokesapp/view/detail/DetailViewModel.kt -------------------------------------------------------------------------------- /app/src/main/java/prieto/fernando/jokesapp/view/extension/Lifecycle.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/main/java/prieto/fernando/jokesapp/view/extension/Lifecycle.kt -------------------------------------------------------------------------------- /app/src/main/java/prieto/fernando/jokesapp/view/infinite/InfiniteJokesFragment.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/main/java/prieto/fernando/jokesapp/view/infinite/InfiniteJokesFragment.kt -------------------------------------------------------------------------------- /app/src/main/java/prieto/fernando/jokesapp/view/infinite/adapter/JokesAdapter.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/main/java/prieto/fernando/jokesapp/view/infinite/adapter/JokesAdapter.kt -------------------------------------------------------------------------------- /app/src/main/java/prieto/fernando/jokesapp/view/infinite/widget/InfiniteScrollListener.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/main/java/prieto/fernando/jokesapp/view/infinite/widget/InfiniteScrollListener.kt -------------------------------------------------------------------------------- /app/src/main/res/drawable-v24/ic_launcher_foreground.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/main/res/drawable-v24/ic_launcher_foreground.xml -------------------------------------------------------------------------------- /app/src/main/res/drawable/ic_launcher_background.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/main/res/drawable/ic_launcher_background.xml -------------------------------------------------------------------------------- /app/src/main/res/drawable/ic_launcher_foreground.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/main/res/drawable/ic_launcher_foreground.xml -------------------------------------------------------------------------------- /app/src/main/res/layout/activity_main.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/main/res/layout/activity_main.xml -------------------------------------------------------------------------------- /app/src/main/res/layout/fragment_custom_joke.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/main/res/layout/fragment_custom_joke.xml -------------------------------------------------------------------------------- /app/src/main/res/layout/fragment_dashboard.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/main/res/layout/fragment_dashboard.xml -------------------------------------------------------------------------------- /app/src/main/res/layout/fragment_detail.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/main/res/layout/fragment_detail.xml -------------------------------------------------------------------------------- /app/src/main/res/layout/fragment_infinite_jokes.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/main/res/layout/fragment_infinite_jokes.xml -------------------------------------------------------------------------------- /app/src/main/res/layout/item_joke.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/main/res/layout/item_joke.xml -------------------------------------------------------------------------------- /app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml -------------------------------------------------------------------------------- /app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml -------------------------------------------------------------------------------- /app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-hdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/main/res/mipmap-hdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-mdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/main/res/mipmap-mdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/main/res/values/colors.xml -------------------------------------------------------------------------------- /app/src/main/res/values/dimens.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/main/res/values/dimens.xml -------------------------------------------------------------------------------- /app/src/main/res/values/ic_launcher_background.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/main/res/values/ic_launcher_background.xml -------------------------------------------------------------------------------- /app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/main/res/values/strings.xml -------------------------------------------------------------------------------- /app/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/app/src/main/res/values/styles.xml -------------------------------------------------------------------------------- /base-android-library.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/base-android-library.gradle -------------------------------------------------------------------------------- /core/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /core/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/core/build.gradle -------------------------------------------------------------------------------- /core/consumer-rules.pro: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /core/proguard-rules.pro: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/core/proguard-rules.pro -------------------------------------------------------------------------------- /core/src/androidTest/java/prieto/fernando/core/ExampleInstrumentedTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/core/src/androidTest/java/prieto/fernando/core/ExampleInstrumentedTest.kt -------------------------------------------------------------------------------- /core/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/core/src/main/AndroidManifest.xml -------------------------------------------------------------------------------- /core/src/main/java/prieto/fernando/presentation/BaseViewModel.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/core/src/main/java/prieto/fernando/presentation/BaseViewModel.kt -------------------------------------------------------------------------------- /core/src/main/java/prieto/fernando/presentation/SchedulerProvider.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/core/src/main/java/prieto/fernando/presentation/SchedulerProvider.kt -------------------------------------------------------------------------------- /core/src/main/java/prieto/fernando/presentation/ViewModelProviderFactory.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/core/src/main/java/prieto/fernando/presentation/ViewModelProviderFactory.kt -------------------------------------------------------------------------------- /core/src/main/java/prieto/fernando/ui/BaseActivity.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/core/src/main/java/prieto/fernando/ui/BaseActivity.kt -------------------------------------------------------------------------------- /core/src/main/java/prieto/fernando/ui/BaseFragment.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/core/src/main/java/prieto/fernando/ui/BaseFragment.kt -------------------------------------------------------------------------------- /core/src/main/java/prieto/fernando/ui/BaseView.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/core/src/main/java/prieto/fernando/ui/BaseView.kt -------------------------------------------------------------------------------- /core/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/core/src/main/res/values/strings.xml -------------------------------------------------------------------------------- /data-cache/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /data-cache/build.gradle: -------------------------------------------------------------------------------- 1 | apply from: "$rootDir/base-android-library.gradle" 2 | -------------------------------------------------------------------------------- /data-cache/consumer-rules.pro: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /data-cache/proguard-rules.pro: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/data-cache/proguard-rules.pro -------------------------------------------------------------------------------- /data-cache/src/androidTest/java/prieto/fernando/data_cache/ExampleInstrumentedTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/data-cache/src/androidTest/java/prieto/fernando/data_cache/ExampleInstrumentedTest.kt -------------------------------------------------------------------------------- /data-cache/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/data-cache/src/main/AndroidManifest.xml -------------------------------------------------------------------------------- /data-cache/src/main/java/prieto/fernando/model/RandomJokeLocalModel.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/data-cache/src/main/java/prieto/fernando/model/RandomJokeLocalModel.kt -------------------------------------------------------------------------------- /data-cache/src/main/java/prieto/fernando/source/JokesLocalSource.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/data-cache/src/main/java/prieto/fernando/source/JokesLocalSource.kt -------------------------------------------------------------------------------- /data-cache/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/data-cache/src/main/res/values/strings.xml -------------------------------------------------------------------------------- /data-jokesapi/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /data-jokesapi/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/data-jokesapi/build.gradle -------------------------------------------------------------------------------- /data-jokesapi/consumer-rules.pro: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /data-jokesapi/proguard-rules.pro: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/data-jokesapi/proguard-rules.pro -------------------------------------------------------------------------------- /data-jokesapi/src/androidTest/java/prieto/fernando/data_jokesapi/ExampleInstrumentedTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/data-jokesapi/src/androidTest/java/prieto/fernando/data_jokesapi/ExampleInstrumentedTest.kt -------------------------------------------------------------------------------- /data-jokesapi/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/data-jokesapi/src/main/AndroidManifest.xml -------------------------------------------------------------------------------- /data-jokesapi/src/main/java/prieto/fernando/ApiService.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/data-jokesapi/src/main/java/prieto/fernando/ApiService.kt -------------------------------------------------------------------------------- /data-jokesapi/src/main/java/prieto/fernando/data/JokesRemoteSource.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/data-jokesapi/src/main/java/prieto/fernando/data/JokesRemoteSource.kt -------------------------------------------------------------------------------- /data-jokesapi/src/main/java/prieto/fernando/di/BaseUrl.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/data-jokesapi/src/main/java/prieto/fernando/di/BaseUrl.kt -------------------------------------------------------------------------------- /data-jokesapi/src/main/java/prieto/fernando/di/ChuckNorrisApiModule.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/data-jokesapi/src/main/java/prieto/fernando/di/ChuckNorrisApiModule.kt -------------------------------------------------------------------------------- /data-jokesapi/src/main/java/prieto/fernando/di/NetworkModule.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/data-jokesapi/src/main/java/prieto/fernando/di/NetworkModule.kt -------------------------------------------------------------------------------- /data-jokesapi/src/main/java/prieto/fernando/model/MultipleRandomJokeResponse.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/data-jokesapi/src/main/java/prieto/fernando/model/MultipleRandomJokeResponse.kt -------------------------------------------------------------------------------- /data-jokesapi/src/main/java/prieto/fernando/model/RandomJokeResponse.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/data-jokesapi/src/main/java/prieto/fernando/model/RandomJokeResponse.kt -------------------------------------------------------------------------------- /data-jokesapi/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/data-jokesapi/src/main/res/values/strings.xml -------------------------------------------------------------------------------- /domain/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /domain/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/domain/build.gradle -------------------------------------------------------------------------------- /domain/consumer-rules.pro: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /domain/proguard-rules.pro: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/domain/proguard-rules.pro -------------------------------------------------------------------------------- /domain/src/androidTest/java/prieto/fernando/domain/ExampleInstrumentedTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/domain/src/androidTest/java/prieto/fernando/domain/ExampleInstrumentedTest.kt -------------------------------------------------------------------------------- /domain/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/domain/src/main/AndroidManifest.xml -------------------------------------------------------------------------------- /domain/src/main/java/prieto/fernando/data/RandomJokeDomainModel.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/domain/src/main/java/prieto/fernando/data/RandomJokeDomainModel.kt -------------------------------------------------------------------------------- /domain/src/main/java/prieto/fernando/di/RepositoryModule.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/domain/src/main/java/prieto/fernando/di/RepositoryModule.kt -------------------------------------------------------------------------------- /domain/src/main/java/prieto/fernando/mapper/MultipleRandomJokeResponseToLocalModelMapper.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/domain/src/main/java/prieto/fernando/mapper/MultipleRandomJokeResponseToLocalModelMapper.kt -------------------------------------------------------------------------------- /domain/src/main/java/prieto/fernando/mapper/RandomJokeLocalToDomainModelMapper.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/domain/src/main/java/prieto/fernando/mapper/RandomJokeLocalToDomainModelMapper.kt -------------------------------------------------------------------------------- /domain/src/main/java/prieto/fernando/mapper/RandomJokeResponseToLocalModelMapper.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/domain/src/main/java/prieto/fernando/mapper/RandomJokeResponseToLocalModelMapper.kt -------------------------------------------------------------------------------- /domain/src/main/java/prieto/fernando/repository/JokesRepositoryImpl.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/domain/src/main/java/prieto/fernando/repository/JokesRepositoryImpl.kt -------------------------------------------------------------------------------- /domain/src/main/java/prieto/fernando/usecase/GetCustomRandomJokeUseCase.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/domain/src/main/java/prieto/fernando/usecase/GetCustomRandomJokeUseCase.kt -------------------------------------------------------------------------------- /domain/src/main/java/prieto/fernando/usecase/GetMultipleRandomJokeUseCase.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/domain/src/main/java/prieto/fernando/usecase/GetMultipleRandomJokeUseCase.kt -------------------------------------------------------------------------------- /domain/src/main/java/prieto/fernando/usecase/GetRandomJokeUseCase.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/domain/src/main/java/prieto/fernando/usecase/GetRandomJokeUseCase.kt -------------------------------------------------------------------------------- /domain/src/main/java/prieto/fernando/usecase/ResetCustomRandomJokeUseCase.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/domain/src/main/java/prieto/fernando/usecase/ResetCustomRandomJokeUseCase.kt -------------------------------------------------------------------------------- /domain/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/domain/src/main/res/values/strings.xml -------------------------------------------------------------------------------- /domain/src/test/java/prieto/fernando/domain/mapper/MultipleRandomJokeResponseToLocalModelMapperTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/domain/src/test/java/prieto/fernando/domain/mapper/MultipleRandomJokeResponseToLocalModelMapperTest.kt -------------------------------------------------------------------------------- /domain/src/test/java/prieto/fernando/domain/mapper/RandomJokeLocalToDomainModelMapperTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/domain/src/test/java/prieto/fernando/domain/mapper/RandomJokeLocalToDomainModelMapperTest.kt -------------------------------------------------------------------------------- /domain/src/test/java/prieto/fernando/domain/mapper/RandomJokeResponseToLocalModelMapperTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/domain/src/test/java/prieto/fernando/domain/mapper/RandomJokeResponseToLocalModelMapperTest.kt -------------------------------------------------------------------------------- /domain/src/test/java/prieto/fernando/domain/repository/JokesRepositoryImplTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/domain/src/test/java/prieto/fernando/domain/repository/JokesRepositoryImplTest.kt -------------------------------------------------------------------------------- /domain/src/test/java/prieto/fernando/domain/usecase/GetCustomRandomJokeUseCaseTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/domain/src/test/java/prieto/fernando/domain/usecase/GetCustomRandomJokeUseCaseTest.kt -------------------------------------------------------------------------------- /domain/src/test/java/prieto/fernando/domain/usecase/GetMultipleRandomJokeUseCaseTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/domain/src/test/java/prieto/fernando/domain/usecase/GetMultipleRandomJokeUseCaseTest.kt -------------------------------------------------------------------------------- /domain/src/test/java/prieto/fernando/domain/usecase/GetRandomJokeUseCaseTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/domain/src/test/java/prieto/fernando/domain/usecase/GetRandomJokeUseCaseTest.kt -------------------------------------------------------------------------------- /gradle.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/gradle.properties -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/gradle/wrapper/gradle-wrapper.properties -------------------------------------------------------------------------------- /gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/gradlew -------------------------------------------------------------------------------- /gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/gradlew.bat -------------------------------------------------------------------------------- /navigation/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/navigation/build.gradle -------------------------------------------------------------------------------- /navigation/consumer-rules.pro: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /navigation/proguard-rules.pro: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/navigation/proguard-rules.pro -------------------------------------------------------------------------------- /navigation/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/navigation/src/main/AndroidManifest.xml -------------------------------------------------------------------------------- /navigation/src/main/res/navigation/nav_graph.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/navigation/src/main/res/navigation/nav_graph.xml -------------------------------------------------------------------------------- /presentation/.gitignore: -------------------------------------------------------------------------------- 1 | /build 2 | -------------------------------------------------------------------------------- /presentation/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/presentation/build.gradle -------------------------------------------------------------------------------- /presentation/consumer-rules.pro: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /presentation/proguard-rules.pro: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/presentation/proguard-rules.pro -------------------------------------------------------------------------------- /presentation/src/androidTest/java/prieto/fernando/presentation/ExampleInstrumentedTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/presentation/src/androidTest/java/prieto/fernando/presentation/ExampleInstrumentedTest.kt -------------------------------------------------------------------------------- /presentation/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/presentation/src/main/AndroidManifest.xml -------------------------------------------------------------------------------- /presentation/src/main/java/prieto/fernando/presentation/RandomJokeUiModel.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/presentation/src/main/java/prieto/fernando/presentation/RandomJokeUiModel.kt -------------------------------------------------------------------------------- /presentation/src/main/java/prieto/fernando/presentation/custom/CustomJokeViewModel.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/presentation/src/main/java/prieto/fernando/presentation/custom/CustomJokeViewModel.kt -------------------------------------------------------------------------------- /presentation/src/main/java/prieto/fernando/presentation/custom/NamesButtonStateEvaluator.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/presentation/src/main/java/prieto/fernando/presentation/custom/NamesButtonStateEvaluator.kt -------------------------------------------------------------------------------- /presentation/src/main/java/prieto/fernando/presentation/dashboard/DashboardViewModel.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/presentation/src/main/java/prieto/fernando/presentation/dashboard/DashboardViewModel.kt -------------------------------------------------------------------------------- /presentation/src/main/java/prieto/fernando/presentation/data/RandomJokeAndTitleResource.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/presentation/src/main/java/prieto/fernando/presentation/data/RandomJokeAndTitleResource.kt -------------------------------------------------------------------------------- /presentation/src/main/java/prieto/fernando/presentation/infinite/InfiniteJokesViewModel.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/presentation/src/main/java/prieto/fernando/presentation/infinite/InfiniteJokesViewModel.kt -------------------------------------------------------------------------------- /presentation/src/main/java/prieto/fernando/presentation/main/MainViewModel.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/presentation/src/main/java/prieto/fernando/presentation/main/MainViewModel.kt -------------------------------------------------------------------------------- /presentation/src/main/java/prieto/fernando/presentation/mapper/RandomJokeDomainToUiModelMapper.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/presentation/src/main/java/prieto/fernando/presentation/mapper/RandomJokeDomainToUiModelMapper.kt -------------------------------------------------------------------------------- /presentation/src/main/java/prieto/fernando/presentation/model/NamesData.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/presentation/src/main/java/prieto/fernando/presentation/model/NamesData.kt -------------------------------------------------------------------------------- /presentation/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/presentation/src/main/res/values/strings.xml -------------------------------------------------------------------------------- /presentation/src/test/java/prieto/fernando/presentation/CustomJokeViewModelTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/presentation/src/test/java/prieto/fernando/presentation/CustomJokeViewModelTest.kt -------------------------------------------------------------------------------- /presentation/src/test/java/prieto/fernando/presentation/NamesButtonStateEvaluatorTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/presentation/src/test/java/prieto/fernando/presentation/NamesButtonStateEvaluatorTest.kt -------------------------------------------------------------------------------- /presentation/src/test/java/prieto/fernando/presentation/ViewModelSetup.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/presentation/src/test/java/prieto/fernando/presentation/ViewModelSetup.kt -------------------------------------------------------------------------------- /presentation/src/test/java/prieto/fernando/presentation/dashboard/DashboardViewModelTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/presentation/src/test/java/prieto/fernando/presentation/dashboard/DashboardViewModelTest.kt -------------------------------------------------------------------------------- /presentation/src/test/java/prieto/fernando/presentation/infinite/InfiniteJokesViewModelTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/presentation/src/test/java/prieto/fernando/presentation/infinite/InfiniteJokesViewModelTest.kt -------------------------------------------------------------------------------- /presentation/src/test/java/prieto/fernando/presentation/mapper/RandomJokeDomainToUiModelMapperTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/presentation/src/test/java/prieto/fernando/presentation/mapper/RandomJokeDomainToUiModelMapperTest.kt -------------------------------------------------------------------------------- /presentation/src/test/java/prieto/fernando/presentation/scheduler/TestSchedulerProvider.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/presentation/src/test/java/prieto/fernando/presentation/scheduler/TestSchedulerProvider.kt -------------------------------------------------------------------------------- /settings.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ferPrieto/MVVM-Modularized/HEAD/settings.gradle --------------------------------------------------------------------------------