diff --git a/Core b/Core index 9aed9b2e84..b639537b5a 160000 --- a/Core +++ b/Core @@ -1 +1 @@ -Subproject commit 9aed9b2e84a436e4c14ecebed0a8864e936fbc97 +Subproject commit b639537b5acfd63b0c6795483de0ca60febe840b diff --git a/app/build.gradle b/app/build.gradle index fd78acd4c8..5c5b71a7db 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -129,6 +129,7 @@ sentry { dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) + implementation project(path: ':Core') implementation project(path: ':Core:Legacy') implementation project(path: ':Core:Legacy:AppLock') implementation project(path: ':Core:Legacy:Stores') diff --git a/app/src/main/java/com/infomaniak/drive/data/models/FileActivity.kt b/app/src/main/java/com/infomaniak/drive/data/models/FileActivity.kt index 1a8d384e9c..961374fae8 100644 --- a/app/src/main/java/com/infomaniak/drive/data/models/FileActivity.kt +++ b/app/src/main/java/com/infomaniak/drive/data/models/FileActivity.kt @@ -19,11 +19,11 @@ package com.infomaniak.drive.data.models import android.content.Context import com.google.gson.annotations.SerializedName +import com.infomaniak.core.utils.FORMAT_FULL_DATE +import com.infomaniak.core.utils.FORMAT_HOUR_MINUTES +import com.infomaniak.core.utils.format import com.infomaniak.drive.R -import com.infomaniak.lib.core.utils.FORMAT_DATE_HOUR_MINUTE -import com.infomaniak.lib.core.utils.FORMAT_FULL_DATE import com.infomaniak.lib.core.utils.Utils.enumValueOfOrNull -import com.infomaniak.lib.core.utils.format import io.realm.RealmObject import io.realm.annotations.Ignore import io.realm.annotations.PrimaryKey @@ -155,7 +155,7 @@ open class FileActivity( } fun getHour(): String { - return createdAt.format(FORMAT_DATE_HOUR_MINUTE) + return createdAt.format(FORMAT_HOUR_MINUTES) } fun getAction(): FileActivityType? { diff --git a/app/src/main/java/com/infomaniak/drive/data/models/UploadFile.kt b/app/src/main/java/com/infomaniak/drive/data/models/UploadFile.kt index 2771be6dd4..967cc1ae78 100644 --- a/app/src/main/java/com/infomaniak/drive/data/models/UploadFile.kt +++ b/app/src/main/java/com/infomaniak/drive/data/models/UploadFile.kt @@ -25,6 +25,7 @@ import android.provider.DocumentsContract import android.provider.MediaStore import androidx.core.net.toFile import androidx.core.net.toUri +import com.infomaniak.core.utils.format import com.infomaniak.drive.data.api.ApiRepository import com.infomaniak.drive.data.api.UploadTask import com.infomaniak.drive.data.cache.DriveInfosController @@ -33,7 +34,6 @@ import com.infomaniak.drive.utils.AccountUtils import com.infomaniak.drive.utils.IOFile import com.infomaniak.drive.utils.RealmModules import com.infomaniak.lib.core.api.ApiController -import com.infomaniak.lib.core.utils.format import io.realm.* import io.realm.annotations.Ignore import io.realm.annotations.PrimaryKey diff --git a/app/src/main/java/com/infomaniak/drive/ui/MaintenanceActivity.kt b/app/src/main/java/com/infomaniak/drive/ui/MaintenanceActivity.kt index 421006ddbb..5870ec1708 100644 --- a/app/src/main/java/com/infomaniak/drive/ui/MaintenanceActivity.kt +++ b/app/src/main/java/com/infomaniak/drive/ui/MaintenanceActivity.kt @@ -22,13 +22,13 @@ import android.os.Bundle import androidx.appcompat.app.AppCompatActivity import androidx.core.view.isGone import androidx.lifecycle.lifecycleScope +import com.infomaniak.core.utils.format import com.infomaniak.drive.R import com.infomaniak.drive.data.api.ApiRoutes import com.infomaniak.drive.data.cache.DriveInfosController import com.infomaniak.drive.databinding.ActivityNoDriveBinding import com.infomaniak.drive.utils.AccountUtils import com.infomaniak.lib.core.utils.UtilsUi.openUrl -import com.infomaniak.lib.core.utils.format import kotlinx.coroutines.launch class MaintenanceActivity : AppCompatActivity() { diff --git a/app/src/main/java/com/infomaniak/drive/ui/SaveExternalFilesActivity.kt b/app/src/main/java/com/infomaniak/drive/ui/SaveExternalFilesActivity.kt index e2f9910b45..2e881de8b0 100644 --- a/app/src/main/java/com/infomaniak/drive/ui/SaveExternalFilesActivity.kt +++ b/app/src/main/java/com/infomaniak/drive/ui/SaveExternalFilesActivity.kt @@ -37,41 +37,26 @@ import androidx.lifecycle.ViewModel import androidx.lifecycle.lifecycleScope import androidx.navigation.navArgs import com.google.android.material.textfield.TextInputEditText +import com.infomaniak.core.utils.FORMAT_NEW_FILE +import com.infomaniak.core.utils.format import com.infomaniak.drive.MatomoDrive.trackUserId import com.infomaniak.drive.R import com.infomaniak.drive.data.cache.DriveInfosController import com.infomaniak.drive.data.cache.FileController -import com.infomaniak.drive.data.models.AppSettings -import com.infomaniak.drive.data.models.File -import com.infomaniak.drive.data.models.UiSettings +import com.infomaniak.drive.data.models.* import com.infomaniak.drive.data.models.UiSettings.SaveExternalFilesData -import com.infomaniak.drive.data.models.UploadFile -import com.infomaniak.drive.data.models.UserDrive import com.infomaniak.drive.data.models.drive.Drive import com.infomaniak.drive.databinding.ActivitySaveExternalFileBinding import com.infomaniak.drive.ui.fileList.SelectFolderActivity import com.infomaniak.drive.ui.fileList.SelectFolderActivityArgs import com.infomaniak.drive.ui.menu.settings.SelectDriveDialog import com.infomaniak.drive.ui.menu.settings.SelectDriveViewModel -import com.infomaniak.drive.utils.AccountUtils -import com.infomaniak.drive.utils.DrivePermissions -import com.infomaniak.drive.utils.IOFile -import com.infomaniak.drive.utils.SyncUtils +import com.infomaniak.drive.utils.* import com.infomaniak.drive.utils.SyncUtils.syncImmediately import com.infomaniak.drive.utils.Utils.OTHER_ROOT_ID -import com.infomaniak.drive.utils.isValidUrl -import com.infomaniak.drive.utils.showOrHideEmptyError import com.infomaniak.lib.applock.LockActivity -import com.infomaniak.lib.core.utils.FORMAT_NEW_FILE +import com.infomaniak.lib.core.utils.* import com.infomaniak.lib.core.utils.SnackbarUtils.showSnackbar -import com.infomaniak.lib.core.utils.format -import com.infomaniak.lib.core.utils.getFileName -import com.infomaniak.lib.core.utils.hideProgressCatching -import com.infomaniak.lib.core.utils.initProgress -import com.infomaniak.lib.core.utils.parcelableArrayListExtra -import com.infomaniak.lib.core.utils.parcelableExtra -import com.infomaniak.lib.core.utils.showProgressCatching -import com.infomaniak.lib.core.utils.whenResultIsOk import io.sentry.Sentry import io.sentry.SentryLevel import kotlinx.coroutines.Dispatchers diff --git a/app/src/main/java/com/infomaniak/drive/ui/addFiles/AddFileBottomSheetDialog.kt b/app/src/main/java/com/infomaniak/drive/ui/addFiles/AddFileBottomSheetDialog.kt index 4654a7fb59..f9dc759a6b 100644 --- a/app/src/main/java/com/infomaniak/drive/ui/addFiles/AddFileBottomSheetDialog.kt +++ b/app/src/main/java/com/infomaniak/drive/ui/addFiles/AddFileBottomSheetDialog.kt @@ -32,6 +32,8 @@ import androidx.fragment.app.activityViewModels import androidx.lifecycle.lifecycleScope import androidx.navigation.fragment.findNavController import com.google.android.material.bottomsheet.BottomSheetDialogFragment +import com.infomaniak.core.utils.FORMAT_NEW_FILE +import com.infomaniak.core.utils.format import com.infomaniak.drive.GeniusScanUtils.scanResultProcessing import com.infomaniak.drive.GeniusScanUtils.startScanFlow import com.infomaniak.drive.MainApplication @@ -49,8 +51,10 @@ import com.infomaniak.drive.ui.menu.SharedWithMeFragment import com.infomaniak.drive.utils.* import com.infomaniak.drive.utils.AccountUtils.currentUserId import com.infomaniak.drive.utils.SyncUtils.syncImmediately -import com.infomaniak.drive.utils.Utils -import com.infomaniak.lib.core.utils.* +import com.infomaniak.lib.core.utils.context +import com.infomaniak.lib.core.utils.safeBinding +import com.infomaniak.lib.core.utils.safeNavigate +import com.infomaniak.lib.core.utils.whenResultIsOk import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.launch import java.io.IOException diff --git a/app/src/main/java/com/infomaniak/drive/ui/bottomSheetDialogs/DriveBlockedBottomSheetDialog.kt b/app/src/main/java/com/infomaniak/drive/ui/bottomSheetDialogs/DriveBlockedBottomSheetDialog.kt index 4346e98706..d47fb2be00 100644 --- a/app/src/main/java/com/infomaniak/drive/ui/bottomSheetDialogs/DriveBlockedBottomSheetDialog.kt +++ b/app/src/main/java/com/infomaniak/drive/ui/bottomSheetDialogs/DriveBlockedBottomSheetDialog.kt @@ -20,12 +20,12 @@ package com.infomaniak.drive.ui.bottomSheetDialogs import android.os.Bundle import android.view.View import androidx.navigation.fragment.navArgs +import com.infomaniak.core.utils.format import com.infomaniak.drive.R import com.infomaniak.drive.data.api.ApiRoutes import com.infomaniak.drive.data.cache.DriveInfosController import com.infomaniak.drive.utils.AccountUtils import com.infomaniak.lib.core.utils.UtilsUi.openUrl -import com.infomaniak.lib.core.utils.format import com.infomaniak.lib.core.utils.toPx class DriveBlockedBottomSheetDialog : InformationBottomSheetDialog() { diff --git a/app/src/main/java/com/infomaniak/drive/ui/bottomSheetDialogs/SearchFilterDateBottomSheetDialog.kt b/app/src/main/java/com/infomaniak/drive/ui/bottomSheetDialogs/SearchFilterDateBottomSheetDialog.kt index 2419b99796..17f87d0ecc 100644 --- a/app/src/main/java/com/infomaniak/drive/ui/bottomSheetDialogs/SearchFilterDateBottomSheetDialog.kt +++ b/app/src/main/java/com/infomaniak/drive/ui/bottomSheetDialogs/SearchFilterDateBottomSheetDialog.kt @@ -29,12 +29,13 @@ import com.google.android.material.bottomsheet.BottomSheetDialogFragment import com.google.android.material.datepicker.CalendarConstraints import com.google.android.material.datepicker.DateValidatorPointBackward import com.google.android.material.datepicker.MaterialDatePicker +import com.infomaniak.core.utils.* import com.infomaniak.drive.R import com.infomaniak.drive.data.models.SearchDateFilter import com.infomaniak.drive.data.models.SearchDateFilter.DateFilterKey import com.infomaniak.drive.databinding.FragmentBottomSheetSearchFilterDateBinding import com.infomaniak.drive.ui.fileList.SearchFiltersViewModel -import com.infomaniak.lib.core.utils.* +import com.infomaniak.lib.core.utils.safeBinding import java.util.Calendar import java.util.Date import androidx.core.util.Pair as AndroidPair diff --git a/app/src/main/java/com/infomaniak/drive/ui/fileList/fileDetails/FileDetailsFragment.kt b/app/src/main/java/com/infomaniak/drive/ui/fileList/fileDetails/FileDetailsFragment.kt index 8721fc0067..50704ad364 100644 --- a/app/src/main/java/com/infomaniak/drive/ui/fileList/fileDetails/FileDetailsFragment.kt +++ b/app/src/main/java/com/infomaniak/drive/ui/fileList/fileDetails/FileDetailsFragment.kt @@ -34,6 +34,7 @@ import androidx.navigation.fragment.navArgs import com.google.android.material.appbar.AppBarLayout import com.google.android.material.appbar.CollapsingToolbarLayout import com.google.android.material.button.MaterialButton +import com.infomaniak.core.utils.format import com.infomaniak.drive.R import com.infomaniak.drive.data.api.ApiRoutes import com.infomaniak.drive.data.cache.FileController diff --git a/app/src/main/java/com/infomaniak/drive/ui/fileList/fileDetails/FileDetailsInfoFragment.kt b/app/src/main/java/com/infomaniak/drive/ui/fileList/fileDetails/FileDetailsInfoFragment.kt index 1da3126b90..0bef12b989 100644 --- a/app/src/main/java/com/infomaniak/drive/ui/fileList/fileDetails/FileDetailsInfoFragment.kt +++ b/app/src/main/java/com/infomaniak/drive/ui/fileList/fileDetails/FileDetailsInfoFragment.kt @@ -29,6 +29,7 @@ import androidx.core.view.forEachIndexed import androidx.core.view.isGone import androidx.core.view.isVisible import androidx.navigation.fragment.findNavController +import com.infomaniak.core.utils.format import com.infomaniak.drive.R import com.infomaniak.drive.data.cache.DriveInfosController import com.infomaniak.drive.data.cache.FileController @@ -43,7 +44,6 @@ import com.infomaniak.drive.utils.* import com.infomaniak.drive.views.ShareLinkContainerView import com.infomaniak.drive.views.UserAvatarView import com.infomaniak.lib.core.utils.ApiErrorCode.Companion.translateError -import com.infomaniak.lib.core.utils.format import com.infomaniak.lib.core.utils.getBackNavigationResult import com.infomaniak.lib.core.utils.safeBinding import com.infomaniak.lib.core.utils.safeNavigate diff --git a/app/src/main/java/com/infomaniak/drive/ui/fileList/fileShare/FileShareLinkSettingsFragment.kt b/app/src/main/java/com/infomaniak/drive/ui/fileList/fileShare/FileShareLinkSettingsFragment.kt index 5841936ebe..74f6cff0c7 100644 --- a/app/src/main/java/com/infomaniak/drive/ui/fileList/fileShare/FileShareLinkSettingsFragment.kt +++ b/app/src/main/java/com/infomaniak/drive/ui/fileList/fileShare/FileShareLinkSettingsFragment.kt @@ -27,6 +27,7 @@ import androidx.fragment.app.Fragment import androidx.fragment.app.viewModels import androidx.navigation.fragment.findNavController import androidx.navigation.fragment.navArgs +import com.infomaniak.core.utils.* import com.infomaniak.drive.MatomoDrive.toFloat import com.infomaniak.drive.MatomoDrive.trackShareRightsEvent import com.infomaniak.drive.R diff --git a/app/src/main/java/com/infomaniak/drive/ui/menu/GalleryAdapter.kt b/app/src/main/java/com/infomaniak/drive/ui/menu/GalleryAdapter.kt index a12ffa912b..7f7f663421 100644 --- a/app/src/main/java/com/infomaniak/drive/ui/menu/GalleryAdapter.kt +++ b/app/src/main/java/com/infomaniak/drive/ui/menu/GalleryAdapter.kt @@ -24,6 +24,7 @@ import androidx.core.view.isVisible import androidx.recyclerview.widget.RecyclerView.ViewHolder import androidx.viewbinding.ViewBinding import com.google.android.material.checkbox.MaterialCheckBox +import com.infomaniak.core.utils.format import com.infomaniak.drive.R import com.infomaniak.drive.data.api.ApiRoutes import com.infomaniak.drive.data.models.ExtensionType @@ -33,7 +34,6 @@ import com.infomaniak.drive.databinding.TitleRecyclerSectionBinding import com.infomaniak.drive.ui.fileList.multiSelect.MultiSelectManager import com.infomaniak.drive.utils.loadAny import com.infomaniak.lib.core.utils.capitalizeFirstChar -import com.infomaniak.lib.core.utils.format import com.infomaniak.lib.core.views.LoaderAdapter class GalleryAdapter( diff --git a/app/src/main/java/com/infomaniak/drive/ui/menu/settings/SyncSettingsActivity.kt b/app/src/main/java/com/infomaniak/drive/ui/menu/settings/SyncSettingsActivity.kt index 42c84b6e0b..7f62698c98 100644 --- a/app/src/main/java/com/infomaniak/drive/ui/menu/settings/SyncSettingsActivity.kt +++ b/app/src/main/java/com/infomaniak/drive/ui/menu/settings/SyncSettingsActivity.kt @@ -32,6 +32,9 @@ import androidx.lifecycle.lifecycleScope import com.google.android.material.datepicker.CalendarConstraints import com.google.android.material.datepicker.DateValidatorPointBackward import com.google.android.material.datepicker.MaterialDatePicker +import com.infomaniak.core.utils.FORMAT_DATE_CLEAR_MONTH +import com.infomaniak.core.utils.format +import com.infomaniak.core.utils.startOfTheDay import com.infomaniak.drive.MatomoDrive.toFloat import com.infomaniak.drive.MatomoDrive.trackEvent import com.infomaniak.drive.R @@ -49,8 +52,11 @@ import com.infomaniak.drive.utils.DrivePermissions import com.infomaniak.drive.utils.SyncUtils.activateAutoSync import com.infomaniak.drive.utils.SyncUtils.disableAutoSync import com.infomaniak.drive.utils.Utils -import com.infomaniak.lib.core.utils.* import com.infomaniak.lib.core.utils.SnackbarUtils.showSnackbar +import com.infomaniak.lib.core.utils.hideProgressCatching +import com.infomaniak.lib.core.utils.initProgress +import com.infomaniak.lib.core.utils.showProgressCatching +import com.infomaniak.lib.core.utils.whenResultIsOk import io.sentry.Sentry import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.invoke diff --git a/app/src/main/java/com/infomaniak/drive/utils/FileItemUtils.kt b/app/src/main/java/com/infomaniak/drive/utils/FileItemUtils.kt index 3d34c83c66..59cb6c1ac6 100644 --- a/app/src/main/java/com/infomaniak/drive/utils/FileItemUtils.kt +++ b/app/src/main/java/com/infomaniak/drive/utils/FileItemUtils.kt @@ -32,6 +32,7 @@ import androidx.viewbinding.ViewBinding import coil.load import com.google.android.material.progressindicator.CircularProgressIndicator import com.infomaniak.core.thumbnails.ThumbnailsUtils.getLocalThumbnail +import com.infomaniak.core.utils.format import com.infomaniak.drive.R import com.infomaniak.drive.data.api.ApiRoutes import com.infomaniak.drive.data.cache.DriveInfosController @@ -46,7 +47,6 @@ import com.infomaniak.drive.ui.fileList.FileListFragment.Companion.MAX_DISPLAYED import com.infomaniak.drive.views.CategoryIconView import com.infomaniak.drive.views.ProgressLayoutView import com.infomaniak.lib.core.utils.context -import com.infomaniak.lib.core.utils.format import kotlinx.coroutines.CoroutineScope import kotlinx.coroutines.Dispatchers import kotlinx.coroutines.launch diff --git a/app/src/main/java/com/infomaniak/drive/views/DateInputView.kt b/app/src/main/java/com/infomaniak/drive/views/DateInputView.kt index 1a1b3e1e95..fef3ab8e2f 100644 --- a/app/src/main/java/com/infomaniak/drive/views/DateInputView.kt +++ b/app/src/main/java/com/infomaniak/drive/views/DateInputView.kt @@ -27,9 +27,9 @@ import androidx.fragment.app.FragmentManager import com.google.android.material.datepicker.CalendarConstraints import com.google.android.material.datepicker.DateValidatorPointForward import com.google.android.material.datepicker.MaterialDatePicker +import com.infomaniak.core.utils.format import com.infomaniak.drive.R import com.infomaniak.drive.databinding.ViewDateInputBinding -import com.infomaniak.lib.core.utils.format import java.util.Calendar import java.util.Date diff --git a/app/src/main/java/com/infomaniak/drive/views/ShareLinkContainerView.kt b/app/src/main/java/com/infomaniak/drive/views/ShareLinkContainerView.kt index dc3abd4aac..79ce3532ee 100644 --- a/app/src/main/java/com/infomaniak/drive/views/ShareLinkContainerView.kt +++ b/app/src/main/java/com/infomaniak/drive/views/ShareLinkContainerView.kt @@ -23,13 +23,13 @@ import android.view.LayoutInflater import android.widget.FrameLayout import androidx.core.view.isGone import androidx.core.view.isVisible +import com.infomaniak.core.utils.format import com.infomaniak.drive.MatomoDrive.trackShareRightsEvent import com.infomaniak.drive.R import com.infomaniak.drive.data.models.File import com.infomaniak.drive.data.models.ShareLink import com.infomaniak.drive.databinding.ViewShareLinkContainerBinding import com.infomaniak.drive.utils.shareText -import com.infomaniak.lib.core.utils.format class ShareLinkContainerView @JvmOverloads constructor( context: Context, diff --git a/app/src/main/java/com/infomaniak/drive/views/TimeInputView.kt b/app/src/main/java/com/infomaniak/drive/views/TimeInputView.kt index 184394b5ca..c3fc1160e3 100644 --- a/app/src/main/java/com/infomaniak/drive/views/TimeInputView.kt +++ b/app/src/main/java/com/infomaniak/drive/views/TimeInputView.kt @@ -28,8 +28,12 @@ import android.view.LayoutInflater import android.view.MotionEvent import android.widget.FrameLayout import androidx.fragment.app.FragmentManager +import com.infomaniak.core.utils.FORMAT_HOUR_MINUTES +import com.infomaniak.core.utils.format +import com.infomaniak.core.utils.hours +import com.infomaniak.core.utils.minutes import com.infomaniak.drive.databinding.ViewTimeInputBinding -import com.infomaniak.lib.core.utils.* +import com.infomaniak.lib.core.utils.isNightModeEnabled import com.wdullaer.materialdatetimepicker.time.TimePickerDialog import com.wdullaer.materialdatetimepicker.time.TimePickerDialog.OnTimeSetListener import com.wdullaer.materialdatetimepicker.time.Timepoint @@ -58,7 +62,7 @@ class TimeInputView @JvmOverloads constructor( minutes = defaultDate.minutes() binding.timeValueInput.apply { - text = SpannableStringBuilder(defaultDate.format(FORMAT_DATE_HOUR_MINUTE)) + text = SpannableStringBuilder(defaultDate.format(FORMAT_HOUR_MINUTES)) keyListener = null setOnTouchListener { _, event -> if (event.action == MotionEvent.ACTION_UP) { @@ -69,7 +73,7 @@ class TimeInputView @JvmOverloads constructor( set(Calendar.HOUR_OF_DAY, hours) set(Calendar.MINUTE, minutes) }.time - text = SpannableStringBuilder(newDate.format(FORMAT_DATE_HOUR_MINUTE)) + text = SpannableStringBuilder(newDate.format(FORMAT_HOUR_MINUTES)) onDateSet(hours, minutes) } } diff --git a/app/src/standard/java/com/infomaniak/drive/GeniusScanUtils.kt b/app/src/standard/java/com/infomaniak/drive/GeniusScanUtils.kt index 5489086847..7a4ad794d8 100644 --- a/app/src/standard/java/com/infomaniak/drive/GeniusScanUtils.kt +++ b/app/src/standard/java/com/infomaniak/drive/GeniusScanUtils.kt @@ -31,6 +31,8 @@ import com.geniusscansdk.scanflow.ScanConfiguration import com.geniusscansdk.scanflow.ScanConfiguration.OcrConfiguration import com.geniusscansdk.scanflow.ScanConfiguration.OcrOutputFormat import com.geniusscansdk.scanflow.ScanResult +import com.infomaniak.core.utils.FORMAT_NEW_FILE +import com.infomaniak.core.utils.format import com.infomaniak.drive.data.models.File import com.infomaniak.drive.ui.SaveExternalFilesActivity import com.infomaniak.drive.ui.SaveExternalFilesActivityArgs @@ -38,11 +40,9 @@ import com.infomaniak.drive.utils.AccountUtils import com.infomaniak.drive.utils.IGeniusScanUtils import com.infomaniak.drive.utils.IOFile import com.infomaniak.drive.utils.Utils.Shortcuts -import com.infomaniak.lib.core.utils.FORMAT_NEW_FILE import com.infomaniak.lib.core.utils.SentryLog import com.infomaniak.lib.core.utils.SnackbarUtils.showSnackbar import com.infomaniak.lib.core.utils.Utils -import com.infomaniak.lib.core.utils.format import io.sentry.Sentry import java.util.Date import java.util.EnumSet