├── .editorconfig ├── .github └── workflows │ ├── deploy_docs.yml │ ├── release_compose.yml │ ├── release_kotest.yml │ ├── release_mvi.yml │ └── test.yml ├── .gitignore ├── .idea ├── .gitignore ├── .name ├── artifacts │ └── mvi_jvm.xml ├── deploymentTargetSelector.xml └── other.xml ├── docs ├── .gitignore ├── LICENSE ├── README.md ├── assets │ └── mvi_logo.png ├── babel.config.js ├── docs │ ├── core_concepts.md │ ├── examples.md │ ├── getting_started.md │ └── intro.md ├── docusaurus.config.js ├── package-lock.json ├── package.json ├── sidebars.js ├── src │ ├── components │ │ └── HomepageFeatures │ │ │ ├── index.js │ │ │ └── styles.module.css │ ├── css │ │ └── custom.css │ └── pages │ │ ├── index.js │ │ ├── index.module.css │ │ └── markdown-page.md └── static │ ├── .nojekyll │ └── img │ ├── docusaurus.png │ ├── favicon.ico │ ├── logo.png │ └── undraw_docusaurus_tree.svg ├── gradle.properties ├── gradle ├── libs.versions.toml └── wrapper │ ├── gradle-wrapper.jar │ └── gradle-wrapper.properties ├── gradlew ├── gradlew.bat ├── mvi-compose ├── build.gradle.kts ├── gradle.properties └── src │ ├── androidMain │ └── kotlin │ │ └── com │ │ └── adidas │ │ └── mvi │ │ └── compose │ │ └── MviScreen.kt │ └── commonMain │ └── kotlin │ └── com │ └── adidas │ └── mvi │ └── compose │ └── MviContainer.kt ├── mvi-kotest ├── build.gradle.kts ├── gradle.properties └── src │ └── main │ └── kotlin │ └── com │ └── adidas │ └── mvi │ └── kotest │ ├── BehaviorSpecRootScopeExtensions.kt │ ├── TestMviLogger.kt │ ├── ViewModelContainerScope.kt │ └── ViewModelWhenContainerScope.kt ├── mvi-sample ├── .gitignore ├── build.gradle.kts └── src │ ├── main │ ├── AndroidManifest.xml │ ├── kotlin │ │ └── com │ │ │ └── adidas │ │ │ └── mvi │ │ │ └── sample │ │ │ ├── MviSampleActivity.kt │ │ │ ├── app │ │ │ ├── MviSampleApplication.kt │ │ │ ├── di │ │ │ │ └── AppModule.kt │ │ │ └── logger │ │ │ │ └── ReducerConsoleLogger.kt │ │ │ └── login │ │ │ ├── di │ │ │ └── LoginModule.kt │ │ │ ├── ui │ │ │ └── LoginScreen.kt │ │ │ └── viewmodel │ │ │ ├── LoginIntent.kt │ │ │ ├── LoginSideEffect.kt │ │ │ ├── LoginState.kt │ │ │ ├── LoginTransform.kt │ │ │ └── LoginViewModel.kt │ └── res │ │ ├── mipmap-anydpi-v26 │ │ ├── ic_launcher.xml │ │ └── ic_launcher_round.xml │ │ ├── mipmap-hdpi │ │ ├── ic_launcher.png │ │ ├── ic_launcher_foreground.png │ │ └── ic_launcher_round.png │ │ ├── mipmap-mdpi │ │ ├── ic_launcher.png │ │ ├── ic_launcher_foreground.png │ │ └── ic_launcher_round.png │ │ ├── mipmap-xhdpi │ │ ├── ic_launcher.png │ │ ├── ic_launcher_foreground.png │ │ └── ic_launcher_round.png │ │ ├── mipmap-xxhdpi │ │ ├── ic_launcher.png │ │ ├── ic_launcher_foreground.png │ │ └── ic_launcher_round.png │ │ ├── mipmap-xxxhdpi │ │ ├── ic_launcher.png │ │ ├── ic_launcher_foreground.png │ │ └── ic_launcher_round.png │ │ └── values │ │ ├── colors.xml │ │ ├── strings.xml │ │ └── styles.xml │ └── test │ └── kotlin │ └── com │ └── adidas │ └── mvi │ └── sample │ └── login │ └── viewmodel │ ├── CoroutineListener.kt │ └── LoginViewModelTest.kt ├── mvi ├── build.gradle.kts ├── gradle.properties └── src │ ├── commonMain │ └── kotlin │ │ └── com │ │ └── adidas │ │ └── mvi │ │ ├── Intent.kt │ │ ├── IntentExecutor.kt │ │ ├── Loggable.kt │ │ ├── LoggableState.kt │ │ ├── Logger.kt │ │ ├── Multimap.kt │ │ ├── MviHost.kt │ │ ├── Reducer.kt │ │ ├── State.kt │ │ ├── StateRequiredNotFulfilledException.kt │ │ ├── TerminatedIntentException.kt │ │ ├── dsl │ │ ├── IntentDslScope.kt │ │ └── SyntaxDsl.kt │ │ ├── reducer │ │ └── ReducerExtensions.kt │ │ ├── requirements │ │ ├── DoubleReduceRequirement.kt │ │ ├── ReduceExtensions.kt │ │ ├── ReduceRequirement.kt │ │ └── StateReduceRequirement.kt │ │ ├── sideeffects │ │ └── SideEffects.kt │ │ └── transform │ │ ├── Operators.kt │ │ ├── Replace.kt │ │ ├── SideEffectTransform.kt │ │ ├── StateTransform.kt │ │ └── ViewTransform.kt │ └── jvmTest │ └── kotlin │ └── com │ └── adidas │ └── mvi │ ├── CoroutineListener.kt │ ├── DispatchersContainer.kt │ ├── FixedDispatchersContainer.kt │ ├── MultimapTests.kt │ ├── product │ ├── FakeProductSideEffectTransform.kt │ ├── FakeProductViewTransform.kt │ ├── ProductSideEffect.kt │ └── ProductState.kt │ ├── reducer │ ├── ReducerExtensionsTest.kt │ ├── ReducerTests.kt │ ├── TestCancellationReducerWrapper.kt │ ├── TestIntent.kt │ ├── TestSideEffect.kt │ ├── TestState.kt │ ├── TestTransform.kt │ └── logger │ │ ├── LoggerMatchers.kt │ │ └── SpyLogger.kt │ ├── requirements │ └── ReduceRequirementTests.kt │ ├── sideeffects │ ├── SideEffectsTest.kt │ └── TestSideEffect.kt │ └── transform │ ├── OperatorsTests.kt │ ├── ReplaceTests.kt │ ├── SideEffectTransformTest.kt │ └── StateTransformTest.kt └── settings.gradle.kts /.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/.editorconfig -------------------------------------------------------------------------------- /.github/workflows/deploy_docs.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/.github/workflows/deploy_docs.yml -------------------------------------------------------------------------------- /.github/workflows/release_compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/.github/workflows/release_compose.yml -------------------------------------------------------------------------------- /.github/workflows/release_kotest.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/.github/workflows/release_kotest.yml -------------------------------------------------------------------------------- /.github/workflows/release_mvi.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/.github/workflows/release_mvi.yml -------------------------------------------------------------------------------- /.github/workflows/test.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/.github/workflows/test.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/.gitignore -------------------------------------------------------------------------------- /.idea/.gitignore: -------------------------------------------------------------------------------- 1 | # Default ignored files 2 | /shelf/ 3 | /workspace.xml 4 | -------------------------------------------------------------------------------- /.idea/.name: -------------------------------------------------------------------------------- 1 | mvi -------------------------------------------------------------------------------- /.idea/artifacts/mvi_jvm.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/.idea/artifacts/mvi_jvm.xml -------------------------------------------------------------------------------- /.idea/deploymentTargetSelector.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/.idea/deploymentTargetSelector.xml -------------------------------------------------------------------------------- /.idea/other.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/.idea/other.xml -------------------------------------------------------------------------------- /docs/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/docs/.gitignore -------------------------------------------------------------------------------- /docs/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/docs/LICENSE -------------------------------------------------------------------------------- /docs/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/docs/README.md -------------------------------------------------------------------------------- /docs/assets/mvi_logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/docs/assets/mvi_logo.png -------------------------------------------------------------------------------- /docs/babel.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/docs/babel.config.js -------------------------------------------------------------------------------- /docs/docs/core_concepts.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/docs/docs/core_concepts.md -------------------------------------------------------------------------------- /docs/docs/examples.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/docs/docs/examples.md -------------------------------------------------------------------------------- /docs/docs/getting_started.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/docs/docs/getting_started.md -------------------------------------------------------------------------------- /docs/docs/intro.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/docs/docs/intro.md -------------------------------------------------------------------------------- /docs/docusaurus.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/docs/docusaurus.config.js -------------------------------------------------------------------------------- /docs/package-lock.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/docs/package-lock.json -------------------------------------------------------------------------------- /docs/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/docs/package.json -------------------------------------------------------------------------------- /docs/sidebars.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/docs/sidebars.js -------------------------------------------------------------------------------- /docs/src/components/HomepageFeatures/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/docs/src/components/HomepageFeatures/index.js -------------------------------------------------------------------------------- /docs/src/components/HomepageFeatures/styles.module.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/docs/src/components/HomepageFeatures/styles.module.css -------------------------------------------------------------------------------- /docs/src/css/custom.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/docs/src/css/custom.css -------------------------------------------------------------------------------- /docs/src/pages/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/docs/src/pages/index.js -------------------------------------------------------------------------------- /docs/src/pages/index.module.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/docs/src/pages/index.module.css -------------------------------------------------------------------------------- /docs/src/pages/markdown-page.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/docs/src/pages/markdown-page.md -------------------------------------------------------------------------------- /docs/static/.nojekyll: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /docs/static/img/docusaurus.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/docs/static/img/docusaurus.png -------------------------------------------------------------------------------- /docs/static/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/docs/static/img/favicon.ico -------------------------------------------------------------------------------- /docs/static/img/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/docs/static/img/logo.png -------------------------------------------------------------------------------- /docs/static/img/undraw_docusaurus_tree.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/docs/static/img/undraw_docusaurus_tree.svg -------------------------------------------------------------------------------- /gradle.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/gradle.properties -------------------------------------------------------------------------------- /gradle/libs.versions.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/gradle/libs.versions.toml -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/gradle/wrapper/gradle-wrapper.properties -------------------------------------------------------------------------------- /gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/gradlew -------------------------------------------------------------------------------- /gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/gradlew.bat -------------------------------------------------------------------------------- /mvi-compose/build.gradle.kts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi-compose/build.gradle.kts -------------------------------------------------------------------------------- /mvi-compose/gradle.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi-compose/gradle.properties -------------------------------------------------------------------------------- /mvi-compose/src/androidMain/kotlin/com/adidas/mvi/compose/MviScreen.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi-compose/src/androidMain/kotlin/com/adidas/mvi/compose/MviScreen.kt -------------------------------------------------------------------------------- /mvi-compose/src/commonMain/kotlin/com/adidas/mvi/compose/MviContainer.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi-compose/src/commonMain/kotlin/com/adidas/mvi/compose/MviContainer.kt -------------------------------------------------------------------------------- /mvi-kotest/build.gradle.kts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi-kotest/build.gradle.kts -------------------------------------------------------------------------------- /mvi-kotest/gradle.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi-kotest/gradle.properties -------------------------------------------------------------------------------- /mvi-kotest/src/main/kotlin/com/adidas/mvi/kotest/BehaviorSpecRootScopeExtensions.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi-kotest/src/main/kotlin/com/adidas/mvi/kotest/BehaviorSpecRootScopeExtensions.kt -------------------------------------------------------------------------------- /mvi-kotest/src/main/kotlin/com/adidas/mvi/kotest/TestMviLogger.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi-kotest/src/main/kotlin/com/adidas/mvi/kotest/TestMviLogger.kt -------------------------------------------------------------------------------- /mvi-kotest/src/main/kotlin/com/adidas/mvi/kotest/ViewModelContainerScope.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi-kotest/src/main/kotlin/com/adidas/mvi/kotest/ViewModelContainerScope.kt -------------------------------------------------------------------------------- /mvi-kotest/src/main/kotlin/com/adidas/mvi/kotest/ViewModelWhenContainerScope.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi-kotest/src/main/kotlin/com/adidas/mvi/kotest/ViewModelWhenContainerScope.kt -------------------------------------------------------------------------------- /mvi-sample/.gitignore: -------------------------------------------------------------------------------- 1 | /build -------------------------------------------------------------------------------- /mvi-sample/build.gradle.kts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi-sample/build.gradle.kts -------------------------------------------------------------------------------- /mvi-sample/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi-sample/src/main/AndroidManifest.xml -------------------------------------------------------------------------------- /mvi-sample/src/main/kotlin/com/adidas/mvi/sample/MviSampleActivity.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi-sample/src/main/kotlin/com/adidas/mvi/sample/MviSampleActivity.kt -------------------------------------------------------------------------------- /mvi-sample/src/main/kotlin/com/adidas/mvi/sample/app/MviSampleApplication.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi-sample/src/main/kotlin/com/adidas/mvi/sample/app/MviSampleApplication.kt -------------------------------------------------------------------------------- /mvi-sample/src/main/kotlin/com/adidas/mvi/sample/app/di/AppModule.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi-sample/src/main/kotlin/com/adidas/mvi/sample/app/di/AppModule.kt -------------------------------------------------------------------------------- /mvi-sample/src/main/kotlin/com/adidas/mvi/sample/app/logger/ReducerConsoleLogger.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi-sample/src/main/kotlin/com/adidas/mvi/sample/app/logger/ReducerConsoleLogger.kt -------------------------------------------------------------------------------- /mvi-sample/src/main/kotlin/com/adidas/mvi/sample/login/di/LoginModule.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi-sample/src/main/kotlin/com/adidas/mvi/sample/login/di/LoginModule.kt -------------------------------------------------------------------------------- /mvi-sample/src/main/kotlin/com/adidas/mvi/sample/login/ui/LoginScreen.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi-sample/src/main/kotlin/com/adidas/mvi/sample/login/ui/LoginScreen.kt -------------------------------------------------------------------------------- /mvi-sample/src/main/kotlin/com/adidas/mvi/sample/login/viewmodel/LoginIntent.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi-sample/src/main/kotlin/com/adidas/mvi/sample/login/viewmodel/LoginIntent.kt -------------------------------------------------------------------------------- /mvi-sample/src/main/kotlin/com/adidas/mvi/sample/login/viewmodel/LoginSideEffect.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi-sample/src/main/kotlin/com/adidas/mvi/sample/login/viewmodel/LoginSideEffect.kt -------------------------------------------------------------------------------- /mvi-sample/src/main/kotlin/com/adidas/mvi/sample/login/viewmodel/LoginState.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi-sample/src/main/kotlin/com/adidas/mvi/sample/login/viewmodel/LoginState.kt -------------------------------------------------------------------------------- /mvi-sample/src/main/kotlin/com/adidas/mvi/sample/login/viewmodel/LoginTransform.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi-sample/src/main/kotlin/com/adidas/mvi/sample/login/viewmodel/LoginTransform.kt -------------------------------------------------------------------------------- /mvi-sample/src/main/kotlin/com/adidas/mvi/sample/login/viewmodel/LoginViewModel.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi-sample/src/main/kotlin/com/adidas/mvi/sample/login/viewmodel/LoginViewModel.kt -------------------------------------------------------------------------------- /mvi-sample/src/main/res/mipmap-anydpi-v26/ic_launcher.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi-sample/src/main/res/mipmap-anydpi-v26/ic_launcher.xml -------------------------------------------------------------------------------- /mvi-sample/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi-sample/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml -------------------------------------------------------------------------------- /mvi-sample/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi-sample/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /mvi-sample/src/main/res/mipmap-hdpi/ic_launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi-sample/src/main/res/mipmap-hdpi/ic_launcher_foreground.png -------------------------------------------------------------------------------- /mvi-sample/src/main/res/mipmap-hdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi-sample/src/main/res/mipmap-hdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /mvi-sample/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi-sample/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /mvi-sample/src/main/res/mipmap-mdpi/ic_launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi-sample/src/main/res/mipmap-mdpi/ic_launcher_foreground.png -------------------------------------------------------------------------------- /mvi-sample/src/main/res/mipmap-mdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi-sample/src/main/res/mipmap-mdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /mvi-sample/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi-sample/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /mvi-sample/src/main/res/mipmap-xhdpi/ic_launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi-sample/src/main/res/mipmap-xhdpi/ic_launcher_foreground.png -------------------------------------------------------------------------------- /mvi-sample/src/main/res/mipmap-xhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi-sample/src/main/res/mipmap-xhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /mvi-sample/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi-sample/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /mvi-sample/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi-sample/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.png -------------------------------------------------------------------------------- /mvi-sample/src/main/res/mipmap-xxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi-sample/src/main/res/mipmap-xxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /mvi-sample/src/main/res/mipmap-xxxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi-sample/src/main/res/mipmap-xxxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /mvi-sample/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi-sample/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.png -------------------------------------------------------------------------------- /mvi-sample/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi-sample/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png -------------------------------------------------------------------------------- /mvi-sample/src/main/res/values/colors.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi-sample/src/main/res/values/colors.xml -------------------------------------------------------------------------------- /mvi-sample/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi-sample/src/main/res/values/strings.xml -------------------------------------------------------------------------------- /mvi-sample/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi-sample/src/main/res/values/styles.xml -------------------------------------------------------------------------------- /mvi-sample/src/test/kotlin/com/adidas/mvi/sample/login/viewmodel/CoroutineListener.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi-sample/src/test/kotlin/com/adidas/mvi/sample/login/viewmodel/CoroutineListener.kt -------------------------------------------------------------------------------- /mvi-sample/src/test/kotlin/com/adidas/mvi/sample/login/viewmodel/LoginViewModelTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi-sample/src/test/kotlin/com/adidas/mvi/sample/login/viewmodel/LoginViewModelTest.kt -------------------------------------------------------------------------------- /mvi/build.gradle.kts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi/build.gradle.kts -------------------------------------------------------------------------------- /mvi/gradle.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi/gradle.properties -------------------------------------------------------------------------------- /mvi/src/commonMain/kotlin/com/adidas/mvi/Intent.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi/src/commonMain/kotlin/com/adidas/mvi/Intent.kt -------------------------------------------------------------------------------- /mvi/src/commonMain/kotlin/com/adidas/mvi/IntentExecutor.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi/src/commonMain/kotlin/com/adidas/mvi/IntentExecutor.kt -------------------------------------------------------------------------------- /mvi/src/commonMain/kotlin/com/adidas/mvi/Loggable.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi/src/commonMain/kotlin/com/adidas/mvi/Loggable.kt -------------------------------------------------------------------------------- /mvi/src/commonMain/kotlin/com/adidas/mvi/LoggableState.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi/src/commonMain/kotlin/com/adidas/mvi/LoggableState.kt -------------------------------------------------------------------------------- /mvi/src/commonMain/kotlin/com/adidas/mvi/Logger.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi/src/commonMain/kotlin/com/adidas/mvi/Logger.kt -------------------------------------------------------------------------------- /mvi/src/commonMain/kotlin/com/adidas/mvi/Multimap.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi/src/commonMain/kotlin/com/adidas/mvi/Multimap.kt -------------------------------------------------------------------------------- /mvi/src/commonMain/kotlin/com/adidas/mvi/MviHost.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi/src/commonMain/kotlin/com/adidas/mvi/MviHost.kt -------------------------------------------------------------------------------- /mvi/src/commonMain/kotlin/com/adidas/mvi/Reducer.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi/src/commonMain/kotlin/com/adidas/mvi/Reducer.kt -------------------------------------------------------------------------------- /mvi/src/commonMain/kotlin/com/adidas/mvi/State.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi/src/commonMain/kotlin/com/adidas/mvi/State.kt -------------------------------------------------------------------------------- /mvi/src/commonMain/kotlin/com/adidas/mvi/StateRequiredNotFulfilledException.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi/src/commonMain/kotlin/com/adidas/mvi/StateRequiredNotFulfilledException.kt -------------------------------------------------------------------------------- /mvi/src/commonMain/kotlin/com/adidas/mvi/TerminatedIntentException.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi/src/commonMain/kotlin/com/adidas/mvi/TerminatedIntentException.kt -------------------------------------------------------------------------------- /mvi/src/commonMain/kotlin/com/adidas/mvi/dsl/IntentDslScope.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi/src/commonMain/kotlin/com/adidas/mvi/dsl/IntentDslScope.kt -------------------------------------------------------------------------------- /mvi/src/commonMain/kotlin/com/adidas/mvi/dsl/SyntaxDsl.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi/src/commonMain/kotlin/com/adidas/mvi/dsl/SyntaxDsl.kt -------------------------------------------------------------------------------- /mvi/src/commonMain/kotlin/com/adidas/mvi/reducer/ReducerExtensions.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi/src/commonMain/kotlin/com/adidas/mvi/reducer/ReducerExtensions.kt -------------------------------------------------------------------------------- /mvi/src/commonMain/kotlin/com/adidas/mvi/requirements/DoubleReduceRequirement.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi/src/commonMain/kotlin/com/adidas/mvi/requirements/DoubleReduceRequirement.kt -------------------------------------------------------------------------------- /mvi/src/commonMain/kotlin/com/adidas/mvi/requirements/ReduceExtensions.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi/src/commonMain/kotlin/com/adidas/mvi/requirements/ReduceExtensions.kt -------------------------------------------------------------------------------- /mvi/src/commonMain/kotlin/com/adidas/mvi/requirements/ReduceRequirement.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi/src/commonMain/kotlin/com/adidas/mvi/requirements/ReduceRequirement.kt -------------------------------------------------------------------------------- /mvi/src/commonMain/kotlin/com/adidas/mvi/requirements/StateReduceRequirement.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi/src/commonMain/kotlin/com/adidas/mvi/requirements/StateReduceRequirement.kt -------------------------------------------------------------------------------- /mvi/src/commonMain/kotlin/com/adidas/mvi/sideeffects/SideEffects.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi/src/commonMain/kotlin/com/adidas/mvi/sideeffects/SideEffects.kt -------------------------------------------------------------------------------- /mvi/src/commonMain/kotlin/com/adidas/mvi/transform/Operators.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi/src/commonMain/kotlin/com/adidas/mvi/transform/Operators.kt -------------------------------------------------------------------------------- /mvi/src/commonMain/kotlin/com/adidas/mvi/transform/Replace.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi/src/commonMain/kotlin/com/adidas/mvi/transform/Replace.kt -------------------------------------------------------------------------------- /mvi/src/commonMain/kotlin/com/adidas/mvi/transform/SideEffectTransform.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi/src/commonMain/kotlin/com/adidas/mvi/transform/SideEffectTransform.kt -------------------------------------------------------------------------------- /mvi/src/commonMain/kotlin/com/adidas/mvi/transform/StateTransform.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi/src/commonMain/kotlin/com/adidas/mvi/transform/StateTransform.kt -------------------------------------------------------------------------------- /mvi/src/commonMain/kotlin/com/adidas/mvi/transform/ViewTransform.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi/src/commonMain/kotlin/com/adidas/mvi/transform/ViewTransform.kt -------------------------------------------------------------------------------- /mvi/src/jvmTest/kotlin/com/adidas/mvi/CoroutineListener.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi/src/jvmTest/kotlin/com/adidas/mvi/CoroutineListener.kt -------------------------------------------------------------------------------- /mvi/src/jvmTest/kotlin/com/adidas/mvi/DispatchersContainer.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi/src/jvmTest/kotlin/com/adidas/mvi/DispatchersContainer.kt -------------------------------------------------------------------------------- /mvi/src/jvmTest/kotlin/com/adidas/mvi/FixedDispatchersContainer.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi/src/jvmTest/kotlin/com/adidas/mvi/FixedDispatchersContainer.kt -------------------------------------------------------------------------------- /mvi/src/jvmTest/kotlin/com/adidas/mvi/MultimapTests.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi/src/jvmTest/kotlin/com/adidas/mvi/MultimapTests.kt -------------------------------------------------------------------------------- /mvi/src/jvmTest/kotlin/com/adidas/mvi/product/FakeProductSideEffectTransform.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi/src/jvmTest/kotlin/com/adidas/mvi/product/FakeProductSideEffectTransform.kt -------------------------------------------------------------------------------- /mvi/src/jvmTest/kotlin/com/adidas/mvi/product/FakeProductViewTransform.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi/src/jvmTest/kotlin/com/adidas/mvi/product/FakeProductViewTransform.kt -------------------------------------------------------------------------------- /mvi/src/jvmTest/kotlin/com/adidas/mvi/product/ProductSideEffect.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi/src/jvmTest/kotlin/com/adidas/mvi/product/ProductSideEffect.kt -------------------------------------------------------------------------------- /mvi/src/jvmTest/kotlin/com/adidas/mvi/product/ProductState.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi/src/jvmTest/kotlin/com/adidas/mvi/product/ProductState.kt -------------------------------------------------------------------------------- /mvi/src/jvmTest/kotlin/com/adidas/mvi/reducer/ReducerExtensionsTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi/src/jvmTest/kotlin/com/adidas/mvi/reducer/ReducerExtensionsTest.kt -------------------------------------------------------------------------------- /mvi/src/jvmTest/kotlin/com/adidas/mvi/reducer/ReducerTests.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi/src/jvmTest/kotlin/com/adidas/mvi/reducer/ReducerTests.kt -------------------------------------------------------------------------------- /mvi/src/jvmTest/kotlin/com/adidas/mvi/reducer/TestCancellationReducerWrapper.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi/src/jvmTest/kotlin/com/adidas/mvi/reducer/TestCancellationReducerWrapper.kt -------------------------------------------------------------------------------- /mvi/src/jvmTest/kotlin/com/adidas/mvi/reducer/TestIntent.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi/src/jvmTest/kotlin/com/adidas/mvi/reducer/TestIntent.kt -------------------------------------------------------------------------------- /mvi/src/jvmTest/kotlin/com/adidas/mvi/reducer/TestSideEffect.kt: -------------------------------------------------------------------------------- 1 | package com.adidas.mvi.reducer 2 | 3 | class TestSideEffect 4 | -------------------------------------------------------------------------------- /mvi/src/jvmTest/kotlin/com/adidas/mvi/reducer/TestState.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi/src/jvmTest/kotlin/com/adidas/mvi/reducer/TestState.kt -------------------------------------------------------------------------------- /mvi/src/jvmTest/kotlin/com/adidas/mvi/reducer/TestTransform.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi/src/jvmTest/kotlin/com/adidas/mvi/reducer/TestTransform.kt -------------------------------------------------------------------------------- /mvi/src/jvmTest/kotlin/com/adidas/mvi/reducer/logger/LoggerMatchers.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi/src/jvmTest/kotlin/com/adidas/mvi/reducer/logger/LoggerMatchers.kt -------------------------------------------------------------------------------- /mvi/src/jvmTest/kotlin/com/adidas/mvi/reducer/logger/SpyLogger.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi/src/jvmTest/kotlin/com/adidas/mvi/reducer/logger/SpyLogger.kt -------------------------------------------------------------------------------- /mvi/src/jvmTest/kotlin/com/adidas/mvi/requirements/ReduceRequirementTests.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi/src/jvmTest/kotlin/com/adidas/mvi/requirements/ReduceRequirementTests.kt -------------------------------------------------------------------------------- /mvi/src/jvmTest/kotlin/com/adidas/mvi/sideeffects/SideEffectsTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi/src/jvmTest/kotlin/com/adidas/mvi/sideeffects/SideEffectsTest.kt -------------------------------------------------------------------------------- /mvi/src/jvmTest/kotlin/com/adidas/mvi/sideeffects/TestSideEffect.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi/src/jvmTest/kotlin/com/adidas/mvi/sideeffects/TestSideEffect.kt -------------------------------------------------------------------------------- /mvi/src/jvmTest/kotlin/com/adidas/mvi/transform/OperatorsTests.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi/src/jvmTest/kotlin/com/adidas/mvi/transform/OperatorsTests.kt -------------------------------------------------------------------------------- /mvi/src/jvmTest/kotlin/com/adidas/mvi/transform/ReplaceTests.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi/src/jvmTest/kotlin/com/adidas/mvi/transform/ReplaceTests.kt -------------------------------------------------------------------------------- /mvi/src/jvmTest/kotlin/com/adidas/mvi/transform/SideEffectTransformTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi/src/jvmTest/kotlin/com/adidas/mvi/transform/SideEffectTransformTest.kt -------------------------------------------------------------------------------- /mvi/src/jvmTest/kotlin/com/adidas/mvi/transform/StateTransformTest.kt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/mvi/src/jvmTest/kotlin/com/adidas/mvi/transform/StateTransformTest.kt -------------------------------------------------------------------------------- /settings.gradle.kts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/adidas/mvi/HEAD/settings.gradle.kts --------------------------------------------------------------------------------