Commit graph

649 commits

Author SHA1 Message Date
julian
74ca8e1e07 add delete address labels and tx notes functionality (isar notes unimplemented atm) 2023-02-03 18:17:39 -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
julian
3ba9f7d61b WIP majestic bank order calculate api call 2023-02-02 14:18:27 -06:00
julian
8bdf0413bd majestic bank limits and rates api calls 2023-02-02 12:56:55 -06:00
julian
b504059735 WIP initial majestic bank api work 2023-02-02 12:56:55 -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
aec33094d6 payment code lookup fix 2023-02-01 16:46:49 -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
b64ffe91b7 paynym receiving address scanning fix 2023-02-01 11:23:09 -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
a00340b464 fix hasConnected to return true for sent notification transactions 2023-01-31 17:46:56 -06:00
julian
19bf4c0df6 scan following/followers for paynym history 2023-01-31 17:26:10 -06:00
julian
6a0673bec5 EXTRACT FUNCTION FOR PARSING BLINDED PAYMENT CODE FROM A TRANSACTION 2023-01-31 14:40:54 -06:00
julian
95d1f3c17e check all outputs for payment codes 2023-01-31 14:09:45 -06:00
julian
6df782647e btc send exact value of output fix 2023-01-31 13:44:56 -06:00
julian
2e7d55bda4 btc notification tx fix 2023-01-31 12:17:32 -06:00
julian
dcd7f312a5 dynamics... 2023-01-31 11:09:21 -06:00
julian
0a264a97c5 pass p2pkh change address to paynym interface 2023-01-31 10:37:53 -06:00
julian
c06c3935ca handle fee rounding error 2023-01-31 10:37:03 -06:00
julian
3940c88e44 fix notifTx fee calculate bug 2023-01-31 10:03:16 -06:00
julian
4f58483e82 show min/max crypto amounts returned by simplex api on quote request 2023-01-30 14:08:21 -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
julian
85d69c0cb2 check all outputs for potential notification tx 2023-01-30 08:28:14 -06:00
likho
f7e2568e6a Add validation for custom addresses and clean up 2023-01-30 15:44:30 +02:00
julian
32c942ad42 Merge remote-tracking branch 'origin/staging' into paynyms 2023-01-27 18:28:53 -06:00
julian
3985674525 dirty payment code obfuscation 2023-01-27 18:18:58 -06:00
sneurlax
177eb70d51 handle errors more reliably 2023-01-27 16:08:56 -06:00
sneurlax
679c382106 pass, catch, and display error dialog from newOrder 2023-01-27 15:54:37 -06:00
sneurlax
ec64c77c45 comment update 2023-01-27 15:23:14 -06:00
julian
61ad20e919 Merge remote-tracking branch 'origin/simplex' into paynyms
# Conflicts:
#	lib/utilities/enums/coin_enum.dart
2023-01-27 15:05:29 -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
c7446f1946 receiving address fix 2023-01-27 14:43:00 -06:00
julian
c8783bb032 ignore duplicate unblinded codes 2023-01-27 13:10:35 -06:00
julian
451edbfc67 handle dropped mempool/blockchain transactions 2023-01-27 12:49:25 -06:00
julian
47acad29a5 isar index violation error fix 2023-01-27 11:20:12 -06:00
julian
33660467b1 add notification address derivation 2023-01-27 10:22:55 -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
d53709c7b0 Remove balanceMinusMaxFee for token since fees paid in ETH and send full balance on sendAll 2023-01-27 16:32:03 +02:00
likho
fd0b20d661 Complete adding ERC-20 functionality 2023-01-27 14:32:05 +02:00
sneurlax
25a5b42f0e remove print from prod 2023-01-26 17:35:04 -06:00
sneurlax
6c48caff48 only add stack coins to list
TODO refactor isStackCoin into a reusable form instead of copying it around 3 times :P
2023-01-26 17:35:04 -06: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
julian
4170ca958f include paynym receiving addresses when checking for incoming transaction amounts 2023-01-26 15:22:39 -06:00
sneurlax
832c495227 catch requesting quote for >max crypto amt 2023-01-26 14:20:45 -06:00
julian
828c301af7 mobile paynym send flow implemented 2023-01-26 12:16:38 -06:00
likho
dbcbfe342c WIP: Add test ETH Token functionality in stack 2023-01-26 20:08:12 +02:00
julian
5de22ca858 Merge branch 'simplex' into paynyms 2023-01-26 10:16:01 -06:00
sneurlax
ed0a0266f6 linting 2023-01-25 16:43:26 -06:00
sneurlax
5f2b0de2d1 dart linting 2023-01-25 16:43:13 -06:00
sneurlax
baf995e515 update URL 2023-01-25 16:41:55 -06: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
907c380812 copy extension into a mixin 2023-01-25 15:07:44 -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
sneurlax
2282290b74 do not await unnecessarily 2023-01-25 12:13:20 -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
sneurlax
c929ea5f75 pass signup time to api 2023-01-25 12:00:02 -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
sneurlax
74f783391b use _buildUri in redirect 2023-01-25 11:13:00 -06:00
sneurlax
a223f735a2 import linting 2023-01-25 11:08:29 -06:00
sneurlax
ccc5995e42 use _buildUri in order and pass userId and signupEpoch 2023-01-25 11:08:22 -06:00
sneurlax
f87acdc721 use _buildUri in quote 2023-01-25 11:06:27 -06:00
sneurlax
e2ec733211 use _buildUri in supported_fiats and don't use compute there 2023-01-25 11:05:51 -06:00
sneurlax
61748b4b2f use _buildUri to get supported cryptos 2023-01-25 10:52:41 -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
sneurlax
82f89966bc add userID to quotes and don't init userID in main
TODO test what happens for a fresh install, I already have a userID set in my prefs
2023-01-24 16:02:25 -06:00
julian
fcc68ff1da Merge branch 'ui-fixes' into paynyms 2023-01-24 13:34:13 -06:00
sneurlax
32ca83673a Merge remote-tracking branch 'cypherstack/ui-fixes' into simplex 2023-01-24 12:29:13 -06:00
sneurlax
6f85aa5065 fix amount formatting if buying crypto amount 2023-01-24 11:55:36 -06:00
julian
e404de2116 force usage of adkVersion parameter 2023-01-24 10:30:00 -06:00
sneurlax
83da7a2680 add fiat enums for pretty names 2023-01-24 10:05:15 -06:00
julian
6253652c21 detect paynym notification transactions 2023-01-23 16:11:24 -06:00
sneurlax
cccfaa6eef update API URL
TODO follow todo at top of file re: using buildUri
2023-01-23 14:35:39 -06:00
julian
5eb4b3bff5 move tx creation after ins/outs and added another null check 2023-01-23 13:46:56 -06:00
julian
69dfbb5873 paynym clean up to use isar transaction and address upgrades 2023-01-23 12:19:13 -06:00
sneurlax
4b944a2496 update API URL, use HTTPS 2023-01-23 10:59:14 -06:00
julian
f3325807e0 null address fix 2023-01-23 10:37:29 -06:00
julian
54cabe935f null address fix 2023-01-23 10:32:53 -06:00
sneurlax
f205312bb9 TODOs 2023-01-21 00:19:56 -06:00
sneurlax
290087c2d5 remove unnecessary prints 2023-01-20 22:49:14 -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
sneurlax
c3dd04b830 use simplex_api supported_fiats and update fiat model 2023-01-20 15:45:37 -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
sneurlax
adf83aa3a6 use simplex_api supported_cryptos and update crypto model 2023-01-20 15:30:35 -06:00
sneurlax
51a9c7e961 api.php/route -> api.php?ROUTE=route 2023-01-20 14:56:26 -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
sneurlax
b30976c0f0 redirect to checkout 2023-01-20 09:27:24 -06:00
sneurlax
2ad0659cbc add SimplexOrder model and return it from simplex API
TODO add redirect API call which url_launcher's the redirect endpoint
2023-01-19 23:10:15 -06:00
sneurlax
595d7e760d GET, don't POST, the goods. orders submitting
TODO create and return SimplexOrder and url_launch redirect endpoint 💪
2023-01-19 19:21:06 -06:00
sneurlax
8a1eee204b purchaseId -> id
because SimplexOrder qill have a quoteId, paymentId, and userId...
2023-01-19 17:47:27 -06: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
sneurlax
7191e502db use new cypherstack/simplex_api for quotes, update SimplexQuote
and add bool buyWithFiat to SimplexQuote to disambiguate request
2023-01-19 13:36:05 -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
sneurlax
745a887566 example update 2023-01-18 10:31:04 -06:00
sneurlax
202ce56448 add working non-api example
removed keys
2023-01-18 09:54:33 -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
sneurlax
56135dc19f error message fixes 2023-01-16 18:49:15 -06:00
sneurlax
f1c686504f add newOrder stub method
TODO make it POST and open external browser, or else we'll have to make the inline status widget
2023-01-16 18:49:03 -06:00
sneurlax
e6a19d981d pass receiving address on to preview sheet 2023-01-16 18:08:37 -06:00
sneurlax
d9b1fb1fc7 connect (most) form values to quote object 2023-01-16 17:38:42 -06:00
julian
880c82ba72 update delete wallet function to handle wallet isar data 2023-01-16 17:00:32 -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
sneurlax
7cc30d1da4 comment cleanup 2023-01-16 16:12:53 -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
89778e6e63 disable BuyDataLoadingService 2023-01-14 11:22:48 -06:00
julian
f80b47d467 typed response data 2023-01-14 08:21:32 -06:00
julian
09b51def04 missing value init fix 2023-01-14 08:00:43 -06:00
sneurlax
79edf1292d remove unneeded buy type and buys service
no history needed at this time
2023-01-13 19:12:03 -06:00
sneurlax
28c22cc3b8 do not use ticker as image url 2023-01-13 18:30:45 -06:00
sneurlax
cfe40c76d9 change amount widget as in send views, read currency selections from API 2023-01-13 18:07:27 -06:00
julian
7fc4b724c4 add replace tx logic for potentially unconfirmed transactions to update properly 2023-01-13 17:36:59 -06:00
julian
ea212b3dd8 useless print 2023-01-13 17:00:05 -06:00
julian
c08c3f779d shared address parse fix 2023-01-13 16:11:34 -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
sneurlax
61c971973c restyle coin and fiat selection widgets
and:
 - available -> supported
 - do not load simplex data on desktop menu item action
2023-01-13 13:14:56 -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
sneurlax
44d3c26385 add available simplex currencies provider 2023-01-12 20:21:19 -06: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
sneurlax
b18ee6ba19 pare down crypto and fiat types and WIP stash of progress 2023-01-12 15:15:42 -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
9b2b01764c add epic cash wallet cache hive mixin 2023-01-12 14:57:32 -06:00
julian
12bbc57e62 update wallet cache hive mixin 2023-01-12 14:57:07 -06:00
sneurlax
8e9150d7fe update api call 2023-01-12 14:38:03 -06:00
sneurlax
bbf709744d get -> post 2023-01-12 14:14:53 -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