Skip to content

Commit

Permalink
refac
Browse files Browse the repository at this point in the history
  • Loading branch information
kotlitecture committed Jun 30, 2024
1 parent 506af50 commit 5478528
Show file tree
Hide file tree
Showing 54 changed files with 112 additions and 107 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ object Rules {
const val StringsXml = "*/strings.xml"
const val IndexHtml = "*/index.html"
const val IosConfig = "*/Config.xcconfig"

// gradle
const val BuildGradle = "*build.gradle.kts"
const val SettingsGradle = "settings.gradle.kts"
Expand All @@ -15,6 +16,7 @@ object Rules {
const val BuildGradleSharedData = "shared/data/build.gradle.kts"
const val BuildGradleSharedDesign = "shared/design/build.gradle.kts"
const val BuildGradleSharedDomain = "shared/domain/build.gradle.kts"

// proguard
const val ProguardRulesPro = "app/assemble/proguard-rules.pro"

Expand Down Expand Up @@ -59,19 +61,22 @@ object Rules {
const val AppNavigationPermanentProvider = "${AppNavigationDir}/PermanentProvider.kt"
const val AppNavigationRailProvider = "${AppNavigationDir}/RailProvider.kt"
const val ShowcasesDir = "${AppPresentationDir}/showcases"
const val ShowcasesHttpDir = "${ShowcasesDir}/datasource/http"
const val ShowcasesCacheDir = "${ShowcasesDir}/datasource/cache"
const val ShowcasesPagingDir = "${ShowcasesDir}/datasource/paging"
const val ShowcasesKeyValueDir = "${ShowcasesDir}/datasource/keyvalue"
const val ShowcasesSqlDelightDir = "${ShowcasesDir}/datasource/sqldelight"
const val ShowcasesNavigationDir = "${ShowcasesDir}/navigation"
const val ShowcasesThemeDir = "${ShowcasesDir}/feature/theme"
const val ShowcasesLoaderDir = "${ShowcasesDir}/feature/loader"
const val ShowcasesPasscodeDir = "${ShowcasesDir}/feature/passcode"
const val ShowcasesDataFlowDir = "${ShowcasesDir}/dataflow"
const val ShowcasesUserFlowDir = "${ShowcasesDir}/userflow"
const val ShowcasesHttpDir = "${ShowcasesDataFlowDir}/http"
const val ShowcasesCacheDir = "${ShowcasesDataFlowDir}/cache"
const val ShowcasesPagingDir = "${ShowcasesDataFlowDir}/paging"
const val ShowcasesKeyValueDir = "${ShowcasesDataFlowDir}/keyvalue"
const val ShowcasesSqlDelightDir = "${ShowcasesDataFlowDir}/sqldelight"
const val ShowcasesNavigationDir = "${ShowcasesUserFlowDir}/navigation"
const val ShowcasesThemeDir = "${ShowcasesUserFlowDir}/theme"
const val ShowcasesLoaderDir = "${ShowcasesUserFlowDir}/loader"
const val ShowcasesPasscodeDir = "${ShowcasesUserFlowDir}/passcode"
const val ShowcasesKt = "${ShowcasesDir}/Showcases.kt"
const val ThemeStoreKt = "${SharedPresentationDir}/src/commonMain/kotlin/shared/presentation/theme/ThemeStore.kt"
const val NavigationBarModuleKt = "${CommonAppMainDir}/kotlin/kotli/app/di/presentation/NavigationBarModule.kt"
const val NavigationModuleKt = "${CommonAppMainDir}/kotlin/kotli/app/di/presentation/NavigationModule.kt"

// dataflow
const val AppConfigSource = "${CommonAppMainDir}/kotlin/kotli/app/datasource/config/AppConfigSource.kt"
const val AnalyticsSource = "*/*AnalyticsSource*.kt"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,18 +12,18 @@ import kotli.app.presentation.navigation.samples.c.NavigationCViewModel
import kotli.app.presentation.theme.change.ChangeThemeViewModel
import kotli.app.presentation.theme.toggle.ToggleThemeViewModel
import kotli.app.presentation.showcases.ShowcasesViewModel
import kotli.app.presentation.showcases.datasource.cache.basic.BasicCacheViewModel
import kotli.app.presentation.showcases.datasource.http.basic.BasicHttpViewModel
import kotli.app.presentation.showcases.datasource.keyvalue.`object`.ObjectKeyValueViewModel
import kotli.app.presentation.showcases.datasource.keyvalue.primitive.PrimitiveKeyValueViewModel
import kotli.app.presentation.showcases.datasource.paging.basic.BasicPagingViewModel
import kotli.app.presentation.showcases.datasource.sqldelight.crud.SqlDelightCrudViewModel
import kotli.app.presentation.showcases.datasource.sqldelight.paging.SqlDelightPagingViewModel
import kotli.app.presentation.showcases.feature.loader.data.DataLoaderShowcaseViewModel
import kotli.app.presentation.showcases.navigation.args.from.ArgsNavigationFromViewModel
import kotli.app.presentation.showcases.navigation.args.to.ArgsNavigationToViewModel
import kotli.app.presentation.showcases.navigation.no_args.from.NoArgsNavigationFromViewModel
import kotli.app.presentation.showcases.navigation.no_args.to.NoArgsNavigationToViewModel
import kotli.app.presentation.showcases.dataflow.cache.basic.BasicCacheViewModel
import kotli.app.presentation.showcases.dataflow.http.basic.BasicHttpViewModel
import kotli.app.presentation.showcases.dataflow.keyvalue.`object`.ObjectKeyValueViewModel
import kotli.app.presentation.showcases.dataflow.keyvalue.primitive.PrimitiveKeyValueViewModel
import kotli.app.presentation.showcases.dataflow.paging.basic.BasicPagingViewModel
import kotli.app.presentation.showcases.dataflow.sqldelight.crud.SqlDelightCrudViewModel
import kotli.app.presentation.showcases.dataflow.sqldelight.paging.SqlDelightPagingViewModel
import kotli.app.presentation.showcases.userflow.loader.data.DataLoaderShowcaseViewModel
import kotli.app.presentation.showcases.userflow.navigation.args.from.ArgsNavigationFromViewModel
import kotli.app.presentation.showcases.userflow.navigation.args.to.ArgsNavigationToViewModel
import kotli.app.presentation.showcases.userflow.navigation.no_args.from.NoArgsNavigationFromViewModel
import kotli.app.presentation.showcases.userflow.navigation.no_args.to.NoArgsNavigationToViewModel
import kotli.app.presentation.loader.LoaderViewModel
import kotli.app.presentation.template.screen_with_args.TemplateViewModel
import kotli.app.presentation.template.screen_without_args.TemplateNoArgsViewModel
Expand Down
Original file line number Diff line number Diff line change
@@ -1,18 +1,18 @@
package kotli.app.presentation.showcases

import kotli.app.presentation.showcases.datasource.cache.basic.BasicCacheShowcase
import kotli.app.presentation.showcases.datasource.http.basic.BasicHttpShowcase
import kotli.app.presentation.showcases.datasource.keyvalue.`object`.ObjectKeyValueShowcase
import kotli.app.presentation.showcases.datasource.keyvalue.primitive.PrimitiveKeyValueShowcase
import kotli.app.presentation.showcases.datasource.paging.basic.BasicPagingShowcase
import kotli.app.presentation.showcases.datasource.sqldelight.crud.SqlDelightCrudShowcase
import kotli.app.presentation.showcases.datasource.sqldelight.paging.SqlDelightPagingShowcase
import kotli.app.presentation.showcases.feature.loader.data.DataLoaderShowcase
import kotli.app.presentation.showcases.feature.theme.change.ChangeThemeDialogShowcase
import kotli.app.presentation.showcases.feature.theme.change.ChangeThemeScreenShowcase
import kotli.app.presentation.showcases.feature.theme.toggle.ToggleThemeShowcase
import kotli.app.presentation.showcases.navigation.args.ArgsNavigationShowcase
import kotli.app.presentation.showcases.navigation.no_args.NoArgsNavigationShowcase
import kotli.app.presentation.showcases.dataflow.cache.basic.BasicCacheShowcase
import kotli.app.presentation.showcases.dataflow.http.basic.BasicHttpShowcase
import kotli.app.presentation.showcases.dataflow.keyvalue.`object`.ObjectKeyValueShowcase
import kotli.app.presentation.showcases.dataflow.keyvalue.primitive.PrimitiveKeyValueShowcase
import kotli.app.presentation.showcases.dataflow.paging.basic.BasicPagingShowcase
import kotli.app.presentation.showcases.dataflow.sqldelight.crud.SqlDelightCrudShowcase
import kotli.app.presentation.showcases.dataflow.sqldelight.paging.SqlDelightPagingShowcase
import kotli.app.presentation.showcases.userflow.loader.data.DataLoaderShowcase
import kotli.app.presentation.showcases.userflow.theme.change.ChangeThemeDialogShowcase
import kotli.app.presentation.showcases.userflow.theme.change.ChangeThemeScreenShowcase
import kotli.app.presentation.showcases.userflow.theme.toggle.ToggleThemeShowcase
import kotli.app.presentation.showcases.userflow.navigation.args.ArgsNavigationShowcase
import kotli.app.presentation.showcases.userflow.navigation.no_args.NoArgsNavigationShowcase

/**
* Object containing all showcase items.
Expand All @@ -23,21 +23,21 @@ object Showcases {
* A list containing all showcase items.
*/
val all = listOf(
ShowcaseItemGroup("Navigation + MVVM"),
NoArgsNavigationShowcase,
ArgsNavigationShowcase,
ShowcaseItemGroup("Datasource :: Cache"),
ShowcaseItemGroup("Dataflow :: Cache"),
BasicCacheShowcase,
ShowcaseItemGroup("Datasource :: Http"),
ShowcaseItemGroup("Dataflow :: Http"),
BasicHttpShowcase,
ShowcaseItemGroup("Datasource :: KeyValue"),
ShowcaseItemGroup("Dataflow :: KeyValue"),
PrimitiveKeyValueShowcase,
ObjectKeyValueShowcase,
ShowcaseItemGroup("Datasource :: Paging"),
ShowcaseItemGroup("Dataflow :: Paging"),
BasicPagingShowcase,
ShowcaseItemGroup("Datasource :: SqlDelight"),
ShowcaseItemGroup("Dataflow :: SqlDelight"),
SqlDelightCrudShowcase,
SqlDelightPagingShowcase,
ShowcaseItemGroup("Userflow :: Navigation + MVVM"),
NoArgsNavigationShowcase,
ArgsNavigationShowcase,
ShowcaseItemGroup("Userflow :: Loader"),
DataLoaderShowcase,
ShowcaseItemGroup("Userflow :: Theme"),
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kotli.app.presentation.showcases.datasource.cache.basic
package kotli.app.presentation.showcases.dataflow.cache.basic

import androidx.navigation.NavGraphBuilder
import shared.presentation.navigation.NavigationDestinationNoArgs
Expand All @@ -8,6 +8,6 @@ object BasicCacheDestination : NavigationDestinationNoArgs() {

override val id: String = "basic_cache_screen"
override val navStrategy: NavigationStrategy = NavigationStrategy.NewInstance
override fun doBind(builder: NavGraphBuilder) = composable(builder) { kotli.app.presentation.showcases.datasource.cache.basic.BasicCacheScreen() }
override fun doBind(builder: NavGraphBuilder) = composable(builder) { kotli.app.presentation.showcases.dataflow.cache.basic.BasicCacheScreen() }

}
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kotli.app.presentation.showcases.datasource.cache.basic
package kotli.app.presentation.showcases.dataflow.cache.basic

import androidx.compose.foundation.layout.padding
import androidx.compose.runtime.Composable
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kotli.app.presentation.showcases.datasource.cache.basic
package kotli.app.presentation.showcases.dataflow.cache.basic

import kotli.app.presentation.showcases.ShowcaseItem
import kotli.app.presentation.showcases.ShowcasesViewModel
Expand All @@ -9,11 +9,11 @@ object BasicCacheShowcase : ShowcaseItem {
override val label: String = "Basic In-Memory Cache Usage"

override fun onClick(viewModel: ShowcasesViewModel) {
viewModel.navigationStore.onNext(kotli.app.presentation.showcases.datasource.cache.basic.BasicCacheDestination)
viewModel.navigationStore.onNext(kotli.app.presentation.showcases.dataflow.cache.basic.BasicCacheDestination)
}

override fun dependsOn(): List<NavigationDestination<*>> = listOf(
kotli.app.presentation.showcases.datasource.cache.basic.BasicCacheDestination
kotli.app.presentation.showcases.dataflow.cache.basic.BasicCacheDestination
)

}
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kotli.app.presentation.showcases.datasource.cache.basic
package kotli.app.presentation.showcases.dataflow.cache.basic

import kotlinx.coroutines.flow.collectLatest
import kotlinx.datetime.Clock
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kotli.app.presentation.showcases.datasource.http.basic
package kotli.app.presentation.showcases.dataflow.http.basic

import androidx.navigation.NavGraphBuilder
import shared.presentation.navigation.NavigationDestinationNoArgs
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kotli.app.presentation.showcases.datasource.http.basic
package kotli.app.presentation.showcases.dataflow.http.basic

import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.padding
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kotli.app.presentation.showcases.datasource.http.basic
package kotli.app.presentation.showcases.dataflow.http.basic

import kotli.app.presentation.showcases.ShowcaseItem
import kotli.app.presentation.showcases.ShowcasesViewModel
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kotli.app.presentation.showcases.datasource.http.basic
package kotli.app.presentation.showcases.dataflow.http.basic

import io.ktor.client.call.body
import io.ktor.client.request.get
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kotli.app.presentation.showcases.datasource.keyvalue.`object`
package kotli.app.presentation.showcases.dataflow.keyvalue.`object`

import androidx.navigation.NavGraphBuilder
import shared.presentation.navigation.NavigationDestinationNoArgs
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kotli.app.presentation.showcases.datasource.keyvalue.`object`
package kotli.app.presentation.showcases.dataflow.keyvalue.`object`

import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.padding
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kotli.app.presentation.showcases.datasource.keyvalue.`object`
package kotli.app.presentation.showcases.dataflow.keyvalue.`object`

import kotli.app.presentation.showcases.ShowcaseItem
import kotli.app.presentation.showcases.ShowcasesViewModel
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kotli.app.presentation.showcases.datasource.keyvalue.`object`
package kotli.app.presentation.showcases.dataflow.keyvalue.`object`

import kotli.app.data.source.keyvalue.AppKeyValueSource
import kotlinx.coroutines.flow.collectLatest
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kotli.app.presentation.showcases.datasource.keyvalue.primitive
package kotli.app.presentation.showcases.dataflow.keyvalue.primitive

import androidx.navigation.NavGraphBuilder
import shared.presentation.navigation.NavigationDestinationNoArgs
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kotli.app.presentation.showcases.datasource.keyvalue.primitive
package kotli.app.presentation.showcases.dataflow.keyvalue.primitive

import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.padding
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kotli.app.presentation.showcases.datasource.keyvalue.primitive
package kotli.app.presentation.showcases.dataflow.keyvalue.primitive

import kotli.app.presentation.showcases.ShowcaseItem
import kotli.app.presentation.showcases.ShowcasesViewModel
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kotli.app.presentation.showcases.datasource.keyvalue.primitive
package kotli.app.presentation.showcases.dataflow.keyvalue.primitive

import kotli.app.data.source.keyvalue.AppKeyValueSource
import kotlinx.coroutines.flow.collectLatest
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kotli.app.presentation.showcases.datasource.paging.basic
package kotli.app.presentation.showcases.dataflow.paging.basic

import androidx.navigation.NavGraphBuilder
import shared.presentation.navigation.NavigationDestinationNoArgs
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kotli.app.presentation.showcases.datasource.paging.basic
package kotli.app.presentation.showcases.dataflow.paging.basic

import androidx.compose.foundation.layout.Row
import androidx.compose.foundation.layout.fillMaxWidth
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kotli.app.presentation.showcases.datasource.paging.basic
package kotli.app.presentation.showcases.dataflow.paging.basic

import kotli.app.presentation.showcases.ShowcaseItem
import kotli.app.presentation.showcases.ShowcasesViewModel
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kotli.app.presentation.showcases.datasource.paging.basic
package kotli.app.presentation.showcases.dataflow.paging.basic

import app.cash.paging.PagingSource
import app.cash.paging.PagingSourceLoadParams
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kotli.app.presentation.showcases.datasource.paging.basic
package kotli.app.presentation.showcases.dataflow.paging.basic

import androidx.lifecycle.viewModelScope
import app.cash.paging.cachedIn
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kotli.app.presentation.showcases.datasource.sqldelight.crud
package kotli.app.presentation.showcases.dataflow.sqldelight.crud

import androidx.navigation.NavGraphBuilder
import shared.presentation.navigation.NavigationDestinationNoArgs
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kotli.app.presentation.showcases.datasource.sqldelight.crud
package kotli.app.presentation.showcases.dataflow.sqldelight.crud

import androidx.compose.foundation.layout.Arrangement
import androidx.compose.foundation.layout.Row
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kotli.app.presentation.showcases.datasource.sqldelight.crud
package kotli.app.presentation.showcases.dataflow.sqldelight.crud

import kotli.app.presentation.showcases.ShowcaseItem
import kotli.app.presentation.showcases.ShowcasesViewModel
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kotli.app.presentation.showcases.datasource.sqldelight.crud
package kotli.app.presentation.showcases.dataflow.sqldelight.crud

import app.cash.sqldelight.async.coroutines.awaitAsList
import app.cash.sqldelight.async.coroutines.awaitAsOne
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kotli.app.presentation.showcases.datasource.sqldelight.paging
package kotli.app.presentation.showcases.dataflow.sqldelight.paging

import androidx.navigation.NavGraphBuilder
import shared.presentation.navigation.NavigationDestinationNoArgs
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kotli.app.presentation.showcases.datasource.sqldelight.paging
package kotli.app.presentation.showcases.dataflow.sqldelight.paging

import androidx.compose.foundation.layout.Arrangement
import androidx.compose.foundation.layout.Row
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kotli.app.presentation.showcases.datasource.sqldelight.paging
package kotli.app.presentation.showcases.dataflow.sqldelight.paging

import kotli.app.presentation.showcases.ShowcaseItem
import kotli.app.presentation.showcases.ShowcasesViewModel
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kotli.app.presentation.showcases.datasource.sqldelight.paging
package kotli.app.presentation.showcases.dataflow.sqldelight.paging

import app.cash.paging.PagingSource
import app.cash.paging.PagingSourceLoadParams
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kotli.app.presentation.showcases.datasource.sqldelight.paging
package kotli.app.presentation.showcases.dataflow.sqldelight.paging

import androidx.lifecycle.viewModelScope
import app.cash.paging.cachedIn
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kotli.app.presentation.showcases.feature.loader.data
package kotli.app.presentation.showcases.userflow.loader.data

import kotli.app.presentation.showcases.ShowcaseItem
import kotli.app.presentation.showcases.ShowcasesViewModel
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kotli.app.presentation.showcases.feature.loader.data
package kotli.app.presentation.showcases.userflow.loader.data

import androidx.navigation.NavGraphBuilder
import shared.presentation.navigation.NavigationDestinationNoArgs
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kotli.app.presentation.showcases.feature.loader.data
package kotli.app.presentation.showcases.userflow.loader.data

import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.padding
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kotli.app.presentation.showcases.feature.loader.data
package kotli.app.presentation.showcases.userflow.loader.data

import kotli.app.presentation.app.AppStore
import kotlinx.coroutines.delay
Expand Down
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
package kotli.app.presentation.showcases.navigation.args
package kotli.app.presentation.showcases.userflow.navigation.args

import kotli.app.presentation.showcases.ShowcaseItem
import kotli.app.presentation.showcases.ShowcasesViewModel
import kotli.app.presentation.showcases.navigation.args.from.ArgsNavigationFromDestination
import kotli.app.presentation.showcases.navigation.args.to.ArgsNavigationToDestination
import kotli.app.presentation.showcases.userflow.navigation.args.from.ArgsNavigationFromDestination
import kotli.app.presentation.showcases.userflow.navigation.args.to.ArgsNavigationToDestination
import shared.presentation.navigation.NavigationDestination

object ArgsNavigationShowcase : ShowcaseItem {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package kotli.app.presentation.showcases.navigation.args.from
package kotli.app.presentation.showcases.userflow.navigation.args.from

import androidx.navigation.NavGraphBuilder
import shared.presentation.navigation.NavigationDestinationNoArgs
Expand Down
Loading

0 comments on commit 5478528

Please sign in to comment.