Updated on 2026-08-14
This commit is contained in:
parent
07d5ede58c
commit
e1b50efbe0
16 changed files with 21 additions and 222 deletions
|
|
@ -1,13 +0,0 @@
|
|||
package com.tangem.domain.settings
|
||||
|
||||
import arrow.core.Either
|
||||
import com.tangem.domain.settings.repositories.PermissionRepository
|
||||
|
||||
class DelayPermissionRequestUseCase(
|
||||
private val repository: PermissionRepository,
|
||||
) {
|
||||
|
||||
suspend operator fun invoke(permission: String): Either<Throwable, Unit> = Either.catch {
|
||||
repository.delayPermissionAsking(permission)
|
||||
}
|
||||
}
|
||||
|
|
@ -1,11 +0,0 @@
|
|||
package com.tangem.domain.settings
|
||||
|
||||
import arrow.core.Either
|
||||
import com.tangem.domain.settings.repositories.PermissionRepository
|
||||
|
||||
class IsFirstTimeAskingPermissionUseCase(private val repository: PermissionRepository) {
|
||||
|
||||
suspend operator fun invoke(permission: String): Either<Throwable, Boolean> = Either.catch {
|
||||
repository.isFirstTimeAskingPermission(permission)
|
||||
}
|
||||
}
|
||||
|
|
@ -1,11 +0,0 @@
|
|||
package com.tangem.domain.settings
|
||||
|
||||
import arrow.core.Either
|
||||
import com.tangem.domain.settings.repositories.PermissionRepository
|
||||
|
||||
class SetFirstTimeAskingPermissionUseCase(private val repository: PermissionRepository) {
|
||||
|
||||
suspend operator fun invoke(permission: String): Either<Throwable, Unit> = Either.catch {
|
||||
repository.setFirstTimeAskingPermission(permission, false)
|
||||
}
|
||||
}
|
||||
|
|
@ -13,18 +13,6 @@ interface PermissionRepository {
|
|||
*/
|
||||
suspend fun neverInitiallyShowPermissionScreen(permission: String)
|
||||
|
||||
/**
|
||||
* Indicates which time [permission] was asked via platform dialog.
|
||||
* NOTE: Use this method to indicate either reroute to settings or display platform dialog.
|
||||
*/
|
||||
suspend fun isFirstTimeAskingPermission(permission: String): Boolean
|
||||
|
||||
/**
|
||||
* Sets value indicating that [permission] was asked via platform dialog.
|
||||
* NOTE: Use this method to indicate either reroute to settings or display platform dialog.
|
||||
*/
|
||||
suspend fun setFirstTimeAskingPermission(permission: String, value: Boolean)
|
||||
|
||||
/**
|
||||
* Is clear to ask [permission].
|
||||
* User could already granted or permanently denied permission
|
||||
|
|
@ -36,9 +24,4 @@ interface PermissionRepository {
|
|||
* Permanently deny [permission] and never request again
|
||||
*/
|
||||
suspend fun neverAskPermission(permission: String)
|
||||
|
||||
/**
|
||||
* Delay next [permission] request for some time or active sessions
|
||||
*/
|
||||
suspend fun delayPermissionAsking(permission: String)
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue