refactor: package rename from com.couplesconnect.app to app.closer, update build config and firebase setup

This commit is contained in:
null 2026-06-16 20:03:58 -05:00
parent e42de938e7
commit 84995641f3
167 changed files with 533 additions and 505 deletions

View File

@ -9,11 +9,11 @@ plugins {
} }
android { android {
namespace = "com.couplesconnect.app" namespace = "app.closer"
compileSdk = 35 compileSdk = 35
defaultConfig { defaultConfig {
applicationId = "couples.connect.dev" applicationId = "app.closer"
minSdk = 26 minSdk = 26
targetSdk = 35 targetSdk = 35
versionCode = 1 versionCode = 1

View File

@ -5,21 +5,21 @@
<uses-permission android:name="android.permission.POST_NOTIFICATIONS" /> <uses-permission android:name="android.permission.POST_NOTIFICATIONS" />
<application <application
android:name=".CouplesConnectApp" android:name=".CloserApp"
android:allowBackup="true" android:allowBackup="true"
android:dataExtractionRules="@xml/data_extraction_rules" android:dataExtractionRules="@xml/data_extraction_rules"
android:fullBackupContent="@xml/backup_rules" android:fullBackupContent="@xml/backup_rules"
android:icon="@mipmap/ic_launcher" android:icon="@mipmap/ic_launcher"
android:label="@string/app_name" android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round" android:roundIcon="@mipmap/ic_launcher_round"
android:theme="@style/Theme.CouplesConnect" android:theme="@style/Theme.Closer"
android:supportsRtl="true"> android:supportsRtl="true">
<activity <activity
android:name=".MainActivity" android:name=".MainActivity"
android:exported="true" android:exported="true"
android:windowSoftInputMode="adjustResize" android:windowSoftInputMode="adjustResize"
android:theme="@style/Theme.CouplesConnect"> android:theme="@style/Theme.Closer">
<intent-filter> <intent-filter>
<action android:name="android.intent.action.MAIN" /> <action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" /> <category android:name="android.intent.category.LAUNCHER" />

View File

@ -1,12 +1,12 @@
package com.couplesconnect.app package app.closer
import android.app.Application import android.app.Application
import com.couplesconnect.app.core.firebase.FirebaseInitializer import app.closer.core.firebase.FirebaseInitializer
import dagger.hilt.android.HiltAndroidApp import dagger.hilt.android.HiltAndroidApp
import javax.inject.Inject import javax.inject.Inject
@HiltAndroidApp @HiltAndroidApp
class CouplesConnectApp : Application() { class CloserApp : Application() {
@Inject lateinit var firebaseInitializer: FirebaseInitializer @Inject lateinit var firebaseInitializer: FirebaseInitializer

View File

@ -1,4 +1,4 @@
package com.couplesconnect.app package app.closer
import android.os.Bundle import android.os.Bundle
import androidx.activity.ComponentActivity import androidx.activity.ComponentActivity
@ -7,8 +7,8 @@ import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.material3.MaterialTheme import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Surface import androidx.compose.material3.Surface
import androidx.compose.ui.Modifier import androidx.compose.ui.Modifier
import com.couplesconnect.app.core.navigation.AppNavigation import app.closer.core.navigation.AppNavigation
import com.couplesconnect.app.ui.theme.CouplesConnectTheme import app.closer.ui.theme.CloserTheme
import dagger.hilt.android.AndroidEntryPoint import dagger.hilt.android.AndroidEntryPoint
@AndroidEntryPoint @AndroidEntryPoint
@ -16,7 +16,7 @@ class MainActivity : ComponentActivity() {
override fun onCreate(savedInstanceState: Bundle?) { override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState) super.onCreate(savedInstanceState)
setContent { setContent {
CouplesConnectTheme { CloserTheme {
Surface( Surface(
modifier = Modifier.fillMaxSize(), modifier = Modifier.fillMaxSize(),
color = MaterialTheme.colorScheme.background color = MaterialTheme.colorScheme.background

View File

@ -1,4 +1,4 @@
package com.couplesconnect.app.core.analytics package app.closer.core.analytics
interface AnalyticsTracker { interface AnalyticsTracker {
fun trackScreenViewed(screenName: String) fun trackScreenViewed(screenName: String)

View File

@ -1,4 +1,4 @@
package com.couplesconnect.app.core.analytics package app.closer.core.analytics
import android.os.Bundle import android.os.Bundle
import com.google.firebase.analytics.FirebaseAnalytics import com.google.firebase.analytics.FirebaseAnalytics

View File

@ -1,4 +1,4 @@
package com.couplesconnect.app.core.billing package app.closer.core.billing
import javax.inject.Inject import javax.inject.Inject
import javax.inject.Singleton import javax.inject.Singleton

View File

@ -1,4 +1,4 @@
package com.couplesconnect.app.core.crash package app.closer.core.crash
interface CrashReporter { interface CrashReporter {
fun setUserId(uid: String) fun setUserId(uid: String)

View File

@ -1,4 +1,4 @@
package com.couplesconnect.app.core.crash package app.closer.core.crash
import com.google.firebase.crashlytics.FirebaseCrashlytics import com.google.firebase.crashlytics.FirebaseCrashlytics
import javax.inject.Inject import javax.inject.Inject

View File

@ -1,4 +1,4 @@
package com.couplesconnect.app.core.feature package app.closer.core.feature
/** /**
* Feature flag definition. * Feature flag definition.

View File

@ -1,4 +1,4 @@
package com.couplesconnect.app.core.feature package app.closer.core.feature
/** /**
* Feature implementation priority. * Feature implementation priority.

View File

@ -1,4 +1,4 @@
package com.couplesconnect.app.core.feature package app.closer.core.feature
/** /**
* Central registry for all feature flags. * Central registry for all feature flags.

View File

@ -1,4 +1,4 @@
package com.couplesconnect.app.core.feature package app.closer.core.feature
/** /**
* Feature billing status. * Feature billing status.

View File

@ -1,6 +1,6 @@
package com.couplesconnect.app.core.firebase package app.closer.core.firebase
import com.couplesconnect.app.BuildConfig // generated by buildFeatures { buildConfig = true } import app.closer.BuildConfig // generated by buildFeatures { buildConfig = true }
import com.google.firebase.appcheck.FirebaseAppCheck import com.google.firebase.appcheck.FirebaseAppCheck
import com.google.firebase.appcheck.playintegrity.PlayIntegrityAppCheckProviderFactory import com.google.firebase.appcheck.playintegrity.PlayIntegrityAppCheckProviderFactory
import javax.inject.Inject import javax.inject.Inject

View File

@ -1,4 +1,4 @@
package com.couplesconnect.app.core.navigation package app.closer.core.navigation
import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.padding
import androidx.compose.material.icons.Icons import androidx.compose.material.icons.Icons
@ -29,37 +29,37 @@ import androidx.navigation.compose.composable
import androidx.navigation.compose.rememberNavController import androidx.navigation.compose.rememberNavController
import androidx.navigation.NavGraph.Companion.findStartDestination import androidx.navigation.NavGraph.Companion.findStartDestination
import androidx.navigation.navArgument import androidx.navigation.navArgument
import com.couplesconnect.app.ui.auth.ForgotPasswordScreen import app.closer.ui.auth.ForgotPasswordScreen
import com.couplesconnect.app.ui.answers.AnswerHistoryScreen import app.closer.ui.answers.AnswerHistoryScreen
import com.couplesconnect.app.ui.answers.AnswerRevealScreen import app.closer.ui.answers.AnswerRevealScreen
import com.couplesconnect.app.ui.auth.LoginScreen import app.closer.ui.auth.LoginScreen
import com.couplesconnect.app.ui.auth.SignUpScreen import app.closer.ui.auth.SignUpScreen
import com.couplesconnect.app.ui.home.HomeScreen import app.closer.ui.home.HomeScreen
import com.couplesconnect.app.ui.home.PartnerHomeScreen import app.closer.ui.home.PartnerHomeScreen
import com.couplesconnect.app.ui.onboarding.CreateProfileScreen import app.closer.ui.onboarding.CreateProfileScreen
import com.couplesconnect.app.ui.onboarding.OnboardingScreen import app.closer.ui.onboarding.OnboardingScreen
import com.couplesconnect.app.ui.pairing.AcceptInviteScreen import app.closer.ui.pairing.AcceptInviteScreen
import com.couplesconnect.app.ui.pairing.CreateInviteScreen import app.closer.ui.pairing.CreateInviteScreen
import com.couplesconnect.app.ui.pairing.EmailInviteScreen import app.closer.ui.pairing.EmailInviteScreen
import com.couplesconnect.app.ui.pairing.InviteConfirmScreen import app.closer.ui.pairing.InviteConfirmScreen
import com.couplesconnect.app.ui.paywall.PaywallScreen import app.closer.ui.paywall.PaywallScreen
import com.couplesconnect.app.ui.questions.DailyQuestionScreen import app.closer.ui.questions.DailyQuestionScreen
import com.couplesconnect.app.ui.questions.QuestionCategoryScreen import app.closer.ui.questions.QuestionCategoryScreen
import com.couplesconnect.app.ui.questions.QuestionComposerScreen import app.closer.ui.questions.QuestionComposerScreen
import com.couplesconnect.app.ui.questions.QuestionPackLibraryScreen import app.closer.ui.questions.QuestionPackLibraryScreen
import com.couplesconnect.app.ui.questions.QuestionThreadScreen import app.closer.ui.questions.QuestionThreadScreen
import com.couplesconnect.app.ui.settings.AccountScreen import app.closer.ui.settings.AccountScreen
import com.couplesconnect.app.ui.settings.DeleteAccountScreen import app.closer.ui.settings.DeleteAccountScreen
import com.couplesconnect.app.ui.settings.NotificationSettingsScreen import app.closer.ui.settings.NotificationSettingsScreen
import com.couplesconnect.app.ui.settings.PrivacyScreen import app.closer.ui.settings.PrivacyScreen
import com.couplesconnect.app.ui.settings.RelationshipSettingsScreen import app.closer.ui.settings.RelationshipSettingsScreen
import com.couplesconnect.app.ui.settings.SettingsScreen import app.closer.ui.settings.SettingsScreen
import com.couplesconnect.app.ui.settings.SubscriptionScreen import app.closer.ui.settings.SubscriptionScreen
import com.couplesconnect.app.ui.wheel.CategoryPickerScreen import app.closer.ui.wheel.CategoryPickerScreen
import com.couplesconnect.app.ui.wheel.SpinWheelScreen import app.closer.ui.wheel.SpinWheelScreen
import com.couplesconnect.app.ui.wheel.WheelCompleteScreen import app.closer.ui.wheel.WheelCompleteScreen
import com.couplesconnect.app.ui.wheel.WheelHistoryScreen import app.closer.ui.wheel.WheelHistoryScreen
import com.couplesconnect.app.ui.wheel.WheelSessionScreen import app.closer.ui.wheel.WheelSessionScreen
@OptIn(ExperimentalMaterial3Api::class) @OptIn(ExperimentalMaterial3Api::class)
@Composable @Composable

View File

@ -1,4 +1,4 @@
package com.couplesconnect.app.core.navigation package app.closer.core.navigation
import android.net.Uri import android.net.Uri

View File

@ -1,4 +1,4 @@
package com.couplesconnect.app.core.navigation package app.closer.core.navigation
object ExternalLinks { object ExternalLinks {
const val PRIVACY_POLICY = "https://couplesconnect.app/privacy" const val PRIVACY_POLICY = "https://couplesconnect.app/privacy"

View File

@ -1,7 +1,7 @@
package com.couplesconnect.app.core.notifications package app.closer.core.notifications
import com.couplesconnect.app.domain.repository.AuthRepository import app.closer.domain.repository.AuthRepository
import com.couplesconnect.app.domain.repository.UserRepository import app.closer.domain.repository.UserRepository
import com.google.firebase.messaging.FirebaseMessagingService import com.google.firebase.messaging.FirebaseMessagingService
import com.google.firebase.messaging.RemoteMessage import com.google.firebase.messaging.RemoteMessage
import dagger.hilt.android.AndroidEntryPoint import dagger.hilt.android.AndroidEntryPoint

View File

@ -1,4 +1,4 @@
package com.couplesconnect.app.core.notifications package app.closer.core.notifications
import android.app.NotificationChannel import android.app.NotificationChannel
import android.app.NotificationManager import android.app.NotificationManager
@ -7,8 +7,8 @@ import android.content.Context
import android.content.Intent import android.content.Intent
import androidx.core.app.NotificationCompat import androidx.core.app.NotificationCompat
import androidx.core.app.NotificationManagerCompat import androidx.core.app.NotificationManagerCompat
import com.couplesconnect.app.MainActivity import app.closer.MainActivity
import com.couplesconnect.app.R import app.closer.R
object NotificationHelper { object NotificationHelper {

View File

@ -1,11 +1,11 @@
package com.couplesconnect.app.data.local package app.closer.data.local
import androidx.room.Database import androidx.room.Database
import androidx.room.RoomDatabase import androidx.room.RoomDatabase
import androidx.room.TypeConverters import androidx.room.TypeConverters
import com.couplesconnect.app.data.local.converters.Converters import app.closer.data.local.converters.Converters
import com.couplesconnect.app.data.local.entity.CategoryEntity import app.closer.data.local.entity.CategoryEntity
import com.couplesconnect.app.data.local.entity.QuestionEntity import app.closer.data.local.entity.QuestionEntity
@Database( @Database(
entities = [QuestionEntity::class, CategoryEntity::class], entities = [QuestionEntity::class, CategoryEntity::class],

View File

@ -1,11 +1,11 @@
package com.couplesconnect.app.data.local package app.closer.data.local
import androidx.room.Dao import androidx.room.Dao
import androidx.room.Delete import androidx.room.Delete
import androidx.room.Insert import androidx.room.Insert
import androidx.room.OnConflictStrategy import androidx.room.OnConflictStrategy
import androidx.room.Query import androidx.room.Query
import com.couplesconnect.app.data.local.entity.CategoryEntity import app.closer.data.local.entity.CategoryEntity
@Dao @Dao
interface CategoryDao { interface CategoryDao {

View File

@ -1,11 +1,11 @@
package com.couplesconnect.app.data.local package app.closer.data.local
import androidx.room.Dao import androidx.room.Dao
import androidx.room.Delete import androidx.room.Delete
import androidx.room.Insert import androidx.room.Insert
import androidx.room.OnConflictStrategy import androidx.room.OnConflictStrategy
import androidx.room.Query import androidx.room.Query
import com.couplesconnect.app.data.local.entity.QuestionEntity import app.closer.data.local.entity.QuestionEntity
@Dao @Dao
interface QuestionDao { interface QuestionDao {

View File

@ -1,11 +1,11 @@
package com.couplesconnect.app.data.local package app.closer.data.local
import androidx.datastore.core.DataStore import androidx.datastore.core.DataStore
import androidx.datastore.preferences.core.Preferences import androidx.datastore.preferences.core.Preferences
import androidx.datastore.preferences.core.booleanPreferencesKey import androidx.datastore.preferences.core.booleanPreferencesKey
import androidx.datastore.preferences.core.edit import androidx.datastore.preferences.core.edit
import com.couplesconnect.app.domain.repository.AppSettings import app.closer.domain.repository.AppSettings
import com.couplesconnect.app.domain.repository.SettingsRepository import app.closer.domain.repository.SettingsRepository
import kotlinx.coroutines.flow.Flow import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.map import kotlinx.coroutines.flow.map
import javax.inject.Inject import javax.inject.Inject

View File

@ -1,4 +1,4 @@
package com.couplesconnect.app.data.local.converters package app.closer.data.local.converters
import androidx.room.TypeConverter import androidx.room.TypeConverter

View File

@ -1,4 +1,4 @@
package com.couplesconnect.app.data.local.entity package app.closer.data.local.entity
import androidx.room.ColumnInfo import androidx.room.ColumnInfo
import androidx.room.Entity import androidx.room.Entity

View File

@ -1,4 +1,4 @@
package com.couplesconnect.app.data.local.entity package app.closer.data.local.entity
import androidx.room.ColumnInfo import androidx.room.ColumnInfo
import androidx.room.Entity import androidx.room.Entity

View File

@ -1,18 +1,18 @@
package com.couplesconnect.app.data.local.mapper package app.closer.data.local.mapper
import com.couplesconnect.app.data.local.entity.QuestionEntity import app.closer.data.local.entity.QuestionEntity
import com.couplesconnect.app.data.local.entity.CategoryEntity import app.closer.data.local.entity.CategoryEntity
import com.couplesconnect.app.domain.model.ChoiceAnswerConfig import app.closer.domain.model.ChoiceAnswerConfig
import com.couplesconnect.app.domain.model.ChoiceAnswerConfigImpl import app.closer.domain.model.ChoiceAnswerConfigImpl
import com.couplesconnect.app.domain.model.ChoiceOption import app.closer.domain.model.ChoiceOption
import com.couplesconnect.app.domain.model.Question import app.closer.domain.model.Question
import com.couplesconnect.app.domain.model.QuestionCategory import app.closer.domain.model.QuestionCategory
import com.couplesconnect.app.domain.model.ScaleAnswerConfig import app.closer.domain.model.ScaleAnswerConfig
import com.couplesconnect.app.domain.model.ScaleAnswerConfigImpl import app.closer.domain.model.ScaleAnswerConfigImpl
import com.couplesconnect.app.domain.model.ThisOrThatAnswerConfig import app.closer.domain.model.ThisOrThatAnswerConfig
import com.couplesconnect.app.domain.model.ThisOrThatAnswerConfigImpl import app.closer.domain.model.ThisOrThatAnswerConfigImpl
import com.couplesconnect.app.domain.model.WrittenAnswerConfig import app.closer.domain.model.WrittenAnswerConfig
import com.couplesconnect.app.domain.model.WrittenAnswerConfigImpl import app.closer.domain.model.WrittenAnswerConfigImpl
import org.json.JSONArray import org.json.JSONArray
import org.json.JSONObject import org.json.JSONObject

View File

@ -1,6 +1,6 @@
package com.couplesconnect.app.data.questions package app.closer.data.questions
import com.couplesconnect.app.domain.model.* import app.closer.domain.model.*
import org.json.JSONArray import org.json.JSONArray
import org.json.JSONObject import org.json.JSONObject

View File

@ -1,6 +1,6 @@
package com.couplesconnect.app.data.remote package app.closer.data.remote
import com.couplesconnect.app.domain.model.AuthState import app.closer.domain.model.AuthState
import com.google.firebase.auth.FirebaseAuth import com.google.firebase.auth.FirebaseAuth
import kotlinx.coroutines.channels.awaitClose import kotlinx.coroutines.channels.awaitClose
import kotlinx.coroutines.flow.Flow import kotlinx.coroutines.flow.Flow

View File

@ -1,6 +1,6 @@
package com.couplesconnect.app.data.remote package app.closer.data.remote
import com.couplesconnect.app.domain.model.Couple import app.closer.domain.model.Couple
import com.google.firebase.firestore.DocumentSnapshot import com.google.firebase.firestore.DocumentSnapshot
import com.google.firebase.firestore.FirebaseFirestore import com.google.firebase.firestore.FirebaseFirestore
import com.google.firebase.firestore.SetOptions import com.google.firebase.firestore.SetOptions

View File

@ -1,6 +1,6 @@
package com.couplesconnect.app.data.remote package app.closer.data.remote
import com.couplesconnect.app.domain.model.Invite import app.closer.domain.model.Invite
import com.google.firebase.firestore.FirebaseFirestore import com.google.firebase.firestore.FirebaseFirestore
import com.google.firebase.firestore.SetOptions import com.google.firebase.firestore.SetOptions
import kotlinx.coroutines.suspendCancellableCoroutine import kotlinx.coroutines.suspendCancellableCoroutine

View File

@ -1,10 +1,10 @@
package com.couplesconnect.app.data.remote package app.closer.data.remote
import com.couplesconnect.app.domain.model.QuestionAnswer import app.closer.domain.model.QuestionAnswer
import com.couplesconnect.app.domain.model.QuestionMessage import app.closer.domain.model.QuestionMessage
import com.couplesconnect.app.domain.model.QuestionReaction import app.closer.domain.model.QuestionReaction
import com.couplesconnect.app.domain.model.QuestionThread import app.closer.domain.model.QuestionThread
import com.couplesconnect.app.domain.model.QuestionThreadStatus import app.closer.domain.model.QuestionThreadStatus
import com.google.firebase.firestore.DocumentSnapshot import com.google.firebase.firestore.DocumentSnapshot
import com.google.firebase.firestore.FieldValue import com.google.firebase.firestore.FieldValue
import com.google.firebase.firestore.FirebaseFirestore import com.google.firebase.firestore.FirebaseFirestore

View File

@ -1,6 +1,6 @@
package com.couplesconnect.app.data.remote package app.closer.data.remote
import com.couplesconnect.app.domain.model.User import app.closer.domain.model.User
import com.google.firebase.firestore.FirebaseFirestore import com.google.firebase.firestore.FirebaseFirestore
import com.google.firebase.firestore.SetOptions import com.google.firebase.firestore.SetOptions
import kotlinx.coroutines.suspendCancellableCoroutine import kotlinx.coroutines.suspendCancellableCoroutine

View File

@ -1,9 +1,9 @@
package com.couplesconnect.app.data.repository package app.closer.data.repository
import com.couplesconnect.app.data.remote.FirestoreCoupleDataSource import app.closer.data.remote.FirestoreCoupleDataSource
import com.couplesconnect.app.data.remote.FirestoreUserDataSource import app.closer.data.remote.FirestoreUserDataSource
import com.couplesconnect.app.domain.model.Couple import app.closer.domain.model.Couple
import com.couplesconnect.app.domain.repository.CoupleRepository import app.closer.domain.repository.CoupleRepository
import javax.inject.Inject import javax.inject.Inject
import javax.inject.Singleton import javax.inject.Singleton

View File

@ -1,8 +1,8 @@
package com.couplesconnect.app.data.repository package app.closer.data.repository
import com.couplesconnect.app.domain.model.Question import app.closer.domain.model.Question
import com.couplesconnect.app.domain.model.QuestionCategory import app.closer.domain.model.QuestionCategory
import com.couplesconnect.app.domain.repository.QuestionRepository import app.closer.domain.repository.QuestionRepository
class FakeQuestionRepository : QuestionRepository { class FakeQuestionRepository : QuestionRepository {
override suspend fun getDailyQuestion(): Question? = null override suspend fun getDailyQuestion(): Question? = null

View File

@ -1,8 +1,8 @@
package com.couplesconnect.app.data.repository package app.closer.data.repository
import com.couplesconnect.app.data.remote.FirebaseAuthDataSource import app.closer.data.remote.FirebaseAuthDataSource
import com.couplesconnect.app.domain.model.AuthState import app.closer.domain.model.AuthState
import com.couplesconnect.app.domain.repository.AuthRepository import app.closer.domain.repository.AuthRepository
import kotlinx.coroutines.flow.Flow import kotlinx.coroutines.flow.Flow
import javax.inject.Inject import javax.inject.Inject
import javax.inject.Singleton import javax.inject.Singleton

View File

@ -1,8 +1,8 @@
package com.couplesconnect.app.data.repository package app.closer.data.repository
import com.couplesconnect.app.data.remote.FirestoreInviteDataSource import app.closer.data.remote.FirestoreInviteDataSource
import com.couplesconnect.app.domain.model.Invite import app.closer.domain.model.Invite
import com.couplesconnect.app.domain.repository.InviteRepository import app.closer.domain.repository.InviteRepository
import javax.inject.Inject import javax.inject.Inject
import javax.inject.Singleton import javax.inject.Singleton

View File

@ -1,7 +1,7 @@
package com.couplesconnect.app.data.repository package app.closer.data.repository
import com.couplesconnect.app.domain.model.QuestionSession import app.closer.domain.model.QuestionSession
import com.couplesconnect.app.domain.repository.QuestionSessionRepository import app.closer.domain.repository.QuestionSessionRepository
import com.google.firebase.firestore.FirebaseFirestore import com.google.firebase.firestore.FirebaseFirestore
import kotlinx.coroutines.tasks.await import kotlinx.coroutines.tasks.await
import javax.inject.Inject import javax.inject.Inject

View File

@ -1,13 +1,13 @@
package com.couplesconnect.app.data.repository package app.closer.data.repository
import com.couplesconnect.app.data.remote.FirestoreQuestionThreadDataSource import app.closer.data.remote.FirestoreQuestionThreadDataSource
import com.couplesconnect.app.domain.model.QuestionAnswer import app.closer.domain.model.QuestionAnswer
import com.couplesconnect.app.domain.model.QuestionMessage import app.closer.domain.model.QuestionMessage
import com.couplesconnect.app.domain.model.QuestionReaction import app.closer.domain.model.QuestionReaction
import com.couplesconnect.app.domain.model.QuestionThread import app.closer.domain.model.QuestionThread
import com.couplesconnect.app.domain.model.QuestionThreadStatus import app.closer.domain.model.QuestionThreadStatus
import com.couplesconnect.app.domain.repository.CoupleRepository import app.closer.domain.repository.CoupleRepository
import com.couplesconnect.app.domain.repository.QuestionThreadRepository import app.closer.domain.repository.QuestionThreadRepository
import kotlinx.coroutines.flow.Flow import kotlinx.coroutines.flow.Flow
import javax.inject.Inject import javax.inject.Inject
import javax.inject.Singleton import javax.inject.Singleton

View File

@ -1,12 +1,12 @@
package com.couplesconnect.app.data.repository package app.closer.data.repository
import com.couplesconnect.app.data.local.CategoryDao import app.closer.data.local.CategoryDao
import com.couplesconnect.app.data.local.QuestionDao import app.closer.data.local.QuestionDao
import com.couplesconnect.app.data.local.mapper.toQuestion import app.closer.data.local.mapper.toQuestion
import com.couplesconnect.app.data.local.mapper.toQuestionCategory import app.closer.data.local.mapper.toQuestionCategory
import com.couplesconnect.app.domain.model.Question import app.closer.domain.model.Question
import com.couplesconnect.app.domain.model.QuestionCategory import app.closer.domain.model.QuestionCategory
import com.couplesconnect.app.domain.repository.QuestionRepository import app.closer.domain.repository.QuestionRepository
import javax.inject.Inject import javax.inject.Inject
import javax.inject.Singleton import javax.inject.Singleton

View File

@ -1,8 +1,8 @@
package com.couplesconnect.app.data.repository package app.closer.data.repository
import android.content.Context import android.content.Context
import com.couplesconnect.app.domain.model.LocalAnswer import app.closer.domain.model.LocalAnswer
import com.couplesconnect.app.domain.repository.LocalAnswerRepository import app.closer.domain.repository.LocalAnswerRepository
import dagger.hilt.android.qualifiers.ApplicationContext import dagger.hilt.android.qualifiers.ApplicationContext
import javax.inject.Inject import javax.inject.Inject
import javax.inject.Singleton import javax.inject.Singleton

View File

@ -1,8 +1,8 @@
package com.couplesconnect.app.data.repository package app.closer.data.repository
import com.couplesconnect.app.data.remote.FirestoreUserDataSource import app.closer.data.remote.FirestoreUserDataSource
import com.couplesconnect.app.domain.model.User import app.closer.domain.model.User
import com.couplesconnect.app.domain.repository.UserRepository import app.closer.domain.repository.UserRepository
import javax.inject.Inject import javax.inject.Inject
import javax.inject.Singleton import javax.inject.Singleton

View File

@ -1,4 +1,4 @@
package com.couplesconnect.app.di package app.closer.di
import android.content.Context import android.content.Context
import androidx.datastore.core.DataStore import androidx.datastore.core.DataStore
@ -6,7 +6,7 @@ import androidx.datastore.preferences.core.Preferences
import androidx.datastore.preferences.preferencesDataStoreFile import androidx.datastore.preferences.preferencesDataStoreFile
import androidx.datastore.preferences.core.PreferenceDataStoreFactory import androidx.datastore.preferences.core.PreferenceDataStoreFactory
import androidx.room.Room import androidx.room.Room
import com.couplesconnect.app.data.local.AppDatabase import app.closer.data.local.AppDatabase
import com.google.firebase.firestore.FirebaseFirestore import com.google.firebase.firestore.FirebaseFirestore
import dagger.Module import dagger.Module
import dagger.Provides import dagger.Provides

View File

@ -1,10 +1,10 @@
package com.couplesconnect.app.di package app.closer.di
import android.content.Context import android.content.Context
import com.couplesconnect.app.core.analytics.AnalyticsTracker import app.closer.core.analytics.AnalyticsTracker
import com.couplesconnect.app.core.analytics.FirebaseAnalyticsTracker import app.closer.core.analytics.FirebaseAnalyticsTracker
import com.couplesconnect.app.core.crash.CrashReporter import app.closer.core.crash.CrashReporter
import com.couplesconnect.app.core.crash.FirebaseCrashReporter import app.closer.core.crash.FirebaseCrashReporter
import com.google.firebase.analytics.FirebaseAnalytics import com.google.firebase.analytics.FirebaseAnalytics
import dagger.Binds import dagger.Binds
import dagger.Module import dagger.Module

View File

@ -1,25 +1,25 @@
package com.couplesconnect.app.di package app.closer.di
import com.couplesconnect.app.core.billing.EntitlementChecker import app.closer.core.billing.EntitlementChecker
import com.couplesconnect.app.core.billing.FakeEntitlementChecker import app.closer.core.billing.FakeEntitlementChecker
import com.couplesconnect.app.data.local.SettingsDataStore import app.closer.data.local.SettingsDataStore
import com.couplesconnect.app.data.repository.CoupleRepositoryImpl import app.closer.data.repository.CoupleRepositoryImpl
import com.couplesconnect.app.data.repository.QuestionSessionRepositoryImpl import app.closer.data.repository.QuestionSessionRepositoryImpl
import com.couplesconnect.app.data.repository.FirebaseAuthRepositoryImpl import app.closer.data.repository.FirebaseAuthRepositoryImpl
import com.couplesconnect.app.data.repository.InviteRepositoryImpl import app.closer.data.repository.InviteRepositoryImpl
import com.couplesconnect.app.data.repository.SharedPreferencesLocalAnswerRepository import app.closer.data.repository.SharedPreferencesLocalAnswerRepository
import com.couplesconnect.app.data.repository.RoomQuestionRepository import app.closer.data.repository.RoomQuestionRepository
import com.couplesconnect.app.data.repository.QuestionThreadRepositoryImpl import app.closer.data.repository.QuestionThreadRepositoryImpl
import com.couplesconnect.app.data.repository.UserRepositoryImpl import app.closer.data.repository.UserRepositoryImpl
import com.couplesconnect.app.domain.repository.AuthRepository import app.closer.domain.repository.AuthRepository
import com.couplesconnect.app.domain.repository.CoupleRepository import app.closer.domain.repository.CoupleRepository
import com.couplesconnect.app.domain.repository.QuestionSessionRepository import app.closer.domain.repository.QuestionSessionRepository
import com.couplesconnect.app.domain.repository.InviteRepository import app.closer.domain.repository.InviteRepository
import com.couplesconnect.app.domain.repository.LocalAnswerRepository import app.closer.domain.repository.LocalAnswerRepository
import com.couplesconnect.app.domain.repository.QuestionRepository import app.closer.domain.repository.QuestionRepository
import com.couplesconnect.app.domain.repository.QuestionThreadRepository import app.closer.domain.repository.QuestionThreadRepository
import com.couplesconnect.app.domain.repository.SettingsRepository import app.closer.domain.repository.SettingsRepository
import com.couplesconnect.app.domain.repository.UserRepository import app.closer.domain.repository.UserRepository
import dagger.Binds import dagger.Binds
import dagger.Module import dagger.Module
import dagger.hilt.InstallIn import dagger.hilt.InstallIn

View File

@ -1,4 +1,4 @@
package com.couplesconnect.app.domain.model package app.closer.domain.model
data class Answer( data class Answer(
val id: String = "", val id: String = "",

View File

@ -1,4 +1,4 @@
package com.couplesconnect.app.domain.model package app.closer.domain.model
sealed class AuthState { sealed class AuthState {
object Loading : AuthState() object Loading : AuthState()

View File

@ -1,4 +1,4 @@
package com.couplesconnect.app.domain.model package app.closer.domain.model
data class Couple( data class Couple(
val id: String = "", val id: String = "",

View File

@ -1,4 +1,4 @@
package com.couplesconnect.app.domain.model package app.closer.domain.model
data class Entitlement( data class Entitlement(
val id: String = "", val id: String = "",

View File

@ -1,4 +1,4 @@
package com.couplesconnect.app.domain.model package app.closer.domain.model
data class Invite( data class Invite(
val id: String = "", val id: String = "",

View File

@ -1,4 +1,4 @@
package com.couplesconnect.app.domain.model package app.closer.domain.model
enum class InviteStatus { enum class InviteStatus {
PENDING, PENDING,

View File

@ -1,4 +1,4 @@
package com.couplesconnect.app.domain.model package app.closer.domain.model
data class LocalAnswer( data class LocalAnswer(
val questionId: String, val questionId: String,

View File

@ -1,4 +1,4 @@
package com.couplesconnect.app.domain.model package app.closer.domain.model
// Answer config for different question types // Answer config for different question types
data class WrittenAnswerConfig( data class WrittenAnswerConfig(

View File

@ -1,4 +1,4 @@
package com.couplesconnect.app.domain.model package app.closer.domain.model
data class QuestionAnswer( data class QuestionAnswer(
val userId: String = "", val userId: String = "",

View File

@ -1,4 +1,4 @@
package com.couplesconnect.app.domain.model package app.closer.domain.model
data class QuestionCategory( data class QuestionCategory(
val id: String = "", val id: String = "",

View File

@ -1,4 +1,4 @@
package com.couplesconnect.app.domain.model package app.closer.domain.model
data class QuestionMessage( data class QuestionMessage(
val id: String = "", val id: String = "",

View File

@ -1,4 +1,4 @@
package com.couplesconnect.app.domain.model package app.closer.domain.model
data class QuestionPack( data class QuestionPack(
val id: String = "", val id: String = "",

View File

@ -1,4 +1,4 @@
package com.couplesconnect.app.domain.model package app.closer.domain.model
data class QuestionReaction( data class QuestionReaction(
val id: String = "", val id: String = "",

View File

@ -1,4 +1,4 @@
package com.couplesconnect.app.domain.model package app.closer.domain.model
data class QuestionSession( data class QuestionSession(
val id: String = "", val id: String = "",

View File

@ -1,4 +1,4 @@
package com.couplesconnect.app.domain.model package app.closer.domain.model
enum class QuestionSessionStatus { enum class QuestionSessionStatus {
ACTIVE, ACTIVE,

View File

@ -1,4 +1,4 @@
package com.couplesconnect.app.domain.model package app.closer.domain.model
data class QuestionThread( data class QuestionThread(
val id: String = "", val id: String = "",

View File

@ -1,4 +1,4 @@
package com.couplesconnect.app.domain.model package app.closer.domain.model
data class User( data class User(
val id: String = "", val id: String = "",

View File

@ -1,6 +1,6 @@
package com.couplesconnect.app.domain.repository package app.closer.domain.repository
import com.couplesconnect.app.domain.model.AuthState import app.closer.domain.model.AuthState
import kotlinx.coroutines.flow.Flow import kotlinx.coroutines.flow.Flow
interface AuthRepository { interface AuthRepository {

View File

@ -1,6 +1,6 @@
package com.couplesconnect.app.domain.repository package app.closer.domain.repository
import com.couplesconnect.app.domain.model.Couple import app.closer.domain.model.Couple
interface CoupleRepository { interface CoupleRepository {
suspend fun getCoupleForUser(userId: String): Couple? suspend fun getCoupleForUser(userId: String): Couple?

View File

@ -1,6 +1,6 @@
package com.couplesconnect.app.domain.repository package app.closer.domain.repository
import com.couplesconnect.app.domain.model.Invite import app.closer.domain.model.Invite
interface InviteRepository { interface InviteRepository {
suspend fun createInvite(inviterUserId: String): Result<String> suspend fun createInvite(inviterUserId: String): Result<String>

View File

@ -1,6 +1,6 @@
package com.couplesconnect.app.domain.repository package app.closer.domain.repository
import com.couplesconnect.app.domain.model.LocalAnswer import app.closer.domain.model.LocalAnswer
import kotlinx.coroutines.flow.Flow import kotlinx.coroutines.flow.Flow
interface LocalAnswerRepository { interface LocalAnswerRepository {

View File

@ -1,7 +1,7 @@
package com.couplesconnect.app.domain.repository package app.closer.domain.repository
import com.couplesconnect.app.domain.model.Question import app.closer.domain.model.Question
import com.couplesconnect.app.domain.model.QuestionCategory import app.closer.domain.model.QuestionCategory
interface QuestionRepository { interface QuestionRepository {
suspend fun getDailyQuestion(): Question? suspend fun getDailyQuestion(): Question?

View File

@ -1,6 +1,6 @@
package com.couplesconnect.app.domain.repository package app.closer.domain.repository
import com.couplesconnect.app.domain.model.QuestionSession import app.closer.domain.model.QuestionSession
interface QuestionSessionRepository { interface QuestionSessionRepository {
suspend fun saveSession(session: QuestionSession): Result<Unit> suspend fun saveSession(session: QuestionSession): Result<Unit>

View File

@ -1,9 +1,9 @@
package com.couplesconnect.app.domain.repository package app.closer.domain.repository
import com.couplesconnect.app.domain.model.QuestionAnswer import app.closer.domain.model.QuestionAnswer
import com.couplesconnect.app.domain.model.QuestionMessage import app.closer.domain.model.QuestionMessage
import com.couplesconnect.app.domain.model.QuestionReaction import app.closer.domain.model.QuestionReaction
import com.couplesconnect.app.domain.model.QuestionThread import app.closer.domain.model.QuestionThread
import kotlinx.coroutines.flow.Flow import kotlinx.coroutines.flow.Flow
interface QuestionThreadRepository { interface QuestionThreadRepository {

View File

@ -1,4 +1,4 @@
package com.couplesconnect.app.domain.repository package app.closer.domain.repository
import kotlinx.coroutines.flow.Flow import kotlinx.coroutines.flow.Flow

View File

@ -1,6 +1,6 @@
package com.couplesconnect.app.domain.repository package app.closer.domain.repository
import com.couplesconnect.app.domain.model.User import app.closer.domain.model.User
interface UserRepository { interface UserRepository {
suspend fun getUser(uid: String): User? suspend fun getUser(uid: String): User?

View File

@ -1,4 +1,4 @@
package com.couplesconnect.app.ui.answers package app.closer.ui.answers
import androidx.compose.foundation.background import androidx.compose.foundation.background
import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Arrangement
@ -37,10 +37,10 @@ import androidx.compose.ui.text.style.TextOverflow
import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.dp
import androidx.hilt.navigation.compose.hiltViewModel import androidx.hilt.navigation.compose.hiltViewModel
import com.couplesconnect.app.core.navigation.AppRoute import app.closer.core.navigation.AppRoute
import com.couplesconnect.app.domain.model.LocalAnswer import app.closer.domain.model.LocalAnswer
import com.couplesconnect.app.ui.components.EmptyState import app.closer.ui.components.EmptyState
import com.couplesconnect.app.ui.questions.displayCategoryName import app.closer.ui.questions.displayCategoryName
@Composable @Composable
fun AnswerHistoryScreen( fun AnswerHistoryScreen(

View File

@ -1,9 +1,9 @@
package com.couplesconnect.app.ui.answers package app.closer.ui.answers
import androidx.lifecycle.ViewModel import androidx.lifecycle.ViewModel
import androidx.lifecycle.viewModelScope import androidx.lifecycle.viewModelScope
import com.couplesconnect.app.domain.model.LocalAnswer import app.closer.domain.model.LocalAnswer
import com.couplesconnect.app.domain.repository.LocalAnswerRepository import app.closer.domain.repository.LocalAnswerRepository
import dagger.hilt.android.lifecycle.HiltViewModel import dagger.hilt.android.lifecycle.HiltViewModel
import javax.inject.Inject import javax.inject.Inject
import kotlinx.coroutines.flow.MutableStateFlow import kotlinx.coroutines.flow.MutableStateFlow

View File

@ -1,4 +1,4 @@
package com.couplesconnect.app.ui.answers package app.closer.ui.answers
import androidx.compose.foundation.background import androidx.compose.foundation.background
import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Arrangement
@ -34,11 +34,11 @@ import androidx.compose.ui.text.font.FontWeight
import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.dp
import androidx.hilt.navigation.compose.hiltViewModel import androidx.hilt.navigation.compose.hiltViewModel
import com.couplesconnect.app.core.navigation.AppRoute import app.closer.core.navigation.AppRoute
import com.couplesconnect.app.domain.model.LocalAnswer import app.closer.domain.model.LocalAnswer
import com.couplesconnect.app.domain.model.Question import app.closer.domain.model.Question
import com.couplesconnect.app.ui.questions.displayCategoryName import app.closer.ui.questions.displayCategoryName
import com.couplesconnect.app.ui.questions.displayQuestionType import app.closer.ui.questions.displayQuestionType
@Composable @Composable
fun AnswerRevealScreen( fun AnswerRevealScreen(

View File

@ -1,12 +1,12 @@
package com.couplesconnect.app.ui.answers package app.closer.ui.answers
import androidx.lifecycle.SavedStateHandle import androidx.lifecycle.SavedStateHandle
import androidx.lifecycle.ViewModel import androidx.lifecycle.ViewModel
import androidx.lifecycle.viewModelScope import androidx.lifecycle.viewModelScope
import com.couplesconnect.app.domain.model.LocalAnswer import app.closer.domain.model.LocalAnswer
import com.couplesconnect.app.domain.model.Question import app.closer.domain.model.Question
import com.couplesconnect.app.domain.repository.LocalAnswerRepository import app.closer.domain.repository.LocalAnswerRepository
import com.couplesconnect.app.domain.repository.QuestionRepository import app.closer.domain.repository.QuestionRepository
import dagger.hilt.android.lifecycle.HiltViewModel import dagger.hilt.android.lifecycle.HiltViewModel
import javax.inject.Inject import javax.inject.Inject
import kotlinx.coroutines.flow.MutableStateFlow import kotlinx.coroutines.flow.MutableStateFlow

View File

@ -1,4 +1,4 @@
package com.couplesconnect.app.ui.auth package app.closer.ui.auth
import androidx.compose.material3.OutlinedTextFieldDefaults import androidx.compose.material3.OutlinedTextFieldDefaults
import androidx.compose.runtime.Composable import androidx.compose.runtime.Composable

View File

@ -1,4 +1,4 @@
package com.couplesconnect.app.ui.auth package app.closer.ui.auth
import androidx.compose.foundation.background import androidx.compose.foundation.background
import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Arrangement
@ -46,7 +46,7 @@ import androidx.compose.ui.text.input.KeyboardType
import androidx.compose.ui.text.style.TextAlign import androidx.compose.ui.text.style.TextAlign
import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.dp
import androidx.hilt.navigation.compose.hiltViewModel import androidx.hilt.navigation.compose.hiltViewModel
import com.couplesconnect.app.core.navigation.AppRoute import app.closer.core.navigation.AppRoute
@OptIn(ExperimentalMaterial3Api::class) @OptIn(ExperimentalMaterial3Api::class)
@Composable @Composable

View File

@ -1,8 +1,8 @@
package com.couplesconnect.app.ui.auth package app.closer.ui.auth
import androidx.lifecycle.ViewModel import androidx.lifecycle.ViewModel
import androidx.lifecycle.viewModelScope import androidx.lifecycle.viewModelScope
import com.couplesconnect.app.domain.repository.AuthRepository import app.closer.domain.repository.AuthRepository
import dagger.hilt.android.lifecycle.HiltViewModel import dagger.hilt.android.lifecycle.HiltViewModel
import kotlinx.coroutines.flow.MutableStateFlow import kotlinx.coroutines.flow.MutableStateFlow
import kotlinx.coroutines.flow.StateFlow import kotlinx.coroutines.flow.StateFlow

View File

@ -1,4 +1,4 @@
package com.couplesconnect.app.ui.auth package app.closer.ui.auth
import androidx.compose.foundation.background import androidx.compose.foundation.background
import androidx.compose.foundation.BorderStroke import androidx.compose.foundation.BorderStroke
@ -48,7 +48,7 @@ import androidx.compose.ui.text.input.VisualTransformation
import androidx.compose.ui.text.style.TextAlign import androidx.compose.ui.text.style.TextAlign
import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.dp
import androidx.hilt.navigation.compose.hiltViewModel import androidx.hilt.navigation.compose.hiltViewModel
import com.couplesconnect.app.core.navigation.AppRoute import app.closer.core.navigation.AppRoute
@Composable @Composable
fun LoginScreen( fun LoginScreen(

View File

@ -1,8 +1,8 @@
package com.couplesconnect.app.ui.auth package app.closer.ui.auth
import androidx.lifecycle.ViewModel import androidx.lifecycle.ViewModel
import androidx.lifecycle.viewModelScope import androidx.lifecycle.viewModelScope
import com.couplesconnect.app.domain.repository.AuthRepository import app.closer.domain.repository.AuthRepository
import dagger.hilt.android.lifecycle.HiltViewModel import dagger.hilt.android.lifecycle.HiltViewModel
import kotlinx.coroutines.flow.MutableStateFlow import kotlinx.coroutines.flow.MutableStateFlow
import kotlinx.coroutines.flow.StateFlow import kotlinx.coroutines.flow.StateFlow

View File

@ -1,4 +1,4 @@
package com.couplesconnect.app.ui.auth package app.closer.ui.auth
import androidx.compose.foundation.background import androidx.compose.foundation.background
import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Arrangement
@ -50,7 +50,7 @@ import androidx.compose.ui.text.input.VisualTransformation
import androidx.compose.ui.text.style.TextAlign import androidx.compose.ui.text.style.TextAlign
import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.dp
import androidx.hilt.navigation.compose.hiltViewModel import androidx.hilt.navigation.compose.hiltViewModel
import com.couplesconnect.app.core.navigation.AppRoute import app.closer.core.navigation.AppRoute
@OptIn(ExperimentalMaterial3Api::class) @OptIn(ExperimentalMaterial3Api::class)
@Composable @Composable

View File

@ -1,8 +1,8 @@
package com.couplesconnect.app.ui.auth package app.closer.ui.auth
import androidx.lifecycle.ViewModel import androidx.lifecycle.ViewModel
import androidx.lifecycle.viewModelScope import androidx.lifecycle.viewModelScope
import com.couplesconnect.app.domain.repository.AuthRepository import app.closer.domain.repository.AuthRepository
import dagger.hilt.android.lifecycle.HiltViewModel import dagger.hilt.android.lifecycle.HiltViewModel
import kotlinx.coroutines.flow.MutableStateFlow import kotlinx.coroutines.flow.MutableStateFlow
import kotlinx.coroutines.flow.StateFlow import kotlinx.coroutines.flow.StateFlow

View File

@ -1,4 +1,4 @@
package com.couplesconnect.app.ui.components package app.closer.ui.components
import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Arrangement
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Column

View File

@ -1,4 +1,4 @@
package com.couplesconnect.app.ui.components package app.closer.ui.components
import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Arrangement
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Column

View File

@ -1,4 +1,4 @@
package com.couplesconnect.app.ui.components package app.closer.ui.components
import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Arrangement
import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Column

View File

@ -1,4 +1,4 @@
package com.couplesconnect.app.ui.components package app.closer.ui.components
import androidx.compose.foundation.Canvas import androidx.compose.foundation.Canvas
import androidx.compose.foundation.background import androidx.compose.foundation.background

View File

@ -1,4 +1,4 @@
package com.couplesconnect.app.ui.components package app.closer.ui.components
import androidx.compose.foundation.background import androidx.compose.foundation.background
import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Arrangement

Some files were not shown because too many files have changed in this diff Show More