From af9f5bd8249bf33838b82fcc59bfbf6d2b1819cb Mon Sep 17 00:00:00 2001 From: dynst <148708712+dynst@users.noreply.github.com> Date: Mon, 30 Jun 2025 00:00:00 +0000 Subject: [PATCH 01/14] remove lodash.includes() calls find packages/ -type f \( -name "*.js" \) -exec sed -i -E \ -e 's/_.includes\(([^,]+),[[:space:]]*([^)]+)\)/\1.includes(\2)/g' {} + --- packages/bitcore-lib-cash/lib/encoding/base58.js | 2 +- packages/bitcore-lib-cash/lib/hdprivatekey.js | 4 ++-- packages/bitcore-lib-cash/lib/hdpublickey.js | 2 +- packages/bitcore-lib-doge/lib/hdprivatekey.js | 4 ++-- packages/bitcore-lib-ltc/lib/hdprivatekey.js | 4 ++-- packages/bitcore-lib-ltc/lib/hdpublickey.js | 2 +- packages/bitcore-lib/lib/encoding/base58.js | 2 +- packages/bitcore-lib/lib/hdprivatekey.js | 4 ++-- packages/bitcore-lib/lib/hdpublickey.js | 2 +- packages/bitcore-wallet-service/test/integration/helpers.js | 2 +- 10 files changed, 14 insertions(+), 14 deletions(-) diff --git a/packages/bitcore-lib-cash/lib/encoding/base58.js b/packages/bitcore-lib-cash/lib/encoding/base58.js index a2b606fa19b..e0fb12f7ebc 100644 --- a/packages/bitcore-lib-cash/lib/encoding/base58.js +++ b/packages/bitcore-lib-cash/lib/encoding/base58.js @@ -26,7 +26,7 @@ Base58.validCharacters = function validCharacters(chars) { if (buffer.Buffer.isBuffer(chars)) { chars = chars.toString(); } - return _.every(_.map(chars, function(char) { return _.includes(ALPHABET, char); })); + return _.every(_.map(chars, function(char) { return ALPHABET.includes(char); })); }; Base58.prototype.set = function(obj) { diff --git a/packages/bitcore-lib-cash/lib/hdprivatekey.js b/packages/bitcore-lib-cash/lib/hdprivatekey.js index a42edbcfc00..ab013809507 100644 --- a/packages/bitcore-lib-cash/lib/hdprivatekey.js +++ b/packages/bitcore-lib-cash/lib/hdprivatekey.js @@ -99,11 +99,11 @@ HDPrivateKey._getDerivationIndexes = function(path) { var steps = path.split('/'); // Special cases: - if (_.includes(HDPrivateKey.RootElementAlias, path)) { + if (HDPrivateKey.RootElementAlias.includes(path)) { return []; } - if (!_.includes(HDPrivateKey.RootElementAlias, steps[0])) { + if (!HDPrivateKey.RootElementAlias.includes(steps[0])) { return null; } diff --git a/packages/bitcore-lib-cash/lib/hdpublickey.js b/packages/bitcore-lib-cash/lib/hdpublickey.js index 202e95e1c0f..526b1ae7d66 100644 --- a/packages/bitcore-lib-cash/lib/hdpublickey.js +++ b/packages/bitcore-lib-cash/lib/hdpublickey.js @@ -184,7 +184,7 @@ HDPublicKey.prototype._deriveWithNumber = function(index, hardened) { HDPublicKey.prototype._deriveFromString = function(path) { /* jshint maxcomplexity: 8 */ - if (_.includes(path, "'")) { + if (path.includes("'")) { throw new hdErrors.InvalidIndexCantDeriveHardened(); } else if (!HDPublicKey.isValidPath(path)) { throw new hdErrors.InvalidPath(path); diff --git a/packages/bitcore-lib-doge/lib/hdprivatekey.js b/packages/bitcore-lib-doge/lib/hdprivatekey.js index 82163a36dba..ff6f22c042d 100644 --- a/packages/bitcore-lib-doge/lib/hdprivatekey.js +++ b/packages/bitcore-lib-doge/lib/hdprivatekey.js @@ -100,11 +100,11 @@ HDPrivateKey._getDerivationIndexes = function(path) { var steps = path.split('/'); // Special cases: - if (_.includes(HDPrivateKey.RootElementAlias, path)) { + if (HDPrivateKey.RootElementAlias.includes(path)) { return []; } - if (!_.includes(HDPrivateKey.RootElementAlias, steps[0])) { + if (!HDPrivateKey.RootElementAlias.includes(steps[0])) { return null; } diff --git a/packages/bitcore-lib-ltc/lib/hdprivatekey.js b/packages/bitcore-lib-ltc/lib/hdprivatekey.js index 5286cf2002e..4a4f83613f5 100644 --- a/packages/bitcore-lib-ltc/lib/hdprivatekey.js +++ b/packages/bitcore-lib-ltc/lib/hdprivatekey.js @@ -98,11 +98,11 @@ HDPrivateKey._getDerivationIndexes = function(path) { var steps = path.split('/'); // Special cases: - if (_.includes(HDPrivateKey.RootElementAlias, path)) { + if (HDPrivateKey.RootElementAlias.includes(path)) { return []; } - if (!_.includes(HDPrivateKey.RootElementAlias, steps[0])) { + if (!HDPrivateKey.RootElementAlias.includes(steps[0])) { return null; } diff --git a/packages/bitcore-lib-ltc/lib/hdpublickey.js b/packages/bitcore-lib-ltc/lib/hdpublickey.js index a2e84faa5fa..4f4d28342d3 100644 --- a/packages/bitcore-lib-ltc/lib/hdpublickey.js +++ b/packages/bitcore-lib-ltc/lib/hdpublickey.js @@ -181,7 +181,7 @@ HDPublicKey.prototype._deriveWithNumber = function(index, hardened) { HDPublicKey.prototype._deriveFromString = function(path) { /* jshint maxcomplexity: 8 */ - if (_.includes(path, "'")) { + if (path.includes("'")) { throw new hdErrors.InvalidIndexCantDeriveHardened(); } else if (!HDPublicKey.isValidPath(path)) { throw new hdErrors.InvalidPath(path); diff --git a/packages/bitcore-lib/lib/encoding/base58.js b/packages/bitcore-lib/lib/encoding/base58.js index a2b606fa19b..e0fb12f7ebc 100644 --- a/packages/bitcore-lib/lib/encoding/base58.js +++ b/packages/bitcore-lib/lib/encoding/base58.js @@ -26,7 +26,7 @@ Base58.validCharacters = function validCharacters(chars) { if (buffer.Buffer.isBuffer(chars)) { chars = chars.toString(); } - return _.every(_.map(chars, function(char) { return _.includes(ALPHABET, char); })); + return _.every(_.map(chars, function(char) { return ALPHABET.includes(char); })); }; Base58.prototype.set = function(obj) { diff --git a/packages/bitcore-lib/lib/hdprivatekey.js b/packages/bitcore-lib/lib/hdprivatekey.js index e9bb35d7752..e0948593971 100644 --- a/packages/bitcore-lib/lib/hdprivatekey.js +++ b/packages/bitcore-lib/lib/hdprivatekey.js @@ -99,11 +99,11 @@ HDPrivateKey._getDerivationIndexes = function(path) { var steps = path.split('/'); // Special cases: - if (_.includes(HDPrivateKey.RootElementAlias, path)) { + if (HDPrivateKey.RootElementAlias.includes(path)) { return []; } - if (!_.includes(HDPrivateKey.RootElementAlias, steps[0])) { + if (!HDPrivateKey.RootElementAlias.includes(steps[0])) { return null; } diff --git a/packages/bitcore-lib/lib/hdpublickey.js b/packages/bitcore-lib/lib/hdpublickey.js index 2e26c8c9777..71d6f1dceaa 100644 --- a/packages/bitcore-lib/lib/hdpublickey.js +++ b/packages/bitcore-lib/lib/hdpublickey.js @@ -184,7 +184,7 @@ HDPublicKey.prototype._deriveWithNumber = function(index, hardened) { HDPublicKey.prototype._deriveFromString = function(path) { /* jshint maxcomplexity: 8 */ - if (_.includes(path, "'")) { + if (path.includes("'")) { throw new hdErrors.InvalidIndexCantDeriveHardened(); } else if (!HDPublicKey.isValidPath(path)) { throw new hdErrors.InvalidPath(path); diff --git a/packages/bitcore-wallet-service/test/integration/helpers.js b/packages/bitcore-wallet-service/test/integration/helpers.js index f137b7fe185..d2ad6ddd9e9 100644 --- a/packages/bitcore-wallet-service/test/integration/helpers.js +++ b/packages/bitcore-wallet-service/test/integration/helpers.js @@ -575,7 +575,7 @@ helpers.stubAddressActivity = function(activeAddresses, failsOn) { stubAddressActivityFailsOnCount++; - return cb(null, _.includes(activeAddresses, address)); + return cb(null, activeAddresses.includes(address)); }; }; From 28b0e28a2f23b456215fadfa4588fe819609d8af Mon Sep 17 00:00:00 2001 From: dynst <148708712+dynst@users.noreply.github.com> Date: Mon, 30 Jun 2025 00:00:00 +0000 Subject: [PATCH 02/14] remove lodash.takeRight() calls find packages/ -type f -name '*.js' -exec sed -i -E \ -e 's/_\.takeRight\(([^,]+), ([0-9])\)/\1.slice(-\2)/g' {} + --- .../test/integration/pushNotifications.js | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/packages/bitcore-wallet-service/test/integration/pushNotifications.js b/packages/bitcore-wallet-service/test/integration/pushNotifications.js index bfe8a84335e..b73e6a3f283 100644 --- a/packages/bitcore-wallet-service/test/integration/pushNotifications.js +++ b/packages/bitcore-wallet-service/test/integration/pushNotifications.js @@ -596,7 +596,7 @@ describe('Push notifications', function() { setTimeout(function() { var calls = requestStub.getCalls(); - var args = _.map(_.takeRight(calls, 2), function(c) { + var args = _.map(calls.slice(-2), function(c) { return c.args[0]; }); @@ -653,7 +653,7 @@ describe('Push notifications', function() { setTimeout(function() { var calls = requestStub.getCalls(); - var args = _.map(_.takeRight(calls, 3), function(c) { + var args = _.map(calls.slice(-3), function(c) { return c.args[0]; }); args[0].body.notification.title.should.contain('Payment sent'); @@ -855,7 +855,7 @@ describe('Push notifications', function() { setTimeout(function() { var calls = requestStub.getCalls(); calls.length.should.equal(2); - var args = _.map(_.takeRight(calls, 2), function(c) { + var args = _.map(calls.slice(-2), function(c) { return c.args[0]; }); args[1].notification.title.should.contain('New payment received'); @@ -951,7 +951,7 @@ describe('Push notifications', function() { setTimeout(function() { var calls = requestStub.getCalls(); calls.length.should.equal(2); - var args = _.map(_.takeRight(calls, 2), function(c) { + var args = _.map(calls.slice(-2), function(c) { return c.args[0]; }); args[1].body.notification.title.should.contain('New payment received'); @@ -985,7 +985,7 @@ describe('Push notifications', function() { setTimeout(function() { var calls = requestStub.getCalls(); calls.length.should.equal(2); - var args = _.map(_.takeRight(calls, 2), function(c) { + var args = _.map(calls.slice(-2), function(c) { return c.args[0]; }); args[1].body.notification.title.should.contain('New payment received'); @@ -1018,7 +1018,7 @@ describe('Push notifications', function() { setTimeout(function() { var calls = requestStub.getCalls(); calls.length.should.equal(2); - var args = _.map(_.takeRight(calls, 2), function(c) { + var args = _.map(calls.slice(-2), function(c) { return c.args[0]; }); args[1].body.notification.title.should.contain('Nuevo pago recibido'); @@ -1050,7 +1050,7 @@ describe('Push notifications', function() { setTimeout(function() { var calls = requestStub.getCalls(); calls.length.should.equal(2); - var args = _.map(_.takeRight(calls, 2), function(c) { + var args = _.map(calls.slice(-2), function(c) { return c.args[0]; }); args[1].body.notification.title.should.contain('New payment received'); From c801116642ae329cb9200d6f85246f12b7a99cca Mon Sep 17 00:00:00 2001 From: dynst <148708712+dynst@users.noreply.github.com> Date: Mon, 30 Jun 2025 00:00:00 +0000 Subject: [PATCH 03/14] replace lodash.each() calls find packages/ -type f -name '*.js' -exec sed -i -E \ -e 's/_\.each\(([^,]+), function\(([^\)]*)\) \{/\1.forEach((\2) => {/g' {} + find packages/ -type f -name '*.js' -exec sed -i -E \ -e 's/_\.each\((\[[^]]+\]), function\(([^\)]*)\) \{/\1.forEach((\2) => {/g' {} + --- packages/bitcore-lib-cash/lib/errors/index.js | 2 +- .../lib/transaction/sighash.js | 6 +++--- .../bitcore-lib-cash/test/crypto/signature.js | 2 +- packages/bitcore-lib-cash/test/hdkeys.js | 2 +- .../bitcore-lib-cash/test/hdprivatekey.js | 2 +- .../test/transaction/input/input.js | 2 +- packages/bitcore-lib-doge/lib/errors/index.js | 2 +- .../bitcore-lib-doge/test/crypto/signature.js | 2 +- packages/bitcore-lib-doge/test/hdkeys.js | 2 +- .../bitcore-lib-doge/test/hdprivatekey.js | 2 +- .../test/transaction/input/input.js | 2 +- packages/bitcore-lib-ltc/lib/errors/index.js | 2 +- .../bitcore-lib-ltc/test/crypto/signature.js | 2 +- packages/bitcore-lib-ltc/test/hdkeys.js | 2 +- packages/bitcore-lib-ltc/test/hdprivatekey.js | 2 +- .../test/transaction/input/input.js | 2 +- packages/bitcore-lib/lib/errors/index.js | 2 +- .../lib/transaction/input/multisig.js | 2 +- packages/bitcore-lib/test/crypto/signature.js | 2 +- packages/bitcore-lib/test/hdkeys.js | 2 +- packages/bitcore-lib/test/hdprivatekey.js | 2 +- .../test/transaction/input/input.js | 2 +- .../test/integration/helpers.js | 4 ++-- .../test/integration/history.js | 20 +++++++++---------- .../bitcore-wallet-service/test/storage.js | 4 ++-- packages/bitcore-wallet/bin/cli-utils.js | 2 +- packages/bitcore-wallet/test/cliUtils.js | 8 ++++---- 27 files changed, 43 insertions(+), 43 deletions(-) diff --git a/packages/bitcore-lib-cash/lib/errors/index.js b/packages/bitcore-lib-cash/lib/errors/index.js index de6f7311ecf..2453b038c05 100644 --- a/packages/bitcore-lib-cash/lib/errors/index.js +++ b/packages/bitcore-lib-cash/lib/errors/index.js @@ -30,7 +30,7 @@ var traverseNode = function(parent, errorDefinition) { /* jshint latedef: false */ var childDefinitions = function(parent, childDefinitions) { - _.each(childDefinitions, function(childDefinition) { + childDefinitions.forEach((childDefinition) => { traverseNode(parent, childDefinition); }); }; diff --git a/packages/bitcore-lib-cash/lib/transaction/sighash.js b/packages/bitcore-lib-cash/lib/transaction/sighash.js index d67d4422190..4e23074d4b4 100644 --- a/packages/bitcore-lib-cash/lib/transaction/sighash.js +++ b/packages/bitcore-lib-cash/lib/transaction/sighash.js @@ -37,7 +37,7 @@ var sighashForForkId = function(transaction, sighashType, inputNumber, subscript function GetPrevoutHash(tx) { var writer = new BufferWriter() - _.each(tx.inputs, function(input) { + tx.inputs.forEach((input) => { writer.writeReverse(input.prevTxId); writer.writeUInt32LE(input.outputIndex); }); @@ -50,7 +50,7 @@ var sighashForForkId = function(transaction, sighashType, inputNumber, subscript function GetSequenceHash(tx) { var writer = new BufferWriter() - _.each(tx.inputs, function(input) { + tx.inputs.forEach((input) => { writer.writeUInt32LE(input.sequenceNumber); }); @@ -63,7 +63,7 @@ var sighashForForkId = function(transaction, sighashType, inputNumber, subscript var writer = new BufferWriter() if ( _.isUndefined(n)) { - _.each(tx.outputs, function(output) { + tx.outputs.forEach((output) => { output.toBufferWriter(writer); }); } else { diff --git a/packages/bitcore-lib-cash/test/crypto/signature.js b/packages/bitcore-lib-cash/test/crypto/signature.js index f214374225b..8da8a7dd787 100644 --- a/packages/bitcore-lib-cash/test/crypto/signature.js +++ b/packages/bitcore-lib-cash/test/crypto/signature.js @@ -330,7 +330,7 @@ describe('Signature', function() { [(Signature.SIGHASH_ANYONECANPAY | Signature.SIGHASH_SINGLE) + 1, false], [(Signature.SIGHASH_ANYONECANPAY | Signature.SIGHASH_ALL) - 1, false], ]; - _.each(testCases, function(testCase) { + testCases.forEach((testCase) => { sig.nhashtype = testCase[0]; sig.hasDefinedHashtype().should.equal(testCase[1]); }); diff --git a/packages/bitcore-lib-cash/test/hdkeys.js b/packages/bitcore-lib-cash/test/hdkeys.js index 0cc0d9edcf8..9e4dee949cf 100644 --- a/packages/bitcore-lib-cash/test/hdkeys.js +++ b/packages/bitcore-lib-cash/test/hdkeys.js @@ -23,7 +23,7 @@ describe('HDKeys building with static methods', function() { var classes = [HDPublicKey, HDPrivateKey]; var clazz, index; - _.each(classes, function(clazz) { + classes.forEach((clazz) => { var expectStaticMethodFail = function(staticMethod, argument, message) { expect(clazz[staticMethod].bind(null, argument)).to.throw(message); }; diff --git a/packages/bitcore-lib-cash/test/hdprivatekey.js b/packages/bitcore-lib-cash/test/hdprivatekey.js index 3102b80a9c8..0f9fb50ab18 100644 --- a/packages/bitcore-lib-cash/test/hdprivatekey.js +++ b/packages/bitcore-lib-cash/test/hdprivatekey.js @@ -313,7 +313,7 @@ describe('HDPrivate key interface', function() { it('toObject leaves no Buffer instances', function() { var privKey = new HDPrivateKey(xprivkey); var object = privKey.toObject(); - _.each(_.values(object), function(value) { + _.values(object).forEach((value) => { expect(BufferUtil.isBuffer(value)).to.equal(false); }); }); diff --git a/packages/bitcore-lib-cash/test/transaction/input/input.js b/packages/bitcore-lib-cash/test/transaction/input/input.js index 35ba0d857c9..edf49ea80b5 100644 --- a/packages/bitcore-lib-cash/test/transaction/input/input.js +++ b/packages/bitcore-lib-cash/test/transaction/input/input.js @@ -53,7 +53,7 @@ describe('Transaction.Input', function() { it('has abstract methods: "getSignatures", "isFullySigned", "addSignature", "clearSignatures"', function() { var input = new Input(output); - _.each(['getSignatures', 'isFullySigned', 'addSignature', 'clearSignatures'], function(method) { + ['getSignatures', 'isFullySigned', 'addSignature', 'clearSignatures'].forEach((method) => { expect(function() { return input[method](); }).to.throw(errors.AbstractMethodInvoked); diff --git a/packages/bitcore-lib-doge/lib/errors/index.js b/packages/bitcore-lib-doge/lib/errors/index.js index 1193313a1a9..677d2215b82 100644 --- a/packages/bitcore-lib-doge/lib/errors/index.js +++ b/packages/bitcore-lib-doge/lib/errors/index.js @@ -30,7 +30,7 @@ var traverseNode = function(parent, errorDefinition) { /* jshint latedef: false */ var childDefinitions = function(parent, childDefinitions) { - _.each(childDefinitions, function(childDefinition) { + childDefinitions.forEach((childDefinition) => { traverseNode(parent, childDefinition); }); }; diff --git a/packages/bitcore-lib-doge/test/crypto/signature.js b/packages/bitcore-lib-doge/test/crypto/signature.js index 5ea73c03369..6a2bc8982da 100644 --- a/packages/bitcore-lib-doge/test/crypto/signature.js +++ b/packages/bitcore-lib-doge/test/crypto/signature.js @@ -330,7 +330,7 @@ describe('Signature', function() { [(Signature.SIGHASH_ANYONECANPAY | Signature.SIGHASH_SINGLE) + 1, false], [(Signature.SIGHASH_ANYONECANPAY | Signature.SIGHASH_ALL) - 1, false], ]; - _.each(testCases, function(testCase) { + testCases.forEach((testCase) => { sig.nhashtype = testCase[0]; sig.hasDefinedHashtype().should.equal(testCase[1]); }); diff --git a/packages/bitcore-lib-doge/test/hdkeys.js b/packages/bitcore-lib-doge/test/hdkeys.js index e4dbbd20744..2a5dd952cc4 100644 --- a/packages/bitcore-lib-doge/test/hdkeys.js +++ b/packages/bitcore-lib-doge/test/hdkeys.js @@ -23,7 +23,7 @@ describe('HDKeys building with static methods', function() { var classes = [HDPublicKey, HDPrivateKey]; var clazz, index; - _.each(classes, function(clazz) { + classes.forEach((clazz) => { var expectStaticMethodFail = function(staticMethod, argument, message) { expect(clazz[staticMethod].bind(null, argument)).to.throw(message); }; diff --git a/packages/bitcore-lib-doge/test/hdprivatekey.js b/packages/bitcore-lib-doge/test/hdprivatekey.js index 1cf6e74fd94..7812d60f78c 100644 --- a/packages/bitcore-lib-doge/test/hdprivatekey.js +++ b/packages/bitcore-lib-doge/test/hdprivatekey.js @@ -303,7 +303,7 @@ describe('HDPrivate key interface', function() { it('toObject leaves no Buffer instances', function() { var privKey = new HDPrivateKey(xprivkey); var object = privKey.toObject(); - _.each(_.values(object), function(value) { + _.values(object).forEach((value) => { expect(BufferUtil.isBuffer(value)).to.equal(false); }); }); diff --git a/packages/bitcore-lib-doge/test/transaction/input/input.js b/packages/bitcore-lib-doge/test/transaction/input/input.js index 80657f2b256..bc263ce2e3c 100644 --- a/packages/bitcore-lib-doge/test/transaction/input/input.js +++ b/packages/bitcore-lib-doge/test/transaction/input/input.js @@ -53,7 +53,7 @@ describe('Transaction.Input', function() { it('has abstract methods: "getSignatures", "isFullySigned", "addSignature", "clearSignatures"', function() { var input = new Input(output); - _.each(['getSignatures', 'isFullySigned', 'addSignature', 'clearSignatures'], function(method) { + ['getSignatures', 'isFullySigned', 'addSignature', 'clearSignatures'].forEach((method) => { expect(function() { return input[method](); }).to.throw(errors.AbstractMethodInvoked); diff --git a/packages/bitcore-lib-ltc/lib/errors/index.js b/packages/bitcore-lib-ltc/lib/errors/index.js index db0b50bc01d..d22bb148288 100644 --- a/packages/bitcore-lib-ltc/lib/errors/index.js +++ b/packages/bitcore-lib-ltc/lib/errors/index.js @@ -30,7 +30,7 @@ var traverseNode = function(parent, errorDefinition) { /* jshint latedef: false */ var childDefinitions = function(parent, childDefinitions) { - _.each(childDefinitions, function(childDefinition) { + childDefinitions.forEach((childDefinition) => { traverseNode(parent, childDefinition); }); }; diff --git a/packages/bitcore-lib-ltc/test/crypto/signature.js b/packages/bitcore-lib-ltc/test/crypto/signature.js index 6b182091da5..14bf3e3d5bf 100644 --- a/packages/bitcore-lib-ltc/test/crypto/signature.js +++ b/packages/bitcore-lib-ltc/test/crypto/signature.js @@ -330,7 +330,7 @@ describe('Signature', function() { [(Signature.SIGHASH_ANYONECANPAY | Signature.SIGHASH_SINGLE) + 1, false], [(Signature.SIGHASH_ANYONECANPAY | Signature.SIGHASH_ALL) - 1, false], ]; - _.each(testCases, function(testCase) { + testCases.forEach((testCase) => { sig.nhashtype = testCase[0]; sig.hasDefinedHashtype().should.equal(testCase[1]); }); diff --git a/packages/bitcore-lib-ltc/test/hdkeys.js b/packages/bitcore-lib-ltc/test/hdkeys.js index 44cc8766487..fb966dc71f5 100644 --- a/packages/bitcore-lib-ltc/test/hdkeys.js +++ b/packages/bitcore-lib-ltc/test/hdkeys.js @@ -23,7 +23,7 @@ describe('HDKeys building with static methods', function() { var classes = [HDPublicKey, HDPrivateKey]; var clazz, index; - _.each(classes, function(clazz) { + classes.forEach((clazz) => { var expectStaticMethodFail = function(staticMethod, argument, message) { expect(clazz[staticMethod].bind(null, argument)).to.throw(message); }; diff --git a/packages/bitcore-lib-ltc/test/hdprivatekey.js b/packages/bitcore-lib-ltc/test/hdprivatekey.js index 5f350597b26..eed8d804c30 100644 --- a/packages/bitcore-lib-ltc/test/hdprivatekey.js +++ b/packages/bitcore-lib-ltc/test/hdprivatekey.js @@ -300,7 +300,7 @@ describe('HDPrivate key interface', function() { it('toObject leaves no Buffer instances', function() { var privKey = new HDPrivateKey(xprivkey); var object = privKey.toObject(); - _.each(_.values(object), function(value) { + _.values(object).forEach((value) => { expect(BufferUtil.isBuffer(value)).to.equal(false); }); }); diff --git a/packages/bitcore-lib-ltc/test/transaction/input/input.js b/packages/bitcore-lib-ltc/test/transaction/input/input.js index deab73c0d58..5b8b1b4081a 100644 --- a/packages/bitcore-lib-ltc/test/transaction/input/input.js +++ b/packages/bitcore-lib-ltc/test/transaction/input/input.js @@ -53,7 +53,7 @@ describe('Transaction.Input', function() { it('has abstract methods: "getSignatures", "isFullySigned", "addSignature", "clearSignatures"', function() { var input = new Input(output); - _.each(['getSignatures', 'isFullySigned', 'addSignature', 'clearSignatures'], function(method) { + ['getSignatures', 'isFullySigned', 'addSignature', 'clearSignatures'].forEach((method) => { expect(function() { return input[method](); }).to.throw(errors.AbstractMethodInvoked); diff --git a/packages/bitcore-lib/lib/errors/index.js b/packages/bitcore-lib/lib/errors/index.js index de6f7311ecf..2453b038c05 100644 --- a/packages/bitcore-lib/lib/errors/index.js +++ b/packages/bitcore-lib/lib/errors/index.js @@ -30,7 +30,7 @@ var traverseNode = function(parent, errorDefinition) { /* jshint latedef: false */ var childDefinitions = function(parent, childDefinitions) { - _.each(childDefinitions, function(childDefinition) { + childDefinitions.forEach((childDefinition) => { traverseNode(parent, childDefinition); }); }; diff --git a/packages/bitcore-lib/lib/transaction/input/multisig.js b/packages/bitcore-lib/lib/transaction/input/multisig.js index 33cf7d8d67f..d6a54fe4df1 100644 --- a/packages/bitcore-lib/lib/transaction/input/multisig.js +++ b/packages/bitcore-lib/lib/transaction/input/multisig.js @@ -32,7 +32,7 @@ function MultiSigInput(input, pubkeys, threshold, signatures, opts) { $.checkState(Script.buildMultisigOut(this.publicKeys, threshold).equals(this.output.script), 'Provided public keys don\'t match to the provided output script'); this.publicKeyIndex = {}; - _.each(this.publicKeys, function(publicKey, index) { + this.publicKeys.forEach((publicKey, index) => { self.publicKeyIndex[publicKey.toString()] = index; }); this.threshold = threshold; diff --git a/packages/bitcore-lib/test/crypto/signature.js b/packages/bitcore-lib/test/crypto/signature.js index 0f65f3c3da6..3aa3f0d1fb9 100644 --- a/packages/bitcore-lib/test/crypto/signature.js +++ b/packages/bitcore-lib/test/crypto/signature.js @@ -330,7 +330,7 @@ describe('Signature', function() { [(Signature.SIGHASH_ANYONECANPAY | Signature.SIGHASH_SINGLE) + 1, false], [(Signature.SIGHASH_ANYONECANPAY | Signature.SIGHASH_ALL) - 1, false], ]; - _.each(testCases, function(testCase) { + testCases.forEach((testCase) => { sig.nhashtype = testCase[0]; sig.hasDefinedHashtype().should.equal(testCase[1]); }); diff --git a/packages/bitcore-lib/test/hdkeys.js b/packages/bitcore-lib/test/hdkeys.js index 0cc0d9edcf8..9e4dee949cf 100644 --- a/packages/bitcore-lib/test/hdkeys.js +++ b/packages/bitcore-lib/test/hdkeys.js @@ -23,7 +23,7 @@ describe('HDKeys building with static methods', function() { var classes = [HDPublicKey, HDPrivateKey]; var clazz, index; - _.each(classes, function(clazz) { + classes.forEach((clazz) => { var expectStaticMethodFail = function(staticMethod, argument, message) { expect(clazz[staticMethod].bind(null, argument)).to.throw(message); }; diff --git a/packages/bitcore-lib/test/hdprivatekey.js b/packages/bitcore-lib/test/hdprivatekey.js index 7236a69507d..b31964684df 100644 --- a/packages/bitcore-lib/test/hdprivatekey.js +++ b/packages/bitcore-lib/test/hdprivatekey.js @@ -302,7 +302,7 @@ describe('HDPrivate key interface', function() { it('toObject leaves no Buffer instances', function() { var privKey = new HDPrivateKey(xprivkey); var object = privKey.toObject(); - _.each(_.values(object), function(value) { + _.values(object).forEach((value) => { expect(BufferUtil.isBuffer(value)).to.equal(false); }); }); diff --git a/packages/bitcore-lib/test/transaction/input/input.js b/packages/bitcore-lib/test/transaction/input/input.js index a8343c96020..603e713674a 100644 --- a/packages/bitcore-lib/test/transaction/input/input.js +++ b/packages/bitcore-lib/test/transaction/input/input.js @@ -53,7 +53,7 @@ describe('Transaction.Input', function() { it('has abstract methods: "getSignatures", "isFullySigned", "addSignature", "clearSignatures"', function() { var input = new Input(output); - _.each(['getSignatures', 'isFullySigned', 'addSignature', 'clearSignatures'], function(method) { + ['getSignatures', 'isFullySigned', 'addSignature', 'clearSignatures'].forEach((method) => { expect(function() { return input[method](); }).to.throw(errors.AbstractMethodInvoked); diff --git a/packages/bitcore-wallet-service/test/integration/helpers.js b/packages/bitcore-wallet-service/test/integration/helpers.js index d2ad6ddd9e9..d4b25d60aea 100644 --- a/packages/bitcore-wallet-service/test/integration/helpers.js +++ b/packages/bitcore-wallet-service/test/integration/helpers.js @@ -190,7 +190,7 @@ helpers._generateCopayersTestData = function() { ]; console.log('var copayers = ['); - _.each(xPrivKeys, function(xPrivKeyStr, c) { + xPrivKeys.forEach((xPrivKeyStr, c) => { var xpriv = Bitcore.HDPrivateKey(xPrivKeyStr); var xpub = Bitcore.HDPublicKey(xpriv); @@ -611,7 +611,7 @@ helpers.clientSign = function(txp, derivedXPrivKey) { } break; default: - _.each(txp.inputs, function(i) { + txp.inputs.forEach((i) => { if (!derived[i.path]) { derived[i.path] = xpriv.deriveChild(i.path).privateKey; privs.push(derived[i.path]); diff --git a/packages/bitcore-wallet-service/test/integration/history.js b/packages/bitcore-wallet-service/test/integration/history.js index aa8f4c6b8d7..6b7d1c5f50f 100644 --- a/packages/bitcore-wallet-service/test/integration/history.js +++ b/packages/bitcore-wallet-service/test/integration/history.js @@ -101,7 +101,7 @@ describe('History', function() { should.exist(txs); txs.length.should.equal(20); var i = 0; - _.each(txs, function(tx) { + txs.forEach((tx) => { tx.txid.should.equal('txid' + i); tx.confirmations.should.equal(i); if (i) { @@ -333,7 +333,7 @@ describe('History', function() { _.first(txs).id.should.equal('id20'); var i = 20; - _.each(txs, function(tx) { + txs.forEach((tx) => { tx.txid.should.equal('txid' + i); tx.confirmations.should.equal(i); tx.blockheight.should.equal(BCHEIGHT - i + 1); @@ -368,7 +368,7 @@ describe('History', function() { _.first(txs).id.should.equal('id5'); var i = 5; - _.each(txs, function(tx) { + txs.forEach((tx) => { tx.txid.should.equal('txid' + i); tx.confirmations.should.equal(i); tx.blockheight.should.equal(BCHEIGHT - i + 1); @@ -401,7 +401,7 @@ describe('History', function() { should.not.exist(err); fromCache.should.equal(true); var i = 5; - _.each(txs, function(tx) { + txs.forEach((tx) => { tx.confirmations.should.equal(i + heightOffset); i++; }); @@ -460,7 +460,7 @@ describe('History', function() { (err) => { should.not.exist(err); let i = 0; - _.each(allTxs, function(x) { + allTxs.forEach((x) => { x.id.should.equal('id' + i); i++; }); @@ -515,7 +515,7 @@ describe('History', function() { (err) => { should.not.exist(err); let i = 0; - _.each(allTxs, function(x) { + allTxs.forEach((x) => { x.id.should.equal('id' + i); i++; }); @@ -568,7 +568,7 @@ describe('History', function() { (err) => { should.not.exist(err); let i = 0; - _.each(allTxs, function(x) { + allTxs.forEach((x) => { x.id.should.equal('id' + i); i++; }); @@ -623,7 +623,7 @@ describe('History', function() { (err) => { should.not.exist(err); let i = 0; - _.each(allTxs, function(x) { + allTxs.forEach((x) => { x.id.should.equal('id' + i); i++; }); @@ -652,11 +652,11 @@ describe('History', function() { should.exist(txs2); txs2.length.should.equal(21); var i = 0; - _.each(txs, function(tx) { + txs.forEach((tx) => { tx.txid.should.equal('txid' + i++); }); var i = 5; - _.each(txs2, function(tx) { + txs2.forEach((tx) => { tx.txid.should.equal('txid' + i++); }); done(); diff --git a/packages/bitcore-wallet-service/test/storage.js b/packages/bitcore-wallet-service/test/storage.js index ba90e7042bf..50b9d178152 100644 --- a/packages/bitcore-wallet-service/test/storage.js +++ b/packages/bitcore-wallet-service/test/storage.js @@ -79,7 +79,7 @@ describe('Storage', function() { coin: 'btc', network: 'livenet', }); - _.each(_.range(3), function(i) { + _.range(3).forEach((i) => { var copayer = Model.Copayer.create({ coin: 'btc', name: 'copayer ' + i, @@ -128,7 +128,7 @@ describe('Storage', function() { coin: 'btc', network: 'livenet', }); - _.each(_.range(3), function(i) { + _.range(3).forEach((i) => { var copayer = Model.Copayer.create({ coin: 'btc', name: 'copayer ' + i, diff --git a/packages/bitcore-wallet/bin/cli-utils.js b/packages/bitcore-wallet/bin/cli-utils.js index 17f4610be20..81ea05d8fbc 100644 --- a/packages/bitcore-wallet/bin/cli-utils.js +++ b/packages/bitcore-wallet/bin/cli-utils.js @@ -356,7 +356,7 @@ Utils.renderTxProposals = function(txps) { console.log("* TX Proposals:") - _.each(txps, function(x) { + txps.forEach((x) => { var missingSignatures = x.requiredSignatures - _.filter(_.values(x.actions), function(a) { return a.type == 'accept'; }).length; diff --git a/packages/bitcore-wallet/test/cliUtils.js b/packages/bitcore-wallet/test/cliUtils.js index ae3d14440fe..6d4db70595e 100644 --- a/packages/bitcore-wallet/test/cliUtils.js +++ b/packages/bitcore-wallet/test/cliUtils.js @@ -20,7 +20,7 @@ describe('CliUtils', function() { '10-10': [10, 10], '10-of-10': [10, 10], }; - _.each(texts, function(expected, text) { + texts.forEach((expected, text) => { var result = CliUtils.parseMN(text); result.should.deep.equal(expected); }); @@ -42,7 +42,7 @@ describe('CliUtils', function() { '1--2', 'x-of-2', ]; - _.each(texts, function(text) { + texts.forEach((text) => { var valid = true; try { CliUtils.parseMN(text); @@ -78,7 +78,7 @@ describe('CliUtils', function() { '0.123btc': 12300000, '0.123 bTc': 12300000, }; - _.each(texts, function(satoshi, text) { + texts.forEach((satoshi, text) => { var amount = CliUtils.parseAmount(text); amount.should.equal(satoshi); }); @@ -100,7 +100,7 @@ describe('CliUtils', function() { '0.123bit', '2.000000009btc', ]; - _.each(texts, function(text) { + texts.forEach((text) => { var valid = true; try { CliUtils.parseAmount(text); From f56ccaf90213fab09faf433e5089195744dfabf3 Mon Sep 17 00:00:00 2001 From: dynst <148708712+dynst@users.noreply.github.com> Date: Mon, 30 Jun 2025 00:00:00 +0000 Subject: [PATCH 04/14] remove most lodash use from cli scripts --- packages/bitcore-wallet/bin/wallet-addresses | 3 +-- packages/bitcore-wallet/bin/wallet-ads | 9 ++++----- packages/bitcore-wallet/bin/wallet-ads-delete | 3 +-- packages/bitcore-wallet/bin/wallet-ads-get | 3 +-- packages/bitcore-wallet/bin/wallet-ads-update | 3 +-- packages/bitcore-wallet/bin/wallet-airsign | 5 ++--- packages/bitcore-wallet/bin/wallet-broadcast | 1 - packages/bitcore-wallet/bin/wallet-confirm | 3 +-- packages/bitcore-wallet/bin/wallet-export | 1 - packages/bitcore-wallet/bin/wallet-get-ad | 3 +-- packages/bitcore-wallet/bin/wallet-history | 5 ++--- packages/bitcore-wallet/bin/wallet-recreate | 1 - packages/bitcore-wallet/bin/wallet-reject | 1 - packages/bitcore-wallet/bin/wallet-rm | 1 - packages/bitcore-wallet/bin/wallet-scan | 1 - packages/bitcore-wallet/bin/wallet-sign | 1 - packages/bitcore-wallet/bin/wallet-txproposals | 1 - 17 files changed, 14 insertions(+), 31 deletions(-) diff --git a/packages/bitcore-wallet/bin/wallet-addresses b/packages/bitcore-wallet/bin/wallet-addresses index 0492cd2104a..4c1168584f0 100755 --- a/packages/bitcore-wallet/bin/wallet-addresses +++ b/packages/bitcore-wallet/bin/wallet-addresses @@ -1,6 +1,5 @@ #!/usr/bin/env node -var _ = require('lodash'); var program = require('commander'); var utils = require('./cli-utils'); program = utils.configureCommander(program); @@ -20,7 +19,7 @@ utils.getClient(program, { mustExist: true }, function (client) { if (x.length > 0) { console.log('* Addresses:'); - _.each(x, function(a) { + x.forEach((a) => { console.log(' ', a.address); }); } else { diff --git a/packages/bitcore-wallet/bin/wallet-ads b/packages/bitcore-wallet/bin/wallet-ads index f38e397002c..134d969d910 100755 --- a/packages/bitcore-wallet/bin/wallet-ads +++ b/packages/bitcore-wallet/bin/wallet-ads @@ -1,6 +1,5 @@ #!/usr/bin/env node -var _ = require('lodash'); var program = require('commander'); var utils = require('./cli-utils'); var Client = require('bitcore-wallet-client').default; @@ -58,14 +57,14 @@ var requiredArgs = { } let missingArgs = []; -_.forEach(requiredArgs, (value, requiredArg) => { +requiredArgs.forEach((value, requiredArg) => { if (value === undefined) { missingArgs.push(requiredArg); } }); -if (!_.isEmpty(missingArgs)) { - _.forEach(missingArgs, (arg) => { +if (missingArgs.length !== 0) { + missingArgs.forEach((arg) => { console.log(arg + ' is missing. Please run again with correct arguments.') }); @@ -127,4 +126,4 @@ utils.getClient(clientArgs, { console.log('Succesfully Created advertisement ', result); } }); -}); \ No newline at end of file +}); diff --git a/packages/bitcore-wallet/bin/wallet-ads-delete b/packages/bitcore-wallet/bin/wallet-ads-delete index a33f542d6a1..b37011f2348 100755 --- a/packages/bitcore-wallet/bin/wallet-ads-delete +++ b/packages/bitcore-wallet/bin/wallet-ads-delete @@ -1,6 +1,5 @@ #!/usr/bin/env node -var _ = require('lodash'); var program = require('commander'); var utils = require('./cli-utils'); program = utils.configureCommander(program); @@ -35,4 +34,4 @@ utils.getClient(clientArgs, { console.log('Deleted advertisement ', result); } }); -}); \ No newline at end of file +}); diff --git a/packages/bitcore-wallet/bin/wallet-ads-get b/packages/bitcore-wallet/bin/wallet-ads-get index 1747da91b5c..425dce4f4e4 100755 --- a/packages/bitcore-wallet/bin/wallet-ads-get +++ b/packages/bitcore-wallet/bin/wallet-ads-get @@ -1,6 +1,5 @@ #!/usr/bin/env node -var _ = require('lodash'); var program = require('commander'); var utils = require('./cli-utils'); program = utils.configureCommander(program); @@ -28,4 +27,4 @@ utils.getClient(clientArgs, { console.log('Retrieved adverts ', result); } }); -}); \ No newline at end of file +}); diff --git a/packages/bitcore-wallet/bin/wallet-ads-update b/packages/bitcore-wallet/bin/wallet-ads-update index 6e481bac247..704a125ed21 100755 --- a/packages/bitcore-wallet/bin/wallet-ads-update +++ b/packages/bitcore-wallet/bin/wallet-ads-update @@ -1,6 +1,5 @@ #!/usr/bin/env node -var _ = require('lodash'); var program = require('commander'); var utils = require('./cli-utils'); program = utils.configureCommander(program); @@ -49,4 +48,4 @@ utils.getClient(clientArgs, { } }); } -}); \ No newline at end of file +}); diff --git a/packages/bitcore-wallet/bin/wallet-airsign b/packages/bitcore-wallet/bin/wallet-airsign index ea05d37282d..547283518f1 100755 --- a/packages/bitcore-wallet/bin/wallet-airsign +++ b/packages/bitcore-wallet/bin/wallet-airsign @@ -1,6 +1,5 @@ #!/usr/bin/env node -var _ = require('lodash'); var fs = require('fs'); var program = require('commander'); var utils = require('./cli-utils'); @@ -20,7 +19,7 @@ var file = args[0]; utils.getClient(program, { mustExist: true, doNotComplete: true }, function (client) { var task = JSON.parse(fs.readFileSync(file)); var errors = []; - var signatures = _.map(task.txps, function (txp) { + var signatures = task.txps.map((txp) => { try { return { txpId: txp.id, @@ -42,7 +41,7 @@ utils.getClient(program, { mustExist: true, doNotComplete: true }, function (cli } } else { console.log('Error signing transactions:'); - _.each(errors, function (e) { + errors.forEach((e) => { console.log('\tTransaction %s: %s', e.txp.id, e.error.message); }); } diff --git a/packages/bitcore-wallet/bin/wallet-broadcast b/packages/bitcore-wallet/bin/wallet-broadcast index dccc4f6ce1b..cd286bf5afa 100755 --- a/packages/bitcore-wallet/bin/wallet-broadcast +++ b/packages/bitcore-wallet/bin/wallet-broadcast @@ -1,6 +1,5 @@ #!/usr/bin/env node -var _ = require('lodash'); var program = require('commander'); var utils = require('./cli-utils'); program = utils.configureCommander(program); diff --git a/packages/bitcore-wallet/bin/wallet-confirm b/packages/bitcore-wallet/bin/wallet-confirm index 4bc68b72667..012eedbde7e 100755 --- a/packages/bitcore-wallet/bin/wallet-confirm +++ b/packages/bitcore-wallet/bin/wallet-confirm @@ -1,6 +1,5 @@ #!/usr/bin/env node -var _ = require('lodash'); var program = require('commander'); var utils = require('./cli-utils'); program = utils.configureCommander(program); @@ -20,7 +19,7 @@ utils.getClient(program, { mustExist: true }, function (client) { console.log('\n * Copayer confirmation IDs:'); var myConfirmationId; - _.each(x.wallet.copayers, function(x) { + x.wallet.copayers.forEach((x) => { var confirmationId = utils.confirmationId(x); if (x.id != client.credentials.copayerId) console.log('\t\t* %s : %s', x.name, confirmationId); diff --git a/packages/bitcore-wallet/bin/wallet-export b/packages/bitcore-wallet/bin/wallet-export index 2ebf7a4b7a8..f7666a26c38 100755 --- a/packages/bitcore-wallet/bin/wallet-export +++ b/packages/bitcore-wallet/bin/wallet-export @@ -3,7 +3,6 @@ var program = require('commander'); var qr = require('qr-image'); var fs = require('fs'); -var _ = require('lodash'); var utils = require('./cli-utils'); program = utils.configureCommander(program); diff --git a/packages/bitcore-wallet/bin/wallet-get-ad b/packages/bitcore-wallet/bin/wallet-get-ad index 1747da91b5c..425dce4f4e4 100644 --- a/packages/bitcore-wallet/bin/wallet-get-ad +++ b/packages/bitcore-wallet/bin/wallet-get-ad @@ -1,6 +1,5 @@ #!/usr/bin/env node -var _ = require('lodash'); var program = require('commander'); var utils = require('./cli-utils'); program = utils.configureCommander(program); @@ -28,4 +27,4 @@ utils.getClient(clientArgs, { console.log('Retrieved adverts ', result); } }); -}); \ No newline at end of file +}); diff --git a/packages/bitcore-wallet/bin/wallet-history b/packages/bitcore-wallet/bin/wallet-history index d27af66a79f..7d58fc61e32 100755 --- a/packages/bitcore-wallet/bin/wallet-history +++ b/packages/bitcore-wallet/bin/wallet-history @@ -1,6 +1,5 @@ #!/usr/bin/env node -var _ = require('lodash'); var fs = require('fs'); var moment = require('moment'); var async = require('async'); @@ -121,7 +120,7 @@ utils.getClient(program, { mustExist: true }, function (client) { }, function(err, txs) { if (err) return cb(err); - if (_.isEmpty(txs)) + if (txs.length === 0) return; got = txs.length; @@ -138,7 +137,7 @@ utils.getClient(program, { mustExist: true }, function (client) { console.warn('Output file updated') }); } else { - _.each(txs, function(tx) { + txs.forEach((tx) => { var time = moment(tx.time * 1000).fromNow(); var amount = utils.renderAmount(tx.amount); var confirmations = tx.confirmations || 0; diff --git a/packages/bitcore-wallet/bin/wallet-recreate b/packages/bitcore-wallet/bin/wallet-recreate index 647f90dc7c4..87044fae4ae 100755 --- a/packages/bitcore-wallet/bin/wallet-recreate +++ b/packages/bitcore-wallet/bin/wallet-recreate @@ -1,6 +1,5 @@ #!/usr/bin/env node -var _ = require('lodash'); var program = require('commander'); var utils = require('./cli-utils'); program = utils.configureCommander(program); diff --git a/packages/bitcore-wallet/bin/wallet-reject b/packages/bitcore-wallet/bin/wallet-reject index c40c70bfb19..c172abb0e38 100755 --- a/packages/bitcore-wallet/bin/wallet-reject +++ b/packages/bitcore-wallet/bin/wallet-reject @@ -1,6 +1,5 @@ #!/usr/bin/env node -var _ = require('lodash'); var program = require('commander'); var utils = require('./cli-utils'); program = utils.configureCommander(program); diff --git a/packages/bitcore-wallet/bin/wallet-rm b/packages/bitcore-wallet/bin/wallet-rm index 304db57efef..82b7798bcbe 100755 --- a/packages/bitcore-wallet/bin/wallet-rm +++ b/packages/bitcore-wallet/bin/wallet-rm @@ -1,6 +1,5 @@ #!/usr/bin/env node -var _ = require('lodash'); var program = require('commander'); var utils = require('./cli-utils'); program = utils.configureCommander(program); diff --git a/packages/bitcore-wallet/bin/wallet-scan b/packages/bitcore-wallet/bin/wallet-scan index 8ee166dab95..3982517eef4 100755 --- a/packages/bitcore-wallet/bin/wallet-scan +++ b/packages/bitcore-wallet/bin/wallet-scan @@ -1,6 +1,5 @@ #!/usr/bin/env node -var _ = require('lodash'); var program = require('commander'); var utils = require('./cli-utils'); program = utils.configureCommander(program); diff --git a/packages/bitcore-wallet/bin/wallet-sign b/packages/bitcore-wallet/bin/wallet-sign index 16dfa518665..768dc53eec0 100755 --- a/packages/bitcore-wallet/bin/wallet-sign +++ b/packages/bitcore-wallet/bin/wallet-sign @@ -1,6 +1,5 @@ #!/usr/bin/env node -var _ = require('lodash'); var fs = require('fs'); var program = require('commander'); var utils = require('./cli-utils'); diff --git a/packages/bitcore-wallet/bin/wallet-txproposals b/packages/bitcore-wallet/bin/wallet-txproposals index f001a6a1696..b3caa58c2dc 100755 --- a/packages/bitcore-wallet/bin/wallet-txproposals +++ b/packages/bitcore-wallet/bin/wallet-txproposals @@ -1,6 +1,5 @@ #!/usr/bin/env node -var _ = require('lodash'); var fs = require('fs'); var program = require('commander'); var utils = require('./cli-utils'); From 36a406c3ce281cda2933cfeb193e54b8983d4109 Mon Sep 17 00:00:00 2001 From: dynst <148708712+dynst@users.noreply.github.com> Date: Mon, 30 Jun 2025 00:00:00 +0000 Subject: [PATCH 05/14] remove lodash.without() calls find packages/ -type f -exec sed -i -E \ -e 's/_\.without\(([^,]+), ([^,\)]+)\)/\1.filter(x => x !== \2)/g' {} + --- packages/bitcore-lib-cash/lib/transaction/transaction.js | 4 ++-- packages/bitcore-lib-doge/lib/transaction/transaction.js | 4 ++-- packages/bitcore-lib-ltc/lib/transaction/transaction.js | 4 ++-- packages/bitcore-lib/lib/transaction/transaction.js | 4 ++-- packages/bitcore-wallet-service/src/lib/storage.ts | 2 +- 5 files changed, 9 insertions(+), 9 deletions(-) diff --git a/packages/bitcore-lib-cash/lib/transaction/transaction.js b/packages/bitcore-lib-cash/lib/transaction/transaction.js index e1e7de1b454..fa4596ffa55 100644 --- a/packages/bitcore-lib-cash/lib/transaction/transaction.js +++ b/packages/bitcore-lib-cash/lib/transaction/transaction.js @@ -1085,7 +1085,7 @@ Transaction.prototype._calculateSize = function() { Transaction.prototype._removeOutput = function(index) { var output = this.outputs[index]; - this.outputs = _.without(this.outputs, output); + this.outputs = this.outputs.filter(x => x !== output); this._outputAmount = undefined; }; @@ -1193,7 +1193,7 @@ Transaction.prototype.removeInput = function(txId, outputIndex) { throw new errors.Transaction.InvalidIndex(index, this.inputs.length); } var input = this.inputs[index]; - this.inputs = _.without(this.inputs, input); + this.inputs = this.inputs.filter(x => x !== input); this._inputAmount = undefined; this._updateChangeOutput(); }; diff --git a/packages/bitcore-lib-doge/lib/transaction/transaction.js b/packages/bitcore-lib-doge/lib/transaction/transaction.js index 3834851368f..fd086ca641d 100644 --- a/packages/bitcore-lib-doge/lib/transaction/transaction.js +++ b/packages/bitcore-lib-doge/lib/transaction/transaction.js @@ -1110,7 +1110,7 @@ Transaction.prototype._calculateWeight = function() { Transaction.prototype._removeOutput = function(index) { var output = this.outputs[index]; - this.outputs = _.without(this.outputs, output); + this.outputs = this.outputs.filter(x => x !== output); this._outputAmount = undefined; }; @@ -1218,7 +1218,7 @@ Transaction.prototype.removeInput = function(txId, outputIndex) { throw new errors.Transaction.InvalidIndex(index, this.inputs.length); } var input = this.inputs[index]; - this.inputs = _.without(this.inputs, input); + this.inputs = this.inputs.filter(x => x !== input); this._inputAmount = undefined; this._updateChangeOutput(); }; diff --git a/packages/bitcore-lib-ltc/lib/transaction/transaction.js b/packages/bitcore-lib-ltc/lib/transaction/transaction.js index f69b75da641..9bdfd9ca4f5 100644 --- a/packages/bitcore-lib-ltc/lib/transaction/transaction.js +++ b/packages/bitcore-lib-ltc/lib/transaction/transaction.js @@ -1104,7 +1104,7 @@ Transaction.prototype._calculateWeight = function() { Transaction.prototype._removeOutput = function(index) { var output = this.outputs[index]; - this.outputs = _.without(this.outputs, output); + this.outputs = this.outputs.filter(x => x !== output); this._outputAmount = undefined; }; @@ -1212,7 +1212,7 @@ Transaction.prototype.removeInput = function(txId, outputIndex) { throw new errors.Transaction.InvalidIndex(index, this.inputs.length); } var input = this.inputs[index]; - this.inputs = _.without(this.inputs, input); + this.inputs = this.inputs.filter(x => x !== input); this._inputAmount = undefined; this._updateChangeOutput(); }; diff --git a/packages/bitcore-lib/lib/transaction/transaction.js b/packages/bitcore-lib/lib/transaction/transaction.js index 98f7487c2a9..a398d1ebd40 100644 --- a/packages/bitcore-lib/lib/transaction/transaction.js +++ b/packages/bitcore-lib/lib/transaction/transaction.js @@ -1113,7 +1113,7 @@ Transaction.prototype._calculateWeight = function() { Transaction.prototype._removeOutput = function(index) { var output = this.outputs[index]; - this.outputs = _.without(this.outputs, output); + this.outputs = this.outputs.filter(x => x !== output); this._outputAmount = undefined; }; @@ -1221,7 +1221,7 @@ Transaction.prototype.removeInput = function(txId, outputIndex) { throw new errors.Transaction.InvalidIndex(index, this.inputs.length); } var input = this.inputs[index]; - this.inputs = _.without(this.inputs, input); + this.inputs = this.inputs.filter(x => x !== input); this._inputAmount = undefined; this._updateChangeOutput(); }; diff --git a/packages/bitcore-wallet-service/src/lib/storage.ts b/packages/bitcore-wallet-service/src/lib/storage.ts index 99289ad1590..cdb928f8087 100644 --- a/packages/bitcore-wallet-service/src/lib/storage.ts +++ b/packages/bitcore-wallet-service/src/lib/storage.ts @@ -619,7 +619,7 @@ export class Storage { ); }, next => { - const otherCollections: string[] = _.without(_.values(collections), collections.WALLETS); + const otherCollections: string[] = _.values(collections).filter(x => x !== collections.WALLETS); async.each( otherCollections, (col, next) => { From 9b109ea23a2307f062c1fb09a81b26a2de3d82a8 Mon Sep 17 00:00:00 2001 From: dynst <148708712+dynst@users.noreply.github.com> Date: Mon, 30 Jun 2025 00:00:00 +0000 Subject: [PATCH 06/14] remove lodash calls from base58 code --- packages/bitcore-lib-cash/lib/encoding/base58.js | 3 +-- packages/bitcore-lib-doge/lib/encoding/base58.js | 3 +-- packages/bitcore-lib-ltc/lib/encoding/base58.js | 3 +-- packages/bitcore-lib/lib/encoding/base58.js | 3 +-- 4 files changed, 4 insertions(+), 8 deletions(-) diff --git a/packages/bitcore-lib-cash/lib/encoding/base58.js b/packages/bitcore-lib-cash/lib/encoding/base58.js index e0fb12f7ebc..a4b5ed7e209 100644 --- a/packages/bitcore-lib-cash/lib/encoding/base58.js +++ b/packages/bitcore-lib-cash/lib/encoding/base58.js @@ -1,6 +1,5 @@ 'use strict'; -var _ = require('lodash'); var bs58 = require('bs58'); var buffer = require('buffer'); @@ -26,7 +25,7 @@ Base58.validCharacters = function validCharacters(chars) { if (buffer.Buffer.isBuffer(chars)) { chars = chars.toString(); } - return _.every(_.map(chars, function(char) { return ALPHABET.includes(char); })); + return [...chars].every(c => ALPHABET.includes(c)); }; Base58.prototype.set = function(obj) { diff --git a/packages/bitcore-lib-doge/lib/encoding/base58.js b/packages/bitcore-lib-doge/lib/encoding/base58.js index 266964cf44f..2faa2352b99 100644 --- a/packages/bitcore-lib-doge/lib/encoding/base58.js +++ b/packages/bitcore-lib-doge/lib/encoding/base58.js @@ -1,6 +1,5 @@ 'use strict'; -var _ = require('lodash'); var bs58 = require('bs58'); var buffer = require('buffer'); @@ -26,7 +25,7 @@ Base58.validCharacters = function validCharacters(chars) { if (buffer.Buffer.isBuffer(chars)) { chars = chars.toString(); } - return _.every(_.map(chars, function(char) { return (ALPHABET.includes(char)) })); + return [...chars].every(c => ALPHABET.includes(c)); }; Base58.prototype.set = function(obj) { diff --git a/packages/bitcore-lib-ltc/lib/encoding/base58.js b/packages/bitcore-lib-ltc/lib/encoding/base58.js index 89b4093d678..a85220c1149 100644 --- a/packages/bitcore-lib-ltc/lib/encoding/base58.js +++ b/packages/bitcore-lib-ltc/lib/encoding/base58.js @@ -1,6 +1,5 @@ 'use strict'; -var _ = require('lodash'); var bs58 = require('bs58'); var ALPHABET = '123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz'.split(''); @@ -25,7 +24,7 @@ Base58.validCharacters = function validCharacters(chars) { if (Buffer.isBuffer(chars)) { chars = chars.toString(); } - return _.every(_.map(chars, function(char) { return (ALPHABET.includes(char)) })); + return [...chars].every(c => ALPHABET.includes(c)); }; Base58.prototype.set = function(obj) { diff --git a/packages/bitcore-lib/lib/encoding/base58.js b/packages/bitcore-lib/lib/encoding/base58.js index e0fb12f7ebc..a4b5ed7e209 100644 --- a/packages/bitcore-lib/lib/encoding/base58.js +++ b/packages/bitcore-lib/lib/encoding/base58.js @@ -1,6 +1,5 @@ 'use strict'; -var _ = require('lodash'); var bs58 = require('bs58'); var buffer = require('buffer'); @@ -26,7 +25,7 @@ Base58.validCharacters = function validCharacters(chars) { if (buffer.Buffer.isBuffer(chars)) { chars = chars.toString(); } - return _.every(_.map(chars, function(char) { return ALPHABET.includes(char); })); + return [...chars].every(c => ALPHABET.includes(c)); }; Base58.prototype.set = function(obj) { From 330f9a5b43895f5206670df1257caf2e50322e9a Mon Sep 17 00:00:00 2001 From: dynst <148708712+dynst@users.noreply.github.com> Date: Mon, 30 Jun 2025 00:00:00 +0000 Subject: [PATCH 07/14] remove lodash.every() calls find packages/ -type f -exec sed -i -E \ -e 's/_\.every\(([^,]+), function\(([a-zA-Z]+)\) \{/\1.every(\2 => \{/g' {} + find packages/ -type f -exec sed -i -E \ -e 's/_\.every\(([^,]+), ([^,\)]+)\)/\1.every(\2)/g' {} + --- packages/bitcore-lib-cash/lib/hdprivatekey.js | 2 +- packages/bitcore-lib-cash/lib/hdpublickey.js | 2 +- .../bitcore-lib-cash/test/transaction/input/multisig.js | 4 ++-- .../test/transaction/input/multisigscripthash.js | 4 ++-- packages/bitcore-lib-doge/lib/hdprivatekey.js | 2 +- packages/bitcore-lib-doge/lib/hdpublickey.js | 2 +- .../bitcore-lib-doge/test/transaction/input/multisig.js | 4 ++-- .../test/transaction/input/multisigscripthash.js | 4 ++-- packages/bitcore-lib-ltc/lib/hdprivatekey.js | 2 +- packages/bitcore-lib-ltc/lib/hdpublickey.js | 2 +- .../bitcore-lib-ltc/test/transaction/input/multisig.js | 4 ++-- .../test/transaction/input/multisigscripthash.js | 8 ++++---- packages/bitcore-lib/lib/hdprivatekey.js | 2 +- packages/bitcore-lib/lib/hdpublickey.js | 2 +- packages/bitcore-lib/test/transaction/input/multisig.js | 4 ++-- .../test/transaction/input/multisigscripthash.js | 8 ++++---- 16 files changed, 28 insertions(+), 28 deletions(-) diff --git a/packages/bitcore-lib-cash/lib/hdprivatekey.js b/packages/bitcore-lib-cash/lib/hdprivatekey.js index ab013809507..40b21770af5 100644 --- a/packages/bitcore-lib-cash/lib/hdprivatekey.js +++ b/packages/bitcore-lib-cash/lib/hdprivatekey.js @@ -74,7 +74,7 @@ function HDPrivateKey(arg) { HDPrivateKey.isValidPath = function(arg, hardened) { if (_.isString(arg)) { var indexes = HDPrivateKey._getDerivationIndexes(arg); - return indexes !== null && _.every(indexes, HDPrivateKey.isValidPath); + return indexes !== null && indexes.every(HDPrivateKey.isValidPath); } if (_.isNumber(arg)) { diff --git a/packages/bitcore-lib-cash/lib/hdpublickey.js b/packages/bitcore-lib-cash/lib/hdpublickey.js index 526b1ae7d66..8413811ab26 100644 --- a/packages/bitcore-lib-cash/lib/hdpublickey.js +++ b/packages/bitcore-lib-cash/lib/hdpublickey.js @@ -75,7 +75,7 @@ function HDPublicKey(arg) { HDPublicKey.isValidPath = function(arg) { if (_.isString(arg)) { var indexes = HDPrivateKey._getDerivationIndexes(arg); - return indexes !== null && _.every(indexes, HDPublicKey.isValidPath); + return indexes !== null && indexes.every(HDPublicKey.isValidPath); } if (_.isNumber(arg)) { diff --git a/packages/bitcore-lib-cash/test/transaction/input/multisig.js b/packages/bitcore-lib-cash/test/transaction/input/multisig.js index b984e449d4b..90592fc35f1 100644 --- a/packages/bitcore-lib-cash/test/transaction/input/multisig.js +++ b/packages/bitcore-lib-cash/test/transaction/input/multisig.js @@ -71,14 +71,14 @@ describe('MultiSigInput', function() { .to(address, 1000000); var input = transaction.inputs[0]; - _.every(input.publicKeysWithoutSignature(), function(publicKeyMissing) { + input.publicKeysWithoutSignature().every(publicKeyMissing => { var serialized = publicKeyMissing.toString(); return serialized === public1.toString() || serialized === public2.toString() || serialized === public3.toString(); }).should.equal(true); transaction.sign(privateKey1); - _.every(input.publicKeysWithoutSignature(), function(publicKeyMissing) { + input.publicKeysWithoutSignature().every(publicKeyMissing => { var serialized = publicKeyMissing.toString(); return serialized === public2.toString() || serialized === public3.toString(); diff --git a/packages/bitcore-lib-cash/test/transaction/input/multisigscripthash.js b/packages/bitcore-lib-cash/test/transaction/input/multisigscripthash.js index 8b6ca61cb59..9b8fdbe6798 100644 --- a/packages/bitcore-lib-cash/test/transaction/input/multisigscripthash.js +++ b/packages/bitcore-lib-cash/test/transaction/input/multisigscripthash.js @@ -54,14 +54,14 @@ describe('MultiSigScriptHashInput', function() { .to(address, 1000000); var input = transaction.inputs[0]; - _.every(input.publicKeysWithoutSignature(), function(publicKeyMissing) { + input.publicKeysWithoutSignature().every(publicKeyMissing => { var serialized = publicKeyMissing.toString(); return serialized === public1.toString() || serialized === public2.toString() || serialized === public3.toString(); }).should.equal(true); transaction.sign(privateKey1); - _.every(input.publicKeysWithoutSignature(), function(publicKeyMissing) { + input.publicKeysWithoutSignature().every(publicKeyMissing => { var serialized = publicKeyMissing.toString(); return serialized === public2.toString() || serialized === public3.toString(); diff --git a/packages/bitcore-lib-doge/lib/hdprivatekey.js b/packages/bitcore-lib-doge/lib/hdprivatekey.js index ff6f22c042d..57e6831df5f 100644 --- a/packages/bitcore-lib-doge/lib/hdprivatekey.js +++ b/packages/bitcore-lib-doge/lib/hdprivatekey.js @@ -75,7 +75,7 @@ function HDPrivateKey(arg) { HDPrivateKey.isValidPath = function(arg, hardened) { if (_.isString(arg)) { var indexes = HDPrivateKey._getDerivationIndexes(arg); - return indexes !== null && _.every(indexes, HDPrivateKey.isValidPath); + return indexes !== null && indexes.every(HDPrivateKey.isValidPath); } if (_.isNumber(arg)) { diff --git a/packages/bitcore-lib-doge/lib/hdpublickey.js b/packages/bitcore-lib-doge/lib/hdpublickey.js index 271458921c5..ebe44591786 100644 --- a/packages/bitcore-lib-doge/lib/hdpublickey.js +++ b/packages/bitcore-lib-doge/lib/hdpublickey.js @@ -76,7 +76,7 @@ function HDPublicKey(arg) { HDPublicKey.isValidPath = function(arg) { if (_.isString(arg)) { var indexes = HDPrivateKey._getDerivationIndexes(arg); - return indexes !== null && _.every(indexes, HDPublicKey.isValidPath); + return indexes !== null && indexes.every(HDPublicKey.isValidPath); } if (_.isNumber(arg)) { diff --git a/packages/bitcore-lib-doge/test/transaction/input/multisig.js b/packages/bitcore-lib-doge/test/transaction/input/multisig.js index 688c29add07..d7ac44d1b88 100644 --- a/packages/bitcore-lib-doge/test/transaction/input/multisig.js +++ b/packages/bitcore-lib-doge/test/transaction/input/multisig.js @@ -70,14 +70,14 @@ describe('MultiSigInput', function() { .to(address, 1000000); var input = transaction.inputs[0]; - _.every(input.publicKeysWithoutSignature(), function(publicKeyMissing) { + input.publicKeysWithoutSignature().every(publicKeyMissing => { var serialized = publicKeyMissing.toString(); return serialized === public1.toString() || serialized === public2.toString() || serialized === public3.toString(); }).should.equal(true); transaction.sign(privateKey1); - _.every(input.publicKeysWithoutSignature(), function(publicKeyMissing) { + input.publicKeysWithoutSignature().every(publicKeyMissing => { var serialized = publicKeyMissing.toString(); return serialized === public2.toString() || serialized === public3.toString(); diff --git a/packages/bitcore-lib-doge/test/transaction/input/multisigscripthash.js b/packages/bitcore-lib-doge/test/transaction/input/multisigscripthash.js index ea3b8887869..9c8d2fd451d 100644 --- a/packages/bitcore-lib-doge/test/transaction/input/multisigscripthash.js +++ b/packages/bitcore-lib-doge/test/transaction/input/multisigscripthash.js @@ -56,14 +56,14 @@ describe('MultiSigScriptHashInput', function() { .to(address, 1000000); var input = transaction.inputs[0]; - _.every(input.publicKeysWithoutSignature(), function(publicKeyMissing) { + input.publicKeysWithoutSignature().every(publicKeyMissing => { var serialized = publicKeyMissing.toString(); return serialized === public1.toString() || serialized === public2.toString() || serialized === public3.toString(); }).should.equal(true); transaction.sign(privateKey1); - _.every(input.publicKeysWithoutSignature(), function(publicKeyMissing) { + input.publicKeysWithoutSignature().every(publicKeyMissing => { var serialized = publicKeyMissing.toString(); return serialized === public2.toString() || serialized === public3.toString(); diff --git a/packages/bitcore-lib-ltc/lib/hdprivatekey.js b/packages/bitcore-lib-ltc/lib/hdprivatekey.js index 4a4f83613f5..e60012d4868 100644 --- a/packages/bitcore-lib-ltc/lib/hdprivatekey.js +++ b/packages/bitcore-lib-ltc/lib/hdprivatekey.js @@ -73,7 +73,7 @@ function HDPrivateKey(arg) { HDPrivateKey.isValidPath = function(arg, hardened) { if (_.isString(arg)) { var indexes = HDPrivateKey._getDerivationIndexes(arg); - return indexes !== null && _.every(indexes, HDPrivateKey.isValidPath); + return indexes !== null && indexes.every(HDPrivateKey.isValidPath); } if (_.isNumber(arg)) { diff --git a/packages/bitcore-lib-ltc/lib/hdpublickey.js b/packages/bitcore-lib-ltc/lib/hdpublickey.js index 4f4d28342d3..57d619fd453 100644 --- a/packages/bitcore-lib-ltc/lib/hdpublickey.js +++ b/packages/bitcore-lib-ltc/lib/hdpublickey.js @@ -75,7 +75,7 @@ function HDPublicKey(arg) { HDPublicKey.isValidPath = function(arg) { if (_.isString(arg)) { var indexes = HDPrivateKey._getDerivationIndexes(arg); - return indexes !== null && _.every(indexes, HDPublicKey.isValidPath); + return indexes !== null && indexes.every(HDPublicKey.isValidPath); } if (_.isNumber(arg)) { diff --git a/packages/bitcore-lib-ltc/test/transaction/input/multisig.js b/packages/bitcore-lib-ltc/test/transaction/input/multisig.js index a556de2db0e..860771fe14e 100644 --- a/packages/bitcore-lib-ltc/test/transaction/input/multisig.js +++ b/packages/bitcore-lib-ltc/test/transaction/input/multisig.js @@ -71,14 +71,14 @@ describe('MultiSigInput', function() { .to(address, 1000000); var input = transaction.inputs[0]; - _.every(input.publicKeysWithoutSignature(), function(publicKeyMissing) { + input.publicKeysWithoutSignature().every(publicKeyMissing => { var serialized = publicKeyMissing.toString(); return serialized === public1.toString() || serialized === public2.toString() || serialized === public3.toString(); }).should.equal(true); transaction.sign(privateKey1); - _.every(input.publicKeysWithoutSignature(), function(publicKeyMissing) { + input.publicKeysWithoutSignature().every(publicKeyMissing => { var serialized = publicKeyMissing.toString(); return serialized === public2.toString() || serialized === public3.toString(); diff --git a/packages/bitcore-lib-ltc/test/transaction/input/multisigscripthash.js b/packages/bitcore-lib-ltc/test/transaction/input/multisigscripthash.js index 1a693897bad..44659f80c45 100644 --- a/packages/bitcore-lib-ltc/test/transaction/input/multisigscripthash.js +++ b/packages/bitcore-lib-ltc/test/transaction/input/multisigscripthash.js @@ -64,14 +64,14 @@ describe('MultiSigScriptHashInput', function() { .to(address, 1000000); var input = transaction.inputs[0]; - _.every(input.publicKeysWithoutSignature(), function(publicKeyMissing) { + input.publicKeysWithoutSignature().every(publicKeyMissing => { var serialized = publicKeyMissing.toString(); return serialized === public1.toString() || serialized === public2.toString() || serialized === public3.toString(); }).should.equal(true); transaction.sign(privateKey1); - _.every(input.publicKeysWithoutSignature(), function(publicKeyMissing) { + input.publicKeysWithoutSignature().every(publicKeyMissing => { var serialized = publicKeyMissing.toString(); return serialized === public2.toString() || serialized === public3.toString(); @@ -179,14 +179,14 @@ describe('MultiSigScriptHashInput', function() { .to(address, 1000000); var input = transaction.inputs[0]; - _.every(input.publicKeysWithoutSignature(), function(publicKeyMissing) { + input.publicKeysWithoutSignature().every(publicKeyMissing => { var serialized = publicKeyMissing.toString(); return serialized === public1.toString() || serialized === public2.toString() || serialized === public3.toString(); }).should.equal(true); transaction.sign(privateKey1); - _.every(input.publicKeysWithoutSignature(), function(publicKeyMissing) { + input.publicKeysWithoutSignature().every(publicKeyMissing => { var serialized = publicKeyMissing.toString(); return serialized === public2.toString() || serialized === public3.toString(); diff --git a/packages/bitcore-lib/lib/hdprivatekey.js b/packages/bitcore-lib/lib/hdprivatekey.js index e0948593971..2ecc9cb3644 100644 --- a/packages/bitcore-lib/lib/hdprivatekey.js +++ b/packages/bitcore-lib/lib/hdprivatekey.js @@ -74,7 +74,7 @@ function HDPrivateKey(arg) { HDPrivateKey.isValidPath = function(arg, hardened) { if (_.isString(arg)) { var indexes = HDPrivateKey._getDerivationIndexes(arg); - return indexes !== null && _.every(indexes, HDPrivateKey.isValidPath); + return indexes !== null && indexes.every(HDPrivateKey.isValidPath); } if (_.isNumber(arg)) { diff --git a/packages/bitcore-lib/lib/hdpublickey.js b/packages/bitcore-lib/lib/hdpublickey.js index 71d6f1dceaa..cd0c14b9e2e 100644 --- a/packages/bitcore-lib/lib/hdpublickey.js +++ b/packages/bitcore-lib/lib/hdpublickey.js @@ -75,7 +75,7 @@ function HDPublicKey(arg) { HDPublicKey.isValidPath = function(arg) { if (_.isString(arg)) { var indexes = HDPrivateKey._getDerivationIndexes(arg); - return indexes !== null && _.every(indexes, HDPublicKey.isValidPath); + return indexes !== null && indexes.every(HDPublicKey.isValidPath); } if (_.isNumber(arg)) { diff --git a/packages/bitcore-lib/test/transaction/input/multisig.js b/packages/bitcore-lib/test/transaction/input/multisig.js index c3dac26e434..14aea5d6cbb 100644 --- a/packages/bitcore-lib/test/transaction/input/multisig.js +++ b/packages/bitcore-lib/test/transaction/input/multisig.js @@ -71,14 +71,14 @@ describe('MultiSigInput', function() { .to(address, 1000000); var input = transaction.inputs[0]; - _.every(input.publicKeysWithoutSignature(), function(publicKeyMissing) { + input.publicKeysWithoutSignature().every(publicKeyMissing => { var serialized = publicKeyMissing.toString(); return serialized === public1.toString() || serialized === public2.toString() || serialized === public3.toString(); }).should.equal(true); transaction.sign(privateKey1); - _.every(input.publicKeysWithoutSignature(), function(publicKeyMissing) { + input.publicKeysWithoutSignature().every(publicKeyMissing => { var serialized = publicKeyMissing.toString(); return serialized === public2.toString() || serialized === public3.toString(); diff --git a/packages/bitcore-lib/test/transaction/input/multisigscripthash.js b/packages/bitcore-lib/test/transaction/input/multisigscripthash.js index b83dcea5489..bbf051910ce 100644 --- a/packages/bitcore-lib/test/transaction/input/multisigscripthash.js +++ b/packages/bitcore-lib/test/transaction/input/multisigscripthash.js @@ -64,14 +64,14 @@ describe('MultiSigScriptHashInput', function() { .to(address, 1000000); var input = transaction.inputs[0]; - _.every(input.publicKeysWithoutSignature(), function(publicKeyMissing) { + input.publicKeysWithoutSignature().every(publicKeyMissing => { var serialized = publicKeyMissing.toString(); return serialized === public1.toString() || serialized === public2.toString() || serialized === public3.toString(); }).should.equal(true); transaction.sign(privateKey1); - _.every(input.publicKeysWithoutSignature(), function(publicKeyMissing) { + input.publicKeysWithoutSignature().every(publicKeyMissing => { var serialized = publicKeyMissing.toString(); return serialized === public2.toString() || serialized === public3.toString(); @@ -179,14 +179,14 @@ describe('MultiSigScriptHashInput', function() { .to(address, 1000000); var input = transaction.inputs[0]; - _.every(input.publicKeysWithoutSignature(), function(publicKeyMissing) { + input.publicKeysWithoutSignature().every(publicKeyMissing => { var serialized = publicKeyMissing.toString(); return serialized === public1.toString() || serialized === public2.toString() || serialized === public3.toString(); }).should.equal(true); transaction.sign(privateKey1); - _.every(input.publicKeysWithoutSignature(), function(publicKeyMissing) { + input.publicKeysWithoutSignature().every(publicKeyMissing => { var serialized = publicKeyMissing.toString(); return serialized === public2.toString() || serialized === public3.toString(); From 84d1497ef4b431512d95948c40f39965a6e30420 Mon Sep 17 00:00:00 2001 From: dynst <148708712+dynst@users.noreply.github.com> Date: Mon, 30 Jun 2025 00:00:00 +0000 Subject: [PATCH 08/14] remove lodash.values() calls --- packages/bitcore-lib-cash/test/hdprivatekey.js | 2 +- packages/bitcore-lib-doge/test/hdprivatekey.js | 2 +- packages/bitcore-lib-ltc/test/hdprivatekey.js | 2 +- packages/bitcore-lib/test/hdprivatekey.js | 2 +- packages/bitcore-wallet-service/src/lib/blockchainmonitor.ts | 4 ++-- packages/bitcore-wallet-service/src/lib/chain/btc/index.ts | 2 +- packages/bitcore-wallet-service/src/lib/storage.ts | 2 +- packages/bitcore-wallet-service/test/integration/bcmonitor.js | 2 +- packages/bitcore-wallet-service/test/integration/helpers.js | 2 +- packages/bitcore-wallet/bin/cli-utils.js | 2 +- 10 files changed, 11 insertions(+), 11 deletions(-) diff --git a/packages/bitcore-lib-cash/test/hdprivatekey.js b/packages/bitcore-lib-cash/test/hdprivatekey.js index 0f9fb50ab18..97f95cd0eef 100644 --- a/packages/bitcore-lib-cash/test/hdprivatekey.js +++ b/packages/bitcore-lib-cash/test/hdprivatekey.js @@ -313,7 +313,7 @@ describe('HDPrivate key interface', function() { it('toObject leaves no Buffer instances', function() { var privKey = new HDPrivateKey(xprivkey); var object = privKey.toObject(); - _.values(object).forEach((value) => { + Object.values(object).forEach(value => { expect(BufferUtil.isBuffer(value)).to.equal(false); }); }); diff --git a/packages/bitcore-lib-doge/test/hdprivatekey.js b/packages/bitcore-lib-doge/test/hdprivatekey.js index 7812d60f78c..8033e8fdb1b 100644 --- a/packages/bitcore-lib-doge/test/hdprivatekey.js +++ b/packages/bitcore-lib-doge/test/hdprivatekey.js @@ -303,7 +303,7 @@ describe('HDPrivate key interface', function() { it('toObject leaves no Buffer instances', function() { var privKey = new HDPrivateKey(xprivkey); var object = privKey.toObject(); - _.values(object).forEach((value) => { + Object.values(object).forEach(value => { expect(BufferUtil.isBuffer(value)).to.equal(false); }); }); diff --git a/packages/bitcore-lib-ltc/test/hdprivatekey.js b/packages/bitcore-lib-ltc/test/hdprivatekey.js index eed8d804c30..f9926c638ce 100644 --- a/packages/bitcore-lib-ltc/test/hdprivatekey.js +++ b/packages/bitcore-lib-ltc/test/hdprivatekey.js @@ -300,7 +300,7 @@ describe('HDPrivate key interface', function() { it('toObject leaves no Buffer instances', function() { var privKey = new HDPrivateKey(xprivkey); var object = privKey.toObject(); - _.values(object).forEach((value) => { + Object.values(object).forEach(value => { expect(BufferUtil.isBuffer(value)).to.equal(false); }); }); diff --git a/packages/bitcore-lib/test/hdprivatekey.js b/packages/bitcore-lib/test/hdprivatekey.js index b31964684df..8875591a1b8 100644 --- a/packages/bitcore-lib/test/hdprivatekey.js +++ b/packages/bitcore-lib/test/hdprivatekey.js @@ -302,7 +302,7 @@ describe('HDPrivate key interface', function() { it('toObject leaves no Buffer instances', function() { var privKey = new HDPrivateKey(xprivkey); var object = privKey.toObject(); - _.values(object).forEach((value) => { + Object.values(object).forEach(value => { expect(BufferUtil.isBuffer(value)).to.equal(false); }); }); diff --git a/packages/bitcore-wallet-service/src/lib/blockchainmonitor.ts b/packages/bitcore-wallet-service/src/lib/blockchainmonitor.ts index 138d30d83aa..e3f983ae4ce 100644 --- a/packages/bitcore-wallet-service/src/lib/blockchainmonitor.ts +++ b/packages/bitcore-wallet-service/src/lib/blockchainmonitor.ts @@ -79,8 +79,8 @@ export class BlockchainMonitor { }; const chainNetworkPairs = []; - _.each(_.values(Constants.CHAINS), chain => { - _.each(_.values(Constants.NETWORKS[chain]), network => { + _.each(Object.values(Constants.CHAINS), chain => { + _.each(Object.values(Constants.NETWORKS[chain]), network => { chainNetworkPairs.push({ chain, network diff --git a/packages/bitcore-wallet-service/src/lib/chain/btc/index.ts b/packages/bitcore-wallet-service/src/lib/chain/btc/index.ts index b0475028755..7a0648a428a 100644 --- a/packages/bitcore-wallet-service/src/lib/chain/btc/index.ts +++ b/packages/bitcore-wallet-service/src/lib/chain/btc/index.ts @@ -66,7 +66,7 @@ export class BtcChain implements IChain { byAddress[utxo.address].amount += utxo.satoshis; }); - balance.byAddress = _.values(byAddress); + balance.byAddress = Object.values(byAddress); return cb(null, balance); } diff --git a/packages/bitcore-wallet-service/src/lib/storage.ts b/packages/bitcore-wallet-service/src/lib/storage.ts index cdb928f8087..0c5e5582db6 100644 --- a/packages/bitcore-wallet-service/src/lib/storage.ts +++ b/packages/bitcore-wallet-service/src/lib/storage.ts @@ -619,7 +619,7 @@ export class Storage { ); }, next => { - const otherCollections: string[] = _.values(collections).filter(x => x !== collections.WALLETS); + const otherCollections: string[] = Object.values(collections).filter(x => x !== collections.WALLETS); async.each( otherCollections, (col, next) => { diff --git a/packages/bitcore-wallet-service/test/integration/bcmonitor.js b/packages/bitcore-wallet-service/test/integration/bcmonitor.js index 5ac95552489..815a5bcf296 100644 --- a/packages/bitcore-wallet-service/test/integration/bcmonitor.js +++ b/packages/bitcore-wallet-service/test/integration/bcmonitor.js @@ -94,7 +94,7 @@ describe('Blockchain monitor', function() { }; async.each( - _.values(collections), + Object.values(collections), (x, icb) => { storage.db.collection(x).deleteMany({}, icb); }, diff --git a/packages/bitcore-wallet-service/test/integration/helpers.js b/packages/bitcore-wallet-service/test/integration/helpers.js index d4b25d60aea..37e6412a83a 100644 --- a/packages/bitcore-wallet-service/test/integration/helpers.js +++ b/packages/bitcore-wallet-service/test/integration/helpers.js @@ -119,7 +119,7 @@ helpers.beforeEach = function(cb) { }; - async.each(_.values(collections), (x, icb)=> { + async.each(Object.values(collections), (x, icb)=> { storage.db.collection(x).deleteMany({}, icb); }, (err) => { should.not.exist(err); diff --git a/packages/bitcore-wallet/bin/cli-utils.js b/packages/bitcore-wallet/bin/cli-utils.js index 81ea05d8fbc..11683854bcf 100644 --- a/packages/bitcore-wallet/bin/cli-utils.js +++ b/packages/bitcore-wallet/bin/cli-utils.js @@ -357,7 +357,7 @@ Utils.renderTxProposals = function(txps) { console.log("* TX Proposals:") txps.forEach((x) => { - var missingSignatures = x.requiredSignatures - _.filter(_.values(x.actions), function(a) { + var missingSignatures = x.requiredSignatures - _.filter(Object.values(x.actions), function(a) { return a.type == 'accept'; }).length; console.log("\t%s [\"%s\" by %s] %s => %s", Utils.shortID(x.id), x.message, x.creatorName, Utils.renderAmount(x.amount), x.outputs[0].toAddress); From aa6cefe489a0383486b265f4f94ed28fdd6d5993 Mon Sep 17 00:00:00 2001 From: dynst <148708712+dynst@users.noreply.github.com> Date: Mon, 30 Jun 2025 00:00:00 +0000 Subject: [PATCH 09/14] remove lodash.extend() calls --- packages/bitcore-lib-cash/lib/block/block.js | 2 +- packages/bitcore-lib-cash/lib/block/merkleblock.js | 2 +- packages/bitcore-lib-cash/lib/opcode.js | 2 +- packages/bitcore-lib-cash/lib/uri.js | 4 ++-- packages/bitcore-lib-doge/lib/block/block.js | 2 +- packages/bitcore-lib-doge/lib/block/merkleblock.js | 2 +- packages/bitcore-lib-doge/lib/opcode.js | 2 +- packages/bitcore-lib-doge/lib/uri.js | 4 ++-- packages/bitcore-lib-ltc/lib/block/block.js | 2 +- packages/bitcore-lib-ltc/lib/block/merkleblock.js | 2 +- packages/bitcore-lib-ltc/lib/opcode.js | 2 +- packages/bitcore-lib-ltc/lib/uri.js | 4 ++-- packages/bitcore-lib/lib/block/block.js | 2 +- packages/bitcore-lib/lib/block/merkleblock.js | 2 +- packages/bitcore-lib/lib/opcode.js | 2 +- packages/bitcore-lib/lib/uri.js | 4 ++-- 16 files changed, 20 insertions(+), 20 deletions(-) diff --git a/packages/bitcore-lib-cash/lib/block/block.js b/packages/bitcore-lib-cash/lib/block/block.js index 7f0a024f4d2..71cd4a546f4 100644 --- a/packages/bitcore-lib-cash/lib/block/block.js +++ b/packages/bitcore-lib-cash/lib/block/block.js @@ -22,7 +22,7 @@ function Block(arg) { if (!(this instanceof Block)) { return new Block(arg); } - _.extend(this, Block._from(arg)); + Object.assign(this, Block._from(arg)); return this; } diff --git a/packages/bitcore-lib-cash/lib/block/merkleblock.js b/packages/bitcore-lib-cash/lib/block/merkleblock.js index 1b949c3f942..8a8ad8b0456 100644 --- a/packages/bitcore-lib-cash/lib/block/merkleblock.js +++ b/packages/bitcore-lib-cash/lib/block/merkleblock.js @@ -61,7 +61,7 @@ function MerkleBlock(arg) { } else { throw new TypeError('Unrecognized argument for MerkleBlock'); } - _.extend(this,info); + Object.assign(this, info); this._flagBitsUsed = 0; this._hashesUsed = 0; diff --git a/packages/bitcore-lib-cash/lib/opcode.js b/packages/bitcore-lib-cash/lib/opcode.js index 5a2e24b25f9..3395dc135f9 100644 --- a/packages/bitcore-lib-cash/lib/opcode.js +++ b/packages/bitcore-lib-cash/lib/opcode.js @@ -262,7 +262,7 @@ for (var k in Opcode.map) { } // Easier access to opcodes -_.extend(Opcode, Opcode.map); +Object.assign(Opcode, Opcode.map); /** * @returns true if opcode is one of OP_0, OP_1, ..., OP_16 diff --git a/packages/bitcore-lib-cash/lib/uri.js b/packages/bitcore-lib-cash/lib/uri.js index 57ee36bccfa..0a43ba5e26c 100644 --- a/packages/bitcore-lib-cash/lib/uri.js +++ b/packages/bitcore-lib-cash/lib/uri.js @@ -179,7 +179,7 @@ URI.prototype.toObject = URI.prototype.toJSON = function toObject() { json[m] = this[m].toString(); } } - _.extend(json, this.extras); + Object.assign(json, this.extras); return json; }; @@ -202,7 +202,7 @@ URI.prototype.toString = function() { if (this.r) { query.r = this.r; } - _.extend(query, this.extras); + Object.assign(query, this.extras); return URL.format({ protocol: Networks.get(this.network ,'name').prefix + ':', diff --git a/packages/bitcore-lib-doge/lib/block/block.js b/packages/bitcore-lib-doge/lib/block/block.js index dcfac2914d5..15186b894fb 100644 --- a/packages/bitcore-lib-doge/lib/block/block.js +++ b/packages/bitcore-lib-doge/lib/block/block.js @@ -22,7 +22,7 @@ function Block(arg) { if (!(this instanceof Block)) { return new Block(arg); } - _.extend(this, Block._from(arg)); + Object.assign(this, Block._from(arg)); return this; } diff --git a/packages/bitcore-lib-doge/lib/block/merkleblock.js b/packages/bitcore-lib-doge/lib/block/merkleblock.js index 3ff541ee1be..a3ad7cda539 100644 --- a/packages/bitcore-lib-doge/lib/block/merkleblock.js +++ b/packages/bitcore-lib-doge/lib/block/merkleblock.js @@ -60,7 +60,7 @@ function MerkleBlock(arg) { } else { throw new TypeError('Unrecognized argument for MerkleBlock'); } - _.extend(this,info); + Object.assign(this, info); this._flagBitsUsed = 0; this._hashesUsed = 0; return this; diff --git a/packages/bitcore-lib-doge/lib/opcode.js b/packages/bitcore-lib-doge/lib/opcode.js index 1b3a0b40f21..3a77498c9da 100644 --- a/packages/bitcore-lib-doge/lib/opcode.js +++ b/packages/bitcore-lib-doge/lib/opcode.js @@ -224,7 +224,7 @@ for (var k in Opcode.map) { } // Easier access to opcodes -_.extend(Opcode, Opcode.map); +Object.assign(Opcode, Opcode.map); /** * @returns true if opcode is one of OP_0, OP_1, ..., OP_16 diff --git a/packages/bitcore-lib-doge/lib/uri.js b/packages/bitcore-lib-doge/lib/uri.js index f7e1ea89f96..435e58037b8 100644 --- a/packages/bitcore-lib-doge/lib/uri.js +++ b/packages/bitcore-lib-doge/lib/uri.js @@ -179,7 +179,7 @@ URI.prototype.toObject = URI.prototype.toJSON = function toObject() { json[m] = this[m].toString(); } } - _.extend(json, this.extras); + Object.assign(json, this.extras); return json; }; @@ -202,7 +202,7 @@ URI.prototype.toString = function() { if (this.r) { query.r = this.r; } - _.extend(query, this.extras); + Object.assign(query, this.extras); return URL.format({ protocol: 'dogecoin:', diff --git a/packages/bitcore-lib-ltc/lib/block/block.js b/packages/bitcore-lib-ltc/lib/block/block.js index 5a1c5ae7fd8..845bc3b8808 100644 --- a/packages/bitcore-lib-ltc/lib/block/block.js +++ b/packages/bitcore-lib-ltc/lib/block/block.js @@ -23,7 +23,7 @@ function Block(arg) { if (!(this instanceof Block)) { return new Block(arg); } - _.extend(this, Block._from(arg)); + Object.assign(this, Block._from(arg)); return this; } diff --git a/packages/bitcore-lib-ltc/lib/block/merkleblock.js b/packages/bitcore-lib-ltc/lib/block/merkleblock.js index 15b91101c6d..05eded82835 100644 --- a/packages/bitcore-lib-ltc/lib/block/merkleblock.js +++ b/packages/bitcore-lib-ltc/lib/block/merkleblock.js @@ -60,7 +60,7 @@ function MerkleBlock(arg) { } else { throw new TypeError('Unrecognized argument for MerkleBlock'); } - _.extend(this,info); + Object.assign(this, info); this._flagBitsUsed = 0; this._hashesUsed = 0; return this; diff --git a/packages/bitcore-lib-ltc/lib/opcode.js b/packages/bitcore-lib-ltc/lib/opcode.js index 1b3a0b40f21..3a77498c9da 100644 --- a/packages/bitcore-lib-ltc/lib/opcode.js +++ b/packages/bitcore-lib-ltc/lib/opcode.js @@ -224,7 +224,7 @@ for (var k in Opcode.map) { } // Easier access to opcodes -_.extend(Opcode, Opcode.map); +Object.assign(Opcode, Opcode.map); /** * @returns true if opcode is one of OP_0, OP_1, ..., OP_16 diff --git a/packages/bitcore-lib-ltc/lib/uri.js b/packages/bitcore-lib-ltc/lib/uri.js index 894a948ca44..116abdfc6ae 100644 --- a/packages/bitcore-lib-ltc/lib/uri.js +++ b/packages/bitcore-lib-ltc/lib/uri.js @@ -179,7 +179,7 @@ URI.prototype.toObject = URI.prototype.toJSON = function toObject() { json[m] = this[m].toString(); } } - _.extend(json, this.extras); + Object.assign(json, this.extras); return json; }; @@ -202,7 +202,7 @@ URI.prototype.toString = function() { if (this.r) { query.r = this.r; } - _.extend(query, this.extras); + Object.assign(query, this.extras); return URL.format({ protocol: 'litecoin:', diff --git a/packages/bitcore-lib/lib/block/block.js b/packages/bitcore-lib/lib/block/block.js index 7f0a024f4d2..71cd4a546f4 100644 --- a/packages/bitcore-lib/lib/block/block.js +++ b/packages/bitcore-lib/lib/block/block.js @@ -22,7 +22,7 @@ function Block(arg) { if (!(this instanceof Block)) { return new Block(arg); } - _.extend(this, Block._from(arg)); + Object.assign(this, Block._from(arg)); return this; } diff --git a/packages/bitcore-lib/lib/block/merkleblock.js b/packages/bitcore-lib/lib/block/merkleblock.js index 1b949c3f942..8a8ad8b0456 100644 --- a/packages/bitcore-lib/lib/block/merkleblock.js +++ b/packages/bitcore-lib/lib/block/merkleblock.js @@ -61,7 +61,7 @@ function MerkleBlock(arg) { } else { throw new TypeError('Unrecognized argument for MerkleBlock'); } - _.extend(this,info); + Object.assign(this, info); this._flagBitsUsed = 0; this._hashesUsed = 0; diff --git a/packages/bitcore-lib/lib/opcode.js b/packages/bitcore-lib/lib/opcode.js index 8c6f5267b6b..4b77427e0c5 100644 --- a/packages/bitcore-lib/lib/opcode.js +++ b/packages/bitcore-lib/lib/opcode.js @@ -257,7 +257,7 @@ for (var k in Opcode.map) { } // Easier access to opcodes -_.extend(Opcode, Opcode.map); +Object.assign(Opcode, Opcode.map); /** * @returns true if opcode is one of OP_0, OP_1, ..., OP_16 diff --git a/packages/bitcore-lib/lib/uri.js b/packages/bitcore-lib/lib/uri.js index 912a0c3dbaf..aaadddc023f 100644 --- a/packages/bitcore-lib/lib/uri.js +++ b/packages/bitcore-lib/lib/uri.js @@ -179,7 +179,7 @@ URI.prototype.toObject = URI.prototype.toJSON = function toObject() { json[m] = this[m].toString(); } } - _.extend(json, this.extras); + Object.assign(json, this.extras); return json; }; @@ -202,7 +202,7 @@ URI.prototype.toString = function() { if (this.r) { query.r = this.r; } - _.extend(query, this.extras); + Object.assign(query, this.extras); return URL.format({ protocol: 'bitcoin:', From 9bcb338a9f7899065a6ce2ece78f08179fbd1547 Mon Sep 17 00:00:00 2001 From: dynst <148708712+dynst@users.noreply.github.com> Date: Mon, 30 Jun 2025 00:00:00 +0000 Subject: [PATCH 10/14] remove lodash.map() calls find packages/ -type f -exec sed -i -E \ -e 's/_\.map\(([^,]+), function\(([^,\)]*)\) \{/\1.map(\2 => {/g' {} + find packages/ -type f -exec sed -i -E \ -e 's/_\.map\(([^,]+), function(\([^\)]*\)) \{/\1.map(\2 => {/g' {} + find packages/ -type f -exec sed -i -E \ -e 's/_[.]map\(([^,]+), ([a-zA-Z]+) => \{/\1.map(\2 => {/g' {} + find packages/ -type f -exec sed -i -E \ -e 's/_[.]map\(([^,]+), ([a-zA-Z]+ => [^\{])/\1.map(\2/g' {} + --- .../lib/transaction/input/multisig.js | 6 +-- .../src/lib/bchaddresstranslator.ts | 2 +- .../src/lib/chain/btc/index.ts | 2 +- .../src/lib/model/address.ts | 2 +- .../src/lib/model/txproposal.ts | 4 +- .../src/lib/model/txproposal_legacy.ts | 2 +- .../src/lib/model/wallet.ts | 4 +- .../src/lib/pushnotificationsservice.ts | 8 +-- .../bitcore-wallet-service/src/lib/stats.ts | 4 +- .../bitcore-wallet-service/src/lib/storage.ts | 24 ++++----- .../test/integration/helpers.js | 10 ++-- .../test/integration/history.js | 2 +- .../test/integration/pushNotifications.js | 54 +++++++++---------- .../test/integration/server.js | 2 +- .../bitcore-wallet-service/test/storage.js | 2 +- packages/bitcore-wallet/bin/cli-utils.js | 2 +- 16 files changed, 65 insertions(+), 65 deletions(-) diff --git a/packages/bitcore-lib/lib/transaction/input/multisig.js b/packages/bitcore-lib/lib/transaction/input/multisig.js index d6a54fe4df1..7ff002070b0 100644 --- a/packages/bitcore-lib/lib/transaction/input/multisig.js +++ b/packages/bitcore-lib/lib/transaction/input/multisig.js @@ -44,13 +44,13 @@ inherits(MultiSigInput, Input); MultiSigInput.prototype.toObject = function() { var obj = Input.prototype.toObject.apply(this, arguments); obj.threshold = this.threshold; - obj.publicKeys = _.map(this.publicKeys, function(publicKey) { return publicKey.toString(); }); + obj.publicKeys = this.publicKeys.map(publicKey => publicKey.toString()); obj.signatures = this._serializeSignatures(); return obj; }; MultiSigInput.prototype._deserializeSignatures = function(signatures) { - return _.map(signatures, function(signature) { + return signatures.map(signature => { if (!signature) { return undefined; } @@ -59,7 +59,7 @@ MultiSigInput.prototype._deserializeSignatures = function(signatures) { }; MultiSigInput.prototype._serializeSignatures = function() { - return _.map(this.signatures, function(signature) { + return this.signatures.map(signature => { if (!signature) { return undefined; } diff --git a/packages/bitcore-wallet-service/src/lib/bchaddresstranslator.ts b/packages/bitcore-wallet-service/src/lib/bchaddresstranslator.ts index 245b06f486a..3924a0e509a 100644 --- a/packages/bitcore-wallet-service/src/lib/bchaddresstranslator.ts +++ b/packages/bitcore-wallet-service/src/lib/bchaddresstranslator.ts @@ -34,7 +34,7 @@ export class BCHAddressTranslator { ret = addresses; } else { ret = _.filter( - _.map(addresses, x => { + addresses.map(x => { const bitcore = Bitcore_[from == 'legacy' ? 'btc' : 'bch']; let orig; diff --git a/packages/bitcore-wallet-service/src/lib/chain/btc/index.ts b/packages/bitcore-wallet-service/src/lib/chain/btc/index.ts index 7a0648a428a..2515b60c1f4 100644 --- a/packages/bitcore-wallet-service/src/lib/chain/btc/index.ts +++ b/packages/bitcore-wallet-service/src/lib/chain/btc/index.ts @@ -432,7 +432,7 @@ export class BtcChain implements IChain { 'Failed state: t.outputs.length not equal to outputOrder.length at ' ); t.sortOutputs(outputs => { - return _.map(outputOrder, i => { + return outputOrder.map(i => { return outputs[i]; }); }); diff --git a/packages/bitcore-wallet-service/src/lib/model/address.ts b/packages/bitcore-wallet-service/src/lib/model/address.ts index 90d4bc4af7d..11b951a73ae 100644 --- a/packages/bitcore-wallet-service/src/lib/model/address.ts +++ b/packages/bitcore-wallet-service/src/lib/model/address.ts @@ -108,7 +108,7 @@ export class Address { } } - let publicKeys = _.map(publicKeyRing, item => { + let publicKeys = publicKeyRing.map(item => { const xpub = Address.Bitcore[chain] ? new Address.Bitcore[chain].HDPublicKey(item.xPubKey) : new Address.Bitcore.btc.HDPublicKey(item.xPubKey); diff --git a/packages/bitcore-wallet-service/src/lib/model/txproposal.ts b/packages/bitcore-wallet-service/src/lib/model/txproposal.ts index 046d18d38d8..ab96ed92de0 100644 --- a/packages/bitcore-wallet-service/src/lib/model/txproposal.ts +++ b/packages/bitcore-wallet-service/src/lib/model/txproposal.ts @@ -331,7 +331,7 @@ export class TxProposal { x.txids = obj.txids; x.broadcastedOn = obj.broadcastedOn; x.inputPaths = obj.inputPaths; - x.actions = _.map(obj.actions, action => { + x.actions = obj.actions.map(action => { return TxProposalAction.fromObj(action); }); x.outputOrder = obj.outputOrder; @@ -421,7 +421,7 @@ export class TxProposal { return a.type == 'accept'; }); - return _.map(acceptedActions, x => { + return acceptedActions.map(x => { return { signatures: x.signatures, xpub: x.xpub diff --git a/packages/bitcore-wallet-service/src/lib/model/txproposal_legacy.ts b/packages/bitcore-wallet-service/src/lib/model/txproposal_legacy.ts index 79866455508..23f65b1b36b 100644 --- a/packages/bitcore-wallet-service/src/lib/model/txproposal_legacy.ts +++ b/packages/bitcore-wallet-service/src/lib/model/txproposal_legacy.ts @@ -117,7 +117,7 @@ export class TxProposalLegacy { x.txid = obj.txid; x.broadcastedOn = obj.broadcastedOn; x.inputPaths = obj.inputPaths; - x.actions = _.map(obj.actions, function(action) { + x.actions = obj.actions.map(action => { return TxProposalAction.fromObj(action); }); x.outputOrder = obj.outputOrder; diff --git a/packages/bitcore-wallet-service/src/lib/model/wallet.ts b/packages/bitcore-wallet-service/src/lib/model/wallet.ts index 5b4cd2cc542..b2beb3a3fe0 100644 --- a/packages/bitcore-wallet-service/src/lib/model/wallet.ts +++ b/packages/bitcore-wallet-service/src/lib/model/wallet.ts @@ -156,7 +156,7 @@ export class Wallet { x.singleAddress = !!obj.singleAddress; x.status = obj.status; x.publicKeyRing = obj.publicKeyRing; - x.copayers = _.map(obj.copayers, copayer => { + x.copayers = obj.copayers.map(copayer => { return Copayer.fromObj(copayer); }); x.pubKey = obj.pubKey; @@ -235,7 +235,7 @@ export class Wallet { } _updatePublicKeyRing() { - this.publicKeyRing = _.map(this.copayers, copayer => { + this.publicKeyRing = this.copayers.map(copayer => { return _.pick(copayer, ['xPubKey', 'requestPubKey']); }); } diff --git a/packages/bitcore-wallet-service/src/lib/pushnotificationsservice.ts b/packages/bitcore-wallet-service/src/lib/pushnotificationsservice.ts index dedbff433dc..f088c898748 100644 --- a/packages/bitcore-wallet-service/src/lib/pushnotificationsservice.ts +++ b/packages/bitcore-wallet-service/src/lib/pushnotificationsservice.ts @@ -206,7 +206,7 @@ export class PushNotificationsService { this._getSubscriptions(notification, notifType, recipientsList, contents, next); }, (subs, next) => { - const notifications = _.map(subs, sub => { + const notifications = subs.map(sub => { if (notification.type === 'NewTxProposal' && sub.copayerId === notification.creatorId) return; const tokenAddress = @@ -386,7 +386,7 @@ export class PushNotificationsService { if (_.isEmpty(preferences)) preferences = []; const recipientPreferences = _.compact( - _.map(preferences, p => { + preferences.map(p => { if (!_.includes(this.availableLanguages, p.language)) { if (p.language) logger.warn('Language for notifications "' + p.language + '" not available.'); p.language = this.defaultLanguage; @@ -403,7 +403,7 @@ export class PushNotificationsService { const copayers = _.keyBy(recipientPreferences, 'copayerId'); const recipientsList = _.compact( - _.map(wallet.copayers, copayer => { + wallet.copayers.map(copayer => { const p = copayers[copayer.id] || { language: this.defaultLanguage, unit: this.defaultUnit @@ -565,7 +565,7 @@ export class PushNotificationsService { } if (notification.type == 'TxProposalFinallyRejected' && data.rejectedBy) { - const rejectors = _.map(data.rejectedBy, copayerId => { + const rejectors = data.rejectedBy.map(copayerId => { return wallet.copayers.find(c => c.id === copayerId).name; }); data.rejectorsNames = rejectors.join(', '); diff --git a/packages/bitcore-wallet-service/src/lib/stats.ts b/packages/bitcore-wallet-service/src/lib/stats.ts index a6a0fc9f42c..9b1b15e4c9e 100644 --- a/packages/bitcore-wallet-service/src/lib/stats.ts +++ b/packages/bitcore-wallet-service/src/lib/stats.ts @@ -93,7 +93,7 @@ export class Stats { .toArray((err, results) => { if (err) return cb(err); const stats = { - byDay: _.map(results, record => { + byDay: results.map(record => { const day = moment(record._id.day).format('YYYYMMDD'); return { day, @@ -123,7 +123,7 @@ export class Stats { .toArray((err, results) => { if (err) return cb(err); const stats = { - byDay: _.map(results, record => { + byDay: results.map(record => { const day = moment(record._id.day).format('YYYYMMDD'); return { day, diff --git a/packages/bitcore-wallet-service/src/lib/storage.ts b/packages/bitcore-wallet-service/src/lib/storage.ts index 0c5e5582db6..0f97979ffc3 100644 --- a/packages/bitcore-wallet-service/src/lib/storage.ts +++ b/packages/bitcore-wallet-service/src/lib/storage.ts @@ -237,7 +237,7 @@ export class Storage { } storeWalletAndUpdateCopayersLookup(wallet, cb) { - const copayerLookups = _.map(wallet.copayers, copayer => { + const copayerLookups = wallet.copayers.map(copayer => { try { $.checkState( copayer.requestPubKeys, @@ -368,7 +368,7 @@ export class Storage { .toArray((err, result) => { if (err) return cb(err); if (!result) return cb(); - const txs = _.map(result, tx => { + const txs = result.map(tx => { return TxProposal.fromObj(tx); }); return cb(null, txs); @@ -391,7 +391,7 @@ export class Storage { const multisigTxpsInfoByTransactionHash: any = _.groupBy(multisigTxpsInfo, 'transactionHash'); const actionsById = {}; const txs = _.compact( - _.map(result, tx => { + result.map(tx => { if (!tx.multisigContractAddress) { return undefined; } @@ -434,7 +434,7 @@ export class Storage { .toArray((err, result) => { if (err) return cb(err); if (!result) return cb(); - const txs = _.map(result, tx => { + const txs = result.map(tx => { return TxProposal.fromObj(tx); }); return this._completeTxData(walletId, txs, cb); @@ -473,7 +473,7 @@ export class Storage { .toArray((err, result) => { if (err) return cb(err); if (!result) return cb(); - const txs = _.map(result, tx => { + const txs = result.map(tx => { return TxProposal.fromObj(tx); }); return this._completeTxData(walletId, txs, cb); @@ -517,7 +517,7 @@ export class Storage { .toArray((err, result) => { if (err) return cb(err); if (!result) return cb(); - const txs = _.map(result, tx => { + const txs = result.map(tx => { return TxProposal.fromObj(tx); }); return this._completeTxData(walletId, txs, cb); @@ -554,7 +554,7 @@ export class Storage { .toArray((err, result) => { if (err) return cb(err); if (!result) return cb(); - const notifications = _.map(result, notification => { + const notifications = result.map(notification => { return Notification.fromObj(notification); }); return cb(null, notifications); @@ -873,7 +873,7 @@ export class Storage { } if (!result) return cb(); - const preferences = _.map([].concat(result), r => { + const preferences = [].concat(result).map(r => { return Preferences.fromObj(r); }); if (copayerId) { @@ -923,7 +923,7 @@ export class Storage { if (err) return cb(err); if (!result || _.isEmpty(result)) return cb(null, []); - const emails = _.map(result, x => { + const emails = result.map(x => { return Email.fromObj(x); }); @@ -1322,7 +1322,7 @@ export class Storage { .toArray((err, result) => { if (err) return cb(err); const notes = _.compact( - _.map(result, note => { + result.map(note => { return TxNote.fromObj(note); }) ); @@ -1382,7 +1382,7 @@ export class Storage { if (!result) return cb(); - const tokens = _.map([].concat(result), r => { + const tokens = [].concat(result).map(r => { return PushNotificationSub.fromObj(r); }); return cb(null, tokens); @@ -1404,7 +1404,7 @@ export class Storage { if (!result) return cb(); - const tokens = _.map([].concat(result), r => { + const tokens = [].concat(result).map(r => { return PushNotificationSub.fromObj(r); }); return cb(null, tokens); diff --git a/packages/bitcore-wallet-service/test/integration/helpers.js b/packages/bitcore-wallet-service/test/integration/helpers.js index 37e6412a83a..be0f1a0d251 100644 --- a/packages/bitcore-wallet-service/test/integration/helpers.js +++ b/packages/bitcore-wallet-service/test/integration/helpers.js @@ -368,7 +368,7 @@ helpers.stubUtxos = function(server, wallet, amounts, opts, cb) { if (opts.tokenAddress) { return cb(null, {unconfirmed:0, confirmed: 2e6, balance: 2e6 }); } - let conf = _.sum(_.map(amounts, x => Number((x*1e18).toFixed(0)))); + let conf = _.sum(amounts.map(x => Number((x*1e18).toFixed(0)))); return cb(null, {unconfirmed:0, confirmed: conf, balance: conf }); } blockchainExplorer.estimateFee = sinon.stub().callsArgWith(1, null, 20000000000); @@ -377,14 +377,14 @@ helpers.stubUtxos = function(server, wallet, amounts, opts, cb) { if (wallet.coin == 'eth') { amounts = _.isArray(amounts) ? amounts : [amounts]; - let conf = _.sum(_.map(amounts, x => Number((x*1e18).toFixed(0)))); + let conf = _.sum(amounts.map(x => Number((x*1e18).toFixed(0)))); blockchainExplorer.getBalance = sinon.stub().callsArgWith(1, null, {unconfirmed:0, confirmed: conf, balance: conf }); return cb(); } if (wallet.coin == 'xrp') { amounts = _.isArray(amounts) ? amounts : [amounts]; - let conf = _.sum(_.map(amounts, x => Number((x*1e6).toFixed(0)))); + let conf = _.sum(amounts.map(x => Number((x*1e6).toFixed(0)))); conf = conf + Defaults.MIN_XRP_BALANCE; blockchainExplorer.getBalance = sinon.stub().callsArgWith(1, null, {unconfirmed:0, confirmed: conf, balance: conf }); return cb(); @@ -406,7 +406,7 @@ helpers.stubUtxos = function(server, wallet, amounts, opts, cb) { function(addresses, next) { addresses.should.not.be.empty; - var utxos = _.compact(_.map([].concat(amounts), function(amount, i) { + var utxos = _.compact([].concat(amounts).map((amount, i) => { var parsed = helpers._parseAmount(amount); if (parsed.amount <= 0) return null; @@ -619,7 +619,7 @@ helpers.clientSign = function(txp, derivedXPrivKey) { }); var t = ChainService.getBitcoreTx(txp); - signatures = _.map(privs, function(priv, i) { + signatures = privs.map((priv, i) => { return t.getSignatures(priv, undefined, txp.signingMethod); }); diff --git a/packages/bitcore-wallet-service/test/integration/history.js b/packages/bitcore-wallet-service/test/integration/history.js index 6b7d1c5f50f..54b246f4807 100644 --- a/packages/bitcore-wallet-service/test/integration/history.js +++ b/packages/bitcore-wallet-service/test/integration/history.js @@ -916,7 +916,7 @@ describe('History', function() { }]; var timestamps = [50, 40, 30, 20, 10]; - var txs = _.map(timestamps, function(ts, idx) { + var txs = timestamps.map((ts, idx) => { return { txid: (idx + 1).toString(), confirmations: ts / 10, diff --git a/packages/bitcore-wallet-service/test/integration/pushNotifications.js b/packages/bitcore-wallet-service/test/integration/pushNotifications.js index b73e6a3f283..77dc3659299 100644 --- a/packages/bitcore-wallet-service/test/integration/pushNotifications.js +++ b/packages/bitcore-wallet-service/test/integration/pushNotifications.js @@ -116,7 +116,7 @@ describe('Push notifications', function() { }, function(err) { setTimeout(function() { var calls = requestStub.getCalls(); - var args = _.map(calls, function(c) { + var args = calls.map(c => { return c.args[0]; }); calls.length.should.equal(2); // NewAddress, NewIncomingTx @@ -145,7 +145,7 @@ describe('Push notifications', function() { }, function(err) { setTimeout(function() { var calls = requestStub.getCalls(); - var args = _.map(calls, function(c) { + var args = calls.map(c => { return c.args[0]; }); calls.length.should.equal(2); // NewAdress, NewIncomingTx @@ -171,7 +171,7 @@ describe('Push notifications', function() { }, function(err) { setTimeout(function() { var calls = requestStub.getCalls(); - var args = _.map(calls, function(c) { + var args = calls.map(c => { return c.args[0]; }); calls.length.should.equal(2); // NewOutgoingTx @@ -199,7 +199,7 @@ describe('Push notifications', function() { }, function(err) { setTimeout(function() { var calls = requestStub.getCalls(); - var args = _.map(calls, function(c) { + var args = calls.map(c => { return c.args[0]; }); calls.length.should.equal(2); // NewOutgoingTx @@ -228,7 +228,7 @@ describe('Push notifications', function() { }, function(err) { setTimeout(function() { var calls = requestStub.getCalls(); - var args = _.map(calls, function(c) { + var args = calls.map(c => { return c.args[0]; }); calls.length.should.equal(2); // NewAdress, NewIncomingTx @@ -254,7 +254,7 @@ describe('Push notifications', function() { }, function(err) { setTimeout(function() { var calls = requestStub.getCalls(); - var args = _.map(calls, function(c) { + var args = calls.map(c => { return c.args[0]; }); calls.length.should.equal(2); // NewAdress, TxConfirmation @@ -278,7 +278,7 @@ describe('Push notifications', function() { }, function(err) { setTimeout(function() { var calls = requestStub.getCalls(); - var args = _.map(calls, function(c) { + var args = calls.map(c => { return c.args[0]; }); calls.length.should.equal(2); // NewAdress, TxProposalAcceptedBy @@ -304,7 +304,7 @@ describe('Push notifications', function() { }, function(err) { setTimeout(function() { var calls = requestStub.getCalls(); - var args = _.map(calls, function(c) { + var args = calls.map(c => { return c.args[0]; }); calls.length.should.equal(2); // NewAdress, TxProposalFinallyAccepted @@ -330,7 +330,7 @@ describe('Push notifications', function() { }, function(err) { setTimeout(function() { var calls = requestStub.getCalls(); - var args = _.map(calls, function(c) { + var args = calls.map(c => { return c.args[0]; }); calls.length.should.equal(2); // NewAdress, TxProposalRejectedBy @@ -356,7 +356,7 @@ describe('Push notifications', function() { }, function(err) { setTimeout(function() { var calls = requestStub.getCalls(); - var args = _.map(calls, function(c) { + var args = calls.map(c => { return c.args[0]; }); calls.length.should.equal(2); // NewAdress, TxProposalRemoved @@ -385,7 +385,7 @@ describe('Push notifications', function() { setTimeout(function() { var calls = requestStub.getCalls(); calls.length.should.equal(2); - var args = _.map(calls, function(c) { + var args = calls.map(c => { return c.args[0]; }); args[1].body.notification.title.should.contain('New payment received'); @@ -475,7 +475,7 @@ describe('Push notifications', function() { }, function(err) { setTimeout(function() { var calls = requestStub.getCalls(); - var args = _.map(calls, function(c) { + var args = calls.map(c => { return c.args[0]; }); @@ -596,7 +596,7 @@ describe('Push notifications', function() { setTimeout(function() { var calls = requestStub.getCalls(); - var args = _.map(calls.slice(-2), function(c) { + var args = calls.slice(-2).map(c => { return c.args[0]; }); @@ -653,7 +653,7 @@ describe('Push notifications', function() { setTimeout(function() { var calls = requestStub.getCalls(); - var args = _.map(calls.slice(-3), function(c) { + var args = calls.slice(-3).map(c => { return c.args[0]; }); args[0].body.notification.title.should.contain('Payment sent'); @@ -735,7 +735,7 @@ describe('Push notifications', function() { should.not.exist(err); setTimeout(function() { var calls = requestStub.getCalls(); - var args = _.filter(_.map(calls, function(call) { + var args = _.filter(calls.map(call => { return call.args[0]; }), function(arg) { return arg.body.notification.title == 'New copayer'; @@ -747,7 +747,7 @@ describe('Push notifications', function() { copayer2 should notify to copayer1 copayer2 should NOT be notifyed */ - var hashedCopayerIds = _.map(wallet.copayers, function(copayer) { + var hashedCopayerIds = wallet.copayers.map(copayer => { return sjcl.codec.hex.fromBits(sjcl.hash.sha256.hash(copayer.id)); }); hashedCopayerIds[0].should.equal((args[0].body.data.copayerId)); @@ -855,7 +855,7 @@ describe('Push notifications', function() { setTimeout(function() { var calls = requestStub.getCalls(); calls.length.should.equal(2); - var args = _.map(calls.slice(-2), function(c) { + var args = calls.slice(-2).map(c => { return c.args[0]; }); args[1].notification.title.should.contain('New payment received'); @@ -951,7 +951,7 @@ describe('Push notifications', function() { setTimeout(function() { var calls = requestStub.getCalls(); calls.length.should.equal(2); - var args = _.map(calls.slice(-2), function(c) { + var args = calls.slice(-2).map(c => { return c.args[0]; }); args[1].body.notification.title.should.contain('New payment received'); @@ -985,7 +985,7 @@ describe('Push notifications', function() { setTimeout(function() { var calls = requestStub.getCalls(); calls.length.should.equal(2); - var args = _.map(calls.slice(-2), function(c) { + var args = calls.slice(-2).map(c => { return c.args[0]; }); args[1].body.notification.title.should.contain('New payment received'); @@ -1018,7 +1018,7 @@ describe('Push notifications', function() { setTimeout(function() { var calls = requestStub.getCalls(); calls.length.should.equal(2); - var args = _.map(calls.slice(-2), function(c) { + var args = calls.slice(-2).map(c => { return c.args[0]; }); args[1].body.notification.title.should.contain('Nuevo pago recibido'); @@ -1050,7 +1050,7 @@ describe('Push notifications', function() { setTimeout(function() { var calls = requestStub.getCalls(); calls.length.should.equal(2); - var args = _.map(calls.slice(-2), function(c) { + var args = calls.slice(-2).map(c => { return c.args[0]; }); args[1].body.notification.title.should.contain('New payment received'); @@ -1180,7 +1180,7 @@ describe('Push notifications', function() { should.not.exist(err); setTimeout(function() { var calls = requestStub.getCalls(); - var args = _.map(calls, function(c) { + var args = calls.map(c => { return c.args[0]; }); calls.length.should.equal(2); // DEVICE_TOKEN, DEVICE_TOKEN2 @@ -1245,7 +1245,7 @@ describe('Push notifications', function() { should.not.exist(err); setTimeout(function() { var calls = requestStub.getCalls(); - var args = _.map(calls, function(c) { + var args = calls.map(c => { return c.args[0]; }); calls.length.should.equal(3); // DEVICE_TOKEN, DEVICE_TOKEN2, DEVICE_TOKEN3 @@ -1339,7 +1339,7 @@ describe('Push notifications', function() { }, function(err) { setTimeout(function() { var calls = requestStub.getCalls(); - var args = _.map(calls, function(c) { + var args = calls.map(c => { return c.args[0]; }); calls.length.should.equal(2); // NewAddress, NewIncomingTx @@ -1453,7 +1453,7 @@ describe('Push notifications', function() { }, function(err) { setTimeout(function() { var calls = requestStub.getCalls(); - var args = _.map(calls, function(c) { + var args = calls.map(c => { return c.args[0]; }); calls.length.should.equal(2); // NewAddress, NewIncomingTx @@ -1585,7 +1585,7 @@ describe('Push notifications', function() { should.not.exist(err); setTimeout(function() { var calls = requestStub.getCalls(); - var args = _.map(calls, function(c) { + var args = calls.map(c => { return c.args[0]; }); @@ -1704,7 +1704,7 @@ describe('Push notifications', function() { should.not.exist(err); setTimeout(function() { var calls = requestStub.getCalls(); - var args = _.map(calls, function(c) { + var args = calls.map(c => { return c.args[0]; }); calls.length.should.equal(3); // DEVICE_EXTERNAL_USER_ID, DEVICE_EXTERNAL_USER_ID2, DEVICE_EXTERNAL_USER_ID3 diff --git a/packages/bitcore-wallet-service/test/integration/server.js b/packages/bitcore-wallet-service/test/integration/server.js index 6b829f29fbb..fdf10b5c4a2 100644 --- a/packages/bitcore-wallet-service/test/integration/server.js +++ b/packages/bitcore-wallet-service/test/integration/server.js @@ -3305,7 +3305,7 @@ describe('Wallet service', function() { blockchainExplorer.estimateFee = sinon.stub().yields('dummy error'); server.getFeeLevels({}, function(err, fees) { should.not.exist(err); - fees = _.fromPairs(_.map(fees, function(item) { + fees = _.fromPairs(fees.map(item => { return [item.level, item]; })); fees.urgent.feePerKb.should.equal(60003); diff --git a/packages/bitcore-wallet-service/test/storage.js b/packages/bitcore-wallet-service/test/storage.js index 50b9d178152..dcbe65af5a5 100644 --- a/packages/bitcore-wallet-service/test/storage.js +++ b/packages/bitcore-wallet-service/test/storage.js @@ -142,7 +142,7 @@ describe('Storage', function() { storage.storeWalletAndUpdateCopayersLookup(wallet, function(err) { should.not.exist(err); - proposals = _.map(_.range(4), function(i) { + proposals = _.range(4).map(i => { var tx = Model.TxProposal.create({ walletId: '123', coin: 'btc', diff --git a/packages/bitcore-wallet/bin/cli-utils.js b/packages/bitcore-wallet/bin/cli-utils.js index 11683854bcf..f42b1f4b6ed 100644 --- a/packages/bitcore-wallet/bin/cli-utils.js +++ b/packages/bitcore-wallet/bin/cli-utils.js @@ -363,7 +363,7 @@ Utils.renderTxProposals = function(txps) { console.log("\t%s [\"%s\" by %s] %s => %s", Utils.shortID(x.id), x.message, x.creatorName, Utils.renderAmount(x.amount), x.outputs[0].toAddress); if (!_.isEmpty(x.actions)) { - console.log('\t\tActions: ', _.map(x.actions, function(a) { + console.log('\t\tActions: ', x.actions.map(a => { return a.copayerName + ' ' + (a.type == 'accept' ? '✓' : '✗') + (a.comment ? ' (' + a.comment + ')' : ''); }).join('. ')); } From 1b440e71629252f7ad74580724e09608964d29fb Mon Sep 17 00:00:00 2001 From: dynst <148708712+dynst@users.noreply.github.com> Date: Mon, 30 Jun 2025 00:00:00 +0000 Subject: [PATCH 11/14] remove lodash.filter() calls find packages/ -type f -exec sed -i -E \ -e 's/_\.filter\(([^,]+), function\(([a-zA-Z]+)\) \{/\1.filter(\2 => \{/g' {} + find packages/ -type f -exec sed -i -E \ -e 's/_\.filter\(([^,]+), (.* => \{)/\1.filter(\2/g' {} + --- packages/bitcore-lib/lib/transaction/input/multisig.js | 4 ++-- packages/bitcore-wallet-service/src/lib/chain/btc/index.ts | 6 +++--- packages/bitcore-wallet-service/src/lib/chain/doge/index.ts | 4 ++-- packages/bitcore-wallet-service/src/lib/model/txproposal.ts | 4 ++-- .../src/lib/model/txproposal_legacy.ts | 2 +- packages/bitcore-wallet-service/test/integration/helpers.js | 2 +- packages/bitcore-wallet/bin/cli-utils.js | 4 ++-- 7 files changed, 13 insertions(+), 13 deletions(-) diff --git a/packages/bitcore-lib/lib/transaction/input/multisig.js b/packages/bitcore-lib/lib/transaction/input/multisig.js index 7ff002070b0..ba328667923 100644 --- a/packages/bitcore-lib/lib/transaction/input/multisig.js +++ b/packages/bitcore-lib/lib/transaction/input/multisig.js @@ -121,7 +121,7 @@ MultiSigInput.prototype._updateScript = function() { MultiSigInput.prototype._createSignatures = function() { return _.map( - _.filter(this.signatures, function(signature) { return !_.isUndefined(signature); }), + this.signatures.filter(signature => !_.isUndefined(signature)), // Future signature types may need refactor of toDER function(signature) { return BufferUtil.concat([ @@ -153,7 +153,7 @@ MultiSigInput.prototype.countSignatures = function() { MultiSigInput.prototype.publicKeysWithoutSignature = function() { var self = this; - return _.filter(this.publicKeys, function(publicKey) { + return this.publicKeys.filter(publicKey => { return !(self.signatures[self.publicKeyIndex[publicKey.toString()]]); }); }; diff --git a/packages/bitcore-wallet-service/src/lib/chain/btc/index.ts b/packages/bitcore-wallet-service/src/lib/chain/btc/index.ts index 2515b60c1f4..7341cff5ede 100644 --- a/packages/bitcore-wallet-service/src/lib/chain/btc/index.ts +++ b/packages/bitcore-wallet-service/src/lib/chain/btc/index.ts @@ -597,7 +597,7 @@ export class BtcChain implements IChain { {} ); - return _.filter(utxos, utxo => { + return utxos.filter(utxo => { if (utxo.locked) return false; if (txp.excludeUnconfirmedUtxos && !txp.replaceTxByFee && !utxo.confirmations) return false; if (excludeIndex[utxo.txid + ':' + utxo.vout]) return false; @@ -619,7 +619,7 @@ export class BtcChain implements IChain { } // remove utxos not economically worth to send - utxos = _.filter(utxos, utxo => { + utxos = utxos.filter(utxo => { if (utxo.satoshis <= feePerInput) return false; return true; }); @@ -831,7 +831,7 @@ export class BtcChain implements IChain { next => { const group = groups[i++]; - let candidateUtxos = _.filter(utxos, utxo => { + let candidateUtxos = utxos.filter(utxo => { return utxo.confirmations >= group; }); diff --git a/packages/bitcore-wallet-service/src/lib/chain/doge/index.ts b/packages/bitcore-wallet-service/src/lib/chain/doge/index.ts index 57d6110f815..87f035d33e8 100644 --- a/packages/bitcore-wallet-service/src/lib/chain/doge/index.ts +++ b/packages/bitcore-wallet-service/src/lib/chain/doge/index.ts @@ -50,7 +50,7 @@ export class DogeChain extends BtcChain implements IChain { {} ); - return _.filter(utxos, utxo => { + return utxos.filter(utxo => { if (utxo.locked) return false; if (utxo.satoshis <= feePerInput) return false; if (txp.excludeUnconfirmedUtxos && !utxo.confirmations) return false; @@ -266,7 +266,7 @@ export class DogeChain extends BtcChain implements IChain { next => { const group = groups[i++]; - const candidateUtxos = _.filter(utxos, utxo => { + const candidateUtxos = utxos.filter(utxo => { return utxo.confirmations >= group; }); diff --git a/packages/bitcore-wallet-service/src/lib/model/txproposal.ts b/packages/bitcore-wallet-service/src/lib/model/txproposal.ts index ab96ed92de0..65421d2c444 100644 --- a/packages/bitcore-wallet-service/src/lib/model/txproposal.ts +++ b/packages/bitcore-wallet-service/src/lib/model/txproposal.ts @@ -417,7 +417,7 @@ export class TxProposal { } getCurrentSignatures() { - const acceptedActions = _.filter(this.actions, a => { + const acceptedActions = this.actions.filter(a => { return a.type == 'accept'; }); @@ -459,7 +459,7 @@ export class TxProposal { */ getApprovers() { return _.map( - _.filter(this.actions, a => { + this.actions.filter(a => { return a.type == 'accept'; }), 'copayerId' diff --git a/packages/bitcore-wallet-service/src/lib/model/txproposal_legacy.ts b/packages/bitcore-wallet-service/src/lib/model/txproposal_legacy.ts index 23f65b1b36b..f5bf118639d 100644 --- a/packages/bitcore-wallet-service/src/lib/model/txproposal_legacy.ts +++ b/packages/bitcore-wallet-service/src/lib/model/txproposal_legacy.ts @@ -175,7 +175,7 @@ export class TxProposalLegacy { getApprovers() { return _.map( - _.filter(this.actions, a => { + this.actions.filter(a => { return a.type == 'accept'; }), 'copayerId' diff --git a/packages/bitcore-wallet-service/test/integration/helpers.js b/packages/bitcore-wallet-service/test/integration/helpers.js index be0f1a0d251..8ee80640649 100644 --- a/packages/bitcore-wallet-service/test/integration/helpers.js +++ b/packages/bitcore-wallet-service/test/integration/helpers.js @@ -515,7 +515,7 @@ helpers.stubHistory = function(nr, bcHeight, txs) { txs= helpers.createTxsV8(nr,bcHeight, txs); blockchainExplorer.getTransactions = function(walletId, startBlock, cb) { startBlock = startBlock || 0; - var page = _.filter(txs, (x) => { + var page = txs.filter(x => { return x.height >=startBlock || x.height == -1 }); return cb(null, page); diff --git a/packages/bitcore-wallet/bin/cli-utils.js b/packages/bitcore-wallet/bin/cli-utils.js index f42b1f4b6ed..f024b6d2d13 100644 --- a/packages/bitcore-wallet/bin/cli-utils.js +++ b/packages/bitcore-wallet/bin/cli-utils.js @@ -224,7 +224,7 @@ Utils.saveClient = function(args, key, cred, opts, cb) { }; Utils.findOneTxProposal = function(txps, id) { - var matches = _.filter(txps, function(tx) { + var matches = txps.filter(tx => { return _.endsWith(Utils.shortID(tx.id), id); }); @@ -357,7 +357,7 @@ Utils.renderTxProposals = function(txps) { console.log("* TX Proposals:") txps.forEach((x) => { - var missingSignatures = x.requiredSignatures - _.filter(Object.values(x.actions), function(a) { + var missingSignatures = x.requiredSignatures - Object.values(x.actions).filter(a => { return a.type == 'accept'; }).length; console.log("\t%s [\"%s\" by %s] %s => %s", Utils.shortID(x.id), x.message, x.creatorName, Utils.renderAmount(x.amount), x.outputs[0].toAddress); From 694b23eaee5f40a8d667b59c600296b41d13a46c Mon Sep 17 00:00:00 2001 From: dynst <148708712+dynst@users.noreply.github.com> Date: Tue, 1 Jul 2025 00:00:00 +0000 Subject: [PATCH 12/14] remove lodash.isEmpty() calls find packages/ -type f -exec sed -i -E \ -e 's/!_\.isEmpty\(([a-zA-Z.]+)\)/\1.length !== 0/g' {} + find packages/ -type f -exec sed -i -E \ -e 's/_\.isEmpty\(([a-zA-Z.]+)\)/\1.length === 0/g' {} + --- .../src/lib/chain/btc/index.ts | 22 +++++++++---------- .../src/lib/chain/doge/index.ts | 16 +++++++------- .../src/lib/model/addressmanager.ts | 2 +- .../src/lib/pushnotificationsservice.ts | 2 +- .../bitcore-wallet-service/src/lib/server.ts | 2 +- .../bitcore-wallet-service/src/lib/storage.ts | 14 ++++++------ .../test/integration/helpers.js | 2 +- packages/bitcore-wallet/bin/cli-utils.js | 4 ++-- 8 files changed, 32 insertions(+), 32 deletions(-) diff --git a/packages/bitcore-wallet-service/src/lib/chain/btc/index.ts b/packages/bitcore-wallet-service/src/lib/chain/btc/index.ts index 7341cff5ede..bf4e2b90484 100644 --- a/packages/bitcore-wallet-service/src/lib/chain/btc/index.ts +++ b/packages/bitcore-wallet-service/src/lib/chain/btc/index.ts @@ -100,7 +100,7 @@ export class BtcChain implements IChain { return -input.satoshis; }); - if (_.isEmpty(inputs)) return cb(null, info); + if (inputs.length === 0) return cb(null, info); server._getFeePerKb(wallet, opts, (err, feePerKb) => { if (err) return cb(err); @@ -139,7 +139,7 @@ export class BtcChain implements IChain { txp.inputs.push(input); }); - if (_.isEmpty(txp.inputs)) return cb(null, info); + if (txp.inputs.length === 0) return cb(null, info); const fee = this.getEstimatedFee(txp, { conservativeEstimation: true }); const amount = _.sumBy(txp.inputs, 'satoshis') - fee; @@ -173,7 +173,7 @@ export class BtcChain implements IChain { if (wallet.singleAddress) { server.storage.fetchAddresses(server.walletId, (err, addresses) => { if (err) return cb(err); - if (_.isEmpty(addresses)) return cb(new ClientError('The wallet has no addresses')); + if (addresses.length === 0) return cb(new ClientError('The wallet has no addresses')); return cb(null, _.head(addresses)); }); } else { @@ -486,7 +486,7 @@ export class BtcChain implements IChain { } } - if (_.isEmpty(txp.inputPaths)) return Errors.NO_INPUT_PATHS; + if (txp.inputPaths.length === 0) return Errors.NO_INPUT_PATHS; try { const bitcoreTx = this.getBitcoreTx(txp); @@ -565,7 +565,7 @@ export class BtcChain implements IChain { const MAX_TX_SIZE_IN_KB = Defaults.MAX_TX_SIZE_IN_KB_BTC; // todo: check inputs are ours and have enough value - if (txp.inputs && !_.isEmpty(txp.inputs) && !txp.replaceTxByFee) { + if (txp.inputs && txp.inputs.length !== 0 && !txp.replaceTxByFee) { if (!_.isNumber(txp.fee)) txp.fee = this.getEstimatedFee(txp, { conservativeEstimation: true }); return cb(this.checkTx(txp)); } @@ -706,7 +706,7 @@ export class BtcChain implements IChain { return false; } - if (!_.isEmpty(bigInputs)) { + if (bigInputs.length !== 0) { if (amountVsUtxoRatio < Defaults.UTXO_SELECTION_MIN_TX_AMOUNT_VS_UTXO_FACTOR) { // logger.debug('Breaking because utxo is too small compared to tx amount'); return false; @@ -757,7 +757,7 @@ export class BtcChain implements IChain { ); selected = []; - if (!_.isEmpty(bigInputs)) { + if (bigInputs.length !== 0) { const input = _.head(bigInputs); logger.debug('Using big input: %o', Utils.formatUtxos(input)); total = input.satoshis; @@ -767,7 +767,7 @@ export class BtcChain implements IChain { } } - if (_.isEmpty(selected)) { + if (selected.length === 0) { // logger.debug('Could not find enough funds within this utxo subset'); return cb( error || @@ -826,7 +826,7 @@ export class BtcChain implements IChain { let lastGroupLength; async.whilst( () => { - return i < groups.length && _.isEmpty(inputs); + return i < groups.length && inputs.length === 0; }, next => { const group = groups[i++]; @@ -880,7 +880,7 @@ export class BtcChain implements IChain { }, err => { if (err) return cb(err); - if (selectionError || _.isEmpty(inputs)) + if (selectionError || inputs.length === 0) return cb(selectionError || new Error('Could not select tx inputs')); txp.setInputs(_.shuffle(inputs)); @@ -907,7 +907,7 @@ export class BtcChain implements IChain { } checkUtxos(opts) { - if (_.isNumber(opts.fee) && _.isEmpty(opts.inputs)) return true; + if (_.isNumber(opts.fee) && opts.inputs.length === 0) return true; } checkValidTxAmount(output): boolean { diff --git a/packages/bitcore-wallet-service/src/lib/chain/doge/index.ts b/packages/bitcore-wallet-service/src/lib/chain/doge/index.ts index 87f035d33e8..345b9bcfa49 100644 --- a/packages/bitcore-wallet-service/src/lib/chain/doge/index.ts +++ b/packages/bitcore-wallet-service/src/lib/chain/doge/index.ts @@ -22,7 +22,7 @@ export class DogeChain extends BtcChain implements IChain { const MAX_TX_SIZE_IN_KB = Defaults.MAX_TX_SIZE_IN_KB_DOGE; // todo: check inputs are ours and have enough value - if (txp.inputs && !_.isEmpty(txp.inputs)) { + if (txp.inputs && txp.inputs.length !== 0) { if (!_.isNumber(txp.fee)) txp.fee = this.getEstimatedFee(txp, { conservativeEstimation: true }); return cb(this.checkTx(txp)); } @@ -146,7 +146,7 @@ export class DogeChain extends BtcChain implements IChain { return false; } - if (!_.isEmpty(bigInputs)) { + if (bigInputs.length !== 0) { if (amountVsUtxoRatio < Defaults.UTXO_SELECTION_MIN_TX_AMOUNT_VS_UTXO_FACTOR) { // logger.debug('Breaking because utxo is too small compared to tx amount'); return false; @@ -197,7 +197,7 @@ export class DogeChain extends BtcChain implements IChain { ); selected = []; - if (!_.isEmpty(bigInputs)) { + if (bigInputs.length !== 0) { const input = _.head(bigInputs); logger.debug('Using big input: %o', Utils.formatUtxos(input)); total = input.satoshis; @@ -208,7 +208,7 @@ export class DogeChain extends BtcChain implements IChain { } } - if (_.isEmpty(selected)) { + if (selected.length === 0) { // logger.debug('Could not find enough funds within this utxo subset'); return cb( error || @@ -261,7 +261,7 @@ export class DogeChain extends BtcChain implements IChain { let lastGroupLength; async.whilst( () => { - return i < groups.length && _.isEmpty(inputs); + return i < groups.length && inputs.length === 0; }, next => { const group = groups[i++]; @@ -301,7 +301,7 @@ export class DogeChain extends BtcChain implements IChain { }, err => { if (err) return cb(err); - if (selectionError || _.isEmpty(inputs)) return cb(selectionError || new Error('Could not select tx inputs')); + if (selectionError || inputs.length === 0) return cb(selectionError || new Error('Could not select tx inputs')); txp.setInputs(_.shuffle(inputs)); txp.fee = fee; @@ -351,7 +351,7 @@ export class DogeChain extends BtcChain implements IChain { return -input.satoshis; }); - if (_.isEmpty(inputs)) return cb(null, info); + if (inputs.length === 0) return cb(null, info); server._getFeePerKb(wallet, opts, (err, feePerKb) => { if (err) return cb(err); @@ -390,7 +390,7 @@ export class DogeChain extends BtcChain implements IChain { txp.inputs.push(input); }); - if (_.isEmpty(txp.inputs)) return cb(null, info); + if (txp.inputs.length === 0) return cb(null, info); const fee = this.getEstimatedFee(txp, { conservativeEstimation: true }); const amount = _.sumBy(txp.inputs, 'satoshis') - fee; diff --git a/packages/bitcore-wallet-service/src/lib/model/addressmanager.ts b/packages/bitcore-wallet-service/src/lib/model/addressmanager.ts index 6064e52a3d0..8852d2c300d 100644 --- a/packages/bitcore-wallet-service/src/lib/model/addressmanager.ts +++ b/packages/bitcore-wallet-service/src/lib/model/addressmanager.ts @@ -125,7 +125,7 @@ export class AddressManager { } getNextSkippedPath() { - if (_.isEmpty(this.skippedPaths)) return null; + if (this.skippedPaths.length === 0) return null; const ret = this.skippedPaths.pop(); return ret; diff --git a/packages/bitcore-wallet-service/src/lib/pushnotificationsservice.ts b/packages/bitcore-wallet-service/src/lib/pushnotificationsservice.ts index f088c898748..b163af48163 100644 --- a/packages/bitcore-wallet-service/src/lib/pushnotificationsservice.ts +++ b/packages/bitcore-wallet-service/src/lib/pushnotificationsservice.ts @@ -383,7 +383,7 @@ export class PushNotificationsService { this.storage.fetchPreferences(notification.walletId, null, (err, preferences) => { if (err) logger.error('%o', err); - if (_.isEmpty(preferences)) preferences = []; + if (preferences.length === 0) preferences = []; const recipientPreferences = _.compact( preferences.map(p => { diff --git a/packages/bitcore-wallet-service/src/lib/server.ts b/packages/bitcore-wallet-service/src/lib/server.ts index 8edb295ce7b..a594fc7e491 100644 --- a/packages/bitcore-wallet-service/src/lib/server.ts +++ b/packages/bitcore-wallet-service/src/lib/server.ts @@ -2274,7 +2274,7 @@ export class WalletService implements IWalletService { } _validateOutputs(opts, wallet, cb) { - if (_.isEmpty(opts.outputs)) return new ClientError('No outputs were specified'); + if (opts.outputs.length === 0) return new ClientError('No outputs were specified'); for (let i = 0; i < opts.outputs.length; i++) { const output = opts.outputs[i]; diff --git a/packages/bitcore-wallet-service/src/lib/storage.ts b/packages/bitcore-wallet-service/src/lib/storage.ts index 0f97979ffc3..5c650fc9739 100644 --- a/packages/bitcore-wallet-service/src/lib/storage.ts +++ b/packages/bitcore-wallet-service/src/lib/storage.ts @@ -459,7 +459,7 @@ export class Storage { const filter: { walletId: string; createdOn?: typeof tsFilter } = { walletId }; - if (!_.isEmpty(tsFilter)) filter.createdOn = tsFilter; + if (tsFilter.length !== 0) filter.createdOn = tsFilter; const mods: { limit?: number } = {}; if (_.isNumber(opts.limit)) mods.limit = opts.limit; @@ -503,7 +503,7 @@ export class Storage { walletId, status: 'broadcasted' }; - if (!_.isEmpty(tsFilter)) filter.broadcastedOn = tsFilter; + if (tsFilter.length !== 0) filter.broadcastedOn = tsFilter; const mods: { limit?: number } = {}; if (_.isNumber(opts.limit)) mods.limit = opts.limit; @@ -775,7 +775,7 @@ export class Storage { storeAddressAndWallet(wallet, addresses, cb) { const clonedAddresses = [].concat(addresses); - if (_.isEmpty(addresses)) return cb(); + if (addresses.length === 0) return cb(); let duplicate; this.db.collection(collections.ADDRESSES).insertMany( @@ -843,7 +843,7 @@ export class Storage { }) .toArray((err, result) => { if (err) return cb(err); - if (!result || _.isEmpty(result)) return cb(); + if (!result || result.length === 0) return cb(); if (result.length > 1) { result = _.find(result, address => { return chain == (address.chain || address.coin || 'btc'); @@ -921,7 +921,7 @@ export class Storage { }) .toArray((err, result) => { if (err) return cb(err); - if (!result || _.isEmpty(result)) return cb(null, []); + if (!result || result.length === 0) return cb(null, []); const emails = result.map(x => { return Email.fromObj(x); @@ -1253,7 +1253,7 @@ export class Storage { }) .limit(1) .toArray((err, result) => { - if (err || _.isEmpty(result)) return cb(err); + if (err || result.length === 0) return cb(err); return cb(null, result[0]); }); } @@ -1272,7 +1272,7 @@ export class Storage { ts: -1 }) .toArray((err, result) => { - if (err || _.isEmpty(result)) return cb(err); + if (err || result.length === 0) return cb(err); return cb(null, result); }); } diff --git a/packages/bitcore-wallet-service/test/integration/helpers.js b/packages/bitcore-wallet-service/test/integration/helpers.js index 8ee80640649..61d2c862e80 100644 --- a/packages/bitcore-wallet-service/test/integration/helpers.js +++ b/packages/bitcore-wallet-service/test/integration/helpers.js @@ -489,7 +489,7 @@ helpers.createTxsV8 = function(nr, bcHeight, txs) { // 3. => 3... / bcHeight - 2 / txid3 var i = 0; - if (_.isEmpty(txs)) { + if (txs.length === 0) { while(i < nr) { txs.push({ id: 'id' + i, diff --git a/packages/bitcore-wallet/bin/cli-utils.js b/packages/bitcore-wallet/bin/cli-utils.js index f024b6d2d13..c348478afaa 100644 --- a/packages/bitcore-wallet/bin/cli-utils.js +++ b/packages/bitcore-wallet/bin/cli-utils.js @@ -351,7 +351,7 @@ Utils.renderAmount = function(satoshis, coin, opts) { }; Utils.renderTxProposals = function(txps) { - if (_.isEmpty(txps)) + if (txps.length === 0) return; console.log("* TX Proposals:") @@ -362,7 +362,7 @@ Utils.renderTxProposals = function(txps) { }).length; console.log("\t%s [\"%s\" by %s] %s => %s", Utils.shortID(x.id), x.message, x.creatorName, Utils.renderAmount(x.amount), x.outputs[0].toAddress); - if (!_.isEmpty(x.actions)) { + if (x.actions.length !== 0) { console.log('\t\tActions: ', x.actions.map(a => { return a.copayerName + ' ' + (a.type == 'accept' ? '✓' : '✗') + (a.comment ? ' (' + a.comment + ')' : ''); }).join('. ')); From 50cc7bb8e041bf60687b73051be3c2a0f14c433f Mon Sep 17 00:00:00 2001 From: dynst <148708712+dynst@users.noreply.github.com> Date: Tue, 1 Jul 2025 00:00:00 +0000 Subject: [PATCH 13/14] fix empty object check --- packages/bitcore-wallet-service/src/lib/storage.ts | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/bitcore-wallet-service/src/lib/storage.ts b/packages/bitcore-wallet-service/src/lib/storage.ts index 5c650fc9739..7fa9050e887 100644 --- a/packages/bitcore-wallet-service/src/lib/storage.ts +++ b/packages/bitcore-wallet-service/src/lib/storage.ts @@ -459,7 +459,7 @@ export class Storage { const filter: { walletId: string; createdOn?: typeof tsFilter } = { walletId }; - if (tsFilter.length !== 0) filter.createdOn = tsFilter; + if (Object.keys(tsFilter).length !== 0) filter.createdOn = tsFilter; const mods: { limit?: number } = {}; if (_.isNumber(opts.limit)) mods.limit = opts.limit; @@ -503,7 +503,7 @@ export class Storage { walletId, status: 'broadcasted' }; - if (tsFilter.length !== 0) filter.broadcastedOn = tsFilter; + if (Object.keys(tsFilter).length !== 0) filter.broadcastedOn = tsFilter; const mods: { limit?: number } = {}; if (_.isNumber(opts.limit)) mods.limit = opts.limit; From b07e2770a39e07311724d2a651fc9b0615f9183a Mon Sep 17 00:00:00 2001 From: dynst <148708712+dynst@users.noreply.github.com> Date: Tue, 1 Jul 2025 00:00:00 +0000 Subject: [PATCH 14/14] remove require('lodash') calls from files with all _. calls removed --- packages/bitcore-lib-cash/lib/uri.js | 1 - packages/bitcore-lib-cash/test/crypto/signature.js | 1 - packages/bitcore-lib-cash/test/hdkeys.js | 1 - packages/bitcore-lib-cash/test/transaction/input/input.js | 1 - packages/bitcore-lib-cash/test/transaction/input/multisig.js | 1 - .../test/transaction/input/multisigscripthash.js | 1 - packages/bitcore-lib-doge/lib/uri.js | 1 - packages/bitcore-lib-doge/test/crypto/signature.js | 1 - packages/bitcore-lib-doge/test/hdkeys.js | 1 - packages/bitcore-lib-doge/test/transaction/input/input.js | 1 - packages/bitcore-lib-doge/test/transaction/input/multisig.js | 1 - .../test/transaction/input/multisigscripthash.js | 1 - packages/bitcore-lib-ltc/lib/uri.js | 1 - packages/bitcore-lib-ltc/test/crypto/signature.js | 1 - packages/bitcore-lib-ltc/test/hdkeys.js | 1 - packages/bitcore-lib-ltc/test/transaction/input/input.js | 1 - packages/bitcore-lib-ltc/test/transaction/input/multisig.js | 1 - .../bitcore-lib-ltc/test/transaction/input/multisigscripthash.js | 1 - packages/bitcore-lib/lib/uri.js | 1 - packages/bitcore-lib/test/crypto/signature.js | 1 - packages/bitcore-lib/test/hdkeys.js | 1 - packages/bitcore-lib/test/transaction/input/input.js | 1 - packages/bitcore-lib/test/transaction/input/multisig.js | 1 - .../bitcore-lib/test/transaction/input/multisigscripthash.js | 1 - packages/bitcore-wallet/test/cliUtils.js | 1 - 25 files changed, 25 deletions(-) diff --git a/packages/bitcore-lib-cash/lib/uri.js b/packages/bitcore-lib-cash/lib/uri.js index 0a43ba5e26c..7bd7f6a8341 100644 --- a/packages/bitcore-lib-cash/lib/uri.js +++ b/packages/bitcore-lib-cash/lib/uri.js @@ -1,6 +1,5 @@ 'use strict'; -var _ = require('lodash'); var URL = require('url'); var Address = require('./address'); diff --git a/packages/bitcore-lib-cash/test/crypto/signature.js b/packages/bitcore-lib-cash/test/crypto/signature.js index 8da8a7dd787..058d2c07a5e 100644 --- a/packages/bitcore-lib-cash/test/crypto/signature.js +++ b/packages/bitcore-lib-cash/test/crypto/signature.js @@ -1,6 +1,5 @@ 'use strict'; -var _ = require('lodash'); var should = require('chai').should(); var bitcore = require('../..'); var BN = bitcore.crypto.BN; diff --git a/packages/bitcore-lib-cash/test/hdkeys.js b/packages/bitcore-lib-cash/test/hdkeys.js index 9e4dee949cf..6c1e4c0aca5 100644 --- a/packages/bitcore-lib-cash/test/hdkeys.js +++ b/packages/bitcore-lib-cash/test/hdkeys.js @@ -10,7 +10,6 @@ /* jshint maxstatements: 100 */ /* jshint unused: false */ -var _ = require('lodash'); var should = require('chai').should(); var expect = require('chai').expect; var sinon = require('sinon'); diff --git a/packages/bitcore-lib-cash/test/transaction/input/input.js b/packages/bitcore-lib-cash/test/transaction/input/input.js index edf49ea80b5..78954263eda 100644 --- a/packages/bitcore-lib-cash/test/transaction/input/input.js +++ b/packages/bitcore-lib-cash/test/transaction/input/input.js @@ -2,7 +2,6 @@ var should = require('chai').should(); var expect = require('chai').expect; -var _ = require('lodash'); var bitcore = require('../../..'); var errors = bitcore.errors; diff --git a/packages/bitcore-lib-cash/test/transaction/input/multisig.js b/packages/bitcore-lib-cash/test/transaction/input/multisig.js index 90592fc35f1..701dba05266 100644 --- a/packages/bitcore-lib-cash/test/transaction/input/multisig.js +++ b/packages/bitcore-lib-cash/test/transaction/input/multisig.js @@ -3,7 +3,6 @@ var should = require('chai').should(); var expect = require('chai').expect; -var _ = require('lodash'); var bitcore = require('../../..'); var Transaction = bitcore.Transaction; diff --git a/packages/bitcore-lib-cash/test/transaction/input/multisigscripthash.js b/packages/bitcore-lib-cash/test/transaction/input/multisigscripthash.js index 9b8fdbe6798..766b72c327b 100644 --- a/packages/bitcore-lib-cash/test/transaction/input/multisigscripthash.js +++ b/packages/bitcore-lib-cash/test/transaction/input/multisigscripthash.js @@ -3,7 +3,6 @@ var should = require('chai').should(); var expect = require('chai').expect; -var _ = require('lodash'); var bitcore = require('../../..'); var Transaction = bitcore.Transaction; diff --git a/packages/bitcore-lib-doge/lib/uri.js b/packages/bitcore-lib-doge/lib/uri.js index 435e58037b8..87eb8aba38c 100644 --- a/packages/bitcore-lib-doge/lib/uri.js +++ b/packages/bitcore-lib-doge/lib/uri.js @@ -1,6 +1,5 @@ 'use strict'; -var _ = require('lodash'); var URL = require('url'); var Address = require('./address'); diff --git a/packages/bitcore-lib-doge/test/crypto/signature.js b/packages/bitcore-lib-doge/test/crypto/signature.js index 6a2bc8982da..7c38938ed4d 100644 --- a/packages/bitcore-lib-doge/test/crypto/signature.js +++ b/packages/bitcore-lib-doge/test/crypto/signature.js @@ -1,6 +1,5 @@ 'use strict'; -var _ = require('lodash'); var should = require('chai').should(); var bitcore = require('../..'); var BN = bitcore.crypto.BN; diff --git a/packages/bitcore-lib-doge/test/hdkeys.js b/packages/bitcore-lib-doge/test/hdkeys.js index 2a5dd952cc4..a2334e1608b 100644 --- a/packages/bitcore-lib-doge/test/hdkeys.js +++ b/packages/bitcore-lib-doge/test/hdkeys.js @@ -10,7 +10,6 @@ /* jshint maxstatements: 100 */ /* jshint unused: false */ -var _ = require('lodash'); var should = require('chai').should(); var expect = require('chai').expect; var sinon = require('sinon'); diff --git a/packages/bitcore-lib-doge/test/transaction/input/input.js b/packages/bitcore-lib-doge/test/transaction/input/input.js index bc263ce2e3c..e2cef7e25e9 100644 --- a/packages/bitcore-lib-doge/test/transaction/input/input.js +++ b/packages/bitcore-lib-doge/test/transaction/input/input.js @@ -2,7 +2,6 @@ var should = require('chai').should(); var expect = require('chai').expect; -var _ = require('lodash'); var bitcore = require('../../..'); var errors = bitcore.errors; diff --git a/packages/bitcore-lib-doge/test/transaction/input/multisig.js b/packages/bitcore-lib-doge/test/transaction/input/multisig.js index d7ac44d1b88..61a08ec124a 100644 --- a/packages/bitcore-lib-doge/test/transaction/input/multisig.js +++ b/packages/bitcore-lib-doge/test/transaction/input/multisig.js @@ -3,7 +3,6 @@ var should = require('chai').should(); var expect = require('chai').expect; -var _ = require('lodash'); var bitcore = require('../../..'); var Transaction = bitcore.Transaction; diff --git a/packages/bitcore-lib-doge/test/transaction/input/multisigscripthash.js b/packages/bitcore-lib-doge/test/transaction/input/multisigscripthash.js index 9c8d2fd451d..ec2b32a471c 100644 --- a/packages/bitcore-lib-doge/test/transaction/input/multisigscripthash.js +++ b/packages/bitcore-lib-doge/test/transaction/input/multisigscripthash.js @@ -3,7 +3,6 @@ var should = require('chai').should(); var expect = require('chai').expect; -var _ = require('lodash'); var bitcore = require('../../..'); var Transaction = bitcore.Transaction; diff --git a/packages/bitcore-lib-ltc/lib/uri.js b/packages/bitcore-lib-ltc/lib/uri.js index 116abdfc6ae..51156fe2201 100644 --- a/packages/bitcore-lib-ltc/lib/uri.js +++ b/packages/bitcore-lib-ltc/lib/uri.js @@ -1,6 +1,5 @@ 'use strict'; -var _ = require('lodash'); var URL = require('url'); var Address = require('./address'); diff --git a/packages/bitcore-lib-ltc/test/crypto/signature.js b/packages/bitcore-lib-ltc/test/crypto/signature.js index 14bf3e3d5bf..09b27217d8c 100644 --- a/packages/bitcore-lib-ltc/test/crypto/signature.js +++ b/packages/bitcore-lib-ltc/test/crypto/signature.js @@ -1,6 +1,5 @@ 'use strict'; -var _ = require('lodash'); var should = require('chai').should(); var bitcore = require('../..'); var BN = bitcore.crypto.BN; diff --git a/packages/bitcore-lib-ltc/test/hdkeys.js b/packages/bitcore-lib-ltc/test/hdkeys.js index fb966dc71f5..12ce9ccbcea 100644 --- a/packages/bitcore-lib-ltc/test/hdkeys.js +++ b/packages/bitcore-lib-ltc/test/hdkeys.js @@ -10,7 +10,6 @@ /* jshint maxstatements: 100 */ /* jshint unused: false */ -var _ = require('lodash'); var should = require('chai').should(); var expect = require('chai').expect; var sinon = require('sinon'); diff --git a/packages/bitcore-lib-ltc/test/transaction/input/input.js b/packages/bitcore-lib-ltc/test/transaction/input/input.js index 5b8b1b4081a..f4ccecd5006 100644 --- a/packages/bitcore-lib-ltc/test/transaction/input/input.js +++ b/packages/bitcore-lib-ltc/test/transaction/input/input.js @@ -2,7 +2,6 @@ var should = require('chai').should(); var expect = require('chai').expect; -var _ = require('lodash'); var bitcore = require('../../..'); var errors = bitcore.errors; diff --git a/packages/bitcore-lib-ltc/test/transaction/input/multisig.js b/packages/bitcore-lib-ltc/test/transaction/input/multisig.js index 860771fe14e..a254a1307dd 100644 --- a/packages/bitcore-lib-ltc/test/transaction/input/multisig.js +++ b/packages/bitcore-lib-ltc/test/transaction/input/multisig.js @@ -3,7 +3,6 @@ var should = require('chai').should(); var expect = require('chai').expect; -var _ = require('lodash'); var bitcore = require('../../..'); var Transaction = bitcore.Transaction; diff --git a/packages/bitcore-lib-ltc/test/transaction/input/multisigscripthash.js b/packages/bitcore-lib-ltc/test/transaction/input/multisigscripthash.js index 44659f80c45..19a3561556f 100644 --- a/packages/bitcore-lib-ltc/test/transaction/input/multisigscripthash.js +++ b/packages/bitcore-lib-ltc/test/transaction/input/multisigscripthash.js @@ -3,7 +3,6 @@ var should = require('chai').should(); var expect = require('chai').expect; -var _ = require('lodash'); var bitcore = require('../../..'); var Transaction = bitcore.Transaction; diff --git a/packages/bitcore-lib/lib/uri.js b/packages/bitcore-lib/lib/uri.js index aaadddc023f..8dd3d22d89f 100644 --- a/packages/bitcore-lib/lib/uri.js +++ b/packages/bitcore-lib/lib/uri.js @@ -1,6 +1,5 @@ 'use strict'; -var _ = require('lodash'); var URL = require('url'); var Address = require('./address'); diff --git a/packages/bitcore-lib/test/crypto/signature.js b/packages/bitcore-lib/test/crypto/signature.js index 3aa3f0d1fb9..842fb05e084 100644 --- a/packages/bitcore-lib/test/crypto/signature.js +++ b/packages/bitcore-lib/test/crypto/signature.js @@ -1,6 +1,5 @@ 'use strict'; -var _ = require('lodash'); var should = require('chai').should(); var bitcore = require('../..'); var BN = bitcore.crypto.BN; diff --git a/packages/bitcore-lib/test/hdkeys.js b/packages/bitcore-lib/test/hdkeys.js index 9e4dee949cf..6c1e4c0aca5 100644 --- a/packages/bitcore-lib/test/hdkeys.js +++ b/packages/bitcore-lib/test/hdkeys.js @@ -10,7 +10,6 @@ /* jshint maxstatements: 100 */ /* jshint unused: false */ -var _ = require('lodash'); var should = require('chai').should(); var expect = require('chai').expect; var sinon = require('sinon'); diff --git a/packages/bitcore-lib/test/transaction/input/input.js b/packages/bitcore-lib/test/transaction/input/input.js index 603e713674a..53704257ce3 100644 --- a/packages/bitcore-lib/test/transaction/input/input.js +++ b/packages/bitcore-lib/test/transaction/input/input.js @@ -2,7 +2,6 @@ var should = require('chai').should(); var expect = require('chai').expect; -var _ = require('lodash'); var bitcore = require('../../..'); var errors = bitcore.errors; diff --git a/packages/bitcore-lib/test/transaction/input/multisig.js b/packages/bitcore-lib/test/transaction/input/multisig.js index 14aea5d6cbb..059cacc7cd4 100644 --- a/packages/bitcore-lib/test/transaction/input/multisig.js +++ b/packages/bitcore-lib/test/transaction/input/multisig.js @@ -3,7 +3,6 @@ var should = require('chai').should(); var expect = require('chai').expect; -var _ = require('lodash'); var bitcore = require('../../..'); var Transaction = bitcore.Transaction; diff --git a/packages/bitcore-lib/test/transaction/input/multisigscripthash.js b/packages/bitcore-lib/test/transaction/input/multisigscripthash.js index bbf051910ce..07be2cf4c86 100644 --- a/packages/bitcore-lib/test/transaction/input/multisigscripthash.js +++ b/packages/bitcore-lib/test/transaction/input/multisigscripthash.js @@ -3,7 +3,6 @@ var should = require('chai').should(); var expect = require('chai').expect; -var _ = require('lodash'); var bitcore = require('../../..'); var Transaction = bitcore.Transaction; diff --git a/packages/bitcore-wallet/test/cliUtils.js b/packages/bitcore-wallet/test/cliUtils.js index 6d4db70595e..7a08dca2ff7 100644 --- a/packages/bitcore-wallet/test/cliUtils.js +++ b/packages/bitcore-wallet/test/cliUtils.js @@ -1,6 +1,5 @@ 'use strict'; -var _ = require('lodash'); var chai = require('chai'); var sinon = require('sinon'); var should = chai.should();