Updated on 2026-08-14
This commit is contained in:
parent
9ee6611585
commit
ba28cf5b6d
29 changed files with 761 additions and 41 deletions
|
|
@ -84,5 +84,7 @@ sealed interface FeedbackEmailType {
|
|||
) : Visa()
|
||||
|
||||
data class FeatureIsBeta(override val walletMetaInfo: WalletMetaInfo) : Visa()
|
||||
|
||||
data class KycRejected(override val walletMetaInfo: WalletMetaInfo, val customerId: String) : Visa()
|
||||
}
|
||||
}
|
||||
|
|
@ -54,6 +54,10 @@ internal class FeedbackDataBuilder {
|
|||
builder.appendKeyValue("User Wallet ID", userWalletId)
|
||||
}
|
||||
|
||||
fun addCustomerId(customerId: String) {
|
||||
builder.appendKeyValue("ID: ", customerId)
|
||||
}
|
||||
|
||||
fun addUserWalletMetaInfo(walletMetaInfo: WalletMetaInfo) {
|
||||
builder.appendKeyValue("Mobile Wallet is backed up", walletMetaInfo.hotWalletIsBackedUp?.toString())
|
||||
builder.appendKeyValue("Card ID", walletMetaInfo.cardId)
|
||||
|
|
@ -116,6 +120,7 @@ internal class FeedbackDataBuilder {
|
|||
is FeedbackEmailType.Visa.Dispute,
|
||||
is FeedbackEmailType.Visa.FeatureIsBeta,
|
||||
is FeedbackEmailType.Visa.Withdrawal,
|
||||
is FeedbackEmailType.Visa.KycRejected,
|
||||
-> return
|
||||
is FeedbackEmailType.Visa.DisputeV2 -> when (type.item) {
|
||||
is TangemPayTxHistoryItem.Collateral -> "Receive/Withdraw"
|
||||
|
|
|
|||
|
|
@ -48,6 +48,7 @@ class SendFeedbackEmailUseCase(
|
|||
|
||||
private fun getAddress(type: FeedbackEmailType): String {
|
||||
return when {
|
||||
type is FeedbackEmailType.Visa.KycRejected -> PAERA_SUPPORT_EMAIL
|
||||
type.isVisaEmail() -> TANGEM_VISA_SUPPORT_EMAIL
|
||||
type.walletMetaInfo?.isStart2Coin == true -> START2COIN_SUPPORT_EMAIL
|
||||
else -> TANGEM_SUPPORT_EMAIL
|
||||
|
|
@ -95,6 +96,7 @@ class SendFeedbackEmailUseCase(
|
|||
is FeedbackEmailType.Visa.Dispute,
|
||||
is FeedbackEmailType.Visa.DisputeV2,
|
||||
is FeedbackEmailType.Visa.FeatureIsBeta,
|
||||
is FeedbackEmailType.Visa.KycRejected,
|
||||
-> this
|
||||
is FeedbackEmailType.DirectUserRequest,
|
||||
is FeedbackEmailType.BackupProblem,
|
||||
|
|
|
|||
|
|
@ -39,6 +39,7 @@ internal class EmailMessageBodyResolver(
|
|||
is FeedbackEmailType.Visa.DisputeV2 -> addTangemPayDisputeRequestBody(type)
|
||||
is FeedbackEmailType.Visa.Withdrawal -> addTangemPayWithdrawalRequestBody(type)
|
||||
is FeedbackEmailType.Visa.FeatureIsBeta -> addTangemPayBetaRequestBody(type)
|
||||
is FeedbackEmailType.Visa.KycRejected -> addTangemPayKycRejectedRequestBody(type)
|
||||
}
|
||||
|
||||
return build()
|
||||
|
|
@ -70,6 +71,12 @@ internal class EmailMessageBodyResolver(
|
|||
}
|
||||
}
|
||||
|
||||
private fun FeedbackDataBuilder.addTangemPayKycRejectedRequestBody(type: FeedbackEmailType.Visa.KycRejected) {
|
||||
addTangemPayPhoneInfoBody(type)
|
||||
addDelimiter()
|
||||
addCustomerId(customerId = type.customerId)
|
||||
}
|
||||
|
||||
private suspend fun FeedbackDataBuilder.addTangemPayWithdrawalRequestBody(
|
||||
type: FeedbackEmailType.Visa.Withdrawal,
|
||||
) {
|
||||
|
|
|
|||
|
|
@ -27,6 +27,7 @@ internal class EmailMessageTitleResolver(private val resources: Resources) {
|
|||
is FeedbackEmailType.Visa.FailedIssueCard,
|
||||
is FeedbackEmailType.Visa.Withdrawal,
|
||||
is FeedbackEmailType.Visa.FeatureIsBeta,
|
||||
is FeedbackEmailType.Visa.KycRejected,
|
||||
is FeedbackEmailType.PreActivatedWallet,
|
||||
is FeedbackEmailType.BackupProblem,
|
||||
-> R.string.feedback_preface_support
|
||||
|
|
|
|||
|
|
@ -47,6 +47,7 @@ internal class EmailSubjectResolver(private val resources: Resources) {
|
|||
-> "[Visa] [DISPUTE] {auto-filled subject}"
|
||||
is FeedbackEmailType.Visa.Withdrawal -> "[Visa] [WITHDRAWAL] {auto-filled subject}"
|
||||
is FeedbackEmailType.Visa.FeatureIsBeta -> "[VISA] [FEEDBACK]"
|
||||
is FeedbackEmailType.Visa.KycRejected -> "Tangem Pay - [VISA] [KYC REJECTED]"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -4,4 +4,5 @@ internal const val GMAIL_MAX_FILE_SIZE = 24_900_000 // ≈ 25 MB
|
|||
|
||||
internal const val START2COIN_SUPPORT_EMAIL = "cardsupport@start2coin.com"
|
||||
internal const val TANGEM_SUPPORT_EMAIL = "support@tangem.com"
|
||||
internal const val TANGEM_VISA_SUPPORT_EMAIL = "pay@tangem.com"
|
||||
internal const val TANGEM_VISA_SUPPORT_EMAIL = "pay@tangem.com"
|
||||
internal const val PAERA_SUPPORT_EMAIL = "support@paera.com"
|
||||
Loading…
Add table
Add a link
Reference in a new issue