edge-currency-plugins 2.0.4 → 2.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/common/plugin/makeCurrencyTools.js +0 -5
- package/lib/common/plugin/types.js +3 -2
- package/lib/common/upgradeMemos.js +47 -0
- package/lib/common/utxobased/db/Models/ProcessorTransaction.js +7 -4
- package/lib/common/utxobased/engine/makeUtxoEngine.js +18 -18
- package/lib/common/utxobased/engine/utils.js +0 -13
- package/lib/common/utxobased/info/badcoin.js +6 -2
- package/lib/common/utxobased/info/bitcoin.js +6 -2
- package/lib/common/utxobased/info/bitcoincash.js +8 -4
- package/lib/common/utxobased/info/bitcoincashtestnet.js +8 -4
- package/lib/common/utxobased/info/bitcoingold.js +6 -2
- package/lib/common/utxobased/info/bitcoingoldtestnet.js +6 -2
- package/lib/common/utxobased/info/bitcoinsv.js +9 -5
- package/lib/common/utxobased/info/bitcointestnet.js +6 -2
- package/lib/common/utxobased/info/commonInfo.js +16 -0
- package/lib/common/utxobased/info/dash.js +7 -2
- package/lib/common/utxobased/info/digibyte.js +6 -2
- package/lib/common/utxobased/info/dogecoin.js +6 -2
- package/lib/common/utxobased/info/eboost.js +6 -2
- package/lib/common/utxobased/info/feathercoin.js +6 -2
- package/lib/common/utxobased/info/groestlcoin.js +6 -2
- package/lib/common/utxobased/info/litecoin.js +6 -2
- package/lib/common/utxobased/info/qtum.js +6 -2
- package/lib/common/utxobased/info/ravencoin.js +6 -2
- package/lib/common/utxobased/info/smartcash.js +6 -2
- package/lib/common/utxobased/info/ufo.js +6 -2
- package/lib/common/utxobased/info/vertcoin.js +6 -2
- package/lib/common/utxobased/info/zcoin.js +6 -2
- package/lib/common/utxobased/keymanager/bitcoincashUtils/base32.js +1 -2
- package/lib/common/utxobased/keymanager/bitcoincashUtils/cashAddress.js +1 -4
- package/lib/common/utxobased/keymanager/declarations/bs58smartcheck.d.js +4 -0
- package/lib/common/utxobased/keymanager/declarations/wif-smart.d.js +24 -0
- package/lib/common/utxobased/keymanager/keymanager.js +129 -84
- package/lib/common/utxobased/keymanager/utxopicker/utils.js +1 -3
- package/lib/common/validateMemos.js +107 -0
- package/lib/src/common/plugin/types.d.ts +6 -4
- package/lib/src/common/upgradeMemos.d.ts +6 -0
- package/lib/src/common/utxobased/engine/utils.d.ts +1 -2
- package/lib/src/common/utxobased/info/commonInfo.d.ts +2 -0
- package/lib/src/common/utxobased/keymanager/keymanager.d.ts +5 -11
- package/lib/src/common/validateMemos.d.ts +6 -0
- package/lib/src/util/cleaners.d.ts +6 -0
- package/lib/util/cleaners.js +18 -0
- package/package.json +12 -4
- package/lib/common/utxobased/keymanager/declarations/base58grscheck.d.js +0 -1
- package/lib/common/utxobased/keymanager/declarations/wifgrs.d.js +0 -1
|
@@ -9,7 +9,6 @@ var _cleaners = require('cleaners');
|
|
|
9
9
|
|
|
10
10
|
|
|
11
11
|
|
|
12
|
-
|
|
13
12
|
var _urijs = require('uri-js'); var uri = _interopRequireWildcard(_urijs);
|
|
14
13
|
var _urlparse = require('url-parse'); var _urlparse2 = _interopRequireDefault(_urlparse);
|
|
15
14
|
|
|
@@ -98,10 +97,6 @@ var _utils3 = require('./utils');
|
|
|
98
97
|
return wasCurrencyPrivateKey(privateKey)
|
|
99
98
|
},
|
|
100
99
|
|
|
101
|
-
async validateMemo(memo) {
|
|
102
|
-
return _utils.validateMemo.call(void 0, memo)
|
|
103
|
-
},
|
|
104
|
-
|
|
105
100
|
async derivePublicKey(
|
|
106
101
|
unsafeWalletInfo
|
|
107
102
|
) {
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { newObj[key] = obj[key]; } } } newObj.default = obj; return newObj; } }
|
|
2
|
+
|
|
2
3
|
var _cleaners = require('cleaners');
|
|
3
4
|
|
|
4
5
|
|
|
@@ -17,6 +18,7 @@ var _cleaners = require('cleaners');
|
|
|
17
18
|
|
|
18
19
|
|
|
19
20
|
|
|
21
|
+
|
|
20
22
|
const asCurrencyFormat = _cleaners.asValue.call(void 0, 'bip32', 'bip44', 'bip49', 'bip84'); exports.asCurrencyFormat = asCurrencyFormat
|
|
21
23
|
|
|
22
24
|
// Path up to changeIndex
|
|
@@ -133,7 +135,6 @@ var _cleaners = require('cleaners');
|
|
|
133
135
|
|
|
134
136
|
|
|
135
137
|
|
|
136
|
-
|
|
137
138
|
|
|
138
139
|
|
|
139
140
|
const asFeeRates = _cleaners.asObject.call(void 0, {
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
|
|
2
|
+
|
|
3
|
+
var _validateMemos = require('./validateMemos');
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Upgrades the memo fields inside an EdgeSpendTarget,
|
|
7
|
+
* since we need to be runtime-compatible with legacy core versions.
|
|
8
|
+
*/
|
|
9
|
+
function upgradeMemos(
|
|
10
|
+
spendInfo,
|
|
11
|
+
currencyInfo
|
|
12
|
+
) {
|
|
13
|
+
const { memoType } = currencyInfo
|
|
14
|
+
|
|
15
|
+
const legacyMemos = []
|
|
16
|
+
|
|
17
|
+
// If this chain supports legacy memos, grab those:
|
|
18
|
+
if (memoType === 'hex' || memoType === 'number' || memoType === 'text') {
|
|
19
|
+
for (const target of spendInfo.spendTargets) {
|
|
20
|
+
if (target.memo != null) {
|
|
21
|
+
legacyMemos.push({
|
|
22
|
+
type: memoType,
|
|
23
|
+
value: target.memo
|
|
24
|
+
})
|
|
25
|
+
} else if (target.uniqueIdentifier != null) {
|
|
26
|
+
legacyMemos.push({
|
|
27
|
+
type: memoType,
|
|
28
|
+
value: target.uniqueIdentifier
|
|
29
|
+
})
|
|
30
|
+
} else if (typeof _optionalChain([target, 'access', _ => _.otherParams, 'optionalAccess', _2 => _2.uniqueIdentifier]) === 'string') {
|
|
31
|
+
legacyMemos.push({
|
|
32
|
+
type: memoType,
|
|
33
|
+
value: target.otherParams.uniqueIdentifier
|
|
34
|
+
})
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
// If we don't have modern memos, use the legacy ones:
|
|
40
|
+
const out = {
|
|
41
|
+
...spendInfo,
|
|
42
|
+
memos: _nullishCoalesce(spendInfo.memos, () => ( legacyMemos))
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
_validateMemos.validateMemos.call(void 0, out, currencyInfo)
|
|
46
|
+
return out
|
|
47
|
+
} exports.upgradeMemos = upgradeMemos;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
"use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }var _altcoinjs = require('altcoin-js');
|
|
2
|
+
var _biggystring = require('biggystring');
|
|
2
3
|
var _bnjs = require('bn.js'); var _bnjs2 = _interopRequireDefault(_bnjs);
|
|
3
4
|
|
|
4
5
|
|
|
@@ -95,16 +96,18 @@ var _bnjs = require('bn.js'); var _bnjs2 = _interopRequireDefault(_bnjs);
|
|
|
95
96
|
} catch (e) {}
|
|
96
97
|
|
|
97
98
|
return {
|
|
98
|
-
walletId,
|
|
99
|
-
currencyCode: currencyInfo.currencyCode,
|
|
100
|
-
txid: tx.txid,
|
|
101
99
|
blockHeight: tx.blockHeight,
|
|
102
100
|
confirmations: tx.confirmations,
|
|
101
|
+
currencyCode: currencyInfo.currencyCode,
|
|
103
102
|
date: tx.date,
|
|
103
|
+
isSend: _biggystring.lt.call(void 0, tx.ourAmount, '0'),
|
|
104
|
+
memos: [],
|
|
104
105
|
nativeAmount: tx.ourAmount,
|
|
105
106
|
networkFee: tx.fees,
|
|
106
|
-
signedTx: tx.hex,
|
|
107
107
|
ourReceiveAddresses,
|
|
108
|
+
signedTx: tx.hex,
|
|
109
|
+
txid: tx.txid,
|
|
110
|
+
walletId,
|
|
108
111
|
...feeRes
|
|
109
112
|
}
|
|
110
113
|
}; exports.toEdgeTransaction = toEdgeTransaction
|
|
@@ -24,6 +24,7 @@ var _makeFees = require('../../fees/makeFees');
|
|
|
24
24
|
var _makeEngineEmitter = require('../../plugin/makeEngineEmitter');
|
|
25
25
|
var _makeMetadata = require('../../plugin/makeMetadata');
|
|
26
26
|
|
|
27
|
+
var _upgradeMemos = require('../../upgradeMemos');
|
|
27
28
|
var _makeProcessor = require('../db/makeProcessor');
|
|
28
29
|
|
|
29
30
|
|
|
@@ -292,7 +293,8 @@ var _utils = require('./utils');
|
|
|
292
293
|
},
|
|
293
294
|
|
|
294
295
|
async makeSpend(edgeSpendInfo) {
|
|
295
|
-
|
|
296
|
+
edgeSpendInfo = _upgradeMemos.upgradeMemos.call(void 0, edgeSpendInfo, currencyInfo)
|
|
297
|
+
const { memos = [], spendTargets } = edgeSpendInfo
|
|
296
298
|
const txOptions =
|
|
297
299
|
_optionalChain([edgeSpendInfo, 'access', _5 => _5.otherParams, 'optionalAccess', _6 => _6.txOptions])
|
|
298
300
|
const { outputSort = 'bip69', utxoSourceAddress, forceChangeAddress } =
|
|
@@ -330,10 +332,7 @@ var _utils = require('./utils');
|
|
|
330
332
|
let targets = []
|
|
331
333
|
const ourReceiveAddresses = []
|
|
332
334
|
for (const target of spendTargets) {
|
|
333
|
-
if (
|
|
334
|
-
target.memo == null &&
|
|
335
|
-
(target.publicAddress == null || target.nativeAmount == null)
|
|
336
|
-
) {
|
|
335
|
+
if (target.publicAddress == null || target.nativeAmount == null) {
|
|
337
336
|
throw new Error('Invalid spend target')
|
|
338
337
|
}
|
|
339
338
|
|
|
@@ -350,8 +349,7 @@ var _utils = require('./utils');
|
|
|
350
349
|
value:
|
|
351
350
|
target.nativeAmount == null
|
|
352
351
|
? undefined
|
|
353
|
-
: parseInt(target.nativeAmount)
|
|
354
|
-
memo: target.memo
|
|
352
|
+
: parseInt(target.nativeAmount)
|
|
355
353
|
})
|
|
356
354
|
}
|
|
357
355
|
} else {
|
|
@@ -368,13 +366,12 @@ var _utils = require('./utils');
|
|
|
368
366
|
value:
|
|
369
367
|
target.nativeAmount == null
|
|
370
368
|
? undefined
|
|
371
|
-
: parseInt(target.nativeAmount)
|
|
372
|
-
memo: target.memo
|
|
369
|
+
: parseInt(target.nativeAmount)
|
|
373
370
|
})
|
|
374
371
|
}
|
|
375
372
|
}
|
|
376
373
|
|
|
377
|
-
if (targets.length < 1) {
|
|
374
|
+
if (targets.length + memos.length < 1) {
|
|
378
375
|
throw new Error('Need to provide Spend Targets')
|
|
379
376
|
}
|
|
380
377
|
|
|
@@ -427,6 +424,7 @@ var _utils = require('./utils');
|
|
|
427
424
|
utxos,
|
|
428
425
|
forceUseUtxo: maxUtxo != null ? [maxUtxo] : [],
|
|
429
426
|
targets,
|
|
427
|
+
memos,
|
|
430
428
|
feeRate,
|
|
431
429
|
coin: coinInfo.name,
|
|
432
430
|
currencyCode: currencyInfo.currencyCode,
|
|
@@ -471,19 +469,21 @@ var _utils = require('./utils');
|
|
|
471
469
|
}
|
|
472
470
|
|
|
473
471
|
const transaction = {
|
|
474
|
-
|
|
475
|
-
ourReceiveAddresses,
|
|
476
|
-
otherParams,
|
|
472
|
+
blockHeight: 0,
|
|
477
473
|
currencyCode: currencyInfo.currencyCode,
|
|
478
|
-
txid: '',
|
|
479
474
|
date: _unixTime.unixTime.call(void 0, ),
|
|
480
|
-
blockHeight: 0,
|
|
481
|
-
nativeAmount,
|
|
482
|
-
networkFee,
|
|
483
475
|
feeRateUsed: {
|
|
484
476
|
satPerVByte: feeRate
|
|
485
477
|
},
|
|
486
|
-
|
|
478
|
+
isSend: true,
|
|
479
|
+
memos,
|
|
480
|
+
nativeAmount,
|
|
481
|
+
networkFee,
|
|
482
|
+
otherParams,
|
|
483
|
+
ourReceiveAddresses,
|
|
484
|
+
signedTx: '',
|
|
485
|
+
txid: '',
|
|
486
|
+
walletId: walletInfo.id
|
|
487
487
|
}
|
|
488
488
|
|
|
489
489
|
return transaction
|
|
@@ -39,19 +39,6 @@ var _keymanager = require('../keymanager/keymanager');
|
|
|
39
39
|
}
|
|
40
40
|
}; exports.getCurrencyFormatFromPurposeType = getCurrencyFormatFromPurposeType
|
|
41
41
|
|
|
42
|
-
// Expect memo to be a hex string
|
|
43
|
-
const validateMemo = (memo) => {
|
|
44
|
-
const result = {
|
|
45
|
-
passed: true,
|
|
46
|
-
tooLarge: false
|
|
47
|
-
}
|
|
48
|
-
if (Math.ceil(memo.length / 2) > 80) {
|
|
49
|
-
result.passed = false
|
|
50
|
-
result.tooLarge = true
|
|
51
|
-
}
|
|
52
|
-
return result
|
|
53
|
-
}; exports.validateMemo = validateMemo
|
|
54
|
-
|
|
55
42
|
const getAddressTypeFromPurposeType = (
|
|
56
43
|
purpose
|
|
57
44
|
) => {
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";Object.defineProperty(exports, "__esModule", {value: true});
|
|
2
2
|
|
|
3
3
|
|
|
4
|
+
var _commonInfo = require('./commonInfo');
|
|
4
5
|
|
|
5
6
|
const currencyInfo = {
|
|
6
7
|
pluginId: 'badcoin',
|
|
@@ -26,12 +27,15 @@ const currencyInfo = {
|
|
|
26
27
|
displayMultiplier: '0'
|
|
27
28
|
}
|
|
28
29
|
],
|
|
29
|
-
|
|
30
|
+
..._commonInfo.memoInfo,
|
|
30
31
|
|
|
31
32
|
// Explorers:
|
|
32
33
|
addressExplorer: 'https://www.blockingbad.com/address/%s',
|
|
33
34
|
blockExplorer: 'https://www.blockingbad.com/block/%s',
|
|
34
|
-
transactionExplorer: 'https://www.blockingbad.com/tx/%s'
|
|
35
|
+
transactionExplorer: 'https://www.blockingbad.com/tx/%s',
|
|
36
|
+
|
|
37
|
+
// Deprecated:
|
|
38
|
+
metaTokens: []
|
|
35
39
|
}
|
|
36
40
|
|
|
37
41
|
const engineInfo = {
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
var _constants = require('../../constants');
|
|
4
4
|
|
|
5
|
+
var _commonInfo = require('./commonInfo');
|
|
5
6
|
|
|
6
7
|
const currencyInfo = {
|
|
7
8
|
pluginId: 'bitcoin',
|
|
@@ -36,7 +37,7 @@ const currencyInfo = {
|
|
|
36
37
|
displayMultiplier: '0'
|
|
37
38
|
}
|
|
38
39
|
],
|
|
39
|
-
|
|
40
|
+
..._commonInfo.memoInfo,
|
|
40
41
|
|
|
41
42
|
// Explorers:
|
|
42
43
|
blockExplorer: 'https://blockchair.com/bitcoin/block/%s',
|
|
@@ -45,7 +46,10 @@ const currencyInfo = {
|
|
|
45
46
|
|
|
46
47
|
// Images:
|
|
47
48
|
symbolImage: `${_constants.IMAGE_SERVER_URL}/bitcoin-logo-solo-64.png`,
|
|
48
|
-
symbolImageDarkMono: `${_constants.IMAGE_SERVER_URL}/bitcoin-logo-solo-64.png
|
|
49
|
+
symbolImageDarkMono: `${_constants.IMAGE_SERVER_URL}/bitcoin-logo-solo-64.png`,
|
|
50
|
+
|
|
51
|
+
// Deprecated:
|
|
52
|
+
metaTokens: []
|
|
49
53
|
}
|
|
50
54
|
|
|
51
55
|
const engineInfo = {
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _altcoinjs = require('altcoin-js');
|
|
2
2
|
var _cleaners = require('cleaners');
|
|
3
3
|
|
|
4
4
|
|
|
5
5
|
var _constants = require('../../constants');
|
|
6
6
|
|
|
7
|
+
var _commonInfo = require('./commonInfo');
|
|
7
8
|
var _bitcoincashScriptTemplates = require('./scriptTemplates/bitcoincashScriptTemplates');
|
|
8
9
|
|
|
9
10
|
const currencyInfo = {
|
|
@@ -37,7 +38,7 @@ const currencyInfo = {
|
|
|
37
38
|
displayMultiplier: '0'
|
|
38
39
|
}
|
|
39
40
|
],
|
|
40
|
-
|
|
41
|
+
..._commonInfo.memoInfo,
|
|
41
42
|
|
|
42
43
|
// Explorers:
|
|
43
44
|
blockExplorer: 'https://blockchair.com/bitcoin-cash/block/%s',
|
|
@@ -47,7 +48,10 @@ const currencyInfo = {
|
|
|
47
48
|
|
|
48
49
|
// Images:
|
|
49
50
|
symbolImage: `${_constants.IMAGE_SERVER_URL}/bitcoincash-logo-solo-64.png`,
|
|
50
|
-
symbolImageDarkMono: `${_constants.IMAGE_SERVER_URL}/bitcoincash-logo-solo-64.png
|
|
51
|
+
symbolImageDarkMono: `${_constants.IMAGE_SERVER_URL}/bitcoincash-logo-solo-64.png`,
|
|
52
|
+
|
|
53
|
+
// Deprecated:
|
|
54
|
+
metaTokens: []
|
|
51
55
|
}
|
|
52
56
|
|
|
53
57
|
const engineInfo = {
|
|
@@ -76,7 +80,7 @@ const engineInfo = {
|
|
|
76
80
|
const coinInfo = {
|
|
77
81
|
name: 'bitcoincash',
|
|
78
82
|
segwit: false,
|
|
79
|
-
sighash:
|
|
83
|
+
sighash: _altcoinjs.Psbt.BCH_SIGHASH_ALL,
|
|
80
84
|
coinType: 145,
|
|
81
85
|
|
|
82
86
|
prefixes: {
|
|
@@ -1,8 +1,9 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _altcoinjs = require('altcoin-js');
|
|
2
2
|
|
|
3
3
|
|
|
4
4
|
var _constants = require('../../constants');
|
|
5
5
|
|
|
6
|
+
var _commonInfo = require('./commonInfo');
|
|
6
7
|
var _bitcoincashScriptTemplates = require('./scriptTemplates/bitcoincashScriptTemplates');
|
|
7
8
|
|
|
8
9
|
const currencyInfo = {
|
|
@@ -22,7 +23,7 @@ const currencyInfo = {
|
|
|
22
23
|
blockbookServers: [],
|
|
23
24
|
enableCustomServers: false
|
|
24
25
|
},
|
|
25
|
-
|
|
26
|
+
..._commonInfo.memoInfo,
|
|
26
27
|
|
|
27
28
|
// Explorers:
|
|
28
29
|
blockExplorer: 'https://blockchair.com/bitcoin-cash/block/%s',
|
|
@@ -32,7 +33,10 @@ const currencyInfo = {
|
|
|
32
33
|
|
|
33
34
|
// Images:
|
|
34
35
|
symbolImage: `${_constants.IMAGE_SERVER_URL}/bitcoincash-logo-solo-64.png`,
|
|
35
|
-
symbolImageDarkMono: `${_constants.IMAGE_SERVER_URL}/bitcoincash-logo-solo-64.png
|
|
36
|
+
symbolImageDarkMono: `${_constants.IMAGE_SERVER_URL}/bitcoincash-logo-solo-64.png`,
|
|
37
|
+
|
|
38
|
+
// Deprecated:
|
|
39
|
+
metaTokens: []
|
|
36
40
|
}
|
|
37
41
|
|
|
38
42
|
const engineInfo = {
|
|
@@ -55,7 +59,7 @@ const engineInfo = {
|
|
|
55
59
|
const coinInfo = {
|
|
56
60
|
name: 'bitcoincashtestnet',
|
|
57
61
|
segwit: false,
|
|
58
|
-
sighash:
|
|
62
|
+
sighash: _altcoinjs.Psbt.BCH_SIGHASH_ALL,
|
|
59
63
|
coinType: 1,
|
|
60
64
|
|
|
61
65
|
prefixes: {
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
|
|
4
4
|
|
|
5
|
+
var _commonInfo = require('./commonInfo');
|
|
5
6
|
|
|
6
7
|
const currencyInfo = {
|
|
7
8
|
pluginId: 'bitcoingold',
|
|
@@ -34,12 +35,15 @@ const currencyInfo = {
|
|
|
34
35
|
displayMultiplier: '0'
|
|
35
36
|
}
|
|
36
37
|
],
|
|
37
|
-
|
|
38
|
+
..._commonInfo.memoInfo,
|
|
38
39
|
|
|
39
40
|
// Explorers:
|
|
40
41
|
addressExplorer: 'https://explorer.bitcoingold.org/insight/address/%s',
|
|
41
42
|
blockExplorer: 'https://explorer.bitcoingold.org/insight/block/%s',
|
|
42
|
-
transactionExplorer: 'https://explorer.bitcoingold.org/insight/tx/%s'
|
|
43
|
+
transactionExplorer: 'https://explorer.bitcoingold.org/insight/tx/%s',
|
|
44
|
+
|
|
45
|
+
// Deprecated:
|
|
46
|
+
metaTokens: []
|
|
43
47
|
}
|
|
44
48
|
|
|
45
49
|
const engineInfo = {
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
|
|
4
4
|
|
|
5
|
+
var _commonInfo = require('./commonInfo');
|
|
5
6
|
|
|
6
7
|
const currencyInfo = {
|
|
7
8
|
pluginId: 'bitcoingoldtestnet',
|
|
@@ -20,12 +21,15 @@ const currencyInfo = {
|
|
|
20
21
|
blockbookServers: [],
|
|
21
22
|
enableCustomServers: false
|
|
22
23
|
},
|
|
23
|
-
|
|
24
|
+
..._commonInfo.memoInfo,
|
|
24
25
|
|
|
25
26
|
// Explorers:
|
|
26
27
|
addressExplorer: 'https://explorer.bitcoingold.org/insight/address/%s',
|
|
27
28
|
blockExplorer: 'https://explorer.bitcoingold.org/insight/block/%s',
|
|
28
|
-
transactionExplorer: 'https://explorer.bitcoingold.org/insight/tx/%s'
|
|
29
|
+
transactionExplorer: 'https://explorer.bitcoingold.org/insight/tx/%s',
|
|
30
|
+
|
|
31
|
+
// Deprecated:
|
|
32
|
+
metaTokens: []
|
|
29
33
|
}
|
|
30
34
|
|
|
31
35
|
const engineInfo = {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports, "__esModule", {value: true});
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});var _altcoinjs = require('altcoin-js');
|
|
2
2
|
var _cleaners = require('cleaners');
|
|
3
3
|
|
|
4
4
|
|
|
@@ -9,6 +9,7 @@ var _constants = require('../../constants');
|
|
|
9
9
|
|
|
10
10
|
|
|
11
11
|
var _keymanager = require('../keymanager/keymanager');
|
|
12
|
+
var _commonInfo = require('./commonInfo');
|
|
12
13
|
|
|
13
14
|
const currencyInfo = {
|
|
14
15
|
pluginId: 'bitcoinsv',
|
|
@@ -35,7 +36,7 @@ const currencyInfo = {
|
|
|
35
36
|
displayMultiplier: '0'
|
|
36
37
|
}
|
|
37
38
|
],
|
|
38
|
-
|
|
39
|
+
..._commonInfo.memoInfo,
|
|
39
40
|
|
|
40
41
|
// Explorers:
|
|
41
42
|
blockExplorer: 'https://whatsonchain.com/block/%s',
|
|
@@ -44,7 +45,10 @@ const currencyInfo = {
|
|
|
44
45
|
|
|
45
46
|
// Images:
|
|
46
47
|
symbolImage: `${_constants.IMAGE_SERVER_URL}/bitcoinsv-logo-solo-64.png`,
|
|
47
|
-
symbolImageDarkMono: `${_constants.IMAGE_SERVER_URL}/bitcoinsv-logo-solo-64.png
|
|
48
|
+
symbolImageDarkMono: `${_constants.IMAGE_SERVER_URL}/bitcoinsv-logo-solo-64.png`,
|
|
49
|
+
|
|
50
|
+
// Deprecated:
|
|
51
|
+
metaTokens: []
|
|
48
52
|
}
|
|
49
53
|
|
|
50
54
|
const engineInfo = {
|
|
@@ -64,7 +68,7 @@ const engineInfo = {
|
|
|
64
68
|
/*
|
|
65
69
|
This is to support cashaddr and 1-addresses coming from the network.
|
|
66
70
|
We always convert to a 1-address for internal use.
|
|
67
|
-
We send 1-address to the network because all servers should support legacy
|
|
71
|
+
We send 1-address to the network because all servers should support legacy
|
|
68
72
|
address (this is the uncleaner).
|
|
69
73
|
*/
|
|
70
74
|
asBlockbookAddress: _cleaners.asCodec.call(void 0,
|
|
@@ -94,7 +98,7 @@ const engineInfo = {
|
|
|
94
98
|
const coinInfo = {
|
|
95
99
|
name: 'bitcoinsv',
|
|
96
100
|
segwit: false,
|
|
97
|
-
sighash:
|
|
101
|
+
sighash: _altcoinjs.Psbt.BCH_SIGHASH_ALL,
|
|
98
102
|
coinType: 236,
|
|
99
103
|
|
|
100
104
|
prefixes: {
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
var _constants = require('../../constants');
|
|
4
4
|
|
|
5
|
+
var _commonInfo = require('./commonInfo');
|
|
5
6
|
|
|
6
7
|
const currencyInfo = {
|
|
7
8
|
pluginId: 'bitcointestnet',
|
|
@@ -30,7 +31,7 @@ var _constants = require('../../constants');
|
|
|
30
31
|
displayMultiplier: '0'
|
|
31
32
|
}
|
|
32
33
|
],
|
|
33
|
-
|
|
34
|
+
..._commonInfo.memoInfo,
|
|
34
35
|
|
|
35
36
|
// Explorers:
|
|
36
37
|
blockExplorer: 'https://blockchair.com/bitcoin/testnet/block/%s',
|
|
@@ -39,7 +40,10 @@ var _constants = require('../../constants');
|
|
|
39
40
|
|
|
40
41
|
// Images:
|
|
41
42
|
symbolImage: `${_constants.IMAGE_SERVER_URL}/bitcoin-logo-solo-64.png`,
|
|
42
|
-
symbolImageDarkMono: `${_constants.IMAGE_SERVER_URL}/bitcoin-logo-solo-64.png
|
|
43
|
+
symbolImageDarkMono: `${_constants.IMAGE_SERVER_URL}/bitcoin-logo-solo-64.png`,
|
|
44
|
+
|
|
45
|
+
// Deprecated:
|
|
46
|
+
metaTokens: []
|
|
43
47
|
}; exports.currencyInfo = currencyInfo
|
|
44
48
|
|
|
45
49
|
const engineInfo = {
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";Object.defineProperty(exports, "__esModule", {value: true});
|
|
2
|
+
|
|
3
|
+
const memoInfo = {
|
|
4
|
+
memoOptions: [
|
|
5
|
+
{
|
|
6
|
+
type: 'hex',
|
|
7
|
+
hidden: true,
|
|
8
|
+
maxBytes: 80,
|
|
9
|
+
memoName: 'OP_RETURN'
|
|
10
|
+
}
|
|
11
|
+
],
|
|
12
|
+
|
|
13
|
+
// Deprecated:
|
|
14
|
+
memoMaxLength: 80,
|
|
15
|
+
memoType: 'text'
|
|
16
|
+
}; exports.memoInfo = memoInfo
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
|
|
4
4
|
|
|
5
5
|
|
|
6
|
+
var _commonInfo = require('./commonInfo');
|
|
6
7
|
|
|
7
8
|
const currencyInfo = {
|
|
8
9
|
pluginId: 'dash',
|
|
@@ -34,12 +35,16 @@ const currencyInfo = {
|
|
|
34
35
|
displayMultiplier: '0'
|
|
35
36
|
}
|
|
36
37
|
],
|
|
37
|
-
|
|
38
|
+
..._commonInfo.memoInfo,
|
|
38
39
|
|
|
39
40
|
// Explorers:
|
|
40
41
|
addressExplorer: 'https://blockchair.com/dash/address/%s?from=edgeapp',
|
|
41
42
|
blockExplorer: 'https://blockchair.com/dash/block/%s?from=edgeapp',
|
|
42
|
-
transactionExplorer:
|
|
43
|
+
transactionExplorer:
|
|
44
|
+
'https://blockchair.com/dash/transaction/%s?from=edgeapp',
|
|
45
|
+
|
|
46
|
+
// Deprecated:
|
|
47
|
+
metaTokens: []
|
|
43
48
|
}
|
|
44
49
|
|
|
45
50
|
const engineInfo = {
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";Object.defineProperty(exports, "__esModule", {value: true});
|
|
2
2
|
|
|
3
3
|
|
|
4
|
+
var _commonInfo = require('./commonInfo');
|
|
4
5
|
|
|
5
6
|
const currencyInfo = {
|
|
6
7
|
pluginId: 'digibyte',
|
|
@@ -26,12 +27,15 @@ const currencyInfo = {
|
|
|
26
27
|
displayMultiplier: '0'
|
|
27
28
|
}
|
|
28
29
|
],
|
|
29
|
-
|
|
30
|
+
..._commonInfo.memoInfo,
|
|
30
31
|
|
|
31
32
|
// Explorers:
|
|
32
33
|
addressExplorer: 'https://digiexplorer.info/address/%s',
|
|
33
34
|
blockExplorer: 'https://digiexplorer.info/block/%s',
|
|
34
|
-
transactionExplorer: 'https://digiexplorer.info/tx/%s'
|
|
35
|
+
transactionExplorer: 'https://digiexplorer.info/tx/%s',
|
|
36
|
+
|
|
37
|
+
// Deprecated:
|
|
38
|
+
metaTokens: []
|
|
35
39
|
}
|
|
36
40
|
|
|
37
41
|
const engineInfo = {
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";Object.defineProperty(exports, "__esModule", {value: true});
|
|
2
2
|
|
|
3
3
|
|
|
4
|
+
var _commonInfo = require('./commonInfo');
|
|
4
5
|
var _dogeUtxoPicker = require('./utxoPickers/dogeUtxoPicker');
|
|
5
6
|
|
|
6
7
|
const currencyInfo = {
|
|
@@ -30,13 +31,16 @@ const currencyInfo = {
|
|
|
30
31
|
displayMultiplier: '0'
|
|
31
32
|
}
|
|
32
33
|
],
|
|
33
|
-
|
|
34
|
+
..._commonInfo.memoInfo,
|
|
34
35
|
|
|
35
36
|
// Explorers:
|
|
36
37
|
addressExplorer: 'https://blockchair.com/dogecoin/address/%s?from=edgeapp',
|
|
37
38
|
blockExplorer: 'https://blockchair.com/dogecoin/block/%s?from=edgeapp',
|
|
38
39
|
transactionExplorer:
|
|
39
|
-
'https://blockchair.com/dogecoin/transaction/%s?from=edgeapp'
|
|
40
|
+
'https://blockchair.com/dogecoin/transaction/%s?from=edgeapp',
|
|
41
|
+
|
|
42
|
+
// Deprecated:
|
|
43
|
+
metaTokens: []
|
|
40
44
|
}
|
|
41
45
|
|
|
42
46
|
const engineInfo = {
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";Object.defineProperty(exports, "__esModule", {value: true});
|
|
2
2
|
|
|
3
3
|
|
|
4
|
+
var _commonInfo = require('./commonInfo');
|
|
4
5
|
|
|
5
6
|
const currencyInfo = {
|
|
6
7
|
pluginId: 'eboost',
|
|
@@ -26,12 +27,15 @@ const currencyInfo = {
|
|
|
26
27
|
displayMultiplier: '0'
|
|
27
28
|
}
|
|
28
29
|
],
|
|
29
|
-
|
|
30
|
+
..._commonInfo.memoInfo,
|
|
30
31
|
|
|
31
32
|
// Explorers:
|
|
32
33
|
addressExplorer: 'https://www.blockexperts.com/ebst/address/%s',
|
|
33
34
|
blockExplorer: 'https://www.blockexperts.com/ebst/hash/%s',
|
|
34
|
-
transactionExplorer: 'https://www.blockexperts.com/ebst/tx/%s'
|
|
35
|
+
transactionExplorer: 'https://www.blockexperts.com/ebst/tx/%s',
|
|
36
|
+
|
|
37
|
+
// Deprecated:
|
|
38
|
+
metaTokens: []
|
|
35
39
|
}
|
|
36
40
|
|
|
37
41
|
const engineInfo = {
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
var _constants = require('../../constants');
|
|
4
4
|
|
|
5
|
+
var _commonInfo = require('./commonInfo');
|
|
5
6
|
|
|
6
7
|
const currencyInfo = {
|
|
7
8
|
pluginId: 'feathercoin',
|
|
@@ -27,7 +28,7 @@ var _constants = require('../../constants');
|
|
|
27
28
|
displayMultiplier: '0'
|
|
28
29
|
}
|
|
29
30
|
],
|
|
30
|
-
|
|
31
|
+
..._commonInfo.memoInfo,
|
|
31
32
|
|
|
32
33
|
// Explorers:
|
|
33
34
|
addressExplorer: 'https://fsight.chain.tips/address/%s',
|
|
@@ -36,7 +37,10 @@ var _constants = require('../../constants');
|
|
|
36
37
|
|
|
37
38
|
// Images:
|
|
38
39
|
symbolImage: `${_constants.IMAGE_SERVER_URL}/feathercoin-logo-solo-64.png`,
|
|
39
|
-
symbolImageDarkMono: `${_constants.IMAGE_SERVER_URL}/feathercoin-logo-solo-64.png
|
|
40
|
+
symbolImageDarkMono: `${_constants.IMAGE_SERVER_URL}/feathercoin-logo-solo-64.png`,
|
|
41
|
+
|
|
42
|
+
// Deprecated:
|
|
43
|
+
metaTokens: []
|
|
40
44
|
}; exports.currencyInfo = currencyInfo
|
|
41
45
|
|
|
42
46
|
const engineInfo = {
|