diff --git a/bin/lamassu-send-coins b/bin/lamassu-send-coins index 6021d030..b8869d9a 100755 --- a/bin/lamassu-send-coins +++ b/bin/lamassu-send-coins @@ -3,7 +3,7 @@ const settingsLoader = require('../lib/new-settings-loader') const configManager = require('../lib/new-config-manager') const wallet = require('../lib/wallet') -const { utils: coinUtils } = require('lamassu-coins') +const { utils: coinUtils } = require('@lamassu/coins') const BN = require('../lib/bn') const inquirer = require('inquirer') const ticker = require('../lib/ticker') diff --git a/bin/lamassu-update-wallet-nodes b/bin/lamassu-update-wallet-nodes index c648ba4b..f5f42d3a 100644 --- a/bin/lamassu-update-wallet-nodes +++ b/bin/lamassu-update-wallet-nodes @@ -2,7 +2,7 @@ const _ = require('lodash/fp') const common = require('../lib/blockchain/common') -const { utils: coinUtils } = require('lamassu-coins') +const { utils: coinUtils } = require('@lamassu/coins') const cryptos = coinUtils.cryptoCurrencies() diff --git a/lib/admin/funding.js b/lib/admin/funding.js index 81a51ea1..a448cf6a 100644 --- a/lib/admin/funding.js +++ b/lib/admin/funding.js @@ -4,7 +4,7 @@ const settingsLoader = require('./settings-loader') const configManager = require('./config-manager') const wallet = require('../wallet') const ticker = require('../ticker') -const { utils: coinUtils } = require('lamassu-coins') +const { utils: coinUtils } = require('@lamassu/coins') const machineLoader = require('../machine-loader') module.exports = {getFunding} diff --git a/lib/blockchain/bitcoin.js b/lib/blockchain/bitcoin.js index d36bd946..a1bfb22b 100644 --- a/lib/blockchain/bitcoin.js +++ b/lib/blockchain/bitcoin.js @@ -1,6 +1,6 @@ const path = require('path') -const { utils: coinUtils } = require('lamassu-coins') +const { utils: coinUtils } = require('@lamassu/coins') const common = require('./common') diff --git a/lib/blockchain/bitcoincash.js b/lib/blockchain/bitcoincash.js index 5fbbd4bd..37dac4f3 100644 --- a/lib/blockchain/bitcoincash.js +++ b/lib/blockchain/bitcoincash.js @@ -1,6 +1,6 @@ const path = require('path') -const { utils: coinUtils } = require('lamassu-coins') +const { utils: coinUtils } = require('@lamassu/coins') const common = require('./common') diff --git a/lib/blockchain/dash.js b/lib/blockchain/dash.js index f63f39b5..e688326f 100644 --- a/lib/blockchain/dash.js +++ b/lib/blockchain/dash.js @@ -1,6 +1,6 @@ const path = require('path') -const { utils: coinUtils } = require('lamassu-coins') +const { utils: coinUtils } = require('@lamassu/coins') const common = require('./common') diff --git a/lib/blockchain/ethereum.js b/lib/blockchain/ethereum.js index bdef942a..dd39468a 100644 --- a/lib/blockchain/ethereum.js +++ b/lib/blockchain/ethereum.js @@ -1,4 +1,4 @@ -const { utils: coinUtils } = require('lamassu-coins') +const { utils: coinUtils } = require('@lamassu/coins') const common = require('./common') diff --git a/lib/blockchain/install.js b/lib/blockchain/install.js index 5f2cb436..88d8906a 100644 --- a/lib/blockchain/install.js +++ b/lib/blockchain/install.js @@ -7,7 +7,7 @@ const makeDir = require('make-dir') const inquirer = require('inquirer') const _ = require('lodash/fp') -const { utils: coinUtils } = require('lamassu-coins') +const { utils: coinUtils } = require('@lamassu/coins') const options = require('../options') const settingsLoader = require('../new-settings-loader') const wallet = require('../wallet') diff --git a/lib/blockchain/litecoin.js b/lib/blockchain/litecoin.js index ead1f2f3..41b09967 100644 --- a/lib/blockchain/litecoin.js +++ b/lib/blockchain/litecoin.js @@ -1,6 +1,6 @@ const path = require('path') -const { utils: coinUtils } = require('lamassu-coins') +const { utils: coinUtils } = require('@lamassu/coins') const common = require('./common') diff --git a/lib/blockchain/monero.js b/lib/blockchain/monero.js index 2c529fa5..447b2722 100644 --- a/lib/blockchain/monero.js +++ b/lib/blockchain/monero.js @@ -1,6 +1,6 @@ const path = require('path') -const { utils } = require('lamassu-coins') +const { utils } = require('@lamassu/coins') const common = require('./common') diff --git a/lib/blockchain/zcash.js b/lib/blockchain/zcash.js index 24fbabea..52dfd496 100644 --- a/lib/blockchain/zcash.js +++ b/lib/blockchain/zcash.js @@ -1,6 +1,6 @@ const path = require('path') -const { utils: coinUtils } = require('lamassu-coins') +const { utils: coinUtils } = require('@lamassu/coins') const common = require('./common') diff --git a/lib/commission-math.js b/lib/commission-math.js index fe77b922..c29a6af9 100644 --- a/lib/commission-math.js +++ b/lib/commission-math.js @@ -1,6 +1,6 @@ const BN = require('./bn') const configManager = require('./new-config-manager') -const { utils: coinUtils } = require('lamassu-coins') +const { utils: coinUtils } = require('@lamassu/coins') function truncateCrypto (cryptoAtoms, cryptoCode) { const DECIMAL_PLACES = 6 diff --git a/lib/config-migration.js b/lib/config-migration.js index 6befaaf8..b6f16e10 100644 --- a/lib/config-migration.js +++ b/lib/config-migration.js @@ -1,6 +1,6 @@ const _ = require('lodash/fp') const uuid = require('uuid') -const { COINS } = require('lamassu-coins') +const { COINS } = require('@lamassu/coins') const { scopedValue } = require('./admin/config-manager') const GLOBAL = 'global' diff --git a/lib/new-admin/config/accounts.js b/lib/new-admin/config/accounts.js index c6a17b88..53b81b13 100644 --- a/lib/new-admin/config/accounts.js +++ b/lib/new-admin/config/accounts.js @@ -1,4 +1,4 @@ -const { COINS, ALL_CRYPTOS } = require('lamassu-coins') +const { COINS, ALL_CRYPTOS } = require('@lamassu/coins') const _ = require('lodash/fp') const { ALL } = require('../../plugins/common/ccxt') diff --git a/lib/new-admin/config/index.js b/lib/new-admin/config/index.js index 144db3c2..bb87e0c4 100644 --- a/lib/new-admin/config/index.js +++ b/lib/new-admin/config/index.js @@ -1,6 +1,6 @@ const _ = require('lodash/fp') -const { CRYPTO_CURRENCIES } = require('lamassu-coins') +const { CRYPTO_CURRENCIES } = require('@lamassu/coins') const { ACCOUNT_LIST: accounts } = require('./accounts') const countries = require('../../../data/countries.json') diff --git a/lib/new-admin/services/funding.js b/lib/new-admin/services/funding.js index 2e07e9ab..5b425d82 100644 --- a/lib/new-admin/services/funding.js +++ b/lib/new-admin/services/funding.js @@ -5,7 +5,7 @@ const configManager = require('../../new-config-manager') const wallet = require('../../wallet') const ticker = require('../../ticker') const txBatching = require('../../tx-batching') -const { utils: coinUtils } = require('lamassu-coins') +const { utils: coinUtils } = require('@lamassu/coins') function computeCrypto (cryptoCode, _balance) { const cryptoRec = coinUtils.getCryptoCurrency(cryptoCode) diff --git a/lib/new-admin/services/transactions.js b/lib/new-admin/services/transactions.js index cf4df340..5da959e8 100644 --- a/lib/new-admin/services/transactions.js +++ b/lib/new-admin/services/transactions.js @@ -3,7 +3,7 @@ const pgp = require('pg-promise')() const db = require('../../db') const BN = require('../../bn') -const { utils: coinUtils } = require('lamassu-coins') +const { utils: coinUtils } = require('@lamassu/coins') const machineLoader = require('../../machine-loader') const tx = require('../../tx') const cashInTx = require('../../cash-in/cash-in-tx') diff --git a/lib/notifier/utils.js b/lib/notifier/utils.js index 4f71c5ec..edcea3df 100644 --- a/lib/notifier/utils.js +++ b/lib/notifier/utils.js @@ -1,6 +1,6 @@ const _ = require('lodash/fp') const crypto = require('crypto') -const { utils: coinUtils } = require('lamassu-coins') +const { utils: coinUtils } = require('@lamassu/coins') const numeral = require('numeral') const prettyMs = require('pretty-ms') diff --git a/lib/plugins.js b/lib/plugins.js index 7603bbb4..8a11ebfc 100644 --- a/lib/plugins.js +++ b/lib/plugins.js @@ -30,7 +30,7 @@ const { CASSETTE_MAX_CAPACITY, CASH_OUT_DISPENSE_READY, CONFIRMATION_CODE } = re const notifier = require('./notifier') -const { utils: coinUtils } = require('lamassu-coins') +const { utils: coinUtils } = require('@lamassu/coins') const mapValuesWithKey = _.mapValues.convert({ cap: false diff --git a/lib/plugins/common/ccxt.js b/lib/plugins/common/ccxt.js index 9cb0824a..322e8313 100644 --- a/lib/plugins/common/ccxt.js +++ b/lib/plugins/common/ccxt.js @@ -1,4 +1,4 @@ -const { COINS } = require('lamassu-coins') +const { COINS } = require('@lamassu/coins') const _ = require('lodash/fp') const kraken = require('../exchange/kraken') diff --git a/lib/plugins/common/json-rpc.js b/lib/plugins/common/json-rpc.js index 463dc2fa..33174591 100644 --- a/lib/plugins/common/json-rpc.js +++ b/lib/plugins/common/json-rpc.js @@ -4,7 +4,7 @@ const uuid = require('uuid') const fs = require('fs') const _ = require('lodash/fp') const request = require('request-promise') -const { utils: coinUtils } = require('lamassu-coins') +const { utils: coinUtils } = require('@lamassu/coins') const options = require('../../options') diff --git a/lib/plugins/exchange/binanceus.js b/lib/plugins/exchange/binanceus.js index 78df0263..1804b1d7 100644 --- a/lib/plugins/exchange/binanceus.js +++ b/lib/plugins/exchange/binanceus.js @@ -1,4 +1,4 @@ -const { COINS } = require('lamassu-coins') +const { COINS } = require('@lamassu/coins') const _ = require('lodash/fp') const { ORDER_TYPES } = require('./consts') diff --git a/lib/plugins/exchange/bitstamp.js b/lib/plugins/exchange/bitstamp.js index 102ae6aa..f325f447 100644 --- a/lib/plugins/exchange/bitstamp.js +++ b/lib/plugins/exchange/bitstamp.js @@ -1,4 +1,4 @@ -const { COINS } = require('lamassu-coins') +const { COINS } = require('@lamassu/coins') const _ = require('lodash/fp') const { ORDER_TYPES } = require('./consts') diff --git a/lib/plugins/exchange/ccxt.js b/lib/plugins/exchange/ccxt.js index a0f5904e..2211b9c0 100644 --- a/lib/plugins/exchange/ccxt.js +++ b/lib/plugins/exchange/ccxt.js @@ -1,4 +1,4 @@ -const { toUnit } = require('lamassu-coins') +const { toUnit } = require('@lamassu/coins') const _ = require('lodash/fp') const ccxt = require('ccxt') diff --git a/lib/plugins/exchange/cex.js b/lib/plugins/exchange/cex.js index 8405996b..52f6ad71 100644 --- a/lib/plugins/exchange/cex.js +++ b/lib/plugins/exchange/cex.js @@ -1,4 +1,4 @@ -const { COINS } = require('lamassu-coins') +const { COINS } = require('@lamassu/coins') const _ = require('lodash/fp') const { ORDER_TYPES } = require('./consts') diff --git a/lib/plugins/exchange/ftx.js b/lib/plugins/exchange/ftx.js index a8cf8df3..c085ef96 100644 --- a/lib/plugins/exchange/ftx.js +++ b/lib/plugins/exchange/ftx.js @@ -1,4 +1,4 @@ -const { COINS } = require('lamassu-coins') +const { COINS } = require('@lamassu/coins') const _ = require('lodash/fp') const { ORDER_TYPES } = require('./consts') diff --git a/lib/plugins/exchange/itbit.js b/lib/plugins/exchange/itbit.js index 59d0e77d..dcaa3d83 100644 --- a/lib/plugins/exchange/itbit.js +++ b/lib/plugins/exchange/itbit.js @@ -1,7 +1,7 @@ const _ = require('lodash/fp') const { ORDER_TYPES } = require('./consts') -const { COINS } = require('lamassu-coins') +const { COINS } = require('@lamassu/coins') const ORDER_TYPE = ORDER_TYPES.LIMIT const { BTC, ETH, USDT } = COINS diff --git a/lib/plugins/exchange/kraken.js b/lib/plugins/exchange/kraken.js index 4be14bba..55eea444 100644 --- a/lib/plugins/exchange/kraken.js +++ b/lib/plugins/exchange/kraken.js @@ -1,7 +1,7 @@ const _ = require('lodash/fp') const { ORDER_TYPES } = require('./consts') -const { COINS } = require('lamassu-coins') +const { COINS } = require('@lamassu/coins') const ORDER_TYPE = ORDER_TYPES.MARKET const { BTC, BCH, DASH, ETH, LTC, ZEC, USDT, XMR } = COINS diff --git a/lib/plugins/ticker/bitpay.js b/lib/plugins/ticker/bitpay.js index fcec2379..f352131c 100644 --- a/lib/plugins/ticker/bitpay.js +++ b/lib/plugins/ticker/bitpay.js @@ -1,5 +1,5 @@ const axios = require('axios') -const { COINS } = require('lamassu-coins') +const { COINS } = require('@lamassu/coins') const BN = require('../../bn') const { BTC, BCH } = COINS diff --git a/lib/plugins/wallet/bitcoincashd/bitcoincashd.js b/lib/plugins/wallet/bitcoincashd/bitcoincashd.js index 76d23295..857da1d0 100644 --- a/lib/plugins/wallet/bitcoincashd/bitcoincashd.js +++ b/lib/plugins/wallet/bitcoincashd/bitcoincashd.js @@ -3,7 +3,7 @@ const jsonRpc = require('../../common/json-rpc') const BN = require('../../../bn') const E = require('../../../error') -const { utils: coinUtils } = require('lamassu-coins') +const { utils: coinUtils } = require('@lamassu/coins') const cryptoRec = coinUtils.getCryptoCurrency('BCH') const unitScale = cryptoRec.unitScale diff --git a/lib/plugins/wallet/bitcoind/bitcoind.js b/lib/plugins/wallet/bitcoind/bitcoind.js index 963a4d03..cd9b1df0 100644 --- a/lib/plugins/wallet/bitcoind/bitcoind.js +++ b/lib/plugins/wallet/bitcoind/bitcoind.js @@ -4,7 +4,7 @@ const jsonRpc = require('../../common/json-rpc') const BN = require('../../../bn') const E = require('../../../error') const logger = require('../../../logger') -const { utils: coinUtils } = require('lamassu-coins') +const { utils: coinUtils } = require('@lamassu/coins') const cryptoRec = coinUtils.getCryptoCurrency('BTC') const unitScale = cryptoRec.unitScale diff --git a/lib/plugins/wallet/dashd/dashd.js b/lib/plugins/wallet/dashd/dashd.js index 439b1fdd..4d759e0d 100644 --- a/lib/plugins/wallet/dashd/dashd.js +++ b/lib/plugins/wallet/dashd/dashd.js @@ -1,7 +1,7 @@ const _ = require('lodash/fp') const jsonRpc = require('../../common/json-rpc') -const { utils: coinUtils } = require('lamassu-coins') +const { utils: coinUtils } = require('@lamassu/coins') const BN = require('../../../bn') const E = require('../../../error') diff --git a/lib/plugins/wallet/geth/base.js b/lib/plugins/wallet/geth/base.js index a4abd4a6..48e0c4b4 100644 --- a/lib/plugins/wallet/geth/base.js +++ b/lib/plugins/wallet/geth/base.js @@ -5,7 +5,7 @@ const web3 = new Web3() const hdkey = require('ethereumjs-wallet/hdkey') const Tx = require('ethereumjs-tx') const util = require('ethereumjs-util') -const coins = require('lamassu-coins') +const coins = require('@lamassu/coins') const pify = require('pify') const BN = require('../../../bn') const ABI = require('../../tokens') diff --git a/lib/plugins/wallet/geth/geth.js b/lib/plugins/wallet/geth/geth.js index 40a44726..53266d90 100644 --- a/lib/plugins/wallet/geth/geth.js +++ b/lib/plugins/wallet/geth/geth.js @@ -1,6 +1,6 @@ const base = require('./base') -const { utils: coinUtils } = require('lamassu-coins') +const { utils: coinUtils } = require('@lamassu/coins') const cryptoRec = coinUtils.getCryptoCurrency('ETH') const defaultPort = cryptoRec.defaultPort diff --git a/lib/plugins/wallet/litecoind/litecoind.js b/lib/plugins/wallet/litecoind/litecoind.js index df92edeb..ab25d626 100644 --- a/lib/plugins/wallet/litecoind/litecoind.js +++ b/lib/plugins/wallet/litecoind/litecoind.js @@ -1,7 +1,7 @@ const _ = require('lodash/fp') const jsonRpc = require('../../common/json-rpc') -const { utils: coinUtils } = require('lamassu-coins') +const { utils: coinUtils } = require('@lamassu/coins') const BN = require('../../../bn') const E = require('../../../error') diff --git a/lib/plugins/wallet/lnd/lnd.js b/lib/plugins/wallet/lnd/lnd.js index 79bd0f3e..8f7d3e72 100644 --- a/lib/plugins/wallet/lnd/lnd.js +++ b/lib/plugins/wallet/lnd/lnd.js @@ -2,7 +2,7 @@ const lnd = require('lnd-async') const BN = require('../../../bn') const E = require('../../../error') -const { utils: coinUtils } = require('lamassu-coins') +const { utils: coinUtils } = require('@lamassu/coins') const options = require('../../../options') const _ = require('lodash/fp') diff --git a/lib/plugins/wallet/mock-wallet/mock-wallet.js b/lib/plugins/wallet/mock-wallet/mock-wallet.js index 5f566446..6d163cf8 100644 --- a/lib/plugins/wallet/mock-wallet/mock-wallet.js +++ b/lib/plugins/wallet/mock-wallet/mock-wallet.js @@ -2,7 +2,7 @@ const _ = require('lodash/fp') const BN = require('../../../bn') const E = require('../../../error') -const { utils: coinUtils } = require('lamassu-coins') +const { utils: coinUtils } = require('@lamassu/coins') const NAME = 'FakeWallet' diff --git a/lib/plugins/wallet/monerod/monerod.js b/lib/plugins/wallet/monerod/monerod.js index 3d070dee..971fda29 100644 --- a/lib/plugins/wallet/monerod/monerod.js +++ b/lib/plugins/wallet/monerod/monerod.js @@ -3,7 +3,7 @@ const path = require('path') const _ = require('lodash/fp') const jsonRpc = require('../../common/json-rpc') -const { COINS, utils } = require('lamassu-coins') +const { COINS, utils } = require('@lamassu/coins') const BN = require('../../../bn') const E = require('../../../error') diff --git a/lib/plugins/wallet/zcashd/zcashd.js b/lib/plugins/wallet/zcashd/zcashd.js index e5683cd8..26762d4f 100644 --- a/lib/plugins/wallet/zcashd/zcashd.js +++ b/lib/plugins/wallet/zcashd/zcashd.js @@ -2,7 +2,7 @@ const _ = require('lodash/fp') const pRetry = require('p-retry') const jsonRpc = require('../../common/json-rpc') -const { utils: coinUtils } = require('lamassu-coins') +const { utils: coinUtils } = require('@lamassu/coins') const BN = require('../../../bn') const E = require('../../../error') diff --git a/lib/sms.js b/lib/sms.js index 424df961..f395e58d 100644 --- a/lib/sms.js +++ b/lib/sms.js @@ -3,7 +3,7 @@ const dateFormat = require('dateformat') const ph = require('./plugin-helper') const argv = require('minimist')(process.argv.slice(2)) -const { utils: coinUtils } = require('lamassu-coins') +const { utils: coinUtils } = require('@lamassu/coins') const _ = require('lodash/fp') const smsNotices = require('./sms-notices') diff --git a/migrations/1623975493095-add-crypto-units-to-config.js b/migrations/1623975493095-add-crypto-units-to-config.js index 4453485b..95d87c07 100644 --- a/migrations/1623975493095-add-crypto-units-to-config.js +++ b/migrations/1623975493095-add-crypto-units-to-config.js @@ -1,6 +1,6 @@ const { migrationSaveConfig, loadLatest } = require('../lib/new-settings-loader') const { getCryptosFromWalletNamespace } = require('../lib/new-config-manager.js') -const { utils: coinUtils } = require('lamassu-coins') +const { utils: coinUtils } = require('@lamassu/coins') const _ = require('lodash/fp') exports.up = function (next) { diff --git a/new-lamassu-admin/package-lock.json b/new-lamassu-admin/package-lock.json index 99d52c11..b2019ab5 100644 --- a/new-lamassu-admin/package-lock.json +++ b/new-lamassu-admin/package-lock.json @@ -4393,6 +4393,31 @@ } } }, + "@lamassu/coins": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/@lamassu/coins/-/coins-1.0.0-beta.2.tgz", + "integrity": "sha512-ueed1wHVLKJW5fSihZlFix5Fr+ZPisRxtqZgw+AdHSmWSD70+iCqHDFLIW7ACSUhXLL6SRTrDms2WAoWu4lB+w==", + "requires": { + "bech32": "2.0.0", + "big-integer": "^1.6.48", + "bignumber.js": "^9.0.0", + "bitcoinjs-lib": "4.0.3", + "bitcore-lib-cash": "^8.25.25", + "bs58check": "^2.0.2", + "cashaddrjs": "~0.2.8", + "crypto-js": "^3.1.9-1", + "ethereumjs-icap": "^0.3.1", + "keccak256": "^1.0.2", + "lodash": "^4.17.10" + }, + "dependencies": { + "bech32": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/bech32/-/bech32-2.0.0.tgz", + "integrity": "sha512-LcknSilhIGatDAsY1ak2I8VtGaHNhgMSYVxFrGLXv+xLHytaKZKcaUJJUE7qmBr7h33o5YQwP55pMI0xmkpJwg==" + } + } + }, "@material-ui/core": { "version": "4.11.0", "resolved": "https://registry.npmjs.org/@material-ui/core/-/core-4.11.0.tgz", @@ -8287,6 +8312,11 @@ "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.48.tgz", "integrity": "sha512-j51egjPa7/i+RdiRuJbPdJ2FIUYYPhvYLjzoYbcMMm62ooO6F94fETG4MTs46zPAF9Brs04OajboA/qTGuz78w==" }, + "bigi": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/bigi/-/bigi-1.4.2.tgz", + "integrity": "sha1-nGZalfiLiwj8Bc/XMfVhhZ1yWCU=" + }, "bignumber.js": { "version": "9.0.0", "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.0.0.tgz", @@ -8306,6 +8336,18 @@ "file-uri-to-path": "1.0.0" } }, + "bip-schnorr": { + "version": "0.6.4", + "resolved": "https://registry.npmjs.org/bip-schnorr/-/bip-schnorr-0.6.4.tgz", + "integrity": "sha512-dNKw7Lea8B0wMIN4OjEmOk/Z5qUGqoPDY0P2QttLqGk1hmDPytLWW8PR5Pb6Vxy6CprcdEgfJpOjUu+ONQveyg==", + "requires": { + "bigi": "^1.4.2", + "ecurve": "^1.0.6", + "js-sha256": "^0.9.0", + "randombytes": "^2.1.0", + "safe-buffer": "^5.2.1" + } + }, "bip32": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/bip32/-/bip32-1.0.4.tgz", @@ -8354,6 +8396,54 @@ "wif": "^2.0.1" } }, + "bitcore-lib": { + "version": "8.25.25", + "resolved": "https://registry.npmjs.org/bitcore-lib/-/bitcore-lib-8.25.25.tgz", + "integrity": "sha512-H6qNCVl4M8/MglXhvc04mmeus1d6nrmqTJGQ+xezJLvL7hs7R3dyBPtOqSP3YSw0iq/GWspMd8f5OOlyXVipJQ==", + "requires": { + "bech32": "=2.0.0", + "bip-schnorr": "=0.6.4", + "bn.js": "=4.11.8", + "bs58": "^4.0.1", + "buffer-compare": "=1.1.1", + "elliptic": "^6.5.3", + "inherits": "=2.0.1", + "lodash": "^4.17.20" + }, + "dependencies": { + "bech32": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/bech32/-/bech32-2.0.0.tgz", + "integrity": "sha512-LcknSilhIGatDAsY1ak2I8VtGaHNhgMSYVxFrGLXv+xLHytaKZKcaUJJUE7qmBr7h33o5YQwP55pMI0xmkpJwg==" + }, + "inherits": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", + "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=" + } + } + }, + "bitcore-lib-cash": { + "version": "8.25.25", + "resolved": "https://registry.npmjs.org/bitcore-lib-cash/-/bitcore-lib-cash-8.25.25.tgz", + "integrity": "sha512-p/KEBlCKNTTxOZFJLt/bA1b7pQ1JFapHkoWL8mSLxfz9wTK4ScN74zpbBwhG+O7dk7XMo8iRrKigvanmkce35g==", + "requires": { + "bitcore-lib": "^8.25.25", + "bn.js": "=4.11.8", + "bs58": "^4.0.1", + "buffer-compare": "=1.1.1", + "elliptic": "^6.5.3", + "inherits": "=2.0.1", + "lodash": "^4.17.20" + }, + "dependencies": { + "inherits": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", + "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=" + } + } + }, "bluebird": { "version": "3.5.3", "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.3.tgz", @@ -8765,6 +8855,11 @@ } } }, + "buffer-compare": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/buffer-compare/-/buffer-compare-1.1.1.tgz", + "integrity": "sha1-W+e+hTr4kZjR9N3AkNHWakiu9ZY=" + }, "buffer-from": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", @@ -11068,6 +11163,15 @@ "safer-buffer": "^2.1.0" } }, + "ecurve": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/ecurve/-/ecurve-1.0.6.tgz", + "integrity": "sha512-/BzEjNfiSuB7jIWKcS/z8FK9jNjmEWvUV2YZ4RLSmcDtP7Lq0m6FvDuSnJpBlDpGRpfRQeTLGLBI8H+kEv0r+w==", + "requires": { + "bigi": "^1.1.0", + "safe-buffer": "^5.0.1" + } + }, "ee-first": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", @@ -16891,6 +16995,11 @@ "resolved": "https://registry.npmjs.org/js-cookie/-/js-cookie-2.2.1.tgz", "integrity": "sha512-HvdH2LzI/EAZcUwA8+0nKNtWHqS+ZmijLA30RwZA0bo7ToCckjK5MkGhjED9KoRcXO6BaGI3I9UIzSA1FKFPOQ==" }, + "js-sha256": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/js-sha256/-/js-sha256-0.9.0.tgz", + "integrity": "sha512-sga3MHh9sgQN2+pJ9VYZ+1LPwXOxuBJBA5nrR5/ofPfuiJBE2hnjsaN8se8JznOmGLN2p49Pe5U/ttafcs/apA==" + }, "js-tokens": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", @@ -17263,29 +17372,6 @@ "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", "dev": true }, - "lamassu-coins": { - "version": "git+https://github.com/lamassu/lamassu-coins.git#f80395e4bab0fccc860de166c97e981ca3ae66a6", - "from": "git+https://github.com/lamassu/lamassu-coins.git", - "requires": { - "bech32": "2.0.0", - "big-integer": "^1.6.48", - "bignumber.js": "^9.0.0", - "bitcoinjs-lib": "4.0.3", - "bs58check": "^2.0.2", - "cashaddrjs": "~0.2.8", - "crypto-js": "^3.1.9-1", - "ethereumjs-icap": "^0.3.1", - "keccak256": "^1.0.2", - "lodash": "^4.17.10" - }, - "dependencies": { - "bech32": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/bech32/-/bech32-2.0.0.tgz", - "integrity": "sha512-LcknSilhIGatDAsY1ak2I8VtGaHNhgMSYVxFrGLXv+xLHytaKZKcaUJJUE7qmBr7h33o5YQwP55pMI0xmkpJwg==" - } - } - }, "language-subtag-registry": { "version": "0.3.21", "resolved": "https://registry.npmjs.org/language-subtag-registry/-/language-subtag-registry-0.3.21.tgz", diff --git a/new-lamassu-admin/package.json b/new-lamassu-admin/package.json index aa4c0382..cdefcd0f 100644 --- a/new-lamassu-admin/package.json +++ b/new-lamassu-admin/package.json @@ -31,7 +31,7 @@ "graphql-tag": "^2.10.3", "jss-plugin-extend": "^10.0.0", "jszip": "^3.6.0", - "lamassu-coins": "git+https://github.com/lamassu/lamassu-coins.git", + "@lamassu/coins": "1.0.0-beta.2", "libphonenumber-js": "^1.7.50", "match-sorter": "^4.2.0", "pretty-ms": "^2.1.0", diff --git a/new-lamassu-admin/src/pages/Blacklist/Blacklist.js b/new-lamassu-admin/src/pages/Blacklist/Blacklist.js index b4c53047..e0ac4f42 100644 --- a/new-lamassu-admin/src/pages/Blacklist/Blacklist.js +++ b/new-lamassu-admin/src/pages/Blacklist/Blacklist.js @@ -1,9 +1,9 @@ import { useQuery, useMutation } from '@apollo/react-hooks' +import { utils as coinUtils } from '@lamassu/coins' import { Box, Dialog, DialogContent, DialogActions } from '@material-ui/core' import Grid from '@material-ui/core/Grid' import { makeStyles } from '@material-ui/core/styles' import gql from 'graphql-tag' -import { utils as coinUtils } from 'lamassu-coins' import * as R from 'ramda' import React, { useState } from 'react' diff --git a/new-lamassu-admin/src/pages/Customers/components/TransactionsList.js b/new-lamassu-admin/src/pages/Customers/components/TransactionsList.js index ea8d765e..b2f9e9e2 100644 --- a/new-lamassu-admin/src/pages/Customers/components/TransactionsList.js +++ b/new-lamassu-admin/src/pages/Customers/components/TransactionsList.js @@ -1,7 +1,7 @@ +import { utils as coinUtils } from '@lamassu/coins' import { makeStyles, Box } from '@material-ui/core' import BigNumber from 'bignumber.js' import classnames from 'classnames' -import { utils as coinUtils } from 'lamassu-coins' import * as R from 'ramda' import React from 'react' diff --git a/new-lamassu-admin/src/pages/Funding.js b/new-lamassu-admin/src/pages/Funding.js index 57880205..cf59519f 100644 --- a/new-lamassu-admin/src/pages/Funding.js +++ b/new-lamassu-admin/src/pages/Funding.js @@ -1,10 +1,10 @@ import { useQuery } from '@apollo/react-hooks' +import { utils as coinUtils } from '@lamassu/coins' import { makeStyles } from '@material-ui/core/styles' import BigNumber from 'bignumber.js' import classnames from 'classnames' import { format } from 'date-fns/fp' import gql from 'graphql-tag' -import { utils as coinUtils } from 'lamassu-coins' import QRCode from 'qrcode.react' import * as R from 'ramda' import React, { useState } from 'react' diff --git a/new-lamassu-admin/src/pages/Machines/MachineComponents/Transactions/Transactions.js b/new-lamassu-admin/src/pages/Machines/MachineComponents/Transactions/Transactions.js index 0b25d575..9b1bac05 100644 --- a/new-lamassu-admin/src/pages/Machines/MachineComponents/Transactions/Transactions.js +++ b/new-lamassu-admin/src/pages/Machines/MachineComponents/Transactions/Transactions.js @@ -1,8 +1,8 @@ import { useQuery, useLazyQuery } from '@apollo/react-hooks' +import { utils as coinUtils } from '@lamassu/coins' import { makeStyles } from '@material-ui/core' import BigNumber from 'bignumber.js' import gql from 'graphql-tag' -import { utils as coinUtils } from 'lamassu-coins' import * as R from 'ramda' import React, { useEffect, useState } from 'react' diff --git a/new-lamassu-admin/src/pages/Maintenance/CashboxHistory.js b/new-lamassu-admin/src/pages/Maintenance/CashboxHistory.js index c84d4b82..5c36e8ed 100644 --- a/new-lamassu-admin/src/pages/Maintenance/CashboxHistory.js +++ b/new-lamassu-admin/src/pages/Maintenance/CashboxHistory.js @@ -257,7 +257,7 @@ const CashboxHistory = ({ machines, currency }) => { name="cashboxHistory" elements={elements} data={batches} - emptyText="No cashbox batches so far" + emptyText="No cash box batches so far" /> ) } diff --git a/new-lamassu-admin/src/pages/Transactions/DetailsCard.js b/new-lamassu-admin/src/pages/Transactions/DetailsCard.js index a0a242f6..5322a306 100644 --- a/new-lamassu-admin/src/pages/Transactions/DetailsCard.js +++ b/new-lamassu-admin/src/pages/Transactions/DetailsCard.js @@ -1,4 +1,5 @@ import { useLazyQuery, useMutation } from '@apollo/react-hooks' +import { utils as coinUtils } from '@lamassu/coins' import { makeStyles, Box } from '@material-ui/core' import BigNumber from 'bignumber.js' import classNames from 'classnames' @@ -6,7 +7,6 @@ import { add, differenceInYears, format, sub, parse } from 'date-fns/fp' import FileSaver from 'file-saver' import gql from 'graphql-tag' import JSZip from 'jszip' -import { utils as coinUtils } from 'lamassu-coins' import * as R from 'ramda' import React, { memo, useState } from 'react' diff --git a/new-lamassu-admin/src/pages/Transactions/Transactions.js b/new-lamassu-admin/src/pages/Transactions/Transactions.js index aae656e5..d8ba5c6b 100644 --- a/new-lamassu-admin/src/pages/Transactions/Transactions.js +++ b/new-lamassu-admin/src/pages/Transactions/Transactions.js @@ -1,8 +1,8 @@ import { useQuery } from '@apollo/react-hooks' +import { utils as coinUtils } from '@lamassu/coins' import { makeStyles } from '@material-ui/core' import BigNumber from 'bignumber.js' import gql from 'graphql-tag' -import { utils as coinUtils } from 'lamassu-coins' import * as R from 'ramda' import React, { useEffect, useState } from 'react' import { useHistory } from 'react-router-dom' diff --git a/new-lamassu-admin/src/pages/Wallet/AdvancedWallet.js b/new-lamassu-admin/src/pages/Wallet/AdvancedWallet.js index 9bed8466..d8ec32e8 100644 --- a/new-lamassu-admin/src/pages/Wallet/AdvancedWallet.js +++ b/new-lamassu-admin/src/pages/Wallet/AdvancedWallet.js @@ -1,6 +1,6 @@ import { useQuery, useMutation } from '@apollo/react-hooks' +import { utils as coinUtils } from '@lamassu/coins' import gql from 'graphql-tag' -import { utils as coinUtils } from 'lamassu-coins' import * as R from 'ramda' import React, { useState } from 'react' diff --git a/new-lamassu-admin/src/pages/Wallet/Wizard.js b/new-lamassu-admin/src/pages/Wallet/Wizard.js index 44a13191..4787f8db 100644 --- a/new-lamassu-admin/src/pages/Wallet/Wizard.js +++ b/new-lamassu-admin/src/pages/Wallet/Wizard.js @@ -1,4 +1,4 @@ -import { utils as coinUtils } from 'lamassu-coins' +import { utils as coinUtils } from '@lamassu/coins' import * as R from 'ramda' import React, { useState } from 'react' import * as Yup from 'yup' diff --git a/new-lamassu-admin/src/pages/Wizard/components/Wallet/AllSet.js b/new-lamassu-admin/src/pages/Wizard/components/Wallet/AllSet.js index 50f8e4d8..f2653ffd 100644 --- a/new-lamassu-admin/src/pages/Wizard/components/Wallet/AllSet.js +++ b/new-lamassu-admin/src/pages/Wizard/components/Wallet/AllSet.js @@ -1,7 +1,7 @@ import { useQuery, useMutation } from '@apollo/react-hooks' +import { utils as coinUtils } from '@lamassu/coins' import { makeStyles } from '@material-ui/core' import gql from 'graphql-tag' -import { utils as coinUtils } from 'lamassu-coins' import * as R from 'ramda' import React, { useState } from 'react' diff --git a/package-lock.json b/package-lock.json index 5092830b..7e40ef8a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "lamassu-server", - "version": "7.6.0-beta.0", + "version": "8.0.0-beta.0", "lockfileVersion": 1, "requires": true, "dependencies": { @@ -3212,6 +3212,86 @@ "resolved": "https://registry.npmjs.org/@josephg/resolvable/-/resolvable-1.0.1.tgz", "integrity": "sha512-CtzORUwWTTOTqfVtHaKRJ0I1kNQd1bpn3sUh8I3nJDVY+5/M/Oe1DnEWzPQvqq/xPIIkzzzIP7mfCoAjFRvDhg==" }, + "@lamassu/coins": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/@lamassu/coins/-/coins-1.0.0-beta.2.tgz", + "integrity": "sha512-ueed1wHVLKJW5fSihZlFix5Fr+ZPisRxtqZgw+AdHSmWSD70+iCqHDFLIW7ACSUhXLL6SRTrDms2WAoWu4lB+w==", + "requires": { + "bech32": "2.0.0", + "big-integer": "^1.6.48", + "bignumber.js": "^9.0.0", + "bitcoinjs-lib": "4.0.3", + "bitcore-lib-cash": "^8.25.25", + "bs58check": "^2.0.2", + "cashaddrjs": "~0.2.8", + "crypto-js": "^3.1.9-1", + "ethereumjs-icap": "^0.3.1", + "keccak256": "^1.0.2", + "lodash": "^4.17.10" + }, + "dependencies": { + "bech32": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/bech32/-/bech32-2.0.0.tgz", + "integrity": "sha512-LcknSilhIGatDAsY1ak2I8VtGaHNhgMSYVxFrGLXv+xLHytaKZKcaUJJUE7qmBr7h33o5YQwP55pMI0xmkpJwg==" + }, + "big-integer": { + "version": "1.6.51", + "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.51.tgz", + "integrity": "sha512-GPEid2Y9QU1Exl1rpO9B2IPJGHPSupF5GnVIP0blYvNOMer2bTvSWs1jGOUg04hTmu67nmLsQ9TBo1puaotBHg==" + }, + "bip32": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/bip32/-/bip32-1.0.4.tgz", + "integrity": "sha512-8T21eLWylZETolyqCPgia+MNp+kY37zFr7PTFDTPObHeNi9JlfG4qGIh8WzerIJidtwoK+NsWq2I5i66YfHoIw==", + "requires": { + "bs58check": "^2.1.1", + "create-hash": "^1.2.0", + "create-hmac": "^1.1.7", + "tiny-secp256k1": "^1.0.0", + "typeforce": "^1.11.5", + "wif": "^2.0.6" + } + }, + "bitcoinjs-lib": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/bitcoinjs-lib/-/bitcoinjs-lib-4.0.3.tgz", + "integrity": "sha512-cb5t55MYUpwQi095J+u6eyltgIU7lbhZfC6+annstncDhfH4cyctW5jmU/tac7NonZZFYH7DktWnDxUm9AWWDQ==", + "requires": { + "bech32": "^1.1.2", + "bip32": "^1.0.0", + "bip66": "^1.1.0", + "bitcoin-ops": "^1.4.0", + "bs58check": "^2.0.0", + "create-hash": "^1.1.0", + "create-hmac": "^1.1.3", + "merkle-lib": "^2.0.10", + "pushdata-bitcoin": "^1.0.1", + "randombytes": "^2.0.1", + "safe-buffer": "^5.1.1", + "tiny-secp256k1": "^1.0.0", + "typeforce": "^1.11.3", + "varuint-bitcoin": "^1.0.4", + "wif": "^2.0.1" + }, + "dependencies": { + "bech32": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/bech32/-/bech32-1.1.4.tgz", + "integrity": "sha512-s0IrSOzLlbvX7yp4WBfPITzpAU8sqQcpsmwXDiKwrG4r491vwCO/XpejasRNl0piBMe/DvP4Tz0mIS/X1DPJBQ==" + } + } + }, + "cashaddrjs": { + "version": "0.2.9", + "resolved": "https://registry.npmjs.org/cashaddrjs/-/cashaddrjs-0.2.9.tgz", + "integrity": "sha512-DhJF4iAH0/RM3UjHDHKRxzs09YGL9px+oTyizzydanhC7jTyM2aJ+aLKA96vZGTTWayvvr2iDF2l13lpqXiRFg==", + "requires": { + "big-integer": "^1.6.34" + } + } + } + }, "@ledgerhq/cryptoassets": { "version": "5.53.0", "resolved": "https://registry.npmjs.org/@ledgerhq/cryptoassets/-/cryptoassets-5.53.0.tgz", @@ -6226,6 +6306,18 @@ "file-uri-to-path": "1.0.0" } }, + "bip-schnorr": { + "version": "0.6.4", + "resolved": "https://registry.npmjs.org/bip-schnorr/-/bip-schnorr-0.6.4.tgz", + "integrity": "sha512-dNKw7Lea8B0wMIN4OjEmOk/Z5qUGqoPDY0P2QttLqGk1hmDPytLWW8PR5Pb6Vxy6CprcdEgfJpOjUu+ONQveyg==", + "requires": { + "bigi": "^1.4.2", + "ecurve": "^1.0.6", + "js-sha256": "^0.9.0", + "randombytes": "^2.1.0", + "safe-buffer": "^5.2.1" + } + }, "bip32": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/bip32/-/bip32-2.0.5.tgz", @@ -6332,6 +6424,54 @@ } } }, + "bitcore-lib": { + "version": "8.25.25", + "resolved": "https://registry.npmjs.org/bitcore-lib/-/bitcore-lib-8.25.25.tgz", + "integrity": "sha512-H6qNCVl4M8/MglXhvc04mmeus1d6nrmqTJGQ+xezJLvL7hs7R3dyBPtOqSP3YSw0iq/GWspMd8f5OOlyXVipJQ==", + "requires": { + "bech32": "=2.0.0", + "bip-schnorr": "=0.6.4", + "bn.js": "=4.11.8", + "bs58": "^4.0.1", + "buffer-compare": "=1.1.1", + "elliptic": "^6.5.3", + "inherits": "=2.0.1", + "lodash": "^4.17.20" + }, + "dependencies": { + "bech32": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/bech32/-/bech32-2.0.0.tgz", + "integrity": "sha512-LcknSilhIGatDAsY1ak2I8VtGaHNhgMSYVxFrGLXv+xLHytaKZKcaUJJUE7qmBr7h33o5YQwP55pMI0xmkpJwg==" + }, + "inherits": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", + "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=" + } + } + }, + "bitcore-lib-cash": { + "version": "8.25.25", + "resolved": "https://registry.npmjs.org/bitcore-lib-cash/-/bitcore-lib-cash-8.25.25.tgz", + "integrity": "sha512-p/KEBlCKNTTxOZFJLt/bA1b7pQ1JFapHkoWL8mSLxfz9wTK4ScN74zpbBwhG+O7dk7XMo8iRrKigvanmkce35g==", + "requires": { + "bitcore-lib": "^8.25.25", + "bn.js": "=4.11.8", + "bs58": "^4.0.1", + "buffer-compare": "=1.1.1", + "elliptic": "^6.5.3", + "inherits": "=2.0.1", + "lodash": "^4.17.20" + }, + "dependencies": { + "inherits": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz", + "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=" + } + } + }, "bitgo": { "version": "11.15.0", "resolved": "https://registry.npmjs.org/bitgo/-/bitgo-11.15.0.tgz", @@ -7052,6 +7192,11 @@ "resolved": "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz", "integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==" }, + "buffer-compare": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/buffer-compare/-/buffer-compare-1.1.1.tgz", + "integrity": "sha1-W+e+hTr4kZjR9N3AkNHWakiu9ZY=" + }, "buffer-crc32": { "version": "0.2.13", "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", @@ -14282,6 +14427,11 @@ "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-3.6.1.tgz", "integrity": "sha512-Frdq2+tRRGLQUIQOgsIGSCd1VePCS2fsddTG5dTCqR0JHgltXWfsxnY0gIXPoMeRmdom6Oyq+UMOFg5suduOjQ==" }, + "js-sha256": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/js-sha256/-/js-sha256-0.9.0.tgz", + "integrity": "sha512-sga3MHh9sgQN2+pJ9VYZ+1LPwXOxuBJBA5nrR5/ofPfuiJBE2hnjsaN8se8JznOmGLN2p49Pe5U/ttafcs/apA==" + }, "js-sha3": { "version": "0.8.0", "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", @@ -14655,84 +14805,6 @@ "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", "dev": true }, - "lamassu-coins": { - "version": "git+https://github.com/lamassu/lamassu-coins.git#de843fb210ad8adfa29a0441796125fcb0ab3b67", - "from": "git+https://github.com/lamassu/lamassu-coins.git", - "requires": { - "bech32": "2.0.0", - "big-integer": "^1.6.48", - "bignumber.js": "^9.0.0", - "bitcoinjs-lib": "4.0.3", - "bs58check": "^2.0.2", - "cashaddrjs": "~0.2.8", - "crypto-js": "^3.1.9-1", - "ethereumjs-icap": "^0.3.1", - "keccak256": "^1.0.2", - "lodash": "^4.17.10" - }, - "dependencies": { - "bech32": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/bech32/-/bech32-2.0.0.tgz", - "integrity": "sha512-LcknSilhIGatDAsY1ak2I8VtGaHNhgMSYVxFrGLXv+xLHytaKZKcaUJJUE7qmBr7h33o5YQwP55pMI0xmkpJwg==" - }, - "big-integer": { - "version": "1.6.51", - "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.51.tgz", - "integrity": "sha512-GPEid2Y9QU1Exl1rpO9B2IPJGHPSupF5GnVIP0blYvNOMer2bTvSWs1jGOUg04hTmu67nmLsQ9TBo1puaotBHg==" - }, - "bip32": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/bip32/-/bip32-1.0.4.tgz", - "integrity": "sha512-8T21eLWylZETolyqCPgia+MNp+kY37zFr7PTFDTPObHeNi9JlfG4qGIh8WzerIJidtwoK+NsWq2I5i66YfHoIw==", - "requires": { - "bs58check": "^2.1.1", - "create-hash": "^1.2.0", - "create-hmac": "^1.1.7", - "tiny-secp256k1": "^1.0.0", - "typeforce": "^1.11.5", - "wif": "^2.0.6" - } - }, - "bitcoinjs-lib": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/bitcoinjs-lib/-/bitcoinjs-lib-4.0.3.tgz", - "integrity": "sha512-cb5t55MYUpwQi095J+u6eyltgIU7lbhZfC6+annstncDhfH4cyctW5jmU/tac7NonZZFYH7DktWnDxUm9AWWDQ==", - "requires": { - "bech32": "^1.1.2", - "bip32": "^1.0.0", - "bip66": "^1.1.0", - "bitcoin-ops": "^1.4.0", - "bs58check": "^2.0.0", - "create-hash": "^1.1.0", - "create-hmac": "^1.1.3", - "merkle-lib": "^2.0.10", - "pushdata-bitcoin": "^1.0.1", - "randombytes": "^2.0.1", - "safe-buffer": "^5.1.1", - "tiny-secp256k1": "^1.0.0", - "typeforce": "^1.11.3", - "varuint-bitcoin": "^1.0.4", - "wif": "^2.0.1" - }, - "dependencies": { - "bech32": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/bech32/-/bech32-1.1.4.tgz", - "integrity": "sha512-s0IrSOzLlbvX7yp4WBfPITzpAU8sqQcpsmwXDiKwrG4r491vwCO/XpejasRNl0piBMe/DvP4Tz0mIS/X1DPJBQ==" - } - } - }, - "cashaddrjs": { - "version": "0.2.9", - "resolved": "https://registry.npmjs.org/cashaddrjs/-/cashaddrjs-0.2.9.tgz", - "integrity": "sha512-DhJF4iAH0/RM3UjHDHKRxzs09YGL9px+oTyizzydanhC7jTyM2aJ+aLKA96vZGTTWayvvr2iDF2l13lpqXiRFg==", - "requires": { - "big-integer": "^1.6.34" - } - } - } - }, "latest-version": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-5.1.0.tgz", diff --git a/package.json b/package.json index c66beb2f..f8795919 100644 --- a/package.json +++ b/package.json @@ -2,7 +2,7 @@ "name": "lamassu-server", "description": "bitcoin atm client server protocol module", "keywords": [], - "version": "7.6.0-beta.0", + "version": "8.0.0-beta.0", "license": "Unlicense", "author": "Lamassu (https://lamassu.is)", "dependencies": { @@ -45,7 +45,7 @@ "helmet": "^3.8.1", "inquirer": "^5.2.0", "json2csv": "^5.0.3", - "lamassu-coins": "git+https://github.com/lamassu/lamassu-coins.git", + "@lamassu/coins": "1.0.0-beta.2", "libphonenumber-js": "^1.7.38", "lnd-async": "^1.8.0", "lodash": "^4.17.10", @@ -110,7 +110,8 @@ "lamassu-devices": "./bin/lamassu-devices", "lamassu-operator": "./bin/lamassu-operator", "lamassu-coinatmradar": "./bin/lamassu-coinatmradar", - "lamassu-eth-recovery": "./bin/lamassu-eth-recovery" + "lamassu-eth-recovery": "./bin/lamassu-eth-recovery", + "lamassu-update-cassettes": "./bin/lamassu-update-cassettes" }, "scripts": { "start": "node bin/lamassu-server", diff --git a/public/asset-manifest.json b/public/asset-manifest.json index f1bd0d2d..6c91fab7 100644 --- a/public/asset-manifest.json +++ b/public/asset-manifest.json @@ -1,13 +1,13 @@ { "files": { - "main.js": "/static/js/main.9f453d8c.chunk.js", - "main.js.map": "/static/js/main.9f453d8c.chunk.js.map", + "main.js": "/static/js/main.e72ecd89.chunk.js", + "main.js.map": "/static/js/main.e72ecd89.chunk.js.map", "runtime-main.js": "/static/js/runtime-main.5b925903.js", "runtime-main.js.map": "/static/js/runtime-main.5b925903.js.map", - "static/js/2.2655a290.chunk.js": "/static/js/2.2655a290.chunk.js", - "static/js/2.2655a290.chunk.js.map": "/static/js/2.2655a290.chunk.js.map", + "static/js/2.c8f44ac8.chunk.js": "/static/js/2.c8f44ac8.chunk.js", + "static/js/2.c8f44ac8.chunk.js.map": "/static/js/2.c8f44ac8.chunk.js.map", "index.html": "/index.html", - "static/js/2.2655a290.chunk.js.LICENSE.txt": "/static/js/2.2655a290.chunk.js.LICENSE.txt", + "static/js/2.c8f44ac8.chunk.js.LICENSE.txt": "/static/js/2.c8f44ac8.chunk.js.LICENSE.txt", "static/media/3-cassettes-open-1-left.d6d9aa73.svg": "/static/media/3-cassettes-open-1-left.d6d9aa73.svg", "static/media/3-cassettes-open-2-left.a9ee8d4c.svg": "/static/media/3-cassettes-open-2-left.a9ee8d4c.svg", "static/media/3-cassettes-open-3-left.08fed660.svg": "/static/media/3-cassettes-open-3-left.08fed660.svg", @@ -153,7 +153,7 @@ }, "entrypoints": [ "static/js/runtime-main.5b925903.js", - "static/js/2.2655a290.chunk.js", - "static/js/main.9f453d8c.chunk.js" + "static/js/2.c8f44ac8.chunk.js", + "static/js/main.e72ecd89.chunk.js" ] } \ No newline at end of file diff --git a/public/index.html b/public/index.html index 072b3bff..c5577683 100644 --- a/public/index.html +++ b/public/index.html @@ -1 +1 @@ -
=0;)(r=i[o])&&(a&&4^r.compareDocumentPosition(a)&&a.parentNode.insertBefore(r,a),a=r);return this},sort:function(e){function t(t,n){return t&&n?e(t.__data__,n.__data__):!t-!n}e||(e=zt);for(var n=this._groups,r=n.length,i=new Array(r),o=0;o e.r&&(e.r=e[t].r)}function s(){if(t){var r,i,o=t.length;for(n=new Array(o),r=0;r >1)+f+e+O+E.slice(x);break;default:e=E+f+e+O}return u(e)}return m=void 0===m?6:/[gprs]/.test(b)?Math.max(1,Math.min(21,m)):Math.max(0,Math.min(20,m)),O.toString=function(){return e+""},O}return{format:d,formatPrefix:function(e,t){var n=d(((e=Vc(e)).type="f",e)),r=3*Math.max(-8,Math.min(8,Math.floor(zc(t)/3))),i=Math.pow(10,-r),o=el[8+r/3];return function(e){return n(i*e)+o}}}};function nl(e){return qc=tl(e),Yc=qc.format,Kc=qc.formatPrefix,qc}nl({thousands:",",grouping:[3],currency:["$",""]});var rl=function(e){return Math.max(0,-zc(Math.abs(e)))},il=function(e,t){return Math.max(0,3*Math.max(-8,Math.min(8,Math.floor(zc(t)/3)))-zc(Math.abs(e)))},ol=function(e,t){return e=Math.abs(e),t=Math.abs(t)-e,Math.max(0,zc(t)-zc(e))+1},al=1e-6,ul=1e-12,sl=Math.PI,cl=sl/2,ll=sl/4,dl=2*sl,fl=180/sl,hl=sl/180,pl=Math.abs,gl=Math.atan,ml=Math.atan2,vl=Math.cos,bl=Math.ceil,yl=Math.exp,_l=(Math.floor,Math.hypot),wl=Math.log,Sl=Math.pow,Ol=Math.sin,$l=Math.sign||function(e){return e>0?1:e<0?-1:0},xl=Math.sqrt,El=Math.tan;function Tl(e){return e>1?0:e<-1?sl:Math.acos(e)}function Cl(e){return e>1?cl:e<-1?-cl:Math.asin(e)}function Nl(e){return(e=Ol(e/2))*e}function Al(){}function Ml(e,t){e&&Pl.hasOwnProperty(e.type)&&Pl[e.type](e,t)}var kl={Feature:function(e,t){Ml(e.geometry,t)},FeatureCollection:function(e,t){for(var n=e.features,r=-1,i=n.length;++r=0?1:-1,i=r*n,o=vl(t=(t*=hl)/2+ll),a=Ol(t),u=Ul*a,s=Fl*o+u*vl(i),c=u*r*Ol(i);zl.add(ml(c,s)),Ll=e,Fl=o,Ul=a}var Kl,Ql,Zl,Xl,Jl,ed,td,nd,rd,id,od,ad=function(e){return Hl=new M,Bl(e,Vl),2*Hl};function ud(e){return[ml(e[1],e[0]),Cl(e[2])]}function sd(e){var t=e[0],n=e[1],r=vl(n);return[r*vl(t),r*Ol(t),Ol(n)]}function cd(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]}function ld(e,t){return[e[1]*t[2]-e[2]*t[1],e[2]*t[0]-e[0]*t[2],e[0]*t[1]-e[1]*t[0]]}function dd(e,t){e[0]+=t[0],e[1]+=t[1],e[2]+=t[2]}function fd(e,t){return[e[0]*t,e[1]*t,e[2]*t]}function hd(e){var t=xl(e[0]*e[0]+e[1]*e[1]+e[2]*e[2]);e[0]/=t,e[1]/=t,e[2]/=t}var pd={point:gd,lineStart:vd,lineEnd:bd,polygonStart:function(){pd.point=yd,pd.lineStart=_d,pd.lineEnd=wd,rd=new M,Vl.polygonStart()},polygonEnd:function(){Vl.polygonEnd(),pd.point=gd,pd.lineStart=vd,pd.lineEnd=bd,zl<0?(Kl=-(Zl=180),Ql=-(Xl=90)):rd>al?Xl=90:rd<-1e-6&&(Ql=-90),od[0]=Kl,od[1]=Zl},sphere:function(){Kl=-(Zl=180),Ql=-(Xl=90)}};function gd(e,t){id.push(od=[Kl=e,Zl=e]),t >>1;c[g] 0?r[i-1]:t[0],i=0&&f=c-n?(xu(e,t,s,r),xu(e,t,n,c-1)):(xu(e,t,n,c-1),xu(e,t,s,r))}}function Eu(e,t,n){var r=e[t];e[t]=e[n],e[n]=r}function Tu(e){return e[0]}function Cu(e){return e[1]}var Nu=1e-6,Au=function(){function e(){Object(N.a)(this,e),this._x0=this._y0=this._x1=this._y1=null,this._=""}return Object(A.a)(e,[{key:"moveTo",value:function(e,t){this._+="M".concat(this._x0=this._x1=+e,",").concat(this._y0=this._y1=+t)}},{key:"closePath",value:function(){null!==this._x1&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")}},{key:"lineTo",value:function(e,t){this._+="L".concat(this._x1=+e,",").concat(this._y1=+t)}},{key:"arc",value:function(e,t,n){var r=(e=+e)+(n=+n),i=t=+t;if(n<0)throw new Error("negative radius");null===this._x1?this._+="M".concat(r,",").concat(i):(Math.abs(this._x1-r)>Nu||Math.abs(this._y1-i)>Nu)&&(this._+="L"+r+","+i),n&&(this._+="A".concat(n,",").concat(n,",0,1,1,").concat(e-n,",").concat(t,"A").concat(n,",").concat(n,",0,1,1,").concat(this._x1=r,",").concat(this._y1=i))}},{key:"rect",value:function(e,t,n,r){this._+="M".concat(this._x0=this._x1=+e,",").concat(this._y0=this._y1=+t,"h").concat(+n,"v").concat(+r,"h").concat(-n,"Z")}},{key:"value",value:function(){return this._||null}}]),e}(),Mu=function(){function e(){Object(N.a)(this,e),this._=[]}return Object(A.a)(e,[{key:"moveTo",value:function(e,t){this._.push([e,t])}},{key:"closePath",value:function(){this._.push(this._[0].slice())}},{key:"lineTo",value:function(e,t){this._.push([e,t])}},{key:"value",value:function(){return this._.length?this._:null}}]),e}(),ku=function(){function e(t){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[0,0,960,500],r=Object(P.a)(n,4),i=r[0],o=r[1],a=r[2],u=r[3];if(Object(N.a)(this,e),!((a=+a)>=(i=+i))||!((u=+u)>=(o=+o)))throw new Error("invalid bounds");this.delaunay=t,this._circumcenters=new Float64Array(2*t.points.length),this.vectors=new Float64Array(2*t.points.length),this.xmax=a,this.xmin=i,this.ymax=u,this.ymin=o,this._init()}return Object(A.a)(e,[{key:"update",value:function(){return this.delaunay.update(),this._init(),this}},{key:"_init",value:function(){for(var e,t,n=this.delaunay,r=n.points,i=n.hull,o=n.triangles,a=this.vectors,u=this.circumcenters=this._circumcenters.subarray(0,o.length/3*2),s=0,c=0,l=o.length;s9999?"+"+Ju(t,6):Ju(t,4))+"-"+Ju(e.getUTCMonth()+1,2)+"-"+Ju(e.getUTCDate(),2)+(o?"T"+Ju(n,2)+":"+Ju(r,2)+":"+Ju(i,2)+"."+Ju(o,3)+"Z":i?"T"+Ju(n,2)+":"+Ju(r,2)+":"+Ju(i,2)+"Z":r||n?"T"+Ju(n,2)+":"+Ju(r,2)+"Z":"")}var ts=function(e){var t=new RegExp('["'+e+"\n\r]"),n=e.charCodeAt(0);function r(e,t){var r,i=[],o=e.length,a=0,u=0,s=o<=0,c=!1;function l(){if(s)return Qu;if(c)return c=!1,Ku;var t,r,i=a;if(34===e.charCodeAt(i)){for(;a++Xl&&(Xl=o):c^(u*Jl<(s=(s+360)%360-180)&&sXl&&(Xl=t)),c?esl?e+Math.round(-e/dl)*dl:e,t]}function rf(e,t,n){return(e%=dl)?t||n?tf(af(e),uf(t,n)):af(e):t||n?uf(t,n):nf}function of(e){return function(t,n){return[(t+=e)>sl?t-dl:t<-sl?t+dl:t,n]}}function af(e){var t=of(e);return t.invert=of(-e),t}function uf(e,t){var n=vl(e),r=Ol(e),i=vl(t),o=Ol(t);function a(e,t){var a=vl(t),u=vl(e)*a,s=Ol(e)*a,c=Ol(t),l=c*n+u*r;return[ml(s*i-l*o,u*n-c*r),Cl(l*i+s*o)]}return a.invert=function(e,t){var a=vl(t),u=vl(e)*a,s=Ol(e)*a,c=Ol(t),l=c*i-s*o;return[ml(s*i+c*o,u*n+l*r),Cl(l*n-u*r)]},a}nf.invert=nf;var sf=function(e){function t(t){return(t=e(t[0]*hl,t[1]*hl))[0]*=fl,t[1]*=fl,t}return e=rf(e[0]*hl,e[1]*hl,e.length>2?e[2]*hl:0),t.invert=function(t){return(t=e.invert(t[0]*hl,t[1]*hl))[0]*=fl,t[1]*=fl,t},t};function cf(e,t,n,r,i,o){if(n){var a=vl(t),u=Ol(t),s=r*n;null==i?(i=t+r*dl,o=t-s/2):(i=lf(a,i),o=lf(a,o),(r>0?i
al})).map(s)).concat(Pe(bl(o/h)*h,i,h).filter((function(e){return pl(e%g)>al})).map(c))}return v.lines=function(){return b().map((function(e){return{type:"LineString",coordinates:e}}))},v.outline=function(){return{type:"Polygon",coordinates:[l(r).concat(d(a).slice(1),l(n).reverse().slice(1),d(u).reverse().slice(1))]}},v.extent=function(e){return arguments.length?v.extentMajor(e).extentMinor(e):v.extentMinor()},v.extentMajor=function(e){return arguments.length?(r=+e[0][0],n=+e[1][0],u=+e[0][1],a=+e[1][1],r>n&&(e=r,r=n,n=e),u>a&&(e=u,u=a,a=e),v.precision(m)):[[r,u],[n,a]]},v.extentMinor=function(n){return arguments.length?(t=+n[0][0],e=+n[1][0],o=+n[0][1],i=+n[1][1],t>e&&(n=t,t=e,e=n),o>i&&(n=o,o=i,i=n),v.precision(m)):[[t,o],[e,i]]},v.step=function(e){return arguments.length?v.stepMajor(e).stepMinor(e):v.stepMinor()},v.stepMajor=function(e){return arguments.length?(p=+e[0],g=+e[1],v):[p,g]},v.stepMinor=function(e){return arguments.length?(f=+e[0],h=+e[1],v):[f,h]},v.precision=function(f){return arguments.length?(m=+f,s=Kf(o,i,90),c=Qf(t,e,m),l=Kf(u,a,90),d=Qf(r,n,m),v):m},v.extentMajor([[-180,-89.999999],[180,89.999999]]).extentMinor([[-180,-80.000001],[180,80.000001]])}function Xf(){return Zf()()}var Jf,eh,th,nh,rh=function(e,t){var n=e[0]*hl,r=e[1]*hl,i=t[0]*hl,o=t[1]*hl,a=vl(r),u=Ol(r),s=vl(o),c=Ol(o),l=a*vl(n),d=a*Ol(n),f=s*vl(i),h=s*Ol(i),p=2*Cl(xl(Nl(o-r)+a*s*Nl(i-n))),g=Ol(p),m=p?function(e){var t=Ol(e*=p)/g,n=Ol(p-e)/g,r=n*l+t*f,i=n*d+t*h,o=n*u+t*c;return[ml(i,r)*fl,ml(o,xl(r*r+i*i))*fl]}:function(){return[n*fl,r*fl]};return m.distance=p,m},ih=function(e){return e},oh=new M,ah=new M,uh={point:Al,lineStart:Al,lineEnd:Al,polygonStart:function(){uh.lineStart=sh,uh.lineEnd=dh},polygonEnd:function(){uh.lineStart=uh.lineEnd=uh.point=Al,oh.add(pl(ah)),ah=new M},result:function(){var e=oh/2;return oh=new M,e}};function sh(){uh.point=ch}function ch(e,t){uh.point=lh,Jf=th=e,eh=nh=t}function lh(e,t){ah.add(nh*e-th*t),th=e,nh=t}function dh(){lh(Jf,eh)}var fh=uh,hh=1/0,ph=hh,gh=-hh,mh=gh;var vh,bh,yh,_h,wh={point:function(e,t){e
f&&(f=u),m=l*l*g,(h=Math.max(f/m,m/d))>p){l-=u;break}p=h}v.push(a={value:l,dice:s0;){if((i=de(s,c,n))===r)return o[a]=s,o[u]=c,t(o);if(i>0)s=Math.floor(s/i)*i,c=Math.ceil(c/i)*i;else{if(!(i<0))break;s=Math.ceil(s*i)/i,c=Math.floor(c*i)/i}r=i}return e},e}function mv(){var e=hv();return e.copy=function(){return dv(e,mv())},Xm.apply(e,arguments),gv(e)}function vv(e){var t;function n(e){return isNaN(e=+e)?t:e}return n.invert=n,n.domain=n.range=function(t){return arguments.length?(e=Array.from(t,ov),n):e.slice()},n.unknown=function(e){return arguments.length?(t=e,n):t},n.copy=function(){return vv(e).unknown(t)},e=arguments.length?Array.from(e,ov):[0,1],gv(n)}function bv(e,t){var n,r=0,i=(e=e.slice()).length-1,o=e[r],a=e[i];return a=l.OP_1&&e<=l.OP_16||e===l.OP_1NEGATE)}(e)}function p(e){return s.Array(e)&&e.every(h)}function g(e){return 0===e.length?l.OP_0:1===e.length?e[0]>=1&&e[0]<=16?f+e[0]:129===e[0]?l.OP_1NEGATE:void 0:void 0}function m(e){if(r.isBuffer(e))return e;u(s.Array,e);var t=e.reduce((function(e,t){return r.isBuffer(t)?1===t.length&&void 0!==g(t)?e+1:e+a.encodingLength(t.length)+t.length:e+1}),0),n=r.allocUnsafe(t),i=0;if(e.forEach((function(e){if(r.isBuffer(e)){var t=g(e);if(void 0!==t)return n.writeUInt8(t,i),void(i+=1);i+=a.encode(n,e.length,i),e.copy(n,i),i+=e.length}else n.writeUInt8(e,i),i+=1})),i!==n.length)throw new Error("Could not decode chunks");return n}function v(e){if(s.Array(e))return e;u(s.Buffer,e);for(var t=[],n=0;ni&&(r=i):r=i;var o=t.length;if(o%2!==0)throw new TypeError("Invalid hex string");r>o/2&&(r=o/2);for(var a=0;a