Commit graph

560 commits

Author SHA1 Message Date
julian
ea933e0474 do not freeze notification tx change outputs 2023-03-20 09:23:33 -06:00
julian
d0be86f4ba WIP desktop 'more features' and coin control 2023-03-13 14:37:05 -06:00
julian
d45caa47b3 block sent notification tx change output with reason 2023-03-09 15:49:23 -06:00
julian
0cace4d7bc partial derivation not found null fix 2023-03-09 15:08:13 -06:00
julian
c04723840f fix bug that can cause transaction broadcast to fail in the case where two or more input utxos come from the same parent transaction 2023-03-09 13:49:39 -06:00
julian
645ec5c2a0 delete unused file 2023-03-09 12:29:38 -06:00
julian
e6b5e847c3 coin control utxos fix 2023-03-09 10:30:10 -06:00
julian
b30f1db45b enable coin control for selected other coins 2023-03-08 16:11:46 -06:00
julian
ec237d0001 Merge remote-tracking branch 'origin/staging' into coin_control 2023-03-08 13:42:12 -06:00
julian
2b1d438953 balance refresh and total display fixes 2023-03-08 13:03:04 -06:00
julian
ea49ed32ab update balance after viewing coin control 2023-03-08 12:22:33 -06:00
julian
ffdb74d0e8 mark utxos as used on successful tx broadcast 2023-03-08 09:56:32 -06:00
julian
4aae0fc76e update coinSelection to handle custom list of UTXOs 2023-03-08 09:47:35 -06:00
julian
6465faa4e1 btc update utxo set 2023-03-07 09:00:42 -06:00
julian
251f90834c update UTXO schema 2023-03-06 14:39:41 -06:00
Likho
a940a0e75b Fix send error 2023-03-06 19:18:46 +02:00
julian
7319f509f0 add coin control option to mobile more menu + assets fix 2023-03-06 10:34:41 -06:00
julian
b617b3e5e0 added more logging 2023-03-03 11:36:28 -06:00
Diego Salazar
aadbeff488
Merge pull request #382 from cypherstack/fix/epic-create
Fix epic wallet creation epicbox config error by adding and using an EpicBoxConfigModel and an EpicBoxServerModel
2023-03-03 08:55:06 -07:00
Diego Salazar
9a04f5db31
Merge branch 'staging' into fix/epic-delete 2023-03-03 08:54:32 -07:00
sneurlax
0089dc8333 send real config, not epicbox config, to deletewallet 2023-03-02 19:08:58 -06:00
julian
babbd75da3 use database contract data and contract management updates 2023-03-02 18:40:12 -06:00
julian
a5d8fdde79 parse eth tx json to data transfer objects 2023-03-02 15:07:25 -06:00
sneurlax
83d0157600 add and use EpicBoxConfigModel and EpicBoxServerModel 2023-03-02 14:51:19 -06:00
sneurlax
6f27184619 type handling
hack not fix (model is fix)
2023-03-01 18:09:25 -06:00
sneurlax
a8e079bd84 pass config param to wallet deletion method
had to add param because existing rust wallet deletion method can't check for existence without it but I'd like to do this differently on the rust side and revert this change

plus the type handling (`decoded is String`) is a hack vs making a model like it probably should be
2023-03-01 17:59:20 -06:00
julian
16efeea1db project structure 2023-03-01 15:52:13 -06:00
julian
11177b50c3 tx parsing fix 2023-03-01 15:19:53 -06:00
likho
ca6fa2d101 Add check for domain for epicbox address 2023-03-01 14:27:35 +02:00
julian
e3548c5ecc WIP wallet token management 2023-02-28 18:36:54 -06:00
julian
305b252573 replace 'net_*' calls with 'eth_*' alternatives 2023-02-27 16:49:20 -06:00
julian
2287cd751e Merge remote-tracking branch 'origin/paynyms' into add-ethereum 2023-02-27 08:42:35 -06:00
likho
716dbe706b Fix epicbox config issue when creating new wallet 2023-02-25 11:42:21 +02:00
julian
9c8fd22bfb WIP load and display token transactions 2023-02-24 14:07:59 -06:00
julian
5aed55235c WIP eth refactor 2023-02-23 16:59:58 -06:00
julian
1653bb2096 Merge remote-tracking branch 'origin/ui-fixes' into add-ethereum 2023-02-23 14:36:38 -06:00
julian
d657681d23 Merge remote-tracking branch 'origin/staging' into add-ethereum
# Conflicts:
#	pubspec.lock
2023-02-23 14:27:49 -06:00
julian
a57cd88696 use segwit change address for notification tx 2023-02-23 14:01:36 -06:00
julian
a63af1787a explicitly check p2pkh change address on refresh 2023-02-23 13:49:27 -06:00
sneurlax
6a6b3767aa comment update 2023-02-21 17:56:08 -06:00
sneurlax
9333a28180 reorder function and add comment for clarity 2023-02-21 15:37:54 -06:00
sneurlax
63fbd003e2 don't save failover epicbox server to hive if primary fails
just return the failover
2023-02-21 15:35:05 -06:00
sneurlax
937c1263e7 debugPrint -> Logging.instance.log 2023-02-21 15:21:12 -06:00
sneurlax
a44dfe7650 linting 2023-02-21 15:20:43 -06:00
likho
928f0e4e51 When default epic server is down default to EU, if that is down do not allow TX sending 2023-02-21 18:48:59 +02:00
Diego Salazar
2917db6bd6
Merge branch 'staging' into update-epic 2023-02-18 18:38:47 -07:00
likho
719f554995 More clean up, handle epicbox config for old wallets 2023-02-17 19:44:21 +02:00
julian
5fecce54cd Merge remote-tracking branch 'origin/staging' into paynyms 2023-02-16 14:20:30 -06:00
julian
755115b848 temporarily force refresh bip47 notification tx history on txns refresh 2023-02-16 08:05:41 -06:00
likho
6645febe36 Fix cancel error 2023-02-16 13:41:09 +02:00
julian
7e2276394c ensure utxos are fetched after refreshing transactions to ensure bip47 notification utxos are not included in balances 2023-02-15 17:26:44 -06:00
Likho
4077af77d8
Merge branch 'staging' into update-epic 2023-02-15 19:31:59 +02:00
julian
15b37b6f5c merge clean up and update eth to use isar for tx history and addresses 2023-02-14 11:43:48 -06:00
julian
056fa1947c Merge remote-tracking branch 'origin/staging' into add-ethereum
# Conflicts:
#	lib/pages/settings_views/global_settings_view/manage_nodes_views/add_edit_node_view.dart
#	lib/pages/wallet_view/sub_widgets/wallet_navigation_bar.dart
#	lib/pages/wallet_view/wallet_view.dart
#	lib/services/price.dart
#	lib/utilities/assets.dart
#	pubspec.lock
#	pubspec.yaml
2023-02-14 08:24:04 -06:00
julian
1c812b0bf2 extra firo logging 2023-02-13 17:22:47 -06:00
sneurlax
2bee017cb8 Merge branch 'null-mnemonic-passphrase' into paynyms 2023-02-13 17:02:22 -06:00
sneurlax
efbfe4def7 apply null mnemonic passphrase error log to other relevant coins 2023-02-13 16:53:28 -06:00
sneurlax
8ecf6e988a throw error on null bch mnemonic passphrase 2023-02-13 16:52:28 -06:00
sneurlax
00c99cbcc5 Merge remote-tracking branch 'cypherstack/paynyms' into fix/firo 2023-02-13 16:39:06 -06:00
julian
903b39c454 semi graceful paynym.is call failure during btc recover 2023-02-13 15:29:12 -06:00
sneurlax
7666a9383d putAddresses->updateOrPutAddresses
should solve isar unique index violation error
2023-02-13 14:02:52 -06:00
julian
197a2a1f19 do not check addresses until refresh initiated 2023-02-13 12:13:30 -06:00
likho
a378ff751b Remove all things epicpost 2023-02-13 17:46:34 +02:00
likho
0ddc8080e1 Update listen for slates functionality 2023-02-13 16:49:25 +02:00
julian
14b2424c3f epic address fix 2023-02-09 10:26:58 -06:00
julian
83bc26921b epic address fix 2023-02-08 09:57:26 -06:00
julian
998967245e migrate wallet on open 2023-02-08 07:29:27 -06:00
julian
d4499ac3bc firo bug fix and test update 2023-02-03 19:04:43 -06:00
julian
5145d4fc01 query/filter bch addresses using derivation path components 2023-02-03 18:51:30 -06:00
julian
eb42493e4d bch derivePath bug fix 2023-02-03 18:05:19 -06:00
julian
9b4dee76a5 add derivationPath to Address constructor as required 2023-02-03 17:30:32 -06:00
julian
0c8e561995 bch constructDerivePath bug fix 2023-02-03 17:22:34 -06:00
julian
ad0059508c move wallet constructors below class declaration 2023-02-03 16:48:16 -06:00
julian
4d891e0f31 clean up 2023-02-03 16:42:27 -06:00
julian
5b5ee30e41 centralized and cleaned up bip32 utils, and added mnemonic password functionality 2023-02-03 16:34:06 -06:00
julian
b0c00d8ec7 db refactor and added address labels 2023-02-03 13:22:21 -06:00
likho
e3101d98af Update Epicbox config to match latest epic version 2023-02-03 20:34:19 +02:00
julian
f0a8d65b3e show sent tx immediately in history 2023-02-02 16:19:14 -06:00
julian
97604a792f fix offline wallet creation for namecoin and particl 2023-02-02 15:48:06 -06:00
sneurlax
80611d1a31 use bch44 derivation if bip44 is null 2023-02-02 11:40:42 -06:00
julian
b2d7414cb6 merge clean up 2023-02-02 09:41:33 -06:00
julian
dc581cd4fc Merge remote-tracking branch 'origin/staging' into paynyms
# Conflicts:
#	lib/services/coins/bitcoincash/bitcoincash_wallet.dart
2023-02-02 09:29:30 -06:00
sneurlax
4aec78f0ed
Add BIP44 derivation paths to Bitcoin Cash wallet restoration process (#330)
* add new derive path for bch

and make it the new default.  we currently use slip44 (coinType 145) as the default

* add default cases to DerivePathType switches now failing

* normalize DerivePathType errors

log failing derivePathType or type, as appropriate

* add default derive path case to paynym interface

* use slip44 in bch wallet

* linting

* WIP look up both bip44 and slip44 addresses

slip44 is used by default

* typo fix

* typo fix

thanks Julian

* remove print

* use slip44 addresses by default

* use AddressType unknown for bip44 derive path type

* use address type unknown in _getCurrentAddressForChain, too

* generate different keys for SLIP44 and BIP44 paths

* couple more slips

* return slip44 from addressType

* slip before bip

* revert slip44-bip44, bch's bip44->bch44

* set bch44 derive path to type unknown

do not comingle paths in later output selection by index

* handle bip44 and bch44 path addresses when handling outputs

* use bip44 by default

* typofix

* typo fix in the typo fix

yo dawg

* separate new derivation path functions into their own non-testnet block

* cleanup

* disable test

should re-enable if it can be fixed with the test mnemonic in hand

---------

Co-authored-by: julian <julian@cypherstack.com>
2023-02-02 09:24:26 -06:00
julian
16d4384525 possible putAddresses index violation error during full rescan fix 2023-02-02 09:03:57 -06:00
julian
eaf8fe7094 possible epic cash address get fix 2023-02-02 08:48:03 -06:00
julian
ce5586d675 extra percent notifier 2023-02-01 16:46:27 -06:00
julian
9dc5f91a04 add logging to fee btc calc 2023-02-01 15:37:58 -06:00
julian
72cb62774c revert and modify tx size calc for two outputs 2023-02-01 15:20:49 -06:00
julian
68be62e3ef bch fetch derivation by address fix 2023-02-01 10:38:49 -06:00
julian
588d715a61 only clear out wallet utxos on refresh 2023-01-31 19:26:23 -06:00
julian
19bf4c0df6 scan following/followers for paynym history 2023-01-31 17:26:10 -06:00
julian
6df782647e btc send exact value of output fix 2023-01-31 13:44:56 -06:00
julian
0a264a97c5 pass p2pkh change address to paynym interface 2023-01-31 10:37:53 -06:00
julian
a41f80ac55 add height change notify 2023-01-30 11:06:28 -06:00
julian
17cbc390e4 pass in correct values 2023-01-30 08:28:54 -06:00
likho
f7e2568e6a Add validation for custom addresses and clean up 2023-01-30 15:44:30 +02:00
julian
3985674525 dirty payment code obfuscation 2023-01-27 18:18:58 -06:00
julian
3105c21c35 move paynym interface from doge to btc 2023-01-27 15:03:03 -06:00
julian
b09b3d0e1f restore all paynym history function 2023-01-27 14:43:38 -06:00
julian
451edbfc67 handle dropped mempool/blockchain transactions 2023-01-27 12:49:25 -06:00
julian
8b071e8774 ensure paynym notification address is generated and added to database on restore 2023-01-27 10:21:23 -06:00
julian
5159a61271 block paynym notification utxos 2023-01-27 10:20:26 -06:00
julian
6d7284d216 do not display incoming notification transaction in ui 2023-01-27 10:04:55 -06:00
likho
fd0b20d661 Complete adding ERC-20 functionality 2023-01-27 14:32:05 +02:00
julian
9b74f52ce9 add receiving address derivation to secure storage 2023-01-26 16:17:26 -06:00
julian
9cc0d74b16 check paynym receiving addresses based on payment code notification tx history 2023-01-26 15:25:53 -06:00
likho
dbcbfe342c WIP: Add test ETH Token functionality in stack 2023-01-26 20:08:12 +02:00
julian
fb3f430edc disable PaynymSupport extension and use PaynymWalletInterface instead 2023-01-25 15:49:57 -06:00
julian
7cb497f4f7 remove coin enum hasPaynymSupport getter in favor of type checking 2023-01-25 15:46:48 -06:00
julian
9c44dc6c6b add support to make adding segwit paynym support simple once implemented 2023-01-25 14:33:59 -06:00
julian
79db4f048c use derive path type extension method per coin 2023-01-25 13:49:14 -06:00
julian
35ba2f9d79 use derive path type in paynym extension 2023-01-25 12:13:01 -06:00
julian
6b08acf225 single DerivePathType enum declaration 2023-01-25 12:08:48 -06:00
julian
1965501bf8 added address scanning for send and receiving addresses given the context of your own payment code and another, address type choice also added for send/receive address generation 2023-01-25 11:13:21 -06:00
likho
d4653ea794 WIP: Add token functionality 2023-01-25 18:08:27 +02:00
julian
26245517ac add paynym send functionality to paynym extension 2023-01-25 09:26:50 -06:00
likho
abf9f02f8e ADdress fix 2023-01-25 14:09:07 +02:00
likho
4efd432de6 WIP: Add wallet tokens 2023-01-25 11:29:20 +02:00
julian
37fa5e9d19 remove old file and add todos 2023-01-24 16:18:17 -06:00
julian
6253652c21 detect paynym notification transactions 2023-01-23 16:11:24 -06:00
julian
69dfbb5873 paynym clean up to use isar transaction and address upgrades 2023-01-23 12:19:13 -06:00
julian
f3325807e0 null address fix 2023-01-23 10:37:29 -06:00
julian
165021ca2e Merge branch 'isar_migrate' into paynyms 2023-01-20 17:27:18 -06:00
julian
a391a76eec trusted nodes fix and possibly other node fix 2023-01-20 16:24:33 -06:00
julian
017719971b isar init fix and renaming of init functions 2023-01-20 15:57:54 -06:00
julian
830fd58754 Merge branch 'isar-transactions' into isar_migrate
# Conflicts:
#	lib/services/coins/bitcoin/bitcoin_wallet.dart
#	lib/services/coins/bitcoincash/bitcoincash_wallet.dart
#	lib/services/coins/coin_service.dart
#	lib/services/coins/dogecoin/dogecoin_wallet.dart
#	lib/services/coins/firo/firo_wallet.dart
#	lib/services/coins/litecoin/litecoin_wallet.dart
#	lib/services/coins/monero/monero_wallet.dart
#	lib/services/coins/namecoin/namecoin_wallet.dart
#	lib/services/coins/particl/particl_wallet.dart
#	lib/services/coins/wownero/wownero_wallet.dart
#	pubspec.yaml
2023-01-20 15:30:48 -06:00
julian
c1182f61bc start centralizing custom exceptions 2023-01-20 12:25:32 -06:00
julian
5c66b0380b move standard electrum x transaction parsing function into a mixin 2023-01-20 12:16:27 -06:00
julian
4c25a88c32 update to use new block data callback 2023-01-20 11:48:59 -06:00
likho
706cbbfa39 Add tokens class 2023-01-20 19:24:19 +02:00
julian
fd5a237170 move db modifying func to MainDB out of WalletDb, add MainDB mocks to coin tests, build runner generate mocks 2023-01-19 15:13:03 -06:00
julian
60e850f442 add mockable override option for testing purposes 2023-01-19 14:33:23 -06:00
julian
8921302ee0 remove useless walletId param from db init 2023-01-19 14:07:08 -06:00
julian
686c897515 remove unused param from constructor 2023-01-19 11:41:59 -06:00
julian
db205b40e2 notify ui of tx changes and force refresh on rescan 2023-01-19 10:29:00 -06:00
julian
95b9e6170f firo mint tx migrate fix 2023-01-19 09:16:30 -06:00
likho
74ab70df7e Use mainnet 2023-01-19 10:45:09 +02:00
julian
7d061866bd btc tx fetch fetch fix 2023-01-18 18:13:08 -06:00
julian
0a3c001845 fix all own addresses query 2023-01-18 17:20:23 -06:00
julian
575cce1a7d update address in case of bad index from migrate or any other reason 2023-01-18 16:55:59 -06:00
julian
719f70697a epic isar fixes 2023-01-18 09:42:46 -06:00
julian
30635b05d5 wow isar tx sync fixes 2023-01-17 17:19:09 -06:00
julian
505e8adad7 xmr isar tx sync fixes 2023-01-17 16:56:21 -06:00
julian
ef9205a0a9 particl isar tx parse fixes 2023-01-17 16:11:04 -06:00
julian
9bb71b0e13 firo isar index and null address fix 2023-01-17 12:31:07 -06:00
julian
38453ceafb delete old derivations when doing full rescan 2023-01-17 08:19:30 -06:00
julian
b348761bbe bch cashaddr fix 2023-01-17 08:04:30 -06:00
julian
203cd12678 epic bugfix 2023-01-16 16:56:24 -06:00
julian
d1f237ae51 explicit isar model constructors 2023-01-16 16:37:00 -06:00
julian
5562c14527 WIP refactor to single main isar db 2023-01-16 15:04:03 -06:00
julian
0223a75d95 putAll 2023-01-16 12:58:10 -06:00
julian
5e592f8d29 epic index fix 2023-01-16 08:53:46 -06:00
julian
09b51def04 missing value init fix 2023-01-14 08:00:43 -06:00
julian
ea212b3dd8 useless print 2023-01-13 17:00:05 -06:00
julian
8a7236b46d clear out isar blockchain data per wallet when doing full rescan 2023-01-13 15:48:42 -06:00
julian
061658f2e9 dynamic map value fix 2023-01-13 15:44:14 -06:00
julian
3414c71741 update other coin's parse transaction and db update 2023-01-13 15:36:19 -06:00
julian
e14c362574 rename var 2023-01-13 14:59:47 -06:00
julian
5e7bd0d8ae fix bitcoin transaction refresh 2023-01-13 14:50:43 -06:00
julian
5819241c15 fix tx parse address bug 2023-01-13 14:50:22 -06:00
julian
cb382e213f separate tx note from transaction object to ensure total separation of blockchain data from other user to ease rescanning the blockchain 2023-01-13 13:33:46 -06:00
julian
94e6ebf53b insert inputs/outputs after finishing tx parse 2023-01-13 13:25:09 -06:00
julian
6310f0b1c7 only update missing or unconfirmed transactions 2023-01-13 12:00:25 -06:00
julian
0543c4b044 filter by address fixes 2023-01-13 12:00:02 -06:00
julian
52d5ab0d33 WIP tx parse + link address to transaction 2023-01-13 11:11:41 -06:00
julian
13e6fc6b47 restoring type fix 2023-01-13 09:26:37 -06:00
likho
5a1569b3fa Clean up and fixes 2023-01-13 16:36:50 +02:00
likho
78a64690ed Fix sendall 2023-01-13 11:21:10 +02:00
julian
7e6daad779 some small bug fixes 2023-01-12 16:07:15 -06:00
julian
8c67901c28 apply wallet cache mixin to rest of coin wallets and clean up hive code 2023-01-12 15:32:25 -06:00
julian
5c70cf7967 add mixins to firo_wallet.dart and remove directly interacting with hive therein 2023-01-12 15:20:57 -06:00
julian
85be646049 add mixins to epiccash_wallet.dart and remove directly interacting with hive therein 2023-01-12 14:58:58 -06:00
julian
1170f742e9 use balance caching in all wallets 2023-01-12 13:21:03 -06:00
julian
61a1ad551f clean up print 2023-01-12 12:55:57 -06:00
julian
4ab090cb92 remove unused hive inits 2023-01-12 12:54:22 -06:00
julian
3f830218a4 extract wallet isar db to mixin 2023-01-12 12:46:01 -06:00
julian
ccb9f254bd small bug fixes and added WalletCache mixin to handle balance cache etc 2023-01-12 12:15:28 -06:00
likho
27322061f6 Implement gas price oracle, Update all fees to use new gas estimate 2023-01-12 19:24:26 +02:00
julian
e115ff1b41 only use the PaymentData 'data' once and do not generate p2sh data using p2wpkh unless required 2023-01-12 09:52:41 -06:00
likho
ab4392b0bd WIP: Add transaction fees 2023-01-12 16:14:49 +02:00
likho
734a51f5dd WIP: Get gas estimator 2023-01-12 10:09:11 +02:00
julian
12a5eff178 missing value init 2023-01-11 22:45:59 -06:00
julian
a73e18df75 expose wallet isar instance to Manager 2023-01-11 21:23:21 -06:00
julian
3a185ead9a WIP paynym model parsing updates 2023-01-11 21:14:04 -06:00
julian
a989a26f62 migrate wownero_wallet.dart to isar transactions, addresses, and utxos, as well as the cleaner balance model 2023-01-11 21:09:18 -06:00
julian
c83ec074de migrate monero_wallet.dart to isar transactions, addresses, and utxos, as well as the cleaner balance model 2023-01-11 21:09:08 -06:00
julian
275e3ab4cb WIP migrate particl_wallet.dart to isar transactions, addresses, and utxos, as well as the cleaner balance model 2023-01-11 20:09:08 -06:00
julian
21f3d80d3a migrate namecoin_wallet.dart to isar transactions, addresses, and utxos, as well as the cleaner balance model 2023-01-11 19:22:44 -06:00
julian
c36d73f255 migrate litecoin_wallet.dart to isar transactions, addresses, and utxos, as well as the cleaner balance model 2023-01-11 18:59:01 -06:00
julian
90bf6a2bb2 migrate firo_wallet.dart to isar transactions, addresses, and utxos, as well as the cleaner balance model 2023-01-11 18:16:17 -06:00
julian
f551927603 migrate epiccash_wallet.dart to isar transactions, addresses, and utxos, as well as the cleaner balance model 2023-01-11 14:52:06 -06:00
julian
30d8f8b810 update isCancelled flag name to be consistent with other isar model bool values 2023-01-11 14:48:55 -06:00
julian
25a60920dd migrate bitcoincash_wallet.dart to isar transactions, addresses, and utxos, as well as the cleaner balance model 2023-01-11 13:30:03 -06:00
julian
493bf09578 migrate bitcoin_wallet.dart to isar transactions, addresses, and utxos, as well as the cleaner balance model 2023-01-11 12:24:16 -06:00
julian
90964b83c6 migrate dogecoin_wallet.dart to isar transactions, addresses, and utxos, as well as the cleaner balance model 2023-01-11 12:23:49 -06:00
julian
78db152ff4 clean up coinservice and manager classes to handle new isar models and balance model 2023-01-11 12:21:11 -06:00
likho
8b87c7367a Error fixes 2023-01-11 15:35:51 +02:00
julian
b0c62015a1 update enum value name 2023-01-10 17:57:00 -06:00
julian
d27af7243c modify experimental parseTransaction function to return the new Isar Transaction model 2023-01-10 17:55:19 -06:00
julian
9d6e2d0a0d update dogecoin to use isar for addresses and transactions 2023-01-10 17:52:27 -06:00