Closes#639.
- The Secant app read `SynchronizerState` only from
`SDKSyncronizerSynced` notification. So when app started and there was
some latency between sync start and sync finish the Secant app didn't
show valid balance.
- Now the Secant app reads `SynchronizerState` also from `SDKSyncronizerStarted`
notification. So it shows valid balance right on the app start.
- We need to require specific version of SwiftGen because each version
may generate different file. Which causes then problems with git.
- Convert build phase shell scripts to zsh.
This disables the send button when the app is syncing. but if the user
is already there it won't change the underlying store to avoid unwanted
re-renders by SwiftUI engine.
Test reflect this situation. Also fixed a problem where the tests would
not reflect the correct state from the dependency injection.
Closes#611
Closes#617
- All the texts that weren't in the Localisable.strings file are now
there.
- L10n is used for all the texts in the code.
- Fixed paths in SwiftGen build phase so L10n.swift is now correctly
generated when Localisable.strings file change.
Closes#613
- Only change was in usage of rewind function. So it's changed.
- And when rewind is done then start of the sync process is called. So
rewind now really works without app restart.
- previous profile screen connected to the receive ZEC button
- receive ZEC is now simplified to show only QR code + UA with small "i" icon leading to address details
- profile's UA address copy to pasteboard added
- home's settings button connected to settings screen
- settings screen updated, test crash report and rescan blockchain moved to debug menu
- root reducer's debug code move to a separate file
- unit tests updated + debug tests provided
- flow is hidden by default
- when turned on, only new users (nuke wallet and start over) continues to the flow
- unit tests fixed and updated
- new unit tests
- phrase display screen simplified
[#556] Hide post-seed backup flow and rework screenshot tests (#591)
- never show the phrase for users who had it disabled at the time of wallet creation
Closes#575
- Added `SupportDataGenerator` object which generates data sent with
support email. Format of the data is based on what Android has.
- Support button is moved to settings from profile.
- Support button opens mail composer.
- added alert view asking if nuke is triggered or canceled
- wipe of the keychain
- wipe publisher properly used
- functional wipe accessible through debug menu
Closes#554
- WalletConfigProvider and WalletConfig are used in the Secant app.
- First feature flag (`onboarding`) is in use.
Co-authored-by: Lukas Korba <lukas.korba@seznam.cz>
- Added `WalletConfigProvider` object which handles loading and caching of
feature flags.
- Added `WalletConfig` which represents one configuration
of all feature flags.
- draft of the removal, home screen updated
[#559] Remove the circular progress bar from home screen
- circular area removed
- snapshot tests of the circular area removed
- home screen simplified
1. duplicates secant-testnet target and call it secant mainnet https://github.com/zcash/secant-ios-wallet/issues/273
2. renames Info copy plist file and Display name
3. Fixes TCA code bootstrapping so it has the mainnet environment
Fixed Info-Plist
4. (off code repo) create the mainnet app on the app store
4. create the mainnet app on the app store
5. create the mainnet variant on Crashlytics
6. create a GoogleServices-Plist file
7. change tag triggers to mainnet and testnet can be built independently from each other
8. add Icons for testnet
Creates TargetConstants enum for network target
Closes [#568] Change display name to sECCant
make Derivation tool be static by SECANT_{NETWORK} target
Closes [#570] Change AppIcon to ECC icon
Closes#207