- 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
design-system
- POC done
- All Colors added/implemented
- first set of variables implemented
design-system
- Color names made unique
- CurrencyConversion screen refactored to use new design system colors
- Currency conversion colors removed from the catalogue
design-system
- Variables made for the Utilities (all of them are missing aliases in Figma so it's just prepared except a few I updated myself)
- ServerSwitch refactored to use design system
- error and primary tint updated to use design system
design-system
- Utility variables finished
- Server switch refactored to the latest design system variables
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
shared-state
- POC
shared-state
- Exchange rate is now handled by TCA's shared state
shared-state
- Hide balances feature has been refactored using TCA's shared state
- It's no longer treated as "hide balances" but rather "hide sensitive data" because we will add a few more things to it besides balances in the near future
- Previous approach with Combine's subject and TCA's dependency have been removed from Zashi
[#1284] Flexa integration
- WIP
[#1284] Flexa integration
- Some progress, I'm able to create an account and pass the verification
- WIP: Dealing with no assets issue
[#1284] Flexa integration
- AccountId used for the start of Flexa
[#1284] Flexa integration
- onTransactionrequest connected to the TCA
[#1284] Flexa integration
- Version bumped to 1.0.1
[#1284] Flexa integration
- Rebased and updated for the latest design
[#1284] Flexa integration
- Settings remade to have a new navigational path for all Integrations, Flexa is among them
[#1284] Flexa integration
- SettingsRow supports a description if needed
[#1284] Flexa integration
- WalletStatus updated to be handled by TCA's Shared state so it can be used to determine when Flexa is available and when it's not
[#1284] Flexa integration
- Handling of restoring status in the integrations
[#1284] Flexa integration
- Payment flow finalized, testing the functionality, cleanup needed
[#1284] Flexa integration
- code cleanup after rebase
[#1284] Flexa integration
- Code cleanup
[#1284] Flexa integration
- Flexa key handled by PartnerKeys
[#1284] Flexa integration
- Accountid generated only once until Zashi is deleted
[#1284] Flexa integration
- Package.resolved
[#1284] Flexa integration
- Version bumped up to 1.0.2
- Total balance ditched and replaced with available balance
- Start of the Flexa uses the latest known balance
- 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
design-system
- POC done
- All Colors added/implemented
- first set of variables implemented
design-system
- Color names made unique
- CurrencyConversion screen refactored to use new design system colors
- Currency conversion colors removed from the catalogue
design-system
- Variables made for the Utilities (all of them are missing aliases in Figma so it's just prepared except a few I updated myself)
- ServerSwitch refactored to use design system
- error and primary tint updated to use design system
design-system
- Utility variables finished
- Server switch refactored to the latest design system variables
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
shared-state
- POC
shared-state
- Exchange rate is now handled by TCA's shared state
shared-state
- Hide balances feature has been refactored using TCA's shared state
- It's no longer treated as "hide balances" but rather "hide sensitive data" because we will add a few more things to it besides balances in the near future
- Previous approach with Combine's subject and TCA's dependency have been removed from Zashi
shared-state
- removed unused file
shared-state
- code cleanup
shared-state
- code cleanup
shared-state
- build fixed
- 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
- draft
[#1288] Detect unavailable service and show a dialog
- cleanup
[#1288] Detect unavailable service and show a dialog
- changelog updated
[#1288] Detect unavailable service and show a dialog
- localizations added to the strings file
[#1288] Detect unavailable service and show a dialog
- Restoring badge has been completely redesigned to be a universal wallet status panel
- 3 possible states at the moment: none, restoring and disconnected
- Disconnected state is now tight to the wallet status disconnected, rendered over restoring if needed
[#1288] Detect unavailable service and show a dialog
- changelog updated
[#1288] Detect unavailable service and show a dialog
- code cleanup
- package resolved updated
[#1288] Detect unavailable service and show a dialog (#1289)
- show the dialog only with the transition from any state to disconnected one
[#1288] Detect unavailable service and show a dialog (#1289)
- cleanup
[#1288] Detect unavailable service and show a dialog (#1289)
- latest copy
[#1288] Detect unavailable service and show a dialog (#1289)
- Fixed the case when Zashi's server is down while attempting to recover wallet from a seed
- The total and available balances have been extracted into separate and fully autonomous component used in 3 independent places (Account, Send and Balances)
- Code massively cleaned up
- Available balance underline logic + redirect to Balances
[#1087] Total and available balances component
- Unit tests fixes
[#1087] Total and available balances component
- tests fixed
[#1087] Total and available balances component
- small fixes and tweaks
- The UI has been updated to the latest design
- The values of disc space are provided
- The business logic has changed to react to check every app start or app foreground
- Test has been fixed
[#1029] Not enough free space UI
- Final copy
[#1029] Not enough free space UI (#1170)
- 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.
- adopted new SDK with the AccountBalance values
- unit tests refactored
- use of SynchronizerState refactored
- failed transactions sort changed to put failed around the timestamp it failed (expiredHeight used)
[#932] Pending balances
- SDK version bump
[#932] Pending balances
- changelog updated
[#932] Pending balances
- addressed comments for the sort
[#932] Pending balances (#1018)
- unit tests fixed
- sort updated
The broadcasting technology done, the views can subscribe to the restoring wallet state dependency
The restoring wallet badge implemented + handling of different backgrounds underneath it
Progress of the sync implemented on the Account screen
SyncProgress feature implemented, this new component is used 2 times already in Zashi so it's been separated into its own module (used in balances screen and at home screen when restoring the wallet)
Unit tests fixed + implemented new ones for the restore wallet flag
- 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
- Concept of WalletEvents removed and replaced with TransactionState and TransactionList
- UI updated to enable list of transactions and expansion with the details
- Color naming cleanups and refactors
- Conditional font modifier implemented
- Conditional strikethrough modifier implemented
- Title + tests of the title for the transaction implemented
- Color + tests for the title of the transaction implemented
- All texts localized
- tests fot the TCA TransactionList implemented
- concept of tabs implemented, it's the main navigation hub
- home reducer simplified because it no longer plays a role of a navigation hub
- navigation bar titles implemented
- hamburger menu for the settings screen
- balances screen tweaked
- wallet events on home screen instead of a separate screen
- tests fixed
- feature flags removed from the debug menu, no longer used
- semitransparent nav bar implemented
- Profile screen removed completely, no longer in the designs
- AddressScreen is now directly connected to the receive ZEC button
- redesigned according to new Zashi UI
- localized texts
- the send button is enabled only when some funds are available
- the verified balance used for sufficiency of funds instead of total
- changed the pending transaction logic and split into sending/receiving instead
- code cleanup of unused CancelId
- UI cleanup, detail of receiving transaction rendered "to" prefix with no address
[#720] User can proceed to send flow without funds (#723)
- totalBalance -> totalSpendableBalance
- improved code syntax for the conditions in TransactionState deciding the status
- TransactionState simplified and adopted to the latest ZcashTransaction
- WalletEvent simplified
- sendTransaction updated to the async/await
- unit tests fixed
- synchronizer's protocol cleaned up
- latest SDK adopted
- memos back toincleared transactions
- recipient back in cleared transactions
- unit tets fixed
- pending transaction memos are back
- recieved recipients no longer available, removed from the UI
- async adaptations of the latest sdk
- review request TCA dependency added
- set of rules for the triggering the app rating dialog
- unit tests fixed
- unit tests for the review request client
- app review request logic disconnected from the production for now (added the TODO for the triggering)
- 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
- 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
- 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
- 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
- all dependencies are now consolidated
- cleanup of dependencies
- getting rid of all .live instances in the tests
- all dependencies use mocked or noOp instances
Closes#427
- This is scaffold work for #427. Logic is done and some basic UI.
- Logic that works with free disk space is in `DiskSpaceChecker`. Use
`WrappedDiskSpaceChecker` to get live or mocked instances of `DiskSpaceChecker`.
- You can either use `mockEmptyDisk` which mocks situation when there
is enough space on disk.
- Or you can use `mockFullDisk` to mock situation when there isn't enough space on disk.
- full screen cover for the balance breakdown
- clearing out the background so we can do semi transparency
- bindings for the full screen cover
[224] [Scaffold] Balance Breakdown
- draft of UI
[224] [Scaffold] Balance Breakdown
- latest block business logic
- mocked auto shielding threshold
- unit tests
- snapshot tests
[224] [Scaffold] Balance Breakdown (412)
- comments resolved
- bigger refactor of the synchronizer, taking advantage of SynchronizerState being reported every time .synced pass
- unit tests fixed and refactored
[224] [Scaffold] Balance Breakdown (412)
- ClearBackgroundView documented, reference to the proposed solution added
- initial frame connected to available data (progress)
- zboto balance
- $ balance
- inner / outer progress logic
- isDownloading and isUpToDate controls added
- outer circle parametrical solution implemented
- unit tests fixed
- SyncStatusSnapshot implemented
- snapshot tests
[102] [Functional] Full Wallet History
- latest design updates
- solved issue with the List and accessory views
[102] [Functional] Full Wallet History
- fixes for the 'all' button
- reduced actions for the detail binding
[102] [Functional] Full Wallet History
- padding fixes (all events are visible)
- home screen drawer's height set to show 3 events on screen
[102] [Functional] Full Wallet History
- final UI for all states of transaction for rows
- Lottie package added
- Lottie animation for the pending transaction added
[102] [Functional] Full Wallet History
- snapshot tests cleaned up and refactored
- snapshotting all 4 types of transaction wallet events rows (sent, pending, received, failed)
[102] [Functional] Full Wallet History (393)
- Rubik fonts
[102] [Functional] Full Wallet History (393)
- leading padding fixed
- UITableView appearance moved to onAppear()
[153] [Scaffold] Progress Status Circular Bar (#389)
- rebased
- the view holding all requested (mocked) data is prepared
- copy to pasteboard implemented
- deeplink 'reply-to' memo implemented
- view online implemented and button visible only when the URL is valid
- asset colors for the texts
- unit tests
- snapshot tests
- concept of activities instead of transactions
- the drawer is now fully universal and data driven, rendering some View, going to some detail View
- unit tests work again
- refactor of Activity -> WalletEvent
- WalletEvent view builders simplified
- transactions & wallet events timestamps instead of Date type
- review comments resolved
- missing 'Transactions' terms updated to 'WalletEvents'