secant-ios-wallet/secant/Features/BackupFlow/Preamble/RecoveryPhraseTestPreambleV...

96 lines
3.5 KiB
Swift
Raw Normal View History

//
// RecoveryPhraseTestPreambleView.swift
// secant-testnet
//
// Created by Lukáš Korba on 03/01/22.
//
import SwiftUI
import ComposableArchitecture
struct RecoveryPhraseTestPreambleView: View {
var store: RecoveryPhraseValidationStore
var body: some View {
WithViewStore(store) { viewStore in
GeometryReader { proxy in
VStack {
VStack(alignment: .center, spacing: 20) {
Text("recoveryPhraseTestPreamble.title")
.titleText()
.multilineTextAlignment(.center)
Text("recoveryPhraseTestPreamble.paragraph1")
.paragraphText()
.multilineTextAlignment(.center)
.padding(.horizontal, 44)
.opacity(0.53)
}
.padding(.bottom, 20)
CircularFrame()
.backgroundImage(
Asset.Assets.Backgrounds.callout1.image
)
.frame(
width: proxy.size.width * 0.84,
height: proxy.size.width * 0.84
)
.badgeIcon(.error)
Spacer()
VStack(alignment: .center, spacing: 40) {
VStack(alignment: .center, spacing: 20) {
Text("recoveryPhraseTestPreamble.paragraph2")
.paragraphText()
.multilineTextAlignment(.center)
.opacity(0.53)
Text("recoveryPhraseTestPreamble.paragraph3")
.paragraphText()
.multilineTextAlignment(.center)
.padding(.horizontal, 10)
.opacity(0.53)
}
Button(
action: { viewStore.send(.recoveryBackupPhraseValidation) },
label: { Text("recoveryPhraseTestPreamble.button.goNext") }
)
.activeButtonStyle
.frame(width: nil, height: 60)
.fixedSize(horizontal: false, vertical: true)
}
.padding()
Spacer()
}
.frame(width: proxy.size.width)
.scrollableWhenScaledUp()
.navigationLinkEmpty(
isActive: viewStore.bindingForRoute(.recoveryBackupPhraseValidation),
destination: { RecoveryPhraseBackupValidationView(store: store) }
)
}
.padding()
.navigationBarBackButtonHidden(true)
.applyScreenBackground()
}
}
}
struct RecoveryPhraseTestPreambleView_Previews: PreviewProvider {
static var previews: some View {
Group {
RecoveryPhraseTestPreambleView(store: .demo)
RecoveryPhraseTestPreambleView(store: .demo)
.previewDevice(PreviewDevice(rawValue: "iPhone SE (2nd generation)"))
RecoveryPhraseTestPreambleView(store: .demo)
.environment(\.sizeCategory, .accessibilityLarge)
}
}
}