@bitgo/abstract-utxo 13.3.0 → 13.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/src/recovery/RecoveryProvider.d.ts.map +1 -1
- package/dist/cjs/src/recovery/RecoveryProvider.js +25 -2
- package/dist/cjs/test/unit/recovery/backupKeyRecoveryUnspentGathering.js +47 -1
- package/dist/cjs/tsconfig.tsbuildinfo +1 -1
- package/dist/esm/recovery/RecoveryProvider.d.ts.map +1 -1
- package/dist/esm/recovery/RecoveryProvider.js +26 -3
- package/package.json +6 -6
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RecoveryProvider.d.ts","sourceRoot":"","sources":["../../../src/recovery/RecoveryProvider.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"RecoveryProvider.d.ts","sourceRoot":"","sources":["../../../src/recovery/RecoveryProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkC,WAAW,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAG9F,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAI1C;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM;IACxE,uBAAuB,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAC1E,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IACtD,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACjD,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;CACxD;AA0BD,wBAAgB,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAgBrF"}
|
|
@@ -1,5 +1,28 @@
|
|
|
1
|
-
import { BlockchairApi } from '@bitgo/blockapis';
|
|
1
|
+
import { ApiRequestError, BlockchairApi } from '@bitgo/blockapis';
|
|
2
|
+
import { RecoveryProviderError } from '@bitgo/sdk-core';
|
|
2
3
|
import { ApiNotImplementedError } from './baseApi';
|
|
4
|
+
/**
|
|
5
|
+
* Re-map `@bitgo/blockapis` provider failures (`ApiRequestError`) to the shared
|
|
6
|
+
* `RecoveryProviderError` so a recovery scanner can distinguish "indexer failed"
|
|
7
|
+
* from "wallet is empty". `ApiRequestError` is the single error type the blockchair
|
|
8
|
+
* http client surfaces for network failures, non-2xx responses, and malformed bodies.
|
|
9
|
+
*/
|
|
10
|
+
function wrapProviderErrors(provider) {
|
|
11
|
+
return new Proxy(provider, {
|
|
12
|
+
get(target, prop, receiver) {
|
|
13
|
+
const value = Reflect.get(target, prop, receiver);
|
|
14
|
+
if (typeof value === 'function') {
|
|
15
|
+
return (...args) => Promise.resolve(value.apply(target, args)).catch((e) => {
|
|
16
|
+
if (e instanceof ApiRequestError) {
|
|
17
|
+
throw new RecoveryProviderError(e.message, e);
|
|
18
|
+
}
|
|
19
|
+
throw e;
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
return value;
|
|
23
|
+
},
|
|
24
|
+
});
|
|
25
|
+
}
|
|
3
26
|
export function forCoin(coinName, apiToken) {
|
|
4
27
|
switch (coinName) {
|
|
5
28
|
case 'btc':
|
|
@@ -12,8 +35,8 @@ export function forCoin(coinName, apiToken) {
|
|
|
12
35
|
case 'doge':
|
|
13
36
|
case 'ltc':
|
|
14
37
|
case 'zec':
|
|
15
|
-
return BlockchairApi.forCoin(coinName, { apiToken });
|
|
38
|
+
return wrapProviderErrors(BlockchairApi.forCoin(coinName, { apiToken }));
|
|
16
39
|
}
|
|
17
40
|
throw new ApiNotImplementedError(coinName);
|
|
18
41
|
}
|
|
19
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
42
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVjb3ZlcnlQcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9yZWNvdmVyeS9SZWNvdmVyeVByb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUE4QixNQUFNLGtCQUFrQixDQUFDO0FBQzlGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBSXhELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQW9CbkQ7Ozs7O0dBS0c7QUFDSCxTQUFTLGtCQUFrQixDQUE2QixRQUFXO0lBQ2pFLE9BQU8sSUFBSSxLQUFLLENBQUMsUUFBUSxFQUFFO1FBQ3pCLEdBQUcsQ0FBQyxNQUFNLEVBQUUsSUFBSSxFQUFFLFFBQVE7WUFDeEIsTUFBTSxLQUFLLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQUUsSUFBSSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1lBQ2xELElBQUksT0FBTyxLQUFLLEtBQUssVUFBVSxFQUFFLENBQUM7Z0JBQ2hDLE9BQU8sQ0FBQyxHQUFHLElBQWUsRUFBRSxFQUFFLENBQzVCLE9BQU8sQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFVLEVBQUUsRUFBRTtvQkFDOUQsSUFBSSxDQUFDLFlBQVksZUFBZSxFQUFFLENBQUM7d0JBQ2pDLE1BQU0sSUFBSSxxQkFBcUIsQ0FBQyxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQyxDQUFDO29CQUNoRCxDQUFDO29CQUNELE1BQU0sQ0FBQyxDQUFDO2dCQUNWLENBQUMsQ0FBQyxDQUFDO1lBQ1AsQ0FBQztZQUNELE9BQU8sS0FBSyxDQUFDO1FBQ2YsQ0FBQztLQUNGLENBQU0sQ0FBQztBQUNWLENBQUM7QUFFRCxNQUFNLFVBQVUsT0FBTyxDQUFDLFFBQWdCLEVBQUUsUUFBaUI7SUFDekQsUUFBUSxRQUFRLEVBQUUsQ0FBQztRQUNqQixLQUFLLEtBQUssQ0FBQztRQUNYLEtBQUssTUFBTSxDQUFDO1FBQ1osS0FBSyxLQUFLLENBQUM7UUFDWCxLQUFLLE1BQU0sQ0FBQztRQUNaLEtBQUssS0FBSyxDQUFDO1FBQ1gsS0FBSyxLQUFLLENBQUM7UUFDWCxLQUFLLE1BQU0sQ0FBQztRQUNaLEtBQUssTUFBTSxDQUFDO1FBQ1osS0FBSyxLQUFLLENBQUM7UUFDWCxLQUFLLEtBQUs7WUFDUixPQUFPLGtCQUFrQixDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQzdFLENBQUM7SUFFRCxNQUFNLElBQUksc0JBQXNCLENBQUMsUUFBUSxDQUFDLENBQUM7QUFDN0MsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFwaVJlcXVlc3RFcnJvciwgQmxvY2tjaGFpckFwaSwgQWRkcmVzc0luZm8sIFRyYW5zYWN0aW9uSU8gfSBmcm9tICdAYml0Z28vYmxvY2thcGlzJztcbmltcG9ydCB7IFJlY292ZXJ5UHJvdmlkZXJFcnJvciB9IGZyb20gJ0BiaXRnby9zZGstY29yZSc7XG5cbmltcG9ydCB0eXBlIHsgVW5zcGVudCB9IGZyb20gJy4uL3Vuc3BlbnQnO1xuXG5pbXBvcnQgeyBBcGlOb3RJbXBsZW1lbnRlZEVycm9yIH0gZnJvbSAnLi9iYXNlQXBpJztcblxuLyoqXG4gKiBBbiBhY2NvdW50IHdpdGggYmVhciBtaW5pbXVtIGluZm9ybWF0aW9uIHJlcXVpcmVkIGZvciByZWNvdmVyaWVzLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJlY292ZXJ5QWNjb3VudERhdGEge1xuICB0eENvdW50OiBudW1iZXI7XG4gIHRvdGFsQmFsYW5jZTogbnVtYmVyO1xufVxuXG4vKipcbiAqIEZhY3RvcnkgZm9yIEFkZHJlc3NBcGkgJiBVdHhvQXBpXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgUmVjb3ZlcnlQcm92aWRlcjxUTnVtYmVyIGV4dGVuZHMgbnVtYmVyIHwgYmlnaW50ID0gbnVtYmVyPiB7XG4gIGdldFVuc3BlbnRzRm9yQWRkcmVzc2VzKGFkZHJlc3Nlczogc3RyaW5nW10pOiBQcm9taXNlPFVuc3BlbnQ8VE51bWJlcj5bXT47XG4gIGdldEFkZHJlc3NJbmZvKGFkZHJlc3M6IHN0cmluZyk6IFByb21pc2U8QWRkcmVzc0luZm8+O1xuICBnZXRUcmFuc2FjdGlvbkhleCh0eGlkOiBzdHJpbmcpOiBQcm9taXNlPHN0cmluZz47XG4gIGdldFRyYW5zYWN0aW9uSU8odHhpZDogc3RyaW5nKTogUHJvbWlzZTxUcmFuc2FjdGlvbklPPjtcbn1cblxuLyoqXG4gKiBSZS1tYXAgYEBiaXRnby9ibG9ja2FwaXNgIHByb3ZpZGVyIGZhaWx1cmVzIChgQXBpUmVxdWVzdEVycm9yYCkgdG8gdGhlIHNoYXJlZFxuICogYFJlY292ZXJ5UHJvdmlkZXJFcnJvcmAgc28gYSByZWNvdmVyeSBzY2FubmVyIGNhbiBkaXN0aW5ndWlzaCBcImluZGV4ZXIgZmFpbGVkXCJcbiAqIGZyb20gXCJ3YWxsZXQgaXMgZW1wdHlcIi4gYEFwaVJlcXVlc3RFcnJvcmAgaXMgdGhlIHNpbmdsZSBlcnJvciB0eXBlIHRoZSBibG9ja2NoYWlyXG4gKiBodHRwIGNsaWVudCBzdXJmYWNlcyBmb3IgbmV0d29yayBmYWlsdXJlcywgbm9uLTJ4eCByZXNwb25zZXMsIGFuZCBtYWxmb3JtZWQgYm9kaWVzLlxuICovXG5mdW5jdGlvbiB3cmFwUHJvdmlkZXJFcnJvcnM8VCBleHRlbmRzIFJlY292ZXJ5UHJvdmlkZXI+KHByb3ZpZGVyOiBUKTogVCB7XG4gIHJldHVybiBuZXcgUHJveHkocHJvdmlkZXIsIHtcbiAgICBnZXQodGFyZ2V0LCBwcm9wLCByZWNlaXZlcikge1xuICAgICAgY29uc3QgdmFsdWUgPSBSZWZsZWN0LmdldCh0YXJnZXQsIHByb3AsIHJlY2VpdmVyKTtcbiAgICAgIGlmICh0eXBlb2YgdmFsdWUgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgcmV0dXJuICguLi5hcmdzOiB1bmtub3duW10pID0+XG4gICAgICAgICAgUHJvbWlzZS5yZXNvbHZlKHZhbHVlLmFwcGx5KHRhcmdldCwgYXJncykpLmNhdGNoKChlOiB1bmtub3duKSA9PiB7XG4gICAgICAgICAgICBpZiAoZSBpbnN0YW5jZW9mIEFwaVJlcXVlc3RFcnJvcikge1xuICAgICAgICAgICAgICB0aHJvdyBuZXcgUmVjb3ZlcnlQcm92aWRlckVycm9yKGUubWVzc2FnZSwgZSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0aHJvdyBlO1xuICAgICAgICAgIH0pO1xuICAgICAgfVxuICAgICAgcmV0dXJuIHZhbHVlO1xuICAgIH0sXG4gIH0pIGFzIFQ7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmb3JDb2luKGNvaW5OYW1lOiBzdHJpbmcsIGFwaVRva2VuPzogc3RyaW5nKTogUmVjb3ZlcnlQcm92aWRlcjxudW1iZXI+IHtcbiAgc3dpdGNoIChjb2luTmFtZSkge1xuICAgIGNhc2UgJ2J0Yyc6XG4gICAgY2FzZSAndGJ0Yyc6XG4gICAgY2FzZSAnYmNoJzpcbiAgICBjYXNlICdiY2hhJzpcbiAgICBjYXNlICdic3YnOlxuICAgIGNhc2UgJ2J0Zyc6XG4gICAgY2FzZSAnZGFzaCc6XG4gICAgY2FzZSAnZG9nZSc6XG4gICAgY2FzZSAnbHRjJzpcbiAgICBjYXNlICd6ZWMnOlxuICAgICAgcmV0dXJuIHdyYXBQcm92aWRlckVycm9ycyhCbG9ja2NoYWlyQXBpLmZvckNvaW4oY29pbk5hbWUsIHsgYXBpVG9rZW4gfSkpO1xuICB9XG5cbiAgdGhyb3cgbmV3IEFwaU5vdEltcGxlbWVudGVkRXJyb3IoY29pbk5hbWUpO1xufVxuIl19
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bitgo/abstract-utxo",
|
|
3
|
-
"version": "13.
|
|
3
|
+
"version": "13.4.0",
|
|
4
4
|
"description": "BitGo SDK coin library for UTXO base implementation",
|
|
5
5
|
"main": "./dist/cjs/src/index.js",
|
|
6
6
|
"module": "./dist/esm/index.js",
|
|
@@ -61,8 +61,8 @@
|
|
|
61
61
|
},
|
|
62
62
|
"dependencies": {
|
|
63
63
|
"@bitgo/blockapis": "^1.13.11",
|
|
64
|
-
"@bitgo/sdk-api": "^3.0
|
|
65
|
-
"@bitgo/sdk-core": "^
|
|
64
|
+
"@bitgo/sdk-api": "^3.1.0",
|
|
65
|
+
"@bitgo/sdk-core": "^39.0.0",
|
|
66
66
|
"@bitgo/utxo-core": "^1.41.5",
|
|
67
67
|
"@bitgo/utxo-descriptors": "^2.1.0",
|
|
68
68
|
"@bitgo/utxo-ord": "^1.34.5",
|
|
@@ -76,10 +76,10 @@
|
|
|
76
76
|
"superagent": "^9.0.1"
|
|
77
77
|
},
|
|
78
78
|
"devDependencies": {
|
|
79
|
-
"@bitgo/sdk-test": "^9.1.
|
|
80
|
-
"@bitgo/statics": "^59.
|
|
79
|
+
"@bitgo/sdk-test": "^9.1.85",
|
|
80
|
+
"@bitgo/statics": "^59.23.0",
|
|
81
81
|
"@bitgo/utxo-lib": "^11.24.4",
|
|
82
82
|
"mocha": "^10.2.0"
|
|
83
83
|
},
|
|
84
|
-
"gitHead": "
|
|
84
|
+
"gitHead": "55f471c58a723830b4da056635d29dc87f5c3426"
|
|
85
85
|
}
|