diff --git a/.idea/gradle.xml b/.idea/gradle.xml
index 243e518..cb861d9 100644
--- a/.idea/gradle.xml
+++ b/.idea/gradle.xml
@@ -27,14 +27,10 @@
-
-
-
-
diff --git a/app/build.gradle.kts b/app/build.gradle.kts
index c5e4da7..1599178 100644
--- a/app/build.gradle.kts
+++ b/app/build.gradle.kts
@@ -36,12 +36,8 @@ dependencies {
implementation(project(":core-navigation"))
implementation(project(":core-test"))
implementation(project(":core-model"))
- implementation(project(":core-resources"))
implementation(project(":core-local-data-source"))
- implementation(project(":core-remote-data-source"))
implementation(project(":core-firebase"))
- implementation(project(":core-firebase-auth"))
- implementation(project(":core-coroutines"))
implementation(project(":feature-note-list"))
implementation(project(":feature-single-note"))
implementation(project(":feature-todo"))
diff --git a/app/src/main/java/com/stslex/cnotes/CNoteApplication.kt b/app/src/main/java/com/stslex/cnotes/CNoteApplication.kt
index 63cc5be..160a7ca 100644
--- a/app/src/main/java/com/stslex/cnotes/CNoteApplication.kt
+++ b/app/src/main/java/com/stslex/cnotes/CNoteApplication.kt
@@ -1,16 +1,14 @@
package com.stslex.cnotes
import android.app.Application
-import com.example.feature_auth_code.di.AuthCodeModule
-import com.example.feature_auth_phonenumber.di.AuthPhoneNumberModule
-import com.example.feature_note_list.di.NoteListModule
+import com.stslex.feature_auth_code.di.AuthCodeModule
+import com.stslex.feature_auth_phonenumber.di.AuthPhoneNumberModule
+import com.stslex.feature_note_list.di.NoteListModule
import com.stslex.cnotes.di.AppComponent
-import com.stslex.core_coroutines.CoroutinesModule
+import com.stslex.core.CoroutinesModule
import com.stslex.core_data_source.di.RoomDatabaseModule
-import com.stslex.core_firebase.FirebaseModule
-import com.stslex.core_firebase_auth.di.FirebaseAuthModule
+import com.stslex.core_firebase.di.FirebaseModule
import com.stslex.core_model.di.MapperModule
-import com.stslex.core_remote_data_source.di.RemoteDataSourceModule
import com.stslex.feature_profile.di.ProfileModule
import com.stslex.feature_single_note.di.SingleNoteModule
import org.koin.android.ext.koin.androidContext
@@ -32,9 +30,7 @@ class CNoteApplication : Application() {
AuthPhoneNumberModule().module,
AuthCodeModule().module,
ProfileModule().module,
- RemoteDataSourceModule().module,
MapperModule().module,
- FirebaseAuthModule().module,
SingleNoteModule().module
)
}
diff --git a/app/src/main/java/com/stslex/cnotes/MainActivity.kt b/app/src/main/java/com/stslex/cnotes/MainActivity.kt
index 6010a18..acbef0c 100644
--- a/app/src/main/java/com/stslex/cnotes/MainActivity.kt
+++ b/app/src/main/java/com/stslex/cnotes/MainActivity.kt
@@ -13,7 +13,7 @@ import com.google.accompanist.systemuicontroller.SystemUiController
import com.google.accompanist.systemuicontroller.rememberSystemUiController
import com.stslex.cnotes.ui.AppCreator
import com.stslex.cnotes.utils.ShortcutBuilder
-import com.stslex.core_firebase.abstraction.FirebaseAppInitialisationUtil
+import com.stslex.core_firebase.utils.abstraction.FirebaseAppInitialisationUtil
import org.koin.android.ext.android.inject
class MainActivity : ComponentActivity() {
diff --git a/app/src/main/java/com/stslex/cnotes/navigation/NavigationHost.kt b/app/src/main/java/com/stslex/cnotes/navigation/NavigationHost.kt
index d34237b..3cf9dfd 100644
--- a/app/src/main/java/com/stslex/cnotes/navigation/NavigationHost.kt
+++ b/app/src/main/java/com/stslex/cnotes/navigation/NavigationHost.kt
@@ -5,9 +5,9 @@ import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
import androidx.navigation.NavGraph.Companion.findStartDestination
import androidx.navigation.NavHostController
-import com.example.feature_auth_code.navigation.authCodeGraph
-import com.example.feature_auth_phonenumber.navigation.authPhoneNumberGraph
-import com.example.feature_note_list.navigation.noteListGraph
+import com.stslex.feature_auth_code.navigation.authCodeGraph
+import com.stslex.feature_auth_phonenumber.navigation.authPhoneNumberGraph
+import com.stslex.feature_note_list.navigation.noteListGraph
import com.google.accompanist.navigation.animation.AnimatedNavHost
import com.stslex.core_navigation.destinations.*
import com.stslex.feature_profile.navigation.profileGraph
diff --git a/app/src/main/java/com/stslex/cnotes/ui/AppCreator.kt b/app/src/main/java/com/stslex/cnotes/ui/AppCreator.kt
index 0bf495a..07bc0ce 100644
--- a/app/src/main/java/com/stslex/cnotes/ui/AppCreator.kt
+++ b/app/src/main/java/com/stslex/cnotes/ui/AppCreator.kt
@@ -9,16 +9,12 @@ import androidx.compose.material3.Scaffold
import androidx.compose.material3.windowsizeclass.WindowSizeClass
import androidx.compose.material3.windowsizeclass.WindowWidthSizeClass
import androidx.compose.runtime.Composable
-import androidx.compose.runtime.SideEffect
import androidx.compose.runtime.getValue
import androidx.compose.runtime.remember
import androidx.compose.ui.Modifier
-import androidx.compose.ui.graphics.Color
import androidx.navigation.compose.currentBackStackEntryAsState
-import com.example.feature_note_list.navigation.noteListTopLevelDestination
+import com.stslex.feature_note_list.navigation.noteListTopLevelDestination
import com.google.accompanist.navigation.animation.rememberAnimatedNavController
-import com.google.accompanist.systemuicontroller.SystemUiController
-import com.google.accompanist.systemuicontroller.rememberSystemUiController
import com.stslex.cnotes.navigation.AppTopLevelNavigation
import com.stslex.cnotes.navigation.NavigationHost
import com.stslex.core_navigation.destinations.NoteListDestination
diff --git a/app/src/main/java/com/stslex/cnotes/utils/ShortcutBuilder.kt b/app/src/main/java/com/stslex/cnotes/utils/ShortcutBuilder.kt
index b1930ed..cf4b557 100644
--- a/app/src/main/java/com/stslex/cnotes/utils/ShortcutBuilder.kt
+++ b/app/src/main/java/com/stslex/cnotes/utils/ShortcutBuilder.kt
@@ -10,7 +10,7 @@ import com.stslex.cnotes.MainActivity
import com.stslex.cnotes.R.drawable
import com.stslex.core_navigation.destinations.ProfileDestination
import com.stslex.core_navigation.destinations.SingleNoteDestination
-import com.stslex.core_resources.R
+import com.stslex.core_ui.R
fun interface ShortcutBuilder {
@@ -30,46 +30,34 @@ fun interface ShortcutBuilder {
private val shortcutCreateNewNote: ShortcutInfoCompat by lazy {
ShortcutInfoCompat.Builder(
- context,
- context.getString(R.string.lb_short_shortcut_create)
+ context, context.getString(R.string.lb_short_shortcut_create)
).setShortLabel(context.getString(R.string.lb_short_shortcut_create))
.setLongLabel(context.getString(R.string.lb_long_shortcut_create))
.setDisabledMessage(context.getString(R.string.lb_shortcut_disabled_message))
.setIcon(
IconCompat.createWithResource(
- context,
- drawable.ic_baseline_add_24
+ context, drawable.ic_baseline_add_24
)
- )
- .setIntent(shortcutIntent("${SingleNoteDestination.route}/-1"))
- .build()
+ ).setIntent(shortcutIntent("${SingleNoteDestination.route}/-1")).build()
}
private val shortcutProfile: ShortcutInfoCompat by lazy {
ShortcutInfoCompat.Builder(
- context,
- context.getString(R.string.lb_short_shortcut_profile)
- )
- .setShortLabel(context.getString(R.string.lb_short_shortcut_profile))
+ context, context.getString(R.string.lb_short_shortcut_profile)
+ ).setShortLabel(context.getString(R.string.lb_short_shortcut_profile))
.setLongLabel(context.getString(R.string.lb_long_shortcut_profile))
.setDisabledMessage(context.getString(R.string.lb_shortcut_disabled_message))
.setIcon(
IconCompat.createWithResource(
- context,
- drawable.ic_baseline_person_outline_24
+ context, drawable.ic_baseline_person_outline_24
)
- )
- .setIntent(shortcutIntent(ProfileDestination.route))
- .build()
+ ).setIntent(shortcutIntent(ProfileDestination.route)).build()
}
private val shortcutIntent: (String) -> Intent
get(): (String) -> Intent = { url ->
Intent(
- Intent.ACTION_VIEW,
- Uri.parse("app://$url"),
- context,
- MainActivity::class.java
+ Intent.ACTION_VIEW, Uri.parse("app://$url"), context, MainActivity::class.java
)
}
}
diff --git a/app/src/test/java/com/stslex/cnotes/CheckModulesTest.kt b/app/src/test/java/com/stslex/cnotes/CheckModulesTest.kt
index 3fc59ea..ac7c4bc 100644
--- a/app/src/test/java/com/stslex/cnotes/CheckModulesTest.kt
+++ b/app/src/test/java/com/stslex/cnotes/CheckModulesTest.kt
@@ -1,15 +1,13 @@
package com.stslex.cnotes
-import com.example.feature_auth_code.di.AuthCodeModule
-import com.example.feature_auth_phonenumber.di.AuthPhoneNumberModule
-import com.example.feature_note_list.di.NoteListModule
+import com.stslex.feature_auth_code.di.AuthCodeModule
+import com.stslex.feature_auth_phonenumber.di.AuthPhoneNumberModule
+import com.stslex.feature_note_list.di.NoteListModule
import com.stslex.cnotes.di.AppComponent
-import com.stslex.core_coroutines.CoroutinesModule
+import com.stslex.core.CoroutinesModule
import com.stslex.core_data_source.di.RoomDatabaseModule
-import com.stslex.core_firebase.FirebaseModule
-import com.stslex.core_firebase_auth.di.FirebaseAuthModule
+import com.stslex.core_firebase.di.FirebaseModule
import com.stslex.core_model.di.MapperModule
-import com.stslex.core_remote_data_source.di.RemoteDataSourceModule
import com.stslex.feature_profile.di.ProfileModule
import com.stslex.feature_single_note.di.SingleNoteModule
import org.junit.After
@@ -36,9 +34,7 @@ class CheckModulesTest : KoinTest {
AuthPhoneNumberModule().module
AuthCodeModule().module
ProfileModule().module
- RemoteDataSourceModule().module
MapperModule().module
- FirebaseAuthModule().module
SingleNoteModule().module
}
}
diff --git a/core-coroutines/.gitignore b/core-coroutines/.gitignore
deleted file mode 100644
index 42afabf..0000000
--- a/core-coroutines/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-/build
\ No newline at end of file
diff --git a/core-coroutines/build.gradle.kts b/core-coroutines/build.gradle.kts
deleted file mode 100644
index 066c847..0000000
--- a/core-coroutines/build.gradle.kts
+++ /dev/null
@@ -1,19 +0,0 @@
-plugins {
- id("cnotes.android.library")
- id("cnotes.android.library.jacoco")
- id("com.google.devtools.ksp")
-}
-
-dependencies {
- implementation(project(":core"))
- implementation(project(":core-test"))
- implementation(libs.koin.android)
- api(libs.kotlinx.coroutines.android)
- implementation(libs.koin.core)
- implementation(libs.koin.annotations)
- ksp(libs.koin.ksp)
-}
-
-android {
- namespace = "com.stslex.core_coroutines"
-}
\ No newline at end of file
diff --git a/core-coroutines/consumer-rules.pro b/core-coroutines/consumer-rules.pro
deleted file mode 100644
index e69de29..0000000
diff --git a/core-coroutines/proguard-rules.pro b/core-coroutines/proguard-rules.pro
deleted file mode 100644
index 481bb43..0000000
--- a/core-coroutines/proguard-rules.pro
+++ /dev/null
@@ -1,21 +0,0 @@
-# Add project specific ProGuard rules here.
-# You can control the set of applied configuration files using the
-# proguardFiles setting in build.gradle.
-#
-# For more details, see
-# http://developer.android.com/guide/developing/tools/proguard.html
-
-# If your project uses WebView with JS, uncomment the following
-# and specify the fully qualified class name to the JavaScript interface
-# class:
-#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
-# public *;
-#}
-
-# Uncomment this to preserve the line number information for
-# debugging stack traces.
-#-keepattributes SourceFile,LineNumberTable
-
-# If you keep the line number information, uncomment this to
-# hide the original source file name.
-#-renamesourcefileattribute SourceFile
\ No newline at end of file
diff --git a/core-coroutines/src/androidTest/java/com/stslex/core_coroutines/ExampleInstrumentedTest.kt b/core-coroutines/src/androidTest/java/com/stslex/core_coroutines/ExampleInstrumentedTest.kt
deleted file mode 100644
index 2e5ce24..0000000
--- a/core-coroutines/src/androidTest/java/com/stslex/core_coroutines/ExampleInstrumentedTest.kt
+++ /dev/null
@@ -1,24 +0,0 @@
-package com.stslex.core_coroutines
-
-import androidx.test.platform.app.InstrumentationRegistry
-import androidx.test.ext.junit.runners.AndroidJUnit4
-
-import org.junit.Test
-import org.junit.runner.RunWith
-
-import org.junit.Assert.*
-
-/**
- * Instrumented test, which will execute on an Android device.
- *
- * See [testing documentation](http://d.android.com/tools/testing).
- */
-@RunWith(AndroidJUnit4::class)
-class ExampleInstrumentedTest {
- @Test
- fun useAppContext() {
- // Context of the app under test.
- val appContext = InstrumentationRegistry.getInstrumentation().targetContext
- assertEquals("com.stslex.core_coroutines.test", appContext.packageName)
- }
-}
\ No newline at end of file
diff --git a/core-coroutines/src/main/AndroidManifest.xml b/core-coroutines/src/main/AndroidManifest.xml
deleted file mode 100644
index a5918e6..0000000
--- a/core-coroutines/src/main/AndroidManifest.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-
-
-
-
\ No newline at end of file
diff --git a/core-firebase-auth/.gitignore b/core-firebase-auth/.gitignore
deleted file mode 100644
index 42afabf..0000000
--- a/core-firebase-auth/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-/build
\ No newline at end of file
diff --git a/core-firebase-auth/build.gradle.kts b/core-firebase-auth/build.gradle.kts
deleted file mode 100644
index 206b885..0000000
--- a/core-firebase-auth/build.gradle.kts
+++ /dev/null
@@ -1,23 +0,0 @@
-plugins {
- id("cnotes.android.library")
- id("com.google.devtools.ksp")
-}
-
-dependencies {
- implementation(project(":core"))
- implementation(project(":core-test"))
- implementation(project(":core-coroutines"))
- implementation(project(":core-firebase"))
-
- with(libs) {
- implementation(koin.core)
- implementation(koin.android)
- implementation(koin.annotations)
- ksp(koin.ksp)
- implementation(androidx.core.kts)
- }
-}
-
-android {
- namespace = "com.stslex.core_firebase_auth"
-}
\ No newline at end of file
diff --git a/core-firebase-auth/consumer-rules.pro b/core-firebase-auth/consumer-rules.pro
deleted file mode 100644
index e69de29..0000000
diff --git a/core-firebase-auth/proguard-rules.pro b/core-firebase-auth/proguard-rules.pro
deleted file mode 100644
index 481bb43..0000000
--- a/core-firebase-auth/proguard-rules.pro
+++ /dev/null
@@ -1,21 +0,0 @@
-# Add project specific ProGuard rules here.
-# You can control the set of applied configuration files using the
-# proguardFiles setting in build.gradle.
-#
-# For more details, see
-# http://developer.android.com/guide/developing/tools/proguard.html
-
-# If your project uses WebView with JS, uncomment the following
-# and specify the fully qualified class name to the JavaScript interface
-# class:
-#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
-# public *;
-#}
-
-# Uncomment this to preserve the line number information for
-# debugging stack traces.
-#-keepattributes SourceFile,LineNumberTable
-
-# If you keep the line number information, uncomment this to
-# hide the original source file name.
-#-renamesourcefileattribute SourceFile
\ No newline at end of file
diff --git a/core-firebase-auth/src/androidTest/java/com/stslex/core_firebase_auth/ExampleInstrumentedTest.kt b/core-firebase-auth/src/androidTest/java/com/stslex/core_firebase_auth/ExampleInstrumentedTest.kt
deleted file mode 100644
index 1ac2419..0000000
--- a/core-firebase-auth/src/androidTest/java/com/stslex/core_firebase_auth/ExampleInstrumentedTest.kt
+++ /dev/null
@@ -1,24 +0,0 @@
-package com.stslex.core_firebase_auth
-
-import androidx.test.platform.app.InstrumentationRegistry
-import androidx.test.ext.junit.runners.AndroidJUnit4
-
-import org.junit.Test
-import org.junit.runner.RunWith
-
-import org.junit.Assert.*
-
-/**
- * Instrumented test, which will execute on an Android device.
- *
- * See [testing documentation](http://d.android.com/tools/testing).
- */
-@RunWith(AndroidJUnit4::class)
-class ExampleInstrumentedTest {
- @Test
- fun useAppContext() {
- // Context of the app under test.
- val appContext = InstrumentationRegistry.getInstrumentation().targetContext
- assertEquals("com.stslex.core_firebase_auth.test", appContext.packageName)
- }
-}
\ No newline at end of file
diff --git a/core-firebase-auth/src/main/AndroidManifest.xml b/core-firebase-auth/src/main/AndroidManifest.xml
deleted file mode 100644
index a5918e6..0000000
--- a/core-firebase-auth/src/main/AndroidManifest.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-
-
-
-
\ No newline at end of file
diff --git a/core-firebase-auth/src/main/java/com/stslex/core_firebase_auth/di/FirebaseAuthModule.kt b/core-firebase-auth/src/main/java/com/stslex/core_firebase_auth/di/FirebaseAuthModule.kt
deleted file mode 100644
index 5419d60..0000000
--- a/core-firebase-auth/src/main/java/com/stslex/core_firebase_auth/di/FirebaseAuthModule.kt
+++ /dev/null
@@ -1,16 +0,0 @@
-package com.stslex.core_firebase_auth.di
-
-import com.stslex.core_firebase_auth.data.FirebaseAuthRepository
-import com.stslex.core_firebase_auth.data.FirebaseAuthRepositoryImpl
-import org.koin.core.annotation.Module
-import org.koin.core.module.dsl.bind
-import org.koin.core.module.dsl.singleOf
-import org.koin.dsl.module
-
-@Module
-class FirebaseAuthModule {
-
- val module = module {
- singleOf(::FirebaseAuthRepositoryImpl) { bind() }
- }
-}
diff --git a/core-firebase-auth/src/test/java/com/stslex/core_firebase_auth/di/FirebaseAuthModuleTest.kt b/core-firebase-auth/src/test/java/com/stslex/core_firebase_auth/di/FirebaseAuthModuleTest.kt
deleted file mode 100644
index 58f4761..0000000
--- a/core-firebase-auth/src/test/java/com/stslex/core_firebase_auth/di/FirebaseAuthModuleTest.kt
+++ /dev/null
@@ -1,22 +0,0 @@
-package com.stslex.core_firebase_auth.di
-
-import org.junit.After
-import org.junit.Test
-import org.koin.core.context.stopKoin
-import org.koin.test.KoinTest
-import org.koin.test.check.checkModules
-
-class FirebaseAuthModuleTest : KoinTest {
-
- @After
- fun closeKoin() {
- stopKoin()
- }
-
- @Test
- fun checkAllModules() {
- checkModules {
- FirebaseAuthModule().module
- }
- }
-}
\ No newline at end of file
diff --git a/core-firebase/build.gradle.kts b/core-firebase/build.gradle.kts
index 03b1e06..497339a 100644
--- a/core-firebase/build.gradle.kts
+++ b/core-firebase/build.gradle.kts
@@ -6,7 +6,7 @@ plugins {
dependencies {
implementation(project(":core"))
implementation(project(":core-test"))
- implementation(project(":core-coroutines"))
+ implementation(project(":core-model"))
with(libs) {
implementation(koin.core)
diff --git a/core-firebase/src/main/java/com/stslex/core_firebase/FirebaseModule.kt b/core-firebase/src/main/java/com/stslex/core_firebase/FirebaseModule.kt
deleted file mode 100644
index fbda214..0000000
--- a/core-firebase/src/main/java/com/stslex/core_firebase/FirebaseModule.kt
+++ /dev/null
@@ -1,39 +0,0 @@
-package com.stslex.core_firebase
-
-import com.google.firebase.FirebaseOptions
-import com.google.firebase.database.ktx.database
-import com.google.firebase.firestore.ktx.firestore
-import com.google.firebase.ktx.Firebase
-import com.stslex.core_firebase.abstraction.FirebaseAppInitialisationUtil
-import com.stslex.core_firebase.realisation.FirebaseAppInitialisationUtilImpl
-import org.koin.android.ext.koin.androidContext
-import org.koin.core.annotation.Single
-import org.koin.dsl.module
-
-@Single
-class FirebaseModule {
-
- val module = module {
-
- single {
- FirebaseOptions.Builder()
- .setProjectId(BuildConfig.FIREBASE_PROJECT_ID)
- .setApplicationId(BuildConfig.FIREBASE_APPLICATION_ID)
- .setApiKey(BuildConfig.FIREBASE_API_KEY)
- .setDatabaseUrl(BuildConfig.FIREBASE_DATABASE_URL)
- .build()
- }
-
- factory {
- Firebase.firestore
- }
-
- factory {
- Firebase.database
- }
-
- factory {
- FirebaseAppInitialisationUtilImpl(androidContext(), get())
- }
- }
-}
diff --git a/core-firebase/src/main/java/com/stslex/core_firebase/abstraction/ICoroutinesTaskHandler.kt b/core-firebase/src/main/java/com/stslex/core_firebase/abstraction/ICoroutinesTaskHandler.kt
deleted file mode 100644
index 48b54f8..0000000
--- a/core-firebase/src/main/java/com/stslex/core_firebase/abstraction/ICoroutinesTaskHandler.kt
+++ /dev/null
@@ -1,7 +0,0 @@
-package com.stslex.core_firebase.abstraction
-
-import com.stslex.core.ValueState
-
-fun interface ICoroutinesTaskHandler {
- suspend operator fun invoke(): ValueState
-}
\ No newline at end of file
diff --git a/core-firebase/src/main/java/com/stslex/core_firebase/core/FbNames.kt b/core-firebase/src/main/java/com/stslex/core_firebase/core/FbNames.kt
new file mode 100644
index 0000000..e80b41f
--- /dev/null
+++ b/core-firebase/src/main/java/com/stslex/core_firebase/core/FbNames.kt
@@ -0,0 +1,5 @@
+package com.stslex.core_firebase.core
+
+enum class FbNames {
+ VOID
+}
\ No newline at end of file
diff --git a/core-firebase/src/main/java/com/stslex/core_firebase/FirebaseReferences.kt b/core-firebase/src/main/java/com/stslex/core_firebase/core/FirebaseReferences.kt
similarity index 81%
rename from core-firebase/src/main/java/com/stslex/core_firebase/FirebaseReferences.kt
rename to core-firebase/src/main/java/com/stslex/core_firebase/core/FirebaseReferences.kt
index 4b37c16..f88f8a3 100644
--- a/core-firebase/src/main/java/com/stslex/core_firebase/FirebaseReferences.kt
+++ b/core-firebase/src/main/java/com/stslex/core_firebase/core/FirebaseReferences.kt
@@ -1,4 +1,4 @@
-package com.stslex.core_firebase
+package com.stslex.core_firebase.core
object FirebaseReferences {
const val NODE_USERS = "users"
diff --git a/core-firebase-auth/src/main/java/com/stslex/core_firebase_auth/data/FirebaseAuthRepository.kt b/core-firebase/src/main/java/com/stslex/core_firebase/data/abstraction/FirebaseAuthRepository.kt
similarity index 70%
rename from core-firebase-auth/src/main/java/com/stslex/core_firebase_auth/data/FirebaseAuthRepository.kt
rename to core-firebase/src/main/java/com/stslex/core_firebase/data/abstraction/FirebaseAuthRepository.kt
index 340bab5..62ad908 100644
--- a/core-firebase-auth/src/main/java/com/stslex/core_firebase_auth/data/FirebaseAuthRepository.kt
+++ b/core-firebase/src/main/java/com/stslex/core_firebase/data/abstraction/FirebaseAuthRepository.kt
@@ -1,4 +1,4 @@
-package com.stslex.core_firebase_auth.data
+package com.stslex.core_firebase.data.abstraction
import com.stslex.core.ValueState
diff --git a/core-remote-data-source/src/main/java/com/stslex/core_remote_data_source/service/abstraction/FirebaseNotesService.kt b/core-firebase/src/main/java/com/stslex/core_firebase/data/abstraction/FirebaseNotesService.kt
similarity index 85%
rename from core-remote-data-source/src/main/java/com/stslex/core_remote_data_source/service/abstraction/FirebaseNotesService.kt
rename to core-firebase/src/main/java/com/stslex/core_firebase/data/abstraction/FirebaseNotesService.kt
index f7b4d20..f992ce9 100644
--- a/core-remote-data-source/src/main/java/com/stslex/core_remote_data_source/service/abstraction/FirebaseNotesService.kt
+++ b/core-firebase/src/main/java/com/stslex/core_firebase/data/abstraction/FirebaseNotesService.kt
@@ -1,4 +1,4 @@
-package com.stslex.core_remote_data_source.service.abstraction
+package com.stslex.core_firebase.data.abstraction
import com.stslex.core.ValueState
import com.stslex.core_model.model.NoteEntity
diff --git a/core-firebase-auth/src/main/java/com/stslex/core_firebase_auth/data/FirebaseAuthRepositoryImpl.kt b/core-firebase/src/main/java/com/stslex/core_firebase/data/realisation/FirebaseAuthRepositoryImpl.kt
similarity index 73%
rename from core-firebase-auth/src/main/java/com/stslex/core_firebase_auth/data/FirebaseAuthRepositoryImpl.kt
rename to core-firebase/src/main/java/com/stslex/core_firebase/data/realisation/FirebaseAuthRepositoryImpl.kt
index 1ee7bb8..45a5c0c 100644
--- a/core-firebase-auth/src/main/java/com/stslex/core_firebase_auth/data/FirebaseAuthRepositoryImpl.kt
+++ b/core-firebase/src/main/java/com/stslex/core_firebase/data/realisation/FirebaseAuthRepositoryImpl.kt
@@ -1,4 +1,4 @@
-package com.stslex.core_firebase_auth.data
+package com.stslex.core_firebase.data.realisation
import com.google.firebase.auth.FirebaseUser
import com.google.firebase.auth.ktx.auth
@@ -6,9 +6,11 @@ import com.google.firebase.database.DatabaseReference
import com.google.firebase.database.ktx.database
import com.google.firebase.ktx.Firebase
import com.stslex.core.ValueState
-import com.stslex.core_firebase.FirebaseReferences.CHILD_ID
-import com.stslex.core_firebase.FirebaseReferences.CHILD_PHONE
-import com.stslex.core_firebase.FirebaseReferences.NODE_USERS
+import com.stslex.core_firebase.core.FirebaseReferences.CHILD_ID
+import com.stslex.core_firebase.core.FirebaseReferences.CHILD_PHONE
+import com.stslex.core_firebase.core.FirebaseReferences.NODE_USERS
+import com.stslex.core_firebase.utils.SaveUserCompleteListener
+import com.stslex.core_firebase.data.abstraction.FirebaseAuthRepository
import kotlin.coroutines.resume
import kotlin.coroutines.suspendCoroutine
diff --git a/core-firebase/src/main/java/com/stslex/core_firebase/data/realisation/FirebaseNotesServiceImpl.kt b/core-firebase/src/main/java/com/stslex/core_firebase/data/realisation/FirebaseNotesServiceImpl.kt
new file mode 100644
index 0000000..2927edd
--- /dev/null
+++ b/core-firebase/src/main/java/com/stslex/core_firebase/data/realisation/FirebaseNotesServiceImpl.kt
@@ -0,0 +1,35 @@
+package com.stslex.core_firebase.data.realisation
+
+import com.google.firebase.database.DatabaseReference
+import com.stslex.core.ValueState
+import com.stslex.core_model.model.NoteEntity
+import com.stslex.core_firebase.data.abstraction.FirebaseNotesService
+import com.stslex.core_firebase.utils.realisation.CoroutineSnapshotHandler
+import com.stslex.core_firebase.utils.realisation.CoroutinesTaskHandler
+import com.stslex.core_firebase.utils.realisation.ListSnapshot
+import kotlinx.coroutines.channels.awaitClose
+import kotlinx.coroutines.channels.trySendBlocking
+import kotlinx.coroutines.flow.Flow
+import kotlinx.coroutines.flow.callbackFlow
+
+class FirebaseNotesServiceImpl(
+ private val coroutinesTaskHandler: CoroutinesTaskHandler,
+ private val reference: Lazy
+) : FirebaseNotesService {
+
+ override suspend fun uploadNotesToRemoteDatabase(updateMap: Map): ValueState =
+ coroutinesTaskHandler(reference.value.updateChildren(updateMap))
+
+ override val remoteNotes: Flow>>
+ get() = callbackFlow {
+ val listener = ListSnapshot(::trySendBlocking).invoke(NoteEntity::class)
+ reference.value.addValueEventListener(listener)
+ awaitClose { reference.value.removeEventListener(listener) }
+ }
+
+ override suspend fun getRemoteNotes(): ValueState> =
+ CoroutineSnapshotHandler().invoke(
+ task = reference.value.get(),
+ type = NoteEntity::class
+ )
+}
\ No newline at end of file
diff --git a/core-firebase/src/main/java/com/stslex/core_firebase/di/FirebaseModule.kt b/core-firebase/src/main/java/com/stslex/core_firebase/di/FirebaseModule.kt
new file mode 100644
index 0000000..5fdf00b
--- /dev/null
+++ b/core-firebase/src/main/java/com/stslex/core_firebase/di/FirebaseModule.kt
@@ -0,0 +1,70 @@
+package com.stslex.core_firebase.di
+
+import com.google.firebase.FirebaseOptions
+import com.google.firebase.auth.ktx.auth
+import com.google.firebase.database.FirebaseDatabase
+import com.google.firebase.database.ktx.database
+import com.google.firebase.firestore.ktx.firestore
+import com.google.firebase.ktx.Firebase
+import com.stslex.core_firebase.*
+import com.stslex.core_firebase.core.FbNames
+import com.stslex.core_firebase.core.FirebaseReferences
+import com.stslex.core_firebase.data.abstraction.FirebaseAuthRepository
+import com.stslex.core_firebase.utils.abstraction.FirebaseAppInitialisationUtil
+import com.stslex.core_firebase.data.abstraction.FirebaseNotesService
+import com.stslex.core_firebase.data.realisation.FirebaseAuthRepositoryImpl
+import com.stslex.core_firebase.utils.abstraction.ICoroutinesTaskHandler
+import com.stslex.core_firebase.utils.realisation.CoroutinesTaskHandler
+import com.stslex.core_firebase.utils.realisation.FirebaseAppInitialisationUtilImpl
+import com.stslex.core_firebase.data.realisation.FirebaseNotesServiceImpl
+import org.koin.android.ext.koin.androidContext
+import org.koin.core.annotation.Single
+import org.koin.core.module.dsl.bind
+import org.koin.core.module.dsl.singleOf
+import org.koin.core.qualifier.named
+import org.koin.dsl.module
+import java.util.concurrent.Executors
+
+@Single
+class FirebaseModule {
+
+ val module = module {
+
+ single {
+ FirebaseOptions.Builder()
+ .setProjectId(BuildConfig.FIREBASE_PROJECT_ID)
+ .setApplicationId(BuildConfig.FIREBASE_APPLICATION_ID)
+ .setApiKey(BuildConfig.FIREBASE_API_KEY)
+ .setDatabaseUrl(BuildConfig.FIREBASE_DATABASE_URL)
+ .build()
+ }
+
+ factory>(named(FbNames.VOID)) {
+ CoroutinesTaskHandler(executor = Executors.newSingleThreadExecutor())
+ }
+
+ factory {
+ Firebase.firestore
+ }
+
+ factory {
+ Firebase.database
+ }
+
+ factory {
+ FirebaseAppInitialisationUtilImpl(androidContext(), get())
+ }
+
+ singleOf(::FirebaseAuthRepositoryImpl) { bind() }
+
+ single {
+ FirebaseNotesServiceImpl(
+ coroutinesTaskHandler = get(named(FbNames.VOID)),
+ reference = lazy {
+ get().reference.child(FirebaseReferences.NODE_USERS)
+ .child(Firebase.auth.currentUser?.uid ?: "")
+ .child(FirebaseReferences.CHILD_NOTES)
+ })
+ }
+ }
+}
diff --git a/core-firebase/src/main/java/com/stslex/core_firebase/realisation/CoroutinesTaskHandler.kt b/core-firebase/src/main/java/com/stslex/core_firebase/realisation/CoroutinesTaskHandler.kt
deleted file mode 100644
index 2e92035..0000000
--- a/core-firebase/src/main/java/com/stslex/core_firebase/realisation/CoroutinesTaskHandler.kt
+++ /dev/null
@@ -1,19 +0,0 @@
-package com.stslex.core_firebase.realisation
-
-import com.google.android.gms.tasks.Task
-import com.stslex.core.ValueState
-import com.stslex.core_firebase.abstraction.ICoroutinesTaskHandler
-import java.util.concurrent.Executor
-import java.util.concurrent.Executors
-import kotlin.coroutines.resume
-import kotlin.coroutines.suspendCoroutine
-
-class CoroutinesTaskHandler(
- private val task: Task,
- private val executor: Executor = Executors.newSingleThreadExecutor()
-) : ICoroutinesTaskHandler {
- override suspend fun invoke(): ValueState = suspendCoroutine { continuation ->
- task.addOnSuccessListener(executor) { continuation.resume(ValueState.Success(it)) }
- task.addOnFailureListener(executor) { continuation.resume(ValueState.Failure(it)) }
- }
-}
\ No newline at end of file
diff --git a/core-firebase/src/main/java/com/stslex/core_firebase/AppValueEventListener.kt b/core-firebase/src/main/java/com/stslex/core_firebase/utils/AppValueEventListener.kt
similarity index 94%
rename from core-firebase/src/main/java/com/stslex/core_firebase/AppValueEventListener.kt
rename to core-firebase/src/main/java/com/stslex/core_firebase/utils/AppValueEventListener.kt
index 05e7e71..c4319dc 100644
--- a/core-firebase/src/main/java/com/stslex/core_firebase/AppValueEventListener.kt
+++ b/core-firebase/src/main/java/com/stslex/core_firebase/utils/AppValueEventListener.kt
@@ -1,4 +1,4 @@
-package com.stslex.core_firebase
+package com.stslex.core_firebase.utils
import com.google.firebase.database.DataSnapshot
import com.google.firebase.database.DatabaseError
diff --git a/core-firebase-auth/src/main/java/com/stslex/core_firebase_auth/data/SaveUserCompleteListener.kt b/core-firebase/src/main/java/com/stslex/core_firebase/utils/SaveUserCompleteListener.kt
similarity index 93%
rename from core-firebase-auth/src/main/java/com/stslex/core_firebase_auth/data/SaveUserCompleteListener.kt
rename to core-firebase/src/main/java/com/stslex/core_firebase/utils/SaveUserCompleteListener.kt
index 6dcf91f..526c73d 100644
--- a/core-firebase-auth/src/main/java/com/stslex/core_firebase_auth/data/SaveUserCompleteListener.kt
+++ b/core-firebase/src/main/java/com/stslex/core_firebase/utils/SaveUserCompleteListener.kt
@@ -1,4 +1,4 @@
-package com.stslex.core_firebase_auth.data
+package com.stslex.core_firebase.utils
import com.google.android.gms.tasks.OnCompleteListener
import com.google.android.gms.tasks.Task
@@ -13,7 +13,6 @@ value class SaveUserCompleteListener(
val result = if (task.isSuccessful) {
ValueState.Success(Unit)
} else {
-
ValueState.Failure(task.exception ?: Exception(CANCELLED_MESSAGE))
}
action(result)
diff --git a/core-firebase/src/main/java/com/stslex/core_firebase/abstraction/AppSnapshotListener.kt b/core-firebase/src/main/java/com/stslex/core_firebase/utils/abstraction/AppSnapshotListener.kt
similarity index 79%
rename from core-firebase/src/main/java/com/stslex/core_firebase/abstraction/AppSnapshotListener.kt
rename to core-firebase/src/main/java/com/stslex/core_firebase/utils/abstraction/AppSnapshotListener.kt
index 8ab2087..b7e3c63 100644
--- a/core-firebase/src/main/java/com/stslex/core_firebase/abstraction/AppSnapshotListener.kt
+++ b/core-firebase/src/main/java/com/stslex/core_firebase/utils/abstraction/AppSnapshotListener.kt
@@ -1,4 +1,4 @@
-package com.stslex.core_firebase.abstraction
+package com.stslex.core_firebase.utils.abstraction
import com.google.firebase.database.ValueEventListener
import kotlin.reflect.KClass
diff --git a/core-firebase/src/main/java/com/stslex/core_firebase/abstraction/FirebaseAppInitialisationUtil.kt b/core-firebase/src/main/java/com/stslex/core_firebase/utils/abstraction/FirebaseAppInitialisationUtil.kt
similarity index 59%
rename from core-firebase/src/main/java/com/stslex/core_firebase/abstraction/FirebaseAppInitialisationUtil.kt
rename to core-firebase/src/main/java/com/stslex/core_firebase/utils/abstraction/FirebaseAppInitialisationUtil.kt
index 6c439f6..37e2e6d 100644
--- a/core-firebase/src/main/java/com/stslex/core_firebase/abstraction/FirebaseAppInitialisationUtil.kt
+++ b/core-firebase/src/main/java/com/stslex/core_firebase/utils/abstraction/FirebaseAppInitialisationUtil.kt
@@ -1,4 +1,4 @@
-package com.stslex.core_firebase.abstraction
+package com.stslex.core_firebase.utils.abstraction
fun interface FirebaseAppInitialisationUtil {
operator fun invoke()
diff --git a/core-firebase/src/main/java/com/stslex/core_firebase/utils/abstraction/ICoroutinesTaskHandler.kt b/core-firebase/src/main/java/com/stslex/core_firebase/utils/abstraction/ICoroutinesTaskHandler.kt
new file mode 100644
index 0000000..d8db9a5
--- /dev/null
+++ b/core-firebase/src/main/java/com/stslex/core_firebase/utils/abstraction/ICoroutinesTaskHandler.kt
@@ -0,0 +1,8 @@
+package com.stslex.core_firebase.utils.abstraction
+
+import com.google.android.gms.tasks.Task
+import com.stslex.core.ValueState
+
+fun interface ICoroutinesTaskHandler {
+ suspend operator fun invoke(task: Task): ValueState
+}
\ No newline at end of file
diff --git a/core-firebase/src/main/java/com/stslex/core_firebase/realisation/CoroutineSnapshotHandler.kt b/core-firebase/src/main/java/com/stslex/core_firebase/utils/realisation/CoroutineSnapshotHandler.kt
similarity index 96%
rename from core-firebase/src/main/java/com/stslex/core_firebase/realisation/CoroutineSnapshotHandler.kt
rename to core-firebase/src/main/java/com/stslex/core_firebase/utils/realisation/CoroutineSnapshotHandler.kt
index 499e348..b648aef 100644
--- a/core-firebase/src/main/java/com/stslex/core_firebase/realisation/CoroutineSnapshotHandler.kt
+++ b/core-firebase/src/main/java/com/stslex/core_firebase/utils/realisation/CoroutineSnapshotHandler.kt
@@ -1,4 +1,4 @@
-package com.stslex.core_firebase.realisation
+package com.stslex.core_firebase.utils.realisation
import com.google.android.gms.tasks.Task
import com.google.firebase.database.DataSnapshot
diff --git a/core-firebase/src/main/java/com/stslex/core_firebase/utils/realisation/CoroutinesTaskHandler.kt b/core-firebase/src/main/java/com/stslex/core_firebase/utils/realisation/CoroutinesTaskHandler.kt
new file mode 100644
index 0000000..af567ec
--- /dev/null
+++ b/core-firebase/src/main/java/com/stslex/core_firebase/utils/realisation/CoroutinesTaskHandler.kt
@@ -0,0 +1,18 @@
+package com.stslex.core_firebase.utils.realisation
+
+import com.google.android.gms.tasks.Task
+import com.stslex.core.ValueState
+import com.stslex.core_firebase.utils.abstraction.ICoroutinesTaskHandler
+import java.util.concurrent.Executor
+import kotlin.coroutines.resume
+import kotlin.coroutines.suspendCoroutine
+
+class CoroutinesTaskHandler(
+ private val executor: Executor
+) : ICoroutinesTaskHandler {
+ override suspend operator fun invoke(task: Task): ValueState =
+ suspendCoroutine { continuation ->
+ task.addOnSuccessListener(executor) { continuation.resume(ValueState.Success(it)) }
+ task.addOnFailureListener(executor) { continuation.resume(ValueState.Failure(it)) }
+ }
+}
\ No newline at end of file
diff --git a/core-firebase/src/main/java/com/stslex/core_firebase/realisation/FirebaseAppInitialisationUtilImpl.kt b/core-firebase/src/main/java/com/stslex/core_firebase/utils/realisation/FirebaseAppInitialisationUtilImpl.kt
similarity index 77%
rename from core-firebase/src/main/java/com/stslex/core_firebase/realisation/FirebaseAppInitialisationUtilImpl.kt
rename to core-firebase/src/main/java/com/stslex/core_firebase/utils/realisation/FirebaseAppInitialisationUtilImpl.kt
index b811665..572b5cf 100644
--- a/core-firebase/src/main/java/com/stslex/core_firebase/realisation/FirebaseAppInitialisationUtilImpl.kt
+++ b/core-firebase/src/main/java/com/stslex/core_firebase/utils/realisation/FirebaseAppInitialisationUtilImpl.kt
@@ -1,9 +1,9 @@
-package com.stslex.core_firebase.realisation
+package com.stslex.core_firebase.utils.realisation
import android.content.Context
import com.google.firebase.FirebaseApp
import com.google.firebase.FirebaseOptions
-import com.stslex.core_firebase.abstraction.FirebaseAppInitialisationUtil
+import com.stslex.core_firebase.utils.abstraction.FirebaseAppInitialisationUtil
class FirebaseAppInitialisationUtilImpl(
private val context: Context,
diff --git a/core-firebase/src/main/java/com/stslex/core_firebase/realisation/ListSnapshot.kt b/core-firebase/src/main/java/com/stslex/core_firebase/utils/realisation/ListSnapshot.kt
similarity index 76%
rename from core-firebase/src/main/java/com/stslex/core_firebase/realisation/ListSnapshot.kt
rename to core-firebase/src/main/java/com/stslex/core_firebase/utils/realisation/ListSnapshot.kt
index 52728bc..8a926e3 100644
--- a/core-firebase/src/main/java/com/stslex/core_firebase/realisation/ListSnapshot.kt
+++ b/core-firebase/src/main/java/com/stslex/core_firebase/utils/realisation/ListSnapshot.kt
@@ -1,9 +1,9 @@
-package com.stslex.core_firebase.realisation
+package com.stslex.core_firebase.utils.realisation
import com.google.firebase.database.ValueEventListener
import com.stslex.core.ValueState
-import com.stslex.core_firebase.AppValueEventListener
-import com.stslex.core_firebase.abstraction.AppSnapshotListener
+import com.stslex.core_firebase.utils.AppValueEventListener
+import com.stslex.core_firebase.utils.abstraction.AppSnapshotListener
import kotlin.reflect.KClass
@JvmInline
diff --git a/core-firebase/src/main/java/com/stslex/core_firebase/realisation/SingleSnapshot.kt b/core-firebase/src/main/java/com/stslex/core_firebase/utils/realisation/SingleSnapshot.kt
similarity index 74%
rename from core-firebase/src/main/java/com/stslex/core_firebase/realisation/SingleSnapshot.kt
rename to core-firebase/src/main/java/com/stslex/core_firebase/utils/realisation/SingleSnapshot.kt
index 994ce75..5f16947 100644
--- a/core-firebase/src/main/java/com/stslex/core_firebase/realisation/SingleSnapshot.kt
+++ b/core-firebase/src/main/java/com/stslex/core_firebase/utils/realisation/SingleSnapshot.kt
@@ -1,9 +1,9 @@
-package com.stslex.core_firebase.realisation
+package com.stslex.core_firebase.utils.realisation
import com.google.firebase.database.ValueEventListener
import com.stslex.core.ValueState
-import com.stslex.core_firebase.AppValueEventListener
-import com.stslex.core_firebase.abstraction.AppSnapshotListener
+import com.stslex.core_firebase.utils.AppValueEventListener
+import com.stslex.core_firebase.utils.abstraction.AppSnapshotListener
import kotlin.reflect.KClass
@JvmInline
diff --git a/core-firebase/src/test/java/com/stslex/core_firebase/AppValueEventListenerTest.kt b/core-firebase/src/test/java/com/stslex/core_firebase/AppValueEventListenerTest.kt
index a72468d..7e30a03 100644
--- a/core-firebase/src/test/java/com/stslex/core_firebase/AppValueEventListenerTest.kt
+++ b/core-firebase/src/test/java/com/stslex/core_firebase/AppValueEventListenerTest.kt
@@ -3,6 +3,7 @@ package com.stslex.core_firebase
import com.google.firebase.database.DataSnapshot
import com.google.firebase.database.DatabaseError
import com.google.firebase.database.ValueEventListener
+import com.stslex.core_firebase.utils.AppValueEventListener
import org.junit.Assert
import org.junit.Test
import org.mockito.Mockito
@@ -11,7 +12,7 @@ class AppValueEventListenerTest {
@Test
fun onCancelled() {
- var assertFlag = false;
+ var assertFlag = false
val listener: ValueEventListener = AppValueEventListener(
cancelled = {
assertFlag = true
diff --git a/core-firebase/src/test/java/com/stslex/core_firebase/FirebaseModuleTest.kt b/core-firebase/src/test/java/com/stslex/core_firebase/FirebaseModuleTest.kt
index 570d68f..84677c7 100644
--- a/core-firebase/src/test/java/com/stslex/core_firebase/FirebaseModuleTest.kt
+++ b/core-firebase/src/test/java/com/stslex/core_firebase/FirebaseModuleTest.kt
@@ -1,5 +1,6 @@
package com.stslex.core_firebase
+import com.stslex.core_firebase.di.FirebaseModule
import org.junit.After
import org.junit.Test
import org.koin.core.context.stopKoin
diff --git a/core-firebase-auth/src/test/java/com/stslex/core_firebase_auth/data/SaveUserCompleteListenerTest.kt b/core-firebase/src/test/java/com/stslex/core_firebase/SaveUserCompleteListenerTest.kt
similarity index 94%
rename from core-firebase-auth/src/test/java/com/stslex/core_firebase_auth/data/SaveUserCompleteListenerTest.kt
rename to core-firebase/src/test/java/com/stslex/core_firebase/SaveUserCompleteListenerTest.kt
index 1f77a6a..d925112 100644
--- a/core-firebase-auth/src/test/java/com/stslex/core_firebase_auth/data/SaveUserCompleteListenerTest.kt
+++ b/core-firebase/src/test/java/com/stslex/core_firebase/SaveUserCompleteListenerTest.kt
@@ -1,8 +1,9 @@
-package com.stslex.core_firebase_auth.data
+package com.stslex.core_firebase
import com.google.android.gms.tasks.OnCompleteListener
import com.google.android.gms.tasks.Tasks
import com.stslex.core.ValueState
+import com.stslex.core_firebase.utils.SaveUserCompleteListener
import org.junit.Assert
import org.junit.Test
diff --git a/core-firebase/src/test/java/com/stslex/core_firebase/realisation/CoroutineSnapshotHandlerTest.kt b/core-firebase/src/test/java/com/stslex/core_firebase/realisation/CoroutineSnapshotHandlerTest.kt
index 50804bb..1137281 100644
--- a/core-firebase/src/test/java/com/stslex/core_firebase/realisation/CoroutineSnapshotHandlerTest.kt
+++ b/core-firebase/src/test/java/com/stslex/core_firebase/realisation/CoroutineSnapshotHandlerTest.kt
@@ -4,6 +4,7 @@ import com.google.android.gms.tasks.Task
import com.google.android.gms.tasks.Tasks
import com.google.firebase.database.DataSnapshot
import com.stslex.core.ValueState
+import com.stslex.core_firebase.utils.realisation.CoroutineSnapshotHandler
import kotlinx.coroutines.runBlocking
import org.junit.Assert
import org.junit.Test
diff --git a/core-firebase/src/test/java/com/stslex/core_firebase/realisation/CoroutinesTaskHandlerTest.kt b/core-firebase/src/test/java/com/stslex/core_firebase/realisation/CoroutinesTaskHandlerTest.kt
index 892d802..140eb78 100644
--- a/core-firebase/src/test/java/com/stslex/core_firebase/realisation/CoroutinesTaskHandlerTest.kt
+++ b/core-firebase/src/test/java/com/stslex/core_firebase/realisation/CoroutinesTaskHandlerTest.kt
@@ -2,19 +2,23 @@ package com.stslex.core_firebase.realisation
import com.google.android.gms.tasks.Tasks
import com.stslex.core.ValueState
-import com.stslex.core_firebase.abstraction.ICoroutinesTaskHandler
+import com.stslex.core_firebase.utils.abstraction.ICoroutinesTaskHandler
+import com.stslex.core_firebase.utils.realisation.CoroutinesTaskHandler
import kotlinx.coroutines.runBlocking
import org.junit.Assert
import org.junit.Test
+import java.util.concurrent.Executors
class CoroutinesTaskHandlerTest {
+ private val executor = Executors.newSingleThreadExecutor()
+
@Test
fun invokeSuccess() = runBlocking {
val expectedResult = "result"
val task = Tasks.forResult(expectedResult)
- val handler: ICoroutinesTaskHandler = CoroutinesTaskHandler(task)
- when (val actual = handler.invoke()) {
+ val handler: ICoroutinesTaskHandler = CoroutinesTaskHandler(executor)
+ when (val actual = handler(task)) {
is ValueState.Success -> Assert.assertEquals(expectedResult, actual.data)
is ValueState.Loading -> Assert.fail()
is ValueState.Failure -> Assert.fail()
@@ -25,8 +29,8 @@ class CoroutinesTaskHandlerTest {
fun invokeFailure() = runBlocking {
val expectedException = Exception()
val task = Tasks.forException(expectedException)
- val handler: ICoroutinesTaskHandler = CoroutinesTaskHandler(task)
- when (val actual = handler.invoke()) {
+ val handler: ICoroutinesTaskHandler = CoroutinesTaskHandler(executor)
+ when (val actual = handler(task)) {
is ValueState.Success -> Assert.fail()
is ValueState.Loading -> Assert.fail()
is ValueState.Failure -> Assert.assertEquals(expectedException, actual.exception)
diff --git a/core-firebase/src/test/java/com/stslex/core_firebase/realisation/FirebaseAppInitialisationUtilImplTest.kt b/core-firebase/src/test/java/com/stslex/core_firebase/realisation/FirebaseAppInitialisationUtilImplTest.kt
index adbe32e..db13996 100644
--- a/core-firebase/src/test/java/com/stslex/core_firebase/realisation/FirebaseAppInitialisationUtilImplTest.kt
+++ b/core-firebase/src/test/java/com/stslex/core_firebase/realisation/FirebaseAppInitialisationUtilImplTest.kt
@@ -3,6 +3,7 @@ package com.stslex.core_firebase.realisation
import com.google.firebase.FirebaseApp
import com.google.firebase.FirebaseOptions
import com.stslex.core_firebase.BuildConfig
+import com.stslex.core_firebase.utils.realisation.FirebaseAppInitialisationUtilImpl
import org.junit.After
import org.junit.Assert
import org.junit.Test
diff --git a/core-firebase/src/test/java/com/stslex/core_firebase/realisation/ListSnapshotTest.kt b/core-firebase/src/test/java/com/stslex/core_firebase/realisation/ListSnapshotTest.kt
index 3ddc7c7..8e0f37c 100644
--- a/core-firebase/src/test/java/com/stslex/core_firebase/realisation/ListSnapshotTest.kt
+++ b/core-firebase/src/test/java/com/stslex/core_firebase/realisation/ListSnapshotTest.kt
@@ -4,6 +4,7 @@ import com.google.firebase.database.DataSnapshot
import com.google.firebase.database.DatabaseError
import com.google.firebase.database.ValueEventListener
import com.stslex.core.ValueState
+import com.stslex.core_firebase.utils.realisation.ListSnapshot
import org.junit.Assert
import org.junit.Test
import org.mockito.Mockito
diff --git a/core-firebase/src/test/java/com/stslex/core_firebase/realisation/SingleSnapshotTest.kt b/core-firebase/src/test/java/com/stslex/core_firebase/realisation/SingleSnapshotTest.kt
index 4b8315c..6c3ba6f 100644
--- a/core-firebase/src/test/java/com/stslex/core_firebase/realisation/SingleSnapshotTest.kt
+++ b/core-firebase/src/test/java/com/stslex/core_firebase/realisation/SingleSnapshotTest.kt
@@ -4,6 +4,7 @@ import com.google.firebase.database.DataSnapshot
import com.google.firebase.database.DatabaseError
import com.google.firebase.database.ValueEventListener
import com.stslex.core.ValueState
+import com.stslex.core_firebase.utils.realisation.SingleSnapshot
import org.junit.Assert
import org.junit.Test
import org.mockito.Mockito
diff --git a/core-local-data-source/build.gradle.kts b/core-local-data-source/build.gradle.kts
index 145a992..946a285 100644
--- a/core-local-data-source/build.gradle.kts
+++ b/core-local-data-source/build.gradle.kts
@@ -16,7 +16,6 @@ dependencies {
implementation(project(":core"))
implementation(project(":core-test"))
implementation(project(":core-model"))
- implementation(project(":core-coroutines"))
with(libs) {
implementation(koin.core)
diff --git a/core-local-data-source/src/main/java/com/stslex/core_data_source/database/NoteRoomDatabaseCallback.kt b/core-local-data-source/src/main/java/com/stslex/core_data_source/database/NoteRoomDatabaseCallback.kt
index a4ae75b..6a14383 100644
--- a/core-local-data-source/src/main/java/com/stslex/core_data_source/database/NoteRoomDatabaseCallback.kt
+++ b/core-local-data-source/src/main/java/com/stslex/core_data_source/database/NoteRoomDatabaseCallback.kt
@@ -3,7 +3,7 @@ package com.stslex.core_data_source.database
import android.content.Context
import androidx.room.RoomDatabase
import androidx.sqlite.db.SupportSQLiteDatabase
-import com.stslex.core_coroutines.AppDispatchers
+import com.stslex.core.AppDispatchers
import com.stslex.core_data_source.dao.NoteDao
import com.stslex.core_local_data_source.R
import com.stslex.core_model.model.NoteEntity
diff --git a/core-remote-data-source/.gitignore b/core-remote-data-source/.gitignore
deleted file mode 100644
index 42afabf..0000000
--- a/core-remote-data-source/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-/build
\ No newline at end of file
diff --git a/core-remote-data-source/build.gradle.kts b/core-remote-data-source/build.gradle.kts
deleted file mode 100644
index 28b5556..0000000
--- a/core-remote-data-source/build.gradle.kts
+++ /dev/null
@@ -1,32 +0,0 @@
-plugins {
- id("cnotes.android.library")
- id("cnotes.android.library.compose")
- id("com.google.devtools.ksp")
-}
-
-android {
- namespace = "com.stslex.core_remote_data_source"
-
- ksp {
- arg("room.schemaLocation", "$projectDir/schemas")
- }
-}
-
-dependencies {
- implementation(project(":core"))
- implementation(project(":core-test"))
- implementation(project(":core-model"))
- implementation(project(":core-coroutines"))
- implementation(project(":core-firebase"))
-
- with(libs) {
- implementation(koin.core)
- implementation(koin.android)
- implementation(koin.annotations)
- ksp(koin.ksp)
- implementation(androidx.core.kts)
- annotationProcessor(androidx.room.compiler)
- ksp(androidx.room.compiler)
- api(androidx.room.runtime)
- }
-}
\ No newline at end of file
diff --git a/core-remote-data-source/consumer-rules.pro b/core-remote-data-source/consumer-rules.pro
deleted file mode 100644
index e69de29..0000000
diff --git a/core-remote-data-source/proguard-rules.pro b/core-remote-data-source/proguard-rules.pro
deleted file mode 100644
index 481bb43..0000000
--- a/core-remote-data-source/proguard-rules.pro
+++ /dev/null
@@ -1,21 +0,0 @@
-# Add project specific ProGuard rules here.
-# You can control the set of applied configuration files using the
-# proguardFiles setting in build.gradle.
-#
-# For more details, see
-# http://developer.android.com/guide/developing/tools/proguard.html
-
-# If your project uses WebView with JS, uncomment the following
-# and specify the fully qualified class name to the JavaScript interface
-# class:
-#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
-# public *;
-#}
-
-# Uncomment this to preserve the line number information for
-# debugging stack traces.
-#-keepattributes SourceFile,LineNumberTable
-
-# If you keep the line number information, uncomment this to
-# hide the original source file name.
-#-renamesourcefileattribute SourceFile
\ No newline at end of file
diff --git a/core-remote-data-source/src/androidTest/java/com/stslex/core_remote_data_source/ExampleInstrumentedTest.kt b/core-remote-data-source/src/androidTest/java/com/stslex/core_remote_data_source/ExampleInstrumentedTest.kt
deleted file mode 100644
index 66f284a..0000000
--- a/core-remote-data-source/src/androidTest/java/com/stslex/core_remote_data_source/ExampleInstrumentedTest.kt
+++ /dev/null
@@ -1,24 +0,0 @@
-package com.stslex.core_remote_data_source
-
-import androidx.test.platform.app.InstrumentationRegistry
-import androidx.test.ext.junit.runners.AndroidJUnit4
-
-import org.junit.Test
-import org.junit.runner.RunWith
-
-import org.junit.Assert.*
-
-/**
- * Instrumented test, which will execute on an Android device.
- *
- * See [testing documentation](http://d.android.com/tools/testing).
- */
-@RunWith(AndroidJUnit4::class)
-class ExampleInstrumentedTest {
- @Test
- fun useAppContext() {
- // Context of the app under test.
- val appContext = InstrumentationRegistry.getInstrumentation().targetContext
- assertEquals("com.stslex.core_remote_data_source.test", appContext.packageName)
- }
-}
\ No newline at end of file
diff --git a/core-remote-data-source/src/main/AndroidManifest.xml b/core-remote-data-source/src/main/AndroidManifest.xml
deleted file mode 100644
index a5918e6..0000000
--- a/core-remote-data-source/src/main/AndroidManifest.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-
-
-
-
\ No newline at end of file
diff --git a/core-remote-data-source/src/main/java/com/stslex/core_remote_data_source/di/RemoteDataSourceModule.kt b/core-remote-data-source/src/main/java/com/stslex/core_remote_data_source/di/RemoteDataSourceModule.kt
deleted file mode 100644
index e690e8b..0000000
--- a/core-remote-data-source/src/main/java/com/stslex/core_remote_data_source/di/RemoteDataSourceModule.kt
+++ /dev/null
@@ -1,13 +0,0 @@
-package com.stslex.core_remote_data_source.di
-
-import com.stslex.core_remote_data_source.service.abstraction.FirebaseNotesService
-import com.stslex.core_remote_data_source.service.implementation.FirebaseNotesServiceImpl
-import org.koin.core.module.dsl.bind
-import org.koin.core.module.dsl.singleOf
-import org.koin.dsl.module
-
-class RemoteDataSourceModule {
- val module = module {
- singleOf(::FirebaseNotesServiceImpl) { bind() }
- }
-}
\ No newline at end of file
diff --git a/core-remote-data-source/src/main/java/com/stslex/core_remote_data_source/service/implementation/FirebaseNotesServiceImpl.kt b/core-remote-data-source/src/main/java/com/stslex/core_remote_data_source/service/implementation/FirebaseNotesServiceImpl.kt
deleted file mode 100644
index 719be21..0000000
--- a/core-remote-data-source/src/main/java/com/stslex/core_remote_data_source/service/implementation/FirebaseNotesServiceImpl.kt
+++ /dev/null
@@ -1,47 +0,0 @@
-package com.stslex.core_remote_data_source.service.implementation
-
-import com.google.firebase.auth.ktx.auth
-import com.google.firebase.database.DatabaseReference
-import com.google.firebase.database.FirebaseDatabase
-import com.google.firebase.ktx.Firebase
-import com.stslex.core.ValueState
-import com.stslex.core_firebase.FirebaseReferences
-import com.stslex.core_firebase.realisation.CoroutineSnapshotHandler
-import com.stslex.core_firebase.realisation.CoroutinesTaskHandler
-import com.stslex.core_firebase.realisation.ListSnapshot
-import com.stslex.core_model.model.NoteEntity
-import com.stslex.core_remote_data_source.service.abstraction.FirebaseNotesService
-import kotlinx.coroutines.channels.awaitClose
-import kotlinx.coroutines.channels.trySendBlocking
-import kotlinx.coroutines.flow.Flow
-import kotlinx.coroutines.flow.callbackFlow
-
-class FirebaseNotesServiceImpl(
- private val firebaseDatabase: FirebaseDatabase
-) : FirebaseNotesService {
-
- override suspend fun uploadNotesToRemoteDatabase(updateMap: Map): ValueState =
- CoroutinesTaskHandler(
- reference.updateChildren(updateMap)
- ).invoke()
-
- override val remoteNotes: Flow>>
- get() = callbackFlow {
- val listener = ListSnapshot(::trySendBlocking).invoke(NoteEntity::class)
- reference.addValueEventListener(listener)
- awaitClose { reference.removeEventListener(listener) }
- }
-
- override suspend fun getRemoteNotes(): ValueState> =
- CoroutineSnapshotHandler().invoke(
- task = reference.get(),
- type = NoteEntity::class
- )
-
- private val reference: DatabaseReference by lazy {
- firebaseDatabase.reference
- .child(FirebaseReferences.NODE_USERS)
- .child(Firebase.auth.currentUser?.uid ?: "")
- .child(FirebaseReferences.CHILD_NOTES)
- }
-}
\ No newline at end of file
diff --git a/core-remote-data-source/src/test/java/com/stslex/core_remote_data_source/di/RemoteDataSourceModuleTest.kt b/core-remote-data-source/src/test/java/com/stslex/core_remote_data_source/di/RemoteDataSourceModuleTest.kt
deleted file mode 100644
index 5a92eec..0000000
--- a/core-remote-data-source/src/test/java/com/stslex/core_remote_data_source/di/RemoteDataSourceModuleTest.kt
+++ /dev/null
@@ -1,22 +0,0 @@
-package com.stslex.core_remote_data_source.di
-
-import org.junit.After
-import org.junit.Test
-import org.koin.core.context.stopKoin
-import org.koin.test.KoinTest
-import org.koin.test.check.checkModules
-
-class RemoteDataSourceModuleTest : KoinTest {
-
- @After
- fun closeKoin() {
- stopKoin()
- }
-
- @Test
- fun checkAllModules() {
- checkModules {
- RemoteDataSourceModule().module
- }
- }
-}
\ No newline at end of file
diff --git a/core-resources/.gitignore b/core-resources/.gitignore
deleted file mode 100644
index 42afabf..0000000
--- a/core-resources/.gitignore
+++ /dev/null
@@ -1 +0,0 @@
-/build
\ No newline at end of file
diff --git a/core-resources/build.gradle.kts b/core-resources/build.gradle.kts
deleted file mode 100644
index 00279ee..0000000
--- a/core-resources/build.gradle.kts
+++ /dev/null
@@ -1,13 +0,0 @@
-plugins {
- id("cnotes.android.library")
- id("cnotes.android.library.compose")
- id("com.google.devtools.ksp")
-}
-
-android {
- namespace = "com.stslex.core_resources"
-}
-
-dependencies {
- implementation(project(":core-test"))
-}
\ No newline at end of file
diff --git a/core-resources/consumer-rules.pro b/core-resources/consumer-rules.pro
deleted file mode 100644
index e69de29..0000000
diff --git a/core-resources/proguard-rules.pro b/core-resources/proguard-rules.pro
deleted file mode 100644
index 481bb43..0000000
--- a/core-resources/proguard-rules.pro
+++ /dev/null
@@ -1,21 +0,0 @@
-# Add project specific ProGuard rules here.
-# You can control the set of applied configuration files using the
-# proguardFiles setting in build.gradle.
-#
-# For more details, see
-# http://developer.android.com/guide/developing/tools/proguard.html
-
-# If your project uses WebView with JS, uncomment the following
-# and specify the fully qualified class name to the JavaScript interface
-# class:
-#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
-# public *;
-#}
-
-# Uncomment this to preserve the line number information for
-# debugging stack traces.
-#-keepattributes SourceFile,LineNumberTable
-
-# If you keep the line number information, uncomment this to
-# hide the original source file name.
-#-renamesourcefileattribute SourceFile
\ No newline at end of file
diff --git a/core-resources/src/androidTest/java/com/stslex/core_resources/ExampleInstrumentedTest.kt b/core-resources/src/androidTest/java/com/stslex/core_resources/ExampleInstrumentedTest.kt
deleted file mode 100644
index a655c76..0000000
--- a/core-resources/src/androidTest/java/com/stslex/core_resources/ExampleInstrumentedTest.kt
+++ /dev/null
@@ -1,24 +0,0 @@
-package com.stslex.core_resources
-
-import androidx.test.platform.app.InstrumentationRegistry
-import androidx.test.ext.junit.runners.AndroidJUnit4
-
-import org.junit.Test
-import org.junit.runner.RunWith
-
-import org.junit.Assert.*
-
-/**
- * Instrumented test, which will execute on an Android device.
- *
- * See [testing documentation](http://d.android.com/tools/testing).
- */
-@RunWith(AndroidJUnit4::class)
-class ExampleInstrumentedTest {
- @Test
- fun useAppContext() {
- // Context of the app under test.
- val appContext = InstrumentationRegistry.getInstrumentation().targetContext
- assertEquals("com.stslex.core_resources.test", appContext.packageName)
- }
-}
\ No newline at end of file
diff --git a/core-resources/src/main/AndroidManifest.xml b/core-resources/src/main/AndroidManifest.xml
deleted file mode 100644
index a5918e6..0000000
--- a/core-resources/src/main/AndroidManifest.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-
-
-
-
\ No newline at end of file
diff --git a/core-resources/src/main/res/values-ru/strings.xml b/core-resources/src/main/res/values-ru/strings.xml
deleted file mode 100644
index 644c546..0000000
--- a/core-resources/src/main/res/values-ru/strings.xml
+++ /dev/null
@@ -1,25 +0,0 @@
-
-
- Заметки
-
-
- выйти из профиля
- дальше
- назад
-
-
- Заметки на устройстве
- Заметки на сервере
- Заметки синхронизированы
- создать
- удалить
-
-
- создать
- создать новую заметку
- профиль
- открыть профиль пользователя
- ссылка отключена
- аккаунт
- поделиться
-
\ No newline at end of file
diff --git a/core-resources/src/main/res/values/strings.xml b/core-resources/src/main/res/values/strings.xml
deleted file mode 100644
index 1c9a639..0000000
--- a/core-resources/src/main/res/values/strings.xml
+++ /dev/null
@@ -1,25 +0,0 @@
-
-
- CNotes
-
-
- sign out
- next
- previous
-
-
- Local Notes
- Remote Notes
- Synced Notes
- create
- delete
- account
- share
-
-
- create
- create new note
- shortcut disabled
- profile
- open user profile
-
\ No newline at end of file
diff --git a/core-test/build.gradle.kts b/core-test/build.gradle.kts
index a2dbf8e..03ffa5a 100644
--- a/core-test/build.gradle.kts
+++ b/core-test/build.gradle.kts
@@ -3,9 +3,6 @@ plugins {
}
dependencies {
-
- api("org.mockito:mockito-core:4.5.1")
-
with(libs) {
api(junit)
api(androidx.test.junit)
@@ -15,6 +12,7 @@ dependencies {
api(koin.test.junit4)
api(robolectric)
api(kotlinx.coroutines.test)
+ api(mockito.core)
debugApi(leakcanary)
}
}
diff --git a/core-ui/src/main/res/values-ru/strings.xml b/core-ui/src/main/res/values-ru/strings.xml
index 72b5960..6c099e1 100644
--- a/core-ui/src/main/res/values-ru/strings.xml
+++ b/core-ui/src/main/res/values-ru/strings.xml
@@ -1,4 +1,27 @@
+ Заметки
+
+
+ выйти из профиля
+ дальше
+ назад
+
+
+ Заметки на устройстве
+ Заметки на сервере
+ Заметки синхронизированы
+ создать
+ удалить
+
+
+ создать
+ создать новую заметку
+ профиль
+ открыть профиль пользователя
+ ссылка отключена
+ аккаунт
+ поделиться
+
Сохранить
\ No newline at end of file
diff --git a/core-ui/src/main/res/values/strings.xml b/core-ui/src/main/res/values/strings.xml
index 5984006..84cc713 100644
--- a/core-ui/src/main/res/values/strings.xml
+++ b/core-ui/src/main/res/values/strings.xml
@@ -1,4 +1,27 @@
+ CNotes
+
+
+ sign out
+ next
+ previous
+
+
+ Local Notes
+ Remote Notes
+ Synced Notes
+ create
+ delete
+ account
+ share
+
+
+ create
+ create new note
+ shortcut disabled
+ profile
+ open user profile
+
Save
\ No newline at end of file
diff --git a/core/build.gradle.kts b/core/build.gradle.kts
index d182641..9afa007 100644
--- a/core/build.gradle.kts
+++ b/core/build.gradle.kts
@@ -1,9 +1,18 @@
plugins {
- id("java-library")
- id("org.jetbrains.kotlin.jvm")
+ id("cnotes.android.library")
+ id("cnotes.android.library.jacoco")
+ id("com.google.devtools.ksp")
}
-java {
- sourceCompatibility = JavaVersion.VERSION_11
- targetCompatibility = JavaVersion.VERSION_11
+dependencies {
+ implementation(project(":core-test"))
+ implementation(libs.koin.android)
+ api(libs.kotlinx.coroutines.android)
+ implementation(libs.koin.core)
+ implementation(libs.koin.annotations)
+ ksp(libs.koin.ksp)
+}
+
+android {
+ namespace = "com.stslex.core"
}
\ No newline at end of file
diff --git a/core-coroutines/src/main/java/com/stslex/core_coroutines/AppDispatchers.kt b/core/src/main/java/com/stslex/core/AppDispatchers.kt
similarity index 88%
rename from core-coroutines/src/main/java/com/stslex/core_coroutines/AppDispatchers.kt
rename to core/src/main/java/com/stslex/core/AppDispatchers.kt
index 0d0a4e9..5843c44 100644
--- a/core-coroutines/src/main/java/com/stslex/core_coroutines/AppDispatchers.kt
+++ b/core/src/main/java/com/stslex/core/AppDispatchers.kt
@@ -1,4 +1,4 @@
-package com.stslex.core_coroutines
+package com.stslex.core
import kotlinx.coroutines.CoroutineDispatcher
import kotlinx.coroutines.MainCoroutineDispatcher
diff --git a/core-coroutines/src/main/java/com/stslex/core_coroutines/AppDispatchersImpl.kt b/core/src/main/java/com/stslex/core/AppDispatchersImpl.kt
similarity index 92%
rename from core-coroutines/src/main/java/com/stslex/core_coroutines/AppDispatchersImpl.kt
rename to core/src/main/java/com/stslex/core/AppDispatchersImpl.kt
index d2d481e..0ba4bcd 100644
--- a/core-coroutines/src/main/java/com/stslex/core_coroutines/AppDispatchersImpl.kt
+++ b/core/src/main/java/com/stslex/core/AppDispatchersImpl.kt
@@ -1,4 +1,4 @@
-package com.stslex.core_coroutines
+package com.stslex.core
import kotlinx.coroutines.CoroutineDispatcher
import kotlinx.coroutines.Dispatchers
diff --git a/core-coroutines/src/main/java/com/stslex/core_coroutines/CoroutinesModule.kt b/core/src/main/java/com/stslex/core/CoroutinesModule.kt
similarity index 84%
rename from core-coroutines/src/main/java/com/stslex/core_coroutines/CoroutinesModule.kt
rename to core/src/main/java/com/stslex/core/CoroutinesModule.kt
index e7ba377..33cb133 100644
--- a/core-coroutines/src/main/java/com/stslex/core_coroutines/CoroutinesModule.kt
+++ b/core/src/main/java/com/stslex/core/CoroutinesModule.kt
@@ -1,9 +1,8 @@
-package com.stslex.core_coroutines
+package com.stslex.core
import org.koin.core.annotation.Module
import org.koin.dsl.module
-
@Module
class CoroutinesModule {
val module = module {
diff --git a/core-coroutines/src/test/java/com/stslex/core_coroutines/AppDispatchersImplTest.kt b/core/src/test/java/com/stslex/core/AppDispatchersImplTest.kt
similarity index 69%
rename from core-coroutines/src/test/java/com/stslex/core_coroutines/AppDispatchersImplTest.kt
rename to core/src/test/java/com/stslex/core/AppDispatchersImplTest.kt
index 24a1773..c17aa5c 100644
--- a/core-coroutines/src/test/java/com/stslex/core_coroutines/AppDispatchersImplTest.kt
+++ b/core/src/test/java/com/stslex/core/AppDispatchersImplTest.kt
@@ -1,8 +1,8 @@
-package com.stslex.core_coroutines
+package com.stslex.core
import kotlinx.coroutines.CoroutineDispatcher
import kotlinx.coroutines.Dispatchers
-import org.junit.Assert
+import org.junit.Assert.assertEquals
import org.junit.Test
class AppDispatchersImplTest {
@@ -10,25 +10,25 @@ class AppDispatchersImplTest {
@Test
fun getIo() {
val dispatcher: CoroutineDispatcher = appDispatchers.io
- Assert.assertEquals(Dispatchers.IO, dispatcher)
+ assertEquals(Dispatchers.IO, dispatcher)
}
@Test
fun getDefault() {
val dispatcher: CoroutineDispatcher = appDispatchers.default
- Assert.assertEquals(Dispatchers.Default, dispatcher)
+ assertEquals(Dispatchers.Default, dispatcher)
}
@Test
fun getUnconfined() {
val dispatcher: CoroutineDispatcher = appDispatchers.unconfined
- Assert.assertEquals(Dispatchers.Unconfined, dispatcher)
+ assertEquals(Dispatchers.Unconfined, dispatcher)
}
@Test
fun getMain() {
val dispatcher: CoroutineDispatcher = appDispatchers.main
- Assert.assertEquals(Dispatchers.Main, dispatcher)
+ assertEquals(Dispatchers.Main, dispatcher)
}
companion object {
diff --git a/core-coroutines/src/test/java/com/stslex/core_coroutines/CoroutinesModuleTest.kt b/core/src/test/java/com/stslex/core/CoroutinesModuleTest.kt
similarity index 91%
rename from core-coroutines/src/test/java/com/stslex/core_coroutines/CoroutinesModuleTest.kt
rename to core/src/test/java/com/stslex/core/CoroutinesModuleTest.kt
index a2dfc68..c180a59 100644
--- a/core-coroutines/src/test/java/com/stslex/core_coroutines/CoroutinesModuleTest.kt
+++ b/core/src/test/java/com/stslex/core/CoroutinesModuleTest.kt
@@ -1,4 +1,4 @@
-package com.stslex.core_coroutines
+package com.stslex.core
import org.junit.After
import org.junit.Test
diff --git a/feature-auth-code/build.gradle.kts b/feature-auth-code/build.gradle.kts
index 7781c2f..092d04b 100644
--- a/feature-auth-code/build.gradle.kts
+++ b/feature-auth-code/build.gradle.kts
@@ -9,9 +9,7 @@ dependencies {
implementation(project(":core-ui"))
implementation(project(":core-test"))
implementation(project(":core-navigation"))
- implementation(project(":core-coroutines"))
implementation(project(":core-firebase"))
- implementation(project(":core-firebase-auth"))
testImplementation(project(mapOf("path" to ":core-firebase")))
testImplementation(project(mapOf("path" to ":core-firebase")))
@@ -26,5 +24,5 @@ dependencies {
}
android {
- namespace = "com.example.feature_auth_code"
+ namespace = "com.stslex.feature_auth_code"
}
\ No newline at end of file
diff --git a/feature-auth-code/src/androidTest/java/com/example/feature_auth_code/ExampleInstrumentedTest.kt b/feature-auth-code/src/androidTest/java/com/stslex/feature_auth_code/ExampleInstrumentedTest.kt
similarity index 94%
rename from feature-auth-code/src/androidTest/java/com/example/feature_auth_code/ExampleInstrumentedTest.kt
rename to feature-auth-code/src/androidTest/java/com/stslex/feature_auth_code/ExampleInstrumentedTest.kt
index ec4ce9f..0befcb9 100644
--- a/feature-auth-code/src/androidTest/java/com/example/feature_auth_code/ExampleInstrumentedTest.kt
+++ b/feature-auth-code/src/androidTest/java/com/stslex/feature_auth_code/ExampleInstrumentedTest.kt
@@ -1,4 +1,4 @@
-package com.example.feature_auth_code
+package com.stslex.feature_auth_code
import androidx.test.platform.app.InstrumentationRegistry
import androidx.test.ext.junit.runners.AndroidJUnit4
diff --git a/feature-auth-code/src/main/java/com/example/feature_auth_code/di/AuthCodeModule.kt b/feature-auth-code/src/main/java/com/stslex/feature_auth_code/di/AuthCodeModule.kt
similarity index 55%
rename from feature-auth-code/src/main/java/com/example/feature_auth_code/di/AuthCodeModule.kt
rename to feature-auth-code/src/main/java/com/stslex/feature_auth_code/di/AuthCodeModule.kt
index 1a1db0f..e0b2ca2 100644
--- a/feature-auth-code/src/main/java/com/example/feature_auth_code/di/AuthCodeModule.kt
+++ b/feature-auth-code/src/main/java/com/stslex/feature_auth_code/di/AuthCodeModule.kt
@@ -1,10 +1,10 @@
-package com.example.feature_auth_code.di
+package com.stslex.feature_auth_code.di
-import com.example.feature_auth_code.domain.AuthCodeInteractor
-import com.example.feature_auth_code.domain.AuthCodeInteractorImpl
-import com.example.feature_auth_code.ui.AuthCodeViewModel
-import com.example.feature_auth_code.ui.use_cases.AuthCodeUtil
-import com.example.feature_auth_code.ui.use_cases.AuthCodeUtilImpl
+import com.stslex.feature_auth_code.domain.AuthCodeInteractor
+import com.stslex.feature_auth_code.domain.AuthCodeInteractorImpl
+import com.stslex.feature_auth_code.ui.AuthCodeViewModel
+import com.stslex.feature_auth_code.ui.use_cases.AuthCodeUtil
+import com.stslex.feature_auth_code.ui.use_cases.AuthCodeUtilImpl
import org.koin.androidx.viewmodel.dsl.viewModelOf
import org.koin.core.annotation.Module
import org.koin.core.module.dsl.bind
diff --git a/feature-auth-code/src/main/java/com/example/feature_auth_code/domain/AuthCodeInteractor.kt b/feature-auth-code/src/main/java/com/stslex/feature_auth_code/domain/AuthCodeInteractor.kt
similarity index 85%
rename from feature-auth-code/src/main/java/com/example/feature_auth_code/domain/AuthCodeInteractor.kt
rename to feature-auth-code/src/main/java/com/stslex/feature_auth_code/domain/AuthCodeInteractor.kt
index 7ea9600..d8d2d34 100644
--- a/feature-auth-code/src/main/java/com/example/feature_auth_code/domain/AuthCodeInteractor.kt
+++ b/feature-auth-code/src/main/java/com/stslex/feature_auth_code/domain/AuthCodeInteractor.kt
@@ -1,4 +1,4 @@
-package com.example.feature_auth_code.domain
+package com.stslex.feature_auth_code.domain
import android.app.Activity
import com.stslex.core.ValueState
diff --git a/feature-auth-code/src/main/java/com/example/feature_auth_code/domain/AuthCodeInteractorImpl.kt b/feature-auth-code/src/main/java/com/stslex/feature_auth_code/domain/AuthCodeInteractorImpl.kt
similarity index 78%
rename from feature-auth-code/src/main/java/com/example/feature_auth_code/domain/AuthCodeInteractorImpl.kt
rename to feature-auth-code/src/main/java/com/stslex/feature_auth_code/domain/AuthCodeInteractorImpl.kt
index 55e5e19..417a244 100644
--- a/feature-auth-code/src/main/java/com/example/feature_auth_code/domain/AuthCodeInteractorImpl.kt
+++ b/feature-auth-code/src/main/java/com/stslex/feature_auth_code/domain/AuthCodeInteractorImpl.kt
@@ -1,9 +1,9 @@
-package com.example.feature_auth_code.domain
+package com.stslex.feature_auth_code.domain
import android.app.Activity
-import com.example.feature_auth_code.ui.use_cases.AuthCodeUtil
+import com.stslex.feature_auth_code.ui.use_cases.AuthCodeUtil
import com.stslex.core.ValueState
-import com.stslex.core_firebase_auth.data.FirebaseAuthRepository
+import com.stslex.core_firebase.data.abstraction.FirebaseAuthRepository
import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.flow
diff --git a/feature-auth-code/src/main/java/com/example/feature_auth_code/navigation/AuthCodeGraph.kt b/feature-auth-code/src/main/java/com/stslex/feature_auth_code/navigation/AuthCodeGraph.kt
similarity index 92%
rename from feature-auth-code/src/main/java/com/example/feature_auth_code/navigation/AuthCodeGraph.kt
rename to feature-auth-code/src/main/java/com/stslex/feature_auth_code/navigation/AuthCodeGraph.kt
index 0adb69e..2e84b7f 100644
--- a/feature-auth-code/src/main/java/com/example/feature_auth_code/navigation/AuthCodeGraph.kt
+++ b/feature-auth-code/src/main/java/com/stslex/feature_auth_code/navigation/AuthCodeGraph.kt
@@ -1,10 +1,10 @@
-package com.example.feature_auth_code.navigation
+package com.stslex.feature_auth_code.navigation
import androidx.compose.animation.ExperimentalAnimationApi
import androidx.navigation.NavGraphBuilder
import androidx.navigation.NavType
import androidx.navigation.navArgument
-import com.example.feature_auth_code.ui.AuthCodeRoute
+import com.stslex.feature_auth_code.ui.AuthCodeRoute
import com.google.accompanist.navigation.animation.composable
import com.stslex.core_navigation.destinations.AuthCodeDestination
import org.koin.androidx.compose.getViewModel
diff --git a/feature-auth-code/src/main/java/com/example/feature_auth_code/navigation/AuthCodeTransitions.kt b/feature-auth-code/src/main/java/com/stslex/feature_auth_code/navigation/AuthCodeTransitions.kt
similarity index 97%
rename from feature-auth-code/src/main/java/com/example/feature_auth_code/navigation/AuthCodeTransitions.kt
rename to feature-auth-code/src/main/java/com/stslex/feature_auth_code/navigation/AuthCodeTransitions.kt
index d9994db..24b936d 100644
--- a/feature-auth-code/src/main/java/com/example/feature_auth_code/navigation/AuthCodeTransitions.kt
+++ b/feature-auth-code/src/main/java/com/stslex/feature_auth_code/navigation/AuthCodeTransitions.kt
@@ -1,4 +1,4 @@
-package com.example.feature_auth_code.navigation
+package com.stslex.feature_auth_code.navigation
import androidx.compose.animation.AnimatedContentScope
import androidx.compose.animation.EnterTransition
diff --git a/feature-auth-code/src/main/java/com/example/feature_auth_code/ui/AuthCodeRoute.kt b/feature-auth-code/src/main/java/com/stslex/feature_auth_code/ui/AuthCodeRoute.kt
similarity index 97%
rename from feature-auth-code/src/main/java/com/example/feature_auth_code/ui/AuthCodeRoute.kt
rename to feature-auth-code/src/main/java/com/stslex/feature_auth_code/ui/AuthCodeRoute.kt
index 5dde962..0de814a 100644
--- a/feature-auth-code/src/main/java/com/example/feature_auth_code/ui/AuthCodeRoute.kt
+++ b/feature-auth-code/src/main/java/com/stslex/feature_auth_code/ui/AuthCodeRoute.kt
@@ -1,4 +1,4 @@
-package com.example.feature_auth_code.ui
+package com.stslex.feature_auth_code.ui
import android.app.Activity
import androidx.compose.foundation.layout.*
@@ -11,7 +11,7 @@ import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.platform.LocalContext
import androidx.compose.ui.unit.dp
-import com.example.feature_auth_code.ui.components.CodeInputField
+import com.stslex.feature_auth_code.ui.components.CodeInputField
import com.stslex.core.ValueState
@Composable
diff --git a/feature-auth-code/src/main/java/com/example/feature_auth_code/ui/AuthCodeViewModel.kt b/feature-auth-code/src/main/java/com/stslex/feature_auth_code/ui/AuthCodeViewModel.kt
similarity index 86%
rename from feature-auth-code/src/main/java/com/example/feature_auth_code/ui/AuthCodeViewModel.kt
rename to feature-auth-code/src/main/java/com/stslex/feature_auth_code/ui/AuthCodeViewModel.kt
index 7ae6dde..f611c5e 100644
--- a/feature-auth-code/src/main/java/com/example/feature_auth_code/ui/AuthCodeViewModel.kt
+++ b/feature-auth-code/src/main/java/com/stslex/feature_auth_code/ui/AuthCodeViewModel.kt
@@ -1,11 +1,11 @@
-package com.example.feature_auth_code.ui
+package com.stslex.feature_auth_code.ui
import android.app.Activity
import androidx.lifecycle.ViewModel
import androidx.lifecycle.viewModelScope
-import com.example.feature_auth_code.domain.AuthCodeInteractor
+import com.stslex.feature_auth_code.domain.AuthCodeInteractor
import com.stslex.core.ValueState
-import com.stslex.core_coroutines.AppDispatchers
+import com.stslex.core.AppDispatchers
import kotlinx.coroutines.flow.*
import kotlinx.coroutines.launch
diff --git a/feature-auth-code/src/main/java/com/example/feature_auth_code/ui/components/CodeInputField.kt b/feature-auth-code/src/main/java/com/stslex/feature_auth_code/ui/components/CodeInputField.kt
similarity index 96%
rename from feature-auth-code/src/main/java/com/example/feature_auth_code/ui/components/CodeInputField.kt
rename to feature-auth-code/src/main/java/com/stslex/feature_auth_code/ui/components/CodeInputField.kt
index b5b2357..93cd67d 100644
--- a/feature-auth-code/src/main/java/com/example/feature_auth_code/ui/components/CodeInputField.kt
+++ b/feature-auth-code/src/main/java/com/stslex/feature_auth_code/ui/components/CodeInputField.kt
@@ -1,4 +1,4 @@
-package com.example.feature_auth_code.ui.components
+package com.stslex.feature_auth_code.ui.components
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.text.KeyboardOptions
diff --git a/feature-auth-code/src/main/java/com/example/feature_auth_code/ui/use_cases/AuthCodeUtil.kt b/feature-auth-code/src/main/java/com/stslex/feature_auth_code/ui/use_cases/AuthCodeUtil.kt
similarity index 81%
rename from feature-auth-code/src/main/java/com/example/feature_auth_code/ui/use_cases/AuthCodeUtil.kt
rename to feature-auth-code/src/main/java/com/stslex/feature_auth_code/ui/use_cases/AuthCodeUtil.kt
index f28c1cd..10db3c1 100644
--- a/feature-auth-code/src/main/java/com/example/feature_auth_code/ui/use_cases/AuthCodeUtil.kt
+++ b/feature-auth-code/src/main/java/com/stslex/feature_auth_code/ui/use_cases/AuthCodeUtil.kt
@@ -1,4 +1,4 @@
-package com.example.feature_auth_code.ui.use_cases
+package com.stslex.feature_auth_code.ui.use_cases
import android.app.Activity
import com.stslex.core.ValueState
diff --git a/feature-auth-code/src/main/java/com/example/feature_auth_code/ui/use_cases/AuthCodeUtilImpl.kt b/feature-auth-code/src/main/java/com/stslex/feature_auth_code/ui/use_cases/AuthCodeUtilImpl.kt
similarity index 94%
rename from feature-auth-code/src/main/java/com/example/feature_auth_code/ui/use_cases/AuthCodeUtilImpl.kt
rename to feature-auth-code/src/main/java/com/stslex/feature_auth_code/ui/use_cases/AuthCodeUtilImpl.kt
index 0b85ff5..e0c2adf 100644
--- a/feature-auth-code/src/main/java/com/example/feature_auth_code/ui/use_cases/AuthCodeUtilImpl.kt
+++ b/feature-auth-code/src/main/java/com/stslex/feature_auth_code/ui/use_cases/AuthCodeUtilImpl.kt
@@ -1,4 +1,4 @@
-package com.example.feature_auth_code.ui.use_cases
+package com.stslex.feature_auth_code.ui.use_cases
import android.app.Activity
import com.google.firebase.auth.PhoneAuthProvider
diff --git a/feature-auth-code/src/test/java/com/example/feature_auth_code/ExampleUnitTest.kt b/feature-auth-code/src/test/java/com/example/feature_auth_code/ExampleUnitTest.kt
deleted file mode 100644
index f8636a9..0000000
--- a/feature-auth-code/src/test/java/com/example/feature_auth_code/ExampleUnitTest.kt
+++ /dev/null
@@ -1,17 +0,0 @@
-package com.example.feature_auth_code
-
-import org.junit.Test
-
-import org.junit.Assert.*
-
-/**
- * Example local unit test, which will execute on the development machine (host).
- *
- * See [testing documentation](http://d.android.com/tools/testing).
- */
-class ExampleUnitTest {
- @Test
- fun addition_isCorrect() {
- assertEquals(4, 2 + 2)
- }
-}
\ No newline at end of file
diff --git a/core-resources/src/test/java/com/stslex/core_resources/ExampleUnitTest.kt b/feature-auth-code/src/test/java/com/stslex/feature_auth_code/ExampleUnitTest.kt
similarity index 89%
rename from core-resources/src/test/java/com/stslex/core_resources/ExampleUnitTest.kt
rename to feature-auth-code/src/test/java/com/stslex/feature_auth_code/ExampleUnitTest.kt
index 19faeb4..3130e07 100644
--- a/core-resources/src/test/java/com/stslex/core_resources/ExampleUnitTest.kt
+++ b/feature-auth-code/src/test/java/com/stslex/feature_auth_code/ExampleUnitTest.kt
@@ -1,4 +1,4 @@
-package com.stslex.core_resources
+package com.stslex.feature_auth_code
import org.junit.Test
diff --git a/feature-auth-code/src/test/java/com/example/feature_auth_code/di/AuthCodeModuleTest.kt b/feature-auth-code/src/test/java/com/stslex/feature_auth_code/di/AuthCodeModuleTest.kt
similarity index 89%
rename from feature-auth-code/src/test/java/com/example/feature_auth_code/di/AuthCodeModuleTest.kt
rename to feature-auth-code/src/test/java/com/stslex/feature_auth_code/di/AuthCodeModuleTest.kt
index 9bd5b7e..ee60c19 100644
--- a/feature-auth-code/src/test/java/com/example/feature_auth_code/di/AuthCodeModuleTest.kt
+++ b/feature-auth-code/src/test/java/com/stslex/feature_auth_code/di/AuthCodeModuleTest.kt
@@ -1,4 +1,4 @@
-package com.example.feature_auth_code.di
+package com.stslex.feature_auth_code.di
import org.junit.After
import org.junit.Test
diff --git a/feature-auth-phonenumber/build.gradle.kts b/feature-auth-phonenumber/build.gradle.kts
index 0b608ec..e47f4c9 100644
--- a/feature-auth-phonenumber/build.gradle.kts
+++ b/feature-auth-phonenumber/build.gradle.kts
@@ -9,9 +9,7 @@ dependencies {
implementation(project(":core-ui"))
implementation(project(":core-test"))
implementation(project(":core-navigation"))
- implementation(project(":core-coroutines"))
implementation(project(":core-firebase"))
- implementation(project(":core-firebase-auth"))
with(libs) {
implementation(koin.core)
@@ -24,5 +22,5 @@ dependencies {
}
android {
- namespace = "com.example.feature_auth_phonenumber"
+ namespace = "com.stslex.feature_auth_phonenumber"
}
\ No newline at end of file
diff --git a/feature-auth-phonenumber/src/androidTest/java/com/example/feature_auth_phonenumber/ExampleInstrumentedTest.kt b/feature-auth-phonenumber/src/androidTest/java/com/stslex/feature_auth_phonenumber/ExampleInstrumentedTest.kt
similarity index 93%
rename from feature-auth-phonenumber/src/androidTest/java/com/example/feature_auth_phonenumber/ExampleInstrumentedTest.kt
rename to feature-auth-phonenumber/src/androidTest/java/com/stslex/feature_auth_phonenumber/ExampleInstrumentedTest.kt
index 92c01aa..a912bd5 100644
--- a/feature-auth-phonenumber/src/androidTest/java/com/example/feature_auth_phonenumber/ExampleInstrumentedTest.kt
+++ b/feature-auth-phonenumber/src/androidTest/java/com/stslex/feature_auth_phonenumber/ExampleInstrumentedTest.kt
@@ -1,4 +1,4 @@
-package com.example.feature_auth_phonenumber
+package com.stslex.feature_auth_phonenumber
import androidx.test.platform.app.InstrumentationRegistry
import androidx.test.ext.junit.runners.AndroidJUnit4
diff --git a/feature-auth-phonenumber/src/main/java/com/example/feature_auth_phonenumber/core/SignValueState.kt b/feature-auth-phonenumber/src/main/java/com/stslex/feature_auth_phonenumber/core/SignValueState.kt
similarity index 87%
rename from feature-auth-phonenumber/src/main/java/com/example/feature_auth_phonenumber/core/SignValueState.kt
rename to feature-auth-phonenumber/src/main/java/com/stslex/feature_auth_phonenumber/core/SignValueState.kt
index 03922f8..ef21156 100644
--- a/feature-auth-phonenumber/src/main/java/com/example/feature_auth_phonenumber/core/SignValueState.kt
+++ b/feature-auth-phonenumber/src/main/java/com/stslex/feature_auth_phonenumber/core/SignValueState.kt
@@ -1,4 +1,4 @@
-package com.example.feature_auth_phonenumber.core
+package com.stslex.feature_auth_phonenumber.core
import com.google.firebase.auth.PhoneAuthProvider
diff --git a/feature-auth-phonenumber/src/main/java/com/example/feature_auth_phonenumber/di/AuthPhoneNumberModule.kt b/feature-auth-phonenumber/src/main/java/com/stslex/feature_auth_phonenumber/di/AuthPhoneNumberModule.kt
similarity index 52%
rename from feature-auth-phonenumber/src/main/java/com/example/feature_auth_phonenumber/di/AuthPhoneNumberModule.kt
rename to feature-auth-phonenumber/src/main/java/com/stslex/feature_auth_phonenumber/di/AuthPhoneNumberModule.kt
index 3fd1b65..cb0581d 100644
--- a/feature-auth-phonenumber/src/main/java/com/example/feature_auth_phonenumber/di/AuthPhoneNumberModule.kt
+++ b/feature-auth-phonenumber/src/main/java/com/stslex/feature_auth_phonenumber/di/AuthPhoneNumberModule.kt
@@ -1,10 +1,10 @@
-package com.example.feature_auth_phonenumber.di
+package com.stslex.feature_auth_phonenumber.di
-import com.example.feature_auth_phonenumber.domain.AuthPhoneNumberInteractor
-import com.example.feature_auth_phonenumber.domain.AuthPhoneNumberInteractorImpl
-import com.example.feature_auth_phonenumber.ui.AuthPhoneViewModel
-import com.example.feature_auth_phonenumber.ui.use_cases.AuthPhoneNumberUtil
-import com.example.feature_auth_phonenumber.ui.use_cases.AuthPhoneNumberUtilImpl
+import com.stslex.feature_auth_phonenumber.domain.AuthPhoneNumberInteractor
+import com.stslex.feature_auth_phonenumber.domain.AuthPhoneNumberInteractorImpl
+import com.stslex.feature_auth_phonenumber.ui.AuthPhoneViewModel
+import com.stslex.feature_auth_phonenumber.ui.use_cases.AuthPhoneNumberUtil
+import com.stslex.feature_auth_phonenumber.ui.use_cases.AuthPhoneNumberUtilImpl
import org.koin.androidx.viewmodel.dsl.viewModelOf
import org.koin.core.annotation.Module
import org.koin.core.module.dsl.bind
diff --git a/feature-auth-phonenumber/src/main/java/com/example/feature_auth_phonenumber/domain/AuthPhoneNumberInteractor.kt b/feature-auth-phonenumber/src/main/java/com/stslex/feature_auth_phonenumber/domain/AuthPhoneNumberInteractor.kt
similarity index 62%
rename from feature-auth-phonenumber/src/main/java/com/example/feature_auth_phonenumber/domain/AuthPhoneNumberInteractor.kt
rename to feature-auth-phonenumber/src/main/java/com/stslex/feature_auth_phonenumber/domain/AuthPhoneNumberInteractor.kt
index 1572638..8f18d21 100644
--- a/feature-auth-phonenumber/src/main/java/com/example/feature_auth_phonenumber/domain/AuthPhoneNumberInteractor.kt
+++ b/feature-auth-phonenumber/src/main/java/com/stslex/feature_auth_phonenumber/domain/AuthPhoneNumberInteractor.kt
@@ -1,7 +1,7 @@
-package com.example.feature_auth_phonenumber.domain
+package com.stslex.feature_auth_phonenumber.domain
import android.app.Activity
-import com.example.feature_auth_phonenumber.core.SignValueState
+import com.stslex.feature_auth_phonenumber.core.SignValueState
import kotlinx.coroutines.flow.Flow
interface AuthPhoneNumberInteractor {
diff --git a/feature-auth-phonenumber/src/main/java/com/example/feature_auth_phonenumber/domain/AuthPhoneNumberInteractorImpl.kt b/feature-auth-phonenumber/src/main/java/com/stslex/feature_auth_phonenumber/domain/AuthPhoneNumberInteractorImpl.kt
similarity index 78%
rename from feature-auth-phonenumber/src/main/java/com/example/feature_auth_phonenumber/domain/AuthPhoneNumberInteractorImpl.kt
rename to feature-auth-phonenumber/src/main/java/com/stslex/feature_auth_phonenumber/domain/AuthPhoneNumberInteractorImpl.kt
index b3acb01..2e7d5e8 100644
--- a/feature-auth-phonenumber/src/main/java/com/example/feature_auth_phonenumber/domain/AuthPhoneNumberInteractorImpl.kt
+++ b/feature-auth-phonenumber/src/main/java/com/stslex/feature_auth_phonenumber/domain/AuthPhoneNumberInteractorImpl.kt
@@ -1,10 +1,10 @@
-package com.example.feature_auth_phonenumber.domain
+package com.stslex.feature_auth_phonenumber.domain
import android.app.Activity
-import com.example.feature_auth_phonenumber.core.SignValueState
-import com.example.feature_auth_phonenumber.ui.use_cases.AuthPhoneNumberUtil
+import com.stslex.feature_auth_phonenumber.core.SignValueState
+import com.stslex.feature_auth_phonenumber.ui.use_cases.AuthPhoneNumberUtil
import com.stslex.core.ValueState
-import com.stslex.core_firebase_auth.data.FirebaseAuthRepository
+import com.stslex.core_firebase.data.abstraction.FirebaseAuthRepository
import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.flow
diff --git a/feature-auth-phonenumber/src/main/java/com/example/feature_auth_phonenumber/navigation/AuthPhoneNumberGraph.kt b/feature-auth-phonenumber/src/main/java/com/stslex/feature_auth_phonenumber/navigation/AuthPhoneNumberGraph.kt
similarity index 86%
rename from feature-auth-phonenumber/src/main/java/com/example/feature_auth_phonenumber/navigation/AuthPhoneNumberGraph.kt
rename to feature-auth-phonenumber/src/main/java/com/stslex/feature_auth_phonenumber/navigation/AuthPhoneNumberGraph.kt
index 0bb63b7..099486b 100644
--- a/feature-auth-phonenumber/src/main/java/com/example/feature_auth_phonenumber/navigation/AuthPhoneNumberGraph.kt
+++ b/feature-auth-phonenumber/src/main/java/com/stslex/feature_auth_phonenumber/navigation/AuthPhoneNumberGraph.kt
@@ -1,8 +1,8 @@
-package com.example.feature_auth_phonenumber.navigation
+package com.stslex.feature_auth_phonenumber.navigation
import androidx.compose.animation.ExperimentalAnimationApi
import androidx.navigation.NavGraphBuilder
-import com.example.feature_auth_phonenumber.ui.PhoneNumberRoute
+import com.stslex.feature_auth_phonenumber.ui.PhoneNumberRoute
import com.google.accompanist.navigation.animation.composable
import com.stslex.core_navigation.destinations.PhoneNumberDestination
diff --git a/feature-auth-phonenumber/src/main/java/com/example/feature_auth_phonenumber/navigation/AuthPhoneTransitions.kt b/feature-auth-phonenumber/src/main/java/com/stslex/feature_auth_phonenumber/navigation/AuthPhoneTransitions.kt
similarity index 97%
rename from feature-auth-phonenumber/src/main/java/com/example/feature_auth_phonenumber/navigation/AuthPhoneTransitions.kt
rename to feature-auth-phonenumber/src/main/java/com/stslex/feature_auth_phonenumber/navigation/AuthPhoneTransitions.kt
index 8c33bc4..5959c94 100644
--- a/feature-auth-phonenumber/src/main/java/com/example/feature_auth_phonenumber/navigation/AuthPhoneTransitions.kt
+++ b/feature-auth-phonenumber/src/main/java/com/stslex/feature_auth_phonenumber/navigation/AuthPhoneTransitions.kt
@@ -1,4 +1,4 @@
-package com.example.feature_auth_phonenumber.navigation
+package com.stslex.feature_auth_phonenumber.navigation
import androidx.compose.animation.AnimatedContentScope
import androidx.compose.animation.EnterTransition
diff --git a/feature-auth-phonenumber/src/main/java/com/example/feature_auth_phonenumber/ui/AuthPhoneNumberRoute.kt b/feature-auth-phonenumber/src/main/java/com/stslex/feature_auth_phonenumber/ui/AuthPhoneNumberRoute.kt
similarity index 92%
rename from feature-auth-phonenumber/src/main/java/com/example/feature_auth_phonenumber/ui/AuthPhoneNumberRoute.kt
rename to feature-auth-phonenumber/src/main/java/com/stslex/feature_auth_phonenumber/ui/AuthPhoneNumberRoute.kt
index 3e61d5e..276507f 100644
--- a/feature-auth-phonenumber/src/main/java/com/example/feature_auth_phonenumber/ui/AuthPhoneNumberRoute.kt
+++ b/feature-auth-phonenumber/src/main/java/com/stslex/feature_auth_phonenumber/ui/AuthPhoneNumberRoute.kt
@@ -1,4 +1,4 @@
-package com.example.feature_auth_phonenumber.ui
+package com.stslex.feature_auth_phonenumber.ui
import android.app.Activity
import androidx.compose.foundation.background
@@ -10,9 +10,9 @@ import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.platform.LocalContext
import androidx.compose.ui.tooling.preview.Preview
-import com.example.feature_auth_phonenumber.core.SignValueState
-import com.example.feature_auth_phonenumber.ui.components.ButtonNextStep
-import com.example.feature_auth_phonenumber.ui.components.ButtonPreviousStep
+import com.stslex.feature_auth_phonenumber.core.SignValueState
+import com.stslex.feature_auth_phonenumber.ui.components.ButtonNextStep
+import com.stslex.feature_auth_phonenumber.ui.components.ButtonPreviousStep
import com.google.firebase.FirebaseApp
import com.stslex.core_navigation.destinations.PhoneNumberDestination
import com.stslex.core_ui.theme.AppTheme
diff --git a/feature-auth-phonenumber/src/main/java/com/example/feature_auth_phonenumber/ui/AuthPhoneViewModel.kt b/feature-auth-phonenumber/src/main/java/com/stslex/feature_auth_phonenumber/ui/AuthPhoneViewModel.kt
similarity index 80%
rename from feature-auth-phonenumber/src/main/java/com/example/feature_auth_phonenumber/ui/AuthPhoneViewModel.kt
rename to feature-auth-phonenumber/src/main/java/com/stslex/feature_auth_phonenumber/ui/AuthPhoneViewModel.kt
index 8c0890b..e4a7993 100644
--- a/feature-auth-phonenumber/src/main/java/com/example/feature_auth_phonenumber/ui/AuthPhoneViewModel.kt
+++ b/feature-auth-phonenumber/src/main/java/com/stslex/feature_auth_phonenumber/ui/AuthPhoneViewModel.kt
@@ -1,11 +1,11 @@
-package com.example.feature_auth_phonenumber.ui
+package com.stslex.feature_auth_phonenumber.ui
import android.app.Activity
import androidx.lifecycle.ViewModel
import androidx.lifecycle.viewModelScope
-import com.example.feature_auth_phonenumber.core.SignValueState
-import com.example.feature_auth_phonenumber.domain.AuthPhoneNumberInteractor
-import com.stslex.core_coroutines.AppDispatchers
+import com.stslex.feature_auth_phonenumber.core.SignValueState
+import com.stslex.feature_auth_phonenumber.domain.AuthPhoneNumberInteractor
+import com.stslex.core.AppDispatchers
import kotlinx.coroutines.flow.*
import kotlinx.coroutines.launch
diff --git a/feature-auth-phonenumber/src/main/java/com/example/feature_auth_phonenumber/ui/PhoneNumberField.kt b/feature-auth-phonenumber/src/main/java/com/stslex/feature_auth_phonenumber/ui/PhoneNumberField.kt
similarity index 97%
rename from feature-auth-phonenumber/src/main/java/com/example/feature_auth_phonenumber/ui/PhoneNumberField.kt
rename to feature-auth-phonenumber/src/main/java/com/stslex/feature_auth_phonenumber/ui/PhoneNumberField.kt
index 6bf5577..5053728 100644
--- a/feature-auth-phonenumber/src/main/java/com/example/feature_auth_phonenumber/ui/PhoneNumberField.kt
+++ b/feature-auth-phonenumber/src/main/java/com/stslex/feature_auth_phonenumber/ui/PhoneNumberField.kt
@@ -1,4 +1,4 @@
-package com.example.feature_auth_phonenumber.ui
+package com.stslex.feature_auth_phonenumber.ui
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.text.KeyboardOptions
diff --git a/feature-auth-phonenumber/src/main/java/com/example/feature_auth_phonenumber/ui/components/ButtonNextStep.kt b/feature-auth-phonenumber/src/main/java/com/stslex/feature_auth_phonenumber/ui/components/ButtonNextStep.kt
similarity index 91%
rename from feature-auth-phonenumber/src/main/java/com/example/feature_auth_phonenumber/ui/components/ButtonNextStep.kt
rename to feature-auth-phonenumber/src/main/java/com/stslex/feature_auth_phonenumber/ui/components/ButtonNextStep.kt
index a1dfe22..f89eb7a 100644
--- a/feature-auth-phonenumber/src/main/java/com/example/feature_auth_phonenumber/ui/components/ButtonNextStep.kt
+++ b/feature-auth-phonenumber/src/main/java/com/stslex/feature_auth_phonenumber/ui/components/ButtonNextStep.kt
@@ -1,4 +1,4 @@
-package com.example.feature_auth_phonenumber.ui.components
+package com.stslex.feature_auth_phonenumber.ui.components
import androidx.compose.foundation.layout.BoxScope
import androidx.compose.foundation.layout.padding
diff --git a/feature-auth-phonenumber/src/main/java/com/example/feature_auth_phonenumber/ui/components/ButtonPreviousStep.kt b/feature-auth-phonenumber/src/main/java/com/stslex/feature_auth_phonenumber/ui/components/ButtonPreviousStep.kt
similarity index 91%
rename from feature-auth-phonenumber/src/main/java/com/example/feature_auth_phonenumber/ui/components/ButtonPreviousStep.kt
rename to feature-auth-phonenumber/src/main/java/com/stslex/feature_auth_phonenumber/ui/components/ButtonPreviousStep.kt
index e29cc65..fa51437 100644
--- a/feature-auth-phonenumber/src/main/java/com/example/feature_auth_phonenumber/ui/components/ButtonPreviousStep.kt
+++ b/feature-auth-phonenumber/src/main/java/com/stslex/feature_auth_phonenumber/ui/components/ButtonPreviousStep.kt
@@ -1,4 +1,4 @@
-package com.example.feature_auth_phonenumber.ui.components
+package com.stslex.feature_auth_phonenumber.ui.components
import androidx.compose.foundation.layout.BoxScope
import androidx.compose.foundation.layout.padding
diff --git a/feature-auth-phonenumber/src/main/java/com/example/feature_auth_phonenumber/ui/use_cases/AuthPhoneNumberUtil.kt b/feature-auth-phonenumber/src/main/java/com/stslex/feature_auth_phonenumber/ui/use_cases/AuthPhoneNumberUtil.kt
similarity index 53%
rename from feature-auth-phonenumber/src/main/java/com/example/feature_auth_phonenumber/ui/use_cases/AuthPhoneNumberUtil.kt
rename to feature-auth-phonenumber/src/main/java/com/stslex/feature_auth_phonenumber/ui/use_cases/AuthPhoneNumberUtil.kt
index 2e1a015..7b26b47 100644
--- a/feature-auth-phonenumber/src/main/java/com/example/feature_auth_phonenumber/ui/use_cases/AuthPhoneNumberUtil.kt
+++ b/feature-auth-phonenumber/src/main/java/com/stslex/feature_auth_phonenumber/ui/use_cases/AuthPhoneNumberUtil.kt
@@ -1,7 +1,7 @@
-package com.example.feature_auth_phonenumber.ui.use_cases
+package com.stslex.feature_auth_phonenumber.ui.use_cases
import android.app.Activity
-import com.example.feature_auth_phonenumber.core.SignValueState
+import com.stslex.feature_auth_phonenumber.core.SignValueState
interface AuthPhoneNumberUtil {
suspend fun signIn(activity: Activity, phoneNumber: String): SignValueState
diff --git a/feature-auth-phonenumber/src/main/java/com/example/feature_auth_phonenumber/ui/use_cases/AuthPhoneNumberUtilImpl.kt b/feature-auth-phonenumber/src/main/java/com/stslex/feature_auth_phonenumber/ui/use_cases/AuthPhoneNumberUtilImpl.kt
similarity index 87%
rename from feature-auth-phonenumber/src/main/java/com/example/feature_auth_phonenumber/ui/use_cases/AuthPhoneNumberUtilImpl.kt
rename to feature-auth-phonenumber/src/main/java/com/stslex/feature_auth_phonenumber/ui/use_cases/AuthPhoneNumberUtilImpl.kt
index 0376505..44a0406 100644
--- a/feature-auth-phonenumber/src/main/java/com/example/feature_auth_phonenumber/ui/use_cases/AuthPhoneNumberUtilImpl.kt
+++ b/feature-auth-phonenumber/src/main/java/com/stslex/feature_auth_phonenumber/ui/use_cases/AuthPhoneNumberUtilImpl.kt
@@ -1,7 +1,7 @@
-package com.example.feature_auth_phonenumber.ui.use_cases
+package com.stslex.feature_auth_phonenumber.ui.use_cases
import android.app.Activity
-import com.example.feature_auth_phonenumber.core.SignValueState
+import com.stslex.feature_auth_phonenumber.core.SignValueState
import com.google.firebase.auth.PhoneAuthOptions
import com.google.firebase.auth.PhoneAuthProvider
import com.google.firebase.auth.ktx.auth
diff --git a/feature-auth-phonenumber/src/main/java/com/example/feature_auth_phonenumber/ui/use_cases/PhoneAuthCallback.kt b/feature-auth-phonenumber/src/main/java/com/stslex/feature_auth_phonenumber/ui/use_cases/PhoneAuthCallback.kt
similarity index 90%
rename from feature-auth-phonenumber/src/main/java/com/example/feature_auth_phonenumber/ui/use_cases/PhoneAuthCallback.kt
rename to feature-auth-phonenumber/src/main/java/com/stslex/feature_auth_phonenumber/ui/use_cases/PhoneAuthCallback.kt
index 1fcf0ae..6bf5c2b 100644
--- a/feature-auth-phonenumber/src/main/java/com/example/feature_auth_phonenumber/ui/use_cases/PhoneAuthCallback.kt
+++ b/feature-auth-phonenumber/src/main/java/com/stslex/feature_auth_phonenumber/ui/use_cases/PhoneAuthCallback.kt
@@ -1,6 +1,6 @@
-package com.example.feature_auth_phonenumber.ui.use_cases
+package com.stslex.feature_auth_phonenumber.ui.use_cases
-import com.example.feature_auth_phonenumber.core.SignValueState
+import com.stslex.feature_auth_phonenumber.core.SignValueState
import com.google.android.gms.tasks.OnCompleteListener
import com.google.firebase.FirebaseException
import com.google.firebase.auth.AuthResult
diff --git a/feature-auth-phonenumber/src/main/java/com/example/feature_auth_phonenumber/ui/use_cases/SignCompleteListener.kt b/feature-auth-phonenumber/src/main/java/com/stslex/feature_auth_phonenumber/ui/use_cases/SignCompleteListener.kt
similarity index 79%
rename from feature-auth-phonenumber/src/main/java/com/example/feature_auth_phonenumber/ui/use_cases/SignCompleteListener.kt
rename to feature-auth-phonenumber/src/main/java/com/stslex/feature_auth_phonenumber/ui/use_cases/SignCompleteListener.kt
index 08285b8..5a9b254 100644
--- a/feature-auth-phonenumber/src/main/java/com/example/feature_auth_phonenumber/ui/use_cases/SignCompleteListener.kt
+++ b/feature-auth-phonenumber/src/main/java/com/stslex/feature_auth_phonenumber/ui/use_cases/SignCompleteListener.kt
@@ -1,6 +1,6 @@
-package com.example.feature_auth_phonenumber.ui.use_cases
+package com.stslex.feature_auth_phonenumber.ui.use_cases
-import com.example.feature_auth_phonenumber.core.SignValueState
+import com.stslex.feature_auth_phonenumber.core.SignValueState
import com.google.android.gms.tasks.OnCompleteListener
import com.google.android.gms.tasks.Task
import com.google.firebase.auth.AuthResult
diff --git a/feature-auth-phonenumber/src/test/java/com/example/feature_auth_phonenumber/di/AuthPhoneNumberModuleTest.kt b/feature-auth-phonenumber/src/test/java/com/stslex/feature_auth_phonenumber/di/AuthPhoneNumberModuleTest.kt
similarity index 88%
rename from feature-auth-phonenumber/src/test/java/com/example/feature_auth_phonenumber/di/AuthPhoneNumberModuleTest.kt
rename to feature-auth-phonenumber/src/test/java/com/stslex/feature_auth_phonenumber/di/AuthPhoneNumberModuleTest.kt
index e65c8df..c3d9536 100644
--- a/feature-auth-phonenumber/src/test/java/com/example/feature_auth_phonenumber/di/AuthPhoneNumberModuleTest.kt
+++ b/feature-auth-phonenumber/src/test/java/com/stslex/feature_auth_phonenumber/di/AuthPhoneNumberModuleTest.kt
@@ -1,4 +1,4 @@
-package com.example.feature_auth_phonenumber.di
+package com.stslex.feature_auth_phonenumber.di
import org.junit.After
import org.junit.Test
diff --git a/feature-note-list/build.gradle.kts b/feature-note-list/build.gradle.kts
index 600194d..7a1cfbe 100644
--- a/feature-note-list/build.gradle.kts
+++ b/feature-note-list/build.gradle.kts
@@ -11,8 +11,6 @@ dependencies {
implementation(project(":core-navigation"))
implementation(project(":core-model"))
implementation(project(":core-local-data-source"))
- implementation(project(":core-coroutines"))
- implementation(project(":core-resources"))
implementation(project(":core-firebase"))
with(libs) {
@@ -28,5 +26,5 @@ dependencies {
}
android {
- namespace = "com.example.feature_note_list"
+ namespace = "com.stslex.feature_note_list"
}
\ No newline at end of file
diff --git a/feature-note-list/src/androidTest/java/com/example/feature_note_list/ExampleInstrumentedTest.kt b/feature-note-list/src/androidTest/java/com/stslex/feature_note_list/ExampleInstrumentedTest.kt
similarity index 94%
rename from feature-note-list/src/androidTest/java/com/example/feature_note_list/ExampleInstrumentedTest.kt
rename to feature-note-list/src/androidTest/java/com/stslex/feature_note_list/ExampleInstrumentedTest.kt
index b8ac96e..8810371 100644
--- a/feature-note-list/src/androidTest/java/com/example/feature_note_list/ExampleInstrumentedTest.kt
+++ b/feature-note-list/src/androidTest/java/com/stslex/feature_note_list/ExampleInstrumentedTest.kt
@@ -1,4 +1,4 @@
-package com.example.feature_note_list
+package com.stslex.feature_note_list
import androidx.test.platform.app.InstrumentationRegistry
import androidx.test.ext.junit.runners.AndroidJUnit4
diff --git a/feature-note-list/src/main/java/com/example/feature_note_list/ui/top_bar/NoteMediumTopAppBar.kt b/feature-note-list/src/main/java/com/example/feature_note_list/ui/top_bar/NoteMediumTopAppBar.kt
deleted file mode 100644
index a24aaca..0000000
--- a/feature-note-list/src/main/java/com/example/feature_note_list/ui/top_bar/NoteMediumTopAppBar.kt
+++ /dev/null
@@ -1,113 +0,0 @@
-package com.example.feature_note_list.ui.top_bar
-
-import android.content.Context
-import android.content.Intent
-import androidx.compose.animation.AnimatedVisibility
-import androidx.compose.foundation.layout.*
-import androidx.compose.foundation.lazy.LazyRow
-import androidx.compose.material.icons.Icons
-import androidx.compose.material.icons.filled.Person
-import androidx.compose.material.icons.filled.Share
-import androidx.compose.material3.*
-import androidx.compose.runtime.*
-import androidx.compose.runtime.snapshots.SnapshotStateList
-import androidx.compose.ui.Modifier
-import androidx.compose.ui.platform.LocalContext
-import androidx.compose.ui.unit.dp
-import com.example.feature_note_list.ui.fab.clearSelection
-import com.stslex.core_model.model.NoteDynamicUI
-import com.stslex.core_resources.R
-
-@Composable
-fun NoteMediumTopAppBar(
- scrollBehavior: TopAppBarScrollBehavior,
- openAccount: () -> Unit,
- selectedNotes: SnapshotStateList,
- context: Context = LocalContext.current,
- modifier: Modifier = Modifier
-) {
- var profileButtonClicked by remember { mutableStateOf(false) }
- MediumTopAppBar(
- modifier = modifier.fillMaxWidth(),
- title = {
- Text(
- text = context.getString(R.string.app_name),
- style = MaterialTheme.typography.titleLarge
- )
- },
- navigationIcon = {
- AnimatedVisibility(
- visible = selectedNotes.isEmpty(),
- ) {
- Row() {
- IconButton(
- onClick = { profileButtonClicked = !profileButtonClicked }
- ) {
- Icon(
- imageVector = Icons.Default.Person,
- contentDescription = context.getString(R.string.lb_account)
- )
- }
- AnimatedVisibility(visible = profileButtonClicked) {
- LazyRow {
- item {
- Spacer(modifier = Modifier.padding(4.dp))
- Button(
- modifier = Modifier.padding(end = 4.dp),
- onClick = openAccount
- ) {
- Text(text = context.getString(R.string.lb_short_shortcut_profile))
- }
- }
- item {
- Spacer(modifier = Modifier.padding(4.dp))
- Button(modifier = Modifier.padding(end = 4.dp), onClick = {}) {
- Text(text = "Settings")
- }
- }
- }
- }
- }
- }
- },
- actions = noteListActions(selectedNotes = selectedNotes),
- scrollBehavior = scrollBehavior
- )
-}
-
-private fun noteListActions(
- selectedNotes: SnapshotStateList
-): @Composable RowScope.() -> Unit = {
- AnimatedVisibility(visible = selectedNotes.isNotEmpty()) {
- ActionShare(selectedNotes)
- }
-}
-
-@Composable
-private fun ActionShare(
- selectedNotes: SnapshotStateList,
- modifier: Modifier = Modifier,
- context: Context = LocalContext.current
-) {
- IconButton(
- modifier = modifier,
- onClick = {
- val sendingData = selectedNotes.joinToString(separator = "\n") {
- "${it.title}: \n${it.content}"
- }
- val intent = Intent().apply {
- action = Intent.ACTION_SEND
- putExtra(Intent.EXTRA_TEXT, sendingData)
- type = "text/plain"
- }
- val shareIntent = Intent.createChooser(intent, null)
- context.startActivity(shareIntent)
- selectedNotes.clearSelection()
- }
- ) {
- Icon(
- imageVector = Icons.Default.Share,
- contentDescription = context.getString(R.string.lb_share)
- )
- }
-}
\ No newline at end of file
diff --git a/feature-note-list/src/main/java/com/example/feature_note_list/data/abstraction/NoteListRepository.kt b/feature-note-list/src/main/java/com/stslex/feature_note_list/data/abstraction/NoteListRepository.kt
similarity index 83%
rename from feature-note-list/src/main/java/com/example/feature_note_list/data/abstraction/NoteListRepository.kt
rename to feature-note-list/src/main/java/com/stslex/feature_note_list/data/abstraction/NoteListRepository.kt
index 709f3f1..858e7dc 100644
--- a/feature-note-list/src/main/java/com/example/feature_note_list/data/abstraction/NoteListRepository.kt
+++ b/feature-note-list/src/main/java/com/stslex/feature_note_list/data/abstraction/NoteListRepository.kt
@@ -1,4 +1,4 @@
-package com.example.feature_note_list.data.abstraction
+package com.stslex.feature_note_list.data.abstraction
import androidx.paging.PagingData
import com.stslex.core_model.model.NoteEntity
diff --git a/feature-note-list/src/main/java/com/example/feature_note_list/data/realisation/NoteListRepositoryImpl.kt b/feature-note-list/src/main/java/com/stslex/feature_note_list/data/realisation/NoteListRepositoryImpl.kt
similarity index 85%
rename from feature-note-list/src/main/java/com/example/feature_note_list/data/realisation/NoteListRepositoryImpl.kt
rename to feature-note-list/src/main/java/com/stslex/feature_note_list/data/realisation/NoteListRepositoryImpl.kt
index 7180749..06fcfce 100644
--- a/feature-note-list/src/main/java/com/example/feature_note_list/data/realisation/NoteListRepositoryImpl.kt
+++ b/feature-note-list/src/main/java/com/stslex/feature_note_list/data/realisation/NoteListRepositoryImpl.kt
@@ -1,9 +1,9 @@
-package com.example.feature_note_list.data.realisation
+package com.stslex.feature_note_list.data.realisation
import androidx.paging.Pager
import androidx.paging.PagingConfig
import androidx.paging.PagingData
-import com.example.feature_note_list.data.abstraction.NoteListRepository
+import com.stslex.feature_note_list.data.abstraction.NoteListRepository
import com.google.firebase.auth.FirebaseAuth
import com.stslex.core_data_source.dao.NoteDao
import com.stslex.core_model.model.NoteEntity
diff --git a/feature-note-list/src/main/java/com/example/feature_note_list/di/NoteListModule.kt b/feature-note-list/src/main/java/com/stslex/feature_note_list/di/NoteListModule.kt
similarity index 73%
rename from feature-note-list/src/main/java/com/example/feature_note_list/di/NoteListModule.kt
rename to feature-note-list/src/main/java/com/stslex/feature_note_list/di/NoteListModule.kt
index 7e9a61f..ab3039c 100644
--- a/feature-note-list/src/main/java/com/example/feature_note_list/di/NoteListModule.kt
+++ b/feature-note-list/src/main/java/com/stslex/feature_note_list/di/NoteListModule.kt
@@ -1,9 +1,9 @@
-package com.example.feature_note_list.di
+package com.stslex.feature_note_list.di
import androidx.paging.PagingConfig
-import com.example.feature_note_list.data.abstraction.NoteListRepository
-import com.example.feature_note_list.data.realisation.NoteListRepositoryImpl
-import com.example.feature_note_list.ui.NotesViewModel
+import com.stslex.feature_note_list.data.abstraction.NoteListRepository
+import com.stslex.feature_note_list.data.realisation.NoteListRepositoryImpl
+import com.stslex.feature_note_list.ui.NotesViewModel
import com.stslex.core_model.common.MapperName
import org.koin.androidx.viewmodel.dsl.viewModel
import org.koin.core.module.dsl.bind
diff --git a/feature-note-list/src/main/java/com/example/feature_note_list/navigation/NoteListGraph.kt b/feature-note-list/src/main/java/com/stslex/feature_note_list/navigation/NoteListGraph.kt
similarity index 92%
rename from feature-note-list/src/main/java/com/example/feature_note_list/navigation/NoteListGraph.kt
rename to feature-note-list/src/main/java/com/stslex/feature_note_list/navigation/NoteListGraph.kt
index 1eca56e..d78227d 100644
--- a/feature-note-list/src/main/java/com/example/feature_note_list/navigation/NoteListGraph.kt
+++ b/feature-note-list/src/main/java/com/stslex/feature_note_list/navigation/NoteListGraph.kt
@@ -1,12 +1,12 @@
-package com.example.feature_note_list.navigation
+package com.stslex.feature_note_list.navigation
import androidx.compose.animation.ExperimentalAnimationApi
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.filled.List
import androidx.compose.material.icons.outlined.List
import androidx.navigation.NavGraphBuilder
-import com.example.feature_note_list.R
-import com.example.feature_note_list.ui.NoteListRoute
+import com.stslex.feature_note_list.R
+import com.stslex.feature_note_list.ui.NoteListRoute
import com.google.accompanist.navigation.animation.composable
import com.google.accompanist.navigation.animation.navigation
import com.stslex.core_navigation.destinations.NoteListDestination
diff --git a/feature-note-list/src/main/java/com/example/feature_note_list/navigation/NoteListTransitions.kt b/feature-note-list/src/main/java/com/stslex/feature_note_list/navigation/NoteListTransitions.kt
similarity index 97%
rename from feature-note-list/src/main/java/com/example/feature_note_list/navigation/NoteListTransitions.kt
rename to feature-note-list/src/main/java/com/stslex/feature_note_list/navigation/NoteListTransitions.kt
index 4910f43..3c25c42 100644
--- a/feature-note-list/src/main/java/com/example/feature_note_list/navigation/NoteListTransitions.kt
+++ b/feature-note-list/src/main/java/com/stslex/feature_note_list/navigation/NoteListTransitions.kt
@@ -1,4 +1,4 @@
-package com.example.feature_note_list.navigation
+package com.stslex.feature_note_list.navigation
import androidx.compose.animation.AnimatedContentScope
import androidx.compose.animation.EnterTransition
diff --git a/feature-note-list/src/main/java/com/example/feature_note_list/ui/NoteListRoute.kt b/feature-note-list/src/main/java/com/stslex/feature_note_list/ui/NoteListRoute.kt
similarity index 93%
rename from feature-note-list/src/main/java/com/example/feature_note_list/ui/NoteListRoute.kt
rename to feature-note-list/src/main/java/com/stslex/feature_note_list/ui/NoteListRoute.kt
index 626e039..f99994c 100644
--- a/feature-note-list/src/main/java/com/example/feature_note_list/ui/NoteListRoute.kt
+++ b/feature-note-list/src/main/java/com/stslex/feature_note_list/ui/NoteListRoute.kt
@@ -1,4 +1,4 @@
-package com.example.feature_note_list.ui
+package com.stslex.feature_note_list.ui
import androidx.compose.foundation.layout.WindowInsets
import androidx.compose.foundation.layout.safeDrawing
diff --git a/feature-note-list/src/main/java/com/example/feature_note_list/ui/NotesScreen.kt b/feature-note-list/src/main/java/com/stslex/feature_note_list/ui/NotesScreen.kt
similarity index 93%
rename from feature-note-list/src/main/java/com/example/feature_note_list/ui/NotesScreen.kt
rename to feature-note-list/src/main/java/com/stslex/feature_note_list/ui/NotesScreen.kt
index dbd592b..e88eab3 100644
--- a/feature-note-list/src/main/java/com/example/feature_note_list/ui/NotesScreen.kt
+++ b/feature-note-list/src/main/java/com/stslex/feature_note_list/ui/NotesScreen.kt
@@ -1,4 +1,4 @@
-package com.example.feature_note_list.ui
+package com.stslex.feature_note_list.ui
import androidx.compose.animation.AnimatedVisibility
import androidx.compose.foundation.layout.padding
@@ -16,9 +16,9 @@ import androidx.compose.ui.input.nestedscroll.nestedScroll
import androidx.compose.ui.tooling.preview.Preview
import androidx.paging.compose.collectAsLazyPagingItems
import androidx.paging.compose.items
-import com.example.feature_note_list.ui.fab.NotesFab
-import com.example.feature_note_list.ui.note.NotePagingItem
-import com.example.feature_note_list.ui.top_bar.NoteMediumTopAppBar
+import com.stslex.feature_note_list.ui.fab.NotesFab
+import com.stslex.feature_note_list.ui.note.NotePagingItem
+import com.stslex.feature_note_list.ui.top_bar.NoteMediumTopAppBar
import com.stslex.core_model.model.NoteDynamicUI
import org.koin.androidx.compose.getViewModel
diff --git a/feature-note-list/src/main/java/com/example/feature_note_list/ui/NotesViewModel.kt b/feature-note-list/src/main/java/com/stslex/feature_note_list/ui/NotesViewModel.kt
similarity index 86%
rename from feature-note-list/src/main/java/com/example/feature_note_list/ui/NotesViewModel.kt
rename to feature-note-list/src/main/java/com/stslex/feature_note_list/ui/NotesViewModel.kt
index 3fa7145..adf148a 100644
--- a/feature-note-list/src/main/java/com/example/feature_note_list/ui/NotesViewModel.kt
+++ b/feature-note-list/src/main/java/com/stslex/feature_note_list/ui/NotesViewModel.kt
@@ -1,12 +1,12 @@
-package com.example.feature_note_list.ui
+package com.stslex.feature_note_list.ui
import androidx.lifecycle.ViewModel
import androidx.lifecycle.viewModelScope
import androidx.paging.PagingData
import androidx.paging.cachedIn
-import com.example.feature_note_list.data.abstraction.NoteListRepository
+import com.stslex.feature_note_list.data.abstraction.NoteListRepository
import com.stslex.core.Mapper
-import com.stslex.core_coroutines.AppDispatchers
+import com.stslex.core.AppDispatchers
import com.stslex.core_model.model.NoteDynamicUI
import com.stslex.core_model.model.NoteEntity
import kotlinx.coroutines.flow.*
diff --git a/feature-note-list/src/main/java/com/example/feature_note_list/ui/fab/FabAnimations.kt b/feature-note-list/src/main/java/com/stslex/feature_note_list/ui/fab/FabAnimations.kt
similarity index 97%
rename from feature-note-list/src/main/java/com/example/feature_note_list/ui/fab/FabAnimations.kt
rename to feature-note-list/src/main/java/com/stslex/feature_note_list/ui/fab/FabAnimations.kt
index b92358b..fbe081e 100644
--- a/feature-note-list/src/main/java/com/example/feature_note_list/ui/fab/FabAnimations.kt
+++ b/feature-note-list/src/main/java/com/stslex/feature_note_list/ui/fab/FabAnimations.kt
@@ -1,4 +1,4 @@
-package com.example.feature_note_list.ui.fab
+package com.stslex.feature_note_list.ui.fab
import androidx.compose.animation.*
import androidx.compose.animation.core.keyframes
diff --git a/feature-note-list/src/main/java/com/example/feature_note_list/ui/fab/NotesFab.kt b/feature-note-list/src/main/java/com/stslex/feature_note_list/ui/fab/NotesFab.kt
similarity index 98%
rename from feature-note-list/src/main/java/com/example/feature_note_list/ui/fab/NotesFab.kt
rename to feature-note-list/src/main/java/com/stslex/feature_note_list/ui/fab/NotesFab.kt
index fab7e3f..dc7fe98 100644
--- a/feature-note-list/src/main/java/com/example/feature_note_list/ui/fab/NotesFab.kt
+++ b/feature-note-list/src/main/java/com/stslex/feature_note_list/ui/fab/NotesFab.kt
@@ -1,4 +1,4 @@
-package com.example.feature_note_list.ui.fab
+package com.stslex.feature_note_list.ui.fab
import androidx.compose.foundation.lazy.LazyListState
import androidx.compose.material3.Icon
diff --git a/feature-note-list/src/main/java/com/example/feature_note_list/ui/fab/NotesFabResources.kt b/feature-note-list/src/main/java/com/stslex/feature_note_list/ui/fab/NotesFabResources.kt
similarity index 88%
rename from feature-note-list/src/main/java/com/example/feature_note_list/ui/fab/NotesFabResources.kt
rename to feature-note-list/src/main/java/com/stslex/feature_note_list/ui/fab/NotesFabResources.kt
index aa8671f..a900994 100644
--- a/feature-note-list/src/main/java/com/example/feature_note_list/ui/fab/NotesFabResources.kt
+++ b/feature-note-list/src/main/java/com/stslex/feature_note_list/ui/fab/NotesFabResources.kt
@@ -1,10 +1,10 @@
-package com.example.feature_note_list.ui.fab
+package com.stslex.feature_note_list.ui.fab
import androidx.compose.material.icons.Icons
import androidx.compose.material.icons.filled.Create
import androidx.compose.material.icons.filled.Delete
import androidx.compose.ui.graphics.vector.ImageVector
-import com.stslex.core_resources.R
+import com.stslex.core_ui.R
sealed interface NotesFabResources {
diff --git a/feature-note-list/src/main/java/com/example/feature_note_list/ui/note/NoteContent.kt b/feature-note-list/src/main/java/com/stslex/feature_note_list/ui/note/NoteContent.kt
similarity index 91%
rename from feature-note-list/src/main/java/com/example/feature_note_list/ui/note/NoteContent.kt
rename to feature-note-list/src/main/java/com/stslex/feature_note_list/ui/note/NoteContent.kt
index d3cfa9c..a4a5af2 100644
--- a/feature-note-list/src/main/java/com/example/feature_note_list/ui/note/NoteContent.kt
+++ b/feature-note-list/src/main/java/com/stslex/feature_note_list/ui/note/NoteContent.kt
@@ -1,4 +1,4 @@
-package com.example.feature_note_list.ui.note
+package com.stslex.feature_note_list.ui.note
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Text
diff --git a/feature-note-list/src/main/java/com/example/feature_note_list/ui/note/NoteItemContent.kt b/feature-note-list/src/main/java/com/stslex/feature_note_list/ui/note/NoteItemContent.kt
similarity index 95%
rename from feature-note-list/src/main/java/com/example/feature_note_list/ui/note/NoteItemContent.kt
rename to feature-note-list/src/main/java/com/stslex/feature_note_list/ui/note/NoteItemContent.kt
index a3697c8..8b47da9 100644
--- a/feature-note-list/src/main/java/com/example/feature_note_list/ui/note/NoteItemContent.kt
+++ b/feature-note-list/src/main/java/com/stslex/feature_note_list/ui/note/NoteItemContent.kt
@@ -1,4 +1,4 @@
-package com.example.feature_note_list.ui.note
+package com.stslex.feature_note_list.ui.note
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.fillMaxWidth
diff --git a/feature-note-list/src/main/java/com/example/feature_note_list/ui/note/NotePagingItem.kt b/feature-note-list/src/main/java/com/stslex/feature_note_list/ui/note/NotePagingItem.kt
similarity index 98%
rename from feature-note-list/src/main/java/com/example/feature_note_list/ui/note/NotePagingItem.kt
rename to feature-note-list/src/main/java/com/stslex/feature_note_list/ui/note/NotePagingItem.kt
index ac4b6ae..c3f1ab1 100644
--- a/feature-note-list/src/main/java/com/example/feature_note_list/ui/note/NotePagingItem.kt
+++ b/feature-note-list/src/main/java/com/stslex/feature_note_list/ui/note/NotePagingItem.kt
@@ -1,4 +1,4 @@
-package com.example.feature_note_list.ui.note
+package com.stslex.feature_note_list.ui.note
import androidx.compose.animation.animateColorAsState
import androidx.compose.animation.core.LinearOutSlowInEasing
diff --git a/feature-note-list/src/main/java/com/example/feature_note_list/ui/note/NoteTimestamp.kt b/feature-note-list/src/main/java/com/stslex/feature_note_list/ui/note/NoteTimestamp.kt
similarity index 91%
rename from feature-note-list/src/main/java/com/example/feature_note_list/ui/note/NoteTimestamp.kt
rename to feature-note-list/src/main/java/com/stslex/feature_note_list/ui/note/NoteTimestamp.kt
index a4ced4f..3d7dbf0 100644
--- a/feature-note-list/src/main/java/com/example/feature_note_list/ui/note/NoteTimestamp.kt
+++ b/feature-note-list/src/main/java/com/stslex/feature_note_list/ui/note/NoteTimestamp.kt
@@ -1,4 +1,4 @@
-package com.example.feature_note_list.ui.note
+package com.stslex.feature_note_list.ui.note
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Text
diff --git a/feature-note-list/src/main/java/com/example/feature_note_list/ui/note/NoteTitle.kt b/feature-note-list/src/main/java/com/stslex/feature_note_list/ui/note/NoteTitle.kt
similarity index 91%
rename from feature-note-list/src/main/java/com/example/feature_note_list/ui/note/NoteTitle.kt
rename to feature-note-list/src/main/java/com/stslex/feature_note_list/ui/note/NoteTitle.kt
index 7dd8b8d..3d73c9a 100644
--- a/feature-note-list/src/main/java/com/example/feature_note_list/ui/note/NoteTitle.kt
+++ b/feature-note-list/src/main/java/com/stslex/feature_note_list/ui/note/NoteTitle.kt
@@ -1,4 +1,4 @@
-package com.example.feature_note_list.ui.note
+package com.stslex.feature_note_list.ui.note
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Text
diff --git a/feature-note-list/src/main/java/com/stslex/feature_note_list/ui/top_bar/NoteMediumTopAppBar.kt b/feature-note-list/src/main/java/com/stslex/feature_note_list/ui/top_bar/NoteMediumTopAppBar.kt
new file mode 100644
index 0000000..0f628db
--- /dev/null
+++ b/feature-note-list/src/main/java/com/stslex/feature_note_list/ui/top_bar/NoteMediumTopAppBar.kt
@@ -0,0 +1,102 @@
+package com.stslex.feature_note_list.ui.top_bar
+
+import android.content.Context
+import android.content.Intent
+import androidx.compose.animation.AnimatedVisibility
+import androidx.compose.foundation.layout.*
+import androidx.compose.foundation.lazy.LazyRow
+import androidx.compose.material.icons.Icons
+import androidx.compose.material.icons.filled.Person
+import androidx.compose.material.icons.filled.Share
+import androidx.compose.material3.*
+import androidx.compose.runtime.*
+import androidx.compose.runtime.snapshots.SnapshotStateList
+import androidx.compose.ui.Modifier
+import androidx.compose.ui.platform.LocalContext
+import androidx.compose.ui.unit.dp
+import com.stslex.core_model.model.NoteDynamicUI
+import com.stslex.core_ui.R
+import com.stslex.feature_note_list.ui.fab.clearSelection
+
+@Composable
+fun NoteMediumTopAppBar(
+ scrollBehavior: TopAppBarScrollBehavior,
+ openAccount: () -> Unit,
+ selectedNotes: SnapshotStateList,
+ context: Context = LocalContext.current,
+ modifier: Modifier = Modifier
+) {
+ var profileButtonClicked by remember { mutableStateOf(false) }
+ MediumTopAppBar(modifier = modifier.fillMaxWidth(), title = {
+ Text(
+ text = context.getString(R.string.app_name),
+ style = MaterialTheme.typography.titleLarge
+ )
+ }, navigationIcon = {
+ AnimatedVisibility(
+ visible = selectedNotes.isEmpty(),
+ ) {
+ Row() {
+ IconButton(onClick = { profileButtonClicked = !profileButtonClicked }) {
+ Icon(
+ imageVector = Icons.Default.Person,
+ contentDescription = context.getString(R.string.lb_account)
+ )
+ }
+ AnimatedVisibility(visible = profileButtonClicked) {
+ LazyRow {
+ item {
+ Spacer(modifier = Modifier.padding(4.dp))
+ Button(
+ modifier = Modifier.padding(end = 4.dp), onClick = openAccount
+ ) {
+ Text(text = context.getString(R.string.lb_short_shortcut_profile))
+ }
+ }
+ item {
+ Spacer(modifier = Modifier.padding(4.dp))
+ Button(modifier = Modifier.padding(end = 4.dp), onClick = {}) {
+ Text(text = "Settings")
+ }
+ }
+ }
+ }
+ }
+ }
+ }, actions = noteListActions(selectedNotes = selectedNotes), scrollBehavior = scrollBehavior
+ )
+}
+
+private fun noteListActions(
+ selectedNotes: SnapshotStateList
+): @Composable RowScope.() -> Unit = {
+ AnimatedVisibility(visible = selectedNotes.isNotEmpty()) {
+ ActionShare(selectedNotes)
+ }
+}
+
+@Composable
+private fun ActionShare(
+ selectedNotes: SnapshotStateList,
+ modifier: Modifier = Modifier,
+ context: Context = LocalContext.current
+) {
+ IconButton(modifier = modifier, onClick = {
+ val sendingData = selectedNotes.joinToString(separator = "\n") {
+ "${it.title}: \n${it.content}"
+ }
+ val intent = Intent().apply {
+ action = Intent.ACTION_SEND
+ putExtra(Intent.EXTRA_TEXT, sendingData)
+ type = "text/plain"
+ }
+ val shareIntent = Intent.createChooser(intent, null)
+ context.startActivity(shareIntent)
+ selectedNotes.clearSelection()
+ }) {
+ Icon(
+ imageVector = Icons.Default.Share,
+ contentDescription = context.getString(R.string.lb_share)
+ )
+ }
+}
\ No newline at end of file
diff --git a/feature-note-list/src/test/java/com/example/feature_note_list/NoteListModuleTest.kt b/feature-note-list/src/test/java/com/stslex/feature_note_list/NoteListModuleTest.kt
similarity index 79%
rename from feature-note-list/src/test/java/com/example/feature_note_list/NoteListModuleTest.kt
rename to feature-note-list/src/test/java/com/stslex/feature_note_list/NoteListModuleTest.kt
index a16cac0..dd69e88 100644
--- a/feature-note-list/src/test/java/com/example/feature_note_list/NoteListModuleTest.kt
+++ b/feature-note-list/src/test/java/com/stslex/feature_note_list/NoteListModuleTest.kt
@@ -1,6 +1,6 @@
-package com.example.feature_note_list
+package com.stslex.feature_note_list
-import com.example.feature_note_list.di.NoteListModule
+import com.stslex.feature_note_list.di.NoteListModule
import org.junit.After
import org.junit.Test
import org.koin.core.context.stopKoin
diff --git a/feature-profile/build.gradle.kts b/feature-profile/build.gradle.kts
index e109e0b..1e333e8 100644
--- a/feature-profile/build.gradle.kts
+++ b/feature-profile/build.gradle.kts
@@ -10,11 +10,8 @@ dependencies {
implementation(project(":core-test"))
implementation(project(":core-model"))
implementation(project(":core-navigation"))
- implementation(project(":core-coroutines"))
implementation(project(":core-firebase"))
implementation(project(":core-local-data-source"))
- implementation(project(":core-remote-data-source"))
- implementation(project(":core-resources"))
with(libs) {
implementation(koin.core)
diff --git a/feature-profile/src/main/java/com/stslex/feature_profile/data/implementation/ProfileRepositoryImpl.kt b/feature-profile/src/main/java/com/stslex/feature_profile/data/implementation/ProfileRepositoryImpl.kt
index 0dcbfdc..f0d5638 100644
--- a/feature-profile/src/main/java/com/stslex/feature_profile/data/implementation/ProfileRepositoryImpl.kt
+++ b/feature-profile/src/main/java/com/stslex/feature_profile/data/implementation/ProfileRepositoryImpl.kt
@@ -5,11 +5,11 @@ import com.google.firebase.ktx.Firebase
import com.stslex.core.Mapper
import com.stslex.core.ValueState
import com.stslex.core_data_source.dao.NoteDao
-import com.stslex.core_firebase.abstraction.FirebaseAppInitialisationUtil
+import com.stslex.core_firebase.utils.abstraction.FirebaseAppInitialisationUtil
import com.stslex.core_model.common.PrimaryMapper
import com.stslex.core_model.model.NoteEntity
import com.stslex.core_model.transformer.TransformerEqualTypeValues
-import com.stslex.core_remote_data_source.service.abstraction.FirebaseNotesService
+import com.stslex.core_firebase.data.abstraction.FirebaseNotesService
import com.stslex.feature_profile.data.abstraction.ProfileRepository
import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.combineTransform
diff --git a/feature-profile/src/main/java/com/stslex/feature_profile/ui/ProfileRoute.kt b/feature-profile/src/main/java/com/stslex/feature_profile/ui/ProfileRoute.kt
index bb24abc..0f2f596 100644
--- a/feature-profile/src/main/java/com/stslex/feature_profile/ui/ProfileRoute.kt
+++ b/feature-profile/src/main/java/com/stslex/feature_profile/ui/ProfileRoute.kt
@@ -13,7 +13,7 @@ import androidx.compose.ui.platform.LocalContext
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.dp
import com.stslex.core.ValueState
-import com.stslex.core_resources.R.string
+import com.stslex.core_ui.R
import com.stslex.core_ui.theme.AppTheme
import com.stslex.feature_profile.ui.components.ButtonLabel
import com.stslex.feature_profile.ui.components.NotesSizeStateLabel
@@ -69,10 +69,12 @@ fun ProfileScreenContent(
modifier = Modifier
.padding(32.dp)
) {
- System.out.println("remoteNotesSize::" + remoteNotesSize.value)
- NotesSizeStateLabel(labelId = string.lb_local_notes, notesState = localNotesSize)
- NotesSizeStateLabel(labelId = string.lb_remote_notes, notesState = remoteNotesSize)
- NotesSizeStateLabel(labelId = string.lb_synced_notes, notesState = syncNoteSize)
+ NotesSizeStateLabel(labelId = R.string.lb_local_notes, notesState = localNotesSize)
+ NotesSizeStateLabel(
+ labelId = R.string.lb_remote_notes,
+ notesState = remoteNotesSize
+ )
+ NotesSizeStateLabel(labelId = R.string.lb_synced_notes, notesState = syncNoteSize)
ProfileActionButtons(
actionDownload = downloadNotes,
@@ -90,7 +92,7 @@ fun ProfileScreenContent(
openAuthPhoneNumber()
}
) {
- ButtonLabel(label = LocalContext.current.getString(string.b_sign_out))
+ ButtonLabel(label = LocalContext.current.getString(R.string.b_sign_out))
}
}
}
diff --git a/feature-profile/src/main/java/com/stslex/feature_profile/ui/ProfileViewModel.kt b/feature-profile/src/main/java/com/stslex/feature_profile/ui/ProfileViewModel.kt
index 13aef00..1426d25 100644
--- a/feature-profile/src/main/java/com/stslex/feature_profile/ui/ProfileViewModel.kt
+++ b/feature-profile/src/main/java/com/stslex/feature_profile/ui/ProfileViewModel.kt
@@ -3,7 +3,7 @@ package com.stslex.feature_profile.ui
import androidx.lifecycle.ViewModel
import androidx.lifecycle.viewModelScope
import com.stslex.core.ValueState
-import com.stslex.core_coroutines.AppDispatchers
+import com.stslex.core.AppDispatchers
import com.stslex.feature_profile.data.abstraction.ProfileRepository
import kotlinx.coroutines.Job
import kotlinx.coroutines.flow.*
diff --git a/feature-single-note/build.gradle.kts b/feature-single-note/build.gradle.kts
index d4cb0fc..d419fab 100644
--- a/feature-single-note/build.gradle.kts
+++ b/feature-single-note/build.gradle.kts
@@ -11,7 +11,6 @@ dependencies {
implementation(project(":core-navigation"))
implementation(project(":core-model"))
implementation(project(":core-local-data-source"))
- implementation(project(":core-coroutines"))
with(libs) {
implementation(koin.core)
diff --git a/feature-single-note/src/main/java/com/stslex/feature_single_note/ui/SingleNoteViewModel.kt b/feature-single-note/src/main/java/com/stslex/feature_single_note/ui/SingleNoteViewModel.kt
index ecf54f2..8dffb3d 100644
--- a/feature-single-note/src/main/java/com/stslex/feature_single_note/ui/SingleNoteViewModel.kt
+++ b/feature-single-note/src/main/java/com/stslex/feature_single_note/ui/SingleNoteViewModel.kt
@@ -4,7 +4,7 @@ import androidx.lifecycle.ViewModel
import androidx.lifecycle.viewModelScope
import com.stslex.core.Mapper
import com.stslex.core.ValueState
-import com.stslex.core_coroutines.AppDispatchers
+import com.stslex.core.AppDispatchers
import com.stslex.core_model.model.NoteEntity
import com.stslex.core_model.model.NoteUI
import com.stslex.feature_single_note.data.abstraction.SingleNoteRepository
diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml
index f806e97..d2fb8ff 100644
--- a/gradle/libs.versions.toml
+++ b/gradle/libs.versions.toml
@@ -27,7 +27,7 @@ robolectric = "4.8.1"
room = "2.5.0-alpha02"
shortcuts = "1.1.0-alpha01"
jacoco = "0.8.7"
-
+mockito = "4.5.1"
[libraries]
android-desugarJdkLibs = { module = "com.android.tools:desugar_jdk_libs", version.ref = "androidDesugarJdkLibs" }
android-gradlePlugin = { module = "com.android.tools.build:gradle", version.ref = "androidGradlePlugin" }
@@ -69,3 +69,4 @@ kotlinx-coroutines-android = { module = "org.jetbrains.kotlinx:kotlinx-coroutine
kotlinx-coroutines-test = { module = "org.jetbrains.kotlinx:kotlinx-coroutines-test", version.ref = "kotlinxCoroutines" }
leakcanary = { module = "com.squareup.leakcanary:leakcanary-android", version.ref = "leakcanary" }
robolectric = { module = "org.robolectric:robolectric", version.ref = "robolectric" }
+mockito-core = { module = "org.mockito:mockito-core", version.ref = "mockito" }
diff --git a/settings.gradle.kts b/settings.gradle.kts
index 4540b5e..1c0b9f0 100644
--- a/settings.gradle.kts
+++ b/settings.gradle.kts
@@ -29,11 +29,7 @@ include(":feature-single-note")
include(":core-local-data-source")
include(":feature-todo")
include(":core-model")
-include(":core-coroutines")
include(":feature-profile")
include(":core-firebase")
include(":feature-auth-phonenumber")
-include(":feature-auth-code")
-include(":core-firebase-auth")
-include(":core-remote-data-source")
-include(":core-resources")
+include(":feature-auth-code")
\ No newline at end of file