@bsv/wallet-toolbox-client 2.0.21 → 2.0.22
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ListOutputsSpecOp.d.ts","sourceRoot":"","sources":["../../../../../src/storage/methods/ListOutputsSpecOp.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACpD,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAA;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAA;AAK1D,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAC9B,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB;;OAEG;IACH,2BAA2B,CAAC,EAAE,OAAO,CAAA;IACrC,cAAc,CAAC,EAAE,CACf,CAAC,EAAE,eAAe,EAClB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,UAAU,CAAC,oBAAoB,EACtC,UAAU,EAAE,MAAM,EAAE,KACjB,OAAO,CAAC,iBAAiB,CAAC,CAAA;IAC/B,iBAAiB,CAAC,EAAE,CAClB,CAAC,EAAE,eAAe,EAClB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,UAAU,CAAC,oBAAoB,EACtC,UAAU,EAAE,MAAM,EAAE,EACpB,OAAO,EAAE,WAAW,EAAE,KACnB,OAAO,CAAC,iBAAiB,CAAC,CAAA;IAC/B,aAAa,CAAC,EAAE,CACd,CAAC,EAAE,eAAe,EAClB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,UAAU,CAAC,oBAAoB,EACtC,UAAU,EAAE,MAAM,EAAE,EACpB,OAAO,EAAE,WAAW,EAAE,KACnB,OAAO,CAAC,WAAW,EAAE,CAAC,CAAA;IAC3B;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,EAAE,CAAA;IAC1B;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAA;CACzB;
|
|
1
|
+
{"version":3,"file":"ListOutputsSpecOp.d.ts","sourceRoot":"","sources":["../../../../../src/storage/methods/ListOutputsSpecOp.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,UAAU,EAAE,MAAM,UAAU,CAAA;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACpD,OAAO,EAAE,MAAM,EAAE,MAAM,oCAAoC,CAAA;AAC3D,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAA;AAK1D,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAA;IACZ,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,oBAAoB,CAAC,EAAE,OAAO,CAAA;IAC9B,YAAY,CAAC,EAAE,OAAO,CAAA;IACtB;;OAEG;IACH,2BAA2B,CAAC,EAAE,OAAO,CAAA;IACrC,cAAc,CAAC,EAAE,CACf,CAAC,EAAE,eAAe,EAClB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,UAAU,CAAC,oBAAoB,EACtC,UAAU,EAAE,MAAM,EAAE,KACjB,OAAO,CAAC,iBAAiB,CAAC,CAAA;IAC/B,iBAAiB,CAAC,EAAE,CAClB,CAAC,EAAE,eAAe,EAClB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,UAAU,CAAC,oBAAoB,EACtC,UAAU,EAAE,MAAM,EAAE,EACpB,OAAO,EAAE,WAAW,EAAE,KACnB,OAAO,CAAC,iBAAiB,CAAC,CAAA;IAC/B,aAAa,CAAC,EAAE,CACd,CAAC,EAAE,eAAe,EAClB,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,UAAU,CAAC,oBAAoB,EACtC,UAAU,EAAE,MAAM,EAAE,EACpB,OAAO,EAAE,WAAW,EAAE,KACnB,OAAO,CAAC,WAAW,EAAE,CAAC,CAAA;IAC3B;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,EAAE,CAAA;IAC1B;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAA;CACzB;AAsID;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,MAAM,EACd,IAAI,EAAE,MAAM,EAAE,GACb;IAAE,MAAM,EAAE,iBAAiB,GAAG,SAAS,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,EAAE,CAAA;CAAE,CAwB5E"}
|
|
@@ -4,6 +4,22 @@ exports.getListOutputsSpecOp = getListOutputsSpecOp;
|
|
|
4
4
|
const types_1 = require("../../sdk/types");
|
|
5
5
|
const utilityHelpers_1 = require("../../utility/utilityHelpers");
|
|
6
6
|
const WERR_errors_1 = require("../../sdk/WERR_errors");
|
|
7
|
+
const INVALID_CHANGE_MAX_CONCURRENCY = 12;
|
|
8
|
+
async function runWithConcurrency(values, maxConcurrency, worker) {
|
|
9
|
+
const active = [];
|
|
10
|
+
for (const value of values) {
|
|
11
|
+
const task = worker(value).finally(() => {
|
|
12
|
+
const i = active.indexOf(task);
|
|
13
|
+
if (i >= 0)
|
|
14
|
+
active.splice(i, 1);
|
|
15
|
+
});
|
|
16
|
+
active.push(task);
|
|
17
|
+
if (active.length >= maxConcurrency) {
|
|
18
|
+
await Promise.race(active);
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
await Promise.all(active);
|
|
22
|
+
}
|
|
7
23
|
const getBasketToSpecOp = () => {
|
|
8
24
|
return {
|
|
9
25
|
[types_1.specOpWalletBalance]: {
|
|
@@ -26,11 +42,11 @@ const getBasketToSpecOp = () => {
|
|
|
26
42
|
includeSpent: false,
|
|
27
43
|
tagsToIntercept: ['release', 'all'],
|
|
28
44
|
filterOutputs: async (s, auth, vargs, specOpTags, outputs) => {
|
|
29
|
-
const
|
|
45
|
+
const invalidOutputIds = new Set();
|
|
30
46
|
const services = s.getServices();
|
|
31
|
-
|
|
47
|
+
await runWithConcurrency(outputs, INVALID_CHANGE_MAX_CONCURRENCY, async (o) => {
|
|
32
48
|
if (!o.basketId)
|
|
33
|
-
|
|
49
|
+
return; // only care about outputs assigned to baskets.
|
|
34
50
|
await s.validateOutputScript(o);
|
|
35
51
|
let ok = false;
|
|
36
52
|
if (o.lockingScript && o.lockingScript.length > 0) {
|
|
@@ -40,14 +56,15 @@ const getBasketToSpecOp = () => {
|
|
|
40
56
|
ok = undefined;
|
|
41
57
|
}
|
|
42
58
|
if (ok === false) {
|
|
43
|
-
|
|
59
|
+
invalidOutputIds.add(o.outputId);
|
|
44
60
|
}
|
|
45
|
-
}
|
|
61
|
+
});
|
|
62
|
+
const filteredOutputs = outputs.filter(o => invalidOutputIds.has(o.outputId));
|
|
46
63
|
if (specOpTags.indexOf('release') >= 0) {
|
|
47
|
-
|
|
64
|
+
await runWithConcurrency(filteredOutputs, INVALID_CHANGE_MAX_CONCURRENCY, async (o) => {
|
|
48
65
|
await s.updateOutput(o.outputId, { spendable: false });
|
|
49
66
|
o.spendable = false;
|
|
50
|
-
}
|
|
67
|
+
});
|
|
51
68
|
}
|
|
52
69
|
return filteredOutputs;
|
|
53
70
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ListOutputsSpecOp.js","sourceRoot":"","sources":["../../../../../src/storage/methods/ListOutputsSpecOp.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"ListOutputsSpecOp.js","sourceRoot":"","sources":["../../../../../src/storage/methods/ListOutputsSpecOp.ts"],"names":[],"mappings":"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"}
|