Commit Graph

27 Commits

Author SHA1 Message Date
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 d528f7ecf7
[#618] Use SwiftGen to generate L10n structure (#619)
Closes #618

- Generate L10n structure by using SwiftGen.
- Replace all strings from localisation file with L10n.
2023-03-07 08:59:17 +01:00
Lukas Korba 4db00ff4a9
[#609] Split birthday from the import seed phrase (#622)
- birthday set separated from the backup seed phrase
- snapshot for the birthday screen added
2023-03-07 07:16:34 +01:00
Lukas Korba 8e46737321
[#566] Change colors app-wide (#603) 2023-03-06 15:14:18 +01:00
Michal Fousek f1c9b06123
[#576] All the errors are handled by alert (#589)
Closes #576
2023-03-02 09:02:24 +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
Francisco Gindre 7967fac627
[#207] create Secant Mainnet target (#550)
1. duplicates secant-testnet target and call it secant mainnet https://github.com/zcash/secant-ios-wallet/issues/273
2. renames Info copy plist file and Display name
3. Fixes TCA code bootstrapping so it has the mainnet environment

Fixed Info-Plist
4. (off code repo) create the mainnet app on the app store

4. create the mainnet app on the app store
5. create the mainnet variant on Crashlytics
6. create a GoogleServices-Plist file
7. change tag triggers to mainnet and testnet can be built independently from each other
8. add Icons for testnet

Creates TargetConstants enum for network target

Closes [#568] Change display name to sECCant

make Derivation tool be static by SECANT_{NETWORK} target

Closes [#570] Change AppIcon to ECC icon
Closes #207
2023-02-22 11:06:43 -03:00
Francisco Gindre adb48ba507
[#541] Adopt Latest main commit of SDK (#542)
* [#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
2023-02-15 19:27:52 -03: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 d87d16a031
[#538] Update and adapt 0.50.2 TCA (#539)
- TCA updated to the latest version
2023-02-13 14:13:42 -03: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
Lukas Korba 7839d56977
[#477] Consolidation of TCA dependencies (#489)
- DiskSpaceChecker dependency consolidated
- DatabaseFiles dependency consolidated
- DeeplinkHandler dependency consolidated
- AudioServices dependency consolidated
- CaptureDevuice dependency consolidated
- DerivationTool dependency consolidated
- AppVersionHandler dependency consolidated
- LocalAuthentication dependency consolidated
- all unit and snapshot tests work again
2022-11-14 19:36:51 +01:00
Lukas Korba 53011ff4c8
[#450] Migrate WalletEvents to ReducerProtocol (#457)
- WalletEvents migrated to ReducerProtocol
- unit and snapshot tests fixed
- some code cleanup, refactor and re-ordered
- WalletEvents refactored to WalletEventsReducer
2022-11-05 07:14:44 +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 85bf0c4224
[#448] Migrate ImportWallet to ReducerProtocol (#454)
- ImportWallet migrated
- unit and snapshot tests fixed
- syntax cleanup
2022-11-03 14:40:40 -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
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 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 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 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
Lukas Korba c6a90ff96c Initial functional code
cleanup + functional import wallet

app state check fix

synchronization wip

cleanup

cleanup + debug menus from the home

debug menus modifier added

fix for the failing tests

transparent -> shielded

comments resolved
2022-04-19 09:05:07 +02:00
Lukas Korba a44bbaabad importing and storing the wallet
tests fixed
2022-04-11 14:36:09 +02:00
Lukas Korba 158c75ce57 Merge branch '165_wallet_import_screen' of https://github.com/LukasKorba/secant-ios-wallet into 165_wallet_import_screen 2022-03-01 17:10:19 +01:00
Lukas Korba b0dff8a063 pointless comment removed 2022-03-01 17:10:09 +01:00
Lukas Korba 3fd5a2061d
Update secant/Features/ImportWallet/ImportWalletStore.swift
Co-authored-by: Francisco Gindre <francisco.gindre@gmail.com>
2022-03-01 17:09:18 +01:00
Lukas Korba e52b28adc3 Import Wallet localised
localisation of the import wallet screen done

Height of the buttons

according to design guide, the buttons should be 64px height
2022-03-01 09:40:16 +01:00
Lukas Korba f6548ee4ff Import Wallet Screen added
Scaffold of the import wallet screen has been created and connected to the onboarding flow
2022-03-01 09:12:50 +01:00