├── .gitignore ├── .idea ├── .gitignore ├── .name ├── compiler.xml ├── gradle.xml ├── misc.xml └── vcs.xml ├── README.md ├── app ├── .gitignore ├── build.gradle ├── proguard-rules.pro └── src │ ├── main │ ├── AndroidManifest.xml │ ├── java │ │ └── com │ │ │ └── example │ │ │ └── statereducerflow │ │ │ ├── StateReducerFlow.kt │ │ │ ├── data │ │ │ ├── Movie.kt │ │ │ └── MoviesJson.kt │ │ │ ├── logic │ │ │ └── FetchMovies.kt │ │ │ └── ui │ │ │ ├── MoviesListActivity.kt │ │ │ ├── MoviesListEvent.kt │ │ │ ├── MoviesListState.kt │ │ │ └── MoviesListViewModel.kt │ └── res │ │ ├── drawable-v24 │ │ └── ic_launcher_foreground.xml │ │ ├── drawable │ │ ├── ic_launcher_background.xml │ │ ├── ic_shuffle.xml │ │ ├── ic_star.xml │ │ └── ic_star_outline.xml │ │ ├── mipmap-anydpi-v26 │ │ ├── ic_launcher.xml │ │ └── ic_launcher_round.xml │ │ ├── mipmap-hdpi │ │ ├── ic_launcher.webp │ │ └── ic_launcher_round.webp │ │ ├── mipmap-mdpi │ │ ├── ic_launcher.webp │ │ └── ic_launcher_round.webp │ │ ├── mipmap-xhdpi │ │ ├── ic_launcher.webp │ │ └── ic_launcher_round.webp │ │ ├── mipmap-xxhdpi │ │ ├── ic_launcher.webp │ │ └── ic_launcher_round.webp │ │ ├── mipmap-xxxhdpi │ │ ├── ic_launcher.webp │ │ └── ic_launcher_round.webp │ │ └── values │ │ ├── colors.xml │ │ ├── strings.xml │ │ └── themes.xml │ └── test │ └── java │ └── com │ └── example │ └── statereducerflow │ ├── MoviesListViewModelTest.kt │ └── TestCoroutineRule.kt ├── demo.gif ├── gradle.properties ├── gradle └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat └── settings.gradle /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linean/StateReducerFlow/HEAD/.gitignore -------------------------------------------------------------------------------- /.idea/.gitignore: -------------------------------------------------------------------------------- 1 | # Default ignored files 2 | /shelf/ 3 | /workspace.xml 4 | -------------------------------------------------------------------------------- /.idea/.name: -------------------------------------------------------------------------------- 1 | StateReducerFlow -------------------------------------------------------------------------------- /.idea/compiler.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linean/StateReducerFlow/HEAD/.idea/compiler.xml -------------------------------------------------------------------------------- /.idea/gradle.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linean/StateReducerFlow/HEAD/.idea/gradle.xml -------------------------------------------------------------------------------- /.idea/misc.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linean/StateReducerFlow/HEAD/.idea/misc.xml -------------------------------------------------------------------------------- /.idea/vcs.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linean/StateReducerFlow/HEAD/.idea/vcs.xml -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linean/StateReducerFlow/HEAD/README.md -------------------------------------------------------------------------------- /app/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /app/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linean/StateReducerFlow/HEAD/app/build.gradle -------------------------------------------------------------------------------- /app/proguard-rules.pro: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linean/StateReducerFlow/HEAD/app/proguard-rules.pro -------------------------------------------------------------------------------- /app/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linean/StateReducerFlow/HEAD/app/src/main/AndroidManifest.xml -------------------------------------------------------------------------------- /app/src/main/java/com/example/statereducerflow/StateReducerFlow.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linean/StateReducerFlow/HEAD/app/src/main/java/com/example/statereducerflow/StateReducerFlow.kt -------------------------------------------------------------------------------- /app/src/main/java/com/example/statereducerflow/data/Movie.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linean/StateReducerFlow/HEAD/app/src/main/java/com/example/statereducerflow/data/Movie.kt -------------------------------------------------------------------------------- /app/src/main/java/com/example/statereducerflow/data/MoviesJson.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linean/StateReducerFlow/HEAD/app/src/main/java/com/example/statereducerflow/data/MoviesJson.kt -------------------------------------------------------------------------------- /app/src/main/java/com/example/statereducerflow/logic/FetchMovies.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linean/StateReducerFlow/HEAD/app/src/main/java/com/example/statereducerflow/logic/FetchMovies.kt -------------------------------------------------------------------------------- /app/src/main/java/com/example/statereducerflow/ui/MoviesListActivity.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linean/StateReducerFlow/HEAD/app/src/main/java/com/example/statereducerflow/ui/MoviesListActivity.kt -------------------------------------------------------------------------------- /app/src/main/java/com/example/statereducerflow/ui/MoviesListEvent.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linean/StateReducerFlow/HEAD/app/src/main/java/com/example/statereducerflow/ui/MoviesListEvent.kt -------------------------------------------------------------------------------- /app/src/main/java/com/example/statereducerflow/ui/MoviesListState.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linean/StateReducerFlow/HEAD/app/src/main/java/com/example/statereducerflow/ui/MoviesListState.kt -------------------------------------------------------------------------------- /app/src/main/java/com/example/statereducerflow/ui/MoviesListViewModel.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linean/StateReducerFlow/HEAD/app/src/main/java/com/example/statereducerflow/ui/MoviesListViewModel.kt -------------------------------------------------------------------------------- /app/src/main/res/drawable-v24/ic_launcher_foreground.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linean/StateReducerFlow/HEAD/app/src/main/res/drawable-v24/ic_launcher_foreground.xml -------------------------------------------------------------------------------- /app/src/main/res/drawable/ic_launcher_background.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linean/StateReducerFlow/HEAD/app/src/main/res/drawable/ic_launcher_background.xml -------------------------------------------------------------------------------- /app/src/main/res/drawable/ic_shuffle.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linean/StateReducerFlow/HEAD/app/src/main/res/drawable/ic_shuffle.xml -------------------------------------------------------------------------------- /app/src/main/res/drawable/ic_star.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linean/StateReducerFlow/HEAD/app/src/main/res/drawable/ic_star.xml -------------------------------------------------------------------------------- /app/src/main/res/drawable/ic_star_outline.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linean/StateReducerFlow/HEAD/app/src/main/res/drawable/ic_star_outline.xml -------------------------------------------------------------------------------- /app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linean/StateReducerFlow/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/linean/StateReducerFlow/HEAD/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml -------------------------------------------------------------------------------- /app/src/main/res/mipmap-hdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linean/StateReducerFlow/HEAD/app/src/main/res/mipmap-hdpi/ic_launcher.webp -------------------------------------------------------------------------------- /app/src/main/res/mipmap-hdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linean/StateReducerFlow/HEAD/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /app/src/main/res/mipmap-mdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linean/StateReducerFlow/HEAD/app/src/main/res/mipmap-mdpi/ic_launcher.webp -------------------------------------------------------------------------------- /app/src/main/res/mipmap-mdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linean/StateReducerFlow/HEAD/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xhdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linean/StateReducerFlow/HEAD/app/src/main/res/mipmap-xhdpi/ic_launcher.webp -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linean/StateReducerFlow/HEAD/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxhdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linean/StateReducerFlow/HEAD/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linean/StateReducerFlow/HEAD/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linean/StateReducerFlow/HEAD/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp -------------------------------------------------------------------------------- /app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linean/StateReducerFlow/HEAD/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /app/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linean/StateReducerFlow/HEAD/app/src/main/res/values/colors.xml -------------------------------------------------------------------------------- /app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linean/StateReducerFlow/HEAD/app/src/main/res/values/strings.xml -------------------------------------------------------------------------------- /app/src/main/res/values/themes.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linean/StateReducerFlow/HEAD/app/src/main/res/values/themes.xml -------------------------------------------------------------------------------- /app/src/test/java/com/example/statereducerflow/MoviesListViewModelTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linean/StateReducerFlow/HEAD/app/src/test/java/com/example/statereducerflow/MoviesListViewModelTest.kt -------------------------------------------------------------------------------- /app/src/test/java/com/example/statereducerflow/TestCoroutineRule.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linean/StateReducerFlow/HEAD/app/src/test/java/com/example/statereducerflow/TestCoroutineRule.kt -------------------------------------------------------------------------------- /demo.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linean/StateReducerFlow/HEAD/demo.gif -------------------------------------------------------------------------------- /gradle.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linean/StateReducerFlow/HEAD/gradle.properties -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linean/StateReducerFlow/HEAD/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linean/StateReducerFlow/HEAD/gradle/wrapper/gradle-wrapper.properties -------------------------------------------------------------------------------- /gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linean/StateReducerFlow/HEAD/gradlew -------------------------------------------------------------------------------- /gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linean/StateReducerFlow/HEAD/gradlew.bat -------------------------------------------------------------------------------- /settings.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/linean/StateReducerFlow/HEAD/settings.gradle --------------------------------------------------------------------------------