Commit Graph

411 Commits

Author SHA1 Message Date
Michal Fousek 4c8bbcede2
[#417] Target secant-testnet now uses testnet instead of mainnet (#418) 2022-09-21 17:01:25 +02:00
Francisco Gindre 4a0153851f
[#395] Build 0.0.1-35 (#414)
Closes #395
2022-08-17 20:14:01 -03:00
Lukas Korba 2ec00beeef
[#409] Rewrite LocalAuthenticationHandler so it supports new concurrency (#410)
- refactored to async/await TCA
- reduced a few dependencies
- removed schedulers
- simplified the code
- cleaned up the tests

[409] Rewrite LocalAuthenticationHandler so it supports new concurrency (410)

- Sendable protocol

[409] Rewrite LocalAuthenticationHandler so it supports new concurrency (410)

- fixed typo
2022-08-17 10:23:31 -03:00
Lukas Korba 368f95e7a7
[#224] [Scaffold] Balance Breakdown (#412)
- 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
2022-08-17 10:22:35 -03:00
Lukas Korba 558675aced
[408] Reduce dependency on TCA in the dependencies (#413)
Following dependencies refactored to await/async
- RecoveryPhraseValidationFlowReducer
- RecoveryPhraseDisplayStore
- AppStore
- UserPreferencesStorage
- WrappedUserDefaults
which allowed to reduce imports of Combine/TCA
2022-08-17 09:12:15 +02:00
Lukas Korba 4c36aa39a2
[#404] Update to ComposableArchitecture 0.39.0 (#406)
- library updated
- all `Failed to produce diagnostics for expression` fixed
2022-08-09 09:51:40 -07:00
Lukas Korba 4f029e0ba4
[146] [UI Component] multiple line textfield (#400)
- MultiLineTextField Store & View implemented
- memo char limit is set from the zcash sdk environment
- fixed tests
- unit tests for the multiline textfield
- send flow form validity unit tests extended to cover memo char limit
2022-08-02 08:07:03 +02:00
Francisco Gindre 0494af83eb [#399] Secant Design Review build 0.0.1-34
*0.0.1 build 34*
- [#75] [Scaffold] Settings Screen (#398)
- [#394] adopt ZcashLightClientKit 0.16.x-beta (#397)
2022-07-21 15:07:19 -03:00
Lukas Korba f064fa868d
[#75] [Scaffold] Settings Screen (#398)
- rescan blockchain feature
- backup phrase feature
- system (biometrics) authentication dependency implemented
- unit tests
- snapshot tests

[75] [Scaffold] Settings Screen

- rescan cleanup

[75] [Scaffold] Settings Screen

- quick and full rescan reset to home screen unit tests

[75] [Scaffold] Settings Screen (398)

- biometrics (touch ID, face ID) preferred, passcode is fallback, when no protection is set, we let users go to the sensitive content
2022-07-21 14:30:02 -03: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
Francisco Gindre 78dd14e711
[#382] Release build 0.0.1-33 (#396)
update xcode project build
2022-07-14 14:24:55 -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
Francisco Gindre 180a5a9bc2
- [#387] Build 0.0.1-32 for design review (#388)
Closes #387
2022-07-06 14:38:50 -03:00
Lukas Korba 59650d723d
[#73] [Scaffold] Profile Screen (#386)
- qr code generator
- qr, address and initial buttons in place

[73] [Scaffold] Profile Screen

- address details view placeholder
- navigation to address details view
- custom back
- app build + version from environment

[73] [Scaffold] Profile Screen

- unit tests

[73] [Scaffold] Profile Screen

- snapshot of the profile view

[73] [Scaffold] Profile Screen (386)

- comments resolved
- AppVersionHandler implemented
- sdkVersion also in the UI
- updated profile view design according to MVP requirements

[73] [Scaffold] Profile Screen (386)

- AppVersionHandler added to the repo
2022-07-06 13:54:30 -03:00
Lukas Korba bf6e9bfbb0
[#384] Update to ComposableArchitecture 0.38.2 (#385)
- TCA updated
- tests fixed
2022-07-05 08:16:42 -03:00
Francisco Gindre d45f39efd0
[#373] Build Secant 0.0.1-31 (#383)
Update build number and CHANGELOG.md
2022-06-30 09:43:12 -03: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 675a067437
[375] Update ComposableArchitecure to 0.37.0 (#377)
- updated
- build works
- tests work
2022-06-23 09:46:30 +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
Francisco Gindre 2e1ec2b213
[#368] Bump Version for 0.0.1-29 and edit CHANGELOG (#369) 2022-06-15 18:37:14 -03:00
Lukas Korba b17475be46
[358] Xcode project broken (#360)
- fixed
2022-06-14 13:10:27 +02:00
Lukas Korba 31b1383c5e
[324] WrappedFeedbackGenerator refactor (#357)
- specific feedback calls for the feedback generator
2022-06-14 12:02:15 +02:00
Lukas Korba 270a21668a
[346] Take Synced home screen snapshot (#356)
- home snapshot with mocked data
- also in the full history view
2022-06-14 12:01:51 +02:00
Lukas Korba 05b2d716b1
[342] Take empty validation puzzle snapshot (#355)
- the backup is the whole flow so the implementation covers all screens:
- preamble
- validation with 4 steps to fill in the chips
- success/failure screens
2022-06-14 12:00:08 +02:00
Lukas Korba bd94d13095
[341] Take Phrase Display Snapshots (#354)
- phrase display with mocked data, .demo environment
2022-06-14 11:58:21 +02:00
Lukas Korba d32eeaccac
[345] Take wallet import snapshot (#353)
- snapshot of import wallet, demo environment
2022-06-14 11:56:08 +02:00
Lukas Korba edeb3f7fee
[340] Take Onboarding Snapshots (#352)
- the OnboardingFlow info steps snapshots

[340] Take Onboarding Snapshots (352)

- cleanup
2022-06-14 11:51:13 +02:00
Lukas Korba d7c651b522
[337] Set up Snapshot Testing (#350)
- snapshot package added
- welcome snapshot taken

[337] Set up Snapshot Testing

- iPhone 8 Plus welcome screen references

[337] Set up Snapshot Testing

- snapshot references removed
- snapshots only recorded, no comparison

[337] Set up Snapshot Testing

- isRecording removed

[337] Set up Snapshot Testing

- iPhone 8 Plus, iOS 15.4 screenshots

[337] Set up Snapshot Testing

- lowering the precision to 0.999

[337] Set up Snapshot Testing

- attempts to get it pass the test

[337] Set up Snapshot Testing

- frame set up

[337] Set up Snapshot Testing

- resized image

[337] Set up Snapshot Testing

- many different snapshot tests

[337] Set up Snapshot Testing

- low precision test

[337] Set up Snapshot Testing

- updated pngs

[337] Set up Snapshot Testing

- another set of pngs

[337] Set up Snapshot Testing

- precision 0.99

[337] Set up Snapshot Testing

- XCTAttachments

[337] Set up Snapshot Testing

- typo fixed

[337] Set up Snapshot Testing

- reference images

[337] Set up Snapshot Testing

- no precision set

[337] Set up Snapshot Testing

- screenshot names added
- precision so low it passes all the time

[337] Set up Snapshot Testing (350)

- cleanup

[337] Set up Snapshot Testing (350)

- removed snapshot library completely

[337] Set up Snapshot Testing (350)

- code simplification and cleanup

[337] Set up Snapshot Testing (350)

- adding attachments refactored to simplify the code even more

[337] Set up Snapshot Testing (350)

- last simplification to wrap both light and dark under the hood

[337] Set up Snapshot Testing (350)

- addAttachments method to follow the same XCTestCase terminology

[337] Set up Snapshot Testing (350)

- attachments name fix
2022-06-10 10:46:35 -03:00
Francisco Gindre 901ca6c2ab
[#318] Build 0.0.1-27 + changelog (#349) 2022-06-06 13:39:48 -03:00
Lukas Korba 6026aebc9b
[222] Tests for the initialisation check and process (#334)
- recovery phrase randomizer & wrapper
- did finish launching -> initialized wallet test
- cleanup of static dependencies
- did finish launching -> keys missing integration test
- did finish launching -> uninitialized integration test
- database files were missing, mocked to behave like it's available
- key missing test fix, the database files were missing too => mocked to act like being present
2022-06-03 20:21:51 +02:00
Lukas Korba 9e2ac0c6aa
[312] WrappedNumberFormatter (#336)
- WrappedNumberFormatter implemented
- unit tests updated to inject en_US locale
- cleaned up all XCTSkipUnless
2022-06-03 14:28:48 +02:00
Lukas Korba 21806c737f
[323] Unit/Integration tests for Home (#335)
- integration test for the .onAppear action
- unit tests for the synchronizer status change
- unit tests for the drawer and tracsation history
2022-06-03 13:27:18 +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 bab1dc6f82
[272] Decimals and Zatoshi type (#330)
[272] Decimals and Zatoshi type (330)
- Zatoshi type implemented
- conversions implemented
- 'from' convert methods refactored to better readable syntax
- fixed issue with rounding Decimal (in Zatoshi -> Decimal conversion)
- rounded -> roundedZec
- comments resolved
- zcashNumberFormatter by default
2022-05-27 17:19:21 +02:00
Francisco Gindre 9bed9d5927
Build/0.0.1 25 (#332)
* [#331] Update Secant ZcashLightClientKit 0.14.0-beta

* [#299] Changelog and version bump for 0.0.1-25
2022-05-26 19:11:21 -03:00
Lukas Korba c40b9660e3
[301] Import Wallet does not have a Birthday input field (#328)
- 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
2022-05-26 14:47:55 +02:00
Lukas Korba 4cc7737b21
[106] [Scaffold] Scan QR Screen (#321)
- scan UI view
- UI representable
- scaffold of scan view
- rect of interest support
- simple URI parser and validator
- tests

[106] [Scaffold] Scan QR Screen

- scan status added
- scan status tests

[106] [Scaffold] Scan QR Screen

- custom back button added

[106] [Scaffold] Scan QR Screen

- fixed typo

[106] [Scaffold] Scan QR Screen (321)

- valid vs. invalid code part of the enum

[106] [Scaffold] Scan QR Screen (321)

- refactor

[106] [Scaffold] Scan QR Screen (321)

- cleanup

[106] [Scaffold] Scan QR Screen (321)

- review comments solved
- some improvements added
- firing the valid qr code after 1s

[106] [Scaffold] Scan QR Screen (321)

- tests fixed
- onAppear test added
- print() cleanup

[106] [Scaffold] Scan QR Screen (321)

- wrapped audio services
- vibrate when QR found
- alphabetical order of environmental parameters
- AVCaptureSession stopRunning explicit call, probably handled by AVCaptureSession itself but I didn't find proof
- QRCodeScanView simplified and cleaned up

[106] [Scaffold] Scan QR Screen (321)

- URIParser added to the project
2022-05-24 08:30:12 +02:00
Lukas Korba b753efbc5f
[285] Advanced Routing: setting a route may vary depending on the originating context (#325)
- context based routing in Home Screen
- mnemonic refactor
- backup phrase display from the profile screen
2022-05-24 07:30:16 +02:00
Lukas Korba 339965b9e9
[#319] Update TCA to 0.35.0 (#326)
- TCA updated to 0.35.0
- tests modified so no state change is reflected
2022-05-23 12:36:29 -03:00
Francisco Gindre b67d091a68
[#300] Use .live pasteboard on live views of the app. (#320)
Closes #300

also. Update the commit hash for the sdk
2022-05-17 15:29:51 -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
Lukas Korba 42424fd413
[313] Project Structure & TCA Code Consistency Document (#314)
- the TCA XCode template
- the doc describing the rules for the store and view files, project is WIP

[313] Project Structure & TCA Code Consistency Document

- project structure section

[313] Project Structure & TCA Code Consistency Document

- correct TCA xctemplate link

[313] Project Structure & TCA Code Consistency Document (314)

- placeholders updated to the right section

[313] Project Structure & TCA Code Consistency Document (314)

- comments solved
- TCA Xcode template extended to offer standalone vs. combined reducers
2022-05-12 16:52:27 -03:00
Francisco Gindre 4ea6fcf939
CHANGELOG for 0.0.1 builds 23 and 24 + build bump (#316) 2022-05-11 20:03:28 -03:00
Lukas Korba 2bb5451047
[#294] amount + address fields done (#308)
cleanup

validation

[#294] [Scaffold] Send Screen - transaction + address inputs (#308)

- zec amount refactored to be always Int64 - number formatter to zec string for the UI added
- cleaned up the invalid input conditions by providing computed properties
- isValidZcashAddress() added

[#294] [Scaffold] Send Screen - transaction + address inputs (#308)

- prefix input view support implemented
- zcash or $ symbol used as a prefix for the amount input
- $ computations and max out implemented

[#294] [Scaffold] Send Screen - transaction + address inputs (#308)

- insufficient funds logic (UI error + inability to send) added
- $ balance value visible at send screen
- cleanup

[#294] [Scaffold] Send Screen - transaction + address inputs (#308)

- send routing simplified and cleaned up

[#294] [Scaffold] Send Screen - transaction + address inputs (#308)

- unit tests

[#294] [Scaffold] Send Screen - transaction + address inputs (#308)

- cleanup

[#294] [Scaffold] Send Screen - transaction + address inputs (#308)

- review comments solved
2022-05-11 12:26:39 -03:00
Francisco Gindre 10070c3c02
[#287] updated changelog with issues that fixed the broken build (#309)
Closes #287

This also contains a format change in the CHANGELOG.md
2022-05-05 13:14:19 -03:00
Francisco Gindre cec63d0564
[#306 #215] Swiftlint and other warnings + build errors (#307)
[#306] Release build is broken because placeholder is not compiled

[#215] Warning: Non-constant range: argument must be an integer literal

Fix comment spacing warning
2022-05-05 10:30:01 -03:00
Francisco Gindre 1a594c955a
[#287] CHANGELOG and build number bump for 0.0.1-23 (#305) 2022-05-04 17:29:29 -03:00