- implemented POC for server check in Zashi, adopted SDK with the feature
[#1237] Choose the best server by testing responses from multiple server hosts
- Logic has been updated to deliver all requirements
- UI has been upgraded to reflect latest and new design
[#1237] Choose the best server by testing responses from multiple server hosts
- inverted tint if needed implemented for the progress view
[#1237] Choose the best server by testing responses from multiple server hosts
- Rebased
[#937] Shielded transaction UI
- The TransactionState has been extended to handle shielding
- The UI for the transaction row has been extended to handle right states for all types of transactions, newly for shielding, shielded and shielding failed
[#937] Shielded transaction UI
- Rebased and updated to the latest API
[#937] Shielded transaction UI
- WIP
[#937] Shielded transaction UI
- Shileding UI updated to show amount the same way as sent/received
- Shielding UI updated to show ID
[#1337] update UI of the Settings and Advanced Settings screens
- settings WIP
[#1337] update UI of the Settings and Advanced Settings screens
- Changelog updated
- Design is finalized for both Settings and Advanced Settings
tca-deprecation-resolution
- All reducers have been updated to use @Reducer macro
- All scopes have been updated to use \. case path
- All destinations have been updated to use new Bindings
tca-deprecation-resolution
- @DependencyClient macro used for all dependencies
- Unit tests fixed
tca-deprecation-update
- cleanup
tca-navigation-update
- cleanup of : Reducer
tca-navigation-update
- code cleanup
- WalletBalances now can handle currency conversion with respect to the system's locale settings
[#1238] display USD value in addition to ZEC value in the app UI
- WIP
- the input fields have been completely reworked
[#1238] display USD value in addition to ZEC value in the app UI
- QR scan button is back in the address field
[#1238] display USD value in addition to ZEC value in the app UI
- Prefix views for the inputs implemented
- Titles for the inputs implemented
- Error messages for the inputs implemented
- Hide balances support
- Send Confirmation enhancements
[#1238] display USD value in addition to ZEC value in the app UI
- Confirmation screen shows the currency value defined in the Send screen
[#1238] display USD value in addition to ZEC value in the app UI
- Exchange rate design implemented
- Custom tooltip implemented and used for cases when the rate is not available or stale
[#1238] display USD value in addition to ZEC value in the app UI
- cleanup and last fixes
- Autolock handler dependency that watches state of the battery and determine plugged or unplugged state of the device
- When app is restoring and pluggedn it, it will no longer sleep
[#1021] Do not let iPhone sleep while restoring
- Final design for the screen
- Logic that prevents iPhone from sleeping while plugged-in and restoring
- Unit tests fixed
- Changelog updated
- All work here is just cleanup of obsolete dependency injection. #981 introduced a brand new approach of DI for token name and SDK constants. That allowed me to deliver expected values directly in the TCA fashion so all reducers no longer needed those values to be passed via initializers.
- Reducers refactored
- EffectTasks refactored
- WithViewStores refactored
- all side effects refactored to the newest API
- tests refactored to MainActor async ones
- hosting application bypassed so the tests are passing and not flaky
- code cleanup
- snapshot tests with ViewStore bindings work again
- Confirmation dialog refactored, used brand new navigation TCA pattern
- unit tests fixed
- concept of placeholder states removed finally, replaced with initial states that are production ready
- this change allowed the TCA roto state to simply clear out to initial after nuke/wipe
- code + tests refactored and fixed
- unit tests implemented
- fixes for the birthday screen
- layout updated to be scrollable for the seed screen
- code cleanup
- SDK 2.0.3 adopted
- optional placeholder for the birthday
- fixes for the restore flow after a wipe
- clean up of TCA warnings, EffectTask refactored to Effect
- secant is buildable again, notifications replaced by publishers
- tests WIP
- all unit tests fixed
- syntax of dependencies consolidated
- syntax of .send and .receive states consolidated
* [#541] Adopt Latest main commit of SDK
This adopts commit `cf60f44aa83938432c81361917406483ff42c719` from `main`
branch of ZcashLightClientKit.
It includes changes to remove a fake "defaultBirthday" and use the real
`BlockHeight.ofLatestCheckpoint()` function that allows the wallets
to fetch the latest checkpoint available from bundle and define it as the
birthday. Also "defaultBirthday" birthday was incorrectly being used as a
replacement for Sapling Activation height which is the minimum birthday
supported by the wallet in terms of shielded pools.
Wallets with lower heights that have only transparent funds could in theory
work, but they won't be able to see sprout funds. Also the the SDK won't provide a birthday prior to sapling activation.
removes references to `LightWalletService` since this class has been made
internal to the SDK only.
adopts FsBlockDb and adds a FsBlockDbRoot directory dependency for the
Databases dependencies. Which should be renamed in a later commit
Closes#541
* Fix SwiftLint issues
- SensitiveData file holding utilities to hide all strings and data that holds information we don't want to leak or log
- wallet storage fields redacted
- import wallet fields redacted
- create wallet chips redacted
- import wallet reducer changed: BindableStates replaced by bindings to bridge redacted data
- redacted wallet balance
- redacted birthday value (BlockHeight helper)
- Redacted protocol conforming to Undescribable for release/production and testflight builds
- new target for the unredacted debug development
- unit tests fixed
- sensitive data helpers commented
- unit test for conformation to the Undescribable
- memo is redacted
- immutability of redactable structs
- log test capped to look for 6mins at most
- library updated
- overrides for the dependencies are now done in the trailing closures
- some tests were split to so they cover only 1 case (not 2 cases in one test)
- TCA debug trace back again
- all dependencies are now consolidated
- cleanup of dependencies
- getting rid of all .live instances in the tests
- all dependencies use mocked or noOp instances
- added words counter X/24
- added input for the birthday
- all kinds of validity check implemented
- unit tests for the whole import wallet business logic implemented
[301] Import Wallet does not have a Birthday input field (328)
- support for the birthday to be optional input
[301] Import Wallet does not have a Birthday input field (328)
- Int -> BlockHeight refactor