├── .github └── workflows │ ├── pull_request.yml │ └── release.yml ├── .gitignore ├── LICENSE ├── README.md ├── docs ├── DSL.md └── README.md ├── gradle.properties ├── gradle ├── libs.versions.toml └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── mvi-core ├── build.gradle.kts └── src │ ├── main │ ├── AndroidManifest.xml │ └── kotlin │ │ └── ru │ │ └── surfstudio │ │ └── mvi │ │ ├── core │ │ ├── event │ │ │ ├── CommandEvent.kt │ │ │ ├── Event.kt │ │ │ ├── EventFactory.kt │ │ │ └── MviLifecycleEvent.kt │ │ ├── hub │ │ │ ├── EventHub.kt │ │ │ ├── ImmutableHub.kt │ │ │ └── MutableHub.kt │ │ ├── middleware │ │ │ ├── DslMiddleware.kt │ │ │ └── Middleware.kt │ │ ├── reducer │ │ │ ├── Reactor.kt │ │ │ ├── Reducer.kt │ │ │ └── ReducerCommandEmmitter.kt │ │ └── state │ │ │ ├── ImmutableState.kt │ │ │ ├── MutableState.kt │ │ │ └── StateHolder.kt │ │ ├── flow │ │ ├── BaseFlowMiddleware.kt │ │ ├── DslFlowMiddleware.kt │ │ ├── EventTransformerList.kt │ │ ├── FlowBinder.kt │ │ ├── FlowEventHub.kt │ │ ├── FlowStateHolder.kt │ │ └── LifecycleMiddleware.kt │ │ ├── lifecycle │ │ └── MapperLifecycleEvent.kt │ │ └── vm │ │ ├── BaseMviViewModels.kt │ │ ├── android │ │ ├── MviAndroidView.kt │ │ └── MviViewCommandBinds.kt │ │ └── compose │ │ ├── CommandObserver.kt │ │ ├── FoundationMviCompose.kt │ │ ├── MviBinds.kt │ │ ├── MviCommandBinds.kt │ │ └── MviRenders.kt │ └── test │ └── kotlin │ └── ru │ └── surfstudio │ └── mvi │ └── core │ └── test │ ├── BaseFlowTest.kt │ ├── MainCoroutineRule.kt │ └── MviCoreTest.kt ├── mvi-mappers ├── build.gradle.kts └── src │ ├── main │ ├── AndroidManifest.xml │ └── java │ │ └── ru │ │ └── surfstudio │ │ └── mvi │ │ └── mappers │ │ ├── Loading.kt │ │ ├── MapperFlowMiddleware.kt │ │ ├── Request.kt │ │ ├── RequestEvent.kt │ │ ├── RequestFlowExtensions.kt │ │ ├── RequestMapper.kt │ │ ├── RequestMapperLambdas.kt │ │ ├── RequestUi.kt │ │ └── handler │ │ ├── ErrorHandler.kt │ │ ├── ErrorHandlerReducer.kt │ │ ├── MviErrorHandlerAndroidView.kt │ │ └── MviErrorHandlerViewModel.kt │ └── test │ └── kotlin │ └── ru │ └── surfstudio │ └── mvi │ └── mappers │ └── test │ ├── ErrorMappingTest.kt │ ├── MapperFlowMiddlewareTest.kt │ ├── ReactMappingTest.kt │ ├── RequestTypeTransformationTest.kt │ ├── SimpleMappingTest.kt │ └── Utils.kt ├── sample ├── build.gradle.kts └── src │ ├── main │ ├── AndroidManifest.xml │ ├── kotlin │ │ └── ru │ │ │ └── surfstudio │ │ │ └── mvi │ │ │ └── flow │ │ │ └── app │ │ │ ├── compose │ │ │ ├── PlaceComposeActivity.kt │ │ │ ├── simple │ │ │ │ ├── SimpleComposeEvent.kt │ │ │ │ ├── SimpleComposeMiddleware.kt │ │ │ │ ├── SimpleComposeScreen.kt │ │ │ │ └── SimpleComposeViewModel.kt │ │ │ ├── standard │ │ │ │ ├── ComposeMiddleware.kt │ │ │ │ ├── ComposeScreen.kt │ │ │ │ └── ComposeViewModel.kt │ │ │ └── theme │ │ │ │ ├── Shape.kt │ │ │ │ ├── Theme.kt │ │ │ │ └── Type.kt │ │ │ ├── handler │ │ │ ├── HandlerActivity.kt │ │ │ ├── HandlerMiddleware.kt │ │ │ └── HandlerViewModel.kt │ │ │ ├── network │ │ │ ├── IpApi.kt │ │ │ ├── IpNetworkCreator.kt │ │ │ ├── IpRepository.kt │ │ │ └── IpResponse.kt │ │ │ ├── reused │ │ │ ├── NetworkEvent.kt │ │ │ ├── NetworkReducer.kt │ │ │ ├── error │ │ │ │ ├── Error.kt │ │ │ │ └── ErrorHandlerImpl.kt │ │ │ └── mapper │ │ │ │ ├── LoadStateType.kt │ │ │ │ └── RequestMappers.kt │ │ │ ├── simple │ │ │ ├── SimpleActivity.kt │ │ │ ├── SimpleEvent.kt │ │ │ ├── SimpleMiddleware.kt │ │ │ ├── SimpleReducer.kt │ │ │ ├── SimpleViewModel.kt │ │ │ └── request │ │ │ │ └── RequestState.kt │ │ │ └── utils │ │ │ └── MVI.kt │ └── res │ │ ├── drawable-v24 │ │ └── ic_launcher_foreground.xml │ │ ├── drawable │ │ └── ic_launcher_background.xml │ │ ├── layout │ │ ├── activity_handler.xml │ │ └── activity_simple.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-night │ │ └── themes.xml │ │ └── values │ │ ├── colors.xml │ │ ├── strings.xml │ │ └── themes.xml │ └── test │ └── kotlin │ └── ru │ └── surfstudio │ └── mvi │ └── flow │ └── app │ └── test │ ├── HandlerScreenTest.kt │ ├── SimpleScreenTest.kt │ └── core │ ├── BaseMviScreenTest.kt │ ├── BaseUnitTest.kt │ ├── MainCoroutineRule.kt │ └── MviData.kt ├── settings.gradle.kts ├── spotless └── LicenseHeader └── stability_config.conf /.github/workflows/pull_request.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/.github/workflows/pull_request.yml -------------------------------------------------------------------------------- /.github/workflows/release.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/.github/workflows/release.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/.gitignore -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/README.md -------------------------------------------------------------------------------- /docs/DSL.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/docs/DSL.md -------------------------------------------------------------------------------- /docs/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/docs/README.md -------------------------------------------------------------------------------- /gradle.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/gradle.properties -------------------------------------------------------------------------------- /gradle/libs.versions.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/gradle/libs.versions.toml -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/gradle/wrapper/gradle-wrapper.properties -------------------------------------------------------------------------------- /gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/gradlew -------------------------------------------------------------------------------- /gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/gradlew.bat -------------------------------------------------------------------------------- /mvi-core/build.gradle.kts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/mvi-core/build.gradle.kts -------------------------------------------------------------------------------- /mvi-core/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /mvi-core/src/main/kotlin/ru/surfstudio/mvi/core/event/CommandEvent.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/mvi-core/src/main/kotlin/ru/surfstudio/mvi/core/event/CommandEvent.kt -------------------------------------------------------------------------------- /mvi-core/src/main/kotlin/ru/surfstudio/mvi/core/event/Event.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/mvi-core/src/main/kotlin/ru/surfstudio/mvi/core/event/Event.kt -------------------------------------------------------------------------------- /mvi-core/src/main/kotlin/ru/surfstudio/mvi/core/event/EventFactory.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/mvi-core/src/main/kotlin/ru/surfstudio/mvi/core/event/EventFactory.kt -------------------------------------------------------------------------------- /mvi-core/src/main/kotlin/ru/surfstudio/mvi/core/event/MviLifecycleEvent.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/mvi-core/src/main/kotlin/ru/surfstudio/mvi/core/event/MviLifecycleEvent.kt -------------------------------------------------------------------------------- /mvi-core/src/main/kotlin/ru/surfstudio/mvi/core/hub/EventHub.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/mvi-core/src/main/kotlin/ru/surfstudio/mvi/core/hub/EventHub.kt -------------------------------------------------------------------------------- /mvi-core/src/main/kotlin/ru/surfstudio/mvi/core/hub/ImmutableHub.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/mvi-core/src/main/kotlin/ru/surfstudio/mvi/core/hub/ImmutableHub.kt -------------------------------------------------------------------------------- /mvi-core/src/main/kotlin/ru/surfstudio/mvi/core/hub/MutableHub.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/mvi-core/src/main/kotlin/ru/surfstudio/mvi/core/hub/MutableHub.kt -------------------------------------------------------------------------------- /mvi-core/src/main/kotlin/ru/surfstudio/mvi/core/middleware/DslMiddleware.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/mvi-core/src/main/kotlin/ru/surfstudio/mvi/core/middleware/DslMiddleware.kt -------------------------------------------------------------------------------- /mvi-core/src/main/kotlin/ru/surfstudio/mvi/core/middleware/Middleware.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/mvi-core/src/main/kotlin/ru/surfstudio/mvi/core/middleware/Middleware.kt -------------------------------------------------------------------------------- /mvi-core/src/main/kotlin/ru/surfstudio/mvi/core/reducer/Reactor.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/mvi-core/src/main/kotlin/ru/surfstudio/mvi/core/reducer/Reactor.kt -------------------------------------------------------------------------------- /mvi-core/src/main/kotlin/ru/surfstudio/mvi/core/reducer/Reducer.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/mvi-core/src/main/kotlin/ru/surfstudio/mvi/core/reducer/Reducer.kt -------------------------------------------------------------------------------- /mvi-core/src/main/kotlin/ru/surfstudio/mvi/core/reducer/ReducerCommandEmmitter.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/mvi-core/src/main/kotlin/ru/surfstudio/mvi/core/reducer/ReducerCommandEmmitter.kt -------------------------------------------------------------------------------- /mvi-core/src/main/kotlin/ru/surfstudio/mvi/core/state/ImmutableState.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/mvi-core/src/main/kotlin/ru/surfstudio/mvi/core/state/ImmutableState.kt -------------------------------------------------------------------------------- /mvi-core/src/main/kotlin/ru/surfstudio/mvi/core/state/MutableState.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/mvi-core/src/main/kotlin/ru/surfstudio/mvi/core/state/MutableState.kt -------------------------------------------------------------------------------- /mvi-core/src/main/kotlin/ru/surfstudio/mvi/core/state/StateHolder.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/mvi-core/src/main/kotlin/ru/surfstudio/mvi/core/state/StateHolder.kt -------------------------------------------------------------------------------- /mvi-core/src/main/kotlin/ru/surfstudio/mvi/flow/BaseFlowMiddleware.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/mvi-core/src/main/kotlin/ru/surfstudio/mvi/flow/BaseFlowMiddleware.kt -------------------------------------------------------------------------------- /mvi-core/src/main/kotlin/ru/surfstudio/mvi/flow/DslFlowMiddleware.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/mvi-core/src/main/kotlin/ru/surfstudio/mvi/flow/DslFlowMiddleware.kt -------------------------------------------------------------------------------- /mvi-core/src/main/kotlin/ru/surfstudio/mvi/flow/EventTransformerList.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/mvi-core/src/main/kotlin/ru/surfstudio/mvi/flow/EventTransformerList.kt -------------------------------------------------------------------------------- /mvi-core/src/main/kotlin/ru/surfstudio/mvi/flow/FlowBinder.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/mvi-core/src/main/kotlin/ru/surfstudio/mvi/flow/FlowBinder.kt -------------------------------------------------------------------------------- /mvi-core/src/main/kotlin/ru/surfstudio/mvi/flow/FlowEventHub.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/mvi-core/src/main/kotlin/ru/surfstudio/mvi/flow/FlowEventHub.kt -------------------------------------------------------------------------------- /mvi-core/src/main/kotlin/ru/surfstudio/mvi/flow/FlowStateHolder.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/mvi-core/src/main/kotlin/ru/surfstudio/mvi/flow/FlowStateHolder.kt -------------------------------------------------------------------------------- /mvi-core/src/main/kotlin/ru/surfstudio/mvi/flow/LifecycleMiddleware.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/mvi-core/src/main/kotlin/ru/surfstudio/mvi/flow/LifecycleMiddleware.kt -------------------------------------------------------------------------------- /mvi-core/src/main/kotlin/ru/surfstudio/mvi/lifecycle/MapperLifecycleEvent.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/mvi-core/src/main/kotlin/ru/surfstudio/mvi/lifecycle/MapperLifecycleEvent.kt -------------------------------------------------------------------------------- /mvi-core/src/main/kotlin/ru/surfstudio/mvi/vm/BaseMviViewModels.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/mvi-core/src/main/kotlin/ru/surfstudio/mvi/vm/BaseMviViewModels.kt -------------------------------------------------------------------------------- /mvi-core/src/main/kotlin/ru/surfstudio/mvi/vm/android/MviAndroidView.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/mvi-core/src/main/kotlin/ru/surfstudio/mvi/vm/android/MviAndroidView.kt -------------------------------------------------------------------------------- /mvi-core/src/main/kotlin/ru/surfstudio/mvi/vm/android/MviViewCommandBinds.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/mvi-core/src/main/kotlin/ru/surfstudio/mvi/vm/android/MviViewCommandBinds.kt -------------------------------------------------------------------------------- /mvi-core/src/main/kotlin/ru/surfstudio/mvi/vm/compose/CommandObserver.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/mvi-core/src/main/kotlin/ru/surfstudio/mvi/vm/compose/CommandObserver.kt -------------------------------------------------------------------------------- /mvi-core/src/main/kotlin/ru/surfstudio/mvi/vm/compose/FoundationMviCompose.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/mvi-core/src/main/kotlin/ru/surfstudio/mvi/vm/compose/FoundationMviCompose.kt -------------------------------------------------------------------------------- /mvi-core/src/main/kotlin/ru/surfstudio/mvi/vm/compose/MviBinds.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/mvi-core/src/main/kotlin/ru/surfstudio/mvi/vm/compose/MviBinds.kt -------------------------------------------------------------------------------- /mvi-core/src/main/kotlin/ru/surfstudio/mvi/vm/compose/MviCommandBinds.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/mvi-core/src/main/kotlin/ru/surfstudio/mvi/vm/compose/MviCommandBinds.kt -------------------------------------------------------------------------------- /mvi-core/src/main/kotlin/ru/surfstudio/mvi/vm/compose/MviRenders.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/mvi-core/src/main/kotlin/ru/surfstudio/mvi/vm/compose/MviRenders.kt -------------------------------------------------------------------------------- /mvi-core/src/test/kotlin/ru/surfstudio/mvi/core/test/BaseFlowTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/mvi-core/src/test/kotlin/ru/surfstudio/mvi/core/test/BaseFlowTest.kt -------------------------------------------------------------------------------- /mvi-core/src/test/kotlin/ru/surfstudio/mvi/core/test/MainCoroutineRule.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/mvi-core/src/test/kotlin/ru/surfstudio/mvi/core/test/MainCoroutineRule.kt -------------------------------------------------------------------------------- /mvi-core/src/test/kotlin/ru/surfstudio/mvi/core/test/MviCoreTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/mvi-core/src/test/kotlin/ru/surfstudio/mvi/core/test/MviCoreTest.kt -------------------------------------------------------------------------------- /mvi-mappers/build.gradle.kts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/mvi-mappers/build.gradle.kts -------------------------------------------------------------------------------- /mvi-mappers/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /mvi-mappers/src/main/java/ru/surfstudio/mvi/mappers/Loading.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/mvi-mappers/src/main/java/ru/surfstudio/mvi/mappers/Loading.kt -------------------------------------------------------------------------------- /mvi-mappers/src/main/java/ru/surfstudio/mvi/mappers/MapperFlowMiddleware.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/mvi-mappers/src/main/java/ru/surfstudio/mvi/mappers/MapperFlowMiddleware.kt -------------------------------------------------------------------------------- /mvi-mappers/src/main/java/ru/surfstudio/mvi/mappers/Request.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/mvi-mappers/src/main/java/ru/surfstudio/mvi/mappers/Request.kt -------------------------------------------------------------------------------- /mvi-mappers/src/main/java/ru/surfstudio/mvi/mappers/RequestEvent.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/mvi-mappers/src/main/java/ru/surfstudio/mvi/mappers/RequestEvent.kt -------------------------------------------------------------------------------- /mvi-mappers/src/main/java/ru/surfstudio/mvi/mappers/RequestFlowExtensions.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/mvi-mappers/src/main/java/ru/surfstudio/mvi/mappers/RequestFlowExtensions.kt -------------------------------------------------------------------------------- /mvi-mappers/src/main/java/ru/surfstudio/mvi/mappers/RequestMapper.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/mvi-mappers/src/main/java/ru/surfstudio/mvi/mappers/RequestMapper.kt -------------------------------------------------------------------------------- /mvi-mappers/src/main/java/ru/surfstudio/mvi/mappers/RequestMapperLambdas.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/mvi-mappers/src/main/java/ru/surfstudio/mvi/mappers/RequestMapperLambdas.kt -------------------------------------------------------------------------------- /mvi-mappers/src/main/java/ru/surfstudio/mvi/mappers/RequestUi.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/mvi-mappers/src/main/java/ru/surfstudio/mvi/mappers/RequestUi.kt -------------------------------------------------------------------------------- /mvi-mappers/src/main/java/ru/surfstudio/mvi/mappers/handler/ErrorHandler.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/mvi-mappers/src/main/java/ru/surfstudio/mvi/mappers/handler/ErrorHandler.kt -------------------------------------------------------------------------------- /mvi-mappers/src/main/java/ru/surfstudio/mvi/mappers/handler/ErrorHandlerReducer.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/mvi-mappers/src/main/java/ru/surfstudio/mvi/mappers/handler/ErrorHandlerReducer.kt -------------------------------------------------------------------------------- /mvi-mappers/src/main/java/ru/surfstudio/mvi/mappers/handler/MviErrorHandlerAndroidView.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/mvi-mappers/src/main/java/ru/surfstudio/mvi/mappers/handler/MviErrorHandlerAndroidView.kt -------------------------------------------------------------------------------- /mvi-mappers/src/main/java/ru/surfstudio/mvi/mappers/handler/MviErrorHandlerViewModel.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/mvi-mappers/src/main/java/ru/surfstudio/mvi/mappers/handler/MviErrorHandlerViewModel.kt -------------------------------------------------------------------------------- /mvi-mappers/src/test/kotlin/ru/surfstudio/mvi/mappers/test/ErrorMappingTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/mvi-mappers/src/test/kotlin/ru/surfstudio/mvi/mappers/test/ErrorMappingTest.kt -------------------------------------------------------------------------------- /mvi-mappers/src/test/kotlin/ru/surfstudio/mvi/mappers/test/MapperFlowMiddlewareTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/mvi-mappers/src/test/kotlin/ru/surfstudio/mvi/mappers/test/MapperFlowMiddlewareTest.kt -------------------------------------------------------------------------------- /mvi-mappers/src/test/kotlin/ru/surfstudio/mvi/mappers/test/ReactMappingTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/mvi-mappers/src/test/kotlin/ru/surfstudio/mvi/mappers/test/ReactMappingTest.kt -------------------------------------------------------------------------------- /mvi-mappers/src/test/kotlin/ru/surfstudio/mvi/mappers/test/RequestTypeTransformationTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/mvi-mappers/src/test/kotlin/ru/surfstudio/mvi/mappers/test/RequestTypeTransformationTest.kt -------------------------------------------------------------------------------- /mvi-mappers/src/test/kotlin/ru/surfstudio/mvi/mappers/test/SimpleMappingTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/mvi-mappers/src/test/kotlin/ru/surfstudio/mvi/mappers/test/SimpleMappingTest.kt -------------------------------------------------------------------------------- /mvi-mappers/src/test/kotlin/ru/surfstudio/mvi/mappers/test/Utils.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/mvi-mappers/src/test/kotlin/ru/surfstudio/mvi/mappers/test/Utils.kt -------------------------------------------------------------------------------- /sample/build.gradle.kts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/build.gradle.kts -------------------------------------------------------------------------------- /sample/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/main/AndroidManifest.xml -------------------------------------------------------------------------------- /sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/compose/PlaceComposeActivity.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/compose/PlaceComposeActivity.kt -------------------------------------------------------------------------------- /sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/compose/simple/SimpleComposeEvent.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/compose/simple/SimpleComposeEvent.kt -------------------------------------------------------------------------------- /sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/compose/simple/SimpleComposeMiddleware.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/compose/simple/SimpleComposeMiddleware.kt -------------------------------------------------------------------------------- /sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/compose/simple/SimpleComposeScreen.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/compose/simple/SimpleComposeScreen.kt -------------------------------------------------------------------------------- /sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/compose/simple/SimpleComposeViewModel.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/compose/simple/SimpleComposeViewModel.kt -------------------------------------------------------------------------------- /sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/compose/standard/ComposeMiddleware.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/compose/standard/ComposeMiddleware.kt -------------------------------------------------------------------------------- /sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/compose/standard/ComposeScreen.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/compose/standard/ComposeScreen.kt -------------------------------------------------------------------------------- /sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/compose/standard/ComposeViewModel.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/compose/standard/ComposeViewModel.kt -------------------------------------------------------------------------------- /sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/compose/theme/Shape.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/compose/theme/Shape.kt -------------------------------------------------------------------------------- /sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/compose/theme/Theme.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/compose/theme/Theme.kt -------------------------------------------------------------------------------- /sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/compose/theme/Type.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/compose/theme/Type.kt -------------------------------------------------------------------------------- /sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/handler/HandlerActivity.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/handler/HandlerActivity.kt -------------------------------------------------------------------------------- /sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/handler/HandlerMiddleware.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/handler/HandlerMiddleware.kt -------------------------------------------------------------------------------- /sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/handler/HandlerViewModel.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/handler/HandlerViewModel.kt -------------------------------------------------------------------------------- /sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/network/IpApi.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/network/IpApi.kt -------------------------------------------------------------------------------- /sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/network/IpNetworkCreator.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/network/IpNetworkCreator.kt -------------------------------------------------------------------------------- /sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/network/IpRepository.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/network/IpRepository.kt -------------------------------------------------------------------------------- /sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/network/IpResponse.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/network/IpResponse.kt -------------------------------------------------------------------------------- /sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/reused/NetworkEvent.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/reused/NetworkEvent.kt -------------------------------------------------------------------------------- /sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/reused/NetworkReducer.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/reused/NetworkReducer.kt -------------------------------------------------------------------------------- /sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/reused/error/Error.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/reused/error/Error.kt -------------------------------------------------------------------------------- /sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/reused/error/ErrorHandlerImpl.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/reused/error/ErrorHandlerImpl.kt -------------------------------------------------------------------------------- /sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/reused/mapper/LoadStateType.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/reused/mapper/LoadStateType.kt -------------------------------------------------------------------------------- /sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/reused/mapper/RequestMappers.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/reused/mapper/RequestMappers.kt -------------------------------------------------------------------------------- /sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/simple/SimpleActivity.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/simple/SimpleActivity.kt -------------------------------------------------------------------------------- /sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/simple/SimpleEvent.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/simple/SimpleEvent.kt -------------------------------------------------------------------------------- /sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/simple/SimpleMiddleware.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/simple/SimpleMiddleware.kt -------------------------------------------------------------------------------- /sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/simple/SimpleReducer.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/simple/SimpleReducer.kt -------------------------------------------------------------------------------- /sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/simple/SimpleViewModel.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/simple/SimpleViewModel.kt -------------------------------------------------------------------------------- /sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/simple/request/RequestState.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/simple/request/RequestState.kt -------------------------------------------------------------------------------- /sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/utils/MVI.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/main/kotlin/ru/surfstudio/mvi/flow/app/utils/MVI.kt -------------------------------------------------------------------------------- /sample/src/main/res/drawable-v24/ic_launcher_foreground.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/main/res/drawable-v24/ic_launcher_foreground.xml -------------------------------------------------------------------------------- /sample/src/main/res/drawable/ic_launcher_background.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/main/res/drawable/ic_launcher_background.xml -------------------------------------------------------------------------------- /sample/src/main/res/layout/activity_handler.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/main/res/layout/activity_handler.xml -------------------------------------------------------------------------------- /sample/src/main/res/layout/activity_simple.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/main/res/layout/activity_simple.xml -------------------------------------------------------------------------------- /sample/src/main/res/mipmap-anydpi-v26/ic_launcher.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/main/res/mipmap-anydpi-v26/ic_launcher.xml -------------------------------------------------------------------------------- /sample/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml -------------------------------------------------------------------------------- /sample/src/main/res/mipmap-hdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/main/res/mipmap-hdpi/ic_launcher.webp -------------------------------------------------------------------------------- /sample/src/main/res/mipmap-hdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/main/res/mipmap-hdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /sample/src/main/res/mipmap-mdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/main/res/mipmap-mdpi/ic_launcher.webp -------------------------------------------------------------------------------- /sample/src/main/res/mipmap-mdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/main/res/mipmap-mdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /sample/src/main/res/mipmap-xhdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/main/res/mipmap-xhdpi/ic_launcher.webp -------------------------------------------------------------------------------- /sample/src/main/res/mipmap-xhdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/main/res/mipmap-xhdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /sample/src/main/res/mipmap-xxhdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/main/res/mipmap-xxhdpi/ic_launcher.webp -------------------------------------------------------------------------------- /sample/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /sample/src/main/res/mipmap-xxxhdpi/ic_launcher.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/main/res/mipmap-xxxhdpi/ic_launcher.webp -------------------------------------------------------------------------------- /sample/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp -------------------------------------------------------------------------------- /sample/src/main/res/values-night/themes.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/main/res/values-night/themes.xml -------------------------------------------------------------------------------- /sample/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/main/res/values/colors.xml -------------------------------------------------------------------------------- /sample/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/main/res/values/strings.xml -------------------------------------------------------------------------------- /sample/src/main/res/values/themes.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/main/res/values/themes.xml -------------------------------------------------------------------------------- /sample/src/test/kotlin/ru/surfstudio/mvi/flow/app/test/HandlerScreenTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/test/kotlin/ru/surfstudio/mvi/flow/app/test/HandlerScreenTest.kt -------------------------------------------------------------------------------- /sample/src/test/kotlin/ru/surfstudio/mvi/flow/app/test/SimpleScreenTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/test/kotlin/ru/surfstudio/mvi/flow/app/test/SimpleScreenTest.kt -------------------------------------------------------------------------------- /sample/src/test/kotlin/ru/surfstudio/mvi/flow/app/test/core/BaseMviScreenTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/test/kotlin/ru/surfstudio/mvi/flow/app/test/core/BaseMviScreenTest.kt -------------------------------------------------------------------------------- /sample/src/test/kotlin/ru/surfstudio/mvi/flow/app/test/core/BaseUnitTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/test/kotlin/ru/surfstudio/mvi/flow/app/test/core/BaseUnitTest.kt -------------------------------------------------------------------------------- /sample/src/test/kotlin/ru/surfstudio/mvi/flow/app/test/core/MainCoroutineRule.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/test/kotlin/ru/surfstudio/mvi/flow/app/test/core/MainCoroutineRule.kt -------------------------------------------------------------------------------- /sample/src/test/kotlin/ru/surfstudio/mvi/flow/app/test/core/MviData.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/sample/src/test/kotlin/ru/surfstudio/mvi/flow/app/test/core/MviData.kt -------------------------------------------------------------------------------- /settings.gradle.kts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/settings.gradle.kts -------------------------------------------------------------------------------- /spotless/LicenseHeader: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/surfstudio/surf-mvi-flow/HEAD/spotless/LicenseHeader -------------------------------------------------------------------------------- /stability_config.conf: -------------------------------------------------------------------------------- 1 | --------------------------------------------------------------------------------