Commit Graph

30 Commits

Author SHA1 Message Date
Michal Fousek ff58ae718c
[#639] Show valid balance after app start (#640)
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.
2023-03-08 15:14:01 +01:00
Michal Fousek c6b222ff46
[#617] Use L10n for all the texts in the app (#627)
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.
2023-03-07 18:18:17 -03:00
Michal Fousek 6c77e0901b
[#595] Visbility of fiat conversion on homeage depends on feature flag (#625)
Closes #595
2023-03-07 18:03:37 +01:00
Michal Fousek b7baaf16aa
Fix how sync progress is displayed (#624) 2023-03-07 14:00:55 +01:00
Lukas Korba 8e46737321
[#566] Change colors app-wide (#603) 2023-03-06 15:14:18 +01:00
Lukas Korba b61fa213b6
[#556] Hide post-seed backup flow and rework screenshot tests (#591)
- 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
2023-03-01 15:33:58 -03:00
Michal Fousek 148ca941f1
[#554] Add ability to update feature flags from debug screen (#583) 2023-02-27 17:26:24 +01:00
Michal Fousek 56e1364659
[#554] Use WalletConfigProvider and WalletConfig in the TCA (#582)
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>
2023-02-27 13:55:47 +01:00
Michal Fousek a1104163f3
[#554] Add WalletConfigProvider (#574)
- Added `WalletConfigProvider` object which handles loading and caching of
  feature flags.
- Added `WalletConfig` which represents one configuration
  of all feature flags.
2023-02-24 17:33:46 +01:00
Lukas Korba f946de15bb
[#444] Ensure that sensitive information can't be logged intentionally or by accident (#536)
- 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
2023-02-13 20:32:50 +01:00
Lukas Korba fdd6ff19c0
[#516] Adopt unreleased changes that will go live with SDK 0.18.0-beta release (#532)
- all issues refactored
- previous transactions replaced by new data type from the SDK
- unit tests fixed
2023-02-06 09:38:34 +01:00
Lukas Korba 61567834a4
[#521] Update format for the Swiftlint TODO rule (#522)
- TODO rule updated in the yml file
- all TODOs updated to the new format
- some missing TODOs updated as well
- code cleanup
2023-01-20 14:55:08 +01:00
Michal Fousek a591ee93ce
[#442] Adopt SDK 0.17.0 (#496)
Fix _URLRouting error on project

Fix: Wallet account identifiers must be sequential on initialization

Adopt async API of SDK

Fixes after rebase

Fix tests
2022-11-22 11:32:48 +01:00
Lukas Korba c8b97a8266
[#490] Consolidation of TCA dependencies - 2nd batch (#491)
- all dependencies are now consolidated
- cleanup of dependencies
- getting rid of all .live instances in the tests
- all dependencies use mocked or noOp instances
2022-11-17 12:25:55 +01:00
Lukas Korba d6cb429372
[#449] Migrate Scan to ReducerProtocol (#456)
- Scan migrated to ReducerProtocol
- unit tests fixed
- Reducer postfix added to the reducers
2022-11-05 07:11:25 +01:00
Lukas Korba d44eb5ef1b
[#445] Migrate RecoveryPhraseValidationFlowStore to ReducerProtocol (#446)
- RecoveryPhraseValidationFlow migrated to the ReducerProtocol
- unit tests fixed
2022-11-02 13:43:42 -03:00
Michal Fousek 6bf65b1d4d
[#25] Add swiftlint rule to detect TODO without issue number (#425)
Closes #25

- Add `todos` swiftlint rule which detects `TODO:` or `FIXME:` without
  ticket number.
- Use `TODO [#<issue number>]:` to not trigger this rule.
- Updated TODOs and FIXMEs which had issue number in different format in
  the code.
2022-09-26 17:30:07 +02:00
Michal Fousek cc7b767a5a
[#379] Show alert before follow a Block explorer link (#423)
Closes #379

- `TransactionDetailView` is updated and instead of `ViewStore` it now has `Store`. `Store` is required to show alert. It's not possible with `ViewStore`.
- There are three more actions added to `WalletEventsFlowAction`. These are used to handle the new alert.
- Block explorer URL is changed to https://zcashblockexplorer.com. New URL scheme is derived from how URLs looks now when some transaction is opened.
2022-09-22 21:20:46 +02:00
Francisco Gindre 63554b7408
[#394] adopt ZcashLightClientKit 0.16.x-beta (#397)
Closes #394

This removes Zatoshi and Balance from the wallet codebase and relies on
the types present on the SDK.

point to master
2022-07-19 15:56:46 -03:00
Lukas Korba 5b158b9e72
[#102] [Functional] Full Wallet History
- 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
2022-07-08 15:27:18 -03:00
Lukas Korba 282fdbcdf0
[153] [Scaffold] Progress Status Circular Bar (#389)
- 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
2022-07-08 16:49:31 +02:00
Lukas Korba 3d615a32d8
[#362] [scaffold] Pending Transaction Details (#381)
- transaction detail has been cut into pieces that can be composed to various versions of the detail
- handling all 4 cases (sent, received, pending, failed)

[362] [scaffold] Pending Transaction Details

- confirmations counting
- pending transaction status fixed

[362] [scaffold] Pending Transaction Details

- tests fixed

[362] [scaffold] Pending Transaction Details

- failed transactions

[362] [scaffold] Pending Transaction Details (381)

- snapshot tests

[362] [scaffold] Pending Transaction Details (381)

- comments resolved
2022-06-30 08:59:03 -03:00
Lukas Korba df2c721d32
[96] [Scaffold] Received Transaction Details (#378)
- 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
2022-06-28 09:38:08 +02:00
Lukas Korba e321114214
[98] [Scaffold] Full Wallet History (#376)
- 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'
2022-06-23 11:05:34 +02:00
Lukas Korba cb32ca42a9
[327] Navigation/Routing for the deeplinks (#371)
- The app responds to openURL scheme starting with zcash://
- The currently implemented routes:
home
send :no parameters provided
send: amount
send: amount, address
send: amount, address and memo
- making the DeeplinkManager fully independent from the AppAction
- the app processes the deeplink only when fully capable of (initialized and synced) for now
- unit tests
- support for the zcash:{address} format
2022-06-20 10:11:21 +02:00
Lukas Korba b2ae82ce1b
[#329] Update wallet to use Zatoshi type (#333)
- Int64+Zcash.swift and Double+Zcash.swift removed
- Balances and amounts updated to use Zatoshi
- Remove TODOs
- Tests updated
- FIXED: Send amount being in Zatoshi is clamping $ value to 21M max -> send amount input is no longer Zatoshi typed

[329] Update wallet to use Zatoshi type (333)

- alphabetical order(s)

[329] Update wallet to use Zatoshi type (333)

- static .zero for the Zatoshi
- conformance to Equatable moved to extension

[329] Update wallet to use Zatoshi type (333)

- small improvement by reducing code duplicity
2022-05-31 14:14:56 -03:00
Lukas Korba af054b098c
[#180] Project Structure and Source code consistency (#317)
phrase 1:
- project restructured
- swifgen rewired
- files renamed

[180] Code inconsistency

phase 2:
- stores and views refactored

phase 3:
- models, dependencies, utils and UI components

[180] Code inconsistency

- tests fixed
2022-05-13 13:29:57 -03:00
Dimitris Apostolou b2eb4b228e
Fix typos 2022-02-18 23:39:04 +02:00
Adam Stener 789333f234 Enable SwiftLint 2021-09-16 05:34:54 -05:00
Francisco Gindre 49a01c1014 testnet build config + navigation scaffold 2021-08-24 11:45:03 -03:00