@bitgo-beta/blockapis 1.3.3-alpha.44 → 1.3.3-alpha.440
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/src/AddressApi.d.ts +1 -1
- package/dist/src/AddressApi.d.ts.map +1 -1
- package/dist/src/ApiBuilder.js +3 -3
- package/dist/src/BaseHttpClient.d.ts +2 -2
- package/dist/src/BaseHttpClient.d.ts.map +1 -1
- package/dist/src/BaseHttpClient.js +9 -6
- package/dist/src/CachingHttpClient.js +1 -1
- package/dist/src/TransactionApi.d.ts +14 -1
- package/dist/src/TransactionApi.d.ts.map +1 -1
- package/dist/src/TransactionApi.js +5 -1
- package/dist/src/UtxoApi.d.ts +3 -3
- package/dist/src/UtxoApi.d.ts.map +1 -1
- package/dist/src/UtxoApi.js +10 -6
- package/dist/src/impl/BlockchairApi.d.ts +4 -3
- package/dist/src/impl/BlockchairApi.d.ts.map +1 -1
- package/dist/src/impl/BlockchairApi.js +15 -12
- package/dist/src/impl/BlockstreamApi.d.ts +5 -3
- package/dist/src/impl/BlockstreamApi.d.ts.map +1 -1
- package/dist/src/impl/BlockstreamApi.js +13 -5
- package/dist/src/index.js +6 -2
- package/package.json +5 -6
package/dist/src/AddressApi.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AddressApi.d.ts","sourceRoot":"","sources":["../../src/AddressApi.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"AddressApi.d.ts","sourceRoot":"","sources":["../../src/AddressApi.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,WAAW,GAAG;IACxB,mDAAmD;IACnD,OAAO,EAAE,MAAM,CAAC;IAChB,oDAAoD;IACpD,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,uCAAuC;IACvC,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;CACvD"}
|
package/dist/src/ApiBuilder.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.ApiNotImplementedError = void 0;
|
|
4
|
+
exports.supportsCoin = supportsCoin;
|
|
4
5
|
class ApiNotImplementedError extends Error {
|
|
5
6
|
constructor(coinName) {
|
|
6
7
|
super(`api not implemented for coin ${coinName}`);
|
|
@@ -19,5 +20,4 @@ function supportsCoin(builder, coinName) {
|
|
|
19
20
|
throw e;
|
|
20
21
|
}
|
|
21
22
|
}
|
|
22
|
-
|
|
23
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXBpQnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9BcGlCdWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUdBLE1BQWEsc0JBQXVCLFNBQVEsS0FBSztJQUMvQyxZQUFZLFFBQWdCO1FBQzFCLEtBQUssQ0FBQyxnQ0FBZ0MsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUNwRCxDQUFDO0NBQ0Y7QUFKRCx3REFJQztBQU9ELFNBQWdCLFlBQVksQ0FBQyxPQUE0QixFQUFFLFFBQWdCO0lBQ3pFLElBQUk7UUFDRixPQUFPLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQzFCLE9BQU8sSUFBSSxDQUFDO0tBQ2I7SUFBQyxPQUFPLENBQUMsRUFBRTtRQUNWLElBQUksQ0FBQyxZQUFZLHNCQUFzQixFQUFFO1lBQ3ZDLE9BQU8sS0FBSyxDQUFDO1NBQ2Q7UUFDRCxNQUFNLENBQUMsQ0FBQztLQUNUO0FBQ0gsQ0FBQztBQVZELG9DQVVDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVXR4b0FwaSB9IGZyb20gJy4vVXR4b0FwaSc7XG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnLi9CYXNlSHR0cENsaWVudCc7XG5cbmV4cG9ydCBjbGFzcyBBcGlOb3RJbXBsZW1lbnRlZEVycm9yIGV4dGVuZHMgRXJyb3Ige1xuICBjb25zdHJ1Y3Rvcihjb2luTmFtZTogc3RyaW5nKSB7XG4gICAgc3VwZXIoYGFwaSBub3QgaW1wbGVtZW50ZWQgZm9yIGNvaW4gJHtjb2luTmFtZX1gKTtcbiAgfVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFwaUJ1aWxkZXI8VD4ge1xuICBuYW1lOiBzdHJpbmc7XG4gIGZvckNvaW4oY29pbk5hbWU6IHN0cmluZywgcGFyYW1zPzogeyBodHRwQ2xpZW50PzogSHR0cENsaWVudCB9KTogVDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHN1cHBvcnRzQ29pbihidWlsZGVyOiBBcGlCdWlsZGVyPFV0eG9BcGk+LCBjb2luTmFtZTogc3RyaW5nKTogYm9vbGVhbiB7XG4gIHRyeSB7XG4gICAgYnVpbGRlci5mb3JDb2luKGNvaW5OYW1lKTtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfSBjYXRjaCAoZSkge1xuICAgIGlmIChlIGluc3RhbmNlb2YgQXBpTm90SW1wbGVtZW50ZWRFcnJvcikge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICB0aHJvdyBlO1xuICB9XG59XG4iXX0=
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXBpQnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9BcGlCdWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQWNBLG9DQVVDO0FBckJELE1BQWEsc0JBQXVCLFNBQVEsS0FBSztJQUMvQyxZQUFZLFFBQWdCO1FBQzFCLEtBQUssQ0FBQyxnQ0FBZ0MsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUNwRCxDQUFDO0NBQ0Y7QUFKRCx3REFJQztBQU9ELFNBQWdCLFlBQVksQ0FBQyxPQUE0QixFQUFFLFFBQWdCO0lBQ3pFLElBQUksQ0FBQztRQUNILE9BQU8sQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDMUIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztRQUNYLElBQUksQ0FBQyxZQUFZLHNCQUFzQixFQUFFLENBQUM7WUFDeEMsT0FBTyxLQUFLLENBQUM7UUFDZixDQUFDO1FBQ0QsTUFBTSxDQUFDLENBQUM7SUFDVixDQUFDO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFV0eG9BcGkgfSBmcm9tICcuL1V0eG9BcGknO1xuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJy4vQmFzZUh0dHBDbGllbnQnO1xuXG5leHBvcnQgY2xhc3MgQXBpTm90SW1wbGVtZW50ZWRFcnJvciBleHRlbmRzIEVycm9yIHtcbiAgY29uc3RydWN0b3IoY29pbk5hbWU6IHN0cmluZykge1xuICAgIHN1cGVyKGBhcGkgbm90IGltcGxlbWVudGVkIGZvciBjb2luICR7Y29pbk5hbWV9YCk7XG4gIH1cbn1cblxuZXhwb3J0IGludGVyZmFjZSBBcGlCdWlsZGVyPFQ+IHtcbiAgbmFtZTogc3RyaW5nO1xuICBmb3JDb2luKGNvaW5OYW1lOiBzdHJpbmcsIHBhcmFtcz86IHsgaHR0cENsaWVudD86IEh0dHBDbGllbnQgfSk6IFQ7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzdXBwb3J0c0NvaW4oYnVpbGRlcjogQXBpQnVpbGRlcjxVdHhvQXBpPiwgY29pbk5hbWU6IHN0cmluZyk6IGJvb2xlYW4ge1xuICB0cnkge1xuICAgIGJ1aWxkZXIuZm9yQ29pbihjb2luTmFtZSk7XG4gICAgcmV0dXJuIHRydWU7XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICBpZiAoZSBpbnN0YW5jZW9mIEFwaU5vdEltcGxlbWVudGVkRXJyb3IpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgdGhyb3cgZTtcbiAgfVxufVxuIl19
|
|
@@ -6,10 +6,10 @@ export declare class ApiRequestError extends Error {
|
|
|
6
6
|
static forRequest(req: superagent.Request, reason: Error | string): ApiRequestError;
|
|
7
7
|
static forResponse(res: superagent.Response, reason: Error | string): ApiRequestError;
|
|
8
8
|
}
|
|
9
|
-
export
|
|
9
|
+
export type RequestOptions = {
|
|
10
10
|
retry?: number;
|
|
11
11
|
};
|
|
12
|
-
export
|
|
12
|
+
export type Response<T> = {
|
|
13
13
|
map<V>(f: (body: T) => V): V;
|
|
14
14
|
};
|
|
15
15
|
export interface HttpClient {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseHttpClient.d.ts","sourceRoot":"","sources":["../../src/BaseHttpClient.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,UAAU,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"BaseHttpClient.d.ts","sourceRoot":"","sources":["../../src/BaseHttpClient.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,UAAU,MAAM,YAAY,CAAC;AAEzC,qBAAa,eAAgB,SAAQ,KAAK;IACrB,GAAG,EAAE,MAAM;IAAS,MAAM,EAAE,KAAK,GAAG,MAAM;gBAA1C,GAAG,EAAE,MAAM,EAAS,MAAM,EAAE,KAAK,GAAG,MAAM;IAI7D,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,GAAG,MAAM,GAAG,eAAe;IAInF,MAAM,CAAC,WAAW,CAAC,GAAG,EAAE,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,GAAG,MAAM,GAAG,eAAe;CAGtF;AAED,MAAM,MAAM,cAAc,GAAG;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,QAAQ,CAAC,CAAC,IAAI;IACxB,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;CAC9B,CAAC;AAEF,MAAM,WAAW,UAAU;IACzB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,UAAU,CAAC;IACzC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;CAC5C;AAED,wBAAsB,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC,CAOhG;AAED,qBAAa,cAAe,YAAW,UAAU;IAC5B,OAAO,CAAC,EAAE,MAAM;gBAAhB,OAAO,CAAC,EAAE,MAAM,YAAA;IAWnC,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,cAAc;IAItC,OAAO,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,GAAG,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,GAAG,SAAS,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IA0CxG,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;CAGjD"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.BaseHttpClient = exports.
|
|
3
|
+
exports.BaseHttpClient = exports.ApiRequestError = void 0;
|
|
4
|
+
exports.mapSeries = mapSeries;
|
|
4
5
|
const superagent = require("superagent");
|
|
5
|
-
const Bluebird = require("bluebird");
|
|
6
6
|
class ApiRequestError extends Error {
|
|
7
7
|
constructor(url, reason) {
|
|
8
8
|
super(`error in API request: ${url}: ${reason}`);
|
|
@@ -17,10 +17,13 @@ class ApiRequestError extends Error {
|
|
|
17
17
|
}
|
|
18
18
|
}
|
|
19
19
|
exports.ApiRequestError = ApiRequestError;
|
|
20
|
-
function mapSeries(arr, f) {
|
|
21
|
-
|
|
20
|
+
async function mapSeries(arr, f) {
|
|
21
|
+
const results = [];
|
|
22
|
+
for (const [index, value] of arr.entries()) {
|
|
23
|
+
results.push(await f(value, index));
|
|
24
|
+
}
|
|
25
|
+
return results;
|
|
22
26
|
}
|
|
23
|
-
exports.mapSeries = mapSeries;
|
|
24
27
|
class BaseHttpClient {
|
|
25
28
|
constructor(baseUrl) {
|
|
26
29
|
this.baseUrl = baseUrl;
|
|
@@ -82,4 +85,4 @@ class BaseHttpClient {
|
|
|
82
85
|
}
|
|
83
86
|
}
|
|
84
87
|
exports.BaseHttpClient = BaseHttpClient;
|
|
85
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
88
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQmFzZUh0dHBDbGllbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvQmFzZUh0dHBDbGllbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBNkJBLDhCQU9DO0FBcENELHlDQUF5QztBQUV6QyxNQUFhLGVBQWdCLFNBQVEsS0FBSztJQUN4QyxZQUFtQixHQUFXLEVBQVMsTUFBc0I7UUFDM0QsS0FBSyxDQUFDLHlCQUF5QixHQUFHLEtBQUssTUFBTSxFQUFFLENBQUMsQ0FBQztRQURoQyxRQUFHLEdBQUgsR0FBRyxDQUFRO1FBQVMsV0FBTSxHQUFOLE1BQU0sQ0FBZ0I7SUFFN0QsQ0FBQztJQUVELE1BQU0sQ0FBQyxVQUFVLENBQUMsR0FBdUIsRUFBRSxNQUFzQjtRQUMvRCxPQUFPLElBQUksZUFBZSxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUNyRCxDQUFDO0lBRUQsTUFBTSxDQUFDLFdBQVcsQ0FBQyxHQUF3QixFQUFFLE1BQXNCO1FBQ2pFLE9BQU8sSUFBSSxlQUFlLENBQUMsR0FBRyxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQztJQUNqRCxDQUFDO0NBQ0Y7QUFaRCwwQ0FZQztBQWVNLEtBQUssVUFBVSxTQUFTLENBQU8sR0FBUSxFQUFFLENBQWtDO0lBQ2hGLE1BQU0sT0FBTyxHQUFRLEVBQUUsQ0FBQztJQUV4QixLQUFLLE1BQU0sQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLElBQUksR0FBRyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUM7UUFDM0MsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBQ0QsT0FBTyxPQUFPLENBQUM7QUFDakIsQ0FBQztBQUVELE1BQWEsY0FBYztJQUN6QixZQUFtQixPQUFnQjtRQUFoQixZQUFPLEdBQVAsT0FBTyxDQUFTO1FBQ2pDLElBQUksT0FBTyxFQUFFLENBQUM7WUFDWixJQUFJLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDO2dCQUNwQyxNQUFNLElBQUksS0FBSyxDQUFDLGtDQUFrQyxDQUFDLENBQUM7WUFDdEQsQ0FBQztZQUNELElBQUksT0FBTyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO2dCQUMxQixNQUFNLElBQUksS0FBSyxDQUFDLHFDQUFxQyxDQUFDLENBQUM7WUFDekQsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQWU7UUFDekIsT0FBTyxJQUFJLGNBQWMsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBRUQsS0FBSyxDQUFDLE9BQU8sQ0FBSSxNQUFzQixFQUFFLElBQVksRUFBRSxXQUFnQztRQUNyRixJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO1lBQzNCLE1BQU0sSUFBSSxLQUFLLENBQUMsb0NBQW9DLENBQUMsQ0FBQztRQUN4RCxDQUFDO1FBQ0QsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNsQixNQUFNLElBQUksS0FBSyxDQUFDLGdCQUFnQixDQUFDLENBQUM7UUFDcEMsQ0FBQztRQUNELE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO1FBQ2hDLElBQUksUUFBNkIsQ0FBQztRQUNsQyxJQUFJLENBQUM7WUFDSCxRQUFRLEdBQUcsTUFBTSxVQUFVLENBQUMsTUFBTSxFQUFFLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFzQyxDQUFDLENBQUM7UUFDeEYsQ0FBQztRQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7WUFDWCxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ2pCLE1BQU0sSUFBSSxlQUFlLENBQUMsR0FBRyxFQUFFLENBQVUsQ0FBQyxDQUFDO1FBQzdDLENBQUM7UUFDRCxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQ2pCLE1BQU0sSUFBSSxlQUFlLENBQUMsR0FBRyxFQUFFLGVBQWUsUUFBUSxDQUFDLFVBQVUsRUFBRSxDQUFDLENBQUM7UUFDdkUsQ0FBQztRQUVELElBQUksSUFBTyxDQUFDO1FBQ1osUUFBUSxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7WUFDdEIsS0FBSyxrQkFBa0I7Z0JBQ3JCLElBQUksR0FBRyxRQUFRLENBQUMsSUFBSSxDQUFDO2dCQUNyQixNQUFNO1lBQ1IsS0FBSyxZQUFZO2dCQUNmLElBQUksR0FBRyxRQUFRLENBQUMsSUFBb0IsQ0FBQztnQkFDckMsTUFBTTtZQUNSO2dCQUNFLE1BQU0sSUFBSSxlQUFlLENBQUMsR0FBRyxFQUFFLG9DQUFvQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUN4RixDQUFDO1FBRUQsT0FBTztZQUNMLEdBQUcsQ0FBSSxDQUFpQjtnQkFDdEIsSUFBSSxDQUFDO29CQUNILE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUNqQixDQUFDO2dCQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7b0JBQ1gsTUFBTSxJQUFJLGVBQWUsQ0FBQyxHQUFHLEVBQUUsQ0FBVSxDQUFDLENBQUM7Z0JBQzdDLENBQUM7WUFDSCxDQUFDO1NBQ0YsQ0FBQztJQUNKLENBQUM7SUFFRCxLQUFLLENBQUMsR0FBRyxDQUFJLElBQVk7UUFDdkIsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxJQUFJLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFDOUMsQ0FBQztDQUNGO0FBN0RELHdDQTZEQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIHN1cGVyYWdlbnQgZnJvbSAnc3VwZXJhZ2VudCc7XG5cbmV4cG9ydCBjbGFzcyBBcGlSZXF1ZXN0RXJyb3IgZXh0ZW5kcyBFcnJvciB7XG4gIGNvbnN0cnVjdG9yKHB1YmxpYyB1cmw6IHN0cmluZywgcHVibGljIHJlYXNvbjogRXJyb3IgfCBzdHJpbmcpIHtcbiAgICBzdXBlcihgZXJyb3IgaW4gQVBJIHJlcXVlc3Q6ICR7dXJsfTogJHtyZWFzb259YCk7XG4gIH1cblxuICBzdGF0aWMgZm9yUmVxdWVzdChyZXE6IHN1cGVyYWdlbnQuUmVxdWVzdCwgcmVhc29uOiBFcnJvciB8IHN0cmluZyk6IEFwaVJlcXVlc3RFcnJvciB7XG4gICAgcmV0dXJuIG5ldyBBcGlSZXF1ZXN0RXJyb3IocmVxLnRvU3RyaW5nKCksIHJlYXNvbik7XG4gIH1cblxuICBzdGF0aWMgZm9yUmVzcG9uc2UocmVzOiBzdXBlcmFnZW50LlJlc3BvbnNlLCByZWFzb246IEVycm9yIHwgc3RyaW5nKTogQXBpUmVxdWVzdEVycm9yIHtcbiAgICByZXR1cm4gbmV3IEFwaVJlcXVlc3RFcnJvcihyZXMuaGVhZGVyLCByZWFzb24pO1xuICB9XG59XG5cbmV4cG9ydCB0eXBlIFJlcXVlc3RPcHRpb25zID0ge1xuICByZXRyeT86IG51bWJlcjtcbn07XG5cbmV4cG9ydCB0eXBlIFJlc3BvbnNlPFQ+ID0ge1xuICBtYXA8Vj4oZjogKGJvZHk6IFQpID0+IFYpOiBWO1xufTtcblxuZXhwb3J0IGludGVyZmFjZSBIdHRwQ2xpZW50IHtcbiAgd2l0aEJhc2VVcmwoYmFzZVVybDogc3RyaW5nKTogSHR0cENsaWVudDtcbiAgZ2V0PFQ+KHBhdGg6IHN0cmluZyk6IFByb21pc2U8UmVzcG9uc2U8VD4+O1xufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gbWFwU2VyaWVzPFQsIFU+KGFycjogVFtdLCBmOiAodjogVCwgaTogbnVtYmVyKSA9PiBQcm9taXNlPFU+KTogUHJvbWlzZTxVW10+IHtcbiAgY29uc3QgcmVzdWx0czogVVtdID0gW107XG5cbiAgZm9yIChjb25zdCBbaW5kZXgsIHZhbHVlXSBvZiBhcnIuZW50cmllcygpKSB7XG4gICAgcmVzdWx0cy5wdXNoKGF3YWl0IGYodmFsdWUsIGluZGV4KSk7XG4gIH1cbiAgcmV0dXJuIHJlc3VsdHM7XG59XG5cbmV4cG9ydCBjbGFzcyBCYXNlSHR0cENsaWVudCBpbXBsZW1lbnRzIEh0dHBDbGllbnQge1xuICBjb25zdHJ1Y3RvcihwdWJsaWMgYmFzZVVybD86IHN0cmluZykge1xuICAgIGlmIChiYXNlVXJsKSB7XG4gICAgICBpZiAoIWJhc2VVcmwuc3RhcnRzV2l0aCgnaHR0cHM6Ly8nKSkge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoYGJhc2VVcmwgbXVzdCBzdGFydCB3aXRoIGh0dHBzOi8vYCk7XG4gICAgICB9XG4gICAgICBpZiAoYmFzZVVybC5lbmRzV2l0aChgL2ApKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihgYmFzZVVybCBtdXN0IG5vdCBlbmQgd2l0aCBzbGFzaCAoLylgKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICB3aXRoQmFzZVVybChiYXNlVXJsOiBzdHJpbmcpOiBCYXNlSHR0cENsaWVudCB7XG4gICAgcmV0dXJuIG5ldyBCYXNlSHR0cENsaWVudChiYXNlVXJsKTtcbiAgfVxuXG4gIGFzeW5jIHJlcXVlc3Q8VD4obWV0aG9kOiAnZ2V0JyB8ICdwb3N0JywgcGF0aDogc3RyaW5nLCByZXF1ZXN0Qm9keTogdW5rbm93biB8IHVuZGVmaW5lZCk6IFByb21pc2U8UmVzcG9uc2U8VD4+IHtcbiAgICBpZiAoIXBhdGguc3RhcnRzV2l0aChwYXRoKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGBwYXRoIG11c3Qgc3RhcnQgd2l0aCAnLycgY2hhcmFjdGVyYCk7XG4gICAgfVxuICAgIGlmICghdGhpcy5iYXNlVXJsKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYG5vIGJhc2VVcmwgc2V0YCk7XG4gICAgfVxuICAgIGNvbnN0IHVybCA9IHRoaXMuYmFzZVVybCArIHBhdGg7XG4gICAgbGV0IHJlc3BvbnNlOiBzdXBlcmFnZW50LlJlc3BvbnNlO1xuICAgIHRyeSB7XG4gICAgICByZXNwb25zZSA9IGF3YWl0IHN1cGVyYWdlbnQobWV0aG9kLCB1cmwpLnNlbmQocmVxdWVzdEJvZHkgYXMgUmVjb3JkPHN0cmluZywgdW5rbm93bj4pO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoZSk7XG4gICAgICB0aHJvdyBuZXcgQXBpUmVxdWVzdEVycm9yKHVybCwgZSBhcyBFcnJvcik7XG4gICAgfVxuICAgIGlmICghcmVzcG9uc2Uub2spIHtcbiAgICAgIHRocm93IG5ldyBBcGlSZXF1ZXN0RXJyb3IodXJsLCBgc3RhdHVzIGNvZGUgJHtyZXNwb25zZS5zdGF0dXNDb2RlfWApO1xuICAgIH1cblxuICAgIGxldCBib2R5OiBUO1xuICAgIHN3aXRjaCAocmVzcG9uc2UudHlwZSkge1xuICAgICAgY2FzZSAnYXBwbGljYXRpb24vanNvbic6XG4gICAgICAgIGJvZHkgPSByZXNwb25zZS5ib2R5O1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ3RleHQvcGxhaW4nOlxuICAgICAgICBib2R5ID0gcmVzcG9uc2UudGV4dCBhcyB1bmtub3duIGFzIFQ7XG4gICAgICAgIGJyZWFrO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgdGhyb3cgbmV3IEFwaVJlcXVlc3RFcnJvcih1cmwsIGB1bmV4cGVjdGVkIHJlc3BvbnNlIGNvbnRlbnQtdHlwZSAke3Jlc3BvbnNlLnR5cGV9YCk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHtcbiAgICAgIG1hcDxWPihmOiAoYm9keTogVCkgPT4gVik6IFYge1xuICAgICAgICB0cnkge1xuICAgICAgICAgIHJldHVybiBmKGJvZHkpO1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgdGhyb3cgbmV3IEFwaVJlcXVlc3RFcnJvcih1cmwsIGUgYXMgRXJyb3IpO1xuICAgICAgICB9XG4gICAgICB9LFxuICAgIH07XG4gIH1cblxuICBhc3luYyBnZXQ8VD4ocGF0aDogc3RyaW5nKTogUHJvbWlzZTxSZXNwb25zZTxUPj4ge1xuICAgIHJldHVybiB0aGlzLnJlcXVlc3QoJ2dldCcsIHBhdGgsIHVuZGVmaW5lZCk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -62,4 +62,4 @@ class CachingHttpClient {
|
|
|
62
62
|
}
|
|
63
63
|
}
|
|
64
64
|
exports.CachingHttpClient = CachingHttpClient;
|
|
65
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
65
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2FjaGluZ0h0dHBDbGllbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvQ2FjaGluZ0h0dHBDbGllbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsNkJBQTBCO0FBQzFCLDZCQUE2QjtBQUM3QixpQ0FBaUM7QUFDakMsMkJBQW9DO0FBRXBDLHFEQUF3RTtBQUV4RSxTQUFTLGNBQWMsQ0FBQyxHQUFXO0lBQ2pDLE1BQU0sR0FBRyxHQUFHLElBQUksU0FBRyxDQUFDLEdBQUcsRUFBRSxrQkFBa0IsQ0FBQyxDQUFDO0lBQzdDLEdBQUcsQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQy9CLE9BQU8sR0FBRyxDQUFDLFFBQVEsR0FBRyxHQUFHLENBQUMsWUFBWSxDQUFDO0FBQ3pDLENBQUM7QUFFRCxNQUFhLGlCQUFpQjtJQUk1QixZQUFvQixRQUFnQixFQUFFLEVBQUUsTUFBTSxHQUFHLElBQUksK0JBQWMsRUFBRSxFQUFFLGFBQWEsR0FBRyxJQUFJLEVBQUUsR0FBRyxFQUFFO1FBQTlFLGFBQVEsR0FBUixRQUFRLENBQVE7UUFDbEMsSUFBSSxDQUFDLE1BQU0sR0FBRyxNQUFNLENBQUM7UUFDckIsSUFBSSxDQUFDLGFBQWEsR0FBRyxhQUFhLENBQUM7SUFDckMsQ0FBQztJQUVELFNBQVMsQ0FBQyxDQUFTO1FBQ2pCLENBQUMsR0FBRyxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLGFBQWEsRUFBRSxHQUFHLENBQUMsQ0FBQztRQUNsRCxNQUFNLElBQUksR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUN4RixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxHQUFHLENBQUMsSUFBSSxJQUFJLE9BQU8sQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFFRCxLQUFLLENBQUMsU0FBUyxDQUFJLElBQVk7UUFDN0IsSUFBSSxJQUFZLENBQUM7UUFDakIsSUFBSSxDQUFDO1lBQ0gsSUFBSSxHQUFHLE1BQU0sYUFBRSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ3pELENBQUM7UUFBQyxPQUFPLENBQUMsRUFBRSxDQUFDO1lBQ1gsSUFBSyxDQUFTLENBQUMsSUFBSSxLQUFLLFFBQVEsRUFBRSxDQUFDO2dCQUNqQyxPQUFPO1lBQ1QsQ0FBQztZQUNELE1BQU0sQ0FBQyxDQUFDO1FBQ1YsQ0FBQztRQUVELE9BQU87WUFDTCxHQUFHLENBQUksQ0FBaUI7Z0JBQ3RCLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztZQUM3QixDQUFDO1NBQ0YsQ0FBQztJQUNKLENBQUM7SUFFRCxLQUFLLENBQUMsVUFBVSxDQUFJLElBQVksRUFBRSxJQUFPO1FBQ3ZDLE1BQU0sYUFBRSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsRUFBRSxNQUFNLENBQUMsQ0FBQztJQUNsRixDQUFDO0lBRUQsS0FBSyxDQUFDLEdBQUcsQ0FBSSxJQUFZO1FBQ3ZCLE1BQU0sTUFBTSxHQUFHLE1BQU0sSUFBSSxDQUFDLFNBQVMsQ0FBSSxJQUFJLENBQUMsQ0FBQztRQUM3QyxJQUFJLE1BQU0sRUFBRSxDQUFDO1lBQ1gsT0FBTyxNQUFNLENBQUM7UUFDaEIsQ0FBQztRQUNELElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDeEIsTUFBTSxJQUFJLEtBQUssQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1FBQ3pDLENBQUM7UUFDRCxNQUFNLElBQUksR0FBRyxNQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFJLElBQUksQ0FBQyxDQUFDO1FBQzVDLE1BQU0sSUFBSSxDQUFDLFVBQVUsQ0FDbkIsSUFBSSxFQUNKLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUNuQixDQUFDO1FBQ0YsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQWU7UUFDekIsT0FBTyxJQUFJLGlCQUFpQixDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDMUMsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQztZQUN4QyxhQUFhLEVBQUUsSUFBSSxDQUFDLGFBQWE7U0FDbEMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGO0FBM0RELDhDQTJEQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFVSTCB9IGZyb20gJ3VybCc7XG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gJ3BhdGgnO1xuaW1wb3J0ICogYXMgY3J5cHRvIGZyb20gJ2NyeXB0byc7XG5pbXBvcnQgeyBwcm9taXNlcyBhcyBmcyB9IGZyb20gJ2ZzJztcblxuaW1wb3J0IHsgQmFzZUh0dHBDbGllbnQsIEh0dHBDbGllbnQsIFJlc3BvbnNlIH0gZnJvbSAnLi9CYXNlSHR0cENsaWVudCc7XG5cbmZ1bmN0aW9uIHN0cmlwQXBpVG9rZW5zKHVyaTogc3RyaW5nKTogc3RyaW5nIHtcbiAgY29uc3QgdXJsID0gbmV3IFVSTCh1cmksICdodHRwOi8vbG9jYWxob3N0Jyk7XG4gIHVybC5zZWFyY2hQYXJhbXMuZGVsZXRlKCdrZXknKTtcbiAgcmV0dXJuIHVybC5wYXRobmFtZSArIHVybC5zZWFyY2hQYXJhbXM7XG59XG5cbmV4cG9ydCBjbGFzcyBDYWNoaW5nSHR0cENsaWVudCBpbXBsZW1lbnRzIEh0dHBDbGllbnQge1xuICBjbGllbnQ6IEJhc2VIdHRwQ2xpZW50O1xuICBpc0h0dHBFbmFibGVkOiBib29sZWFuO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY2FjaGVEaXI6IHN0cmluZywgeyBjbGllbnQgPSBuZXcgQmFzZUh0dHBDbGllbnQoKSwgaXNIdHRwRW5hYmxlZCA9IHRydWUgfSA9IHt9KSB7XG4gICAgdGhpcy5jbGllbnQgPSBjbGllbnQ7XG4gICAgdGhpcy5pc0h0dHBFbmFibGVkID0gaXNIdHRwRW5hYmxlZDtcbiAgfVxuXG4gIGNhY2hlUGF0aChwOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHAgPSBzdHJpcEFwaVRva2VucyhwKS5yZXBsYWNlKC9bXmEtejAtOV0vZ2ksICdfJyk7XG4gICAgY29uc3QgaGFzaCA9IGNyeXB0by5jcmVhdGVIYXNoKCdzaGEyNTYnKS51cGRhdGUocCkuZGlnZXN0KCkudG9TdHJpbmcoJ2hleCcpLnNsaWNlKDAsIDgpO1xuICAgIHJldHVybiBwYXRoLmpvaW4odGhpcy5jYWNoZURpciwgYCR7cH0uJHtoYXNofS5qc29uYCk7XG4gIH1cblxuICBhc3luYyByZWFkQ2FjaGU8VD4ocGF0aDogc3RyaW5nKTogUHJvbWlzZTxSZXNwb25zZTxUPiB8IHVuZGVmaW5lZD4ge1xuICAgIGxldCBkYXRhOiBzdHJpbmc7XG4gICAgdHJ5IHtcbiAgICAgIGRhdGEgPSBhd2FpdCBmcy5yZWFkRmlsZSh0aGlzLmNhY2hlUGF0aChwYXRoKSwgJ3V0ZjgnKTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICBpZiAoKGUgYXMgYW55KS5jb2RlID09PSAnRU5PRU5UJykge1xuICAgICAgICByZXR1cm47XG4gICAgICB9XG4gICAgICB0aHJvdyBlO1xuICAgIH1cblxuICAgIHJldHVybiB7XG4gICAgICBtYXA8Vj4oZjogKGJvZHk6IFQpID0+IFYpIHtcbiAgICAgICAgcmV0dXJuIGYoSlNPTi5wYXJzZShkYXRhKSk7XG4gICAgICB9LFxuICAgIH07XG4gIH1cblxuICBhc3luYyB3cml0ZUNhY2hlPFQ+KHBhdGg6IHN0cmluZywgZGF0YTogVCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGF3YWl0IGZzLndyaXRlRmlsZSh0aGlzLmNhY2hlUGF0aChwYXRoKSwgSlNPTi5zdHJpbmdpZnkoZGF0YSwgbnVsbCwgMiksICd1dGY4Jyk7XG4gIH1cblxuICBhc3luYyBnZXQ8VD4ocGF0aDogc3RyaW5nKTogUHJvbWlzZTxSZXNwb25zZTxUPj4ge1xuICAgIGNvbnN0IGNhY2hlZCA9IGF3YWl0IHRoaXMucmVhZENhY2hlPFQ+KHBhdGgpO1xuICAgIGlmIChjYWNoZWQpIHtcbiAgICAgIHJldHVybiBjYWNoZWQ7XG4gICAgfVxuICAgIGlmICghdGhpcy5pc0h0dHBFbmFibGVkKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYG5ldHdvcmtpbmcgZGlzYWJsZWRgKTtcbiAgICB9XG4gICAgY29uc3QgcmVzcCA9IGF3YWl0IHRoaXMuY2xpZW50LmdldDxUPihwYXRoKTtcbiAgICBhd2FpdCB0aGlzLndyaXRlQ2FjaGUoXG4gICAgICBwYXRoLFxuICAgICAgcmVzcC5tYXAoKHYpID0+IHYpXG4gICAgKTtcbiAgICByZXR1cm4gcmVzcDtcbiAgfVxuXG4gIHdpdGhCYXNlVXJsKGJhc2VVcmw6IHN0cmluZyk6IEh0dHBDbGllbnQge1xuICAgIHJldHVybiBuZXcgQ2FjaGluZ0h0dHBDbGllbnQodGhpcy5jYWNoZURpciwge1xuICAgICAgY2xpZW50OiB0aGlzLmNsaWVudC53aXRoQmFzZVVybChiYXNlVXJsKSxcbiAgICAgIGlzSHR0cEVuYWJsZWQ6IHRoaXMuaXNIdHRwRW5hYmxlZCxcbiAgICB9KTtcbiAgfVxufVxuIl19
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export
|
|
1
|
+
export type TransactionStatus = {
|
|
2
2
|
found: false;
|
|
3
3
|
} | {
|
|
4
4
|
found: true;
|
|
@@ -25,4 +25,17 @@ export interface TransactionApi {
|
|
|
25
25
|
*/
|
|
26
26
|
getTransactionStatus(txid: string): Promise<TransactionStatus>;
|
|
27
27
|
}
|
|
28
|
+
export interface BlockApi {
|
|
29
|
+
/**
|
|
30
|
+
* @param height
|
|
31
|
+
* @return block hash at height
|
|
32
|
+
*/
|
|
33
|
+
getBlockIdAtHeight(height: number): Promise<string>;
|
|
34
|
+
/**
|
|
35
|
+
* @param hash
|
|
36
|
+
* @return transaction ids in block at height
|
|
37
|
+
*/
|
|
38
|
+
getTransactionIds(hash: string): Promise<string[]>;
|
|
39
|
+
}
|
|
40
|
+
export declare function getTransactionIdsAtHeight(api: BlockApi, height: number): Promise<string[]>;
|
|
28
41
|
//# sourceMappingURL=TransactionApi.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TransactionApi.d.ts","sourceRoot":"","sources":["../../src/TransactionApi.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"TransactionApi.d.ts","sourceRoot":"","sources":["../../src/TransactionApi.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,iBAAiB,GACzB;IAEE,KAAK,EAAE,KAAK,CAAC;CACd,GACD;IAEE,KAAK,EAAE,IAAI,CAAC;IACZ,SAAS,EAAE,KAAK,CAAC;CAClB,GACD;IAEE,KAAK,EAAE,IAAI,CAAC;IACZ,SAAS,EAAE,IAAI,CAAC;IAChB,2DAA2D;IAC3D,WAAW,EAAE,MAAM,CAAC;IACpB,iCAAiC;IACjC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,qDAAqD;IACrD,IAAI,CAAC,EAAE,IAAI,CAAC;CACb,CAAC;AAEN,MAAM,WAAW,cAAc;IAC7B;;;OAGG;IACH,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAEjD;;;OAGG;IACH,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;CAChE;AAED,MAAM,WAAW,QAAQ;IACvB;;;OAGG;IACH,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAEpD;;;OAGG;IACH,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;CACpD;AAED,wBAAsB,yBAAyB,CAAC,GAAG,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAEhG"}
|
|
@@ -1,3 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
|
|
3
|
+
exports.getTransactionIdsAtHeight = getTransactionIdsAtHeight;
|
|
4
|
+
async function getTransactionIdsAtHeight(api, height) {
|
|
5
|
+
return api.getTransactionIds(await api.getBlockIdAtHeight(height));
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVHJhbnNhY3Rpb25BcGkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvVHJhbnNhY3Rpb25BcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFrREEsOERBRUM7QUFGTSxLQUFLLFVBQVUseUJBQXlCLENBQUMsR0FBYSxFQUFFLE1BQWM7SUFDM0UsT0FBTyxHQUFHLENBQUMsaUJBQWlCLENBQUMsTUFBTSxHQUFHLENBQUMsa0JBQWtCLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztBQUNyRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHR5cGUgVHJhbnNhY3Rpb25TdGF0dXMgPVxuICB8IHtcbiAgICAgIC8vIG5vdCBpbiBtZW1wb29sLCBub3QgY29uZmlybWVkXG4gICAgICBmb3VuZDogZmFsc2U7XG4gICAgfVxuICB8IHtcbiAgICAgIC8vIGZvdW5kIGJ1dCBub3QgY29uZmlybWVkXG4gICAgICBmb3VuZDogdHJ1ZTtcbiAgICAgIGNvbmZpcm1lZDogZmFsc2U7XG4gICAgfVxuICB8IHtcbiAgICAgIC8vIGZvdW5kIGFuZCBjb25maXJtZWRcbiAgICAgIGZvdW5kOiB0cnVlO1xuICAgICAgY29uZmlybWVkOiB0cnVlO1xuICAgICAgLyoqIEJsb2NrIGhlaWdodC4gVW5kZWZpbmVkIGZvciB1bmNvbmZpcm1lZCB0cmFuc2FjdGlvbnMgKi9cbiAgICAgIGJsb2NrSGVpZ2h0OiBudW1iZXI7XG4gICAgICAvKiogTm90IGF2YWlsYWJsZSBmb3IgYWxsIEFQSXMgKi9cbiAgICAgIGJsb2NrSGFzaD86IHN0cmluZztcbiAgICAgIC8qKiBDb25maXJtYXRpb24gZGF0ZS4gTm90IGF2YWlsYWJsZSBmb3IgYWxsIEFQSXMuICovXG4gICAgICBkYXRlPzogRGF0ZTtcbiAgICB9O1xuXG5leHBvcnQgaW50ZXJmYWNlIFRyYW5zYWN0aW9uQXBpIHtcbiAgLyoqXG4gICAqIEBwYXJhbSB0eGlkXG4gICAqIEByZXR1cm4gdHJhbnNhY3Rpb24gaGV4IHN0cmluZ1xuICAgKi9cbiAgZ2V0VHJhbnNhY3Rpb25IZXgodHhpZDogc3RyaW5nKTogUHJvbWlzZTxzdHJpbmc+O1xuXG4gIC8qKlxuICAgKiBAcGFyYW0gdHhpZFxuICAgKiBAcmV0dXJuIEJsb2NrSW5mbyBpZiBmb3VuZCwgdW5kZWZpbmVkIG90aGVyd2lzZVxuICAgKi9cbiAgZ2V0VHJhbnNhY3Rpb25TdGF0dXModHhpZDogc3RyaW5nKTogUHJvbWlzZTxUcmFuc2FjdGlvblN0YXR1cz47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQmxvY2tBcGkge1xuICAvKipcbiAgICogQHBhcmFtIGhlaWdodFxuICAgKiBAcmV0dXJuIGJsb2NrIGhhc2ggYXQgaGVpZ2h0XG4gICAqL1xuICBnZXRCbG9ja0lkQXRIZWlnaHQoaGVpZ2h0OiBudW1iZXIpOiBQcm9taXNlPHN0cmluZz47XG5cbiAgLyoqXG4gICAqIEBwYXJhbSBoYXNoXG4gICAqIEByZXR1cm4gdHJhbnNhY3Rpb24gaWRzIGluIGJsb2NrIGF0IGhlaWdodFxuICAgKi9cbiAgZ2V0VHJhbnNhY3Rpb25JZHMoaGFzaDogc3RyaW5nKTogUHJvbWlzZTxzdHJpbmdbXT47XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBnZXRUcmFuc2FjdGlvbklkc0F0SGVpZ2h0KGFwaTogQmxvY2tBcGksIGhlaWdodDogbnVtYmVyKTogUHJvbWlzZTxzdHJpbmdbXT4ge1xuICByZXR1cm4gYXBpLmdldFRyYW5zYWN0aW9uSWRzKGF3YWl0IGFwaS5nZXRCbG9ja0lkQXRIZWlnaHQoaGVpZ2h0KSk7XG59XG4iXX0=
|
package/dist/src/UtxoApi.d.ts
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import * as utxolib from '@bitgo-beta/utxo-lib';
|
|
2
2
|
import { TransactionApi } from './TransactionApi';
|
|
3
|
-
export
|
|
3
|
+
export type OutputSpend = {
|
|
4
4
|
txid: string;
|
|
5
5
|
vin: number;
|
|
6
6
|
} | {
|
|
7
7
|
txid: undefined;
|
|
8
8
|
vin: undefined;
|
|
9
9
|
};
|
|
10
|
-
export
|
|
10
|
+
export type TransactionIO = {
|
|
11
11
|
inputs: {
|
|
12
12
|
address: string;
|
|
13
13
|
}[];
|
|
@@ -45,7 +45,7 @@ export interface UtxoApi extends TransactionApi {
|
|
|
45
45
|
* @param api
|
|
46
46
|
* @param network
|
|
47
47
|
*/
|
|
48
|
-
export declare function fetchInputs(ins: utxolib.TxInput[], api: UtxoApi, network: utxolib.Network): Promise<utxolib.TxOutput[]>;
|
|
48
|
+
export declare function fetchInputs(ins: utxolib.TxInput[] | utxolib.bitgo.TxOutPoint[], api: UtxoApi, network: utxolib.Network): Promise<utxolib.TxOutput[]>;
|
|
49
49
|
/**
|
|
50
50
|
* Fetch transaction spend status outpoints.
|
|
51
51
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UtxoApi.d.ts","sourceRoot":"","sources":["../../src/UtxoApi.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,sBAAsB,CAAC;AAEhD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,
|
|
1
|
+
{"version":3,"file":"UtxoApi.d.ts","sourceRoot":"","sources":["../../src/UtxoApi.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,sBAAsB,CAAC;AAEhD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,MAAM,MAAM,WAAW,GACnB;IACE,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;CACb,GACD;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,GAAG,EAAE,SAAS,CAAA;CAAE,CAAC;AAExC,MAAM,MAAM,aAAa,GAAG;IAC1B,MAAM,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAC9B,OAAO,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CAChC,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,OAAQ,SAAQ,cAAc;IAC7C;;;OAGG;IACH,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;IAErE;;;OAGG;IACH,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;IAEvD;;OAEG;IACH,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;IAE3D;;;OAGG;IACH,uBAAuB,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;CAC9E;AA4BD;;;;;GAKG;AACH,wBAAsB,WAAW,CAC/B,GAAG,EAAE,OAAO,CAAC,OAAO,EAAE,GAAG,OAAO,CAAC,KAAK,CAAC,UAAU,EAAE,EACnD,GAAG,EAAE,OAAO,EACZ,OAAO,EAAE,OAAO,CAAC,OAAO,GACvB,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAU7B;AAED;;GAEG;AACH,wBAAsB,sBAAsB,CAC1C,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,UAAU,EAAE,EACrC,GAAG,EAAE,OAAO,GACX,OAAO,CAAC,WAAW,EAAE,CAAC,CAExB"}
|
package/dist/src/UtxoApi.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.fetchInputs = fetchInputs;
|
|
4
|
+
exports.fetchTransactionSpends = fetchTransactionSpends;
|
|
4
5
|
const utxolib = require("@bitgo-beta/utxo-lib");
|
|
5
6
|
const BaseHttpClient_1 = require("./BaseHttpClient");
|
|
6
7
|
/**
|
|
@@ -13,7 +14,7 @@ const BaseHttpClient_1 = require("./BaseHttpClient");
|
|
|
13
14
|
*/
|
|
14
15
|
async function mapInputs(outpoints, f) {
|
|
15
16
|
const txids = [...new Set(outpoints.map((i) => i.txid))];
|
|
16
|
-
const txMap = new Map(await BaseHttpClient_1.mapSeries(txids, async (txid) => [txid, await f(txid)]));
|
|
17
|
+
const txMap = new Map(await (0, BaseHttpClient_1.mapSeries)(txids, async (txid) => [txid, await f(txid)]));
|
|
17
18
|
return outpoints.map((i) => {
|
|
18
19
|
const arr = txMap.get(i.txid);
|
|
19
20
|
if (arr) {
|
|
@@ -32,14 +33,17 @@ async function mapInputs(outpoints, f) {
|
|
|
32
33
|
* @param network
|
|
33
34
|
*/
|
|
34
35
|
async function fetchInputs(ins, api, network) {
|
|
35
|
-
return mapInputs(ins.map((
|
|
36
|
+
return mapInputs(ins.map((i) => {
|
|
37
|
+
if ('txid' in i) {
|
|
38
|
+
return i;
|
|
39
|
+
}
|
|
40
|
+
return utxolib.bitgo.getOutputIdForInput(i);
|
|
41
|
+
}), async (txid) => utxolib.bitgo.createTransactionFromHex(await api.getTransactionHex(txid), network).outs);
|
|
36
42
|
}
|
|
37
|
-
exports.fetchInputs = fetchInputs;
|
|
38
43
|
/**
|
|
39
44
|
* Fetch transaction spend status outpoints.
|
|
40
45
|
*/
|
|
41
46
|
async function fetchTransactionSpends(outpoints, api) {
|
|
42
47
|
return mapInputs(outpoints, async (txid) => await api.getTransactionSpends(txid));
|
|
43
48
|
}
|
|
44
|
-
|
|
45
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVXR4b0FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9VdHhvQXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLGdEQUFnRDtBQUNoRCxxREFBNkM7QUEyQzdDOzs7Ozs7O0dBT0c7QUFDSCxLQUFLLFVBQVUsU0FBUyxDQUN0QixTQUFxQyxFQUNyQyxDQUFvQztJQUVwQyxNQUFNLEtBQUssR0FBRyxDQUFDLEdBQUcsSUFBSSxHQUFHLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUN6RCxNQUFNLEtBQUssR0FBRyxJQUFJLEdBQUcsQ0FBQyxNQUFNLDBCQUFTLENBQUMsS0FBSyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3JGLE9BQU8sU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1FBQ3pCLE1BQU0sR0FBRyxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQzlCLElBQUksR0FBRyxFQUFFO1lBQ1AsSUFBSSxDQUFDLENBQUMsSUFBSSxJQUFJLEdBQUcsRUFBRTtnQkFDakIsT0FBTyxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO2FBQ3BCO1lBQ0QsTUFBTSxJQUFJLEtBQUssQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7U0FDcEQ7UUFDRCxNQUFNLElBQUksS0FBSyxDQUFDLHFCQUFxQixDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUNqRCxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUM7QUFFRDs7Ozs7R0FLRztBQUNJLEtBQUssVUFBVSxXQUFXLENBQy9CLEdBQXNCLEVBQ3RCLEdBQVksRUFDWixPQUF3QjtJQUV4QixPQUFPLFNBQVMsQ0FDZCxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLG1CQUFtQixDQUFDLEtBQUssQ0FBQyxDQUFDLEVBQzVELEtBQUssRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsd0JBQXdCLENBQUMsTUFBTSxHQUFHLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLEVBQUUsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUN4RyxDQUFDO0FBQ0osQ0FBQztBQVRELGtDQVNDO0FBRUQ7O0dBRUc7QUFDSSxLQUFLLFVBQVUsc0JBQXNCLENBQzFDLFNBQXFDLEVBQ3JDLEdBQVk7SUFFWixPQUFPLFNBQVMsQ0FBQyxTQUFTLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxFQUFFLENBQUMsTUFBTSxHQUFHLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztBQUNwRixDQUFDO0FBTEQsd0RBS0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyB1dHhvbGliIGZyb20gJ0BiaXRnby1iZXRhL3V0eG8tbGliJztcbmltcG9ydCB7IG1hcFNlcmllcyB9IGZyb20gJy4vQmFzZUh0dHBDbGllbnQnO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25BcGkgfSBmcm9tICcuL1RyYW5zYWN0aW9uQXBpJztcblxuZXhwb3J0IHR5cGUgT3V0cHV0U3BlbmQgPVxuICB8IHtcbiAgICAgIHR4aWQ6IHN0cmluZztcbiAgICAgIHZpbjogbnVtYmVyO1xuICAgIH1cbiAgfCB7IHR4aWQ6IHVuZGVmaW5lZDsgdmluOiB1bmRlZmluZWQgfTtcblxuZXhwb3J0IHR5cGUgVHJhbnNhY3Rpb25JTyA9IHtcbiAgaW5wdXRzOiB7IGFkZHJlc3M6IHN0cmluZyB9W107XG4gIG91dHB1dHM6IHsgYWRkcmVzczogc3RyaW5nIH1bXTtcbn07XG5cbi8qKlxuICogTWV0aG9kcyBzcGVjaWZpYyB0byBVVFhPLWJhc2VkIGJsb2NrY2hhaW5zXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVXR4b0FwaSBleHRlbmRzIFRyYW5zYWN0aW9uQXBpIHtcbiAgLyoqXG4gICAqIEBwYXJhbSB0eGlkXG4gICAqIEByZXR1cm4gdHJhbnNhY3Rpb24gaW5wdXRzXG4gICAqL1xuICBnZXRUcmFuc2FjdGlvbklucHV0cyh0eGlkOiBzdHJpbmcpOiBQcm9taXNlPHV0eG9saWIuYml0Z28uVW5zcGVudFtdPjtcblxuICAvKipcbiAgICogQHBhcmFtIHR4aWRcbiAgICogQHJldHVybiB0cmFuc2FjdGlvbiBpbnB1dCBhbmQgb3V0cHV0IGFkZHJlc3Nlc1xuICAgKi9cbiAgZ2V0VHJhbnNhY3Rpb25JTyh0eGlkOiBzdHJpbmcpOiBQcm9taXNlPFRyYW5zYWN0aW9uSU8+O1xuXG4gIC8qKlxuICAgKiBAcGFyYW0gdHhpZFxuICAgKi9cbiAgZ2V0VHJhbnNhY3Rpb25TcGVuZHModHhpZDogc3RyaW5nKTogUHJvbWlzZTxPdXRwdXRTcGVuZFtdPjtcblxuICAvKipcbiAgICogQHBhcmFtIGFkZHJlc3NcbiAgICogQHJldHVybiB1bnNwZW50IG91dHB1dHMgZm9yIGFkZHJlc3Nlc1xuICAgKi9cbiAgZ2V0VW5zcGVudHNGb3JBZGRyZXNzZXMoYWRkcmVzczogc3RyaW5nW10pOiBQcm9taXNlPHV0eG9saWIuYml0Z28uVW5zcGVudFtdPjtcbn1cblxuLyoqXG4gKiBIZWxwZXIgdG8gZWZmaWNpZW50bHkgZmV0Y2ggb3V0cHV0IGRhdGEuXG4gKiBUeXBpY2FsIHdlIGNhbiBxdWVyeSBvdXRwdXQgZGF0YSBmb3IgYWxsIG91dHB1dHMgb2YgYSB0cmFuc2FjdGlvbiwgc28gd2UgZmlyc3QgZmV0Y2ggYWxsXG4gKiB0aGUgb3V0cHV0IGxpc3QgdmlhIGBmYCBhbmQgdGhlbiBwaWNrIHRoZSBvdXRwdXQgZGF0YSBmcm9tIHRoZSByZXN1bHQuXG4gKiBAcGFyYW0gb3V0cG9pbnRzXG4gKiBAcGFyYW0gZiAtIG1hcHMgdHhpZCB0byBhIGxpc3Qgb2Ygb3V0cHV0cyB3aXRoIHR5cGUgVE91dFxuICogQHJldHVybiBsaXN0IG9mIFRPdXQgY29ycmVzcG9uZGluZyB0byBvdXRwdXRzXG4gKi9cbmFzeW5jIGZ1bmN0aW9uIG1hcElucHV0czxUT3V0PihcbiAgb3V0cG9pbnRzOiB1dHhvbGliLmJpdGdvLlR4T3V0UG9pbnRbXSxcbiAgZjogKHR4aWQ6IHN0cmluZykgPT4gUHJvbWlzZTxUT3V0W10+XG4pOiBQcm9taXNlPFRPdXRbXT4ge1xuICBjb25zdCB0eGlkcyA9IFsuLi5uZXcgU2V0KG91dHBvaW50cy5tYXAoKGkpID0+IGkudHhpZCkpXTtcbiAgY29uc3QgdHhNYXAgPSBuZXcgTWFwKGF3YWl0IG1hcFNlcmllcyh0eGlkcywgYXN5bmMgKHR4aWQpID0+IFt0eGlkLCBhd2FpdCBmKHR4aWQpXSkpO1xuICByZXR1cm4gb3V0cG9pbnRzLm1hcCgoaSkgPT4ge1xuICAgIGNvbnN0IGFyciA9IHR4TWFwLmdldChpLnR4aWQpO1xuICAgIGlmIChhcnIpIHtcbiAgICAgIGlmIChpLnZvdXQgaW4gYXJyKSB7XG4gICAgICAgIHJldHVybiBhcnJbaS52b3V0XTtcbiAgICAgIH1cbiAgICAgIHRocm93IG5ldyBFcnJvcihgY291bGQgbm90IGZpbmQgb3V0cHV0ICR7aS52b3V0fWApO1xuICAgIH1cbiAgICB0aHJvdyBuZXcgRXJyb3IoYGNvdWxkIG5vdCBmaW5kIHR4ICR7aS50eGlkfWApO1xuICB9KTtcbn1cblxuLyoqXG4gKiBGZXRjaCB0cmFuc2FjdGlvbiBpbnB1dHMgZnJvbSB0cmFuc2FjdGlvbiBpbnB1dCBsaXN0XG4gKiBAcGFyYW0gaW5zXG4gKiBAcGFyYW0gYXBpXG4gKiBAcGFyYW0gbmV0d29ya1xuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZmV0Y2hJbnB1dHMoXG4gIGluczogdXR4b2xpYi5UeElucHV0W10sXG4gIGFwaTogVXR4b0FwaSxcbiAgbmV0d29yazogdXR4b2xpYi5OZXR3b3JrXG4pOiBQcm9taXNlPHV0eG9saWIuVHhPdXRwdXRbXT4ge1xuICByZXR1cm4gbWFwSW5wdXRzKFxuICAgIGlucy5tYXAoKGlucHV0KSA9PiB1dHhvbGliLmJpdGdvLmdldE91dHB1dElkRm9ySW5wdXQoaW5wdXQpKSxcbiAgICBhc3luYyAodHhpZCkgPT4gdXR4b2xpYi5iaXRnby5jcmVhdGVUcmFuc2FjdGlvbkZyb21IZXgoYXdhaXQgYXBpLmdldFRyYW5zYWN0aW9uSGV4KHR4aWQpLCBuZXR3b3JrKS5vdXRzXG4gICk7XG59XG5cbi8qKlxuICogRmV0Y2ggdHJhbnNhY3Rpb24gc3BlbmQgc3RhdHVzIG91dHBvaW50cy5cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGZldGNoVHJhbnNhY3Rpb25TcGVuZHMoXG4gIG91dHBvaW50czogdXR4b2xpYi5iaXRnby5UeE91dFBvaW50W10sXG4gIGFwaTogVXR4b0FwaVxuKTogUHJvbWlzZTxPdXRwdXRTcGVuZFtdPiB7XG4gIHJldHVybiBtYXBJbnB1dHMob3V0cG9pbnRzLCBhc3luYyAodHhpZCkgPT4gYXdhaXQgYXBpLmdldFRyYW5zYWN0aW9uU3BlbmRzKHR4aWQpKTtcbn1cbiJdfQ==
|
|
49
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVXR4b0FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9VdHhvQXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBNEVBLGtDQWNDO0FBS0Qsd0RBS0M7QUFwR0QsZ0RBQWdEO0FBQ2hELHFEQUE2QztBQTJDN0M7Ozs7Ozs7R0FPRztBQUNILEtBQUssVUFBVSxTQUFTLENBQ3RCLFNBQXFDLEVBQ3JDLENBQW9DO0lBRXBDLE1BQU0sS0FBSyxHQUFHLENBQUMsR0FBRyxJQUFJLEdBQUcsQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3pELE1BQU0sS0FBSyxHQUFHLElBQUksR0FBRyxDQUFDLE1BQU0sSUFBQSwwQkFBUyxFQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNyRixPQUFPLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtRQUN6QixNQUFNLEdBQUcsR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM5QixJQUFJLEdBQUcsRUFBRSxDQUFDO1lBQ1IsSUFBSSxDQUFDLENBQUMsSUFBSSxJQUFJLEdBQUcsRUFBRSxDQUFDO2dCQUNsQixPQUFPLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDckIsQ0FBQztZQUNELE1BQU0sSUFBSSxLQUFLLENBQUMseUJBQXlCLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQ3JELENBQUM7UUFDRCxNQUFNLElBQUksS0FBSyxDQUFDLHFCQUFxQixDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUNqRCxDQUFDLENBQUMsQ0FBQztBQUNMLENBQUM7QUFFRDs7Ozs7R0FLRztBQUNJLEtBQUssVUFBVSxXQUFXLENBQy9CLEdBQW1ELEVBQ25ELEdBQVksRUFDWixPQUF3QjtJQUV4QixPQUFPLFNBQVMsQ0FDZCxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBNkMsRUFBRSxFQUFFO1FBQ3hELElBQUksTUFBTSxJQUFJLENBQUMsRUFBRSxDQUFDO1lBQ2hCLE9BQU8sQ0FBQyxDQUFDO1FBQ1gsQ0FBQztRQUNELE9BQU8sT0FBTyxDQUFDLEtBQUssQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUM5QyxDQUFDLENBQUMsRUFDRixLQUFLLEVBQUUsSUFBSSxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLHdCQUF3QixDQUFDLE1BQU0sR0FBRyxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxFQUFFLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FDeEcsQ0FBQztBQUNKLENBQUM7QUFFRDs7R0FFRztBQUNJLEtBQUssVUFBVSxzQkFBc0IsQ0FDMUMsU0FBcUMsRUFDckMsR0FBWTtJQUVaLE9BQU8sU0FBUyxDQUFDLFNBQVMsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLEVBQUUsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0FBQ3BGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyB1dHhvbGliIGZyb20gJ0BiaXRnby1iZXRhL3V0eG8tbGliJztcbmltcG9ydCB7IG1hcFNlcmllcyB9IGZyb20gJy4vQmFzZUh0dHBDbGllbnQnO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25BcGkgfSBmcm9tICcuL1RyYW5zYWN0aW9uQXBpJztcblxuZXhwb3J0IHR5cGUgT3V0cHV0U3BlbmQgPVxuICB8IHtcbiAgICAgIHR4aWQ6IHN0cmluZztcbiAgICAgIHZpbjogbnVtYmVyO1xuICAgIH1cbiAgfCB7IHR4aWQ6IHVuZGVmaW5lZDsgdmluOiB1bmRlZmluZWQgfTtcblxuZXhwb3J0IHR5cGUgVHJhbnNhY3Rpb25JTyA9IHtcbiAgaW5wdXRzOiB7IGFkZHJlc3M6IHN0cmluZyB9W107XG4gIG91dHB1dHM6IHsgYWRkcmVzczogc3RyaW5nIH1bXTtcbn07XG5cbi8qKlxuICogTWV0aG9kcyBzcGVjaWZpYyB0byBVVFhPLWJhc2VkIGJsb2NrY2hhaW5zXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVXR4b0FwaSBleHRlbmRzIFRyYW5zYWN0aW9uQXBpIHtcbiAgLyoqXG4gICAqIEBwYXJhbSB0eGlkXG4gICAqIEByZXR1cm4gdHJhbnNhY3Rpb24gaW5wdXRzXG4gICAqL1xuICBnZXRUcmFuc2FjdGlvbklucHV0cyh0eGlkOiBzdHJpbmcpOiBQcm9taXNlPHV0eG9saWIuYml0Z28uVW5zcGVudFtdPjtcblxuICAvKipcbiAgICogQHBhcmFtIHR4aWRcbiAgICogQHJldHVybiB0cmFuc2FjdGlvbiBpbnB1dCBhbmQgb3V0cHV0IGFkZHJlc3Nlc1xuICAgKi9cbiAgZ2V0VHJhbnNhY3Rpb25JTyh0eGlkOiBzdHJpbmcpOiBQcm9taXNlPFRyYW5zYWN0aW9uSU8+O1xuXG4gIC8qKlxuICAgKiBAcGFyYW0gdHhpZFxuICAgKi9cbiAgZ2V0VHJhbnNhY3Rpb25TcGVuZHModHhpZDogc3RyaW5nKTogUHJvbWlzZTxPdXRwdXRTcGVuZFtdPjtcblxuICAvKipcbiAgICogQHBhcmFtIGFkZHJlc3NcbiAgICogQHJldHVybiB1bnNwZW50IG91dHB1dHMgZm9yIGFkZHJlc3Nlc1xuICAgKi9cbiAgZ2V0VW5zcGVudHNGb3JBZGRyZXNzZXMoYWRkcmVzczogc3RyaW5nW10pOiBQcm9taXNlPHV0eG9saWIuYml0Z28uVW5zcGVudFtdPjtcbn1cblxuLyoqXG4gKiBIZWxwZXIgdG8gZWZmaWNpZW50bHkgZmV0Y2ggb3V0cHV0IGRhdGEuXG4gKiBUeXBpY2FsIHdlIGNhbiBxdWVyeSBvdXRwdXQgZGF0YSBmb3IgYWxsIG91dHB1dHMgb2YgYSB0cmFuc2FjdGlvbiwgc28gd2UgZmlyc3QgZmV0Y2ggYWxsXG4gKiB0aGUgb3V0cHV0IGxpc3QgdmlhIGBmYCBhbmQgdGhlbiBwaWNrIHRoZSBvdXRwdXQgZGF0YSBmcm9tIHRoZSByZXN1bHQuXG4gKiBAcGFyYW0gb3V0cG9pbnRzXG4gKiBAcGFyYW0gZiAtIG1hcHMgdHhpZCB0byBhIGxpc3Qgb2Ygb3V0cHV0cyB3aXRoIHR5cGUgVE91dFxuICogQHJldHVybiBsaXN0IG9mIFRPdXQgY29ycmVzcG9uZGluZyB0byBvdXRwdXRzXG4gKi9cbmFzeW5jIGZ1bmN0aW9uIG1hcElucHV0czxUT3V0PihcbiAgb3V0cG9pbnRzOiB1dHhvbGliLmJpdGdvLlR4T3V0UG9pbnRbXSxcbiAgZjogKHR4aWQ6IHN0cmluZykgPT4gUHJvbWlzZTxUT3V0W10+XG4pOiBQcm9taXNlPFRPdXRbXT4ge1xuICBjb25zdCB0eGlkcyA9IFsuLi5uZXcgU2V0KG91dHBvaW50cy5tYXAoKGkpID0+IGkudHhpZCkpXTtcbiAgY29uc3QgdHhNYXAgPSBuZXcgTWFwKGF3YWl0IG1hcFNlcmllcyh0eGlkcywgYXN5bmMgKHR4aWQpID0+IFt0eGlkLCBhd2FpdCBmKHR4aWQpXSkpO1xuICByZXR1cm4gb3V0cG9pbnRzLm1hcCgoaSkgPT4ge1xuICAgIGNvbnN0IGFyciA9IHR4TWFwLmdldChpLnR4aWQpO1xuICAgIGlmIChhcnIpIHtcbiAgICAgIGlmIChpLnZvdXQgaW4gYXJyKSB7XG4gICAgICAgIHJldHVybiBhcnJbaS52b3V0XTtcbiAgICAgIH1cbiAgICAgIHRocm93IG5ldyBFcnJvcihgY291bGQgbm90IGZpbmQgb3V0cHV0ICR7aS52b3V0fWApO1xuICAgIH1cbiAgICB0aHJvdyBuZXcgRXJyb3IoYGNvdWxkIG5vdCBmaW5kIHR4ICR7aS50eGlkfWApO1xuICB9KTtcbn1cblxuLyoqXG4gKiBGZXRjaCB0cmFuc2FjdGlvbiBpbnB1dHMgZnJvbSB0cmFuc2FjdGlvbiBpbnB1dCBsaXN0XG4gKiBAcGFyYW0gaW5zXG4gKiBAcGFyYW0gYXBpXG4gKiBAcGFyYW0gbmV0d29ya1xuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZmV0Y2hJbnB1dHMoXG4gIGluczogdXR4b2xpYi5UeElucHV0W10gfCB1dHhvbGliLmJpdGdvLlR4T3V0UG9pbnRbXSxcbiAgYXBpOiBVdHhvQXBpLFxuICBuZXR3b3JrOiB1dHhvbGliLk5ldHdvcmtcbik6IFByb21pc2U8dXR4b2xpYi5UeE91dHB1dFtdPiB7XG4gIHJldHVybiBtYXBJbnB1dHMoXG4gICAgaW5zLm1hcCgoaTogdXR4b2xpYi5UeElucHV0IHwgdXR4b2xpYi5iaXRnby5UeE91dFBvaW50KSA9PiB7XG4gICAgICBpZiAoJ3R4aWQnIGluIGkpIHtcbiAgICAgICAgcmV0dXJuIGk7XG4gICAgICB9XG4gICAgICByZXR1cm4gdXR4b2xpYi5iaXRnby5nZXRPdXRwdXRJZEZvcklucHV0KGkpO1xuICAgIH0pLFxuICAgIGFzeW5jICh0eGlkKSA9PiB1dHhvbGliLmJpdGdvLmNyZWF0ZVRyYW5zYWN0aW9uRnJvbUhleChhd2FpdCBhcGkuZ2V0VHJhbnNhY3Rpb25IZXgodHhpZCksIG5ldHdvcmspLm91dHNcbiAgKTtcbn1cblxuLyoqXG4gKiBGZXRjaCB0cmFuc2FjdGlvbiBzcGVuZCBzdGF0dXMgb3V0cG9pbnRzLlxuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZmV0Y2hUcmFuc2FjdGlvblNwZW5kcyhcbiAgb3V0cG9pbnRzOiB1dHhvbGliLmJpdGdvLlR4T3V0UG9pbnRbXSxcbiAgYXBpOiBVdHhvQXBpXG4pOiBQcm9taXNlPE91dHB1dFNwZW5kW10+IHtcbiAgcmV0dXJuIG1hcElucHV0cyhvdXRwb2ludHMsIGFzeW5jICh0eGlkKSA9PiBhd2FpdCBhcGkuZ2V0VHJhbnNhY3Rpb25TcGVuZHModHhpZCkpO1xufVxuIl19
|
|
@@ -3,8 +3,8 @@ import { HttpClient, Response } from '../BaseHttpClient';
|
|
|
3
3
|
import { AddressApi, AddressInfo } from '../AddressApi';
|
|
4
4
|
import { OutputSpend, TransactionIO, UtxoApi } from '../UtxoApi';
|
|
5
5
|
import { TransactionStatus } from '../TransactionApi';
|
|
6
|
-
|
|
7
|
-
|
|
6
|
+
type Unspent = bitgo.Unspent;
|
|
7
|
+
type BlockchairUnspent = {
|
|
8
8
|
transaction_hash: string;
|
|
9
9
|
index: number;
|
|
10
10
|
recipient: string;
|
|
@@ -13,8 +13,9 @@ declare type BlockchairUnspent = {
|
|
|
13
13
|
script_hex: string;
|
|
14
14
|
spending_transaction_hash: string;
|
|
15
15
|
spending_index: number;
|
|
16
|
+
address: string;
|
|
16
17
|
};
|
|
17
|
-
|
|
18
|
+
type BlockchairTransaction = {
|
|
18
19
|
transaction: {
|
|
19
20
|
/**
|
|
20
21
|
The block number it's included in.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BlockchairApi.d.ts","sourceRoot":"","sources":["../../../src/impl/BlockchairApi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAC7C,OAAO,EAAkB,UAAU,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAEzE,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAEtD,
|
|
1
|
+
{"version":3,"file":"BlockchairApi.d.ts","sourceRoot":"","sources":["../../../src/impl/BlockchairApi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAC7C,OAAO,EAAkB,UAAU,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAEzE,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAEtD,KAAK,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;AAuB7B,KAAK,iBAAiB,GAAG;IACvB,gBAAgB,EAAE,MAAM,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,yBAAyB,EAAE,MAAM,CAAC;IAClC,cAAc,EAAE,MAAM,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAiBF,KAAK,qBAAqB,GAAG;IAC3B,WAAW,EAAE;QACX;;;UAGE;QACF,QAAQ,EAAE,MAAM,CAAC;QACjB;;;WAGG;QACH,IAAI,EAAE,MAAM,CAAC;KACd,CAAC;IACF,MAAM,EAAE,iBAAiB,EAAE,CAAC;IAC5B,OAAO,EAAE,iBAAiB,EAAE,CAAC;CAC9B,CAAC;AAOF,qBAAa,aAAc,YAAW,UAAU,EAAE,OAAO;IAyCpC,MAAM,EAAE,UAAU;IAxCrC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAErC,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,GAAE;QAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,UAAU,CAAA;KAAO,GAAG,aAAa;gBAsCzF,MAAM,EAAE,UAAU,EAAE,QAAQ,CAAC,EAAE,MAAM;IAIxD,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IAIpC,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAerD,uBAAuB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAyB3D,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,CAAC;IAQ5D,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAsB9D,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAUtD,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAkBtD,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IAW1D,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;CAOvD"}
|
|
@@ -17,10 +17,6 @@ function unwrapRecord(body, key) {
|
|
|
17
17
|
return body.data[key];
|
|
18
18
|
}
|
|
19
19
|
class BlockchairApi {
|
|
20
|
-
constructor(client, apiToken) {
|
|
21
|
-
this.client = client;
|
|
22
|
-
this.apiToken = apiToken !== null && apiToken !== void 0 ? apiToken : process.env.BLOCKCHAIR_TOKEN;
|
|
23
|
-
}
|
|
24
20
|
static forCoin(coinName, params = {}) {
|
|
25
21
|
// https://blockchair.com/api/docs#link_M0
|
|
26
22
|
let blockchain;
|
|
@@ -58,6 +54,10 @@ class BlockchairApi {
|
|
|
58
54
|
const { httpClient = new BaseHttpClient_1.BaseHttpClient() } = params;
|
|
59
55
|
return new BlockchairApi(httpClient.withBaseUrl(`https://api.blockchair.com/${blockchain}`), params.apiToken);
|
|
60
56
|
}
|
|
57
|
+
constructor(client, apiToken) {
|
|
58
|
+
this.client = client;
|
|
59
|
+
this.apiToken = apiToken ?? process.env.BLOCKCHAIR_TOKEN;
|
|
60
|
+
}
|
|
61
61
|
get(path) {
|
|
62
62
|
return this.client.get(path + (this.apiToken ? `?key=${this.apiToken}` : ''));
|
|
63
63
|
}
|
|
@@ -77,17 +77,20 @@ class BlockchairApi {
|
|
|
77
77
|
if (addr.length > 100) {
|
|
78
78
|
throw new Error(`invalid size`);
|
|
79
79
|
}
|
|
80
|
-
|
|
81
|
-
return
|
|
82
|
-
return
|
|
83
|
-
|
|
80
|
+
const response = await this.get(`/dashboards/addresses/${addr.join(',')}`);
|
|
81
|
+
return response.map((body) => {
|
|
82
|
+
return body.data.utxo
|
|
83
|
+
.flatMap((unspent) => {
|
|
84
|
+
if (addr.includes(unspent.address)) {
|
|
84
85
|
return {
|
|
85
86
|
id: formatOutputId({ txid: unspent.transaction_hash, vout: unspent.index }),
|
|
86
|
-
address:
|
|
87
|
+
address: unspent.address,
|
|
87
88
|
value: unspent.value,
|
|
88
89
|
};
|
|
89
|
-
}
|
|
90
|
-
|
|
90
|
+
}
|
|
91
|
+
return undefined;
|
|
92
|
+
})
|
|
93
|
+
.filter((unspent) => unspent !== undefined);
|
|
91
94
|
});
|
|
92
95
|
}
|
|
93
96
|
async getTransaction(txid) {
|
|
@@ -158,4 +161,4 @@ class BlockchairApi {
|
|
|
158
161
|
}
|
|
159
162
|
}
|
|
160
163
|
exports.BlockchairApi = BlockchairApi;
|
|
161
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQmxvY2tjaGFpckFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9pbXBsL0Jsb2NrY2hhaXJBcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsbURBQTZDO0FBQzdDLHNEQUF5RTtBQUN6RSw4Q0FBdUQ7QUFNdkQsTUFBTSxjQUFjLEdBQUcsZ0JBQUssQ0FBQyxjQUFjLENBQUM7QUFRNUMsTUFBTSxxQkFBc0IsU0FBUSxLQUFLO0lBQ3ZDLFlBQVksR0FBVztRQUNyQixLQUFLLENBQUMsT0FBTyxHQUFHLGtCQUFrQixDQUFDLENBQUM7SUFDdEMsQ0FBQztDQUNGO0FBRUQsU0FBUyxZQUFZLENBQUksSUFBaUMsRUFBRSxHQUFXO0lBQ3JFLElBQUksQ0FBQyxDQUFDLEdBQUcsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUU7UUFDdkIsTUFBTSxJQUFJLHFCQUFxQixDQUFDLEdBQUcsQ0FBQyxDQUFDO0tBQ3RDO0lBQ0QsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0FBQ3hCLENBQUM7QUFtREQsTUFBYSxhQUFhO0lBeUN4QixZQUFtQixNQUFrQixFQUFFLFFBQWlCO1FBQXJDLFdBQU0sR0FBTixNQUFNLENBQVk7UUFDbkMsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLGFBQVIsUUFBUSxjQUFSLFFBQVEsR0FBSSxPQUFPLENBQUMsR0FBRyxDQUFDLGdCQUFnQixDQUFDO0lBQzNELENBQUM7SUF4Q0QsTUFBTSxDQUFDLE9BQU8sQ0FBQyxRQUFnQixFQUFFLFNBQXlELEVBQUU7UUFDMUYsMENBQTBDO1FBQzFDLElBQUksVUFBVSxDQUFDO1FBQ2YsUUFBUSxRQUFRLEVBQUU7WUFDaEIsS0FBSyxLQUFLO2dCQUNSLFVBQVUsR0FBRyxTQUFTLENBQUM7Z0JBQ3ZCLE1BQU07WUFDUixLQUFLLE1BQU07Z0JBQ1QsVUFBVSxHQUFHLGlCQUFpQixDQUFDO2dCQUMvQixNQUFNO1lBQ1IsS0FB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QUUsRUFBRSxDQUN6RCxDQUFDLENBQUMseUJBQXlCO1lBQ3pCLENBQUMsQ0FBQztnQkFDRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLHlCQUF5QjtnQkFDakMsR0FBRyxFQUFFLENBQUMsQ0FBQyxjQUFjO2FBQ3RCO1lBQ0gsQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLENBQ3hDLENBQUM7SUFDSixDQUFDO0lBRUQsS0FBSyxDQUFDLGlCQUFpQixDQUFDLElBQVk7UUFDbEMsT0FBTyxDQUFDLE1BQU0sSUFBSSxDQUFDLEdBQUcsQ0FBcUQsb0JBQW9CLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQ3pHLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDUCxPQUFPLFlBQVksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUMsZUFBZSxDQUFDO1FBQ2xELENBQUMsQ0FDRixDQUFDO0lBQ0osQ0FBQztDQUNGO0FBaEtELHNDQWdLQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGJpdGdvIH0gZnJvbSAnQGJpdGdvLWJldGEvdXR4by1saWInO1xuaW1wb3J0IHsgQmFzZUh0dHBDbGllbnQsIEh0dHBDbGllbnQsIFJlc3BvbnNlIH0gZnJvbSAnLi4vQmFzZUh0dHBDbGllbnQnO1xuaW1wb3J0IHsgQXBpTm90SW1wbGVtZW50ZWRFcnJvciB9IGZyb20gJy4uL0FwaUJ1aWxkZXInO1xuaW1wb3J0IHsgQWRkcmVzc0FwaSwgQWRkcmVzc0luZm8gfSBmcm9tICcuLi9BZGRyZXNzQXBpJztcbmltcG9ydCB7IE91dHB1dFNwZW5kLCBUcmFuc2FjdGlvbklPLCBVdHhvQXBpIH0gZnJvbSAnLi4vVXR4b0FwaSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvblN0YXR1cyB9IGZyb20gJy4uL1RyYW5zYWN0aW9uQXBpJztcblxudHlwZSBVbnNwZW50ID0gYml0Z28uVW5zcGVudDtcbmNvbnN0IGZvcm1hdE91dHB1dElkID0gYml0Z28uZm9ybWF0T3V0cHV0SWQ7XG5cbnR5cGUgQmxvY2tjaGFpclJlc3BvbnNlPFQ+ID0ge1xuICBkYXRhOiBUO1xufTtcblxudHlwZSBCbG9ja2NoYWlyUmVjb3JkUmVzcG9uc2U8VD4gPSBCbG9ja2NoYWlyUmVzcG9uc2U8UmVjb3JkPHN0cmluZywgVD4+O1xuXG5jbGFzcyBFcnJvcktleU5vdEluUmVzcG9uc2UgZXh0ZW5kcyBFcnJvciB7XG4gIGNvbnN0cnVjdG9yKGtleTogc3RyaW5nKSB7XG4gICAgc3VwZXIoYGtleSAke2tleX0gbm90IGluIHJlc3BvbnNlYCk7XG4gIH1cbn1cblxuZnVuY3Rpb24gdW53cmFwUmVjb3JkPFQ+KGJvZHk6IEJsb2NrY2hhaXJSZWNvcmRSZXNwb25zZTxUPiwga2V5OiBzdHJpbmcpOiBUIHtcbiAgaWYgKCEoa2V5IGluIGJvZHkuZGF0YSkpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3JLZXlOb3RJblJlc3BvbnNlKGtleSk7XG4gIH1cbiAgcmV0dXJuIGJvZHkuZGF0YVtrZXldO1xufVxuXG4vLyBodHRwczovL2Jsb2NrY2hhaXIuY29tL2FwaS9kb2NzI2xpbmtfMzAwXG50eXBlIEJsb2NrY2hhaXJVbnNwZW50ID0ge1xuICB0cmFuc2FjdGlvbl9oYXNoOiBzdHJpbmc7XG4gIGluZGV4OiBudW1iZXI7XG4gIHJlY2lwaWVudDogc3RyaW5nO1xuICB2YWx1ZTogbnVtYmVyO1xuICBibG9ja19pZDogbnVtYmVyO1xuICBzY3JpcHRfaGV4OiBzdHJpbmc7XG4gIHNwZW5kaW5nX3RyYW5zYWN0aW9uX2hhc2g6IHN0cmluZztcbiAgc3BlbmRpbmdfaW5kZXg6IG51bWJlcjtcbn07XG5cbi8vIGh0dHBzOi8vYmxvY2tjaGFpci5jb20vYXBpL2RvY3MjbGlua18zMDBcbnR5cGUgQmxvY2tjaGFpckFkZHJlc3MgPSB7XG4gIGFkZHJlc3M6IHtcbiAgICB0cmFuc2FjdGlvbl9oYXNoOiBzdHJpbmc7XG4gICAgLy8gdm91dFxuICAgIGluZGV4OiBudW1iZXI7XG4gICAgdmFsdWU6IG51bWJlcjtcbiAgICBibG9ja19pZDogbnVtYmVyO1xuICAgIHRyYW5zYWN0aW9uX2NvdW50OiBudW1iZXI7XG4gICAgYmFsYW5jZTogbnVtYmVyO1xuICB9O1xuICB1dHhvOiBCbG9ja2NoYWlyVW5zcGVudFtdO1xufTtcblxuLy8gaHR0cHM6Ly9ibG9ja2NoYWlyLmNvbS9hcGkvZG9jcyNsaW5rXzIwMFxudHlwZSBCbG9ja2NoYWlyVHJhbnNhY3Rpb24gPSB7XG4gIHRyYW5zYWN0aW9uOiB7XG4gICAgLyoqXG4gICAgICBUaGUgYmxvY2sgbnVtYmVyIGl0J3MgaW5jbHVkZWQgaW4uXG4gICAgICBJZiB0aGUgdHJhbnNhY3Rpb24gaXMgaW4gdGhlIG1lbXBvb2wsIGRhdGEuezpoYXNofeG1oi50cmFuc2FjdGlvbi5ibG9ja19pZCB5aWVsZHMgLTFcbiAgICAqL1xuICAgIGJsb2NrX2lkOiBudW1iZXI7XG4gICAgLyoqXG4gICAgICogTGlrZSBodHRwczovL3RjMzkuZXMvZWNtYTI2Mi8jc2VjLWRhdGUtdGltZS1zdHJpbmctZm9ybWF0IGJ1dCB3aXRoIGEgc3BhY2UgaW5zdGVhZCBvZiAnVCdcbiAgICAgKiBZWVlZLU1NLUREIEhIOm1tOnNzXG4gICAgICovXG4gICAgdGltZTogc3RyaW5nO1xuICB9O1xuICBpbnB1dHM6IEJsb2NrY2hhaXJVbnNwZW50W107XG4gIG91dHB1dHM6IEJsb2NrY2hhaXJVbnNwZW50W107XG59O1xuXG4vLyBodHRwczovL2Jsb2NrY2hhaXIuY29tL2FwaS9kb2NzI2xpbmtfMjAxXG50eXBlIEJsb2NrY2hhaXJSYXdUcmFuc2FjdGlvbiA9IHtcbiAgcmF3X3RyYW5zYWN0aW9uOiBzdHJpbmc7XG59O1xuXG5leHBvcnQgY2xhc3MgQmxvY2tjaGFpckFwaSBpbXBsZW1lbnRzIEFkZHJlc3NBcGksIFV0eG9BcGkge1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgYXBpVG9rZW4/OiBzdHJpbmc7XG5cbiAgc3RhdGljIGZvckNvaW4oY29pbk5hbWU6IHN0cmluZywgcGFyYW1zOiB7IGFwaVRva2VuPzogc3RyaW5nOyBodHRwQ2xpZW50PzogSHR0cENsaWVudCB9ID0ge30pOiBCbG9ja2NoYWlyQXBpIHtcbiAgICAvLyBodHRwczovL2Jsb2NrY2hhaXIuY29tL2FwaS9kb2NzI2xpbmtfTTBcbiAgICBsZXQgYmxvY2tjaGFpbjtcbiAgICBzd2l0Y2ggKGNvaW5OYW1lKSB7XG4gICAgICBjYXNlICdidGMnOlxuICAgICAgICBibG9ja2NoYWluID0gJ2JpdGNvaW4nO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ3RidGMnOlxuICAgICAgICBibG9ja2NoYWluID0gJ2JpdGNvaW4vdGVzdG5ldCc7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnYnN2JzpcbiAgICAgICAgYmxvY2tjaGFpbiA9ICdiaXRjb2luLXN2JztcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdiY2gnOlxuICAgICAgICBibG9ja2NoYWluID0gJ2JpdGNvaW4tY2FzaCc7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnYmNoYSc6XG4gICAgICAgIGJsb2NrY2hhaW4gPSAnZWNhc2gnO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ2x0Yyc6XG4gICAgICAgIGJsb2NrY2hhaW4gPSAnbGl0ZWNvaW4nO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ2Rhc2gnOlxuICAgICAgICBibG9ja2NoYWluID0gJ2Rhc2gnO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ2RvZ2UnOlxuICAgICAgICBibG9ja2NoYWluID0gJ2RvZ2Vjb2luJztcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICd6ZWMnOlxuICAgICAgICBibG9ja2NoYWluID0gJ3pjYXNoJztcbiAgICAgICAgYnJlYWs7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICB0aHJvdyBuZXcgQXBpTm90SW1wbGVtZW50ZWRFcnJvcihjb2luTmFtZSk7XG4gICAgfVxuICAgIGNvbnN0IHsgaHR0cENsaWVudCA9IG5ldyBCYXNlSHR0cENsaWVudCgpIH0gPSBwYXJhbXM7XG4gICAgcmV0dXJuIG5ldyBCbG9ja2NoYWlyQXBpKGh0dHBDbGllbnQud2l0aEJhc2VVcmwoYGh0dHBzOi8vYXBpLmJsb2NrY2hhaXIuY29tLyR7YmxvY2tjaGFpbn1gKSwgcGFyYW1zLmFwaVRva2VuKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBjbGllbnQ6IEh0dHBDbGllbnQsIGFwaVRva2VuPzogc3RyaW5nKSB7XG4gICAgdGhpcy5hcGlUb2tlbiA9IGFwaVRva2VuID8/IHByb2Nlc3MuZW52LkJMT0NLQ0hBSVJfVE9LRU47XG4gIH1cblxuICBnZXQ8VD4ocGF0aDogc3RyaW5nKTogUHJvbWlzZTxSZXNwb25zZTxUPj4ge1xuICAgIHJldHVybiB0aGlzLmNsaWVudC5nZXQocGF0aCArICh0aGlzLmFwaVRva2VuID8gYD9rZXk9JHt0aGlzLmFwaVRva2VufWAgOiAnJykpO1xuICB9XG5cbiAgYXN5bmMgZ2V0QWRkcmVzc0luZm8oYWRkcmVzczogc3RyaW5nKTogUHJvbWlzZTxBZGRyZXNzSW5mbz4ge1xuICAgIGlmICghYWRkcmVzcyB8fCBhZGRyZXNzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdpbnZhbGlkIGFkZHJlc3MnKTtcbiAgICB9XG4gICAgLy8gaHR0cHM6Ly9ibG9ja2NoYWlyLmNvbS9hcGkvZG9jcyNsaW5rXzMwMFxuICAgIHJldHVybiAoYXdhaXQgdGhpcy5nZXQ8QmxvY2tjaGFpclJlY29yZFJlc3BvbnNlPEJsb2NrY2hhaXJBZGRyZXNzPj4oYC9kYXNoYm9hcmRzL2FkZHJlc3MvJHthZGRyZXNzfWApKS5tYXAoXG4gICAgICAoYm9keSkgPT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIHR4Q291bnQ6IGJvZHkuZGF0YVthZGRyZXNzXS5hZGRyZXNzLnRyYW5zYWN0aW9uX2NvdW50LFxuICAgICAgICAgIGJhbGFuY2U6IGJvZHkuZGF0YVthZGRyZXNzXS5hZGRyZXNzLmJhbGFuY2UsXG4gICAgICAgIH07XG4gICAgICB9XG4gICAgKTtcbiAgfVxuXG4gIGFzeW5jIGdldFVuc3BlbnRzRm9yQWRkcmVzc2VzKGFkZHI6IHN0cmluZ1tdKTogUHJvbWlzZTxVbnNwZW50W10+IHtcbiAgICBpZiAoYWRkci5sZW5ndGggPiAxMDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgaW52YWxpZCBzaXplYCk7XG4gICAgfVxuICAgIC8vIGh0dHBzOi8vYmxvY2tjaGFpci5jb20vYXBpL2RvY3MjbGlua18zMDBcbiAgICByZXR1cm4gKFxuICAgICAgYXdhaXQgdGhpcy5nZXQ8QmxvY2tjaGFpclJlc3BvbnNlPHsgdXR4bzogQmxvY2tjaGFpclVuc3BlbnRbXSB9Pj4oYC9kYXNoYm9hcmRzL2FkZHJlc3Nlcy8ke2FkZHIuam9pbignLCcpfWApXG4gICAgKS5tYXAoKGJvZHkpID0+IHtcbiAgICAgIHJldHVybiBhZGRyLmZsYXRNYXAoKGEpID0+IHtcbiAgICAgICAgcmV0dXJuIGJvZHkuZGF0YS51dHhvLm1hcCgodW5zcGVudCk6IFVuc3BlbnQgPT4ge1xuICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBpZDogZm9ybWF0T3V0cHV0SWQoeyB0eGlkOiB1bnNwZW50LnRyYW5zYWN0aW9uX2hhc2gsIHZvdXQ6IHVuc3BlbnQuaW5kZXggfSksXG4gICAgICAgICAgICBhZGRyZXNzOiBhLFxuICAgICAgICAgICAgdmFsdWU6IHVuc3BlbnQudmFsdWUsXG4gICAgICAgICAgfTtcbiAgICAgICAgfSk7XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIGFzeW5jIGdldFRyYW5zYWN0aW9uKHR4aWQ6IHN0cmluZyk6IFByb21pc2U8QmxvY2tjaGFpclRyYW5zYWN0aW9uPiB7XG4gICAgcmV0dXJuIChhd2FpdCB0aGlzLmdldDxCbG9ja2NoYWlyUmVjb3JkUmVzcG9uc2U8QmxvY2tjaGFpclRyYW5zYWN0aW9uPj4oYC9kYXNoYm9hcmRzL3RyYW5zYWN0aW9uLyR7dHhpZH1gKSkubWFwKFxuICAgICAgKGJvZHkpID0+IHtcbiAgICAgICAgcmV0dXJuIHVud3JhcFJlY29yZChib2R5LCB0eGlkKTtcbiAgICAgIH1cbiAgICApO1xuICB9XG5cbiAgYXN5bmMgZ2V0VHJhbnNhY3Rpb25TdGF0dXModHhpZDogc3RyaW5nKTogUHJvbWlzZTxUcmFuc2FjdGlvblN0YXR1cz4ge1xuICAgIGxldCB0cmFuc2FjdGlvbjtcbiAgICB0cnkge1xuICAgICAgdHJhbnNhY3Rpb24gPSAoYXdhaXQgdGhpcy5nZXRUcmFuc2FjdGlvbih0eGlkKSkudHJhbnNhY3Rpb247XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgaWYgKGUgaW5zdGFuY2VvZiBFcnJvcktleU5vdEluUmVzcG9uc2UpIHtcbiAgICAgICAgcmV0dXJuIHsgZm91bmQ6IGZhbHNlIH07XG4gICAgICB9XG4gICAgICB0aHJvdyBlO1xuICAgIH1cbiAgICBjb25zdCB7IGJsb2NrX2lkLCB0aW1lIH0gPSB0cmFuc2FjdGlvbjtcbiAgICBjb25zdCBkYXRlID0gbmV3IERhdGUoRGF0ZS5wYXJzZSh0aW1lLnJlcGxhY2UoJyAnLCAnVCcpICsgJy4wMDBaJyAvKiBmb3JjZSBVVEMgcGFyc2luZyAqLykpO1xuICAgIHJldHVybiBibG9ja19pZCA9PT0gLTFcbiAgICAgID8geyBmb3VuZDogdHJ1ZSwgY29uZmlybWVkOiBmYWxzZSB9XG4gICAgICA6IHtcbiAgICAgICAgICBmb3VuZDogdHJ1ZSxcbiAgICAgICAgICBjb25maXJtZWQ6IHRydWUsXG4gICAgICAgICAgYmxvY2tIZWlnaHQ6IGJsb2NrX2lkLFxuICAgICAgICAgIGRhdGUsXG4gICAgICAgIH07XG4gIH1cblxuICBhc3luYyBnZXRUcmFuc2FjdGlvbklucHV0cyh0eGlkOiBzdHJpbmcpOiBQcm9taXNlPFVuc3BlbnRbXT4ge1xuICAgIHJldHVybiAoYXdhaXQgdGhpcy5nZXRUcmFuc2FjdGlvbih0eGlkKSkuaW5wdXRzLm1hcCgoaSkgPT4ge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgaWQ6IGZvcm1hdE91dHB1dElkKHsgdHhpZDogaS50cmFuc2FjdGlvbl9oYXNoLCB2b3V0OiBpLmluZGV4IH0pLFxuICAgICAgICBhZGRyZXNzOiBpLnJlY2lwaWVudCxcbiAgICAgICAgdmFsdWU6IGkudmFsdWUsXG4gICAgICB9O1xuICAgIH0pO1xuICB9XG5cbiAgYXN5bmMgZ2V0VHJhbnNhY3Rpb25JTyh0eGlkOiBzdHJpbmcpOiBQcm9taXNlPFRyYW5zYWN0aW9uSU8+IHtcbiAgICBjb25zdCB0eCA9IGF3YWl0IHRoaXMuZ2V0VHJhbnNhY3Rpb24odHhpZCk7XG4gICAgY29uc3QgaW5wdXRzID0gdHguaW5wdXRzLm1hcCgoaW5wdXQpID0+IHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGFkZHJlc3M6IGlucHV0LnJlY2lwaWVudCxcbiAgICAgIH07XG4gICAgfSk7XG4gICAgY29uc3Qgb3V0cHV0cyA9IHR4Lm91dHB1dHMubWFwKChvdXRwdXQpID0+IHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGFkZHJlc3M6IG91dHB1dC5yZWNpcGllbnQsXG4gICAgICB9O1xuICAgIH0pO1xuICAgIHJldHVybiB7XG4gICAgICBpbnB1dHMsXG4gICAgICBvdXRwdXRzLFxuICAgIH07XG4gIH1cblxuICBhc3luYyBnZXRUcmFuc2FjdGlvblNwZW5kcyh0eGlkOiBzdHJpbmcpOiBQcm9taXNlPE91dHB1dFNwZW5kW10+IHtcbiAgICByZXR1cm4gKGF3YWl0IHRoaXMuZ2V0VHJhbnNhY3Rpb24odHhpZCkpLm91dHB1dHMubWFwKChvKSA9PlxuICAgICAgby5zcGVuZGluZ190cmFuc2FjdGlvbl9oYXNoXG4gICAgICAgID8ge1xuICAgICAgICAgICAgdHhpZDogby5zcGVuZGluZ190cmFuc2FjdGlvbl9oYXNoLFxuICAgICAgICAgICAgdmluOiBvLnNwZW5kaW5nX2luZGV4LFxuICAgICAgICAgIH1cbiAgICAgICAgOiB7IHR4aWQ6IHVuZGVmaW5lZCwgdmluOiB1bmRlZmluZWQgfVxuICAgICk7XG4gIH1cblxuICBhc3luYyBnZXRUcmFuc2FjdGlvbkhleCh0eGlkOiBzdHJpbmcpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIHJldHVybiAoYXdhaXQgdGhpcy5nZXQ8QmxvY2tjaGFpclJlY29yZFJlc3BvbnNlPEJsb2NrY2hhaXJSYXdUcmFuc2FjdGlvbj4+KGAvcmF3L3RyYW5zYWN0aW9uLyR7dHhpZH1gKSkubWFwKFxuICAgICAgKGJvZHkpID0+IHtcbiAgICAgICAgcmV0dXJuIHVud3JhcFJlY29yZChib2R5LCB0eGlkKS5yYXdfdHJhbnNhY3Rpb247XG4gICAgICB9XG4gICAgKTtcbiAgfVxufVxuIl19
|
|
164
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQmxvY2tjaGFpckFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9pbXBsL0Jsb2NrY2hhaXJBcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsbURBQTZDO0FBQzdDLHNEQUF5RTtBQUN6RSw4Q0FBdUQ7QUFNdkQsTUFBTSxjQUFjLEdBQUcsZ0JBQUssQ0FBQyxjQUFjLENBQUM7QUFRNUMsTUFBTSxxQkFBc0IsU0FBUSxLQUFLO0lBQ3ZDLFlBQVksR0FBVztRQUNyQixLQUFLLENBQUMsT0FBTyxHQUFHLGtCQUFrQixDQUFDLENBQUM7SUFDdEMsQ0FBQztDQUNGO0FBRUQsU0FBUyxZQUFZLENBQUksSUFBaUMsRUFBRSxHQUFXO0lBQ3JFLElBQUksQ0FBQyxDQUFDLEdBQUcsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztRQUN4QixNQUFNLElBQUkscUJBQXFCLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDdkMsQ0FBQztJQUNELE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztBQUN4QixDQUFDO0FBb0RELE1BQWEsYUFBYTtJQUd4QixNQUFNLENBQUMsT0FBTyxDQUFDLFFBQWdCLEVBQUUsU0FBeUQsRUFBRTtRQUMxRiwwQ0FBMEM7UUFDMUMsSUFBSSxVQUFVLENBQUM7UUFDZixRQUFRLFFBQVEsRUFBRSxDQUFDO1lBQ2pCLEtBQUssS0FBSztnQkFDUixVQUFVLEdBQUcsU0FBUyxDQUFDO2dCQUN2QixNQUFNO1lBQ1IsS0FBSyxNQUFNO2dCQUNULFVBQVUsR0FBRyxpQkFBaUIsQ0FBQztnQkFDL0IsTUFBTTtZQUNSLEtBQUssS0FBSztnQkFDUixVQUFVLEdBQUcsWUFBWSxDQUFDO2dCQUMxQixNQUFNO1lBQ1IsS0FBSyxLQUFLO2dCQUNSLFVBQVUsR0FBRyxjQUFjLENBQUM7Z0JBQzVCLE1BQU07WUFDUixLQUFLLE1BQU07Z0JBQ1QsVUFBVSxHQUFHLE9BQU8sQ0FBQztn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WUFDTixPQUFPO1NBQ1IsQ0FBQztJQUNKLENBQUM7SUFFRCxLQUFLLENBQUMsb0JBQW9CLENBQUMsSUFBWTtRQUNyQyxPQUFPLENBQUMsTUFBTSxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQ3pELENBQUMsQ0FBQyx5QkFBeUI7WUFDekIsQ0FBQyxDQUFDO2dCQUNFLElBQUksRUFBRSxDQUFDLENBQUMseUJBQXlCO2dCQUNqQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLGNBQWM7YUFDdEI7WUFDSCxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxTQUFTLEVBQUUsQ0FDeEMsQ0FBQztJQUNKLENBQUM7SUFFRCxLQUFLLENBQUMsaUJBQWlCLENBQUMsSUFBWTtRQUNsQyxPQUFPLENBQUMsTUFBTSxJQUFJLENBQUMsR0FBRyxDQUFxRCxvQkFBb0IsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FDekcsQ0FBQyxJQUFJLEVBQUUsRUFBRTtZQUNQLE9BQU8sWUFBWSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQyxlQUFlLENBQUM7UUFDbEQsQ0FBQyxDQUNGLENBQUM7SUFDSixDQUFDO0NBQ0Y7QUFyS0Qsc0NBcUtDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYml0Z28gfSBmcm9tICdAYml0Z28tYmV0YS91dHhvLWxpYic7XG5pbXBvcnQgeyBCYXNlSHR0cENsaWVudCwgSHR0cENsaWVudCwgUmVzcG9uc2UgfSBmcm9tICcuLi9CYXNlSHR0cENsaWVudCc7XG5pbXBvcnQgeyBBcGlOb3RJbXBsZW1lbnRlZEVycm9yIH0gZnJvbSAnLi4vQXBpQnVpbGRlcic7XG5pbXBvcnQgeyBBZGRyZXNzQXBpLCBBZGRyZXNzSW5mbyB9IGZyb20gJy4uL0FkZHJlc3NBcGknO1xuaW1wb3J0IHsgT3V0cHV0U3BlbmQsIFRyYW5zYWN0aW9uSU8sIFV0eG9BcGkgfSBmcm9tICcuLi9VdHhvQXBpJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uU3RhdHVzIH0gZnJvbSAnLi4vVHJhbnNhY3Rpb25BcGknO1xuXG50eXBlIFVuc3BlbnQgPSBiaXRnby5VbnNwZW50O1xuY29uc3QgZm9ybWF0T3V0cHV0SWQgPSBiaXRnby5mb3JtYXRPdXRwdXRJZDtcblxudHlwZSBCbG9ja2NoYWlyUmVzcG9uc2U8VD4gPSB7XG4gIGRhdGE6IFQ7XG59O1xuXG50eXBlIEJsb2NrY2hhaXJSZWNvcmRSZXNwb25zZTxUPiA9IEJsb2NrY2hhaXJSZXNwb25zZTxSZWNvcmQ8c3RyaW5nLCBUPj47XG5cbmNsYXNzIEVycm9yS2V5Tm90SW5SZXNwb25zZSBleHRlbmRzIEVycm9yIHtcbiAgY29uc3RydWN0b3Ioa2V5OiBzdHJpbmcpIHtcbiAgICBzdXBlcihga2V5ICR7a2V5fSBub3QgaW4gcmVzcG9uc2VgKTtcbiAgfVxufVxuXG5mdW5jdGlvbiB1bndyYXBSZWNvcmQ8VD4oYm9keTogQmxvY2tjaGFpclJlY29yZFJlc3BvbnNlPFQ+LCBrZXk6IHN0cmluZyk6IFQge1xuICBpZiAoIShrZXkgaW4gYm9keS5kYXRhKSkge1xuICAgIHRocm93IG5ldyBFcnJvcktleU5vdEluUmVzcG9uc2Uoa2V5KTtcbiAgfVxuICByZXR1cm4gYm9keS5kYXRhW2tleV07XG59XG5cbi8vIGh0dHBzOi8vYmxvY2tjaGFpci5jb20vYXBpL2RvY3MjbGlua18zMDBcbnR5cGUgQmxvY2tjaGFpclVuc3BlbnQgPSB7XG4gIHRyYW5zYWN0aW9uX2hhc2g6IHN0cmluZztcbiAgaW5kZXg6IG51bWJlcjtcbiAgcmVjaXBpZW50OiBzdHJpbmc7XG4gIHZhbHVlOiBudW1iZXI7XG4gIGJsb2NrX2lkOiBudW1iZXI7XG4gIHNjcmlwdF9oZXg6IHN0cmluZztcbiAgc3BlbmRpbmdfdHJhbnNhY3Rpb25faGFzaDogc3RyaW5nO1xuICBzcGVuZGluZ19pbmRleDogbnVtYmVyO1xuICBhZGRyZXNzOiBzdHJpbmc7XG59O1xuXG4vLyBodHRwczovL2Jsb2NrY2hhaXIuY29tL2FwaS9kb2NzI2xpbmtfMzAwXG50eXBlIEJsb2NrY2hhaXJBZGRyZXNzID0ge1xuICBhZGRyZXNzOiB7XG4gICAgdHJhbnNhY3Rpb25faGFzaDogc3RyaW5nO1xuICAgIC8vIHZvdXRcbiAgICBpbmRleDogbnVtYmVyO1xuICAgIHZhbHVlOiBudW1iZXI7XG4gICAgYmxvY2tfaWQ6IG51bWJlcjtcbiAgICB0cmFuc2FjdGlvbl9jb3VudDogbnVtYmVyO1xuICAgIGJhbGFuY2U6IG51bWJlcjtcbiAgfTtcbiAgdXR4bzogQmxvY2tjaGFpclVuc3BlbnRbXTtcbn07XG5cbi8vIGh0dHBzOi8vYmxvY2tjaGFpci5jb20vYXBpL2RvY3MjbGlua18yMDBcbnR5cGUgQmxvY2tjaGFpclRyYW5zYWN0aW9uID0ge1xuICB0cmFuc2FjdGlvbjoge1xuICAgIC8qKlxuICAgICAgVGhlIGJsb2NrIG51bWJlciBpdCdzIGluY2x1ZGVkIGluLlxuICAgICAgSWYgdGhlIHRyYW5zYWN0aW9uIGlzIGluIHRoZSBtZW1wb29sLCBkYXRhLns6aGFzaH3htaIudHJhbnNhY3Rpb24uYmxvY2tfaWQgeWllbGRzIC0xXG4gICAgKi9cbiAgICBibG9ja19pZDogbnVtYmVyO1xuICAgIC8qKlxuICAgICAqIExpa2UgaHR0cHM6Ly90YzM5LmVzL2VjbWEyNjIvI3NlYy1kYXRlLXRpbWUtc3RyaW5nLWZvcm1hdCBidXQgd2l0aCBhIHNwYWNlIGluc3RlYWQgb2YgJ1QnXG4gICAgICogWVlZWS1NTS1ERCBISDptbTpzc1xuICAgICAqL1xuICAgIHRpbWU6IHN0cmluZztcbiAgfTtcbiAgaW5wdXRzOiBCbG9ja2NoYWlyVW5zcGVudFtdO1xuICBvdXRwdXRzOiBCbG9ja2NoYWlyVW5zcGVudFtdO1xufTtcblxuLy8gaHR0cHM6Ly9ibG9ja2NoYWlyLmNvbS9hcGkvZG9jcyNsaW5rXzIwMVxudHlwZSBCbG9ja2NoYWlyUmF3VHJhbnNhY3Rpb24gPSB7XG4gIHJhd190cmFuc2FjdGlvbjogc3RyaW5nO1xufTtcblxuZXhwb3J0IGNsYXNzIEJsb2NrY2hhaXJBcGkgaW1wbGVtZW50cyBBZGRyZXNzQXBpLCBVdHhvQXBpIHtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IGFwaVRva2VuPzogc3RyaW5nO1xuXG4gIHN0YXRpYyBmb3JDb2luKGNvaW5OYW1lOiBzdHJpbmcsIHBhcmFtczogeyBhcGlUb2tlbj86IHN0cmluZzsgaHR0cENsaWVudD86IEh0dHBDbGllbnQgfSA9IHt9KTogQmxvY2tjaGFpckFwaSB7XG4gICAgLy8gaHR0cHM6Ly9ibG9ja2NoYWlyLmNvbS9hcGkvZG9jcyNsaW5rX00wXG4gICAgbGV0IGJsb2NrY2hhaW47XG4gICAgc3dpdGNoIChjb2luTmFtZSkge1xuICAgICAgY2FzZSAnYnRjJzpcbiAgICAgICAgYmxvY2tjaGFpbiA9ICdiaXRjb2luJztcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICd0YnRjJzpcbiAgICAgICAgYmxvY2tjaGFpbiA9ICdiaXRjb2luL3Rlc3RuZXQnO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ2Jzdic6XG4gICAgICAgIGJsb2NrY2hhaW4gPSAnYml0Y29pbi1zdic7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnYmNoJzpcbiAgICAgICAgYmxvY2tjaGFpbiA9ICdiaXRjb2luLWNhc2gnO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ2JjaGEnOlxuICAgICAgICBibG9ja2NoYWluID0gJ2VjYXNoJztcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdsdGMnOlxuICAgICAgICBibG9ja2NoYWluID0gJ2xpdGVjb2luJztcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdkYXNoJzpcbiAgICAgICAgYmxvY2tjaGFpbiA9ICdkYXNoJztcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdkb2dlJzpcbiAgICAgICAgYmxvY2tjaGFpbiA9ICdkb2dlY29pbic7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnemVjJzpcbiAgICAgICAgYmxvY2tjaGFpbiA9ICd6Y2FzaCc7XG4gICAgICAgIGJyZWFrO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgdGhyb3cgbmV3IEFwaU5vdEltcGxlbWVudGVkRXJyb3IoY29pbk5hbWUpO1xuICAgIH1cbiAgICBjb25zdCB7IGh0dHBDbGllbnQgPSBuZXcgQmFzZUh0dHBDbGllbnQoKSB9ID0gcGFyYW1zO1xuICAgIHJldHVybiBuZXcgQmxvY2tjaGFpckFwaShodHRwQ2xpZW50LndpdGhCYXNlVXJsKGBodHRwczovL2FwaS5ibG9ja2NoYWlyLmNvbS8ke2Jsb2NrY2hhaW59YCksIHBhcmFtcy5hcGlUb2tlbik7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihwdWJsaWMgY2xpZW50OiBIdHRwQ2xpZW50LCBhcGlUb2tlbj86IHN0cmluZykge1xuICAgIHRoaXMuYXBpVG9rZW4gPSBhcGlUb2tlbiA/PyBwcm9jZXNzLmVudi5CTE9DS0NIQUlSX1RPS0VOO1xuICB9XG5cbiAgZ2V0PFQ+KHBhdGg6IHN0cmluZyk6IFByb21pc2U8UmVzcG9uc2U8VD4+IHtcbiAgICByZXR1cm4gdGhpcy5jbGllbnQuZ2V0KHBhdGggKyAodGhpcy5hcGlUb2tlbiA/IGA/a2V5PSR7dGhpcy5hcGlUb2tlbn1gIDogJycpKTtcbiAgfVxuXG4gIGFzeW5jIGdldEFkZHJlc3NJbmZvKGFkZHJlc3M6IHN0cmluZyk6IFByb21pc2U8QWRkcmVzc0luZm8+IHtcbiAgICBpZiAoIWFkZHJlc3MgfHwgYWRkcmVzcy5sZW5ndGggPT09IDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignaW52YWxpZCBhZGRyZXNzJyk7XG4gICAgfVxuICAgIC8vIGh0dHBzOi8vYmxvY2tjaGFpci5jb20vYXBpL2RvY3MjbGlua18zMDBcbiAgICByZXR1cm4gKGF3YWl0IHRoaXMuZ2V0PEJsb2NrY2hhaXJSZWNvcmRSZXNwb25zZTxCbG9ja2NoYWlyQWRkcmVzcz4+KGAvZGFzaGJvYXJkcy9hZGRyZXNzLyR7YWRkcmVzc31gKSkubWFwKFxuICAgICAgKGJvZHkpID0+IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICB0eENvdW50OiBib2R5LmRhdGFbYWRkcmVzc10uYWRkcmVzcy50cmFuc2FjdGlvbl9jb3VudCxcbiAgICAgICAgICBiYWxhbmNlOiBib2R5LmRhdGFbYWRkcmVzc10uYWRkcmVzcy5iYWxhbmNlLFxuICAgICAgICB9O1xuICAgICAgfVxuICAgICk7XG4gIH1cblxuICBhc3luYyBnZXRVbnNwZW50c0ZvckFkZHJlc3NlcyhhZGRyOiBzdHJpbmdbXSk6IFByb21pc2U8VW5zcGVudFtdPiB7XG4gICAgaWYgKGFkZHIubGVuZ3RoID4gMTAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYGludmFsaWQgc2l6ZWApO1xuICAgIH1cblxuICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgdGhpcy5nZXQ8QmxvY2tjaGFpclJlc3BvbnNlPHsgdXR4bzogQmxvY2tjaGFpclVuc3BlbnRbXSB9Pj4oXG4gICAgICBgL2Rhc2hib2FyZHMvYWRkcmVzc2VzLyR7YWRkci5qb2luKCcsJyl9YFxuICAgICk7XG5cbiAgICByZXR1cm4gcmVzcG9uc2UubWFwKChib2R5KSA9PiB7XG4gICAgICByZXR1cm4gYm9keS5kYXRhLnV0eG9cbiAgICAgICAgLmZsYXRNYXAoKHVuc3BlbnQpOiBVbnNwZW50IHwgdW5kZWZpbmVkID0+IHtcbiAgICAgICAgICBpZiAoYWRkci5pbmNsdWRlcyh1bnNwZW50LmFkZHJlc3MpKSB7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICBpZDogZm9ybWF0T3V0cHV0SWQoeyB0eGlkOiB1bnNwZW50LnRyYW5zYWN0aW9uX2hhc2gsIHZvdXQ6IHVuc3BlbnQuaW5kZXggfSksXG4gICAgICAgICAgICAgIGFkZHJlc3M6IHVuc3BlbnQuYWRkcmVzcyxcbiAgICAgICAgICAgICAgdmFsdWU6IHVuc3BlbnQudmFsdWUsXG4gICAgICAgICAgICB9O1xuICAgICAgICAgIH1cbiAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgICAgICB9KVxuICAgICAgICAuZmlsdGVyKCh1bnNwZW50KTogdW5zcGVudCBpcyBVbnNwZW50ID0+IHVuc3BlbnQgIT09IHVuZGVmaW5lZCk7XG4gICAgfSk7XG4gIH1cblxuICBhc3luYyBnZXRUcmFuc2FjdGlvbih0eGlkOiBzdHJpbmcpOiBQcm9taXNlPEJsb2NrY2hhaXJUcmFuc2FjdGlvbj4ge1xuICAgIHJldHVybiAoYXdhaXQgdGhpcy5nZXQ8QmxvY2tjaGFpclJlY29yZFJlc3BvbnNlPEJsb2NrY2hhaXJUcmFuc2FjdGlvbj4+KGAvZGFzaGJvYXJkcy90cmFuc2FjdGlvbi8ke3R4aWR9YCkpLm1hcChcbiAgICAgIChib2R5KSA9PiB7XG4gICAgICAgIHJldHVybiB1bndyYXBSZWNvcmQoYm9keSwgdHhpZCk7XG4gICAgICB9XG4gICAgKTtcbiAgfVxuXG4gIGFzeW5jIGdldFRyYW5zYWN0aW9uU3RhdHVzKHR4aWQ6IHN0cmluZyk6IFByb21pc2U8VHJhbnNhY3Rpb25TdGF0dXM+IHtcbiAgICBsZXQgdHJhbnNhY3Rpb247XG4gICAgdHJ5IHtcbiAgICAgIHRyYW5zYWN0aW9uID0gKGF3YWl0IHRoaXMuZ2V0VHJhbnNhY3Rpb24odHhpZCkpLnRyYW5zYWN0aW9uO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIGlmIChlIGluc3RhbmNlb2YgRXJyb3JLZXlOb3RJblJlc3BvbnNlKSB7XG4gICAgICAgIHJldHVybiB7IGZvdW5kOiBmYWxzZSB9O1xuICAgICAgfVxuICAgICAgdGhyb3cgZTtcbiAgICB9XG4gICAgY29uc3QgeyBibG9ja19pZCwgdGltZSB9ID0gdHJhbnNhY3Rpb247XG4gICAgY29uc3QgZGF0ZSA9IG5ldyBEYXRlKERhdGUucGFyc2UodGltZS5yZXBsYWNlKCcgJywgJ1QnKSArICcuMDAwWicgLyogZm9yY2UgVVRDIHBhcnNpbmcgKi8pKTtcbiAgICByZXR1cm4gYmxvY2tfaWQgPT09IC0xXG4gICAgICA/IHsgZm91bmQ6IHRydWUsIGNvbmZpcm1lZDogZmFsc2UgfVxuICAgICAgOiB7XG4gICAgICAgICAgZm91bmQ6IHRydWUsXG4gICAgICAgICAgY29uZmlybWVkOiB0cnVlLFxuICAgICAgICAgIGJsb2NrSGVpZ2h0OiBibG9ja19pZCxcbiAgICAgICAgICBkYXRlLFxuICAgICAgICB9O1xuICB9XG5cbiAgYXN5bmMgZ2V0VHJhbnNhY3Rpb25JbnB1dHModHhpZDogc3RyaW5nKTogUHJvbWlzZTxVbnNwZW50W10+IHtcbiAgICByZXR1cm4gKGF3YWl0IHRoaXMuZ2V0VHJhbnNhY3Rpb24odHhpZCkpLmlucHV0cy5tYXAoKGkpID0+IHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGlkOiBmb3JtYXRPdXRwdXRJZCh7IHR4aWQ6IGkudHJhbnNhY3Rpb25faGFzaCwgdm91dDogaS5pbmRleCB9KSxcbiAgICAgICAgYWRkcmVzczogaS5yZWNpcGllbnQsXG4gICAgICAgIHZhbHVlOiBpLnZhbHVlLFxuICAgICAgfTtcbiAgICB9KTtcbiAgfVxuXG4gIGFzeW5jIGdldFRyYW5zYWN0aW9uSU8odHhpZDogc3RyaW5nKTogUHJvbWlzZTxUcmFuc2FjdGlvbklPPiB7XG4gICAgY29uc3QgdHggPSBhd2FpdCB0aGlzLmdldFRyYW5zYWN0aW9uKHR4aWQpO1xuICAgIGNvbnN0IGlucHV0cyA9IHR4LmlucHV0cy5tYXAoKGlucHV0KSA9PiB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBhZGRyZXNzOiBpbnB1dC5yZWNpcGllbnQsXG4gICAgICB9O1xuICAgIH0pO1xuICAgIGNvbnN0IG91dHB1dHMgPSB0eC5vdXRwdXRzLm1hcCgob3V0cHV0KSA9PiB7XG4gICAgICByZXR1cm4ge1xuICAgICAgICBhZGRyZXNzOiBvdXRwdXQucmVjaXBpZW50LFxuICAgICAgfTtcbiAgICB9KTtcbiAgICByZXR1cm4ge1xuICAgICAgaW5wdXRzLFxuICAgICAgb3V0cHV0cyxcbiAgICB9O1xuICB9XG5cbiAgYXN5bmMgZ2V0VHJhbnNhY3Rpb25TcGVuZHModHhpZDogc3RyaW5nKTogUHJvbWlzZTxPdXRwdXRTcGVuZFtdPiB7XG4gICAgcmV0dXJuIChhd2FpdCB0aGlzLmdldFRyYW5zYWN0aW9uKHR4aWQpKS5vdXRwdXRzLm1hcCgobykgPT5cbiAgICAgIG8uc3BlbmRpbmdfdHJhbnNhY3Rpb25faGFzaFxuICAgICAgICA/IHtcbiAgICAgICAgICAgIHR4aWQ6IG8uc3BlbmRpbmdfdHJhbnNhY3Rpb25faGFzaCxcbiAgICAgICAgICAgIHZpbjogby5zcGVuZGluZ19pbmRleCxcbiAgICAgICAgICB9XG4gICAgICAgIDogeyB0eGlkOiB1bmRlZmluZWQsIHZpbjogdW5kZWZpbmVkIH1cbiAgICApO1xuICB9XG5cbiAgYXN5bmMgZ2V0VHJhbnNhY3Rpb25IZXgodHhpZDogc3RyaW5nKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gKGF3YWl0IHRoaXMuZ2V0PEJsb2NrY2hhaXJSZWNvcmRSZXNwb25zZTxCbG9ja2NoYWlyUmF3VHJhbnNhY3Rpb24+PihgL3Jhdy90cmFuc2FjdGlvbi8ke3R4aWR9YCkpLm1hcChcbiAgICAgIChib2R5KSA9PiB7XG4gICAgICAgIHJldHVybiB1bndyYXBSZWNvcmQoYm9keSwgdHhpZCkucmF3X3RyYW5zYWN0aW9uO1xuICAgICAgfVxuICAgICk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -2,14 +2,16 @@ import { bitgo } from '@bitgo-beta/utxo-lib';
|
|
|
2
2
|
import { AddressApi, AddressInfo } from '../AddressApi';
|
|
3
3
|
import { OutputSpend, TransactionIO, UtxoApi } from '../UtxoApi';
|
|
4
4
|
import { HttpClient } from '../BaseHttpClient';
|
|
5
|
-
import { TransactionStatus } from '../TransactionApi';
|
|
6
|
-
|
|
7
|
-
export declare class BlockstreamApi implements AddressApi, UtxoApi {
|
|
5
|
+
import { BlockApi, TransactionStatus } from '../TransactionApi';
|
|
6
|
+
type Unspent = bitgo.Unspent;
|
|
7
|
+
export declare class BlockstreamApi implements AddressApi, BlockApi, UtxoApi {
|
|
8
8
|
client: HttpClient;
|
|
9
9
|
static forCoin(coinName: string, params?: {
|
|
10
10
|
httpClient?: HttpClient;
|
|
11
11
|
}): BlockstreamApi;
|
|
12
12
|
constructor(client: HttpClient);
|
|
13
|
+
getBlockIdAtHeight(height: number): Promise<string>;
|
|
14
|
+
getTransactionIds(hash: string): Promise<string[]>;
|
|
13
15
|
getAddressInfo(address: string): Promise<AddressInfo>;
|
|
14
16
|
getUnspentsForAddresses(addrs: string[]): Promise<Unspent[]>;
|
|
15
17
|
getTransactionHex(txid: string): Promise<string>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BlockstreamApi.d.ts","sourceRoot":"","sources":["../../../src/impl/BlockstreamApi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACjE,OAAO,EAAmC,UAAU,EAAa,MAAM,mBAAmB,CAAC;AAE3F,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"BlockstreamApi.d.ts","sourceRoot":"","sources":["../../../src/impl/BlockstreamApi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACjE,OAAO,EAAmC,UAAU,EAAa,MAAM,mBAAmB,CAAC;AAE3F,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAEhE,KAAK,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;AAkE7B,qBAAa,cAAe,YAAW,UAAU,EAAE,QAAQ,EAAE,OAAO;IAa/C,MAAM,EAAE,UAAU;IAZrC,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,GAAE;QAAE,UAAU,CAAC,EAAE,UAAU,CAAA;KAAO,GAAG,cAAc;gBAYvE,MAAM,EAAE,UAAU;IAE/B,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAKnD,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAKlD,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC;IAUrD,uBAAuB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAY5D,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAIhD,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAkB9D,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;IAMtD,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAsBtD,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;CAKjE"}
|
|
@@ -13,9 +13,6 @@ function toBitGoUnspent(u, address, value) {
|
|
|
13
13
|
};
|
|
14
14
|
}
|
|
15
15
|
class BlockstreamApi {
|
|
16
|
-
constructor(client) {
|
|
17
|
-
this.client = client;
|
|
18
|
-
}
|
|
19
16
|
static forCoin(coinName, params = {}) {
|
|
20
17
|
const { httpClient = new BaseHttpClient_1.BaseHttpClient() } = params;
|
|
21
18
|
switch (coinName) {
|
|
@@ -26,6 +23,17 @@ class BlockstreamApi {
|
|
|
26
23
|
}
|
|
27
24
|
throw new ApiBuilder_1.ApiNotImplementedError(coinName);
|
|
28
25
|
}
|
|
26
|
+
constructor(client) {
|
|
27
|
+
this.client = client;
|
|
28
|
+
}
|
|
29
|
+
async getBlockIdAtHeight(height) {
|
|
30
|
+
// https://github.com/Blockstream/esplora/blob/master/API.md#get-block-heightheight
|
|
31
|
+
return (await this.client.get(`/block-height/${height}`)).map((body) => body);
|
|
32
|
+
}
|
|
33
|
+
async getTransactionIds(hash) {
|
|
34
|
+
// https://github.com/Blockstream/esplora/blob/master/API.md#get-blockhashtxids
|
|
35
|
+
return (await this.client.get(`/block/${hash}/txids`)).map((body) => body);
|
|
36
|
+
}
|
|
29
37
|
async getAddressInfo(address) {
|
|
30
38
|
const response = await this.client.get(`/address/${address}`);
|
|
31
39
|
return response.map((body) => {
|
|
@@ -37,7 +45,7 @@ class BlockstreamApi {
|
|
|
37
45
|
}
|
|
38
46
|
async getUnspentsForAddresses(addrs) {
|
|
39
47
|
if (addrs.length !== 1) {
|
|
40
|
-
return (await BaseHttpClient_1.mapSeries(addrs, (a) => this.getUnspentsForAddresses([a]))).flat();
|
|
48
|
+
return (await (0, BaseHttpClient_1.mapSeries)(addrs, (a) => this.getUnspentsForAddresses([a]))).flat();
|
|
41
49
|
}
|
|
42
50
|
const [address] = addrs;
|
|
43
51
|
return (await this.client.get(`/address/${address}/utxo`)).map((unspents) => unspents.map((u) => toBitGoUnspent(u, address, u.value)));
|
|
@@ -86,4 +94,4 @@ class BlockstreamApi {
|
|
|
86
94
|
}
|
|
87
95
|
}
|
|
88
96
|
exports.BlockstreamApi = BlockstreamApi;
|
|
89
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQmxvY2tzdHJlYW1BcGkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvaW1wbC9CbG9ja3N0cmVhbUFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtREFBNkM7QUFHN0Msc0RBQTJGO0FBQzNGLDhDQUF1RDtBQUl2RCxNQUFNLGNBQWMsR0FBRyxnQkFBSyxDQUFDLGNBQWMsQ0FBQztBQXNDNUMsU0FBUyxjQUFjLENBQUMsQ0FBYSxFQUFFLE9BQWUsRUFBRSxLQUFhO0lBQ25FLE9BQU87UUFDTCxFQUFFLEVBQUUsY0FBYyxDQUFDLENBQUMsQ0FBQztRQUNyQixPQUFPO1FBQ1AsS0FBSztLQUNOLENBQUM7QUFDSixDQUFDO0FBcUJELE1BQWEsY0FBYztJQWF6QixZQUFtQixNQUFrQjtRQUFsQixXQUFNLEdBQU4sTUFBTSxDQUFZO0lBQUcsQ0FBQztJQVp6QyxNQUFNLENBQUMsT0FBTyxDQUFDLFFBQWdCLEVBQUUsU0FBc0MsRUFBRTtRQUN2RSxNQUFNLEVBQUUsVUFBVSxHQUFHLElBQUksK0JBQWMsRUFBRSxFQUFFLEdBQUcsTUFBTSxDQUFDO1FBQ3JELFFBQVEsUUFBUSxFQUFFO1lBQ2hCLEtBQUssS0FBSztnQkFDUixPQUFPLElBQUksY0FBYyxDQUFDLFVBQVUsQ0FBQyxXQUFXLENBQUMsOEJBQThCLENBQUMsQ0FBQyxDQUFDO1lBQ3BGLEtBQUssTUFBTTtnQkFDVCxPQUFPLElBQUksY0FBYyxDQUFDLFVBQVUsQ0FBQyxXQUFXLENBQUMsc0NBQXNDLENBQUMsQ0FBQyxDQUFDO1NBQzdGO1FBRUQsTUFBTSxJQUFJLG1DQUFzQixDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQzdDLENBQUM7SUFJRCxLQUFLLENBQUMsY0FBYyxDQUFDLE9BQWU7UUFDbEMsTUFBTSxRQUFRLEdBQUcsTUFBTSxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBaUIsWUFBWSxPQUFPLEVBQUUsQ0FBQyxDQUFDO1FBQzlFLE9BQU8sUUFB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RyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUM5RixDQUFDO0lBQ0osQ0FBQztDQUNGO0FBNUZELHdDQTRGQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGJpdGdvIH0gZnJvbSAnQGJpdGdvLWJldGEvdXR4by1saWInO1xuaW1wb3J0IHsgQWRkcmVzc0FwaSwgQWRkcmVzc0luZm8gfSBmcm9tICcuLi9BZGRyZXNzQXBpJztcbmltcG9ydCB7IE91dHB1dFNwZW5kLCBUcmFuc2FjdGlvbklPLCBVdHhvQXBpIH0gZnJvbSAnLi4vVXR4b0FwaSc7XG5pbXBvcnQgeyBBcGlSZXF1ZXN0RXJyb3IsIEJhc2VIdHRwQ2xpZW50LCBIdHRwQ2xpZW50LCBtYXBTZXJpZXMgfSBmcm9tICcuLi9CYXNlSHR0cENsaWVudCc7XG5pbXBvcnQgeyBBcGlOb3RJbXBsZW1lbnRlZEVycm9yIH0gZnJvbSAnLi4vQXBpQnVpbGRlcic7XG5pbXBvcnQgeyBUcmFuc2FjdGlvblN0YXR1cyB9IGZyb20gJy4uL1RyYW5zYWN0aW9uQXBpJztcblxudHlwZSBVbnNwZW50ID0gYml0Z28uVW5zcGVudDtcbmNvbnN0IGZvcm1hdE91dHB1dElkID0gYml0Z28uZm9ybWF0T3V0cHV0SWQ7XG5cbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9CbG9ja3N0cmVhbS9lc3Bsb3JhL2Jsb2IvbWFzdGVyL0FQSS5tZCNnZXQtYWRkcmVzc2FkZHJlc3NcbnR5cGUgRXNwbG9yYUFkZHJlc3NTdGF0cyA9IHtcbiAgdHhfY291bnQ6IG51bWJlcjtcbiAgZnVuZGVkX3R4b19zdW06IG51bWJlcjtcbiAgc3BlbnRfdHhvX3N1bTogbnVtYmVyO1xufTtcblxuLy8gaHR0cHM6Ly9naXRodWIuY29tL0Jsb2Nrc3RyZWFtL2VzcGxvcmEvYmxvYi9tYXN0ZXIvQVBJLm1kI2dldC1hZGRyZXNzYWRkcmVzc1xudHlwZSBFc3Bsb3JhQWRkcmVzcyA9IHtcbiAgYWRkcmVzczogc3RyaW5nO1xuICBjaGFpbl9zdGF0czogRXNwbG9yYUFkZHJlc3NTdGF0cztcbiAgbWVtcG9vbF9zdGFhdHM6IEVzcGxvcmFBZGRyZXNzU3RhdHM7XG59O1xuXG4vLyBodHRwczovL2dpdGh1Yi5jb20vQmxvY2tzdHJlYW0vZXNwbG9yYS9ibG9iL21hc3Rlci9BUEkubWQjZ2V0LWFkZHJlc3NhZGRyZXNzdXR4b1xudHlwZSBFc3Bsb3JhVmluID0ge1xuICB0eGlkOiBzdHJpbmc7XG4gIHZvdXQ6IG51bWJlcjtcbiAgc3RhdHVzOiB1bmtub3duO1xuICB2YWx1ZTogbnVtYmVyO1xuICBwcmV2b3V0OiBFc3Bsb3JhVm91dDtcbn07XG5cbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9CbG9ja3N0cmVhbS9lc3Bsb3JhL2Jsb2IvbWFzdGVyL0FQSS5tZCNnZXQtYWRkcmVzc2FkZHJlc3N1dHhvXG50eXBlIEVzcGxvcmFWb3V0ID0ge1xuICBzY3JpcHRwdWJrZXk6IHN0cmluZztcbiAgc2NyaXB0cHVia2V5X2FkZHJlc3M6IHN0cmluZztcbiAgdmFsdWU6IG51bWJlcjtcbn07XG5cbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9CbG9ja3N0cmVhbS9lc3Bsb3JhL2Jsb2IvbWFzdGVyL0FQSS5tZCNnZXQtdHh0eGlkb3V0c3BlbmR2b3V0XG50eXBlIEVzcGxvcmFPdXRzcGVuZCA9IHtcbiAgdHhpZDogc3RyaW5nO1xuICB2aW46IG51bWJlcjtcbn07XG5cbmZ1bmN0aW9uIHRvQml0R29VbnNwZW50KHU6IEVzcGxvcmFWaW4sIGFkZHJlc3M6IHN0cmluZywgdmFsdWU6IG51bWJlcik6IFVuc3BlbnQge1xuICByZXR1cm4ge1xuICAgIGlkOiBmb3JtYXRPdXRwdXRJZCh1KSxcbiAgICBhZGRyZXNzLFxuICAgIHZhbHVlLFxuICB9O1xufVxuXG4vLyBodHRwczovL2dpdGh1Yi5jb20vQmxvY2tzdHJlYW0vZXNwbG9yYS9ibG9iL21hc3Rlci9BUEkubWQjZ2V0LXR4dHhpZHN0YXR1c1xudHlwZSBFc3Bsb3JhU3RhdHVzID1cbiAgfCB7XG4gICAgICBjb25maXJtZWQ6IGZhbHNlO1xuICAgIH1cbiAgfCB7XG4gICAgICBjb25maXJtZWQ6IHRydWU7XG4gICAgICBibG9ja19oZWlnaHQ6IG51bWJlcjtcbiAgICAgIGJsb2NrX2hhc2g6IHN0cmluZztcbiAgICB9O1xuXG4vLyBodHRwczovL2dpdGh1Yi5jb20vQmxvY2tzdHJlYW0vZXNwbG9yYS9ibG9iL21hc3Rlci9BUEkubWQjZ2V0LXR4dHhpZFxudHlwZSBFc3Bsb3JhVHJhbnNhY3Rpb24gPSB7XG4gIHR4aWQ6IHN0cmluZztcbiAgdmluOiBFc3Bsb3JhVmluW107XG4gIHZvdXQ6IEVzcGxvcmFWb3V0W107XG4gIHN0YXR1czogRXNwbG9yYVN0YXR1cztcbn07XG5cbmV4cG9ydCBjbGFzcyBCbG9ja3N0cmVhbUFwaSBpbXBsZW1lbnRzIEFkZHJlc3NBcGksIFV0eG9BcGkge1xuICBzdGF0aWMgZm9yQ29pbihjb2luTmFtZTogc3RyaW5nLCBwYXJhbXM6IHsgaHR0cENsaWVudD86IEh0dHBDbGllbnQgfSA9IHt9KTogQmxvY2tzdHJlYW1BcGkge1xuICAgIGNvbnN0IHsgaHR0cENsaWVudCA9IG5ldyBCYXNlSHR0cENsaWVudCgpIH0gPSBwYXJhbXM7XG4gICAgc3dpdGNoIChjb2luTmFtZSkge1xuICAgICAgY2FzZSAnYnRjJzpcbiAgICAgICAgcmV0dXJuIG5ldyBCbG9ja3N0cmVhbUFwaShodHRwQ2xpZW50LndpdGhCYXNlVXJsKCdodHRwczovL2Jsb2Nrc3RyZWFtLmluZm8vYXBpJykpO1xuICAgICAgY2FzZSAndGJ0Yyc6XG4gICAgICAgIHJldHVybiBuZXcgQmxvY2tzdHJlYW1BcGkoaHR0cENsaWVudC53aXRoQmFzZVVybCgnaHR0cHM6Ly9ibG9ja3N0cmVhbS5pbmZvL3Rlc3RuZXQvYXBpJykpO1xuICAgIH1cblxuICAgIHRocm93IG5ldyBBcGlOb3RJbXBsZW1lbnRlZEVycm9yKGNvaW5OYW1lKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBjbGllbnQ6IEh0dHBDbGllbnQpIHt9XG5cbiAgYXN5bmMgZ2V0QWRkcmVzc0luZm8oYWRkcmVzczogc3RyaW5nKTogUHJvbWlzZTxBZGRyZXNzSW5mbz4ge1xuICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgdGhpcy5jbGllbnQuZ2V0PEVzcGxvcmFBZGRyZXNzPihgL2FkZHJlc3MvJHthZGRyZXNzfWApO1xuICAgIHJldHVybiByZXNwb25zZS5tYXAoKGJvZHkpID0+IHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHR4Q291bnQ6IGJvZHkuY2hhaW5fc3RhdHMudHhfY291bnQsXG4gICAgICAgIGJhbGFuY2U6IGJvZHkuY2hhaW5fc3RhdHMuZnVuZGVkX3R4b19zdW0gLSBib2R5LmNoYWluX3N0YXRzLnNwZW50X3R4b19zdW0sXG4gICAgICB9O1xuICAgIH0pO1xuICB9XG5cbiAgYXN5bmMgZ2V0VW5zcGVudHNGb3JBZGRyZXNzZXMoYWRkcnM6IHN0cmluZ1tdKTogUHJvbWlzZTxVbnNwZW50W10+IHtcbiAgICBpZiAoYWRkcnMubGVuZ3RoICE9PSAxKSB7XG4gICAgICByZXR1cm4gKGF3YWl0IG1hcFNlcmllcyhhZGRycywgKGEpID0+IHRoaXMuZ2V0VW5zcGVudHNGb3JBZGRyZXNzZXMoW2FdKSkpLmZsYXQoKTtcbiAgICB9XG5cbiAgICBjb25zdCBbYWRkcmVzc10gPSBhZGRycztcblxuICAgIHJldHVybiAoYXdhaXQgdGhpcy5jbGllbnQuZ2V0PEVzcGxvcmFWaW5bXT4oYC9hZGRyZXNzLyR7YWRkcmVzc30vdXR4b2ApKS5tYXAoKHVuc3BlbnRzKSA9PlxuICAgICAgdW5zcGVudHMubWFwKCh1KSA9PiB0b0JpdEdvVW5zcGVudCh1LCBhZGRyZXNzLCB1LnZhbHVlKSlcbiAgICApO1xuICB9XG5cbiAgYXN5bmMgZ2V0VHJhbnNhY3Rpb25IZXgodHhpZDogc3RyaW5nKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gKGF3YWl0IHRoaXMuY2xpZW50LmdldDxzdHJpbmc+KGAvdHgvJHt0eGlkfS9oZXhgKSkubWFwKCh2KSA9PiB2KTtcbiAgfVxuXG4gIGFzeW5jIGdldFRyYW5zYWN0aW9uU3RhdHVzKHR4aWQ6IHN0cmluZyk6IFByb21pc2U8VHJhbnNhY3Rpb25TdGF0dXM+IHtcbiAgICB0cnkge1xuICAgICAgcmV0dXJuIChhd2FpdCB0aGlzLmNsaWVudC5nZXQ8RXNwbG9yYVRyYW5zYWN0aW9uPihgL3R4LyR7dHhpZH1gKSkubWFwKCh7IHN0YXR1cyB9KSA9PlxuICAgICAgICBzdGF0dXMuY29uZmlybWVkXG4gICAgICAgICAgPyB7IGZvdW5kOiB0cnVlLCBjb25maXJtZWQ6IHRydWUsIGJsb2NrSGVpZ2h0OiBzdGF0dXMuYmxvY2tfaGVpZ2h0LCBibG9ja0hhc2g6IHN0YXR1cy5ibG9ja19oYXNoIH1cbiAgICAgICAgICA6IHsgZm91bmQ6IHRydWUsIGNvbmZpcm1lZDogZmFsc2UgfVxuICAgICAgKTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICBpZiAoZSBpbnN0YW5jZW9mIEFwaVJlcXVlc3RFcnJvcikge1xuICAgICAgICBjb25zdCByZWFzb24gPSBlLnJlYXNvbiBhcyBhbnk7XG4gICAgICAgIGlmIChyZWFzb24ucmVzcG9uc2Uuc3RhdHVzID09PSA0MDQgJiYgcmVhc29uLnJlc3BvbnNlLnRleHQgPT09ICdUcmFuc2FjdGlvbiBub3QgZm91bmQnKSB7XG4gICAgICAgICAgcmV0dXJuIHsgZm91bmQ6IGZhbHNlIH07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHRocm93IGU7XG4gICAgfVxuICB9XG5cbiAgYXN5bmMgZ2V0VHJhbnNhY3Rpb25JbnB1dHModHhpZDogc3RyaW5nKTogUHJvbWlzZTxVbnNwZW50W10+IHtcbiAgICByZXR1cm4gKGF3YWl0IHRoaXMuY2xpZW50LmdldDxFc3Bsb3JhVHJhbnNhY3Rpb24+KGAvdHgvJHt0eGlkfWApKS5tYXAoKGJvZHkpID0+XG4gICAgICBib2R5LnZpbi5tYXAoKHUpID0+IHRvQml0R29VbnNwZW50KHUsIHUucHJldm91dC5zY3JpcHRwdWJrZXlfYWRkcmVzcywgdS5wcmV2b3V0LnZhbHVlKSlcbiAgICApO1xuICB9XG5cbiAgYXN5bmMgZ2V0VHJhbnNhY3Rpb25JTyh0eGlkOiBzdHJpbmcpOiBQcm9taXNlPFRyYW5zYWN0aW9uSU8+IHtcbiAgICBjb25zdCB0eCA9IGF3YWl0IHRoaXMuY2xpZW50LmdldDxFc3Bsb3JhVHJhbnNhY3Rpb24+KGAvdHgvJHt0eGlkfWApO1xuICAgIGNvbnN0IGlucHV0cyA9IHR4Lm1hcCgoYm9keSkgPT5cbiAgICAgIGJvZHkudmluLm1hcCgodSkgPT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIGFkZHJlc3M6IHUucHJldm91dC5zY3JpcHRwdWJrZXlfYWRkcmVzcyxcbiAgICAgICAgfTtcbiAgICAgIH0pXG4gICAgKTtcbiAgICBjb25zdCBvdXRwdXRzID0gdHgubWFwKChib2R5KSA9PlxuICAgICAgYm9keS52b3V0Lm1hcCgodSkgPT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIGFkZHJlc3M6IHUuc2NyaXB0cHVia2V5X2FkZHJlc3MsXG4gICAgICAgIH07XG4gICAgICB9KVxuICAgICk7XG4gICAgcmV0dXJuIHtcbiAgICAgIGlucHV0cyxcbiAgICAgIG91dHB1dHMsXG4gICAgfTtcbiAgfVxuXG4gIGFzeW5jIGdldFRyYW5zYWN0aW9uU3BlbmRzKHR4aWQ6IHN0cmluZyk6IFByb21pc2U8T3V0cHV0U3BlbmRbXT4ge1xuICAgIHJldHVybiAoYXdhaXQgdGhpcy5jbGllbnQuZ2V0PEVzcGxvcmFPdXRzcGVuZFtdPihgL3R4LyR7dHhpZH0vb3V0c3BlbmRzYCkpLm1hcCgoYXJyKSA9PlxuICAgICAgYXJyLm1hcCgodikgPT4gKHYudHhpZCA/IHsgdHhpZDogdi50eGlkLCB2aW46IHYudmluIH0gOiB7IHR4aWQ6IHVuZGVmaW5lZCwgdmluOiB1bmRlZmluZWQgfSkpXG4gICAgKTtcbiAgfVxufVxuIl19
|
|
97
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQmxvY2tzdHJlYW1BcGkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvaW1wbC9CbG9ja3N0cmVhbUFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtREFBNkM7QUFHN0Msc0RBQTJGO0FBQzNGLDhDQUF1RDtBQUl2RCxNQUFNLGNBQWMsR0FBRyxnQkFBSyxDQUFDLGNBQWMsQ0FBQztBQXNDNUMsU0FBUyxjQUFjLENBQUMsQ0FBYSxFQUFFLE9BQWUsRUFBRSxLQUFhO0lBQ25FLE9BQU87UUFDTCxFQUFFLEVBQUUsY0FBYyxDQUFDLENBQUMsQ0FBQztRQUNyQixPQUFPO1FBQ1AsS0FBSztLQUNOLENBQUM7QUFDSixDQUFDO0FBcUJELE1BQWEsY0FBYztJQUN6QixNQUFNLENBQUMsT0FBTyxDQUFDLFFBQWdCLEVBQUUsU0FBc0MsRUFBRTtRQUN2RSxNQUFNLEVBQUUsVUFBVSxHQUFHLElBQUksK0JBQWMsRUFBRSxFQUFFLEdBQUcsTUFBTSxDQUFDO1FBQ3JELFFBQVEsUUFBUSxFQUFFLENBQUM7WUFDakIsS0FBSyxLQUFLO2dCQUNSLE9BQU8sSUFBSSxjQUFjLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyw4QkFBOEIsQ0FBQyxDQUFDLENBQUM7WUFDcEYsS0FBSyxNQUFNO2dCQUNULE9BQU8sSUFBSSxjQUFjLENBQUMsVUFBVSxDQUFDLFdBQVcsQ0FBQyxzQ0FBc0MsQ0FBQyxDQUFDLENBQUM7UUFDOUYsQ0FBQztRQUVELE1BQU0sSUFBSSxtQ0FBc0IsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRUQsWUFBbUIsTUFBa0I7UUFBbEIsV0FBTSxHQUFOLE1BQU0sQ0FBWTtJQUFHLENBQUM7SUFFekMsS0FBSyxDQUFDLGtCQUFrQixDQUFDLE1BQWM7UUFDckMsbUZBQW1GO1FBQ25GLE9BQU8sQ0FBQyxNQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFTLGlCQUFpQixNQUFNLEVBQUUsQ0FB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QUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtZQUNsQixPQUFPO2dCQUNMLE9BQU8sRUFBRSxDQUFDLENBQUMsb0JBQW9CO2FBQ2hDLENBQUM7UUFDSixDQUFDLENBQUMsQ0FDSCxDQUFDO1FBQ0YsT0FBTztZQUNMLE1BQU07WUFDTixPQUFPO1NBQ1IsQ0FBQztJQUNKLENBQUM7SUFFRCxLQUFLLENBQUMsb0JBQW9CLENBQUMsSUFBWTtRQUNyQyxPQUFPLENBQUMsTUFBTSxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBb0IsT0FBTyxJQUFJLFlBQVksQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FDckYsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsSUFBSSxFQUFFLEdBQUcsRUFBRSxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUM5RixDQUFDO0lBQ0osQ0FBQztDQUNGO0FBdEdELHdDQXNHQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGJpdGdvIH0gZnJvbSAnQGJpdGdvLWJldGEvdXR4by1saWInO1xuaW1wb3J0IHsgQWRkcmVzc0FwaSwgQWRkcmVzc0luZm8gfSBmcm9tICcuLi9BZGRyZXNzQXBpJztcbmltcG9ydCB7IE91dHB1dFNwZW5kLCBUcmFuc2FjdGlvbklPLCBVdHhvQXBpIH0gZnJvbSAnLi4vVXR4b0FwaSc7XG5pbXBvcnQgeyBBcGlSZXF1ZXN0RXJyb3IsIEJhc2VIdHRwQ2xpZW50LCBIdHRwQ2xpZW50LCBtYXBTZXJpZXMgfSBmcm9tICcuLi9CYXNlSHR0cENsaWVudCc7XG5pbXBvcnQgeyBBcGlOb3RJbXBsZW1lbnRlZEVycm9yIH0gZnJvbSAnLi4vQXBpQnVpbGRlcic7XG5pbXBvcnQgeyBCbG9ja0FwaSwgVHJhbnNhY3Rpb25TdGF0dXMgfSBmcm9tICcuLi9UcmFuc2FjdGlvbkFwaSc7XG5cbnR5cGUgVW5zcGVudCA9IGJpdGdvLlVuc3BlbnQ7XG5jb25zdCBmb3JtYXRPdXRwdXRJZCA9IGJpdGdvLmZvcm1hdE91dHB1dElkO1xuXG4vLyBodHRwczovL2dpdGh1Yi5jb20vQmxvY2tzdHJlYW0vZXNwbG9yYS9ibG9iL21hc3Rlci9BUEkubWQjZ2V0LWFkZHJlc3NhZGRyZXNzXG50eXBlIEVzcGxvcmFBZGRyZXNzU3RhdHMgPSB7XG4gIHR4X2NvdW50OiBudW1iZXI7XG4gIGZ1bmRlZF90eG9fc3VtOiBudW1iZXI7XG4gIHNwZW50X3R4b19zdW06IG51bWJlcjtcbn07XG5cbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9CbG9ja3N0cmVhbS9lc3Bsb3JhL2Jsb2IvbWFzdGVyL0FQSS5tZCNnZXQtYWRkcmVzc2FkZHJlc3NcbnR5cGUgRXNwbG9yYUFkZHJlc3MgPSB7XG4gIGFkZHJlc3M6IHN0cmluZztcbiAgY2hhaW5fc3RhdHM6IEVzcGxvcmFBZGRyZXNzU3RhdHM7XG4gIG1lbXBvb2xfc3RhYXRzOiBFc3Bsb3JhQWRkcmVzc1N0YXRzO1xufTtcblxuLy8gaHR0cHM6Ly9naXRodWIuY29tL0Jsb2Nrc3RyZWFtL2VzcGxvcmEvYmxvYi9tYXN0ZXIvQVBJLm1kI2dldC1hZGRyZXNzYWRkcmVzc3V0eG9cbnR5cGUgRXNwbG9yYVZpbiA9IHtcbiAgdHhpZDogc3RyaW5nO1xuICB2b3V0OiBudW1iZXI7XG4gIHN0YXR1czogdW5rbm93bjtcbiAgdmFsdWU6IG51bWJlcjtcbiAgcHJldm91dDogRXNwbG9yYVZvdXQ7XG59O1xuXG4vLyBodHRwczovL2dpdGh1Yi5jb20vQmxvY2tzdHJlYW0vZXNwbG9yYS9ibG9iL21hc3Rlci9BUEkubWQjZ2V0LWFkZHJlc3NhZGRyZXNzdXR4b1xudHlwZSBFc3Bsb3JhVm91dCA9IHtcbiAgc2NyaXB0cHVia2V5OiBzdHJpbmc7XG4gIHNjcmlwdHB1YmtleV9hZGRyZXNzOiBzdHJpbmc7XG4gIHZhbHVlOiBudW1iZXI7XG59O1xuXG4vLyBodHRwczovL2dpdGh1Yi5jb20vQmxvY2tzdHJlYW0vZXNwbG9yYS9ibG9iL21hc3Rlci9BUEkubWQjZ2V0LXR4dHhpZG91dHNwZW5kdm91dFxudHlwZSBFc3Bsb3JhT3V0c3BlbmQgPSB7XG4gIHR4aWQ6IHN0cmluZztcbiAgdmluOiBudW1iZXI7XG59O1xuXG5mdW5jdGlvbiB0b0JpdEdvVW5zcGVudCh1OiBFc3Bsb3JhVmluLCBhZGRyZXNzOiBzdHJpbmcsIHZhbHVlOiBudW1iZXIpOiBVbnNwZW50IHtcbiAgcmV0dXJuIHtcbiAgICBpZDogZm9ybWF0T3V0cHV0SWQodSksXG4gICAgYWRkcmVzcyxcbiAgICB2YWx1ZSxcbiAgfTtcbn1cblxuLy8gaHR0cHM6Ly9naXRodWIuY29tL0Jsb2Nrc3RyZWFtL2VzcGxvcmEvYmxvYi9tYXN0ZXIvQVBJLm1kI2dldC10eHR4aWRzdGF0dXNcbnR5cGUgRXNwbG9yYVN0YXR1cyA9XG4gIHwge1xuICAgICAgY29uZmlybWVkOiBmYWxzZTtcbiAgICB9XG4gIHwge1xuICAgICAgY29uZmlybWVkOiB0cnVlO1xuICAgICAgYmxvY2tfaGVpZ2h0OiBudW1iZXI7XG4gICAgICBibG9ja19oYXNoOiBzdHJpbmc7XG4gICAgfTtcblxuLy8gaHR0cHM6Ly9naXRodWIuY29tL0Jsb2Nrc3RyZWFtL2VzcGxvcmEvYmxvYi9tYXN0ZXIvQVBJLm1kI2dldC10eHR4aWRcbnR5cGUgRXNwbG9yYVRyYW5zYWN0aW9uID0ge1xuICB0eGlkOiBzdHJpbmc7XG4gIHZpbjogRXNwbG9yYVZpbltdO1xuICB2b3V0OiBFc3Bsb3JhVm91dFtdO1xuICBzdGF0dXM6IEVzcGxvcmFTdGF0dXM7XG59O1xuXG5leHBvcnQgY2xhc3MgQmxvY2tzdHJlYW1BcGkgaW1wbGVtZW50cyBBZGRyZXNzQXBpLCBCbG9ja0FwaSwgVXR4b0FwaSB7XG4gIHN0YXRpYyBmb3JDb2luKGNvaW5OYW1lOiBzdHJpbmcsIHBhcmFtczogeyBodHRwQ2xpZW50PzogSHR0cENsaWVudCB9ID0ge30pOiBCbG9ja3N0cmVhbUFwaSB7XG4gICAgY29uc3QgeyBodHRwQ2xpZW50ID0gbmV3IEJhc2VIdHRwQ2xpZW50KCkgfSA9IHBhcmFtcztcbiAgICBzd2l0Y2ggKGNvaW5OYW1lKSB7XG4gICAgICBjYXNlICdidGMnOlxuICAgICAgICByZXR1cm4gbmV3IEJsb2Nrc3RyZWFtQXBpKGh0dHBDbGllbnQud2l0aEJhc2VVcmwoJ2h0dHBzOi8vYmxvY2tzdHJlYW0uaW5mby9hcGknKSk7XG4gICAgICBjYXNlICd0YnRjJzpcbiAgICAgICAgcmV0dXJuIG5ldyBCbG9ja3N0cmVhbUFwaShodHRwQ2xpZW50LndpdGhCYXNlVXJsKCdodHRwczovL2Jsb2Nrc3RyZWFtLmluZm8vdGVzdG5ldC9hcGknKSk7XG4gICAgfVxuXG4gICAgdGhyb3cgbmV3IEFwaU5vdEltcGxlbWVudGVkRXJyb3IoY29pbk5hbWUpO1xuICB9XG5cbiAgY29uc3RydWN0b3IocHVibGljIGNsaWVudDogSHR0cENsaWVudCkge31cblxuICBhc3luYyBnZXRCbG9ja0lkQXRIZWlnaHQoaGVpZ2h0OiBudW1iZXIpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIC8vIGh0dHBzOi8vZ2l0aHViLmNvbS9CbG9ja3N0cmVhbS9lc3Bsb3JhL2Jsb2IvbWFzdGVyL0FQSS5tZCNnZXQtYmxvY2staGVpZ2h0aGVpZ2h0XG4gICAgcmV0dXJuIChhd2FpdCB0aGlzLmNsaWVudC5nZXQ8c3RyaW5nPihgL2Jsb2NrLWhlaWdodC8ke2hlaWdodH1gKSkubWFwKChib2R5KSA9PiBib2R5KTtcbiAgfVxuXG4gIGFzeW5jIGdldFRyYW5zYWN0aW9uSWRzKGhhc2g6IHN0cmluZyk6IFByb21pc2U8c3RyaW5nW10+IHtcbiAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vQmxvY2tzdHJlYW0vZXNwbG9yYS9ibG9iL21hc3Rlci9BUEkubWQjZ2V0LWJsb2NraGFzaHR4aWRzXG4gICAgcmV0dXJuIChhd2FpdCB0aGlzLmNsaWVudC5nZXQ8c3RyaW5nW10+KGAvYmxvY2svJHtoYXNofS90eGlkc2ApKS5tYXAoKGJvZHkpID0+IGJvZHkpO1xuICB9XG5cbiAgYXN5bmMgZ2V0QWRkcmVzc0luZm8oYWRkcmVzczogc3RyaW5nKTogUHJvbWlzZTxBZGRyZXNzSW5mbz4ge1xuICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgdGhpcy5jbGllbnQuZ2V0PEVzcGxvcmFBZGRyZXNzPihgL2FkZHJlc3MvJHthZGRyZXNzfWApO1xuICAgIHJldHVybiByZXNwb25zZS5tYXAoKGJvZHkpID0+IHtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIHR4Q291bnQ6IGJvZHkuY2hhaW5fc3RhdHMudHhfY291bnQsXG4gICAgICAgIGJhbGFuY2U6IGJvZHkuY2hhaW5fc3RhdHMuZnVuZGVkX3R4b19zdW0gLSBib2R5LmNoYWluX3N0YXRzLnNwZW50X3R4b19zdW0sXG4gICAgICB9O1xuICAgIH0pO1xuICB9XG5cbiAgYXN5bmMgZ2V0VW5zcGVudHNGb3JBZGRyZXNzZXMoYWRkcnM6IHN0cmluZ1tdKTogUHJvbWlzZTxVbnNwZW50W10+IHtcbiAgICBpZiAoYWRkcnMubGVuZ3RoICE9PSAxKSB7XG4gICAgICByZXR1cm4gKGF3YWl0IG1hcFNlcmllcyhhZGRycywgKGEpID0+IHRoaXMuZ2V0VW5zcGVudHNGb3JBZGRyZXNzZXMoW2FdKSkpLmZsYXQoKTtcbiAgICB9XG5cbiAgICBjb25zdCBbYWRkcmVzc10gPSBhZGRycztcblxuICAgIHJldHVybiAoYXdhaXQgdGhpcy5jbGllbnQuZ2V0PEVzcGxvcmFWaW5bXT4oYC9hZGRyZXNzLyR7YWRkcmVzc30vdXR4b2ApKS5tYXAoKHVuc3BlbnRzKSA9PlxuICAgICAgdW5zcGVudHMubWFwKCh1KSA9PiB0b0JpdEdvVW5zcGVudCh1LCBhZGRyZXNzLCB1LnZhbHVlKSlcbiAgICApO1xuICB9XG5cbiAgYXN5bmMgZ2V0VHJhbnNhY3Rpb25IZXgodHhpZDogc3RyaW5nKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gKGF3YWl0IHRoaXMuY2xpZW50LmdldDxzdHJpbmc+KGAvdHgvJHt0eGlkfS9oZXhgKSkubWFwKCh2KSA9PiB2KTtcbiAgfVxuXG4gIGFzeW5jIGdldFRyYW5zYWN0aW9uU3RhdHVzKHR4aWQ6IHN0cmluZyk6IFByb21pc2U8VHJhbnNhY3Rpb25TdGF0dXM+IHtcbiAgICB0cnkge1xuICAgICAgcmV0dXJuIChhd2FpdCB0aGlzLmNsaWVudC5nZXQ8RXNwbG9yYVRyYW5zYWN0aW9uPihgL3R4LyR7dHhpZH1gKSkubWFwKCh7IHN0YXR1cyB9KSA9PlxuICAgICAgICBzdGF0dXMuY29uZmlybWVkXG4gICAgICAgICAgPyB7IGZvdW5kOiB0cnVlLCBjb25maXJtZWQ6IHRydWUsIGJsb2NrSGVpZ2h0OiBzdGF0dXMuYmxvY2tfaGVpZ2h0LCBibG9ja0hhc2g6IHN0YXR1cy5ibG9ja19oYXNoIH1cbiAgICAgICAgICA6IHsgZm91bmQ6IHRydWUsIGNvbmZpcm1lZDogZmFsc2UgfVxuICAgICAgKTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICBpZiAoZSBpbnN0YW5jZW9mIEFwaVJlcXVlc3RFcnJvcikge1xuICAgICAgICBjb25zdCByZWFzb24gPSBlLnJlYXNvbiBhcyBhbnk7XG4gICAgICAgIGlmIChyZWFzb24ucmVzcG9uc2Uuc3RhdHVzID09PSA0MDQgJiYgcmVhc29uLnJlc3BvbnNlLnRleHQgPT09ICdUcmFuc2FjdGlvbiBub3QgZm91bmQnKSB7XG4gICAgICAgICAgcmV0dXJuIHsgZm91bmQ6IGZhbHNlIH07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIHRocm93IGU7XG4gICAgfVxuICB9XG5cbiAgYXN5bmMgZ2V0VHJhbnNhY3Rpb25JbnB1dHModHhpZDogc3RyaW5nKTogUHJvbWlzZTxVbnNwZW50W10+IHtcbiAgICByZXR1cm4gKGF3YWl0IHRoaXMuY2xpZW50LmdldDxFc3Bsb3JhVHJhbnNhY3Rpb24+KGAvdHgvJHt0eGlkfWApKS5tYXAoKGJvZHkpID0+XG4gICAgICBib2R5LnZpbi5tYXAoKHUpID0+IHRvQml0R29VbnNwZW50KHUsIHUucHJldm91dC5zY3JpcHRwdWJrZXlfYWRkcmVzcywgdS5wcmV2b3V0LnZhbHVlKSlcbiAgICApO1xuICB9XG5cbiAgYXN5bmMgZ2V0VHJhbnNhY3Rpb25JTyh0eGlkOiBzdHJpbmcpOiBQcm9taXNlPFRyYW5zYWN0aW9uSU8+IHtcbiAgICBjb25zdCB0eCA9IGF3YWl0IHRoaXMuY2xpZW50LmdldDxFc3Bsb3JhVHJhbnNhY3Rpb24+KGAvdHgvJHt0eGlkfWApO1xuICAgIGNvbnN0IGlucHV0cyA9IHR4Lm1hcCgoYm9keSkgPT5cbiAgICAgIGJvZHkudmluLm1hcCgodSkgPT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIGFkZHJlc3M6IHUucHJldm91dC5zY3JpcHRwdWJrZXlfYWRkcmVzcyxcbiAgICAgICAgfTtcbiAgICAgIH0pXG4gICAgKTtcbiAgICBjb25zdCBvdXRwdXRzID0gdHgubWFwKChib2R5KSA9PlxuICAgICAgYm9keS52b3V0Lm1hcCgodSkgPT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIGFkZHJlc3M6IHUuc2NyaXB0cHVia2V5X2FkZHJlc3MsXG4gICAgICAgIH07XG4gICAgICB9KVxuICAgICk7XG4gICAgcmV0dXJuIHtcbiAgICAgIGlucHV0cyxcbiAgICAgIG91dHB1dHMsXG4gICAgfTtcbiAgfVxuXG4gIGFzeW5jIGdldFRyYW5zYWN0aW9uU3BlbmRzKHR4aWQ6IHN0cmluZyk6IFByb21pc2U8T3V0cHV0U3BlbmRbXT4ge1xuICAgIHJldHVybiAoYXdhaXQgdGhpcy5jbGllbnQuZ2V0PEVzcGxvcmFPdXRzcGVuZFtdPihgL3R4LyR7dHhpZH0vb3V0c3BlbmRzYCkpLm1hcCgoYXJyKSA9PlxuICAgICAgYXJyLm1hcCgodikgPT4gKHYudHhpZCA/IHsgdHhpZDogdi50eGlkLCB2aW46IHYudmluIH0gOiB7IHR4aWQ6IHVuZGVmaW5lZCwgdmluOiB1bmRlZmluZWQgfSkpXG4gICAgKTtcbiAgfVxufVxuIl19
|
package/dist/src/index.js
CHANGED
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
3
|
if (k2 === undefined) k2 = k;
|
|
4
|
-
Object.
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
5
9
|
}) : (function(o, m, k, k2) {
|
|
6
10
|
if (k2 === undefined) k2 = k;
|
|
7
11
|
o[k2] = m[k];
|
|
@@ -18,4 +22,4 @@ __exportStar(require("./BaseHttpClient"), exports);
|
|
|
18
22
|
__exportStar(require("./CachingHttpClient"), exports);
|
|
19
23
|
__exportStar(require("./impl/BlockchairApi"), exports);
|
|
20
24
|
__exportStar(require("./impl/BlockstreamApi"), exports);
|
|
21
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
25
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLCtDQUE2QjtBQUM3QiwrQ0FBNkI7QUFDN0IsbURBQWlDO0FBQ2pDLDRDQUEwQjtBQUMxQixtREFBaUM7QUFDakMsc0RBQW9DO0FBRXBDLHVEQUFxQztBQUNyQyx3REFBc0MiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL0FwaUJ1aWxkZXInO1xuZXhwb3J0ICogZnJvbSAnLi9BZGRyZXNzQXBpJztcbmV4cG9ydCAqIGZyb20gJy4vVHJhbnNhY3Rpb25BcGknO1xuZXhwb3J0ICogZnJvbSAnLi9VdHhvQXBpJztcbmV4cG9ydCAqIGZyb20gJy4vQmFzZUh0dHBDbGllbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9DYWNoaW5nSHR0cENsaWVudCc7XG5cbmV4cG9ydCAqIGZyb20gJy4vaW1wbC9CbG9ja2NoYWlyQXBpJztcbmV4cG9ydCAqIGZyb20gJy4vaW1wbC9CbG9ja3N0cmVhbUFwaSc7XG4iXX0=
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bitgo-beta/blockapis",
|
|
3
3
|
"description": "Access public block explorer APIs for a variety of coins",
|
|
4
|
-
"version": "1.3.3-alpha.
|
|
4
|
+
"version": "1.3.3-alpha.440",
|
|
5
5
|
"main": "dist/src/index.js",
|
|
6
6
|
"files": [
|
|
7
7
|
"dist/src/**/*"
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
"prepare": "npm run build",
|
|
14
14
|
"build": "yarn tsc --build --incremental --verbose .",
|
|
15
15
|
"lint": "eslint --quiet .",
|
|
16
|
-
"unit-test": "mocha",
|
|
16
|
+
"unit-test": "mocha --recursive test",
|
|
17
17
|
"fmt": "prettier --write '{bin,src,test}/**/*.{ts,js}'"
|
|
18
18
|
},
|
|
19
19
|
"repository": {
|
|
@@ -22,10 +22,9 @@
|
|
|
22
22
|
"directory": "modules/blockapis"
|
|
23
23
|
},
|
|
24
24
|
"dependencies": {
|
|
25
|
-
"@bitgo-beta/utxo-lib": "4.0.1-alpha.
|
|
25
|
+
"@bitgo-beta/utxo-lib": "4.0.1-alpha.440",
|
|
26
26
|
"@types/superagent": "4.1.16",
|
|
27
|
-
"
|
|
28
|
-
"superagent": "^7.1.1"
|
|
27
|
+
"superagent": "^9.0.1"
|
|
29
28
|
},
|
|
30
29
|
"lint-staged": {
|
|
31
30
|
"*.{js,ts}": [
|
|
@@ -37,5 +36,5 @@
|
|
|
37
36
|
"access": "public"
|
|
38
37
|
},
|
|
39
38
|
"license": "MIT",
|
|
40
|
-
"gitHead": "
|
|
39
|
+
"gitHead": "2977ba04f10121027c7f4f14d091cf6ee42a6ba9"
|
|
41
40
|
}
|