replace vault by kasier
This commit is contained in:
@@ -9,10 +9,10 @@ plugins {
|
||||
}
|
||||
|
||||
// Source unique de vérité : VERSION à la racine du dépôt (ex. 0.1.0).
|
||||
val vaultVersion: String = rootProject.file("../VERSION").readText().trim()
|
||||
val vaultVersionCode: Int = run {
|
||||
val parts = vaultVersion.split('.').map { it.toInt() }
|
||||
check(parts.size == 3) { "VERSION doit être major.minor.patch, reçu: $vaultVersion" }
|
||||
val kazierVersion: String = rootProject.file("../VERSION").readText().trim()
|
||||
val kazierVersionCode: Int = run {
|
||||
val parts = kazierVersion.split('.').map { it.toInt() }
|
||||
check(parts.size == 3) { "VERSION doit être major.minor.patch, reçu: $kazierVersion" }
|
||||
parts[0] * 1_000_000 + parts[1] * 1_000 + parts[2]
|
||||
}
|
||||
|
||||
@@ -24,18 +24,18 @@ val signingProps = Properties().apply {
|
||||
}
|
||||
|
||||
android {
|
||||
namespace = "com.vaultdrop.mobile"
|
||||
namespace = "com.kazier.mobile"
|
||||
compileSdk = 35
|
||||
|
||||
defaultConfig {
|
||||
applicationId = "com.vaultdrop.mobile"
|
||||
applicationId = "com.kazier.mobile"
|
||||
minSdk = 26
|
||||
// targetSdk 35 exige des .so alignés en 16K ; les libs précompilées
|
||||
// OpenCV/CameraX sont en 4K (warning de compatibilité sur devices
|
||||
// 16K-pages). On reste en 34 tant qu'elles ne sont pas mises à jour.
|
||||
targetSdk = 34
|
||||
versionCode = vaultVersionCode
|
||||
versionName = vaultVersion
|
||||
versionCode = kazierVersionCode
|
||||
versionName = kazierVersion
|
||||
|
||||
// OpenCV natif : on conserve uniquement les ABIs ciblés
|
||||
// (arm64 = devices, x86_64 = émulateur) pour garder l'APK raisonnable.
|
||||
|
||||
@@ -2,13 +2,15 @@
|
||||
# Alternative CI : mêmes valeurs via les variables d'environnement SIGNING_*.
|
||||
#
|
||||
# 1. Générer un keystore (ne jamais le committer, garder en lieu sûr) :
|
||||
# keytool -genkey -v -keystore release.keystore -alias vaultdrop \
|
||||
# keytool -genkey -v -keystore release.keystore -alias kazier \
|
||||
# -keyalg RSA -keysize 2048 -validity 10000
|
||||
# Note : un keystore existant garde SON alias d'origine (ex. vaultdrop) —
|
||||
# reporter alors la même valeur dans keyAlias ci-dessous.
|
||||
# 2. Renseigner les valeurs ci-dessous.
|
||||
#
|
||||
# storeFile est relatif au répertoire du module app/ (mobile-kotlin/app).
|
||||
|
||||
storeFile=release.keystore
|
||||
storePassword=CHANGE_ME
|
||||
keyAlias=vaultdrop
|
||||
keyAlias=kazier
|
||||
keyPassword=CHANGE_ME
|
||||
@@ -10,17 +10,17 @@
|
||||
android:required="false" />
|
||||
|
||||
<application
|
||||
android:name=".VaultDropApplication"
|
||||
android:name=".KazierApplication"
|
||||
android:allowBackup="true"
|
||||
android:icon="@mipmap/ic_launcher"
|
||||
android:label="@string/app_name"
|
||||
android:supportsRtl="true"
|
||||
android:usesCleartextTraffic="true"
|
||||
android:theme="@style/Theme.VaultDrop">
|
||||
android:theme="@style/Theme.Kazier">
|
||||
|
||||
<!-- HiltWorkerFactory : désactive l'initialisation WorkManager par
|
||||
défaut (androidx.startup) pour que Configuration.Provider
|
||||
(VaultDropApplication) soit honoré — sinon le @HiltWorker ne peut
|
||||
(KazierApplication) soit honoré — sinon le @HiltWorker ne peut
|
||||
pas être instancié (NoSuchMethodException). -->
|
||||
<provider
|
||||
android:name="androidx.startup.InitializationProvider"
|
||||
@@ -36,7 +36,7 @@
|
||||
<activity
|
||||
android:name=".MainActivity"
|
||||
android:exported="true"
|
||||
android:theme="@style/Theme.VaultDrop">
|
||||
android:theme="@style/Theme.Kazier">
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.MAIN" />
|
||||
<category android:name="android.intent.category.LAUNCHER" />
|
||||
|
||||
+2
-2
@@ -1,4 +1,4 @@
|
||||
package com.vaultdrop.mobile
|
||||
package com.kazier.mobile
|
||||
|
||||
import android.app.Application
|
||||
import androidx.hilt.work.HiltWorkerFactory
|
||||
@@ -8,7 +8,7 @@ import timber.log.Timber
|
||||
import javax.inject.Inject
|
||||
|
||||
@HiltAndroidApp
|
||||
class VaultDropApplication : Application(), Configuration.Provider {
|
||||
class KazierApplication : Application(), Configuration.Provider {
|
||||
|
||||
@Inject
|
||||
lateinit var workerFactory: HiltWorkerFactory
|
||||
+6
-6
@@ -1,4 +1,4 @@
|
||||
package com.vaultdrop.mobile
|
||||
package com.kazier.mobile
|
||||
|
||||
import android.os.Bundle
|
||||
import androidx.activity.ComponentActivity
|
||||
@@ -7,9 +7,9 @@ import androidx.activity.enableEdgeToEdge
|
||||
import androidx.compose.runtime.getValue
|
||||
import androidx.lifecycle.compose.collectAsStateWithLifecycle
|
||||
import androidx.lifecycle.lifecycleScope
|
||||
import com.vaultdrop.mobile.domain.ThemePreferenceStore
|
||||
import com.vaultdrop.mobile.ui.navigation.VaultDropApp
|
||||
import com.vaultdrop.mobile.ui.theme.VaultDropTheme
|
||||
import com.kazier.mobile.domain.ThemePreferenceStore
|
||||
import com.kazier.mobile.ui.navigation.KazierApp
|
||||
import com.kazier.mobile.ui.theme.KazierTheme
|
||||
import dagger.hilt.android.AndroidEntryPoint
|
||||
import javax.inject.Inject
|
||||
import kotlinx.coroutines.launch
|
||||
@@ -28,8 +28,8 @@ class MainActivity : ComponentActivity() {
|
||||
|
||||
setContent {
|
||||
val theme by themePreferenceStore.theme.collectAsStateWithLifecycle()
|
||||
VaultDropTheme(theme = theme) {
|
||||
VaultDropApp()
|
||||
KazierTheme(theme = theme) {
|
||||
KazierApp()
|
||||
}
|
||||
}
|
||||
}
|
||||
+5
-5
@@ -1,4 +1,4 @@
|
||||
package com.vaultdrop.mobile.auth
|
||||
package com.kazier.mobile.auth
|
||||
|
||||
import android.content.Context
|
||||
import android.content.SharedPreferences
|
||||
@@ -6,7 +6,7 @@ import androidx.security.crypto.EncryptedSharedPreferences
|
||||
import androidx.security.crypto.MasterKeys
|
||||
import com.squareup.moshi.JsonAdapter
|
||||
import com.squareup.moshi.Moshi
|
||||
import com.vaultdrop.mobile.data.remote.dto.UserDto
|
||||
import com.kazier.mobile.data.remote.dto.UserDto
|
||||
import dagger.hilt.android.qualifiers.ApplicationContext
|
||||
import javax.inject.Inject
|
||||
import javax.inject.Singleton
|
||||
@@ -56,8 +56,8 @@ class SecureTokenStore @Inject constructor(
|
||||
}
|
||||
|
||||
companion object {
|
||||
private const val FILE_NAME = "vaultdrop_secure"
|
||||
private const val KEY_TOKEN = "vaultdrop.auth_token"
|
||||
private const val KEY_ACCOUNT = "vaultdrop.account"
|
||||
private const val FILE_NAME = "kazier_secure"
|
||||
private const val KEY_TOKEN = "kazier.auth_token"
|
||||
private const val KEY_ACCOUNT = "kazier.account"
|
||||
}
|
||||
}
|
||||
+8
-8
@@ -1,10 +1,10 @@
|
||||
package com.vaultdrop.mobile.auth
|
||||
package com.kazier.mobile.auth
|
||||
|
||||
import com.vaultdrop.mobile.data.remote.ApiClient
|
||||
import com.vaultdrop.mobile.data.remote.dto.LoginResponseDto
|
||||
import com.vaultdrop.mobile.domain.ActiveUserStore
|
||||
import com.vaultdrop.mobile.domain.DeviceIdentity
|
||||
import com.vaultdrop.mobile.domain.LocalModeStore
|
||||
import com.kazier.mobile.data.remote.ApiClient
|
||||
import com.kazier.mobile.data.remote.dto.LoginResponseDto
|
||||
import com.kazier.mobile.domain.ActiveUserStore
|
||||
import com.kazier.mobile.domain.DeviceIdentity
|
||||
import com.kazier.mobile.domain.LocalModeStore
|
||||
import javax.inject.Inject
|
||||
import javax.inject.Singleton
|
||||
|
||||
@@ -30,7 +30,7 @@ class SessionManager @Inject constructor(
|
||||
return AuthSession(token = token, user = user)
|
||||
}
|
||||
|
||||
suspend fun save(token: String, user: com.vaultdrop.mobile.data.remote.dto.UserDto) {
|
||||
suspend fun save(token: String, user: com.kazier.mobile.data.remote.dto.UserDto) {
|
||||
secureTokenStore.save(token, user)
|
||||
activeUserStore.set(user.id)
|
||||
localModeStore.clear()
|
||||
@@ -52,5 +52,5 @@ class SessionManager @Inject constructor(
|
||||
|
||||
data class AuthSession(
|
||||
val token: String,
|
||||
val user: com.vaultdrop.mobile.data.remote.dto.UserDto,
|
||||
val user: com.kazier.mobile.data.remote.dto.UserDto,
|
||||
)
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package com.vaultdrop.mobile.auth
|
||||
package com.kazier.mobile.auth
|
||||
|
||||
import javax.inject.Inject
|
||||
import javax.inject.Singleton
|
||||
+12
-12
@@ -1,18 +1,18 @@
|
||||
package com.vaultdrop.mobile.data.local
|
||||
package com.kazier.mobile.data.local
|
||||
|
||||
import androidx.room.Database
|
||||
import androidx.room.RoomDatabase
|
||||
import com.vaultdrop.mobile.data.local.dao.FileDao
|
||||
import com.vaultdrop.mobile.data.local.dao.FolderDao
|
||||
import com.vaultdrop.mobile.data.local.dao.PendingOperationDao
|
||||
import com.vaultdrop.mobile.data.local.dao.ScanDao
|
||||
import com.vaultdrop.mobile.data.local.dao.UserPreferenceDao
|
||||
import com.vaultdrop.mobile.data.local.entity.FileEntity
|
||||
import com.vaultdrop.mobile.data.local.entity.FolderEntity
|
||||
import com.vaultdrop.mobile.data.local.entity.PendingOperationEntity
|
||||
import com.vaultdrop.mobile.data.local.entity.ScanPageEntity
|
||||
import com.vaultdrop.mobile.data.local.entity.ScanSessionEntity
|
||||
import com.vaultdrop.mobile.data.local.entity.UserPreferenceEntity
|
||||
import com.kazier.mobile.data.local.dao.FileDao
|
||||
import com.kazier.mobile.data.local.dao.FolderDao
|
||||
import com.kazier.mobile.data.local.dao.PendingOperationDao
|
||||
import com.kazier.mobile.data.local.dao.ScanDao
|
||||
import com.kazier.mobile.data.local.dao.UserPreferenceDao
|
||||
import com.kazier.mobile.data.local.entity.FileEntity
|
||||
import com.kazier.mobile.data.local.entity.FolderEntity
|
||||
import com.kazier.mobile.data.local.entity.PendingOperationEntity
|
||||
import com.kazier.mobile.data.local.entity.ScanPageEntity
|
||||
import com.kazier.mobile.data.local.entity.ScanSessionEntity
|
||||
import com.kazier.mobile.data.local.entity.UserPreferenceEntity
|
||||
|
||||
/*
|
||||
* DB SQLite locale, `dot.db` (même nom que la version Expo).
|
||||
+2
-2
@@ -1,6 +1,6 @@
|
||||
package com.vaultdrop.mobile.data.local
|
||||
package com.kazier.mobile.data.local
|
||||
|
||||
import com.vaultdrop.mobile.data.local.entity.FileEntity
|
||||
import com.kazier.mobile.data.local.entity.FileEntity
|
||||
|
||||
/** Date de référence d'un fichier : modification SAF quand dispo, sinon ajout local. */
|
||||
val FileEntity.referenceDate: Long
|
||||
+2
-2
@@ -1,9 +1,9 @@
|
||||
package com.vaultdrop.mobile.data.local.dao
|
||||
package com.kazier.mobile.data.local.dao
|
||||
|
||||
import androidx.room.Dao
|
||||
import androidx.room.Query
|
||||
import androidx.room.Upsert
|
||||
import com.vaultdrop.mobile.data.local.entity.FileEntity
|
||||
import com.kazier.mobile.data.local.entity.FileEntity
|
||||
import kotlinx.coroutines.flow.Flow
|
||||
|
||||
@Dao
|
||||
+2
-2
@@ -1,11 +1,11 @@
|
||||
package com.vaultdrop.mobile.data.local.dao
|
||||
package com.kazier.mobile.data.local.dao
|
||||
|
||||
import androidx.room.Dao
|
||||
import androidx.room.Insert
|
||||
import androidx.room.OnConflictStrategy
|
||||
import androidx.room.Query
|
||||
import androidx.room.Upsert
|
||||
import com.vaultdrop.mobile.data.local.entity.FolderEntity
|
||||
import com.kazier.mobile.data.local.entity.FolderEntity
|
||||
import kotlinx.coroutines.flow.Flow
|
||||
|
||||
@Dao
|
||||
+2
-2
@@ -1,9 +1,9 @@
|
||||
package com.vaultdrop.mobile.data.local.dao
|
||||
package com.kazier.mobile.data.local.dao
|
||||
|
||||
import androidx.room.Dao
|
||||
import androidx.room.Insert
|
||||
import androidx.room.Query
|
||||
import com.vaultdrop.mobile.data.local.entity.PendingOperationEntity
|
||||
import com.kazier.mobile.data.local.entity.PendingOperationEntity
|
||||
import kotlinx.coroutines.flow.Flow
|
||||
|
||||
@Dao
|
||||
+3
-3
@@ -1,11 +1,11 @@
|
||||
package com.vaultdrop.mobile.data.local.dao
|
||||
package com.kazier.mobile.data.local.dao
|
||||
|
||||
import androidx.room.Dao
|
||||
import androidx.room.Insert
|
||||
import androidx.room.Query
|
||||
import androidx.room.Update
|
||||
import com.vaultdrop.mobile.data.local.entity.ScanPageEntity
|
||||
import com.vaultdrop.mobile.data.local.entity.ScanSessionEntity
|
||||
import com.kazier.mobile.data.local.entity.ScanPageEntity
|
||||
import com.kazier.mobile.data.local.entity.ScanSessionEntity
|
||||
import kotlinx.coroutines.flow.Flow
|
||||
|
||||
/** Persistance des sessions de scan (appareil photo) — local uniquement. */
|
||||
+2
-2
@@ -1,11 +1,11 @@
|
||||
package com.vaultdrop.mobile.data.local.dao
|
||||
package com.kazier.mobile.data.local.dao
|
||||
|
||||
import androidx.room.Dao
|
||||
import androidx.room.Insert
|
||||
import androidx.room.OnConflictStrategy
|
||||
import androidx.room.Query
|
||||
import androidx.room.Upsert
|
||||
import com.vaultdrop.mobile.data.local.entity.UserPreferenceEntity
|
||||
import com.kazier.mobile.data.local.entity.UserPreferenceEntity
|
||||
|
||||
@Dao
|
||||
interface UserPreferenceDao {
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package com.vaultdrop.mobile.data.local.entity
|
||||
package com.kazier.mobile.data.local.entity
|
||||
|
||||
import androidx.room.ColumnInfo
|
||||
import androidx.room.Entity
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package com.vaultdrop.mobile.data.local.entity
|
||||
package com.kazier.mobile.data.local.entity
|
||||
|
||||
import androidx.room.ColumnInfo
|
||||
import androidx.room.Entity
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package com.vaultdrop.mobile.data.local.entity
|
||||
package com.kazier.mobile.data.local.entity
|
||||
|
||||
import androidx.room.ColumnInfo
|
||||
import androidx.room.Entity
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package com.vaultdrop.mobile.data.local.entity
|
||||
package com.kazier.mobile.data.local.entity
|
||||
|
||||
import androidx.room.ColumnInfo
|
||||
import androidx.room.Entity
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package com.vaultdrop.mobile.data.local.entity
|
||||
package com.kazier.mobile.data.local.entity
|
||||
|
||||
import androidx.room.ColumnInfo
|
||||
import androidx.room.Entity
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package com.vaultdrop.mobile.data.local.entity
|
||||
package com.kazier.mobile.data.local.entity
|
||||
|
||||
import androidx.room.ColumnInfo
|
||||
import androidx.room.Entity
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package com.vaultdrop.mobile.data.local.migration
|
||||
package com.kazier.mobile.data.local.migration
|
||||
|
||||
import androidx.room.migration.Migration
|
||||
import androidx.sqlite.db.SupportSQLiteDatabase
|
||||
+4
-4
@@ -1,4 +1,4 @@
|
||||
package com.vaultdrop.mobile.data.preferences
|
||||
package com.kazier.mobile.data.preferences
|
||||
|
||||
import android.content.Context
|
||||
import android.content.SharedPreferences
|
||||
@@ -7,7 +7,7 @@ import javax.inject.Inject
|
||||
import javax.inject.Singleton
|
||||
|
||||
/**
|
||||
* Racine VaultDrop : le dossier SAF unique et obligatoire choisi au premier
|
||||
* Racine Kazier : le dossier SAF unique et obligatoire choisi au premier
|
||||
* lancement. Tous les exports (assemblage PDF) y sont écrits directement,
|
||||
* sans sélecteur — la permission persistante sur l'arbre est acquise à ce
|
||||
* moment-là.
|
||||
@@ -31,7 +31,7 @@ class DefaultRootStore @Inject constructor(
|
||||
}
|
||||
|
||||
companion object {
|
||||
private const val FILE_NAME = "vaultdrop_prefs"
|
||||
private const val KEY_ROOT_RESOURCE_ID = "vaultdrop.default_root_resource_id"
|
||||
private const val FILE_NAME = "kazier_prefs"
|
||||
private const val KEY_ROOT_RESOURCE_ID = "kazier.default_root_resource_id"
|
||||
}
|
||||
}
|
||||
+16
-16
@@ -1,22 +1,22 @@
|
||||
package com.vaultdrop.mobile.data.remote
|
||||
package com.kazier.mobile.data.remote
|
||||
|
||||
import com.squareup.moshi.JsonAdapter
|
||||
import com.squareup.moshi.Moshi
|
||||
import com.vaultdrop.mobile.data.remote.dto.ApiEnvelope
|
||||
import com.vaultdrop.mobile.data.remote.dto.ApiErrorEnvelope
|
||||
import com.vaultdrop.mobile.data.remote.dto.DeviceRegistrationDto
|
||||
import com.vaultdrop.mobile.data.remote.dto.FileDto
|
||||
import com.vaultdrop.mobile.data.remote.dto.FileOcrDto
|
||||
import com.vaultdrop.mobile.data.remote.dto.FolderDto
|
||||
import com.vaultdrop.mobile.data.remote.dto.LoginRequestDto
|
||||
import com.vaultdrop.mobile.data.remote.dto.LoginResponseDto
|
||||
import com.vaultdrop.mobile.data.remote.dto.OcrJobDto
|
||||
import com.vaultdrop.mobile.data.remote.dto.OcrSubmitDto
|
||||
import com.vaultdrop.mobile.data.remote.dto.ResolvedUserDto
|
||||
import com.vaultdrop.mobile.data.remote.dto.ResourcePermissionDto
|
||||
import com.vaultdrop.mobile.data.remote.dto.SyncOpDto
|
||||
import com.vaultdrop.mobile.data.remote.dto.SyncOpsRequest
|
||||
import com.vaultdrop.mobile.data.remote.dto.SyncOpsResult
|
||||
import com.kazier.mobile.data.remote.dto.ApiEnvelope
|
||||
import com.kazier.mobile.data.remote.dto.ApiErrorEnvelope
|
||||
import com.kazier.mobile.data.remote.dto.DeviceRegistrationDto
|
||||
import com.kazier.mobile.data.remote.dto.FileDto
|
||||
import com.kazier.mobile.data.remote.dto.FileOcrDto
|
||||
import com.kazier.mobile.data.remote.dto.FolderDto
|
||||
import com.kazier.mobile.data.remote.dto.LoginRequestDto
|
||||
import com.kazier.mobile.data.remote.dto.LoginResponseDto
|
||||
import com.kazier.mobile.data.remote.dto.OcrJobDto
|
||||
import com.kazier.mobile.data.remote.dto.OcrSubmitDto
|
||||
import com.kazier.mobile.data.remote.dto.ResolvedUserDto
|
||||
import com.kazier.mobile.data.remote.dto.ResourcePermissionDto
|
||||
import com.kazier.mobile.data.remote.dto.SyncOpDto
|
||||
import com.kazier.mobile.data.remote.dto.SyncOpsRequest
|
||||
import com.kazier.mobile.data.remote.dto.SyncOpsResult
|
||||
import okhttp3.MultipartBody
|
||||
import okhttp3.MediaType.Companion.toMediaType
|
||||
import okhttp3.RequestBody
|
||||
+14
-14
@@ -1,18 +1,18 @@
|
||||
package com.vaultdrop.mobile.data.remote
|
||||
package com.kazier.mobile.data.remote
|
||||
|
||||
import com.vaultdrop.mobile.data.remote.dto.ApiEnvelope
|
||||
import com.vaultdrop.mobile.data.remote.dto.DeviceRegistrationDto
|
||||
import com.vaultdrop.mobile.data.remote.dto.FileDto
|
||||
import com.vaultdrop.mobile.data.remote.dto.FileOcrDto
|
||||
import com.vaultdrop.mobile.data.remote.dto.FolderDto
|
||||
import com.vaultdrop.mobile.data.remote.dto.LoginRequestDto
|
||||
import com.vaultdrop.mobile.data.remote.dto.LoginResponseDto
|
||||
import com.vaultdrop.mobile.data.remote.dto.OcrJobDto
|
||||
import com.vaultdrop.mobile.data.remote.dto.OcrSubmitDto
|
||||
import com.vaultdrop.mobile.data.remote.dto.ResolvedUserDto
|
||||
import com.vaultdrop.mobile.data.remote.dto.ResourcePermissionDto
|
||||
import com.vaultdrop.mobile.data.remote.dto.SyncOpsRequest
|
||||
import com.vaultdrop.mobile.data.remote.dto.SyncOpsResult
|
||||
import com.kazier.mobile.data.remote.dto.ApiEnvelope
|
||||
import com.kazier.mobile.data.remote.dto.DeviceRegistrationDto
|
||||
import com.kazier.mobile.data.remote.dto.FileDto
|
||||
import com.kazier.mobile.data.remote.dto.FileOcrDto
|
||||
import com.kazier.mobile.data.remote.dto.FolderDto
|
||||
import com.kazier.mobile.data.remote.dto.LoginRequestDto
|
||||
import com.kazier.mobile.data.remote.dto.LoginResponseDto
|
||||
import com.kazier.mobile.data.remote.dto.OcrJobDto
|
||||
import com.kazier.mobile.data.remote.dto.OcrSubmitDto
|
||||
import com.kazier.mobile.data.remote.dto.ResolvedUserDto
|
||||
import com.kazier.mobile.data.remote.dto.ResourcePermissionDto
|
||||
import com.kazier.mobile.data.remote.dto.SyncOpsRequest
|
||||
import com.kazier.mobile.data.remote.dto.SyncOpsResult
|
||||
import okhttp3.MultipartBody
|
||||
import okhttp3.RequestBody
|
||||
import retrofit2.Response
|
||||
+2
-2
@@ -1,10 +1,10 @@
|
||||
package com.vaultdrop.mobile.data.remote
|
||||
package com.kazier.mobile.data.remote
|
||||
|
||||
import okhttp3.Interceptor
|
||||
import okhttp3.Response
|
||||
import javax.inject.Inject
|
||||
import javax.inject.Singleton
|
||||
import com.vaultdrop.mobile.auth.TokenProvider
|
||||
import com.kazier.mobile.auth.TokenProvider
|
||||
|
||||
/**
|
||||
* Injecte `Authorization: Bearer <token>` sur chaque requête si un token est
|
||||
+2
-2
@@ -1,6 +1,6 @@
|
||||
package com.vaultdrop.mobile.data.remote
|
||||
package com.kazier.mobile.data.remote
|
||||
|
||||
import com.vaultdrop.mobile.domain.ServerConfigStore
|
||||
import com.kazier.mobile.domain.ServerConfigStore
|
||||
import javax.inject.Inject
|
||||
import javax.inject.Singleton
|
||||
import okhttp3.HttpUrl.Companion.toHttpUrl
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package com.vaultdrop.mobile.data.remote.dto
|
||||
package com.kazier.mobile.data.remote.dto
|
||||
|
||||
import com.squareup.moshi.Json
|
||||
|
||||
+4
-4
@@ -1,8 +1,8 @@
|
||||
package com.vaultdrop.mobile.data.repository
|
||||
package com.kazier.mobile.data.repository
|
||||
|
||||
import com.vaultdrop.mobile.data.remote.ApiClient
|
||||
import com.vaultdrop.mobile.data.remote.dto.LoginResponseDto
|
||||
import com.vaultdrop.mobile.domain.DeviceIdentity
|
||||
import com.kazier.mobile.data.remote.ApiClient
|
||||
import com.kazier.mobile.data.remote.dto.LoginResponseDto
|
||||
import com.kazier.mobile.domain.DeviceIdentity
|
||||
import timber.log.Timber
|
||||
import javax.inject.Inject
|
||||
import javax.inject.Singleton
|
||||
+10
-10
@@ -1,15 +1,15 @@
|
||||
package com.vaultdrop.mobile.data.repository
|
||||
package com.kazier.mobile.data.repository
|
||||
|
||||
import androidx.room.withTransaction
|
||||
import com.vaultdrop.mobile.data.local.AppDatabase
|
||||
import com.vaultdrop.mobile.data.local.dao.FileDao
|
||||
import com.vaultdrop.mobile.data.local.entity.FileEntity
|
||||
import com.vaultdrop.mobile.data.local.entity.FileStatus
|
||||
import com.vaultdrop.mobile.data.remote.ApiClient
|
||||
import com.vaultdrop.mobile.data.remote.dto.FileDto
|
||||
import com.vaultdrop.mobile.domain.GenerateId
|
||||
import com.vaultdrop.mobile.domain.SyncPlacement
|
||||
import com.vaultdrop.mobile.domain.computeCategory
|
||||
import com.kazier.mobile.data.local.AppDatabase
|
||||
import com.kazier.mobile.data.local.dao.FileDao
|
||||
import com.kazier.mobile.data.local.entity.FileEntity
|
||||
import com.kazier.mobile.data.local.entity.FileStatus
|
||||
import com.kazier.mobile.data.remote.ApiClient
|
||||
import com.kazier.mobile.data.remote.dto.FileDto
|
||||
import com.kazier.mobile.domain.GenerateId
|
||||
import com.kazier.mobile.domain.SyncPlacement
|
||||
import com.kazier.mobile.domain.computeCategory
|
||||
import kotlinx.coroutines.flow.Flow
|
||||
import javax.inject.Inject
|
||||
import javax.inject.Singleton
|
||||
+10
-10
@@ -1,15 +1,15 @@
|
||||
package com.vaultdrop.mobile.data.repository
|
||||
package com.kazier.mobile.data.repository
|
||||
|
||||
import androidx.room.withTransaction
|
||||
import com.vaultdrop.mobile.data.local.AppDatabase
|
||||
import com.vaultdrop.mobile.data.local.dao.FolderDao
|
||||
import com.vaultdrop.mobile.data.local.entity.FolderEntity
|
||||
import com.vaultdrop.mobile.data.local.entity.FolderStatus
|
||||
import com.vaultdrop.mobile.data.remote.ApiClient
|
||||
import com.vaultdrop.mobile.data.remote.dto.FolderDto
|
||||
import com.vaultdrop.mobile.domain.DeviceIdentity
|
||||
import com.vaultdrop.mobile.domain.GenerateId
|
||||
import com.vaultdrop.mobile.domain.SyncPlacement
|
||||
import com.kazier.mobile.data.local.AppDatabase
|
||||
import com.kazier.mobile.data.local.dao.FolderDao
|
||||
import com.kazier.mobile.data.local.entity.FolderEntity
|
||||
import com.kazier.mobile.data.local.entity.FolderStatus
|
||||
import com.kazier.mobile.data.remote.ApiClient
|
||||
import com.kazier.mobile.data.remote.dto.FolderDto
|
||||
import com.kazier.mobile.domain.DeviceIdentity
|
||||
import com.kazier.mobile.domain.GenerateId
|
||||
import com.kazier.mobile.domain.SyncPlacement
|
||||
import kotlinx.coroutines.flow.Flow
|
||||
import javax.inject.Inject
|
||||
import javax.inject.Singleton
|
||||
+7
-7
@@ -1,15 +1,15 @@
|
||||
package com.vaultdrop.mobile.data.repository
|
||||
package com.kazier.mobile.data.repository
|
||||
|
||||
import android.content.ContentResolver
|
||||
import android.content.Context
|
||||
import android.net.Uri
|
||||
import androidx.core.net.toUri
|
||||
import com.vaultdrop.mobile.data.local.dao.FileDao
|
||||
import com.vaultdrop.mobile.data.local.entity.FileEntity
|
||||
import com.vaultdrop.mobile.data.remote.ApiClient
|
||||
import com.vaultdrop.mobile.data.remote.ApiException
|
||||
import com.vaultdrop.mobile.data.remote.dto.OcrJobDto
|
||||
import com.vaultdrop.mobile.data.remote.dto.OcrJobStatus
|
||||
import com.kazier.mobile.data.local.dao.FileDao
|
||||
import com.kazier.mobile.data.local.entity.FileEntity
|
||||
import com.kazier.mobile.data.remote.ApiClient
|
||||
import com.kazier.mobile.data.remote.ApiException
|
||||
import com.kazier.mobile.data.remote.dto.OcrJobDto
|
||||
import com.kazier.mobile.data.remote.dto.OcrJobStatus
|
||||
import dagger.hilt.android.qualifiers.ApplicationContext
|
||||
import kotlinx.coroutines.delay
|
||||
import okhttp3.MediaType
|
||||
+6
-6
@@ -1,13 +1,13 @@
|
||||
package com.vaultdrop.mobile.data.repository
|
||||
package com.kazier.mobile.data.repository
|
||||
|
||||
import com.squareup.moshi.JsonAdapter
|
||||
import com.squareup.moshi.Moshi
|
||||
import com.squareup.moshi.Types
|
||||
import com.vaultdrop.mobile.data.local.dao.PendingOperationDao
|
||||
import com.vaultdrop.mobile.data.local.entity.PendingOpStatus
|
||||
import com.vaultdrop.mobile.data.local.entity.PendingOperationEntity
|
||||
import com.vaultdrop.mobile.data.local.entity.PendingOperationType
|
||||
import com.vaultdrop.mobile.domain.GenerateId
|
||||
import com.kazier.mobile.data.local.dao.PendingOperationDao
|
||||
import com.kazier.mobile.data.local.entity.PendingOpStatus
|
||||
import com.kazier.mobile.data.local.entity.PendingOperationEntity
|
||||
import com.kazier.mobile.data.local.entity.PendingOperationType
|
||||
import com.kazier.mobile.domain.GenerateId
|
||||
import javax.inject.Inject
|
||||
import javax.inject.Singleton
|
||||
|
||||
+8
-8
@@ -1,13 +1,13 @@
|
||||
package com.vaultdrop.mobile.data.repository
|
||||
package com.kazier.mobile.data.repository
|
||||
|
||||
import androidx.room.withTransaction
|
||||
import com.vaultdrop.mobile.data.local.AppDatabase
|
||||
import com.vaultdrop.mobile.data.local.dao.ScanDao
|
||||
import com.vaultdrop.mobile.data.local.entity.ScanPageEntity
|
||||
import com.vaultdrop.mobile.data.local.entity.ScanPageStatus
|
||||
import com.vaultdrop.mobile.data.local.entity.ScanSessionEntity
|
||||
import com.vaultdrop.mobile.data.local.entity.ScanSessionStatus
|
||||
import com.vaultdrop.mobile.domain.GenerateId
|
||||
import com.kazier.mobile.data.local.AppDatabase
|
||||
import com.kazier.mobile.data.local.dao.ScanDao
|
||||
import com.kazier.mobile.data.local.entity.ScanPageEntity
|
||||
import com.kazier.mobile.data.local.entity.ScanPageStatus
|
||||
import com.kazier.mobile.data.local.entity.ScanSessionEntity
|
||||
import com.kazier.mobile.data.local.entity.ScanSessionStatus
|
||||
import com.kazier.mobile.domain.GenerateId
|
||||
import kotlinx.coroutines.flow.Flow
|
||||
import javax.inject.Inject
|
||||
import javax.inject.Singleton
|
||||
+10
-10
@@ -1,15 +1,15 @@
|
||||
package com.vaultdrop.mobile.data.repository
|
||||
package com.kazier.mobile.data.repository
|
||||
|
||||
import androidx.room.withTransaction
|
||||
import com.vaultdrop.mobile.data.local.AppDatabase
|
||||
import com.vaultdrop.mobile.data.local.dao.FileDao
|
||||
import com.vaultdrop.mobile.data.local.dao.FolderDao
|
||||
import com.vaultdrop.mobile.data.local.entity.FileEntity
|
||||
import com.vaultdrop.mobile.data.local.entity.FolderEntity
|
||||
import com.vaultdrop.mobile.data.remote.ApiClient
|
||||
import com.vaultdrop.mobile.data.remote.dto.ResourcePermissionDto
|
||||
import com.vaultdrop.mobile.domain.DeviceIdentity
|
||||
import com.vaultdrop.mobile.domain.SyncPlacement
|
||||
import com.kazier.mobile.data.local.AppDatabase
|
||||
import com.kazier.mobile.data.local.dao.FileDao
|
||||
import com.kazier.mobile.data.local.dao.FolderDao
|
||||
import com.kazier.mobile.data.local.entity.FileEntity
|
||||
import com.kazier.mobile.data.local.entity.FolderEntity
|
||||
import com.kazier.mobile.data.remote.ApiClient
|
||||
import com.kazier.mobile.data.remote.dto.ResourcePermissionDto
|
||||
import com.kazier.mobile.domain.DeviceIdentity
|
||||
import com.kazier.mobile.domain.SyncPlacement
|
||||
import timber.log.Timber
|
||||
import javax.inject.Inject
|
||||
import javax.inject.Singleton
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package com.vaultdrop.mobile.di
|
||||
package com.kazier.mobile.di
|
||||
|
||||
import dagger.Module
|
||||
import dagger.hilt.InstallIn
|
||||
+8
-8
@@ -1,14 +1,14 @@
|
||||
package com.vaultdrop.mobile.di
|
||||
package com.kazier.mobile.di
|
||||
|
||||
import android.content.Context
|
||||
import androidx.room.Room
|
||||
import com.vaultdrop.mobile.data.local.AppDatabase
|
||||
import com.vaultdrop.mobile.data.local.dao.FileDao
|
||||
import com.vaultdrop.mobile.data.local.dao.FolderDao
|
||||
import com.vaultdrop.mobile.data.local.dao.PendingOperationDao
|
||||
import com.vaultdrop.mobile.data.local.dao.ScanDao
|
||||
import com.vaultdrop.mobile.data.local.dao.UserPreferenceDao
|
||||
import com.vaultdrop.mobile.data.local.migration.Migrations
|
||||
import com.kazier.mobile.data.local.AppDatabase
|
||||
import com.kazier.mobile.data.local.dao.FileDao
|
||||
import com.kazier.mobile.data.local.dao.FolderDao
|
||||
import com.kazier.mobile.data.local.dao.PendingOperationDao
|
||||
import com.kazier.mobile.data.local.dao.ScanDao
|
||||
import com.kazier.mobile.data.local.dao.UserPreferenceDao
|
||||
import com.kazier.mobile.data.local.migration.Migrations
|
||||
import dagger.Module
|
||||
import dagger.Provides
|
||||
import dagger.hilt.InstallIn
|
||||
+6
-6
@@ -1,11 +1,11 @@
|
||||
package com.vaultdrop.mobile.di
|
||||
package com.kazier.mobile.di
|
||||
|
||||
import com.squareup.moshi.Moshi
|
||||
import com.squareup.moshi.kotlin.reflect.KotlinJsonAdapterFactory
|
||||
import com.vaultdrop.mobile.BuildConfig
|
||||
import com.vaultdrop.mobile.data.remote.ApiService
|
||||
import com.vaultdrop.mobile.data.remote.AuthInterceptor
|
||||
import com.vaultdrop.mobile.data.remote.ServerUrlInterceptor
|
||||
import com.kazier.mobile.BuildConfig
|
||||
import com.kazier.mobile.data.remote.ApiService
|
||||
import com.kazier.mobile.data.remote.AuthInterceptor
|
||||
import com.kazier.mobile.data.remote.ServerUrlInterceptor
|
||||
import dagger.Module
|
||||
import dagger.Provides
|
||||
import dagger.hilt.InstallIn
|
||||
@@ -80,5 +80,5 @@ object NetworkModule {
|
||||
fun provideApiService(retrofit: Retrofit): ApiService =
|
||||
retrofit.create(ApiService::class.java)
|
||||
|
||||
private const val PLACEHOLDER_BASE_URL = "http://vaultdrop.invalid/"
|
||||
private const val PLACEHOLDER_BASE_URL = "http://kazier.invalid/"
|
||||
}
|
||||
+3
-3
@@ -1,7 +1,7 @@
|
||||
package com.vaultdrop.mobile.domain
|
||||
package com.kazier.mobile.domain
|
||||
|
||||
import com.vaultdrop.mobile.data.local.dao.UserPreferenceDao
|
||||
import com.vaultdrop.mobile.data.local.entity.UserPreferenceEntity
|
||||
import com.kazier.mobile.data.local.dao.UserPreferenceDao
|
||||
import com.kazier.mobile.data.local.entity.UserPreferenceEntity
|
||||
import javax.inject.Inject
|
||||
import javax.inject.Singleton
|
||||
|
||||
+3
-3
@@ -1,7 +1,7 @@
|
||||
package com.vaultdrop.mobile.domain
|
||||
package com.kazier.mobile.domain
|
||||
|
||||
import com.vaultdrop.mobile.data.local.dao.UserPreferenceDao
|
||||
import com.vaultdrop.mobile.data.local.entity.UserPreferenceEntity
|
||||
import com.kazier.mobile.data.local.dao.UserPreferenceDao
|
||||
import com.kazier.mobile.data.local.entity.UserPreferenceEntity
|
||||
import javax.inject.Inject
|
||||
import javax.inject.Singleton
|
||||
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package com.vaultdrop.mobile.domain
|
||||
package com.kazier.mobile.domain
|
||||
|
||||
enum class FileCategory {
|
||||
PDF,
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package com.vaultdrop.mobile.domain
|
||||
package com.kazier.mobile.domain
|
||||
|
||||
import java.security.SecureRandom
|
||||
import javax.inject.Inject
|
||||
+4
-4
@@ -1,13 +1,13 @@
|
||||
package com.vaultdrop.mobile.domain
|
||||
package com.kazier.mobile.domain
|
||||
|
||||
import com.vaultdrop.mobile.data.local.dao.UserPreferenceDao
|
||||
import com.vaultdrop.mobile.data.local.entity.UserPreferenceEntity
|
||||
import com.kazier.mobile.data.local.dao.UserPreferenceDao
|
||||
import com.kazier.mobile.data.local.entity.UserPreferenceEntity
|
||||
import javax.inject.Inject
|
||||
import javax.inject.Singleton
|
||||
|
||||
/**
|
||||
* Drapeau « mode local » (on utilise l'app sans compte) persisté en
|
||||
* `user_preferences`. Permet de restaurer [com.vaultdrop.mobile.ui.auth.AuthState.Local]
|
||||
* `user_preferences`. Permet de restaurer [com.kazier.mobile.ui.auth.AuthState.Local]
|
||||
* au redémarrage au lieu de retomber sur la page de connexion.
|
||||
*/
|
||||
@Singleton
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package com.vaultdrop.mobile.domain
|
||||
package com.kazier.mobile.domain
|
||||
|
||||
/** Clés de `user_preferences` — miroir de `services/db/schema.ts`. */
|
||||
object PrefKeys {
|
||||
+3
-3
@@ -1,7 +1,7 @@
|
||||
package com.vaultdrop.mobile.domain
|
||||
package com.kazier.mobile.domain
|
||||
|
||||
import com.vaultdrop.mobile.data.local.dao.UserPreferenceDao
|
||||
import com.vaultdrop.mobile.data.local.entity.UserPreferenceEntity
|
||||
import com.kazier.mobile.data.local.dao.UserPreferenceDao
|
||||
import com.kazier.mobile.data.local.entity.UserPreferenceEntity
|
||||
import java.util.concurrent.atomic.AtomicBoolean
|
||||
import javax.inject.Inject
|
||||
import javax.inject.Named
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package com.vaultdrop.mobile.domain
|
||||
package com.kazier.mobile.domain
|
||||
|
||||
/**
|
||||
* Règle de placement d'une ressource (`sync_status`), partagée entre files et
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package com.vaultdrop.mobile.domain
|
||||
package com.kazier.mobile.domain
|
||||
|
||||
/**
|
||||
* Préférence d'affichage de la page Réglages, persistée dans `user_preferences`.
|
||||
+3
-3
@@ -1,7 +1,7 @@
|
||||
package com.vaultdrop.mobile.domain
|
||||
package com.kazier.mobile.domain
|
||||
|
||||
import com.vaultdrop.mobile.data.local.dao.UserPreferenceDao
|
||||
import com.vaultdrop.mobile.data.local.entity.UserPreferenceEntity
|
||||
import com.kazier.mobile.data.local.dao.UserPreferenceDao
|
||||
import com.kazier.mobile.data.local.entity.UserPreferenceEntity
|
||||
import java.util.concurrent.atomic.AtomicBoolean
|
||||
import javax.inject.Inject
|
||||
import javax.inject.Singleton
|
||||
+4
-4
@@ -1,9 +1,9 @@
|
||||
package com.vaultdrop.mobile.features.connection
|
||||
package com.kazier.mobile.features.connection
|
||||
|
||||
import androidx.lifecycle.ViewModel
|
||||
import androidx.lifecycle.viewModelScope
|
||||
import com.vaultdrop.mobile.auth.TokenProvider
|
||||
import com.vaultdrop.mobile.domain.ServerConfigStore
|
||||
import com.kazier.mobile.auth.TokenProvider
|
||||
import com.kazier.mobile.domain.ServerConfigStore
|
||||
import dagger.hilt.android.lifecycle.HiltViewModel
|
||||
import kotlinx.coroutines.Job
|
||||
import kotlinx.coroutines.delay
|
||||
@@ -30,7 +30,7 @@ sealed interface ServerConnectionStatus {
|
||||
|
||||
/**
|
||||
* Surveille la joignabilité du serveur configuré (ping `/health`) et expose le
|
||||
* résultat pour le badge du header. Scope Activity (créé dans [VaultDropApp]),
|
||||
* résultat pour le badge du header. Scope Activity (créé dans [KazierApp]),
|
||||
* comme [SyncViewModel].
|
||||
*
|
||||
* - ne ping que lorsqu'un compte est connecté ([TokenProvider.current] non nul),
|
||||
+7
-7
@@ -1,4 +1,4 @@
|
||||
package com.vaultdrop.mobile.features.ocr
|
||||
package com.kazier.mobile.features.ocr
|
||||
|
||||
import android.content.Context
|
||||
import androidx.hilt.work.HiltWorker
|
||||
@@ -10,12 +10,12 @@ import androidx.work.NetworkType
|
||||
import androidx.work.OneTimeWorkRequestBuilder
|
||||
import androidx.work.WorkManager
|
||||
import androidx.work.WorkerParameters
|
||||
import com.vaultdrop.mobile.auth.TokenProvider
|
||||
import com.vaultdrop.mobile.data.local.dao.FileDao
|
||||
import com.vaultdrop.mobile.data.remote.ApiException
|
||||
import com.vaultdrop.mobile.data.remote.dto.OcrJobStatus
|
||||
import com.vaultdrop.mobile.data.repository.OcrAutoOutcome
|
||||
import com.vaultdrop.mobile.data.repository.OcrRepository
|
||||
import com.kazier.mobile.auth.TokenProvider
|
||||
import com.kazier.mobile.data.local.dao.FileDao
|
||||
import com.kazier.mobile.data.remote.ApiException
|
||||
import com.kazier.mobile.data.remote.dto.OcrJobStatus
|
||||
import com.kazier.mobile.data.repository.OcrAutoOutcome
|
||||
import com.kazier.mobile.data.repository.OcrRepository
|
||||
import dagger.assisted.Assisted
|
||||
import dagger.assisted.AssistedInject
|
||||
import java.util.concurrent.TimeUnit
|
||||
+7
-7
@@ -1,14 +1,14 @@
|
||||
package com.vaultdrop.mobile.features.ocr
|
||||
package com.kazier.mobile.features.ocr
|
||||
|
||||
import android.content.Context
|
||||
import androidx.lifecycle.ViewModel
|
||||
import androidx.lifecycle.viewModelScope
|
||||
import com.vaultdrop.mobile.R
|
||||
import com.vaultdrop.mobile.auth.TokenProvider
|
||||
import com.vaultdrop.mobile.data.local.entity.FileEntity
|
||||
import com.vaultdrop.mobile.data.remote.ApiException
|
||||
import com.vaultdrop.mobile.data.remote.dto.OcrJobStatus
|
||||
import com.vaultdrop.mobile.data.repository.OcrRepository
|
||||
import com.kazier.mobile.R
|
||||
import com.kazier.mobile.auth.TokenProvider
|
||||
import com.kazier.mobile.data.local.entity.FileEntity
|
||||
import com.kazier.mobile.data.remote.ApiException
|
||||
import com.kazier.mobile.data.remote.dto.OcrJobStatus
|
||||
import com.kazier.mobile.data.repository.OcrRepository
|
||||
import dagger.hilt.android.lifecycle.HiltViewModel
|
||||
import dagger.hilt.android.qualifiers.ApplicationContext
|
||||
import kotlinx.coroutines.Job
|
||||
+7
-7
@@ -1,16 +1,16 @@
|
||||
package com.vaultdrop.mobile.features.saf
|
||||
package com.kazier.mobile.features.saf
|
||||
|
||||
import android.content.ContentResolver
|
||||
import android.content.Context
|
||||
import android.net.Uri
|
||||
import android.provider.DocumentsContract
|
||||
import androidx.room.withTransaction
|
||||
import com.vaultdrop.mobile.data.local.AppDatabase
|
||||
import com.vaultdrop.mobile.data.local.entity.FileEntity
|
||||
import com.vaultdrop.mobile.data.local.entity.FileStatus
|
||||
import com.vaultdrop.mobile.data.repository.FileRepository
|
||||
import com.vaultdrop.mobile.data.repository.OutboxRepository
|
||||
import com.vaultdrop.mobile.features.thumbnails.ThumbnailStore
|
||||
import com.kazier.mobile.data.local.AppDatabase
|
||||
import com.kazier.mobile.data.local.entity.FileEntity
|
||||
import com.kazier.mobile.data.local.entity.FileStatus
|
||||
import com.kazier.mobile.data.repository.FileRepository
|
||||
import com.kazier.mobile.data.repository.OutboxRepository
|
||||
import com.kazier.mobile.features.thumbnails.ThumbnailStore
|
||||
import dagger.hilt.android.qualifiers.ApplicationContext
|
||||
import kotlinx.coroutines.Dispatchers
|
||||
import kotlinx.coroutines.withContext
|
||||
+3
-3
@@ -1,11 +1,11 @@
|
||||
package com.vaultdrop.mobile.features.saf
|
||||
package com.kazier.mobile.features.saf
|
||||
|
||||
import android.content.ContentResolver
|
||||
import android.content.Context
|
||||
import android.net.Uri
|
||||
import android.provider.DocumentsContract
|
||||
import com.vaultdrop.mobile.data.repository.FileRepository
|
||||
import com.vaultdrop.mobile.data.repository.FolderRepository
|
||||
import com.kazier.mobile.data.repository.FileRepository
|
||||
import com.kazier.mobile.data.repository.FolderRepository
|
||||
import dagger.hilt.android.qualifiers.ApplicationContext
|
||||
import kotlinx.coroutines.Dispatchers
|
||||
import kotlinx.coroutines.withContext
|
||||
+8
-8
@@ -1,17 +1,17 @@
|
||||
package com.vaultdrop.mobile.features.saf
|
||||
package com.kazier.mobile.features.saf
|
||||
|
||||
import android.content.ContentResolver
|
||||
import android.content.Context
|
||||
import android.net.Uri
|
||||
import android.provider.DocumentsContract
|
||||
import androidx.room.withTransaction
|
||||
import com.vaultdrop.mobile.data.local.AppDatabase
|
||||
import com.vaultdrop.mobile.data.local.entity.FileEntity
|
||||
import com.vaultdrop.mobile.data.local.entity.FolderEntity
|
||||
import com.vaultdrop.mobile.data.repository.FileRepository
|
||||
import com.vaultdrop.mobile.data.repository.FolderRepository
|
||||
import com.vaultdrop.mobile.data.repository.OutboxRepository
|
||||
import com.vaultdrop.mobile.features.thumbnails.ThumbnailStore
|
||||
import com.kazier.mobile.data.local.AppDatabase
|
||||
import com.kazier.mobile.data.local.entity.FileEntity
|
||||
import com.kazier.mobile.data.local.entity.FolderEntity
|
||||
import com.kazier.mobile.data.repository.FileRepository
|
||||
import com.kazier.mobile.data.repository.FolderRepository
|
||||
import com.kazier.mobile.data.repository.OutboxRepository
|
||||
import com.kazier.mobile.features.thumbnails.ThumbnailStore
|
||||
import dagger.hilt.android.qualifiers.ApplicationContext
|
||||
import kotlinx.coroutines.Dispatchers
|
||||
import kotlinx.coroutines.withContext
|
||||
+5
-5
@@ -1,9 +1,9 @@
|
||||
package com.vaultdrop.mobile.features.saf
|
||||
package com.kazier.mobile.features.saf
|
||||
|
||||
import com.vaultdrop.mobile.data.local.entity.FolderEntity
|
||||
import com.vaultdrop.mobile.data.repository.FileRepository
|
||||
import com.vaultdrop.mobile.data.repository.FolderRepository
|
||||
import com.vaultdrop.mobile.data.repository.SaveFolderInput
|
||||
import com.kazier.mobile.data.local.entity.FolderEntity
|
||||
import com.kazier.mobile.data.repository.FileRepository
|
||||
import com.kazier.mobile.data.repository.FolderRepository
|
||||
import com.kazier.mobile.data.repository.SaveFolderInput
|
||||
import kotlinx.coroutines.Dispatchers
|
||||
import kotlinx.coroutines.withContext
|
||||
import timber.log.Timber
|
||||
+6
-6
@@ -1,15 +1,15 @@
|
||||
package com.vaultdrop.mobile.features.saf
|
||||
package com.kazier.mobile.features.saf
|
||||
|
||||
import android.content.ContentResolver
|
||||
import android.content.Context
|
||||
import android.net.Uri
|
||||
import android.provider.DocumentsContract
|
||||
import androidx.room.withTransaction
|
||||
import com.vaultdrop.mobile.data.local.AppDatabase
|
||||
import com.vaultdrop.mobile.data.local.entity.FileEntity
|
||||
import com.vaultdrop.mobile.data.repository.FileRepository
|
||||
import com.vaultdrop.mobile.data.repository.OutboxRepository
|
||||
import com.vaultdrop.mobile.features.thumbnails.ThumbnailStore
|
||||
import com.kazier.mobile.data.local.AppDatabase
|
||||
import com.kazier.mobile.data.local.entity.FileEntity
|
||||
import com.kazier.mobile.data.repository.FileRepository
|
||||
import com.kazier.mobile.data.repository.OutboxRepository
|
||||
import com.kazier.mobile.features.thumbnails.ThumbnailStore
|
||||
import dagger.hilt.android.qualifiers.ApplicationContext
|
||||
import kotlinx.coroutines.Dispatchers
|
||||
import kotlinx.coroutines.withContext
|
||||
+2
-2
@@ -1,4 +1,4 @@
|
||||
package com.vaultdrop.mobile.features.saf
|
||||
package com.kazier.mobile.features.saf
|
||||
|
||||
import android.content.ContentResolver
|
||||
import android.content.Context
|
||||
@@ -12,7 +12,7 @@ import javax.inject.Singleton
|
||||
|
||||
/**
|
||||
* Crée un dossier physique via DocumentsContract (SAF) — facteur commun de
|
||||
* `ensureVaultDropFolder` (onboarding) et de la feature « Créer un dossier ».
|
||||
* `ensureKazierRootFolder` (onboarding) et de la feature « Créer un dossier ».
|
||||
*
|
||||
* Le parent peut être un URI *tree* (racine importée) ou *document* (dossier
|
||||
* déjà créé/parcouru) : les deux sont acceptés par `createDocument`.
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package com.vaultdrop.mobile.features.saf
|
||||
package com.kazier.mobile.features.saf
|
||||
|
||||
import android.content.ContentResolver
|
||||
import android.content.Context
|
||||
+2
-2
@@ -1,10 +1,10 @@
|
||||
package com.vaultdrop.mobile.features.saf
|
||||
package com.kazier.mobile.features.saf
|
||||
|
||||
import android.content.ContentResolver
|
||||
import android.net.Uri
|
||||
import android.provider.DocumentsContract
|
||||
import android.provider.OpenableColumns
|
||||
import com.vaultdrop.mobile.data.repository.FolderRepository
|
||||
import com.kazier.mobile.data.repository.FolderRepository
|
||||
import java.io.File
|
||||
|
||||
/**
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package com.vaultdrop.mobile.features.scan
|
||||
package com.kazier.mobile.features.scan
|
||||
|
||||
import android.graphics.PointF
|
||||
import kotlin.math.abs
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package com.vaultdrop.mobile.features.scan
|
||||
package com.kazier.mobile.features.scan
|
||||
|
||||
import android.graphics.Bitmap
|
||||
import android.graphics.PointF
|
||||
+9
-9
@@ -1,15 +1,15 @@
|
||||
package com.vaultdrop.mobile.features.sync
|
||||
package com.kazier.mobile.features.sync
|
||||
|
||||
import android.net.Uri
|
||||
import androidx.room.withTransaction
|
||||
import com.vaultdrop.mobile.data.local.AppDatabase
|
||||
import com.vaultdrop.mobile.data.local.entity.FolderEntity
|
||||
import com.vaultdrop.mobile.data.repository.FileRepository
|
||||
import com.vaultdrop.mobile.data.repository.FolderRepository
|
||||
import com.vaultdrop.mobile.data.repository.OutboxRepository
|
||||
import com.vaultdrop.mobile.data.repository.SaveFileInput
|
||||
import com.vaultdrop.mobile.data.repository.SaveFolderInput
|
||||
import com.vaultdrop.mobile.domain.DeviceIdentity
|
||||
import com.kazier.mobile.data.local.AppDatabase
|
||||
import com.kazier.mobile.data.local.entity.FolderEntity
|
||||
import com.kazier.mobile.data.repository.FileRepository
|
||||
import com.kazier.mobile.data.repository.FolderRepository
|
||||
import com.kazier.mobile.data.repository.OutboxRepository
|
||||
import com.kazier.mobile.data.repository.SaveFileInput
|
||||
import com.kazier.mobile.data.repository.SaveFolderInput
|
||||
import com.kazier.mobile.domain.DeviceIdentity
|
||||
import kotlinx.coroutines.sync.Mutex
|
||||
import kotlinx.coroutines.sync.withLock
|
||||
import timber.log.Timber
|
||||
+11
-11
@@ -1,4 +1,4 @@
|
||||
package com.vaultdrop.mobile.features.sync
|
||||
package com.kazier.mobile.features.sync
|
||||
|
||||
import android.content.Context
|
||||
import androidx.hilt.work.HiltWorker
|
||||
@@ -13,16 +13,16 @@ import androidx.work.WorkerParameters
|
||||
import com.squareup.moshi.JsonAdapter
|
||||
import com.squareup.moshi.Moshi
|
||||
import com.squareup.moshi.Types
|
||||
import com.vaultdrop.mobile.auth.TokenProvider
|
||||
import com.vaultdrop.mobile.data.local.dao.FileDao
|
||||
import com.vaultdrop.mobile.data.local.dao.FolderDao
|
||||
import com.vaultdrop.mobile.data.local.dao.PendingOperationDao
|
||||
import com.vaultdrop.mobile.data.local.entity.PendingOperationEntity
|
||||
import com.vaultdrop.mobile.data.local.entity.PendingOperationType
|
||||
import com.vaultdrop.mobile.data.remote.ApiClient
|
||||
import com.vaultdrop.mobile.data.remote.ApiException
|
||||
import com.vaultdrop.mobile.data.remote.dto.SyncOpDto
|
||||
import com.vaultdrop.mobile.features.ocr.OcrAutoWorker
|
||||
import com.kazier.mobile.auth.TokenProvider
|
||||
import com.kazier.mobile.data.local.dao.FileDao
|
||||
import com.kazier.mobile.data.local.dao.FolderDao
|
||||
import com.kazier.mobile.data.local.dao.PendingOperationDao
|
||||
import com.kazier.mobile.data.local.entity.PendingOperationEntity
|
||||
import com.kazier.mobile.data.local.entity.PendingOperationType
|
||||
import com.kazier.mobile.data.remote.ApiClient
|
||||
import com.kazier.mobile.data.remote.ApiException
|
||||
import com.kazier.mobile.data.remote.dto.SyncOpDto
|
||||
import com.kazier.mobile.features.ocr.OcrAutoWorker
|
||||
import dagger.assisted.Assisted
|
||||
import dagger.assisted.AssistedInject
|
||||
import java.util.concurrent.TimeUnit
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package com.vaultdrop.mobile.features.sync
|
||||
package com.kazier.mobile.features.sync
|
||||
|
||||
import android.content.ContentResolver
|
||||
import android.content.Context
|
||||
+9
-9
@@ -1,17 +1,17 @@
|
||||
package com.vaultdrop.mobile.features.sync
|
||||
package com.kazier.mobile.features.sync
|
||||
|
||||
import android.content.Context
|
||||
import androidx.lifecycle.ViewModel
|
||||
import androidx.lifecycle.viewModelScope
|
||||
import androidx.work.WorkInfo
|
||||
import androidx.work.WorkManager
|
||||
import com.vaultdrop.mobile.data.local.dao.PendingOperationDao
|
||||
import com.vaultdrop.mobile.data.local.entity.PendingOpStatus
|
||||
import com.vaultdrop.mobile.data.local.entity.PendingOperationEntity
|
||||
import com.vaultdrop.mobile.data.repository.FolderRepository
|
||||
import com.vaultdrop.mobile.data.repository.SaveFolderInput
|
||||
import com.vaultdrop.mobile.data.repository.ShareRepository
|
||||
import com.vaultdrop.mobile.features.ocr.OcrAutoWorker
|
||||
import com.kazier.mobile.data.local.dao.PendingOperationDao
|
||||
import com.kazier.mobile.data.local.entity.PendingOpStatus
|
||||
import com.kazier.mobile.data.local.entity.PendingOperationEntity
|
||||
import com.kazier.mobile.data.repository.FolderRepository
|
||||
import com.kazier.mobile.data.repository.SaveFolderInput
|
||||
import com.kazier.mobile.data.repository.ShareRepository
|
||||
import com.kazier.mobile.features.ocr.OcrAutoWorker
|
||||
import dagger.hilt.android.lifecycle.HiltViewModel
|
||||
import dagger.hilt.android.qualifiers.ApplicationContext
|
||||
import kotlinx.coroutines.CancellationException
|
||||
@@ -125,7 +125,7 @@ class SyncViewModel @Inject constructor(
|
||||
/**
|
||||
* Import volontaire d'un dossier SAF (ajout + marche récursive).
|
||||
*
|
||||
* Scope Activity (VaultDropApp) : survit aux changements d'onglets — un
|
||||
* Scope Activity (KazierApp) : survit aux changements d'onglets — un
|
||||
* walk lancé ici n'est pas annulé quand l'utilisateur quitte l'écran
|
||||
* Fichiers, et `importState` continue d'être visible partout.
|
||||
*
|
||||
+5
-5
@@ -1,14 +1,14 @@
|
||||
package com.vaultdrop.mobile.features.thumbnails
|
||||
package com.kazier.mobile.features.thumbnails
|
||||
|
||||
import android.content.ContentResolver
|
||||
import android.content.Context
|
||||
import android.graphics.Bitmap
|
||||
import android.graphics.BitmapFactory
|
||||
import android.graphics.pdf.PdfRenderer
|
||||
import com.vaultdrop.mobile.data.local.entity.FileEntity
|
||||
import com.vaultdrop.mobile.domain.FileCategory
|
||||
import com.vaultdrop.mobile.ui.components.categoryValue
|
||||
import com.vaultdrop.mobile.ui.document.content.DocumentContent
|
||||
import com.kazier.mobile.data.local.entity.FileEntity
|
||||
import com.kazier.mobile.domain.FileCategory
|
||||
import com.kazier.mobile.ui.components.categoryValue
|
||||
import com.kazier.mobile.ui.document.content.DocumentContent
|
||||
import dagger.hilt.android.qualifiers.ApplicationContext
|
||||
import kotlinx.coroutines.Dispatchers
|
||||
import kotlinx.coroutines.sync.Mutex
|
||||
+3
-3
@@ -1,7 +1,7 @@
|
||||
package com.vaultdrop.mobile.ui.auth
|
||||
package com.kazier.mobile.ui.auth
|
||||
|
||||
import com.vaultdrop.mobile.R
|
||||
import com.vaultdrop.mobile.data.remote.dto.UserDto
|
||||
import com.kazier.mobile.R
|
||||
import com.kazier.mobile.data.remote.dto.UserDto
|
||||
|
||||
/** État global de connexion — équivalent de `AuthStatus` JS. */
|
||||
sealed interface AuthState {
|
||||
+8
-8
@@ -1,15 +1,15 @@
|
||||
package com.vaultdrop.mobile.ui.auth
|
||||
package com.kazier.mobile.ui.auth
|
||||
|
||||
import android.content.Context
|
||||
import androidx.lifecycle.ViewModel
|
||||
import androidx.lifecycle.viewModelScope
|
||||
import com.vaultdrop.mobile.auth.SessionManager
|
||||
import com.vaultdrop.mobile.data.remote.ApiClient
|
||||
import com.vaultdrop.mobile.data.remote.ApiException
|
||||
import com.vaultdrop.mobile.data.repository.AuthRepository
|
||||
import com.vaultdrop.mobile.data.repository.ShareRepository
|
||||
import com.vaultdrop.mobile.features.sync.OutboxSyncWorker
|
||||
import com.vaultdrop.mobile.features.ocr.OcrAutoWorker
|
||||
import com.kazier.mobile.auth.SessionManager
|
||||
import com.kazier.mobile.data.remote.ApiClient
|
||||
import com.kazier.mobile.data.remote.ApiException
|
||||
import com.kazier.mobile.data.repository.AuthRepository
|
||||
import com.kazier.mobile.data.repository.ShareRepository
|
||||
import com.kazier.mobile.features.sync.OutboxSyncWorker
|
||||
import com.kazier.mobile.features.ocr.OcrAutoWorker
|
||||
import dagger.hilt.android.lifecycle.HiltViewModel
|
||||
import dagger.hilt.android.qualifiers.ApplicationContext
|
||||
import kotlinx.coroutines.Dispatchers
|
||||
+2
-2
@@ -1,4 +1,4 @@
|
||||
package com.vaultdrop.mobile.ui.auth
|
||||
package com.kazier.mobile.ui.auth
|
||||
|
||||
import androidx.compose.foundation.layout.Arrangement
|
||||
import androidx.compose.foundation.layout.Column
|
||||
@@ -34,7 +34,7 @@ import androidx.compose.ui.text.style.TextAlign
|
||||
import androidx.compose.ui.unit.dp
|
||||
import androidx.hilt.navigation.compose.hiltViewModel
|
||||
import androidx.lifecycle.compose.collectAsStateWithLifecycle
|
||||
import com.vaultdrop.mobile.R
|
||||
import com.kazier.mobile.R
|
||||
|
||||
@Composable
|
||||
fun LoginScreen(
|
||||
+5
-5
@@ -1,4 +1,4 @@
|
||||
package com.vaultdrop.mobile.ui.components
|
||||
package com.kazier.mobile.ui.components
|
||||
|
||||
import androidx.compose.foundation.layout.Box
|
||||
import androidx.compose.foundation.layout.size
|
||||
@@ -25,10 +25,10 @@ import androidx.compose.ui.res.stringResource
|
||||
import androidx.compose.ui.text.font.FontWeight
|
||||
import androidx.compose.ui.unit.dp
|
||||
import androidx.compose.ui.unit.sp
|
||||
import com.vaultdrop.mobile.R
|
||||
import com.vaultdrop.mobile.data.local.entity.FileEntity
|
||||
import com.vaultdrop.mobile.data.local.entity.FileStatus
|
||||
import com.vaultdrop.mobile.features.saf.FileDeleter
|
||||
import com.kazier.mobile.R
|
||||
import com.kazier.mobile.data.local.entity.FileEntity
|
||||
import com.kazier.mobile.data.local.entity.FileStatus
|
||||
import com.kazier.mobile.features.saf.FileDeleter
|
||||
|
||||
/** Résultat de l\'analyse de compatibilité entre les fichiers et le mode choisi. */
|
||||
data class DeleteReview(
|
||||
+4
-4
@@ -1,4 +1,4 @@
|
||||
package com.vaultdrop.mobile.ui.components
|
||||
package com.kazier.mobile.ui.components
|
||||
|
||||
import androidx.compose.foundation.layout.size
|
||||
import androidx.compose.material.icons.Icons
|
||||
@@ -15,9 +15,9 @@ import androidx.compose.ui.Modifier
|
||||
import androidx.compose.ui.graphics.Color
|
||||
import androidx.compose.ui.graphics.vector.ImageVector
|
||||
import androidx.compose.ui.unit.Dp
|
||||
import com.vaultdrop.mobile.data.local.entity.FileEntity
|
||||
import com.vaultdrop.mobile.domain.FileCategory
|
||||
import com.vaultdrop.mobile.domain.computeCategory
|
||||
import com.kazier.mobile.data.local.entity.FileEntity
|
||||
import com.kazier.mobile.domain.FileCategory
|
||||
import com.kazier.mobile.domain.computeCategory
|
||||
|
||||
/** Pictogramme dédié à chaque catégorie de document. */
|
||||
val FileCategory.icon: ImageVector
|
||||
+3
-3
@@ -1,4 +1,4 @@
|
||||
package com.vaultdrop.mobile.ui.components
|
||||
package com.kazier.mobile.ui.components
|
||||
|
||||
import androidx.compose.foundation.background
|
||||
import androidx.compose.foundation.layout.Arrangement
|
||||
@@ -17,8 +17,8 @@ import androidx.compose.ui.Modifier
|
||||
import androidx.compose.ui.draw.clip
|
||||
import androidx.compose.ui.res.stringResource
|
||||
import androidx.compose.ui.unit.dp
|
||||
import com.vaultdrop.mobile.R
|
||||
import com.vaultdrop.mobile.data.local.entity.FileEntity
|
||||
import com.kazier.mobile.R
|
||||
import com.kazier.mobile.data.local.entity.FileEntity
|
||||
|
||||
/**
|
||||
* Un fichier est « à traiter » s'il est présent physiquement et jamais encore
|
||||
+3
-3
@@ -1,4 +1,4 @@
|
||||
package com.vaultdrop.mobile.ui.components
|
||||
package com.kazier.mobile.ui.components
|
||||
|
||||
import androidx.compose.foundation.layout.size
|
||||
import androidx.compose.material.icons.Icons
|
||||
@@ -11,8 +11,8 @@ import androidx.compose.ui.Modifier
|
||||
import androidx.compose.ui.graphics.Color
|
||||
import androidx.compose.ui.graphics.vector.ImageVector
|
||||
import androidx.compose.ui.unit.Dp
|
||||
import com.vaultdrop.mobile.data.local.entity.FileEntity
|
||||
import com.vaultdrop.mobile.data.local.entity.FileStatus
|
||||
import com.kazier.mobile.data.local.entity.FileEntity
|
||||
import com.kazier.mobile.data.local.entity.FileStatus
|
||||
|
||||
/** Placement d'un fichier entre le device et le serveur distant. */
|
||||
private enum class FileSyncPlacement {
|
||||
+4
-4
@@ -1,4 +1,4 @@
|
||||
package com.vaultdrop.mobile.ui.components
|
||||
package com.kazier.mobile.ui.components
|
||||
|
||||
import android.content.Context
|
||||
import androidx.compose.foundation.layout.size
|
||||
@@ -16,9 +16,9 @@ import androidx.compose.ui.unit.Dp
|
||||
import androidx.compose.ui.unit.dp
|
||||
import coil.compose.AsyncImage
|
||||
import coil.request.ImageRequest
|
||||
import com.vaultdrop.mobile.data.local.entity.FileEntity
|
||||
import com.vaultdrop.mobile.domain.FileCategory
|
||||
import com.vaultdrop.mobile.features.thumbnails.ThumbnailStore
|
||||
import com.kazier.mobile.data.local.entity.FileEntity
|
||||
import com.kazier.mobile.domain.FileCategory
|
||||
import com.kazier.mobile.features.thumbnails.ThumbnailStore
|
||||
import dagger.hilt.EntryPoint
|
||||
import dagger.hilt.InstallIn
|
||||
import dagger.hilt.android.EntryPointAccessors
|
||||
+2
-2
@@ -1,4 +1,4 @@
|
||||
package com.vaultdrop.mobile.ui.components
|
||||
package com.kazier.mobile.ui.components
|
||||
|
||||
import androidx.compose.foundation.layout.fillMaxWidth
|
||||
import androidx.compose.material3.AlertDialog
|
||||
@@ -12,7 +12,7 @@ import androidx.compose.runtime.remember
|
||||
import androidx.compose.runtime.setValue
|
||||
import androidx.compose.ui.Modifier
|
||||
import androidx.compose.ui.res.stringResource
|
||||
import com.vaultdrop.mobile.R
|
||||
import com.kazier.mobile.R
|
||||
|
||||
/** Dialog de nommage d'un nouveau dossier — partagé accueil / dossier. */
|
||||
@Composable
|
||||
+3
-3
@@ -1,4 +1,4 @@
|
||||
package com.vaultdrop.mobile.ui.components
|
||||
package com.kazier.mobile.ui.components
|
||||
|
||||
import androidx.compose.foundation.clickable
|
||||
import androidx.compose.foundation.layout.Arrangement
|
||||
@@ -25,8 +25,8 @@ import androidx.compose.ui.res.stringResource
|
||||
import androidx.compose.ui.text.font.FontWeight
|
||||
import androidx.compose.ui.text.style.TextOverflow
|
||||
import androidx.compose.ui.unit.dp
|
||||
import com.vaultdrop.mobile.R
|
||||
import com.vaultdrop.mobile.data.local.entity.FolderEntity
|
||||
import com.kazier.mobile.R
|
||||
import com.kazier.mobile.data.local.entity.FolderEntity
|
||||
|
||||
/**
|
||||
* Picker de destination pour déplacer N fichiers : liste arborescente (indent
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package com.vaultdrop.mobile.ui.components
|
||||
package com.kazier.mobile.ui.components
|
||||
|
||||
import androidx.compose.foundation.layout.size
|
||||
import androidx.compose.material.icons.Icons
|
||||
+4
-4
@@ -1,4 +1,4 @@
|
||||
package com.vaultdrop.mobile.ui.components
|
||||
package com.kazier.mobile.ui.components
|
||||
|
||||
import androidx.compose.foundation.background
|
||||
import androidx.compose.foundation.clickable
|
||||
@@ -20,9 +20,9 @@ import androidx.compose.ui.res.stringResource
|
||||
import androidx.compose.ui.semantics.Role
|
||||
import androidx.compose.ui.text.font.FontWeight
|
||||
import androidx.compose.ui.unit.dp
|
||||
import com.vaultdrop.mobile.R
|
||||
import com.vaultdrop.mobile.features.connection.ServerConnectionStatus
|
||||
import com.vaultdrop.mobile.ui.theme.InactiveGray
|
||||
import com.kazier.mobile.R
|
||||
import com.kazier.mobile.features.connection.ServerConnectionStatus
|
||||
import com.kazier.mobile.ui.theme.InactiveGray
|
||||
|
||||
private val OnlineGreen = Color(0xFF2E7D32)
|
||||
private val CheckingAmber = Color(0xFFF9A825)
|
||||
+5
-5
@@ -1,4 +1,4 @@
|
||||
package com.vaultdrop.mobile.ui.components
|
||||
package com.kazier.mobile.ui.components
|
||||
|
||||
import android.text.format.DateUtils
|
||||
import androidx.compose.foundation.background
|
||||
@@ -24,10 +24,10 @@ import androidx.compose.ui.graphics.Color
|
||||
import androidx.compose.ui.res.stringResource
|
||||
import androidx.compose.ui.text.font.FontWeight
|
||||
import androidx.compose.ui.unit.dp
|
||||
import com.vaultdrop.mobile.R
|
||||
import com.vaultdrop.mobile.data.local.entity.PendingOpStatus
|
||||
import com.vaultdrop.mobile.data.local.entity.PendingOperationEntity
|
||||
import com.vaultdrop.mobile.features.sync.SyncViewModel
|
||||
import com.kazier.mobile.R
|
||||
import com.kazier.mobile.data.local.entity.PendingOpStatus
|
||||
import com.kazier.mobile.data.local.entity.PendingOperationEntity
|
||||
import com.kazier.mobile.features.sync.SyncViewModel
|
||||
|
||||
private val StatusPending = Color(0xFF1E88E5)
|
||||
private val StatusSynced = Color(0xFF2E7D32)
|
||||
+3
-3
@@ -1,4 +1,4 @@
|
||||
package com.vaultdrop.mobile.ui.components
|
||||
package com.kazier.mobile.ui.components
|
||||
|
||||
import androidx.compose.foundation.background
|
||||
import androidx.compose.foundation.clickable
|
||||
@@ -29,8 +29,8 @@ import androidx.compose.ui.semantics.Role
|
||||
import androidx.compose.ui.text.font.FontWeight
|
||||
import androidx.compose.ui.unit.dp
|
||||
import androidx.lifecycle.compose.collectAsStateWithLifecycle
|
||||
import com.vaultdrop.mobile.R
|
||||
import com.vaultdrop.mobile.features.sync.SyncViewModel
|
||||
import com.kazier.mobile.R
|
||||
import com.kazier.mobile.features.sync.SyncViewModel
|
||||
|
||||
private val SyncingAccent = Color(0xFF1E88E5)
|
||||
private val PendingAmber = Color(0xFFF9A825)
|
||||
+3
-3
@@ -1,4 +1,4 @@
|
||||
package com.vaultdrop.mobile.ui.components
|
||||
package com.kazier.mobile.ui.components
|
||||
|
||||
import androidx.compose.foundation.clickable
|
||||
import androidx.compose.foundation.layout.Arrangement
|
||||
@@ -22,8 +22,8 @@ import androidx.compose.ui.text.font.FontWeight
|
||||
import androidx.compose.ui.unit.dp
|
||||
import androidx.hilt.navigation.compose.hiltViewModel
|
||||
import androidx.lifecycle.compose.collectAsStateWithLifecycle
|
||||
import com.vaultdrop.mobile.R
|
||||
import com.vaultdrop.mobile.ui.watchedfolders.WatchedFoldersViewModel
|
||||
import com.kazier.mobile.R
|
||||
import com.kazier.mobile.ui.watchedfolders.WatchedFoldersViewModel
|
||||
|
||||
/** Seuil au-delà duquel le badge affiche « 99+ » au lieu du compte exact. */
|
||||
private const val COUNT_CAP = 99
|
||||
+8
-8
@@ -1,4 +1,4 @@
|
||||
package com.vaultdrop.mobile.ui.dashboard
|
||||
package com.kazier.mobile.ui.dashboard
|
||||
|
||||
import androidx.compose.foundation.layout.Arrangement
|
||||
import androidx.compose.foundation.layout.Box
|
||||
@@ -30,13 +30,13 @@ import androidx.compose.ui.text.style.TextAlign
|
||||
import androidx.compose.ui.unit.dp
|
||||
import androidx.hilt.navigation.compose.hiltViewModel
|
||||
import androidx.lifecycle.compose.collectAsStateWithLifecycle
|
||||
import com.vaultdrop.mobile.R
|
||||
import com.vaultdrop.mobile.features.connection.ConnectionStatusViewModel
|
||||
import com.vaultdrop.mobile.features.sync.SyncViewModel
|
||||
import com.vaultdrop.mobile.ui.components.ServerStatusBadge
|
||||
import com.vaultdrop.mobile.ui.components.SyncStatusAction
|
||||
import com.vaultdrop.mobile.ui.navigation.FloatingNavBar
|
||||
import com.vaultdrop.mobile.ui.navigation.NavTab
|
||||
import com.kazier.mobile.R
|
||||
import com.kazier.mobile.features.connection.ConnectionStatusViewModel
|
||||
import com.kazier.mobile.features.sync.SyncViewModel
|
||||
import com.kazier.mobile.ui.components.ServerStatusBadge
|
||||
import com.kazier.mobile.ui.components.SyncStatusAction
|
||||
import com.kazier.mobile.ui.navigation.FloatingNavBar
|
||||
import com.kazier.mobile.ui.navigation.NavTab
|
||||
|
||||
@OptIn(ExperimentalMaterial3Api::class)
|
||||
@Composable
|
||||
+2
-2
@@ -1,8 +1,8 @@
|
||||
package com.vaultdrop.mobile.ui.dashboard
|
||||
package com.kazier.mobile.ui.dashboard
|
||||
|
||||
import androidx.lifecycle.ViewModel
|
||||
import androidx.lifecycle.viewModelScope
|
||||
import com.vaultdrop.mobile.data.repository.FileRepository
|
||||
import com.kazier.mobile.data.repository.FileRepository
|
||||
import dagger.hilt.android.lifecycle.HiltViewModel
|
||||
import kotlinx.coroutines.flow.SharingStarted
|
||||
import kotlinx.coroutines.flow.StateFlow
|
||||
+19
-19
@@ -1,4 +1,4 @@
|
||||
package com.vaultdrop.mobile.ui.document
|
||||
package com.kazier.mobile.ui.document
|
||||
|
||||
import android.app.Activity
|
||||
import androidx.activity.compose.BackHandler
|
||||
@@ -76,24 +76,24 @@ import androidx.core.view.WindowInsetsCompat
|
||||
import androidx.core.view.WindowInsetsControllerCompat
|
||||
import androidx.hilt.navigation.compose.hiltViewModel
|
||||
import androidx.lifecycle.compose.collectAsStateWithLifecycle
|
||||
import com.vaultdrop.mobile.R
|
||||
import com.vaultdrop.mobile.data.local.entity.FileEntity
|
||||
import com.vaultdrop.mobile.data.local.entity.FileStatus
|
||||
import com.vaultdrop.mobile.data.remote.dto.OcrJobStatus
|
||||
import com.vaultdrop.mobile.domain.FileCategory
|
||||
import com.vaultdrop.mobile.features.connection.ConnectionStatusViewModel
|
||||
import com.vaultdrop.mobile.features.ocr.OcrViewModel
|
||||
import com.vaultdrop.mobile.features.saf.FileDeleter
|
||||
import com.vaultdrop.mobile.features.sync.SyncViewModel
|
||||
import com.vaultdrop.mobile.ui.components.DeleteConfirmDialog
|
||||
import com.vaultdrop.mobile.ui.components.ServerStatusBadge
|
||||
import com.vaultdrop.mobile.ui.components.SyncStatusAction
|
||||
import com.vaultdrop.mobile.ui.components.categoryValue
|
||||
import com.vaultdrop.mobile.ui.document.content.DocumentContentViewer
|
||||
import com.vaultdrop.mobile.ui.document.content.ImageViewer
|
||||
import com.vaultdrop.mobile.ui.document.content.PdfFocusViewer
|
||||
import com.vaultdrop.mobile.ui.document.content.TextFocusViewer
|
||||
import com.vaultdrop.mobile.ui.document.content.ZoomableContent
|
||||
import com.kazier.mobile.R
|
||||
import com.kazier.mobile.data.local.entity.FileEntity
|
||||
import com.kazier.mobile.data.local.entity.FileStatus
|
||||
import com.kazier.mobile.data.remote.dto.OcrJobStatus
|
||||
import com.kazier.mobile.domain.FileCategory
|
||||
import com.kazier.mobile.features.connection.ConnectionStatusViewModel
|
||||
import com.kazier.mobile.features.ocr.OcrViewModel
|
||||
import com.kazier.mobile.features.saf.FileDeleter
|
||||
import com.kazier.mobile.features.sync.SyncViewModel
|
||||
import com.kazier.mobile.ui.components.DeleteConfirmDialog
|
||||
import com.kazier.mobile.ui.components.ServerStatusBadge
|
||||
import com.kazier.mobile.ui.components.SyncStatusAction
|
||||
import com.kazier.mobile.ui.components.categoryValue
|
||||
import com.kazier.mobile.ui.document.content.DocumentContentViewer
|
||||
import com.kazier.mobile.ui.document.content.ImageViewer
|
||||
import com.kazier.mobile.ui.document.content.PdfFocusViewer
|
||||
import com.kazier.mobile.ui.document.content.TextFocusViewer
|
||||
import com.kazier.mobile.ui.document.content.ZoomableContent
|
||||
import kotlinx.coroutines.launch
|
||||
import java.time.Instant
|
||||
import java.time.ZoneId
|
||||
+7
-7
@@ -1,14 +1,14 @@
|
||||
package com.vaultdrop.mobile.ui.document
|
||||
package com.kazier.mobile.ui.document
|
||||
|
||||
import android.content.Context
|
||||
import androidx.lifecycle.ViewModel
|
||||
import androidx.lifecycle.viewModelScope
|
||||
import com.vaultdrop.mobile.R
|
||||
import com.vaultdrop.mobile.data.local.entity.FileEntity
|
||||
import com.vaultdrop.mobile.data.local.entity.FileStatus
|
||||
import com.vaultdrop.mobile.data.local.orderedByReferenceDateDesc
|
||||
import com.vaultdrop.mobile.data.repository.FileRepository
|
||||
import com.vaultdrop.mobile.features.saf.FileDeleter
|
||||
import com.kazier.mobile.R
|
||||
import com.kazier.mobile.data.local.entity.FileEntity
|
||||
import com.kazier.mobile.data.local.entity.FileStatus
|
||||
import com.kazier.mobile.data.local.orderedByReferenceDateDesc
|
||||
import com.kazier.mobile.data.repository.FileRepository
|
||||
import com.kazier.mobile.features.saf.FileDeleter
|
||||
import dagger.hilt.android.lifecycle.HiltViewModel
|
||||
import dagger.hilt.android.qualifiers.ApplicationContext
|
||||
import kotlinx.coroutines.flow.MutableStateFlow
|
||||
+4
-4
@@ -1,4 +1,4 @@
|
||||
package com.vaultdrop.mobile.ui.document.content
|
||||
package com.kazier.mobile.ui.document.content
|
||||
|
||||
import androidx.compose.foundation.layout.Arrangement
|
||||
import androidx.compose.foundation.layout.Column
|
||||
@@ -12,9 +12,9 @@ import androidx.compose.ui.Modifier
|
||||
import androidx.compose.ui.res.stringResource
|
||||
import androidx.compose.ui.text.style.TextAlign
|
||||
import androidx.compose.ui.unit.dp
|
||||
import com.vaultdrop.mobile.R
|
||||
import com.vaultdrop.mobile.data.local.entity.FileEntity
|
||||
import com.vaultdrop.mobile.ui.components.FileCategoryIcon
|
||||
import com.kazier.mobile.R
|
||||
import com.kazier.mobile.data.local.entity.FileEntity
|
||||
import com.kazier.mobile.ui.components.FileCategoryIcon
|
||||
|
||||
/**
|
||||
* Fichier cloud-only : aucune copie physique sur l'appareil (uri = NULL), le
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package com.vaultdrop.mobile.ui.document.content
|
||||
package com.kazier.mobile.ui.document.content
|
||||
|
||||
import android.content.ContentResolver
|
||||
import android.net.Uri
|
||||
+4
-4
@@ -1,4 +1,4 @@
|
||||
package com.vaultdrop.mobile.ui.document.content
|
||||
package com.kazier.mobile.ui.document.content
|
||||
|
||||
import android.content.ContentResolver
|
||||
import androidx.compose.foundation.layout.Column
|
||||
@@ -13,9 +13,9 @@ import androidx.compose.runtime.Composable
|
||||
import androidx.compose.ui.Modifier
|
||||
import androidx.compose.ui.platform.LocalContext
|
||||
import androidx.compose.ui.unit.dp
|
||||
import com.vaultdrop.mobile.data.local.entity.FileEntity
|
||||
import com.vaultdrop.mobile.domain.FileCategory
|
||||
import com.vaultdrop.mobile.ui.components.categoryValue
|
||||
import com.kazier.mobile.data.local.entity.FileEntity
|
||||
import com.kazier.mobile.domain.FileCategory
|
||||
import com.kazier.mobile.ui.components.categoryValue
|
||||
|
||||
/**
|
||||
* Lecteur central d'un document : dispatch par état puis par catégorie.
|
||||
+4
-4
@@ -1,4 +1,4 @@
|
||||
package com.vaultdrop.mobile.ui.document.content
|
||||
package com.kazier.mobile.ui.document.content
|
||||
|
||||
import android.content.ActivityNotFoundException
|
||||
import android.content.Context
|
||||
@@ -17,9 +17,9 @@ import androidx.compose.ui.Modifier
|
||||
import androidx.compose.ui.platform.LocalContext
|
||||
import androidx.compose.ui.res.stringResource
|
||||
import androidx.compose.ui.unit.dp
|
||||
import com.vaultdrop.mobile.R
|
||||
import com.vaultdrop.mobile.data.local.entity.FileEntity
|
||||
import com.vaultdrop.mobile.ui.components.FileCategoryIcon
|
||||
import com.kazier.mobile.R
|
||||
import com.kazier.mobile.data.local.entity.FileEntity
|
||||
import com.kazier.mobile.ui.components.FileCategoryIcon
|
||||
|
||||
/**
|
||||
* Repli pour les formats sans lecteur intégré (OFFICE, VIDÉO, AUDIO, AUTRE) :
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package com.vaultdrop.mobile.ui.document.content
|
||||
package com.kazier.mobile.ui.document.content
|
||||
|
||||
import android.content.ContentResolver
|
||||
import android.net.Uri
|
||||
+3
-3
@@ -1,4 +1,4 @@
|
||||
package com.vaultdrop.mobile.ui.document.content
|
||||
package com.kazier.mobile.ui.document.content
|
||||
|
||||
import android.content.ContentResolver
|
||||
import android.graphics.Bitmap
|
||||
@@ -40,8 +40,8 @@ import androidx.compose.ui.layout.ContentScale
|
||||
import androidx.compose.ui.platform.LocalDensity
|
||||
import androidx.compose.ui.res.stringResource
|
||||
import androidx.compose.ui.unit.dp
|
||||
import com.vaultdrop.mobile.R
|
||||
import com.vaultdrop.mobile.data.local.entity.FileEntity
|
||||
import com.kazier.mobile.R
|
||||
import com.kazier.mobile.data.local.entity.FileEntity
|
||||
import kotlinx.coroutines.Dispatchers
|
||||
import kotlinx.coroutines.runBlocking
|
||||
import kotlinx.coroutines.sync.Mutex
|
||||
+2
-2
@@ -1,4 +1,4 @@
|
||||
package com.vaultdrop.mobile.ui.document.content
|
||||
package com.kazier.mobile.ui.document.content
|
||||
|
||||
import android.content.ContentResolver
|
||||
import androidx.compose.foundation.layout.Box
|
||||
@@ -21,7 +21,7 @@ import androidx.compose.ui.Modifier
|
||||
import androidx.compose.ui.graphics.Color
|
||||
import androidx.compose.ui.res.stringResource
|
||||
import androidx.compose.ui.unit.dp
|
||||
import com.vaultdrop.mobile.R
|
||||
import com.kazier.mobile.R
|
||||
import kotlinx.coroutines.Dispatchers
|
||||
import kotlinx.coroutines.withContext
|
||||
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
package com.vaultdrop.mobile.ui.document.content
|
||||
package com.kazier.mobile.ui.document.content
|
||||
|
||||
import androidx.compose.animation.core.Animatable
|
||||
import androidx.compose.animation.core.spring
|
||||
+24
-24
@@ -1,4 +1,4 @@
|
||||
package com.vaultdrop.mobile.ui.folderdetail
|
||||
package com.kazier.mobile.ui.folderdetail
|
||||
|
||||
import androidx.activity.compose.BackHandler
|
||||
import androidx.compose.foundation.ExperimentalFoundationApi
|
||||
@@ -48,29 +48,29 @@ import androidx.compose.ui.text.style.TextAlign
|
||||
import androidx.compose.ui.unit.dp
|
||||
import androidx.hilt.navigation.compose.hiltViewModel
|
||||
import androidx.lifecycle.compose.collectAsStateWithLifecycle
|
||||
import com.vaultdrop.mobile.R
|
||||
import com.vaultdrop.mobile.data.local.entity.FileEntity
|
||||
import com.vaultdrop.mobile.data.local.entity.FolderEntity
|
||||
import com.vaultdrop.mobile.features.connection.ConnectionStatusViewModel
|
||||
import com.vaultdrop.mobile.features.sync.SyncViewModel
|
||||
import com.vaultdrop.mobile.ui.components.FilePendingReviewBadge
|
||||
import com.vaultdrop.mobile.ui.components.FileSyncStatusIcon
|
||||
import com.vaultdrop.mobile.ui.components.FileThumbnail
|
||||
import com.vaultdrop.mobile.ui.components.FolderNameDialog
|
||||
import com.vaultdrop.mobile.ui.components.MoveFolderPickerDialog
|
||||
import com.vaultdrop.mobile.ui.components.SelectionState
|
||||
import com.vaultdrop.mobile.ui.components.SelectionStatusIcon
|
||||
import com.vaultdrop.mobile.ui.components.ServerStatusBadge
|
||||
import com.vaultdrop.mobile.ui.components.SyncStatusAction
|
||||
import com.vaultdrop.mobile.ui.components.rememberSelectionState
|
||||
import com.vaultdrop.mobile.features.saf.FileDeleter
|
||||
import com.vaultdrop.mobile.ui.components.DeleteConfirmDialog
|
||||
import com.vaultdrop.mobile.ui.components.DeleteReview
|
||||
import com.vaultdrop.mobile.ui.components.DeleteWarningDialog
|
||||
import com.vaultdrop.mobile.ui.components.reviewDelete
|
||||
import com.vaultdrop.mobile.ui.navigation.SelectionNavBar
|
||||
import com.vaultdrop.mobile.ui.share.ShareBottomSheet
|
||||
import com.vaultdrop.mobile.ui.share.ShareViewModel
|
||||
import com.kazier.mobile.R
|
||||
import com.kazier.mobile.data.local.entity.FileEntity
|
||||
import com.kazier.mobile.data.local.entity.FolderEntity
|
||||
import com.kazier.mobile.features.connection.ConnectionStatusViewModel
|
||||
import com.kazier.mobile.features.sync.SyncViewModel
|
||||
import com.kazier.mobile.ui.components.FilePendingReviewBadge
|
||||
import com.kazier.mobile.ui.components.FileSyncStatusIcon
|
||||
import com.kazier.mobile.ui.components.FileThumbnail
|
||||
import com.kazier.mobile.ui.components.FolderNameDialog
|
||||
import com.kazier.mobile.ui.components.MoveFolderPickerDialog
|
||||
import com.kazier.mobile.ui.components.SelectionState
|
||||
import com.kazier.mobile.ui.components.SelectionStatusIcon
|
||||
import com.kazier.mobile.ui.components.ServerStatusBadge
|
||||
import com.kazier.mobile.ui.components.SyncStatusAction
|
||||
import com.kazier.mobile.ui.components.rememberSelectionState
|
||||
import com.kazier.mobile.features.saf.FileDeleter
|
||||
import com.kazier.mobile.ui.components.DeleteConfirmDialog
|
||||
import com.kazier.mobile.ui.components.DeleteReview
|
||||
import com.kazier.mobile.ui.components.DeleteWarningDialog
|
||||
import com.kazier.mobile.ui.components.reviewDelete
|
||||
import com.kazier.mobile.ui.navigation.SelectionNavBar
|
||||
import com.kazier.mobile.ui.share.ShareBottomSheet
|
||||
import com.kazier.mobile.ui.share.ShareViewModel
|
||||
import java.util.Locale
|
||||
|
||||
@OptIn(ExperimentalMaterial3Api::class)
|
||||
+11
-11
@@ -1,19 +1,19 @@
|
||||
package com.vaultdrop.mobile.ui.folderdetail
|
||||
package com.kazier.mobile.ui.folderdetail
|
||||
|
||||
import android.content.Context
|
||||
import androidx.lifecycle.SavedStateHandle
|
||||
import androidx.lifecycle.ViewModel
|
||||
import androidx.lifecycle.viewModelScope
|
||||
import com.vaultdrop.mobile.R
|
||||
import com.vaultdrop.mobile.auth.TokenProvider
|
||||
import com.vaultdrop.mobile.data.local.entity.FileEntity
|
||||
import com.vaultdrop.mobile.data.local.entity.FolderEntity
|
||||
import com.vaultdrop.mobile.data.repository.FileRepository
|
||||
import com.vaultdrop.mobile.data.repository.FolderRepository
|
||||
import com.vaultdrop.mobile.data.repository.SaveFolderInput
|
||||
import com.vaultdrop.mobile.features.saf.FileDeleter
|
||||
import com.vaultdrop.mobile.features.saf.FileMover
|
||||
import com.vaultdrop.mobile.features.saf.SafFolderCreator
|
||||
import com.kazier.mobile.R
|
||||
import com.kazier.mobile.auth.TokenProvider
|
||||
import com.kazier.mobile.data.local.entity.FileEntity
|
||||
import com.kazier.mobile.data.local.entity.FolderEntity
|
||||
import com.kazier.mobile.data.repository.FileRepository
|
||||
import com.kazier.mobile.data.repository.FolderRepository
|
||||
import com.kazier.mobile.data.repository.SaveFolderInput
|
||||
import com.kazier.mobile.features.saf.FileDeleter
|
||||
import com.kazier.mobile.features.saf.FileMover
|
||||
import com.kazier.mobile.features.saf.SafFolderCreator
|
||||
import dagger.hilt.android.lifecycle.HiltViewModel
|
||||
import dagger.hilt.android.qualifiers.ApplicationContext
|
||||
import kotlinx.coroutines.flow.MutableStateFlow
|
||||
+38
-38
@@ -1,4 +1,4 @@
|
||||
package com.vaultdrop.mobile.ui.folderlist
|
||||
package com.kazier.mobile.ui.folderlist
|
||||
|
||||
import android.content.Intent
|
||||
import android.net.Uri
|
||||
@@ -76,37 +76,37 @@ import androidx.compose.ui.unit.dp
|
||||
import androidx.compose.ui.unit.sp
|
||||
import androidx.hilt.navigation.compose.hiltViewModel
|
||||
import androidx.lifecycle.compose.collectAsStateWithLifecycle
|
||||
import com.vaultdrop.mobile.R
|
||||
import com.vaultdrop.mobile.data.local.entity.FileEntity
|
||||
import com.vaultdrop.mobile.data.local.entity.FileStatus
|
||||
import com.vaultdrop.mobile.data.local.entity.FolderEntity
|
||||
import com.vaultdrop.mobile.data.local.entity.FolderStatus
|
||||
import com.vaultdrop.mobile.features.connection.ConnectionStatusViewModel
|
||||
import com.vaultdrop.mobile.features.connection.ServerConnectionStatus
|
||||
import com.vaultdrop.mobile.features.saf.safDisplayName
|
||||
import com.vaultdrop.mobile.features.sync.SyncViewModel
|
||||
import com.vaultdrop.mobile.features.saf.FileDeleter
|
||||
import com.vaultdrop.mobile.ui.components.DeleteConfirmDialog
|
||||
import com.vaultdrop.mobile.ui.components.DeleteReview
|
||||
import com.vaultdrop.mobile.ui.components.DeleteWarningDialog
|
||||
import com.vaultdrop.mobile.ui.components.FilePendingReviewBadge
|
||||
import com.vaultdrop.mobile.ui.components.FileSyncStatusIcon
|
||||
import com.vaultdrop.mobile.ui.components.FileThumbnail
|
||||
import com.vaultdrop.mobile.ui.components.FolderNameDialog
|
||||
import com.kazier.mobile.R
|
||||
import com.kazier.mobile.data.local.entity.FileEntity
|
||||
import com.kazier.mobile.data.local.entity.FileStatus
|
||||
import com.kazier.mobile.data.local.entity.FolderEntity
|
||||
import com.kazier.mobile.data.local.entity.FolderStatus
|
||||
import com.kazier.mobile.features.connection.ConnectionStatusViewModel
|
||||
import com.kazier.mobile.features.connection.ServerConnectionStatus
|
||||
import com.kazier.mobile.features.saf.safDisplayName
|
||||
import com.kazier.mobile.features.sync.SyncViewModel
|
||||
import com.kazier.mobile.features.saf.FileDeleter
|
||||
import com.kazier.mobile.ui.components.DeleteConfirmDialog
|
||||
import com.kazier.mobile.ui.components.DeleteReview
|
||||
import com.kazier.mobile.ui.components.DeleteWarningDialog
|
||||
import com.kazier.mobile.ui.components.FilePendingReviewBadge
|
||||
import com.kazier.mobile.ui.components.FileSyncStatusIcon
|
||||
import com.kazier.mobile.ui.components.FileThumbnail
|
||||
import com.kazier.mobile.ui.components.FolderNameDialog
|
||||
|
||||
import com.vaultdrop.mobile.ui.components.SelectionState
|
||||
import com.vaultdrop.mobile.ui.components.SelectionStatusIcon
|
||||
import com.vaultdrop.mobile.ui.components.ServerStatusBadge
|
||||
import com.vaultdrop.mobile.ui.components.SyncStatusAction
|
||||
import com.vaultdrop.mobile.ui.components.rememberSelectionState
|
||||
import com.vaultdrop.mobile.ui.components.reviewDelete
|
||||
import com.vaultdrop.mobile.ui.navigation.FloatingNavBar
|
||||
import com.vaultdrop.mobile.ui.navigation.FolderSelectionNavBar
|
||||
import com.vaultdrop.mobile.ui.navigation.MoveTargetBar
|
||||
import com.vaultdrop.mobile.ui.navigation.NavTab
|
||||
import com.vaultdrop.mobile.ui.navigation.SelectionNavBar
|
||||
import com.vaultdrop.mobile.ui.share.ShareBottomSheet
|
||||
import com.vaultdrop.mobile.ui.share.ShareViewModel
|
||||
import com.kazier.mobile.ui.components.SelectionState
|
||||
import com.kazier.mobile.ui.components.SelectionStatusIcon
|
||||
import com.kazier.mobile.ui.components.ServerStatusBadge
|
||||
import com.kazier.mobile.ui.components.SyncStatusAction
|
||||
import com.kazier.mobile.ui.components.rememberSelectionState
|
||||
import com.kazier.mobile.ui.components.reviewDelete
|
||||
import com.kazier.mobile.ui.navigation.FloatingNavBar
|
||||
import com.kazier.mobile.ui.navigation.FolderSelectionNavBar
|
||||
import com.kazier.mobile.ui.navigation.MoveTargetBar
|
||||
import com.kazier.mobile.ui.navigation.NavTab
|
||||
import com.kazier.mobile.ui.navigation.SelectionNavBar
|
||||
import com.kazier.mobile.ui.share.ShareBottomSheet
|
||||
import com.kazier.mobile.ui.share.ShareViewModel
|
||||
import kotlinx.coroutines.delay
|
||||
import timber.log.Timber
|
||||
import java.util.Locale
|
||||
@@ -196,7 +196,7 @@ fun FolderListScreen(
|
||||
}
|
||||
}
|
||||
|
||||
// Racine par défaut : dossier VaultDrop choisi au premier lancement.
|
||||
// Racine par défaut : dossier Kazier choisi au premier lancement.
|
||||
val defaultRootLabel = stringResource(R.string.default_root_folder_label)
|
||||
val folderLabel = stringResource(R.string.folder)
|
||||
var pendingDefaultPick by remember { mutableStateOf<Uri?>(null) }
|
||||
@@ -216,7 +216,7 @@ fun FolderListScreen(
|
||||
}
|
||||
|
||||
// Attend la création de la racine (importRoot la sauvegarde puis lance le
|
||||
// walk), crée le sous-dossier « VaultDrop » et l'enregistre comme racine.
|
||||
// walk), crée le sous-dossier « Kazier » et l'enregistre comme racine.
|
||||
LaunchedEffect(pendingDefaultPick) {
|
||||
val uri = pendingDefaultPick ?: return@LaunchedEffect
|
||||
val target = uri.toString()
|
||||
@@ -224,10 +224,10 @@ fun FolderListScreen(
|
||||
while (attempts < 100) { // ~10 s max
|
||||
val rootId = syncViewModel.rootResourceId(target)
|
||||
if (rootId != null) {
|
||||
val vaultFolderId = viewModel.ensureVaultDropFolder(uri, rootId)
|
||||
if (vaultFolderId != null) {
|
||||
val kazierRootId = viewModel.ensureKazierRootFolder(uri, rootId)
|
||||
if (kazierRootId != null) {
|
||||
pendingDefaultPick = null
|
||||
viewModel.setDefaultRoot(vaultFolderId)
|
||||
viewModel.setDefaultRoot(kazierRootId)
|
||||
return@LaunchedEffect
|
||||
}
|
||||
}
|
||||
@@ -806,7 +806,7 @@ private fun FolderBrowserContent(
|
||||
contentPadding = PaddingValues(horizontal = 16.dp),
|
||||
) {
|
||||
item(key = "breadcrumb") {
|
||||
// La racine VaultDrop n'est pas affichée : on ne peut pas remonter au-dessus.
|
||||
// La racine Kazier n'est pas affichée : on ne peut pas remonter au-dessus.
|
||||
if (atRoot) {
|
||||
Spacer(Modifier.height(8.dp))
|
||||
} else {
|
||||
@@ -912,7 +912,7 @@ private fun FolderBrowserContent(
|
||||
}
|
||||
}
|
||||
|
||||
/** Écran obligatoire du premier lancement : choix/création de la racine VaultDrop. */
|
||||
/** Écran obligatoire du premier lancement : choix/création de la racine Kazier. */
|
||||
@Composable
|
||||
private fun DefaultRootOnboarding(
|
||||
importing: Boolean,
|
||||
+3
-3
@@ -1,7 +1,7 @@
|
||||
package com.vaultdrop.mobile.ui.folderlist
|
||||
package com.kazier.mobile.ui.folderlist
|
||||
|
||||
import com.vaultdrop.mobile.data.local.entity.FileEntity
|
||||
import com.vaultdrop.mobile.data.local.entity.FolderEntity
|
||||
import com.kazier.mobile.data.local.entity.FileEntity
|
||||
import com.kazier.mobile.data.local.entity.FolderEntity
|
||||
|
||||
/** Layer d'affichage de la page Fichiers. */
|
||||
enum class HomeView {
|
||||
+24
-24
@@ -1,25 +1,25 @@
|
||||
package com.vaultdrop.mobile.ui.folderlist
|
||||
package com.kazier.mobile.ui.folderlist
|
||||
|
||||
import android.content.Context
|
||||
import android.net.Uri
|
||||
import android.provider.DocumentsContract
|
||||
import androidx.lifecycle.ViewModel
|
||||
import androidx.lifecycle.viewModelScope
|
||||
import com.vaultdrop.mobile.R
|
||||
import com.vaultdrop.mobile.auth.TokenProvider
|
||||
import com.vaultdrop.mobile.data.local.entity.FileEntity
|
||||
import com.vaultdrop.mobile.data.local.entity.FolderEntity
|
||||
import com.vaultdrop.mobile.data.local.referenceDate
|
||||
import com.vaultdrop.mobile.data.preferences.DefaultRootStore
|
||||
import com.vaultdrop.mobile.data.remote.ApiException
|
||||
import com.vaultdrop.mobile.data.repository.FileRepository
|
||||
import com.vaultdrop.mobile.data.repository.FolderRepository
|
||||
import com.vaultdrop.mobile.data.repository.SaveFolderInput
|
||||
import com.vaultdrop.mobile.domain.DeviceIdentity
|
||||
import com.vaultdrop.mobile.features.saf.FileMover
|
||||
import com.vaultdrop.mobile.features.saf.FileDeleter
|
||||
import com.vaultdrop.mobile.features.saf.FolderDeleter
|
||||
import com.vaultdrop.mobile.features.saf.SafFolderCreator
|
||||
import com.kazier.mobile.R
|
||||
import com.kazier.mobile.auth.TokenProvider
|
||||
import com.kazier.mobile.data.local.entity.FileEntity
|
||||
import com.kazier.mobile.data.local.entity.FolderEntity
|
||||
import com.kazier.mobile.data.local.referenceDate
|
||||
import com.kazier.mobile.data.preferences.DefaultRootStore
|
||||
import com.kazier.mobile.data.remote.ApiException
|
||||
import com.kazier.mobile.data.repository.FileRepository
|
||||
import com.kazier.mobile.data.repository.FolderRepository
|
||||
import com.kazier.mobile.data.repository.SaveFolderInput
|
||||
import com.kazier.mobile.domain.DeviceIdentity
|
||||
import com.kazier.mobile.features.saf.FileMover
|
||||
import com.kazier.mobile.features.saf.FileDeleter
|
||||
import com.kazier.mobile.features.saf.FolderDeleter
|
||||
import com.kazier.mobile.features.saf.SafFolderCreator
|
||||
import dagger.hilt.android.lifecycle.HiltViewModel
|
||||
import dagger.hilt.android.qualifiers.ApplicationContext
|
||||
import kotlinx.coroutines.flow.MutableStateFlow
|
||||
@@ -56,7 +56,7 @@ class FolderListViewModel @Inject constructor(
|
||||
private val _uiState = MutableStateFlow(FolderListUiState())
|
||||
val uiState: StateFlow<FolderListUiState> = _uiState.asStateFlow()
|
||||
|
||||
/** Racine VaultDrop obligatoire : null = premier lancement (onboarding). */
|
||||
/** Racine Kazier obligatoire : null = premier lancement (onboarding). */
|
||||
private val _defaultRootId = MutableStateFlow(defaultRootStore.get())
|
||||
val defaultRootId: StateFlow<String?> = _defaultRootId.asStateFlow()
|
||||
|
||||
@@ -76,11 +76,11 @@ class FolderListViewModel @Inject constructor(
|
||||
}
|
||||
|
||||
/**
|
||||
* Crée (ou retrouve) un sous-dossier « VaultDrop » dans l'arbre choisi et
|
||||
* Crée (ou retrouve) un sous-dossier « Kazier » dans l'arbre choisi et
|
||||
* l'enregistre en Room comme enfant de la racine. Retourne son id — c'est
|
||||
* lui qui devient la racine par défaut où les PDF sont écrits.
|
||||
*/
|
||||
suspend fun ensureVaultDropFolder(rootUri: Uri, rootRoomId: String): String? {
|
||||
suspend fun ensureKazierRootFolder(rootUri: Uri, rootRoomId: String): String? {
|
||||
val resolver = context.contentResolver
|
||||
val treeDocId = DocumentsContract.getTreeDocumentId(rootUri)
|
||||
val label = context.getString(R.string.default_root_folder_label)
|
||||
@@ -89,7 +89,7 @@ class FolderListViewModel @Inject constructor(
|
||||
} else {
|
||||
rootUri
|
||||
}
|
||||
val vaultFolderUri = runCatching {
|
||||
val kazierFolderUri = runCatching {
|
||||
DocumentsContract.createDocument(
|
||||
resolver,
|
||||
parentUri,
|
||||
@@ -100,14 +100,14 @@ class FolderListViewModel @Inject constructor(
|
||||
if (e is FileNotFoundException) {
|
||||
DocumentsContract.buildDocumentUriUsingTree(rootUri, "$treeDocId/$label")
|
||||
} else {
|
||||
Timber.w(e, "cannot create VaultDrop folder")
|
||||
Timber.w(e, "cannot create Kazier folder")
|
||||
null
|
||||
}
|
||||
} ?: return null
|
||||
|
||||
val saved = folderRepository.saveFolder(
|
||||
input = SaveFolderInput(
|
||||
uri = vaultFolderUri.toString(),
|
||||
uri = kazierFolderUri.toString(),
|
||||
name = label,
|
||||
exists = true,
|
||||
createdInApp = true,
|
||||
@@ -199,12 +199,12 @@ class FolderListViewModel @Inject constructor(
|
||||
}
|
||||
}
|
||||
|
||||
/** Remonte au parent du dossier courant (s'arrête à la racine VaultDrop). */
|
||||
/** Remonte au parent du dossier courant (s'arrête à la racine Kazier). */
|
||||
fun browseUp() {
|
||||
val current = _browseFolderId.value
|
||||
viewModelScope.launch {
|
||||
val parent = current?.let { folderRepository.getFolder(it)?.parentResourceId }
|
||||
// La racine par défaut (VaultDrop) est le plafond : remonter à son
|
||||
// La racine par défaut (Kazier) est le plafond : remonter à son
|
||||
// niveau ou plus haut ramène à l'explorateur de premier niveau.
|
||||
if (parent != null && parent != _defaultRootId.value) {
|
||||
_browseFolderId.value = parent
|
||||
+4
-4
@@ -1,6 +1,6 @@
|
||||
@file:OptIn(ExperimentalMaterial3Api::class)
|
||||
|
||||
package com.vaultdrop.mobile.ui.navigation
|
||||
package com.kazier.mobile.ui.navigation
|
||||
|
||||
import androidx.compose.foundation.layout.Arrangement
|
||||
import androidx.compose.foundation.layout.Box
|
||||
@@ -39,9 +39,9 @@ import androidx.compose.ui.text.font.FontWeight
|
||||
import androidx.compose.ui.text.style.TextOverflow
|
||||
import androidx.compose.ui.unit.dp
|
||||
import androidx.compose.ui.unit.sp
|
||||
import com.vaultdrop.mobile.R
|
||||
import com.vaultdrop.mobile.ui.components.DeleteDropdownButton
|
||||
import com.vaultdrop.mobile.features.saf.FileDeleter
|
||||
import com.kazier.mobile.R
|
||||
import com.kazier.mobile.ui.components.DeleteDropdownButton
|
||||
import com.kazier.mobile.features.saf.FileDeleter
|
||||
|
||||
enum class NavTab(val route: String) {
|
||||
FILES(Routes.FILES),
|
||||
+7
-7
@@ -1,4 +1,4 @@
|
||||
package com.vaultdrop.mobile.ui.navigation
|
||||
package com.kazier.mobile.ui.navigation
|
||||
|
||||
import androidx.compose.foundation.layout.Arrangement
|
||||
import androidx.compose.foundation.layout.Column
|
||||
@@ -11,11 +11,11 @@ import androidx.compose.ui.Alignment
|
||||
import androidx.compose.ui.Modifier
|
||||
import androidx.hilt.navigation.compose.hiltViewModel
|
||||
import androidx.lifecycle.compose.collectAsStateWithLifecycle
|
||||
import com.vaultdrop.mobile.features.connection.ConnectionStatusViewModel
|
||||
import com.vaultdrop.mobile.features.sync.SyncViewModel
|
||||
import com.vaultdrop.mobile.ui.auth.AuthState
|
||||
import com.vaultdrop.mobile.ui.auth.AuthViewModel
|
||||
import com.vaultdrop.mobile.ui.auth.LoginScreen
|
||||
import com.kazier.mobile.features.connection.ConnectionStatusViewModel
|
||||
import com.kazier.mobile.features.sync.SyncViewModel
|
||||
import com.kazier.mobile.ui.auth.AuthState
|
||||
import com.kazier.mobile.ui.auth.AuthViewModel
|
||||
import com.kazier.mobile.ui.auth.LoginScreen
|
||||
|
||||
@Composable
|
||||
private fun SplashScreen() {
|
||||
@@ -33,7 +33,7 @@ private fun SplashScreen() {
|
||||
* navigation principale si signé in / mode local).
|
||||
*/
|
||||
@Composable
|
||||
fun VaultDropApp(
|
||||
fun KazierApp(
|
||||
authViewModel: AuthViewModel = hiltViewModel(),
|
||||
syncViewModel: SyncViewModel = hiltViewModel(),
|
||||
connectionStatusViewModel: ConnectionStatusViewModel = hiltViewModel(),
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user