diff --git a/core/res/src/main/res/values-de/strings.xml b/core/res/src/main/res/values-de/strings.xml
index c5b765d329..1c51e92eb7 100644
--- a/core/res/src/main/res/values-de/strings.xml
+++ b/core/res/src/main/res/values-de/strings.xml
@@ -139,6 +139,7 @@
Markt
Langsam
Gebühren
+ Beenden
Adressen synchronisieren
Zum Anbieter gehen
Zum Token
@@ -158,6 +159,7 @@
Keine Adresse
Jetzt
OK
+ Im Browser öffnen
Hauptkarte oder Ring
Primärring
Passphrase
@@ -181,6 +183,7 @@
Senden
Der Server ist nicht verfügbar. Bitte versuche es später erneut.
Teilen
+ Link teilen
Signieren
Signieren und senden
Staken
@@ -495,6 +498,10 @@
Rufe dies auf oder tippe auf die Suchleiste, um Token direkt vom Markt hinzuzufügen
Token hinzufügen
NFC ist auf deinem Gerät nicht verfügbar
+ %1$d NFTs in der %2$d Sammlung
+ Tippe hier, um das erste NFT zu erhalten
+ NFT-Sammlungen
+ Die Daten konnten nicht geladen werden
Du musst einen einzigen Zugangscode einrichten, um alle deine Geräte zu schützen
Schützen
Du kannst später auf jeder Karte oder Ring einen individuellen Zugangscode einrichten
@@ -760,6 +767,8 @@
inklusive einer Netzgebühr von %1$s
Die Transaktion wurde erfolgreich signiert und an den Blockchain-Knoten gesendet. Die Walletbilanz wird aktualisiert
%1$s ist ein Vermögenswert im Tron-Netzwerk. Um die Gebühr zu berechnen und eine Transaktion durchzuführen, musst du etwas Tron (TRX) auf deinem Konto einzahlen.
+ Um diese Transaktion für die angegebene Adresse abzuschließen, ist ein Ziel-Tag (Memo) erforderlich.
+ Ziel-Tag erforderlich
Transaktion gesendet
Bereite das Scannen der Karte oder Ring vor, die du einrichten möchtest.
Entferne diese Wallet
@@ -857,6 +866,7 @@
Belohnungen
Stake gesperrt
Mehr staken
+ Beim Staking %1$s wird Dein gesamtes %2$s -Guthaben eingesetzt. Alle weiteren %2$s due Du in Deine Tangem-Wallet einzahlst, werden ebenfalls automatisch eingesetzt.
Gestakeder Betrag
Du setzt %1$s ein und ethältst Deine Belohnung %2$s
Zum Entsperren antippen
@@ -931,7 +941,7 @@
Die Aktion ist für benutzerdefinierte Token nicht verfügbar.
Du hast kein Guthaben um dies zu Verkaufen. Lade dein Konto auf, um Geld von dort zu verkaufen.
Du hast kein Guthaben zum Versenden. Lade dein Konto auf, um Geld von dort aus senden zu können.
- Die Daten wurden noch nicht geladen. Dies kann einige Sekunden dauern. Bitte versuche es später erneut.
+ Die Daten werden gerade geladen. Dies kann einige Sekunden dauern. Bitte versuche es später noch einmal.
Das Tauschen von %s wird von aktuellen Anbietern nicht unterstützt, aber wir arbeiten daran, weitere Optionen hinzuzufügen.
Der angezeigte Kontostand kann aufgrund der Zwischenspeicherung veraltet sein.
Der Verkauf von Geldmitteln ist möglich, sobald die ausstehende(n) Transaktion(en) im %s -Netzwerk abgeschlossen ist/sind.
@@ -995,6 +1005,24 @@
Wallet umbenennen
Alle freischalten
Alle mit %s freischalten
+
+ - Verfügbar für %d Tag
+ - Verfügbar für %d Tage
+
+ Guthaben und Limits
+ Bitte wähle die Wallet aus, mit der Du den Registrierungsprozess gestartet hast, um die Transaktion zur Erstellung Deines Kontos auf der Blockchain zu signieren
+ Möchtest Du den Vorgang wirklich beenden? Du kannst später dort fortfahren, wo Du aufgehört hast.
+ Das wird nicht lange dauern. Wir richten gerade Dein Konto ein.
+ Das wird nicht lange dauern. Wir schließen die Aktivierung ab.
+ Alles wird vorbereitet!
+ Ungültige PIN: Sequenzen oder Wiederholungen vermeiden
+ Schon kann es losgehen!
+ Du kannst Deine Verbindung \n auf der Website des Drittanbieters \n herstellen und zurück zur Tangem-App gelangen
+ Zur Website gehen
+ Fahren wir mit der Einrichtung Deines Kontos fort.
+ Willkommen zurück!
+ Folge den Schritten, um Dein Konto einzurichten.
+ Willkommen!
Freischalten
Scanne Deine Karte, um den Zugriff freizuschalten
Benötigte Freischaltung
diff --git a/core/res/src/main/res/values-fr/strings.xml b/core/res/src/main/res/values-fr/strings.xml
index 8adef0ab59..83acd44b09 100644
--- a/core/res/src/main/res/values-fr/strings.xml
+++ b/core/res/src/main/res/values-fr/strings.xml
@@ -1038,7 +1038,7 @@
BNB Beacon Chain va s\'arrêter de fonctionner
Veuillez déposer environ %1$s pour couvrir les frais de réseau
Fonds insuffisants pour couvrir les frais de réseau
- Pas terrible
+ Peut mieux faire
J\'aime
Ok, compris!
Vraiment cool !
diff --git a/core/res/src/main/res/values-ja/strings.xml b/core/res/src/main/res/values-ja/strings.xml
index 2ff3e6be5f..9c9b68a323 100644
--- a/core/res/src/main/res/values-ja/strings.xml
+++ b/core/res/src/main/res/values-ja/strings.xml
@@ -136,6 +136,7 @@
マーケット
遅い
速度と料金
+ 終了
アドレスを同期する
プロバイダーへ移動
トークンへ移動
@@ -155,6 +156,7 @@
アドレスがありません
今
わかりました
+ ブラウザで開く
プライマリーカード
プライマリーリング
パスフレーズ
@@ -178,6 +180,7 @@
送る
サーバーが利用できません。しばらくしてからもう一度お試しください。
共有
+ リンクを共有
署名
署名して送信
ステーキング
@@ -489,6 +492,19 @@
これをドラッグするか、検索窓をタップして、マーケットから直接トークンを追加します
トークンを追加
お使いのデバイスではNFCが使用できません
+
+ - アイテム
+
+ ウォレットに送信されたNFTがここに表示されます。
+ コレクションはまだありません
+ NFTを受け取る
+ NFTコレクション
+ 一部のデータが読み込まれない場合があります
+ 一時的な読み込みの問題
+ %1$dコレクションの%2$dNFT
+ ここをタップして最初のNFTを受け取ります
+ NFTコレクション
+ データを読み込めません
すべてのデバイスを保護するには、単一のアクセスコードを設定してください。
保護する
後で各カードおよびリングに個別のアクセスコードを設定できます。
@@ -750,6 +766,8 @@
ネットワーク手数料%1$sを含む
取引は正常に署名され、ブロックチェーンノードに送信されました。ウォレットの残高はしばらくして更新されます。
%1$sはTronネットワークのアセットです。手数料を計算して取引を行うには、アカウントにTron(TRX)を入金する必要があります。
+ 指定されたアドレスへの取引を完了するには、宛先タグ(メモ)が必要です。
+ 宛先タグが必要です
取引が送信されました
設定したいカードまたはリングをスキャンするために準備してください。
ウォレット削除
@@ -847,6 +865,7 @@
報酬
ステーキングはロックされています
もっとステーキングする
+ %1$sをステーキングすると、 %2$s残高全体がステーキングされます。Tangemウォレットに入金した追加の%2$sも、自動的にステーキングされます。
ステーキング中の金額
%1$sをステーキングし、報酬%2$sを受け取ります
タップしてロック解除
@@ -985,6 +1004,20 @@
ウォレット名の変更
すべてのロックを解除
%sですべてをロック解除
+
+ - %d日間利用可能
+
+ 残高と限度額
+ 本当に終了してもよろしいですか?中断したところから後で続行できます。
+ 長くはかかりません。アカウントを設定しています。
+ 長くはかかりません。アクティベーションを完了しています。
+ 準備完了です!
+ 無効な暗証番号:連続や繰り返しを避けてください
+ ウェブサイトに移動
+ アカウントの設定を続けましょう。
+ お帰りなさい!
+ 手順に従ってアカウントを設定してください。
+ ようこそ!
ロック解除
カードをスキャンしてアクセスロックを解除する
ロック解除が必要
diff --git a/core/res/src/main/res/values/strings.xml b/core/res/src/main/res/values/strings.xml
index 85818c274f..453cfe5df9 100644
--- a/core/res/src/main/res/values/strings.xml
+++ b/core/res/src/main/res/values/strings.xml
@@ -139,6 +139,7 @@
Market
Slow
Speed and fee
+ Finish
Synchronize addresses
Go to provider
Go to token
@@ -158,6 +159,7 @@
No address
Now
OK
+ Open in Browser
Primary card
Primary ring
Passphrase
@@ -181,6 +183,7 @@
Send
The server is not available, please try again later
Share
+ Share Link
Sign
Sign and send
Stake
@@ -190,6 +193,7 @@
Success
Support
Swap
+ Tangem Wallet
terms and conditions
Terms of Use
Today
@@ -495,9 +499,19 @@
Pull this up or tap the search bar to add tokens directly from the market
Add tokens
NFC is not available on your device
- NFT collections
- Tap here to receive first NFT
+
+ - %d item
+ - %d items
+
+ NFTs sent to your wallet address will show up here.
+ No collections, yet
+ Receive NFT
+ NFT collections
+ Some data may not load
+ Temporary loading problems
%1$d NFTs in %2$d collection
+ Tap here to receive first NFT
+ NFT collections
Unable to load the data
Set up a single access code to protect all your devices.
Protect
@@ -764,6 +778,8 @@
including a network fee of %1$s
Transaction has been successfully signed and sent to the blockchain node. Wallet balance will be updated in a while
%1$s is an asset in the Tron network. To calculate the fee and make a transaction you need to deposit some Tron (TRX) in your account.
+ A destination tag (memo) is required to complete this transaction for the specified address.
+ Destination Tag Required
Transaction sent
Prepare to scan card or ring you want to set up.
Forget wallet
@@ -1000,6 +1016,69 @@
Rename wallet
Unlock all
Unlock all with %s
+ AML verifired
+ Available
+ Blocked
+ Debt
+ Limits
+ Other (no-otp)
+ Single transaction
+ Total
+
+ - available for %d day
+ - available for %d days
+
+ Available balance is actual funds available, considering pending transactions, blocked amounts, and debit balance to prevent overdrafts.
+ Available till %1$s
+ Balances & Limits
+ Missing Payment account information. Please contact support
+ Unable to load information about token
+ Information is still loading, please wait
+ Limits are needed to control costs, improve security, manage risk. You can spend %1$s during the period for card payments in shops and %2$s for other transactions, e.g. subscriptions or debts.
+ The access code will be used manage your payment account and protect it from unauthorized access
+ Access Code
+ Account activation
+ Please choose the wallet you started the registration process with to sign the transaction for creating your account on the Blockchain
+ Cancel Activation
+ Are you sure you want to exit? You can continue later from where you left off.
+ This won\'t take long. We\'re setting up your account.
+ This won’t take long. We’re completing the activation.
+ Getting everything ready!
+ Other wallet
+ Set up a 4-digit code.
It will be used for payments.
+ PIN code
+ Create PIN Code
+ Invalid PIN: avoid sequences or repeats
+ You\'re good to go!
+ Prepare the Tangem card and tap to approve
+ Prepare Tangem Wallet
+ You will be able to complete your connection \n on the third-party web-site \n and back to the Tangem app
+ Go to Website
+ Wallet connection
+ Choose wallet
+ Continue Activation
+ Let\'s continue setting up your account.
+ Welcome back!
+ Start Activation
+ Follow the steps to set up your account.
+ Welcome!
+ Blockchain amount
+ Currency code
+ Date
+ Error code
+ Transaction details
+ Merchant category code
+ Merchant city
+ Merchant country code
+ Merchant name
+ Request ID
+ Status
+ Transaction
+ Transaction amount
+ Transaction hash
+ Transaction request
+ Transaction status
+ Type
Unlock
Scan your card to unlock access
Needed unlock
diff --git a/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/done/api/OnboardingDoneComponent.kt b/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/done/api/OnboardingDoneComponent.kt
index 079b169a7e..2863a3876a 100644
--- a/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/done/api/OnboardingDoneComponent.kt
+++ b/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/done/api/OnboardingDoneComponent.kt
@@ -5,7 +5,14 @@ import com.tangem.core.ui.decompose.ComposableContentComponent
interface OnboardingDoneComponent : ComposableContentComponent {
- data class Params(val onDone: () -> Unit)
+ data class Params(
+ val mode: Mode,
+ val onDone: () -> Unit,
+ )
+
+ enum class Mode {
+ WalletCreated, GoodToGo
+ }
interface Factory : ComponentFactory
}
\ No newline at end of file
diff --git a/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/done/impl/DefaultOnboardingDoneComponent.kt b/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/done/impl/DefaultOnboardingDoneComponent.kt
index f36c949bfe..a32bb8cc28 100644
--- a/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/done/impl/DefaultOnboardingDoneComponent.kt
+++ b/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/done/impl/DefaultOnboardingDoneComponent.kt
@@ -1,7 +1,6 @@
package com.tangem.features.onboarding.v2.done.impl
import androidx.compose.runtime.Composable
-import androidx.compose.runtime.remember
import androidx.compose.ui.Modifier
import com.tangem.core.decompose.context.AppComponentContext
import com.tangem.features.onboarding.v2.done.api.OnboardingDoneComponent
@@ -18,7 +17,8 @@ internal class DefaultOnboardingDoneComponent @AssistedInject constructor(
@Composable
override fun Content(modifier: Modifier) {
OnboardingDone(
- onContinueClick = remember(this) { params.onDone },
+ mode = params.mode,
+ onContinueClick = params.onDone,
)
}
diff --git a/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/done/impl/ui/OnboardingDone.kt b/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/done/impl/ui/OnboardingDone.kt
index f3c8aa0111..309b940ac9 100644
--- a/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/done/impl/ui/OnboardingDone.kt
+++ b/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/done/impl/ui/OnboardingDone.kt
@@ -20,10 +20,16 @@ import com.tangem.core.ui.components.*
import com.tangem.core.ui.extensions.stringResourceSafe
import com.tangem.core.ui.res.TangemTheme
import com.tangem.core.ui.res.TangemThemePreview
+import com.tangem.features.onboarding.v2.done.api.OnboardingDoneComponent
import com.tangem.features.onboarding.v2.impl.R
+@Suppress("LongMethod")
@Composable
-internal fun OnboardingDone(onContinueClick: () -> Unit, modifier: Modifier = Modifier) {
+internal fun OnboardingDone(
+ mode: OnboardingDoneComponent.Mode,
+ onContinueClick: () -> Unit,
+ modifier: Modifier = Modifier,
+) {
val composition by rememberLottieComposition(spec = LottieCompositionSpec.RawRes(R.raw.anim_confetti))
val progress by animateLottieCompositionAsState(composition)
var showConfetti by remember { mutableStateOf(false) }
@@ -57,7 +63,12 @@ internal fun OnboardingDone(onContinueClick: () -> Unit, modifier: Modifier = Mo
SpacerH12()
Text(
modifier = Modifier.padding(horizontal = 32.dp),
- text = stringResourceSafe(R.string.onboarding_subtitle_success_tangem_wallet_onboarding),
+ text = when (mode) {
+ OnboardingDoneComponent.Mode.WalletCreated ->
+ stringResourceSafe(R.string.onboarding_subtitle_success_tangem_wallet_onboarding)
+ OnboardingDoneComponent.Mode.GoodToGo ->
+ stringResourceSafe(R.string.visa_onboarding_success_screen_description)
+ },
style = TangemTheme.typography.body1,
color = TangemTheme.colors.text.secondary,
textAlign = TextAlign.Center,
@@ -100,6 +111,9 @@ internal fun OnboardingDone(onContinueClick: () -> Unit, modifier: Modifier = Mo
@Composable
private fun Preview() {
TangemThemePreview {
- OnboardingDone(onContinueClick = {})
+ OnboardingDone(
+ mode = OnboardingDoneComponent.Mode.WalletCreated,
+ onContinueClick = {},
+ )
}
}
\ No newline at end of file
diff --git a/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/entry/impl/model/OnboardingEntryModel.kt b/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/entry/impl/model/OnboardingEntryModel.kt
index 45def47034..f8baf38360 100644
--- a/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/entry/impl/model/OnboardingEntryModel.kt
+++ b/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/entry/impl/model/OnboardingEntryModel.kt
@@ -20,6 +20,7 @@ import com.tangem.features.biometry.AskBiometryComponent
import com.tangem.features.biometry.BiometryFeatureToggles
import com.tangem.features.onboarding.v2.TitleProvider
import com.tangem.features.onboarding.v2.common.ui.CantLeaveBackupDialog
+import com.tangem.features.onboarding.v2.done.api.OnboardingDoneComponent
import com.tangem.features.onboarding.v2.entry.OnboardingEntryComponent
import com.tangem.features.onboarding.v2.entry.impl.analytics.OnboardingEntryEvent
import com.tangem.features.onboarding.v2.entry.impl.routing.OnboardingRoute
@@ -105,7 +106,12 @@ internal class OnboardingEntryModel @Inject constructor(
private fun onMultiWalletOnboardingDone(userWallet: UserWallet) {
when {
params.multiWalletMode == OnboardingEntryComponent.MultiWalletMode.AddBackup -> {
- stackNavigation.replaceAll(OnboardingRoute.Done(onDone = ::navigateToWalletScreen))
+ stackNavigation.replaceAll(
+ OnboardingRoute.Done(
+ mode = OnboardingDoneComponent.Mode.WalletCreated,
+ onDone = ::navigateToWalletScreen,
+ ),
+ )
}
userWallet.scanResponse.cardTypesResolver.isMultiwalletAllowed() -> {
stackNavigation.replaceAll(OnboardingRoute.ManageTokens(userWallet))
@@ -117,34 +123,58 @@ internal class OnboardingEntryModel @Inject constructor(
}
private fun onVisaOnboardingDone() {
- navigateToFinalScreenFlow()
+ navigateToFinalScreenFlow(doneMode = OnboardingDoneComponent.Mode.GoodToGo)
}
- private fun navigateToFinalScreenFlow() {
+ private fun navigateToFinalScreenFlow(
+ doneMode: OnboardingDoneComponent.Mode = OnboardingDoneComponent.Mode.WalletCreated,
+ ) {
if (askBiometryFeatureToggles.isAskForBiometryEnabled) {
modelScope.launch {
if (tangemSdkManager.checkCanUseBiometry() && settingsRepository.shouldShowSaveUserWalletScreen()) {
stackNavigation.replaceAll(
- OnboardingRoute.AskBiometry(modelCallbacks = AskBiometryModelCallbacks()),
+ OnboardingRoute.AskBiometry(modelCallbacks = AskBiometryModelCallbacks(doneMode)),
)
} else {
- stackNavigation.replaceAll(OnboardingRoute.Done(onDone = ::navigateToWalletScreen))
+ stackNavigation.replaceAll(
+ OnboardingRoute.Done(
+ mode = doneMode,
+ onDone = ::navigateToWalletScreen,
+ ),
+ )
}
}
} else {
- stackNavigation.replaceAll(OnboardingRoute.Done(onDone = ::navigateToWalletScreen))
+ stackNavigation.replaceAll(
+ OnboardingRoute.Done(
+ mode = doneMode,
+ onDone = ::navigateToWalletScreen,
+ ),
+ )
}
}
- inner class AskBiometryModelCallbacks : AskBiometryComponent.ModelCallbacks {
+ inner class AskBiometryModelCallbacks(
+ private val doneMode: OnboardingDoneComponent.Mode,
+ ) : AskBiometryComponent.ModelCallbacks {
override fun onAllowed() {
analyticsEventHandler.send(OnboardingEntryEvent.Biometric(OnboardingEntryEvent.Biometric.State.On))
- stackNavigation.replaceAll(OnboardingRoute.Done(onDone = ::navigateToWalletScreen))
+ stackNavigation.replaceAll(
+ OnboardingRoute.Done(
+ mode = doneMode,
+ onDone = ::navigateToWalletScreen,
+ ),
+ )
}
override fun onDenied() {
analyticsEventHandler.send(OnboardingEntryEvent.Biometric(OnboardingEntryEvent.Biometric.State.Off))
- stackNavigation.replaceAll(OnboardingRoute.Done(onDone = ::navigateToWalletScreen))
+ stackNavigation.replaceAll(
+ OnboardingRoute.Done(
+ mode = doneMode,
+ onDone = ::navigateToWalletScreen,
+ ),
+ )
}
}
diff --git a/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/entry/impl/routing/OnboardingChildFactory.kt b/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/entry/impl/routing/OnboardingChildFactory.kt
index 608d542ebe..edbc555782 100644
--- a/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/entry/impl/routing/OnboardingChildFactory.kt
+++ b/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/entry/impl/routing/OnboardingChildFactory.kt
@@ -48,6 +48,7 @@ internal class OnboardingChildFactory @Inject constructor(
is OnboardingRoute.Done -> onboardingDoneComponentFactory.create(
context = childContext,
params = OnboardingDoneComponent.Params(
+ mode = route.mode,
onDone = route.onDone,
),
)
diff --git a/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/entry/impl/routing/OnboardingRoute.kt b/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/entry/impl/routing/OnboardingRoute.kt
index b111c82d91..1175f2948b 100644
--- a/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/entry/impl/routing/OnboardingRoute.kt
+++ b/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/entry/impl/routing/OnboardingRoute.kt
@@ -5,6 +5,7 @@ import com.tangem.domain.models.scan.ScanResponse
import com.tangem.domain.wallets.models.UserWallet
import com.tangem.features.biometry.AskBiometryComponent
import com.tangem.features.onboarding.v2.TitleProvider
+import com.tangem.features.onboarding.v2.done.api.OnboardingDoneComponent
import com.tangem.features.onboarding.v2.multiwallet.api.OnboardingMultiWalletComponent
sealed class OnboardingRoute : Route {
@@ -40,6 +41,7 @@ sealed class OnboardingRoute : Route {
) : OnboardingRoute()
data class Done(
+ val mode: OnboardingDoneComponent.Mode,
val onDone: () -> Unit,
) : OnboardingRoute()
}
\ No newline at end of file
diff --git a/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/visa/impl/DefaultOnboardingVisaComponent.kt b/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/visa/impl/DefaultOnboardingVisaComponent.kt
index b36dcef18f..108d8134bc 100644
--- a/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/visa/impl/DefaultOnboardingVisaComponent.kt
+++ b/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/visa/impl/DefaultOnboardingVisaComponent.kt
@@ -161,7 +161,7 @@ internal class DefaultOnboardingVisaComponent @AssistedInject constructor(
params = OnboardingVisaOtherWalletComponent.Params(
childParams = childParams,
onDone = {
- model.stackNavigation.push(OnboardingVisaRoute.PinCode(activationOrderInfo = it))
+ model.stackNavigation.pushNew(OnboardingVisaRoute.PinCode(activationOrderInfo = it))
},
),
)
@@ -174,7 +174,7 @@ internal class DefaultOnboardingVisaComponent @AssistedInject constructor(
params = OnboardingVisaPinCodeComponent.Params(
childParams = childParams,
onDone = {
- model.stackNavigation.push(
+ model.stackNavigation.pushNew(
OnboardingVisaRoute.InProgress(from = OnboardingVisaRoute.InProgress.From.PinCode),
)
},
@@ -190,7 +190,7 @@ internal class DefaultOnboardingVisaComponent @AssistedInject constructor(
params = OnboardingVisaApproveComponent.Params(
childParams = childParams,
onDone = {
- model.stackNavigation.push(
+ model.stackNavigation.pushNew(
OnboardingVisaRoute.InProgress(from = OnboardingVisaRoute.InProgress.From.Approve),
)
},
diff --git a/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/visa/impl/child/accesscode/ui/OnboardingVisaAccessCode.kt b/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/visa/impl/child/accesscode/ui/OnboardingVisaAccessCode.kt
index 1557683bfe..d80ef6209b 100644
--- a/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/visa/impl/child/accesscode/ui/OnboardingVisaAccessCode.kt
+++ b/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/visa/impl/child/accesscode/ui/OnboardingVisaAccessCode.kt
@@ -23,6 +23,7 @@ import com.tangem.core.ui.components.SpacerH
import com.tangem.core.ui.components.SpacerH16
import com.tangem.core.ui.components.SpacerH32
import com.tangem.core.ui.extensions.resourceReference
+import com.tangem.core.ui.extensions.stringResourceSafe
import com.tangem.core.ui.res.TangemAnimations
import com.tangem.core.ui.res.TangemTheme
import com.tangem.core.ui.res.TangemThemePreview
@@ -87,9 +88,9 @@ private fun Content(
modifier = Modifier
.padding(horizontal = 32.dp),
text = if (reEnterAccessCodeState) {
- "Re-enter your access code" // TODO
+ stringResourceSafe(R.string.onboarding_access_code_repeat_code_title)
} else {
- "Create access code" // TODO
+ stringResourceSafe(R.string.onboarding_access_code_intro_title)
},
style = TangemTheme.typography.h2,
color = TangemTheme.colors.text.primary1,
@@ -98,11 +99,10 @@ private fun Content(
SpacerH16()
- // TODO
Text(
modifier = Modifier
.padding(horizontal = 32.dp),
- text = "The access code will be used manage your payment account and protect it from unauthorized access",
+ text = stringResourceSafe(R.string.visa_onboarding_access_code_description),
style = TangemTheme.typography.body1,
color = TangemTheme.colors.text.secondary,
textAlign = TextAlign.Center,
diff --git a/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/visa/impl/child/approve/ui/OnboardingVisaApprove.kt b/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/visa/impl/child/approve/ui/OnboardingVisaApprove.kt
index f93ebd7cd3..106973d0da 100644
--- a/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/visa/impl/child/approve/ui/OnboardingVisaApprove.kt
+++ b/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/visa/impl/child/approve/ui/OnboardingVisaApprove.kt
@@ -14,7 +14,8 @@ import androidx.compose.ui.unit.dp
import com.tangem.common.ui.navigationButtons.NavigationButton
import com.tangem.common.ui.navigationButtons.NavigationPrimaryButton
import com.tangem.core.ui.components.SpacerH
-import com.tangem.core.ui.extensions.TextReference
+import com.tangem.core.ui.extensions.resourceReference
+import com.tangem.core.ui.extensions.stringResourceSafe
import com.tangem.core.ui.res.TangemTheme
import com.tangem.core.ui.res.TangemThemePreview
import com.tangem.features.onboarding.v2.impl.R
@@ -43,7 +44,7 @@ internal fun OnboardingVisaApprove(state: OnboardingVisaApproveUM, modifier: Mod
SpacerH(86.dp)
Text(
- text = "Prepare Tangem Wallet",
+ text = stringResourceSafe(R.string.visa_onboarding_tangem_approve_title),
style = TangemTheme.typography.h2,
color = TangemTheme.colors.text.primary1,
textAlign = TextAlign.Center,
@@ -52,7 +53,7 @@ internal fun OnboardingVisaApprove(state: OnboardingVisaApproveUM, modifier: Mod
SpacerH(12.dp)
Text(
- text = "Prepare the Tangem card\nand tap to approve",
+ text = stringResourceSafe(R.string.visa_onboarding_tangem_approve_description),
style = TangemTheme.typography.body1,
color = TangemTheme.colors.text.secondary,
textAlign = TextAlign.Center,
@@ -65,7 +66,7 @@ internal fun OnboardingVisaApprove(state: OnboardingVisaApproveUM, modifier: Mod
.padding(start = 16.dp, end = 16.dp, bottom = 16.dp)
.fillMaxWidth(),
primaryButton = NavigationButton(
- textReference = TextReference.Str("Approve"),
+ textReference = resourceReference(R.string.common_approve),
iconRes = R.drawable.ic_tangem_24,
isIconVisible = true,
showProgress = state.approveButtonLoading,
diff --git a/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/visa/impl/child/choosewallet/model/OnboardingVisaChooseWalletModel.kt b/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/visa/impl/child/choosewallet/model/OnboardingVisaChooseWalletModel.kt
index 381cfc11aa..3d48e57718 100644
--- a/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/visa/impl/child/choosewallet/model/OnboardingVisaChooseWalletModel.kt
+++ b/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/visa/impl/child/choosewallet/model/OnboardingVisaChooseWalletModel.kt
@@ -3,7 +3,7 @@ package com.tangem.features.onboarding.v2.visa.impl.child.choosewallet.model
import androidx.compose.runtime.Stable
import com.tangem.core.decompose.di.ModelScoped
import com.tangem.core.decompose.model.Model
-import com.tangem.core.ui.extensions.TextReference
+import com.tangem.core.ui.extensions.resourceReference
import com.tangem.features.onboarding.v2.impl.R
import com.tangem.features.onboarding.v2.visa.impl.child.choosewallet.OnboardingVisaChooseWalletComponent.Params.Event
import com.tangem.features.onboarding.v2.visa.impl.child.choosewallet.ui.state.OnboardingVisaChooseWalletUM
@@ -32,7 +32,7 @@ internal class OnboardingVisaChooseWalletModel @Inject constructor(
val selectedOption = SelectableChainRowUM(
event = Event.TangemWallet,
icon = R.drawable.ic_tangem_24,
- text = TextReference.Str("Tangem Wallet"),
+ text = resourceReference(R.string.common_tangem_wallet),
)
return OnboardingVisaChooseWalletUM(
@@ -41,7 +41,7 @@ internal class OnboardingVisaChooseWalletModel @Inject constructor(
SelectableChainRowUM(
event = Event.OtherWallet,
icon = R.drawable.ic_wallet_filled_24,
- text = TextReference.Str("Other Wallet"),
+ text = resourceReference(R.string.visa_onboarding_other_wallet),
),
),
selectedOption = selectedOption,
diff --git a/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/visa/impl/child/choosewallet/ui/OnboardingVisaChooseWallet.kt b/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/visa/impl/child/choosewallet/ui/OnboardingVisaChooseWallet.kt
index b44e28c2c6..5cd9a11f10 100644
--- a/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/visa/impl/child/choosewallet/ui/OnboardingVisaChooseWallet.kt
+++ b/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/visa/impl/child/choosewallet/ui/OnboardingVisaChooseWallet.kt
@@ -21,6 +21,8 @@ import com.tangem.core.ui.components.rows.RowContentContainer
import com.tangem.core.ui.extensions.TextReference
import com.tangem.core.ui.extensions.outsetBorder
import com.tangem.core.ui.extensions.resolveReference
+import com.tangem.core.ui.extensions.resourceReference
+import com.tangem.core.ui.extensions.stringResourceSafe
import com.tangem.core.ui.res.TangemTheme
import com.tangem.core.ui.res.TangemThemePreview
import com.tangem.features.onboarding.v2.impl.R
@@ -45,10 +47,7 @@ internal fun OnboardingVisaChooseWallet(state: OnboardingVisaChooseWalletUM, mod
) {
Notification(
config = NotificationConfig(
- subtitle = TextReference.Str(
- "Please choose the wallet you started the registration" +
- " process with to sign the transaction for creating your account on the Blockchain.",
- ),
+ subtitle = resourceReference(R.string.visa_onboarding_approve_wallet_selector_notification_message),
iconResId = R.drawable.ic_alert_circle_24,
),
iconTint = TangemTheme.colors.icon.accent,
@@ -62,7 +61,7 @@ internal fun OnboardingVisaChooseWallet(state: OnboardingVisaChooseWalletUM, mod
start = 12.dp,
end = 12.dp,
),
- text = "Choose wallet",
+ text = stringResourceSafe(R.string.visa_onboarding_wallet_list_header),
style = TangemTheme.typography.subtitle2,
color = TangemTheme.colors.text.tertiary,
)
@@ -79,7 +78,7 @@ internal fun OnboardingVisaChooseWallet(state: OnboardingVisaChooseWalletUM, mod
.imePadding()
.padding(start = 16.dp, end = 16.dp, bottom = 16.dp)
.fillMaxWidth(),
- text = "Continue",
+ text = stringResourceSafe(R.string.common_continue),
onClick = state.onContinueClick,
)
}
diff --git a/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/visa/impl/child/otherwallet/model/OnboardingVisaOtherWalletModel.kt b/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/visa/impl/child/otherwallet/model/OnboardingVisaOtherWalletModel.kt
index 53c043fbea..875e5a4b49 100644
--- a/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/visa/impl/child/otherwallet/model/OnboardingVisaOtherWalletModel.kt
+++ b/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/visa/impl/child/otherwallet/model/OnboardingVisaOtherWalletModel.kt
@@ -68,10 +68,10 @@ internal class OnboardingVisaOtherWalletModel @Inject constructor(
}
private fun onShareClicked() {
- shareManager.shareText("https://tangem.com/")
+ shareManager.shareText("https://tangem.com/") // TODO
}
private fun onOpenInBrowserClicked() {
- urlOpener.openUrl("https://tangem.com/")
+ urlOpener.openUrl("https://tangem.com/") // TODO
}
}
\ No newline at end of file
diff --git a/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/visa/impl/child/otherwallet/ui/OnboardingVisaOtherWallet.kt b/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/visa/impl/child/otherwallet/ui/OnboardingVisaOtherWallet.kt
index 4b0a8c2f3f..68b39dbc61 100644
--- a/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/visa/impl/child/otherwallet/ui/OnboardingVisaOtherWallet.kt
+++ b/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/visa/impl/child/otherwallet/ui/OnboardingVisaOtherWallet.kt
@@ -16,6 +16,7 @@ import androidx.compose.ui.unit.dp
import com.tangem.core.ui.components.PrimaryButton
import com.tangem.core.ui.components.SecondaryButton
import com.tangem.core.ui.components.SpacerH12
+import com.tangem.core.ui.extensions.stringResourceSafe
import com.tangem.core.ui.res.TangemTheme
import com.tangem.core.ui.res.TangemThemePreview
import com.tangem.features.onboarding.v2.impl.R
@@ -44,7 +45,7 @@ internal fun OnboardingVisaOtherWallet(state: OnboardingVisaOtherWalletUM, modif
SpacerH12()
Text(
- text = "Go to Website",
+ text = stringResourceSafe(R.string.visa_onboarding_wallet_connect_title),
style = TangemTheme.typography.h2,
color = TangemTheme.colors.text.primary1,
textAlign = TextAlign.Center,
@@ -53,9 +54,7 @@ internal fun OnboardingVisaOtherWallet(state: OnboardingVisaOtherWalletUM, modif
SpacerH12()
Text(
- text = "You will be able to complete your connection \n" +
- "on the third-party web-site \n" +
- "and back to the Tangem app",
+ text = stringResourceSafe(R.string.visa_onboarding_wallet_connect_description),
style = TangemTheme.typography.body1,
color = TangemTheme.colors.text.secondary,
textAlign = TextAlign.Center,
@@ -68,7 +67,7 @@ internal fun OnboardingVisaOtherWallet(state: OnboardingVisaOtherWalletUM, modif
modifier = Modifier
.padding(horizontal = 16.dp)
.fillMaxWidth(),
- text = "Open in Browser",
+ text = stringResourceSafe(R.string.common_open_in_browser),
onClick = state.onOpenInBrowserClick,
)
@@ -78,7 +77,7 @@ internal fun OnboardingVisaOtherWallet(state: OnboardingVisaOtherWalletUM, modif
modifier = Modifier
.padding(start = 16.dp, end = 16.dp, bottom = 16.dp)
.fillMaxWidth(),
- text = "Share Link",
+ text = stringResourceSafe(R.string.common_share_link),
onClick = state.onOpenInBrowserClick,
)
}
diff --git a/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/visa/impl/child/pincode/model/OnboardingVisaPinCodeModel.kt b/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/visa/impl/child/pincode/model/OnboardingVisaPinCodeModel.kt
index 3e590ec818..bcb96ade2f 100644
--- a/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/visa/impl/child/pincode/model/OnboardingVisaPinCodeModel.kt
+++ b/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/visa/impl/child/pincode/model/OnboardingVisaPinCodeModel.kt
@@ -5,7 +5,7 @@ import com.tangem.common.extensions.toHexString
import com.tangem.core.decompose.di.ModelScoped
import com.tangem.core.decompose.model.Model
import com.tangem.core.decompose.model.ParamsContainer
-import com.tangem.core.ui.extensions.stringReference
+import com.tangem.core.ui.extensions.resourceReference
import com.tangem.datasource.local.visa.VisaAuthTokenStorage
import com.tangem.domain.models.scan.ScanResponse
import com.tangem.domain.visa.SetVisaPinCodeUseCase
@@ -14,6 +14,7 @@ import com.tangem.domain.visa.model.VisaCardId
import com.tangem.domain.wallets.builder.UserWalletBuilder
import com.tangem.domain.wallets.legacy.UserWalletsListManager
import com.tangem.domain.wallets.models.UserWallet
+import com.tangem.features.onboarding.v2.impl.R
import com.tangem.features.onboarding.v2.visa.impl.child.pincode.OnboardingVisaPinCodeComponent
import com.tangem.features.onboarding.v2.visa.impl.child.pincode.ui.state.OnboardingVisaPinCodeUM
import com.tangem.utils.coroutines.CoroutineDispatcherProvider
@@ -64,7 +65,11 @@ internal class OnboardingVisaPinCodeModel @Inject constructor(
it.copy(
pinCode = pin,
submitButtonEnabled = PinCodeValidation.validate(pin),
- error = if (isError) stringReference("Invalid PIN: avoid sequences or repeats") else null,
+ error = if (isError) {
+ resourceReference(R.string.visa_onboarding_pin_validation_error_message)
+ } else {
+ null
+ },
)
}
}
@@ -117,8 +122,4 @@ internal class OnboardingVisaPinCodeModel @Inject constructor(
lazyMessage = { "User wallet not created" },
)
}
-
- private companion object {
- const val PIN_CODE_LENGTH = 4
- }
}
\ No newline at end of file
diff --git a/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/visa/impl/child/pincode/ui/OnboardingVisaPinCode.kt b/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/visa/impl/child/pincode/ui/OnboardingVisaPinCode.kt
index 744711c9db..cb2d5993c8 100644
--- a/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/visa/impl/child/pincode/ui/OnboardingVisaPinCode.kt
+++ b/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/visa/impl/child/pincode/ui/OnboardingVisaPinCode.kt
@@ -33,11 +33,13 @@ import com.tangem.common.ui.navigationButtons.NavigationPrimaryButton
import com.tangem.core.ui.components.SpacerH
import com.tangem.core.ui.components.SpacerH16
import com.tangem.core.ui.components.SpacerH4
-import com.tangem.core.ui.extensions.TextReference
import com.tangem.core.ui.extensions.resolveReference
+import com.tangem.core.ui.extensions.resourceReference
import com.tangem.core.ui.extensions.stringReference
+import com.tangem.core.ui.extensions.stringResourceSafe
import com.tangem.core.ui.res.TangemTheme
import com.tangem.core.ui.res.TangemThemePreview
+import com.tangem.features.onboarding.v2.impl.R
import com.tangem.features.onboarding.v2.visa.impl.child.pincode.ui.state.OnboardingVisaPinCodeUM
import kotlinx.coroutines.delay
@@ -57,7 +59,7 @@ internal fun OnboardingVisaPinCode(state: OnboardingVisaPinCodeUM, modifier: Mod
horizontalAlignment = Alignment.CenterHorizontally,
) {
Text(
- text = "Create\nPIN Code",
+ text = stringResourceSafe(R.string.visa_onboarding_pin_code_title),
style = TangemTheme.typography.h2,
color = TangemTheme.colors.text.primary1,
textAlign = TextAlign.Center,
@@ -66,7 +68,7 @@ internal fun OnboardingVisaPinCode(state: OnboardingVisaPinCodeUM, modifier: Mod
SpacerH16()
Text(
- text = "Set up a 4-digit code.\nIt will be used for payments.",
+ text = stringResourceSafe(R.string.visa_onboarding_pin_code_description),
style = TangemTheme.typography.body1,
color = TangemTheme.colors.text.secondary,
textAlign = TextAlign.Center,
@@ -83,7 +85,7 @@ internal fun OnboardingVisaPinCode(state: OnboardingVisaPinCodeUM, modifier: Mod
.padding(start = 16.dp, end = 16.dp, bottom = 16.dp)
.fillMaxWidth(),
primaryButton = NavigationButton(
- textReference = TextReference.Str("Submit"),
+ textReference = resourceReference(R.string.common_submit),
onClick = state.onSubmitClick,
showProgress = state.submitButtonLoading,
isEnabled = state.submitButtonEnabled,
diff --git a/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/visa/impl/child/welcome/ui/OnboardingVisaWelcome.kt b/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/visa/impl/child/welcome/ui/OnboardingVisaWelcome.kt
index 0a209235b0..9a01f706d6 100644
--- a/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/visa/impl/child/welcome/ui/OnboardingVisaWelcome.kt
+++ b/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/visa/impl/child/welcome/ui/OnboardingVisaWelcome.kt
@@ -16,6 +16,7 @@ import com.tangem.core.ui.components.PrimaryButton
import com.tangem.core.ui.components.PrimaryButtonIconEnd
import com.tangem.core.ui.components.SpacerH
import com.tangem.core.ui.components.SpacerH12
+import com.tangem.core.ui.extensions.stringResourceSafe
import com.tangem.core.ui.res.TangemTheme
import com.tangem.core.ui.res.TangemThemePreview
import com.tangem.features.onboarding.v2.impl.R
@@ -47,8 +48,10 @@ internal fun OnboardingVisaWelcome(state: OnboardingVisaWelcomeUM, modifier: Mod
Text(
text = when (state.mode) {
- OnboardingVisaWelcomeUM.Mode.Hello -> "Hello, ${state.userName}!"
- OnboardingVisaWelcomeUM.Mode.WelcomeBack -> "Welcome back, ${state.userName}!"
+ OnboardingVisaWelcomeUM.Mode.Hello ->
+ stringResourceSafe(R.string.visa_onboarding_welcome_title)
+ OnboardingVisaWelcomeUM.Mode.WelcomeBack ->
+ stringResourceSafe(R.string.visa_onboarding_welcome_back_title)
},
style = TangemTheme.typography.h2,
color = TangemTheme.colors.text.primary1,
@@ -58,8 +61,10 @@ internal fun OnboardingVisaWelcome(state: OnboardingVisaWelcomeUM, modifier: Mod
Text(
text = when (state.mode) {
- OnboardingVisaWelcomeUM.Mode.Hello -> "bla bla bla //TODO"
- OnboardingVisaWelcomeUM.Mode.WelcomeBack -> "bla bla bla? //TODO"
+ OnboardingVisaWelcomeUM.Mode.Hello ->
+ stringResourceSafe(R.string.visa_onboarding_welcome_description)
+ OnboardingVisaWelcomeUM.Mode.WelcomeBack ->
+ stringResourceSafe(R.string.visa_onboarding_welcome_back_description)
},
style = TangemTheme.typography.body1,
color = TangemTheme.colors.text.secondary,
@@ -72,7 +77,7 @@ internal fun OnboardingVisaWelcome(state: OnboardingVisaWelcomeUM, modifier: Mod
modifier = Modifier
.padding(start = 16.dp, end = 16.dp, bottom = 16.dp)
.fillMaxWidth(),
- text = "Start Activation",
+ text = stringResourceSafe(R.string.visa_onboarding_welcome_button_title),
onClick = state.onContinueClick,
)
}
@@ -81,7 +86,7 @@ internal fun OnboardingVisaWelcome(state: OnboardingVisaWelcomeUM, modifier: Mod
modifier = Modifier
.padding(start = 16.dp, end = 16.dp, bottom = 16.dp)
.fillMaxWidth(),
- text = "Continue Activation",
+ text = stringResourceSafe(R.string.visa_onboarding_welcome_back_button_title),
showProgress = state.continueButtonLoading,
iconResId = R.drawable.ic_tangem_24,
onClick = state.onContinueClick,
diff --git a/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/visa/impl/child/welcome/ui/state/OnboardingVisaWelcomeUM.kt b/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/visa/impl/child/welcome/ui/state/OnboardingVisaWelcomeUM.kt
index d1f975f9b3..069b63d30f 100644
--- a/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/visa/impl/child/welcome/ui/state/OnboardingVisaWelcomeUM.kt
+++ b/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/visa/impl/child/welcome/ui/state/OnboardingVisaWelcomeUM.kt
@@ -2,7 +2,6 @@ package com.tangem.features.onboarding.v2.visa.impl.child.welcome.ui.state
internal data class OnboardingVisaWelcomeUM(
val mode: Mode = Mode.Hello,
- val userName: String = "",
val continueButtonLoading: Boolean = false,
val onContinueClick: () -> Unit = {},
) {
diff --git a/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/visa/impl/route/Titles.kt b/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/visa/impl/route/Titles.kt
index 5da3a52e3d..87aaac10b3 100644
--- a/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/visa/impl/route/Titles.kt
+++ b/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/visa/impl/route/Titles.kt
@@ -1,16 +1,22 @@
package com.tangem.features.onboarding.v2.visa.impl.route
import com.tangem.core.ui.extensions.TextReference
+import com.tangem.core.ui.extensions.resourceReference
+import com.tangem.features.onboarding.v2.impl.R
-// TODO add translations [REDACTED_TASK_KEY]
internal fun OnboardingVisaRoute.screenTitle(): TextReference = when (this) {
- OnboardingVisaRoute.AccessCode -> TextReference.Str("Access code")
- is OnboardingVisaRoute.ChooseWallet -> TextReference.Str("Account activation")
- is OnboardingVisaRoute.InProgress -> TextReference.Str("In progress")
- is OnboardingVisaRoute.OtherWalletApproveOption -> TextReference.Str("Wallet connection")
- is OnboardingVisaRoute.PinCode -> TextReference.Str("PIN code")
- is OnboardingVisaRoute.TangemWalletApproveOption -> TextReference.Str("Wallet connection")
+ OnboardingVisaRoute.AccessCode ->
+ resourceReference(R.string.visa_onboarding_access_code_navigation_title)
+ is OnboardingVisaRoute.ChooseWallet ->
+ resourceReference(R.string.visa_onboarding_account_activation_navigation_title)
+ is OnboardingVisaRoute.InProgress ->
+ resourceReference(R.string.common_in_progress)
+ is OnboardingVisaRoute.OtherWalletApproveOption,
+ is OnboardingVisaRoute.TangemWalletApproveOption,
+ -> resourceReference(R.string.visa_onboarding_wallet_connection_navigation_title)
+ is OnboardingVisaRoute.PinCode ->
+ resourceReference(R.string.visa_onboarding_pin_code_navigation_title)
is OnboardingVisaRoute.Welcome,
is OnboardingVisaRoute.WelcomeBack,
- -> TextReference.Str("Getting started")
+ -> resourceReference(R.string.onboarding_getting_started)
}
\ No newline at end of file
diff --git a/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/visa/impl/ui/OnboardingVisa.kt b/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/visa/impl/ui/OnboardingVisa.kt
deleted file mode 100644
index 40a9a8597d..0000000000
--- a/features/onboarding-v2/impl/src/main/kotlin/com/tangem/features/onboarding/v2/visa/impl/ui/OnboardingVisa.kt
+++ /dev/null
@@ -1,9 +0,0 @@
-package com.tangem.features.onboarding.v2.visa.impl.ui
-
-import androidx.compose.runtime.Composable
-import androidx.compose.ui.Modifier
-
-@Composable
-internal fun OnboardingVisa(modifier: Modifier = Modifier, childContent: @Composable (Modifier) -> Unit) {
- childContent(modifier)
-}
\ No newline at end of file