- 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
- 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
- Changelog updated
- Screen with the syncing tips has been implemented
- The sync starts immediately after we know seed + BD (optional) and the view is just presented to inform users
- Deduplication of memos implemented
- On-demand load of memos implemented
- Starting pipeline optimized to use HI screen for a short of time and initiate load of transactions during it
[#1286] Speed up transations list load
- SDK version bumped up to 2.1.8
[#1286] Speed up transations list load
- cleanup
- The reset form of send calls the right actions for the input fields to reset their local values as well
- When the biometric authentication fails the sending progress of buttons is reseted
- WIP
[#1233] changelog screen to inform users about changes implemented in an update
- About screen is now an independent feature with standalone reducer
- What's new feature implemented
- JSON structure defined for the what's new
- What's new provider implemented to read the json file
- Custom styling via attributed strings implemented
[#1233] changelog screen to inform users about changes implemented in an update
- Localization support implemented
[#1233] changelog screen to inform users about changes implemented in an update
- About view final design
- What's new final design
- JSON extended to cover all production version releases
[#1233] changelog screen to inform users about changes implemented in an update
- Code cleanup
- Changelog updated
- SyncProgress reducer has been refactored to the latest TCA
- Progress label is tappable when an error occurs and shows an alert view with the details
- Biometric lock if available is used to protect seed, delete zashi and export private data
- Also protecting Send at the very last step, when tapping the send button
[#1234] improve security and authentication requirements (#1268)
- Changelog updated
- WIP
biometric--send
- WIP
biometric--send
- The logic for navigation has been redesigned so confirmation screen is taken out of the tab-view navigation. That allowed to use iOS 15 and biometric lock and avoid SwiftUI navigation bug
biometric--send
- cleanup
biometric--send
- review comment resolved
- addressed comments and feedback, the send balances are hidden but not amounts
- the hide balances button is accessible on send screen
- shielding is disabled when balances are hidden
- The balances are proactively refreshed immediately after send or shield proposals are processed
- I also noticed wrong color of disabled message box when sending to transparent address so it's been fixed in this PR as well
[#1254] Refresh balances immediately after send
- unit tests fixed
- New dependency broadcasting value of hide balances flag implemented
- Every Zatoshi representation decides whether is rendered as number value or hidden, respects the font size and colour
- Flag value is persisted for next app start
hide-balances
- localization added
hide-balances
- changes according to the final design
[#1232] Be able to hide my balances
- finalized
[#1232] Be able to hide my balances
- changelog updated
[#1232] Be able to hide my balances
- regenerated strings
- The selection of the address has been added to the reducer
- UI renders only selected address in a scroll view
- AddressDetails Reducer has been refactored to the latest TCA
receive-tab-tweaks
- design finalized
receive-tab-tweaks
- colors finalized for dark mode
[#1230] improve Receive screen UI by adding a toggle for addresses
- receive tab finalized
[#1230] improve Receive screen UI by adding a toggle for addresses
- removed the forced dark mode
[#1230] improve Receive screen UI by adding a toggle for addresses
- changelog updated
- The ZashiImagePicker implemented that opens a library and reads an image from it
- QR code image detector implemented
read-qr-code-from-image
- QRImageDetector dependency implemented
read-qr-code-from-image
- Multiple codes detection + handling. For it's an error because more codes could result in wrong pick from user's point of view.
read-qr-code-from-image
- final design
- New dependency broadcasting value of hide balances flag implemented
- Every Zatoshi representation decides whether is rendered as number value or hidden, respects the font size and colour
- Flag value is persisted for next app start
hide-balances
- localization added
hide-balances
- changes according to the final design
- WIP
dark-mode
- inverted QR code colours support
dark-mode
- Custom background color for TextEditor
dark-mode
- Buttons resolved
dark-mode
- Buttons consolidated with the Figma design
- Scan view fix for the back button
- Placeholders for the inputs custom color solution implemented
dark-mode
- Dark mode enabled, controlled by the system settings
dark-mode
- last few fixes, feature is ready
dark-mode
- finished buttons and all answered questions
dark-mode
- fixed issue with QR code being black in dark mode
- caching generated QR code
dark-mode
- fix for the message box shape
dark-mode
- changelog updated
[#1054] Enable dark mode
- dark mode finalized
[#1054] Enable dark mode
- commented code cleaned up
- The version1 has been completely refactored and redesigned
- The custom server and term now supports localisation
- The list of servers is now network dependent, different for testnet vs. mainnet
- The selected server is now represented as Hashable and Codable struct ServerConfig that holds the host, port and isCustom flag
- Migration of version1 implemented that ensures to persist previous choice of a user and fills it in a custom field
- The UI dynamically ensured the host & port are at one line, not split to multiline label
- The persistency of a choice is now handled by UserPreferencesStorage, a dependency designed for user settings
- Tests fixed
[#1223] Fallback missing server to custom field (#1226)
- Servers are newly represented as enums allowing customization of naming and localization
- Automatically scroll to the selected server so even the one at the bottom of the list that is not visible will be scrolled to the visual area.
[#1221] Scroll to selected server (#1222)
- named constant
- The detection of pressed button needed to be extended to cover the case with SecurityWarning screen. I got it button is pressed in one of two possible scenarios and only one was handled.
- The cover view is now an overlay instead of a switch to a different view
- The animation of the overlay needed to be removed so it's processed until the app is suspended
- The cover is now processed for background notification only, inactive has been removed to never show during system overlays like face ID, etc.
- The reducer has been refactored
- The Bindings have been refactored to not use deprecated API
- View has been refactored to not rely on ViewStore
- Dependency version have been bumped up in order to use latest TCA
- One of the keys (for user defaults) has been wrongly named - fixed.
[#1186] Resolve AppStore warnings
- Fixed AppStore profile build-ability, the dependency in modules was missing
- The no transaction Text as well as ForEach are connected to the same property and view should re-render accordingly. On a theoretical level it might be possible the view re-rendered only a portion of itself. Adding else should hopefully cover even the theoretical/swiftui potential bug.
- 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 according to the latest design
[#1174] Final not enough free space UI (#1175)
- tweaks
[#1174] Final not enough free space UI (#1175)
- removed mocked state of disk
- The Zashi hides its content when it's going to the background and reveals it when it's going to the foreground
[#1171] Hide content in the app switcher (#1172)
- changelog update
- 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
- validation flow done for the 2 out of 3 flows
- 1. when the restore path is selected and the seed doesn't match the DB
- 2. when create new wallet is selected
- (missing) 3. seed is validated (waiting on API)
[#1024] KeysMissing when restored to a new iPhone
- preparations for SDK 2.1.0
[#1024] KeysMissing when restored to a new iPhone
- Seed validation API used and integrated
- There's an error in rust that must be resolved first
[#1024] KeysMissing when restored to a new iPhone
- rebased
[#1024] KeysMissing when restored to a new iPhone
- updated to use latest SDK's isSeedRelevantToAnyDerivedAccount
[#1024] KeysMissing when restored to a new iPhone
- unstable SDK branch test
[#1024] KeysMissing when restored to a new iPhone
- version bump
[#1024] KeysMissing when restored to a new iPhone
- bugfix
- packae redirected to ECCs repo
[#1024] KeysMissing when restored to a new iPhone
- tests fixed
- TCA sdkSYnchronizer dependency extended with 3 new Proposal APIs
- proposeTransfer tested, works as expected
[#1092] Adopt proposal API
- send transaction via new proposal API implemented
[#1092] Adopt proposal API
- code cleaned up and finished
[#1092] Adopt proposal API
- unit tests fixed
[#1092] Adopt proposal API
- Typical Fee < 0.001 localized and updated in the UI
[#1092] Adopt proposal API
- awaiting all transaction results with use of new proposal.transactionCount() method
[#1092] Adopt proposal API
- Implemented new PartialProposalError reducer and view
- Contact support mail with transaction IDs logic implemented
- Fallback to share logic implemented
- PPE integrated into SendFlow
- PPE integrated into Shielding
[#1092] Adopt proposal API
- Changelog updated
[#1092] Adopt proposal API
- SDK's fee constant removed
[#1092] Adopt proposal API (#1117)
- debug code reverted
[#1092] Adopt proposal API (#1117)
- copy change
[#1092] Adopt proposal API (#1117)
- code cleanup
[#1092] Adopt proposal API (#1117)
- proposed total fee
[#1092] Adopt proposal API (#1117)
- Final copy
[#1092] Adopt proposal API (#1117)
- Transaction statuses added
[#1092] Adopt proposal API (#1117)
- tests fixed
- The no transactions list has been disabled to not scroll
- The sync bar % was canceled on Balanced before it could gather data, the problem is about cancelation IDs not being unique, I updated all effect handles to be UUIDs
- Balances tab was rendering spendable balance instead of total balance
- I moved the configuration of Firebase to the didFinishLaunching, this way the FB is configured only once at the start of the app, not causing crashes or issues of type 'FB is already configured'
- tests fixed
- New target for Testflight & AppStore builds has been created
- Automatic dSYM upload run script added to the configuration of the target
- DebugMenu is no longer accessible in production builds, only Testflight builds
- The issue has been solved with setting the fixedSize() modifier. That one ensures the word is never truncated. I tested the seed words on iPhone SE and it fits the screen even when I repeat the words three times, e.g. "humanhumanhuman". It works well.
- Pull to refresh feature has never been required or designed by Product or Leadership, it was a temporary thing that helped during the development but has been completely replaced with reactive approach over the time.
- copy with expiry time set draft
[#1097] Zashi-iOS audit Issue E
- copy to pasteboard has been removed from recovery phrase seed completely
- copy seed to pasteboard added to the debug menu, please note, the debug menu will not be in production build, issue #1113
- draft
[#1086] Resolve interaction with the keychain for both fore and background app states
- revert
[#1086] Resolve interaction with the keychain for both fore and background app states
- initialization pipeline updated to handle state when BGTask runs with fresh app start, in such case Zashi wait and doesn't try to initialize SDK -> no keychain error is triggered
[#1086] Resolve interaction with the keychain for both fore and background app states
- code cleaned up
- finished the state handling
- closing the BGTask asap for state that is supposed to just wait
[#1086] Resolve interaction with the keychain for both fore and background app states
- unit tests fixed
[#1086] Resolve interaction with the keychain for both fore and background app states (#1091)
- Comments addressed
[#1086] Resolve interaction with the keychain for both fore and background app states (#1091)
- Unit tests fixed
- Block time of didFinishLaunching increased to 0.5s (from 0.02)
- The available balance 0 scenario is now handled on a product/design level and the 0 is replaced with a progress view.
- There is some redundancy in the code that is going to be resolved in #1087 because it will require to implement a brand new reducer and stream subscriber, out of the scope of this issue.
[#1055] Handle unavailable AccountBalance
- Changelog updated.
[#1055] Handle unavailable AccountBalance (#1088)
- rebased
- All bullet points from the parent ticket have been resolved
- The keyboard is not decimal one so users don't need to switch to numbers + it reduces cases when users fill in some alphabetical letters + it improved the UX with floating point comma vs. point
- Error handling fixed
- Max amount fix and rely on spendable balance
- Unit tests fixed
- MessageEditor updated to present disabled state in a different way
- Text in the memo is not persisted when the transparent address is used and MessageBox disabled
- New unit tests implemented and many more updated
[#1060] Memo field behaviours for transparent address (#1075)
- comments addressed
[#1060] Memo field behaviours for transparent address (#1075)
- debug code removed
[#1060] Memo field behaviours for transparent address (#1075)
- code revert
- new layout for the scan screen
[#988] Scan UI
- new layout and design for scan
- camera not authorized case + UI
- scan store refactored to the latest TCA
- unit test fixed
[#988] Scan UI (#1069)
- changelog update
- ZashiBackModifier updated with a new hidden param. This way it can be controlled by views for dynamic scenarios.
- Reducer updated to latest TCA.
- Unit tests refactored and fixed.
[#1037] Consolidate back button on the phrase display screen
- updated test
- There are 3 different and independent loggers that have been disabled for production (release configuration builds)
- The TCA logger doesn't call os_log()
- The SDK is instantiated with .noLogging policy
- The Wallet logger is never set so it's nil
- With no logs the export logs button in Export Private Data screen no longer makes sense so I removed it from the UI
[#1067] Disable logging for production (#1072)
- project reverted back
- Alert view message updated
- Copy support email button added to the alert view
- Unit test for the new functionality added
[#1070] No email account in iPhone error handling (#1074)
- empty row comment addressed
- Change of the setup of the keychain massively reduces the probability and frequency of cases when the keychain is required to provide data. Background task for the sync was the main producer of these attempts to read the data, the new flag allows BGTask to operate freely with no errors related to the keychain. Ultimate solution how to make it even better is covered in #1071, TODO added to the code.
- AccountBalance has been wrapped into RedactableAccountBalance
- SynchronizerState has been wrapped into RedactableSynchronizerState
- Code updated to use these new redactable structs instead of direct use of unredacted ones
- tests fixed
- 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.
- the fee is now checked and it's coming from the SDK
- unit test checking validity of the form when not enough Zatoshi for the fee has been implemented
- brand new concept of handling the SDK constants inside the TCA has been implemented, will greatly simplify cleanup of all reducers (see #1058)
- The Zatoshi decimals have been localized with respect to floating point style
- unit tests fixed + new set of comma tests implemented
[#975] Localize the balances (#1048)
- pre-rebase
[#975] Localize the balances (#1048)
- "<" localized
[#975] Localize the balances (#1048)
- rebased
- all buttons moved to appropriate positions and screens
- business logic rewired
- all new texts localized
- changelog updated
[#1032] Advanced settings
- unit tests fixed
[#1032] Advanced settings (#1047)
- separate reducer for advanced settings
- prototype of the solution implemented
[#1028] Runtime switch of lightwalletd servers
- error handling done
- localized all new texts
- custom server resolved with all possible parsing states
- persistency of selected server done
[#1028] Runtime switch of lightwalletd servers (#1044)
- changelog update
[#1028] Runtime switch of lightwalletd servers (#1044)
- Unfortunately the compiler has a bug so Circular reference error is not possible to solve, Apple fixed reported issue from October 2023 last week so we should expect fix in Xcode 15.3, beta is released but still no fix. Until that moment I moved placeholders to the view and will move it back to the stores once the issue is resolved
- prototype of the solution implemented
[#1028] Runtime switch of lightwalletd servers
- error handling done
- localized all new texts
- custom server resolved with all possible parsing states
- persistency of selected server done
[#1028] Runtime switch of lightwalletd servers (#1044)
- changelog update
[#1028] Runtime switch of lightwalletd servers (#1044)
- Unfortunately the compiler has a bug so Circular reference error is not possible to solve, Apple fixed reported issue from October 2023 last week so we should expect fix in Xcode 15.3, beta is released but still no fix. Until that moment I moved placeholders to the view and will move it back to the stores once the issue is resolved
[#1028] Runtime switch of lightwalletd servers (#1044)
- adoption of SDK 2.0.10
- prototype of the solution implemented
[#1028] Runtime switch of lightwalletd servers
- error handling done
- localized all new texts
- custom server resolved with all possible parsing states
- persistency of selected server done
[#1028] Runtime switch of lightwalletd servers (#1044)
- changelog update
[#1028] Runtime switch of lightwalletd servers (#1044)
- Unfortunately the compiler has a bug so Circular reference error is not possible to solve, Apple fixed reported issue from October 2023 last week so we should expect fix in Xcode 15.3, beta is released but still no fix. Until that moment I moved placeholders to the view and will move it back to the stores once the issue is resolved
[#1028] Runtime switch of lightwalletd servers (#1044)
- adoption of SDK 2.0.10
[#1028] Runtime switch of lightwalletd servers (#1044)
- comments addressed
- Exit button from the screen moved one layer up to show even when no words are stored
[#1007] Missing seed screen lacks any back button
- changelog updated
- 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
- changelog update
- the keys missing error state has been tweaked to try 3 retry attempts because of unresponsiveness keychain API
- in case of true missing keys, the user is no longer locked on a splash screen but rather let land to the Account tab so the rest of the Zashi can be used
- unit tests fixed + implemented new ones for the 3-attempt retry logic
- The hint box implemented
- Snapshot tests extended to cover the hint box case
- Unit tests for show/hide of the hint box implemented
- Code cleanup of the previous design for the hint box
- typeface fix
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
- is acknowledge flag is reseted with every private data screen access
- the export buttons are disabled throughout the whole export + share phase
- the spinner is attached to the button that's exporting
- unit tests for all this new functionality added
- sdk 2.0.5 adopted
- changelog updated
- check for the confirmed phrase backup implemented, when not confirmed, the phrase is displayed and awaiting user's confirmation
- unit tests added + modified
export of logs from the sdk implemented
the logs have been split into 2 files - verbose and sync specific logs + metrics
changelog updated
SDK dependency adopted
unit tests fixed + added new ones
- screen background extended to render either solid background or with grid pattern
- all screens that are designed with pattern have been updated
- recovery phrase screen has been updated to be scrollable because it couldn't fit the smallest iPhone's screen
- changelog updated
- the sapling address and its QR code are present only for the testnet builds
- unit tests resolved and tweaked a bit - TCA actions have been merged into 1 copyToPasteboard
- snapshot tests for both mainnet and testnet version to prove sapling is missing on mainnet
- confirmation screen implemented
- navigation flow implemented instead of just 1 pushed view
- unit tests fixed + added new ones that handles new actions and states
- zashi button modifier extended to offer new options for new states
- changelog update
- snapshot tests
- the UX of the newly created transaction is improved by inserting the returned transaction immediately to the array of transactions, that way when the account page is accessed, the sending transaction is presented
- unit tests fixed + added new ones
- sending title for the button implemented alongside with the spinner
- changelog updated
- the new layout implemented
- some of the functionality is not done yet because it's not supported in the SDK or some design is still WIP - TODOs added at related places
- result of shielding (the transaction) is automatically added to the list of transactions so the UX is seamless
- localized texts refactored
- unit tests done
message (memo) text regular weight, black color
change the color or received message bubble background
no message included... title regular + black
transaction ID (expanded one) regular font + black
expanded address regular font + black
- BalanceFormatter dependency implemented
- ZatoshiRepresantationView implemented, all balances and zatoshi amounts supposed to be rendered should be done via this view
- zatoshi string representation struct implemented, holds all possible states
- unit tests + celanup
- 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
- fixed unread timestamp logic, old transactions are marked as read
- the BUG itself was in the unit test, that's why it got through the testing unnoticed
[#898] Feature timestamp is broken in unread logic (#899)
- reverted the names of the assets
- implemented CoreData dependency as this is the best choice for the persistency in the end
- update the list only if there's anything new
- fixes + code cleanup
- unit tests & fixes
- the utility that splits the balance into 2 parts: main + rest so it can be rendered separately with different font sizes
- unit tests implemented
- code refactored
- Available balance view helper implemented
- spaces unified for the Home & Send
- 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
- Balances tab name (from Details)
- Restore flow - birthday header + optional
- Swipe across tabs to change it
- Splash screen with bigger steps
- Restore flow seed screen, scrollable + nav bar fixes + scroll to see the seed field
- Restore seed box to have a placeholder
- Fix the suggestions for the restore seed editor
- Rectangle around recovery phrase editor is now a shape instead of a full background with padding 1
- message box (memo) reworked to properly handle text with system suggestions
- cleaned up the focused state
- cleaned up the screen background
- finalized the work on Zashi UI for Send
- unit tests fixed + added new ones that cover updated logic
- fixed next next return logic when transparent address is used and message (memo) box disabled
- scrollable content in the message (memo) box instead of dynamically expanding box
- The TransactionState always require a BlockHeight to be given, no more optional
- This ensures transactions are properly evaluated for the state (pending vs. non-pending)
- 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
- BalanceTitle view created for the bigger balance + zcash icon
- balance formatter with 3 floating points created and used everywhere in the views
- tests for this formatted added to check bank rounding
- error dialogs removed
- cleanup of the code
[#861] Remove lightwalletd related error dialogs
- sdk 2.0.2 adopted, version bumped
- error dialogs removed
- a few bugfixes:
- phrase display can handle longer words and still render it fully with no truncation
- tabs tap area increased
- receive screen with addresses now uses the wallet's UA
- 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
- redesigned according to new Zashi UI
- modified grouping or phrase words, halves instead of quarters
- snapshot tests updated
- code cleanup - recovery phrase screen loads the stored wallet instead of being injected into it
- Home screen updated to show total + spendable balances
- BalanceBreakdown screen updated to show status of the synchronizer
- Zashi BACK button applied to all screens
- tests fixed
- custom toggle
- security screen UI and logic finished
- splash screen extended to report completion, this way I can assure it never shows again
- dynamic Zashi version + build implemented into the warning message
- Splash screen accessible from a view modifier
- landing through it to the Home and Restore wallet screens
- final effect after round of feedback from Richard
- all features of the button done
- cleanup of everything that is not part of the design anymore, needed for the colors for the buttons
- zcashStyle used for the buttons
- CrashReporter is now an independent module
- all crash reporter TODOs removed
- the crash reporter code commented out is now back in action
- package.resolved file updated
- adopted latest SDK
- test crash reporter added back to debug menu
- typo in comments fixed
- Inter fonts added and registered for use
- all Texts in the Zashi use Inter as a default font
- some texts have custom sizes
- cleanup of fonts in the project
- fixed alerts in debug menu
- fixed confirmation dialog in for rescan action
- fixed dark mode colors
- updated texts
- simplified texteditor UI so it's more consistent with the other components
- reduced debug menu items
- tests fixed
- The SDK updated to the latest main (commit hash)
- Fixes for a few texts
- UX improvement: Upgrading databases... label for cases when it takes a few seconds, most of the times it is so quick that the label is even not visible to the user. It simple dismisses before user lands on a home page from the welcome screen
- fixed tests after adding the flag for migration
- actions from alerts are now properly propagated
- dismissal of an alert is not clearing out the state
- qrcode icon is now a system one
- swiftgen paths updated
Following features have been modularized:
- BalanceBreakdown
- WalletEventsFlow
- Scan
- ExportLogs
- Settings
- AlertState generic type cleanup
- crashReported TODO added