@bitgo/abstract-utxo 13.1.1 → 13.2.1

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.
Files changed (38) hide show
  1. package/dist/cjs/src/impl/btc/index.d.ts +1 -0
  2. package/dist/cjs/src/impl/btc/index.d.ts.map +1 -1
  3. package/dist/cjs/src/impl/btc/index.js +2 -1
  4. package/dist/cjs/src/impl/btc/tbtcstxsignet.d.ts +10 -0
  5. package/dist/cjs/src/impl/btc/tbtcstxsignet.d.ts.map +1 -0
  6. package/dist/cjs/src/impl/btc/tbtcstxsignet.js +18 -0
  7. package/dist/cjs/src/names.d.ts +2 -2
  8. package/dist/cjs/src/names.d.ts.map +1 -1
  9. package/dist/cjs/src/names.js +6 -1
  10. package/dist/cjs/src/recovery/index.d.ts +1 -0
  11. package/dist/cjs/src/recovery/index.d.ts.map +1 -1
  12. package/dist/cjs/src/recovery/index.js +2 -1
  13. package/dist/cjs/src/recovery/safeRecovery.d.ts +19 -0
  14. package/dist/cjs/src/recovery/safeRecovery.d.ts.map +1 -0
  15. package/dist/cjs/src/recovery/safeRecovery.js +70 -0
  16. package/dist/cjs/test/unit/recovery/safeRecovery.d.ts +2 -0
  17. package/dist/cjs/test/unit/recovery/safeRecovery.d.ts.map +1 -0
  18. package/dist/cjs/test/unit/recovery/safeRecovery.js +187 -0
  19. package/dist/cjs/test/unit/tbtcstxsignet.d.ts +2 -0
  20. package/dist/cjs/test/unit/tbtcstxsignet.d.ts.map +1 -0
  21. package/dist/cjs/test/unit/tbtcstxsignet.js +61 -0
  22. package/dist/cjs/tsconfig.tsbuildinfo +1 -1
  23. package/dist/esm/impl/btc/index.d.ts +1 -0
  24. package/dist/esm/impl/btc/index.d.ts.map +1 -1
  25. package/dist/esm/impl/btc/index.js +2 -1
  26. package/dist/esm/impl/btc/tbtcstxsignet.d.ts +10 -0
  27. package/dist/esm/impl/btc/tbtcstxsignet.d.ts.map +1 -0
  28. package/dist/esm/impl/btc/tbtcstxsignet.js +14 -0
  29. package/dist/esm/names.d.ts +2 -2
  30. package/dist/esm/names.d.ts.map +1 -1
  31. package/dist/esm/names.js +6 -1
  32. package/dist/esm/recovery/index.d.ts +1 -0
  33. package/dist/esm/recovery/index.d.ts.map +1 -1
  34. package/dist/esm/recovery/index.js +2 -1
  35. package/dist/esm/recovery/safeRecovery.d.ts +19 -0
  36. package/dist/esm/recovery/safeRecovery.d.ts.map +1 -0
  37. package/dist/esm/recovery/safeRecovery.js +66 -0
  38. package/package.json +11 -10
@@ -5,5 +5,6 @@ export * from './tbtcsig';
5
5
  export * from './tbtcbgsig';
6
6
  export * from './tbtcstx';
7
7
  export * from './tbtcstxprivate1';
8
+ export * from './tbtcstxsignet';
8
9
  export * from './inscriptionBuilder';
9
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/impl/btc/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAC;AACtB,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/impl/btc/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAC;AACtB,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,cAAc,sBAAsB,CAAC"}
@@ -5,5 +5,6 @@ export * from './tbtcsig';
5
5
  export * from './tbtcbgsig';
6
6
  export * from './tbtcstx';
7
7
  export * from './tbtcstxprivate1';
8
+ export * from './tbtcstxsignet';
8
9
  export * from './inscriptionBuilder';
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvaW1wbC9idGMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxPQUFPLENBQUM7QUFDdEIsY0FBYyxRQUFRLENBQUM7QUFDdkIsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYyxXQUFXLENBQUM7QUFDMUIsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxXQUFXLENBQUM7QUFDMUIsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLHNCQUFzQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9idGMnO1xuZXhwb3J0ICogZnJvbSAnLi90YnRjJztcbmV4cG9ydCAqIGZyb20gJy4vdGJ0YzQnO1xuZXhwb3J0ICogZnJvbSAnLi90YnRjc2lnJztcbmV4cG9ydCAqIGZyb20gJy4vdGJ0Y2Jnc2lnJztcbmV4cG9ydCAqIGZyb20gJy4vdGJ0Y3N0eCc7XG5leHBvcnQgKiBmcm9tICcuL3RidGNzdHhwcml2YXRlMSc7XG5leHBvcnQgKiBmcm9tICcuL2luc2NyaXB0aW9uQnVpbGRlcic7XG4iXX0=
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvaW1wbC9idGMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxPQUFPLENBQUM7QUFDdEIsY0FBYyxRQUFRLENBQUM7QUFDdkIsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYyxXQUFXLENBQUM7QUFDMUIsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxXQUFXLENBQUM7QUFDMUIsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsc0JBQXNCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2J0Yyc7XG5leHBvcnQgKiBmcm9tICcuL3RidGMnO1xuZXhwb3J0ICogZnJvbSAnLi90YnRjNCc7XG5leHBvcnQgKiBmcm9tICcuL3RidGNzaWcnO1xuZXhwb3J0ICogZnJvbSAnLi90YnRjYmdzaWcnO1xuZXhwb3J0ICogZnJvbSAnLi90YnRjc3R4JztcbmV4cG9ydCAqIGZyb20gJy4vdGJ0Y3N0eHByaXZhdGUxJztcbmV4cG9ydCAqIGZyb20gJy4vdGJ0Y3N0eHNpZ25ldCc7XG5leHBvcnQgKiBmcm9tICcuL2luc2NyaXB0aW9uQnVpbGRlcic7XG4iXX0=
@@ -0,0 +1,10 @@
1
+ import { BitGoBase } from '@bitgo/sdk-core';
2
+ import { UtxoCoinName, WasmUtxoCoinName } from '../../names';
3
+ import { Tbtc } from './tbtc';
4
+ export declare class Tbtcstxsignet extends Tbtc {
5
+ readonly name: UtxoCoinName;
6
+ constructor(bitgo: BitGoBase);
7
+ static createInstance(bitgo: BitGoBase): Tbtcstxsignet;
8
+ get wasmName(): WasmUtxoCoinName;
9
+ }
10
+ //# sourceMappingURL=tbtcstxsignet.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tbtcstxsignet.d.ts","sourceRoot":"","sources":["../../../../src/impl/btc/tbtcstxsignet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAE7D,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,qBAAa,aAAc,SAAQ,IAAI;IACrC,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAmB;gBAElC,KAAK,EAAE,SAAS;IAI5B,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,SAAS,GAAG,aAAa;IAItD,IAAa,QAAQ,IAAI,gBAAgB,CAExC;CACF"}
@@ -0,0 +1,14 @@
1
+ import { Tbtc } from './tbtc';
2
+ export class Tbtcstxsignet extends Tbtc {
3
+ constructor(bitgo) {
4
+ super(bitgo);
5
+ this.name = 'tbtcstxsignet';
6
+ }
7
+ static createInstance(bitgo) {
8
+ return new Tbtcstxsignet(bitgo);
9
+ }
10
+ get wasmName() {
11
+ return 'tbtcsig';
12
+ }
13
+ }
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGJ0Y3N0eHNpZ25ldC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9pbXBsL2J0Yy90YnRjc3R4c2lnbmV0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUlBLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFFOUIsTUFBTSxPQUFPLGFBQWMsU0FBUSxJQUFJO0lBR3JDLFlBQVksS0FBZ0I7UUFDMUIsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBSE4sU0FBSSxHQUFpQixlQUFlLENBQUM7SUFJOUMsQ0FBQztJQUVELE1BQU0sQ0FBQyxjQUFjLENBQUMsS0FBZ0I7UUFDcEMsT0FBTyxJQUFJLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBRUQsSUFBYSxRQUFRO1FBQ25CLE9BQU8sU0FBUyxDQUFDO0lBQ25CLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJpdEdvQmFzZSB9IGZyb20gJ0BiaXRnby9zZGstY29yZSc7XG5cbmltcG9ydCB7IFV0eG9Db2luTmFtZSwgV2FzbVV0eG9Db2luTmFtZSB9IGZyb20gJy4uLy4uL25hbWVzJztcblxuaW1wb3J0IHsgVGJ0YyB9IGZyb20gJy4vdGJ0Yyc7XG5cbmV4cG9ydCBjbGFzcyBUYnRjc3R4c2lnbmV0IGV4dGVuZHMgVGJ0YyB7XG4gIHJlYWRvbmx5IG5hbWU6IFV0eG9Db2luTmFtZSA9ICd0YnRjc3R4c2lnbmV0JztcblxuICBjb25zdHJ1Y3RvcihiaXRnbzogQml0R29CYXNlKSB7XG4gICAgc3VwZXIoYml0Z28pO1xuICB9XG5cbiAgc3RhdGljIGNyZWF0ZUluc3RhbmNlKGJpdGdvOiBCaXRHb0Jhc2UpOiBUYnRjc3R4c2lnbmV0IHtcbiAgICByZXR1cm4gbmV3IFRidGNzdHhzaWduZXQoYml0Z28pO1xuICB9XG5cbiAgb3ZlcnJpZGUgZ2V0IHdhc21OYW1lKCk6IFdhc21VdHhvQ29pbk5hbWUge1xuICAgIHJldHVybiAndGJ0Y3NpZyc7XG4gIH1cbn1cbiJdfQ==
@@ -1,9 +1,9 @@
1
1
  import { type CoinName } from '@bitgo/wasm-utxo';
2
2
  export type WasmUtxoCoinName = CoinName;
3
3
  export declare const utxoCoinsMainnet: readonly ["btc", "bch", "bcha", "bsv", "btg", "dash", "doge", "ltc", "pearl", "zec"];
4
- export declare const utxoCoinsTestnet: readonly ["tbtc", "tbtc4", "tbtcsig", "tbtcbgsig", "tbtcstx", "tbtcstxprivate1", "tbch", "tbcha", "tbsv", "tbtg", "tdash", "tdoge", "tltc", "tpearl", "tzec"];
4
+ export declare const utxoCoinsTestnet: readonly ["tbtc", "tbtc4", "tbtcsig", "tbtcbgsig", "tbtcstx", "tbtcstxprivate1", "tbtcstxsignet", "tbch", "tbcha", "tbsv", "tbtg", "tdash", "tdoge", "tltc", "tpearl", "tzec"];
5
5
  export type UtxoCoinNameMainnet = (typeof utxoCoinsMainnet)[number];
6
- export type UtxoCoinNameTestnet = `t${UtxoCoinNameMainnet}` | 'tbtcsig' | 'tbtc4' | 'tbtcbgsig' | 'tbtcstx' | 'tbtcstxprivate1';
6
+ export type UtxoCoinNameTestnet = `t${UtxoCoinNameMainnet}` | 'tbtcsig' | 'tbtc4' | 'tbtcbgsig' | 'tbtcstx' | 'tbtcstxprivate1' | 'tbtcstxsignet';
7
7
  export type UtxoCoinName = UtxoCoinNameMainnet | UtxoCoinNameTestnet;
8
8
  export declare function toWasmUtxoCoinName(coinName: UtxoCoinName | WasmUtxoCoinName): WasmUtxoCoinName;
9
9
  export declare function isUtxoCoinNameMainnet(coinName: string): coinName is UtxoCoinNameMainnet;
@@ -1 +1 @@
1
- {"version":3,"file":"names.d.ts","sourceRoot":"","sources":["../../src/names.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE7D,MAAM,MAAM,gBAAgB,GAAG,QAAQ,CAAC;AAExC,eAAO,MAAM,gBAAgB,sFAAuF,CAAC;AACrH,eAAO,MAAM,gBAAgB,+JAgBnB,CAAC;AAEX,MAAM,MAAM,mBAAmB,GAAG,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAC;AACpE,MAAM,MAAM,mBAAmB,GAC3B,IAAI,mBAAmB,EAAE,GACzB,SAAS,GACT,OAAO,GACP,WAAW,GACX,SAAS,GACT,iBAAiB,CAAC;AACtB,MAAM,MAAM,YAAY,GAAG,mBAAmB,GAAG,mBAAmB,CAAC;AAErE,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,YAAY,GAAG,gBAAgB,GAAG,gBAAgB,CAK9F;AAED,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,QAAQ,IAAI,mBAAmB,CAEvF;AAED,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,QAAQ,IAAI,mBAAmB,CAEvF;AAED,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,QAAQ,IAAI,YAAY,CAEzE;AAED,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,YAAY,GAAG,mBAAmB,CAc9E;AA2BD,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,YAAY,GAAG,MAAM,CAwBtE;AAED,wBAAgB,aAAa,CAAC,QAAQ,EAAE,YAAY,GAAG,OAAO,CAE7D;AAED,wBAAgB,aAAa,CAAC,QAAQ,EAAE,YAAY,GAAG,OAAO,CAE7D"}
1
+ {"version":3,"file":"names.d.ts","sourceRoot":"","sources":["../../src/names.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE7D,MAAM,MAAM,gBAAgB,GAAG,QAAQ,CAAC;AAExC,eAAO,MAAM,gBAAgB,sFAAuF,CAAC;AACrH,eAAO,MAAM,gBAAgB,gLAiBnB,CAAC;AAEX,MAAM,MAAM,mBAAmB,GAAG,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAC;AACpE,MAAM,MAAM,mBAAmB,GAC3B,IAAI,mBAAmB,EAAE,GACzB,SAAS,GACT,OAAO,GACP,WAAW,GACX,SAAS,GACT,iBAAiB,GACjB,eAAe,CAAC;AACpB,MAAM,MAAM,YAAY,GAAG,mBAAmB,GAAG,mBAAmB,CAAC;AAErE,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,YAAY,GAAG,gBAAgB,GAAG,gBAAgB,CAK9F;AAED,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,QAAQ,IAAI,mBAAmB,CAEvF;AAED,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,QAAQ,IAAI,mBAAmB,CAEvF;AAED,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,QAAQ,IAAI,YAAY,CAEzE;AAED,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,YAAY,GAAG,mBAAmB,CAe9E;AA2BD,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,YAAY,GAAG,MAAM,CA4BtE;AAED,wBAAgB,aAAa,CAAC,QAAQ,EAAE,YAAY,GAAG,OAAO,CAE7D;AAED,wBAAgB,aAAa,CAAC,QAAQ,EAAE,YAAY,GAAG,OAAO,CAE7D"}
package/dist/esm/names.js CHANGED
@@ -7,6 +7,7 @@ export const utxoCoinsTestnet = [
7
7
  'tbtcbgsig',
8
8
  'tbtcstx',
9
9
  'tbtcstxprivate1',
10
+ 'tbtcstxsignet',
10
11
  'tbch',
11
12
  'tbcha',
12
13
  'tbsv',
@@ -42,6 +43,7 @@ export function getMainnetCoinName(coinName) {
42
43
  case 'tbtcbgsig':
43
44
  case 'tbtcstx':
44
45
  case 'tbtcstxprivate1':
46
+ case 'tbtcstxsignet':
45
47
  return 'btc';
46
48
  default:
47
49
  return coinName.slice(1);
@@ -75,6 +77,9 @@ export function getFullNameFromCoinName(coinName) {
75
77
  if (coinName === 'tbtcstxprivate1') {
76
78
  return 'Stacks Bitcoin (Private-1 Regtest)';
77
79
  }
80
+ if (coinName === 'tbtcstxsignet') {
81
+ return 'Stacks Bitcoin (Signet)';
82
+ }
78
83
  let prefix;
79
84
  switch (coinName) {
80
85
  case 'tbtc4':
@@ -100,4 +105,4 @@ export function isTestnetCoin(coinName) {
100
105
  export function isMainnetCoin(coinName) {
101
106
  return isUtxoCoinNameMainnet(coinName);
102
107
  }
103
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmFtZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbmFtZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBaUIsTUFBTSxrQkFBa0IsQ0FBQztBQUk3RCxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLEtBQUssQ0FBVSxDQUFDO0FBQ3JILE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHO0lBQzlCLE1BQU07SUFDTixPQUFPO0lBQ1AsU0FBUztJQUNULFdBQVc7SUFDWCxTQUFTO0lBQ1QsaUJBQWlCO0lBQ2pCLE1BQU07SUFDTixPQUFPO0lBQ1AsTUFBTTtJQUNOLE1BQU07SUFDTixPQUFPO0lBQ1AsT0FBTztJQUNQLE1BQU07SUFDTixRQUFRO0lBQ1IsTUFBTTtDQUNFLENBQUM7QUFZWCxNQUFNLFVBQVUsa0JBQWtCLENBQUMsUUFBeUM7SUFDMUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDO1FBQzFCLE1BQU0sSUFBSSxLQUFLLENBQUMsUUFBUSxRQUFRLGdDQUFnQyxDQUFDLENBQUM7SUFDcEUsQ0FBQztJQUNELE9BQU8sUUFBUSxDQUFDO0FBQ2xCLENBQUM7QUFFRCxNQUFNLFVBQVUscUJBQXFCLENBQUMsUUFBZ0I7SUFDcEQsT0FBTyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsUUFBK0IsQ0FBQyxDQUFDO0FBQ3BFLENBQUM7QUFFRCxNQUFNLFVBQVUscUJBQXFCLENBQUMsUUFBZ0I7SUFDcEQsT0FBTyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsUUFBK0IsQ0FBQyxDQUFDO0FBQ3BFLENBQUM7QUFFRCxNQUFNLFVBQVUsY0FBYyxDQUFDLFFBQWdCO0lBQzdDLE9BQU8scUJBQXFCLENBQUMsUUFBUSxDQUFDLElBQUkscUJBQXFCLENBQUMsUUFBUSxDQUFDLENBQUM7QUFDNUUsQ0FBQztBQUVELE1BQU0sVUFBVSxrQkFBa0IsQ0FBQyxRQUFzQjtJQUN2RCxJQUFJLHFCQUFxQixDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUM7UUFDcEMsT0FBTyxRQUFRLENBQUM7SUFDbEIsQ0FBQztJQUNELFFBQVEsUUFBUSxFQUFFLENBQUM7UUFDakIsS0FBSyxPQUFPLENBQUM7UUFDYixLQUFLLFNBQVMsQ0FBQztRQUNmLEtBQUssV0FBVyxDQUFDO1FBQ2pCLEtBQUssU0FBUyxDQUFDO1FBQ2YsS0FBSyxpQkFBaUI7WUFDcEIsT0FBTyxLQUFLLENBQUM7UUFDZjtZQUNFLE9BQU8sUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQXdCLENBQUM7SUFDcEQsQ0FBQztBQUNILENBQUM7QUFFRCxTQUFTLHNCQUFzQixDQUFDLFFBQTZCO0lBQzNELFFBQVEsUUFBUSxFQUFFLENBQUM7UUFDakIsS0FBSyxLQUFLO1lBQ1IsT0FBTyxTQUFTLENBQUM7UUFDbkIsS0FBSyxLQUFLO1lBQ1IsT0FBTyxjQUFjLENBQUM7UUFDeEIsS0FBSyxNQUFNO1lBQ1QsT0FBTyxhQUFhLENBQUM7UUFDdkIsS0FBSyxLQUFLO1lBQ1IsT0FBTyxjQUFjLENBQUM7UUFDeEIsS0FBSyxLQUFLO1lBQ1IsT0FBTyxZQUFZLENBQUM7UUFDdEIsS0FBSyxNQUFNO1lBQ1QsT0FBTyxNQUFNLENBQUM7UUFDaEIsS0FBSyxNQUFNO1lBQ1QsT0FBTyxVQUFVLENBQUM7UUFDcEIsS0FBSyxLQUFLO1lBQ1IsT0FBTyxVQUFVLENBQUM7UUFDcEIsS0FBSyxPQUFPO1lBQ1YsT0FBTyxPQUFPLENBQUM7UUFDakIsS0FBSyxLQUFLO1lBQ1IsT0FBTyxPQUFPLENBQUM7SUFDbkIsQ0FBQztBQUNILENBQUM7QUFFRCxNQUFNLFVBQVUsdUJBQXVCLENBQUMsUUFBc0I7SUFDNUQsSUFBSSxRQUFRLEtBQUssaUJBQWlCLEVBQUUsQ0FBQztRQUNuQyxPQUFPLG9DQUFvQyxDQUFDO0lBQzlDLENBQUM7SUFFRCxJQUFJLE1BQWMsQ0FBQztJQUNuQixRQUFRLFFBQVEsRUFBRSxDQUFDO1FBQ2pCLEtBQUssT0FBTztZQUNWLE1BQU0sR0FBRyxXQUFXLENBQUM7WUFDckIsTUFBTTtRQUNSLEtBQUssU0FBUztZQUNaLE1BQU0sR0FBRyxnQkFBZ0IsQ0FBQztZQUMxQixNQUFNO1FBQ1IsS0FBSyxXQUFXO1lBQ2QsTUFBTSxHQUFHLGVBQWUsQ0FBQztZQUN6QixNQUFNO1FBQ1IsS0FBSyxTQUFTO1lBQ1osTUFBTSxHQUFHLFNBQVMsQ0FBQztZQUNuQixNQUFNO1FBQ1I7WUFDRSxNQUFNLEdBQUcscUJBQXFCLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQy9ELENBQUM7SUFFRCxPQUFPLE1BQU0sR0FBRyxzQkFBc0IsQ0FBQyxrQkFBa0IsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO0FBQ3ZFLENBQUM7QUFFRCxNQUFNLFVBQVUsYUFBYSxDQUFDLFFBQXNCO0lBQ2xELE9BQU8scUJBQXFCLENBQUMsUUFBUSxDQUFDLENBQUM7QUFDekMsQ0FBQztBQUVELE1BQU0sVUFBVSxhQUFhLENBQUMsUUFBc0I7SUFDbEQsT0FBTyxxQkFBcUIsQ0FBQyxRQUFRLENBQUMsQ0FBQztBQUN6QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgaXNDb2luTmFtZSwgdHlwZSBDb2luTmFtZSB9IGZyb20gJ0BiaXRnby93YXNtLXV0eG8nO1xuXG5leHBvcnQgdHlwZSBXYXNtVXR4b0NvaW5OYW1lID0gQ29pbk5hbWU7XG5cbmV4cG9ydCBjb25zdCB1dHhvQ29pbnNNYWlubmV0ID0gWydidGMnLCAnYmNoJywgJ2JjaGEnLCAnYnN2JywgJ2J0ZycsICdkYXNoJywgJ2RvZ2UnLCAnbHRjJywgJ3BlYXJsJywgJ3plYyddIGFzIGNvbnN0O1xuZXhwb3J0IGNvbnN0IHV0eG9Db2luc1Rlc3RuZXQgPSBbXG4gICd0YnRjJyxcbiAgJ3RidGM0JyxcbiAgJ3RidGNzaWcnLFxuICAndGJ0Y2Jnc2lnJyxcbiAgJ3RidGNzdHgnLFxuICAndGJ0Y3N0eHByaXZhdGUxJyxcbiAgJ3RiY2gnLFxuICAndGJjaGEnLFxuICAndGJzdicsXG4gICd0YnRnJyxcbiAgJ3RkYXNoJyxcbiAgJ3Rkb2dlJyxcbiAgJ3RsdGMnLFxuICAndHBlYXJsJyxcbiAgJ3R6ZWMnLFxuXSBhcyBjb25zdDtcblxuZXhwb3J0IHR5cGUgVXR4b0NvaW5OYW1lTWFpbm5ldCA9ICh0eXBlb2YgdXR4b0NvaW5zTWFpbm5ldClbbnVtYmVyXTtcbmV4cG9ydCB0eXBlIFV0eG9Db2luTmFtZVRlc3RuZXQgPVxuICB8IGB0JHtVdHhvQ29pbk5hbWVNYWlubmV0fWBcbiAgfCAndGJ0Y3NpZydcbiAgfCAndGJ0YzQnXG4gIHwgJ3RidGNiZ3NpZydcbiAgfCAndGJ0Y3N0eCdcbiAgfCAndGJ0Y3N0eHByaXZhdGUxJztcbmV4cG9ydCB0eXBlIFV0eG9Db2luTmFtZSA9IFV0eG9Db2luTmFtZU1haW5uZXQgfCBVdHhvQ29pbk5hbWVUZXN0bmV0O1xuXG5leHBvcnQgZnVuY3Rpb24gdG9XYXNtVXR4b0NvaW5OYW1lKGNvaW5OYW1lOiBVdHhvQ29pbk5hbWUgfCBXYXNtVXR4b0NvaW5OYW1lKTogV2FzbVV0eG9Db2luTmFtZSB7XG4gIGlmICghaXNDb2luTmFtZShjb2luTmFtZSkpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYGNvaW4gJHtjb2luTmFtZX0gaXMgbm90IHN1cHBvcnRlZCBieSB3YXNtLXV0eG9gKTtcbiAgfVxuICByZXR1cm4gY29pbk5hbWU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc1V0eG9Db2luTmFtZU1haW5uZXQoY29pbk5hbWU6IHN0cmluZyk6IGNvaW5OYW1lIGlzIFV0eG9Db2luTmFtZU1haW5uZXQge1xuICByZXR1cm4gdXR4b0NvaW5zTWFpbm5ldC5pbmNsdWRlcyhjb2luTmFtZSBhcyBVdHhvQ29pbk5hbWVNYWlubmV0KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzVXR4b0NvaW5OYW1lVGVzdG5ldChjb2luTmFtZTogc3RyaW5nKTogY29pbk5hbWUgaXMgVXR4b0NvaW5OYW1lVGVzdG5ldCB7XG4gIHJldHVybiB1dHhvQ29pbnNUZXN0bmV0LmluY2x1ZGVzKGNvaW5OYW1lIGFzIFV0eG9Db2luTmFtZVRlc3RuZXQpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNVdHhvQ29pbk5hbWUoY29pbk5hbWU6IHN0cmluZyk6IGNvaW5OYW1lIGlzIFV0eG9Db2luTmFtZSB7XG4gIHJldHVybiBpc1V0eG9Db2luTmFtZU1haW5uZXQoY29pbk5hbWUpIHx8IGlzVXR4b0NvaW5OYW1lVGVzdG5ldChjb2luTmFtZSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRNYWlubmV0Q29pbk5hbWUoY29pbk5hbWU6IFV0eG9Db2luTmFtZSk6IFV0eG9Db2luTmFtZU1haW5uZXQge1xuICBpZiAoaXNVdHhvQ29pbk5hbWVNYWlubmV0KGNvaW5OYW1lKSkge1xuICAgIHJldHVybiBjb2luTmFtZTtcbiAgfVxuICBzd2l0Y2ggKGNvaW5OYW1lKSB7XG4gICAgY2FzZSAndGJ0YzQnOlxuICAgIGNhc2UgJ3RidGNzaWcnOlxuICAgIGNhc2UgJ3RidGNiZ3NpZyc6XG4gICAgY2FzZSAndGJ0Y3N0eCc6XG4gICAgY2FzZSAndGJ0Y3N0eHByaXZhdGUxJzpcbiAgICAgIHJldHVybiAnYnRjJztcbiAgICBkZWZhdWx0OlxuICAgICAgcmV0dXJuIGNvaW5OYW1lLnNsaWNlKDEpIGFzIFV0eG9Db2luTmFtZU1haW5uZXQ7XG4gIH1cbn1cblxuZnVuY3Rpb24gZ2V0QmFzZU5hbWVGcm9tTWFpbm5ldChjb2luTmFtZTogVXR4b0NvaW5OYW1lTWFpbm5ldCk6IHN0cmluZyB7XG4gIHN3aXRjaCAoY29pbk5hbWUpIHtcbiAgICBjYXNlICdidGMnOlxuICAgICAgcmV0dXJuICdCaXRjb2luJztcbiAgICBjYXNlICdiY2gnOlxuICAgICAgcmV0dXJuICdCaXRjb2luIENhc2gnO1xuICAgIGNhc2UgJ2JjaGEnOlxuICAgICAgcmV0dXJuICdCaXRjb2luIEFCQyc7XG4gICAgY2FzZSAnYnRnJzpcbiAgICAgIHJldHVybiAnQml0Y29pbiBHb2xkJztcbiAgICBjYXNlICdic3YnOlxuICAgICAgcmV0dXJuICdCaXRjb2luIFNWJztcbiAgICBjYXNlICdkYXNoJzpcbiAgICAgIHJldHVybiAnRGFzaCc7XG4gICAgY2FzZSAnZG9nZSc6XG4gICAgICByZXR1cm4gJ0RvZ2Vjb2luJztcbiAgICBjYXNlICdsdGMnOlxuICAgICAgcmV0dXJuICdMaXRlY29pbic7XG4gICAgY2FzZSAncGVhcmwnOlxuICAgICAgcmV0dXJuICdQZWFybCc7XG4gICAgY2FzZSAnemVjJzpcbiAgICAgIHJldHVybiAnWkNhc2gnO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRGdWxsTmFtZUZyb21Db2luTmFtZShjb2luTmFtZTogVXR4b0NvaW5OYW1lKTogc3RyaW5nIHtcbiAgaWYgKGNvaW5OYW1lID09PSAndGJ0Y3N0eHByaXZhdGUxJykge1xuICAgIHJldHVybiAnU3RhY2tzIEJpdGNvaW4gKFByaXZhdGUtMSBSZWd0ZXN0KSc7XG4gIH1cblxuICBsZXQgcHJlZml4OiBzdHJpbmc7XG4gIHN3aXRjaCAoY29pbk5hbWUpIHtcbiAgICBjYXNlICd0YnRjNCc6XG4gICAgICBwcmVmaXggPSAnVGVzdG5ldDQgJztcbiAgICAgIGJyZWFrO1xuICAgIGNhc2UgJ3RidGNzaWcnOlxuICAgICAgcHJlZml4ID0gJ1B1YmxpYyBTaWduZXQgJztcbiAgICAgIGJyZWFrO1xuICAgIGNhc2UgJ3RidGNiZ3NpZyc6XG4gICAgICBwcmVmaXggPSAnQml0R28gU2lnbmV0ICc7XG4gICAgICBicmVhaztcbiAgICBjYXNlICd0YnRjc3R4JzpcbiAgICAgIHByZWZpeCA9ICdTdGFja3MgJztcbiAgICAgIGJyZWFrO1xuICAgIGRlZmF1bHQ6XG4gICAgICBwcmVmaXggPSBpc1V0eG9Db2luTmFtZVRlc3RuZXQoY29pbk5hbWUpID8gJ1Rlc3RuZXQgJyA6ICcnO1xuICB9XG5cbiAgcmV0dXJuIHByZWZpeCArIGdldEJhc2VOYW1lRnJvbU1haW5uZXQoZ2V0TWFpbm5ldENvaW5OYW1lKGNvaW5OYW1lKSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc1Rlc3RuZXRDb2luKGNvaW5OYW1lOiBVdHhvQ29pbk5hbWUpOiBib29sZWFuIHtcbiAgcmV0dXJuIGlzVXR4b0NvaW5OYW1lVGVzdG5ldChjb2luTmFtZSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc01haW5uZXRDb2luKGNvaW5OYW1lOiBVdHhvQ29pbk5hbWUpOiBib29sZWFuIHtcbiAgcmV0dXJuIGlzVXR4b0NvaW5OYW1lTWFpbm5ldChjb2luTmFtZSk7XG59XG4iXX0=
108
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmFtZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbmFtZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBaUIsTUFBTSxrQkFBa0IsQ0FBQztBQUk3RCxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLEtBQUssQ0FBVSxDQUFDO0FBQ3JILE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHO0lBQzlCLE1BQU07SUFDTixPQUFPO0lBQ1AsU0FBUztJQUNULFdBQVc7SUFDWCxTQUFTO0lBQ1QsaUJBQWlCO0lBQ2pCLGVBQWU7SUFDZixNQUFNO0lBQ04sT0FBTztJQUNQLE1BQU07SUFDTixNQUFNO0lBQ04sT0FBTztJQUNQLE9BQU87SUFDUCxNQUFNO0lBQ04sUUFBUTtJQUNSLE1BQU07Q0FDRSxDQUFDO0FBYVgsTUFBTSxVQUFVLGtCQUFrQixDQUFDLFFBQXlDO0lBQzFFLElBQUksQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQztRQUMxQixNQUFNLElBQUksS0FBSyxDQUFDLFFBQVEsUUFBUSxnQ0FBZ0MsQ0FBQyxDQUFDO0lBQ3BFLENBQUM7SUFDRCxPQUFPLFFBQVEsQ0FBQztBQUNsQixDQUFDO0FBRUQsTUFBTSxVQUFVLHFCQUFxQixDQUFDLFFBQWdCO0lBQ3BELE9BQU8sZ0JBQWdCLENBQUMsUUFBUSxDQUFDLFFBQStCLENBQUMsQ0FBQztBQUNwRSxDQUFDO0FBRUQsTUFBTSxVQUFVLHFCQUFxQixDQUFDLFFBQWdCO0lBQ3BELE9BQU8sZ0JBQWdCLENBQUMsUUFBUSxDQUFDLFFBQStCLENBQUMsQ0FBQztBQUNwRSxDQUFDO0FBRUQsTUFBTSxVQUFVLGNBQWMsQ0FBQyxRQUFnQjtJQUM3QyxPQUFPLHFCQUFxQixDQUFDLFFBQVEsQ0FBQyxJQUFJLHFCQUFxQixDQUFDLFFBQVEsQ0FBQyxDQUFDO0FBQzVFLENBQUM7QUFFRCxNQUFNLFVBQVUsa0JBQWtCLENBQUMsUUFBc0I7SUFDdkQsSUFBSSxxQkFBcUIsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDO1FBQ3BDLE9BQU8sUUFBUSxDQUFDO0lBQ2xCLENBQUM7SUFDRCxRQUFRLFFBQVEsRUFBRSxDQUFDO1FBQ2pCLEtBQUssT0FBTyxDQUFDO1FBQ2IsS0FBSyxTQUFTLENBQUM7UUFDZixLQUFLLFdBQVcsQ0FBQztRQUNqQixLQUFLLFNBQVMsQ0FBQztRQUNmLEtBQUssaUJBQWlCLENBQUM7UUFDdkIsS0FBSyxlQUFlO1lBQ2xCLE9BQU8sS0FBSyxDQUFDO1FBQ2Y7WUFDRSxPQUFPLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUF3QixDQUFDO0lBQ3BELENBQUM7QUFDSCxDQUFDO0FBRUQsU0FBUyxzQkFBc0IsQ0FBQyxRQUE2QjtJQUMzRCxRQUFRLFFBQVEsRUFBRSxDQUFDO1FBQ2pCLEtBQUssS0FBSztZQUNSLE9BQU8sU0FBUyxDQUFDO1FBQ25CLEtBQUssS0FBSztZQUNSLE9BQU8sY0FBYyxDQUFDO1FBQ3hCLEtBQUssTUFBTTtZQUNULE9BQU8sYUFBYSxDQUFDO1FBQ3ZCLEtBQUssS0FBSztZQUNSLE9BQU8sY0FBYyxDQUFDO1FBQ3hCLEtBQUssS0FBSztZQUNSLE9BQU8sWUFBWSxDQUFDO1FBQ3RCLEtBQUssTUFBTTtZQUNULE9BQU8sTUFBTSxDQUFDO1FBQ2hCLEtBQUssTUFBTTtZQUNULE9BQU8sVUFBVSxDQUFDO1FBQ3BCLEtBQUssS0FBSztZQUNSLE9BQU8sVUFBVSxDQUFDO1FBQ3BCLEtBQUssT0FBTztZQUNWLE9BQU8sT0FBTyxDQUFDO1FBQ2pCLEtBQUssS0FBSztZQUNSLE9BQU8sT0FBTyxDQUFDO0lBQ25CLENBQUM7QUFDSCxDQUFDO0FBRUQsTUFBTSxVQUFVLHVCQUF1QixDQUFDLFFBQXNCO0lBQzVELElBQUksUUFBUSxLQUFLLGlCQUFpQixFQUFFLENBQUM7UUFDbkMsT0FBTyxvQ0FBb0MsQ0FBQztJQUM5QyxDQUFDO0lBRUQsSUFBSSxRQUFRLEtBQUssZUFBZSxFQUFFLENBQUM7UUFDakMsT0FBTyx5QkFBeUIsQ0FBQztJQUNuQyxDQUFDO0lBRUQsSUFBSSxNQUFjLENBQUM7SUFDbkIsUUFBUSxRQUFRLEVBQUUsQ0FBQztRQUNqQixLQUFLLE9BQU87WUFDVixNQUFNLEdBQUcsV0FBVyxDQUFDO1lBQ3JCLE1BQU07UUFDUixLQUFLLFNBQVM7WUFDWixNQUFNLEdBQUcsZ0JBQWdCLENBQUM7WUFDMUIsTUFBTTtRQUNSLEtBQUssV0FBVztZQUNkLE1BQU0sR0FBRyxlQUFlLENBQUM7WUFDekIsTUFBTTtRQUNSLEtBQUssU0FBUztZQUNaLE1BQU0sR0FBRyxTQUFTLENBQUM7WUFDbkIsTUFBTTtRQUNSO1lBQ0UsTUFBTSxHQUFHLHFCQUFxQixDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztJQUMvRCxDQUFDO0lBRUQsT0FBTyxNQUFNLEdBQUcsc0JBQXNCLENBQUMsa0JBQWtCLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztBQUN2RSxDQUFDO0FBRUQsTUFBTSxVQUFVLGFBQWEsQ0FBQyxRQUFzQjtJQUNsRCxPQUFPLHFCQUFxQixDQUFDLFFBQVEsQ0FBQyxDQUFDO0FBQ3pDLENBQUM7QUFFRCxNQUFNLFVBQVUsYUFBYSxDQUFDLFFBQXNCO0lBQ2xELE9BQU8scUJBQXFCLENBQUMsUUFBUSxDQUFDLENBQUM7QUFDekMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGlzQ29pbk5hbWUsIHR5cGUgQ29pbk5hbWUgfSBmcm9tICdAYml0Z28vd2FzbS11dHhvJztcblxuZXhwb3J0IHR5cGUgV2FzbVV0eG9Db2luTmFtZSA9IENvaW5OYW1lO1xuXG5leHBvcnQgY29uc3QgdXR4b0NvaW5zTWFpbm5ldCA9IFsnYnRjJywgJ2JjaCcsICdiY2hhJywgJ2JzdicsICdidGcnLCAnZGFzaCcsICdkb2dlJywgJ2x0YycsICdwZWFybCcsICd6ZWMnXSBhcyBjb25zdDtcbmV4cG9ydCBjb25zdCB1dHhvQ29pbnNUZXN0bmV0ID0gW1xuICAndGJ0YycsXG4gICd0YnRjNCcsXG4gICd0YnRjc2lnJyxcbiAgJ3RidGNiZ3NpZycsXG4gICd0YnRjc3R4JyxcbiAgJ3RidGNzdHhwcml2YXRlMScsXG4gICd0YnRjc3R4c2lnbmV0JyxcbiAgJ3RiY2gnLFxuICAndGJjaGEnLFxuICAndGJzdicsXG4gICd0YnRnJyxcbiAgJ3RkYXNoJyxcbiAgJ3Rkb2dlJyxcbiAgJ3RsdGMnLFxuICAndHBlYXJsJyxcbiAgJ3R6ZWMnLFxuXSBhcyBjb25zdDtcblxuZXhwb3J0IHR5cGUgVXR4b0NvaW5OYW1lTWFpbm5ldCA9ICh0eXBlb2YgdXR4b0NvaW5zTWFpbm5ldClbbnVtYmVyXTtcbmV4cG9ydCB0eXBlIFV0eG9Db2luTmFtZVRlc3RuZXQgPVxuICB8IGB0JHtVdHhvQ29pbk5hbWVNYWlubmV0fWBcbiAgfCAndGJ0Y3NpZydcbiAgfCAndGJ0YzQnXG4gIHwgJ3RidGNiZ3NpZydcbiAgfCAndGJ0Y3N0eCdcbiAgfCAndGJ0Y3N0eHByaXZhdGUxJ1xuICB8ICd0YnRjc3R4c2lnbmV0JztcbmV4cG9ydCB0eXBlIFV0eG9Db2luTmFtZSA9IFV0eG9Db2luTmFtZU1haW5uZXQgfCBVdHhvQ29pbk5hbWVUZXN0bmV0O1xuXG5leHBvcnQgZnVuY3Rpb24gdG9XYXNtVXR4b0NvaW5OYW1lKGNvaW5OYW1lOiBVdHhvQ29pbk5hbWUgfCBXYXNtVXR4b0NvaW5OYW1lKTogV2FzbVV0eG9Db2luTmFtZSB7XG4gIGlmICghaXNDb2luTmFtZShjb2luTmFtZSkpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoYGNvaW4gJHtjb2luTmFtZX0gaXMgbm90IHN1cHBvcnRlZCBieSB3YXNtLXV0eG9gKTtcbiAgfVxuICByZXR1cm4gY29pbk5hbWU7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc1V0eG9Db2luTmFtZU1haW5uZXQoY29pbk5hbWU6IHN0cmluZyk6IGNvaW5OYW1lIGlzIFV0eG9Db2luTmFtZU1haW5uZXQge1xuICByZXR1cm4gdXR4b0NvaW5zTWFpbm5ldC5pbmNsdWRlcyhjb2luTmFtZSBhcyBVdHhvQ29pbk5hbWVNYWlubmV0KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzVXR4b0NvaW5OYW1lVGVzdG5ldChjb2luTmFtZTogc3RyaW5nKTogY29pbk5hbWUgaXMgVXR4b0NvaW5OYW1lVGVzdG5ldCB7XG4gIHJldHVybiB1dHhvQ29pbnNUZXN0bmV0LmluY2x1ZGVzKGNvaW5OYW1lIGFzIFV0eG9Db2luTmFtZVRlc3RuZXQpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNVdHhvQ29pbk5hbWUoY29pbk5hbWU6IHN0cmluZyk6IGNvaW5OYW1lIGlzIFV0eG9Db2luTmFtZSB7XG4gIHJldHVybiBpc1V0eG9Db2luTmFtZU1haW5uZXQoY29pbk5hbWUpIHx8IGlzVXR4b0NvaW5OYW1lVGVzdG5ldChjb2luTmFtZSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRNYWlubmV0Q29pbk5hbWUoY29pbk5hbWU6IFV0eG9Db2luTmFtZSk6IFV0eG9Db2luTmFtZU1haW5uZXQge1xuICBpZiAoaXNVdHhvQ29pbk5hbWVNYWlubmV0KGNvaW5OYW1lKSkge1xuICAgIHJldHVybiBjb2luTmFtZTtcbiAgfVxuICBzd2l0Y2ggKGNvaW5OYW1lKSB7XG4gICAgY2FzZSAndGJ0YzQnOlxuICAgIGNhc2UgJ3RidGNzaWcnOlxuICAgIGNhc2UgJ3RidGNiZ3NpZyc6XG4gICAgY2FzZSAndGJ0Y3N0eCc6XG4gICAgY2FzZSAndGJ0Y3N0eHByaXZhdGUxJzpcbiAgICBjYXNlICd0YnRjc3R4c2lnbmV0JzpcbiAgICAgIHJldHVybiAnYnRjJztcbiAgICBkZWZhdWx0OlxuICAgICAgcmV0dXJuIGNvaW5OYW1lLnNsaWNlKDEpIGFzIFV0eG9Db2luTmFtZU1haW5uZXQ7XG4gIH1cbn1cblxuZnVuY3Rpb24gZ2V0QmFzZU5hbWVGcm9tTWFpbm5ldChjb2luTmFtZTogVXR4b0NvaW5OYW1lTWFpbm5ldCk6IHN0cmluZyB7XG4gIHN3aXRjaCAoY29pbk5hbWUpIHtcbiAgICBjYXNlICdidGMnOlxuICAgICAgcmV0dXJuICdCaXRjb2luJztcbiAgICBjYXNlICdiY2gnOlxuICAgICAgcmV0dXJuICdCaXRjb2luIENhc2gnO1xuICAgIGNhc2UgJ2JjaGEnOlxuICAgICAgcmV0dXJuICdCaXRjb2luIEFCQyc7XG4gICAgY2FzZSAnYnRnJzpcbiAgICAgIHJldHVybiAnQml0Y29pbiBHb2xkJztcbiAgICBjYXNlICdic3YnOlxuICAgICAgcmV0dXJuICdCaXRjb2luIFNWJztcbiAgICBjYXNlICdkYXNoJzpcbiAgICAgIHJldHVybiAnRGFzaCc7XG4gICAgY2FzZSAnZG9nZSc6XG4gICAgICByZXR1cm4gJ0RvZ2Vjb2luJztcbiAgICBjYXNlICdsdGMnOlxuICAgICAgcmV0dXJuICdMaXRlY29pbic7XG4gICAgY2FzZSAncGVhcmwnOlxuICAgICAgcmV0dXJuICdQZWFybCc7XG4gICAgY2FzZSAnemVjJzpcbiAgICAgIHJldHVybiAnWkNhc2gnO1xuICB9XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRGdWxsTmFtZUZyb21Db2luTmFtZShjb2luTmFtZTogVXR4b0NvaW5OYW1lKTogc3RyaW5nIHtcbiAgaWYgKGNvaW5OYW1lID09PSAndGJ0Y3N0eHByaXZhdGUxJykge1xuICAgIHJldHVybiAnU3RhY2tzIEJpdGNvaW4gKFByaXZhdGUtMSBSZWd0ZXN0KSc7XG4gIH1cblxuICBpZiAoY29pbk5hbWUgPT09ICd0YnRjc3R4c2lnbmV0Jykge1xuICAgIHJldHVybiAnU3RhY2tzIEJpdGNvaW4gKFNpZ25ldCknO1xuICB9XG5cbiAgbGV0IHByZWZpeDogc3RyaW5nO1xuICBzd2l0Y2ggKGNvaW5OYW1lKSB7XG4gICAgY2FzZSAndGJ0YzQnOlxuICAgICAgcHJlZml4ID0gJ1Rlc3RuZXQ0ICc7XG4gICAgICBicmVhaztcbiAgICBjYXNlICd0YnRjc2lnJzpcbiAgICAgIHByZWZpeCA9ICdQdWJsaWMgU2lnbmV0ICc7XG4gICAgICBicmVhaztcbiAgICBjYXNlICd0YnRjYmdzaWcnOlxuICAgICAgcHJlZml4ID0gJ0JpdEdvIFNpZ25ldCAnO1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSAndGJ0Y3N0eCc6XG4gICAgICBwcmVmaXggPSAnU3RhY2tzICc7XG4gICAgICBicmVhaztcbiAgICBkZWZhdWx0OlxuICAgICAgcHJlZml4ID0gaXNVdHhvQ29pbk5hbWVUZXN0bmV0KGNvaW5OYW1lKSA/ICdUZXN0bmV0ICcgOiAnJztcbiAgfVxuXG4gIHJldHVybiBwcmVmaXggKyBnZXRCYXNlTmFtZUZyb21NYWlubmV0KGdldE1haW5uZXRDb2luTmFtZShjb2luTmFtZSkpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNUZXN0bmV0Q29pbihjb2luTmFtZTogVXR4b0NvaW5OYW1lKTogYm9vbGVhbiB7XG4gIHJldHVybiBpc1V0eG9Db2luTmFtZVRlc3RuZXQoY29pbk5hbWUpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNNYWlubmV0Q29pbihjb2luTmFtZTogVXR4b0NvaW5OYW1lKTogYm9vbGVhbiB7XG4gIHJldHVybiBpc1V0eG9Db2luTmFtZU1haW5uZXQoY29pbk5hbWUpO1xufVxuIl19
@@ -4,4 +4,5 @@ export * from './baseApi';
4
4
  export * from './coingeckoApi';
5
5
  export * from './crossChainRecovery';
6
6
  export * from './mempoolApi';
7
+ export * from './safeRecovery';
7
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/recovery/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,WAAW,CAAC;AAC1B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,sBAAsB,CAAC;AACrC,cAAc,cAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/recovery/index.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,WAAW,CAAC;AAC1B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,sBAAsB,CAAC;AACrC,cAAc,cAAc,CAAC;AAC7B,cAAc,gBAAgB,CAAC"}
@@ -4,4 +4,5 @@ export * from './baseApi';
4
4
  export * from './coingeckoApi';
5
5
  export * from './crossChainRecovery';
6
6
  export * from './mempoolApi';
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcmVjb3ZlcnkvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsV0FBVyxDQUFDO0FBQzFCLGNBQWMsZ0JBQWdCLENBQUM7QUFDL0IsY0FBYyxzQkFBc0IsQ0FBQztBQUNyQyxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vUmVjb3ZlcnlQcm92aWRlcic7XG5leHBvcnQgKiBmcm9tICcuL2JhY2t1cEtleVJlY292ZXJ5JztcbmV4cG9ydCAqIGZyb20gJy4vYmFzZUFwaSc7XG5leHBvcnQgKiBmcm9tICcuL2NvaW5nZWNrb0FwaSc7XG5leHBvcnQgKiBmcm9tICcuL2Nyb3NzQ2hhaW5SZWNvdmVyeSc7XG5leHBvcnQgKiBmcm9tICcuL21lbXBvb2xBcGknO1xuIl19
7
+ export * from './safeRecovery';
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcmVjb3ZlcnkvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsV0FBVyxDQUFDO0FBQzFCLGNBQWMsZ0JBQWdCLENBQUM7QUFDL0IsY0FBYyxzQkFBc0IsQ0FBQztBQUNyQyxjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLGdCQUFnQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9SZWNvdmVyeVByb3ZpZGVyJztcbmV4cG9ydCAqIGZyb20gJy4vYmFja3VwS2V5UmVjb3ZlcnknO1xuZXhwb3J0ICogZnJvbSAnLi9iYXNlQXBpJztcbmV4cG9ydCAqIGZyb20gJy4vY29pbmdlY2tvQXBpJztcbmV4cG9ydCAqIGZyb20gJy4vY3Jvc3NDaGFpblJlY292ZXJ5JztcbmV4cG9ydCAqIGZyb20gJy4vbWVtcG9vbEFwaSc7XG5leHBvcnQgKiBmcm9tICcuL3NhZmVSZWNvdmVyeSc7XG4iXX0=
@@ -0,0 +1,19 @@
1
+ /**
2
+ * @prettier
3
+ *
4
+ * Safe (slot-1) UTXO recovery adapter: maps a Safe child triplet onto the existing
5
+ * `backupKeyRecovery` engine for funding checks and recovery.
6
+ */
7
+ import { SafeChildTriplet, SafeChildTripletPubs } from '@bitgo/sdk-lib-safes';
8
+ import { AbstractUtxoCoin } from '../abstractUtxoCoin';
9
+ import { backupKeyRecovery, RecoverParams } from './backupKeyRecovery';
10
+ export type SafeWalletFundingStatus = 'funded' | 'empty' | 'unknown';
11
+ export type SafeWalletRecoveryMode = 'signed' | 'unsigned';
12
+ export type SafeRecoveryOptionsBase = Pick<RecoverParams, 'scan' | 'apiKey' | 'recoveryProvider'>;
13
+ export type RecoverSafeWalletOptions = {
14
+ mode: SafeWalletRecoveryMode;
15
+ recoveryDestination: string;
16
+ } & SafeRecoveryOptionsBase & Pick<RecoverParams, 'feeRate'>;
17
+ export declare function determineSafeWalletFunding(coin: AbstractUtxoCoin, triplet: SafeChildTripletPubs, options?: SafeRecoveryOptionsBase): Promise<SafeWalletFundingStatus>;
18
+ export declare function recoverSafeWallet(coin: AbstractUtxoCoin, triplet: SafeChildTriplet, options: RecoverSafeWalletOptions): ReturnType<typeof backupKeyRecovery>;
19
+ //# sourceMappingURL=safeRecovery.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"safeRecovery.d.ts","sourceRoot":"","sources":["../../../src/recovery/safeRecovery.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EAGrB,MAAM,sBAAsB,CAAC;AAI9B,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAGvD,OAAO,EAAE,iBAAiB,EAAyC,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAE9G,MAAM,MAAM,uBAAuB,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,CAAC;AACrE,MAAM,MAAM,sBAAsB,GAAG,QAAQ,GAAG,UAAU,CAAC;AAE3D,MAAM,MAAM,uBAAuB,GAAG,IAAI,CAAC,aAAa,EAAE,MAAM,GAAG,QAAQ,GAAG,kBAAkB,CAAC,CAAC;AAElG,MAAM,MAAM,wBAAwB,GAAG;IACrC,IAAI,EAAE,sBAAsB,CAAC;IAC7B,mBAAmB,EAAE,MAAM,CAAC;CAC7B,GAAG,uBAAuB,GACzB,IAAI,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC;AAgCjC,wBAAsB,0BAA0B,CAC9C,IAAI,EAAE,gBAAgB,EACtB,OAAO,EAAE,oBAAoB,EAC7B,OAAO,GAAE,uBAA4B,GACpC,OAAO,CAAC,uBAAuB,CAAC,CAqBlC;AAED,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,gBAAgB,EACtB,OAAO,EAAE,gBAAgB,EACzB,OAAO,EAAE,wBAAwB,GAChC,UAAU,CAAC,OAAO,iBAAiB,CAAC,CActC"}
@@ -0,0 +1,66 @@
1
+ /**
2
+ * @prettier
3
+ *
4
+ * Safe (slot-1) UTXO recovery adapter: maps a Safe child triplet onto the existing
5
+ * `backupKeyRecovery` engine for funding checks and recovery.
6
+ */
7
+ import { assertSafeRecoverySupported, onchainSlotForCoin, } from '@bitgo/sdk-lib-safes';
8
+ import { ErrorNoInputToRecover } from '@bitgo/sdk-core';
9
+ import { BIP32, fixedScriptWallet } from '@bitgo/wasm-utxo';
10
+ import { generateAddressWithChainAndIndex } from '../address';
11
+ import { DEFAULT_RECOVERY_FEERATE_SAT_VBYTE_V2 } from './backupKeyRecovery';
12
+ function withSafeRecoveryGuard(coin, options, fn) {
13
+ assertSafeRecoverySupported(onchainSlotForCoin(coin.getChain()), 'utxo', coin.getChain());
14
+ if (options.scan !== undefined && options.scan <= 0) {
15
+ throw new Error('scan must be a positive integer');
16
+ }
17
+ return fn();
18
+ }
19
+ /**
20
+ * Derive the wallet's own first external address to satisfy `backupKeyRecovery`'s
21
+ * destination validation. Never broadcast, never returned to the caller.
22
+ */
23
+ function synthesizeDestination(coin, triplet) {
24
+ const walletKeys = fixedScriptWallet.RootWalletKeys.from({
25
+ triple: [triplet.user.pub, triplet.backup.pub, triplet.bitgo.pub].map((pub) => BIP32.from(pub)),
26
+ derivationPrefixes: ['m/0/0', 'm/0/0', 'm/0/0'],
27
+ });
28
+ return generateAddressWithChainAndIndex(coin.wasmName, walletKeys, fixedScriptWallet.ChainCode.value('p2sh', 'external'), 0, undefined);
29
+ }
30
+ export async function determineSafeWalletFunding(coin, triplet, options = {}) {
31
+ return withSafeRecoveryGuard(coin, options, async () => {
32
+ const recoveryParams = {
33
+ ...options,
34
+ recoveryDestination: synthesizeDestination(coin, triplet),
35
+ userKey: triplet.user.pub,
36
+ backupKey: triplet.backup.pub,
37
+ bitgoKey: triplet.bitgo.pub,
38
+ ignoreAddressTypes: [],
39
+ feeRate: DEFAULT_RECOVERY_FEERATE_SAT_VBYTE_V2,
40
+ };
41
+ try {
42
+ const result = await coin.recover(recoveryParams);
43
+ return result && 'txHex' in result && typeof result.txHex === 'string' && result.txHex.length > 0
44
+ ? 'funded'
45
+ : 'unknown';
46
+ }
47
+ catch (err) {
48
+ return err instanceof ErrorNoInputToRecover ? 'empty' : 'unknown';
49
+ }
50
+ });
51
+ }
52
+ export async function recoverSafeWallet(coin, triplet, options) {
53
+ return withSafeRecoveryGuard(coin, options, async () => {
54
+ const { mode, recoveryDestination, ...rest } = options;
55
+ const recoveryParams = {
56
+ ...rest,
57
+ recoveryDestination,
58
+ userKey: mode === 'signed' ? triplet.user.prv : triplet.user.pub,
59
+ backupKey: mode === 'signed' ? triplet.backup.prv : triplet.backup.pub,
60
+ bitgoKey: triplet.bitgo.pub,
61
+ ignoreAddressTypes: [],
62
+ };
63
+ return coin.recover(recoveryParams);
64
+ });
65
+ }
66
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2FmZVJlY292ZXJ5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3JlY292ZXJ5L3NhZmVSZWNvdmVyeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7R0FLRztBQUNILE9BQU8sRUFHTCwyQkFBMkIsRUFDM0Isa0JBQWtCLEdBQ25CLE1BQU0sc0JBQXNCLENBQUM7QUFDOUIsT0FBTyxFQUFFLHFCQUFxQixFQUFVLE1BQU0saUJBQWlCLENBQUM7QUFDaEUsT0FBTyxFQUFFLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRzVELE9BQU8sRUFBRSxnQ0FBZ0MsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUU5RCxPQUFPLEVBQXFCLHFDQUFxQyxFQUFpQixNQUFNLHFCQUFxQixDQUFDO0FBYTlHLFNBQVMscUJBQXFCLENBQzVCLElBQXNCLEVBQ3RCLE9BQWdDLEVBQ2hDLEVBQW9CO0lBRXBCLDJCQUEyQixDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUMxRixJQUFJLE9BQU8sQ0FBQyxJQUFJLEtBQUssU0FBUyxJQUFJLE9BQU8sQ0FBQyxJQUFJLElBQUksQ0FBQyxFQUFFLENBQUM7UUFDcEQsTUFBTSxJQUFJLEtBQUssQ0FBQyxpQ0FBaUMsQ0FBQyxDQUFDO0lBQ3JELENBQUM7SUFDRCxPQUFPLEVBQUUsRUFBRSxDQUFDO0FBQ2QsQ0FBQztBQUVEOzs7R0FHRztBQUNILFNBQVMscUJBQXFCLENBQUMsSUFBc0IsRUFBRSxPQUE2QjtJQUNsRixNQUFNLFVBQVUsR0FBRyxpQkFBaUIsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDO1FBQ3ZELE1BQU0sRUFBRSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLE9BQU8sQ0FBQyxNQUFNLENBQUMsR0FBRyxFQUFFLE9BQU8sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFrQjtRQUNoSCxrQkFBa0IsRUFBRSxDQUFDLE9BQU8sRUFBRSxPQUFPLEVBQUUsT0FBTyxDQUFDO0tBQ2hELENBQUMsQ0FBQztJQUNILE9BQU8sZ0NBQWdDLENBQ3JDLElBQUksQ0FBQyxRQUFRLEVBQ2IsVUFBVSxFQUNWLGlCQUFpQixDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLFVBQVUsQ0FBQyxFQUNyRCxDQUFDLEVBQ0QsU0FBUyxDQUNWLENBQUM7QUFDSixDQUFDO0FBRUQsTUFBTSxDQUFDLEtBQUssVUFBVSwwQkFBMEIsQ0FDOUMsSUFBc0IsRUFDdEIsT0FBNkIsRUFDN0IsVUFBbUMsRUFBRTtJQUVyQyxPQUFPLHFCQUFxQixDQUFDLElBQUksRUFBRSxPQUFPLEVBQUUsS0FBSyxJQUFJLEVBQUU7UUFDckQsTUFBTSxjQUFjLEdBQWtCO1lBQ3BDLEdBQUcsT0FBTztZQUNWLG1CQUFtQixFQUFFLHFCQUFxQixDQUFDLElBQUksRUFBRSxPQUFPLENBQUM7WUFDekQsT0FBTyxFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRztZQUN6QixTQUFTLEVBQUUsT0FBTyxDQUFDLE1BQU0sQ0FBQyxHQUFHO1lBQzdCLFFBQVEsRUFBRSxPQUFPLENBQUMsS0FBSyxDQUFDLEdBQUc7WUFDM0Isa0JBQWtCLEVBQUUsRUFBRTtZQUN0QixPQUFPLEVBQUUscUNBQXFDO1NBQy9DLENBQUM7UUFFRixJQUFJLENBQUM7WUFDSCxNQUFNLE1BQU0sR0FBRyxNQUFNLElBQUksQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLENBQUM7WUFDbEQsT0FBTyxNQUFNLElBQUksT0FBTyxJQUFJLE1BQU0sSUFBSSxPQUFPLE1BQU0sQ0FBQyxLQUFLLEtBQUssUUFBUSxJQUFJLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUM7Z0JBQy9GLENBQUMsQ0FBQyxRQUFRO2dCQUNWLENBQUMsQ0FBQyxTQUFTLENBQUM7UUFDaEIsQ0FBQztRQUFDLE9BQU8sR0FBRyxFQUFFLENBQUM7WUFDYixPQUFPLEdBQUcsWUFBWSxxQkFBcUIsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7UUFDcEUsQ0FBQztJQUNILENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQztBQUVELE1BQU0sQ0FBQyxLQUFLLFVBQVUsaUJBQWlCLENBQ3JDLElBQXNCLEVBQ3RCLE9BQXlCLEVBQ3pCLE9BQWlDO0lBRWpDLE9BQU8scUJBQXFCLENBQUMsSUFBSSxFQUFFLE9BQU8sRUFBRSxLQUFLLElBQUksRUFBRTtRQUNyRCxNQUFNLEVBQUUsSUFBSSxFQUFFLG1CQUFtQixFQUFFLEdBQUcsSUFBSSxFQUFFLEdBQUcsT0FBTyxDQUFDO1FBQ3ZELE1BQU0sY0FBYyxHQUFrQjtZQUNwQyxHQUFHLElBQUk7WUFDUCxtQkFBbUI7WUFDbkIsT0FBTyxFQUFFLElBQUksS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEdBQUc7WUFDaEUsU0FBUyxFQUFFLElBQUksS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEdBQUc7WUFDdEUsUUFBUSxFQUFFLE9BQU8sQ0FBQyxLQUFLLENBQUMsR0FBRztZQUMzQixrQkFBa0IsRUFBRSxFQUFFO1NBQ3ZCLENBQUM7UUFFRixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDdEMsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAcHJldHRpZXJcbiAqXG4gKiBTYWZlIChzbG90LTEpIFVUWE8gcmVjb3ZlcnkgYWRhcHRlcjogbWFwcyBhIFNhZmUgY2hpbGQgdHJpcGxldCBvbnRvIHRoZSBleGlzdGluZ1xuICogYGJhY2t1cEtleVJlY292ZXJ5YCBlbmdpbmUgZm9yIGZ1bmRpbmcgY2hlY2tzIGFuZCByZWNvdmVyeS5cbiAqL1xuaW1wb3J0IHtcbiAgU2FmZUNoaWxkVHJpcGxldCxcbiAgU2FmZUNoaWxkVHJpcGxldFB1YnMsXG4gIGFzc2VydFNhZmVSZWNvdmVyeVN1cHBvcnRlZCxcbiAgb25jaGFpblNsb3RGb3JDb2luLFxufSBmcm9tICdAYml0Z28vc2RrLWxpYi1zYWZlcyc7XG5pbXBvcnQgeyBFcnJvck5vSW5wdXRUb1JlY292ZXIsIFRyaXBsZSB9IGZyb20gJ0BiaXRnby9zZGstY29yZSc7XG5pbXBvcnQgeyBCSVAzMiwgZml4ZWRTY3JpcHRXYWxsZXQgfSBmcm9tICdAYml0Z28vd2FzbS11dHhvJztcblxuaW1wb3J0IHsgQWJzdHJhY3RVdHhvQ29pbiB9IGZyb20gJy4uL2Fic3RyYWN0VXR4b0NvaW4nO1xuaW1wb3J0IHsgZ2VuZXJhdGVBZGRyZXNzV2l0aENoYWluQW5kSW5kZXggfSBmcm9tICcuLi9hZGRyZXNzJztcblxuaW1wb3J0IHsgYmFja3VwS2V5UmVjb3ZlcnksIERFRkFVTFRfUkVDT1ZFUllfRkVFUkFURV9TQVRfVkJZVEVfVjIsIFJlY292ZXJQYXJhbXMgfSBmcm9tICcuL2JhY2t1cEtleVJlY292ZXJ5JztcblxuZXhwb3J0IHR5cGUgU2FmZVdhbGxldEZ1bmRpbmdTdGF0dXMgPSAnZnVuZGVkJyB8ICdlbXB0eScgfCAndW5rbm93bic7XG5leHBvcnQgdHlwZSBTYWZlV2FsbGV0UmVjb3ZlcnlNb2RlID0gJ3NpZ25lZCcgfCAndW5zaWduZWQnO1xuXG5leHBvcnQgdHlwZSBTYWZlUmVjb3ZlcnlPcHRpb25zQmFzZSA9IFBpY2s8UmVjb3ZlclBhcmFtcywgJ3NjYW4nIHwgJ2FwaUtleScgfCAncmVjb3ZlcnlQcm92aWRlcic+O1xuXG5leHBvcnQgdHlwZSBSZWNvdmVyU2FmZVdhbGxldE9wdGlvbnMgPSB7XG4gIG1vZGU6IFNhZmVXYWxsZXRSZWNvdmVyeU1vZGU7XG4gIHJlY292ZXJ5RGVzdGluYXRpb246IHN0cmluZztcbn0gJiBTYWZlUmVjb3ZlcnlPcHRpb25zQmFzZSAmXG4gIFBpY2s8UmVjb3ZlclBhcmFtcywgJ2ZlZVJhdGUnPjtcblxuZnVuY3Rpb24gd2l0aFNhZmVSZWNvdmVyeUd1YXJkPFQ+KFxuICBjb2luOiBBYnN0cmFjdFV0eG9Db2luLFxuICBvcHRpb25zOiBTYWZlUmVjb3ZlcnlPcHRpb25zQmFzZSxcbiAgZm46ICgpID0+IFByb21pc2U8VD5cbik6IFByb21pc2U8VD4ge1xuICBhc3NlcnRTYWZlUmVjb3ZlcnlTdXBwb3J0ZWQob25jaGFpblNsb3RGb3JDb2luKGNvaW4uZ2V0Q2hhaW4oKSksICd1dHhvJywgY29pbi5nZXRDaGFpbigpKTtcbiAgaWYgKG9wdGlvbnMuc2NhbiAhPT0gdW5kZWZpbmVkICYmIG9wdGlvbnMuc2NhbiA8PSAwKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdzY2FuIG11c3QgYmUgYSBwb3NpdGl2ZSBpbnRlZ2VyJyk7XG4gIH1cbiAgcmV0dXJuIGZuKCk7XG59XG5cbi8qKlxuICogRGVyaXZlIHRoZSB3YWxsZXQncyBvd24gZmlyc3QgZXh0ZXJuYWwgYWRkcmVzcyB0byBzYXRpc2Z5IGBiYWNrdXBLZXlSZWNvdmVyeWAnc1xuICogZGVzdGluYXRpb24gdmFsaWRhdGlvbi4gTmV2ZXIgYnJvYWRjYXN0LCBuZXZlciByZXR1cm5lZCB0byB0aGUgY2FsbGVyLlxuICovXG5mdW5jdGlvbiBzeW50aGVzaXplRGVzdGluYXRpb24oY29pbjogQWJzdHJhY3RVdHhvQ29pbiwgdHJpcGxldDogU2FmZUNoaWxkVHJpcGxldFB1YnMpOiBzdHJpbmcge1xuICBjb25zdCB3YWxsZXRLZXlzID0gZml4ZWRTY3JpcHRXYWxsZXQuUm9vdFdhbGxldEtleXMuZnJvbSh7XG4gICAgdHJpcGxlOiBbdHJpcGxldC51c2VyLnB1YiwgdHJpcGxldC5iYWNrdXAucHViLCB0cmlwbGV0LmJpdGdvLnB1Yl0ubWFwKChwdWIpID0+IEJJUDMyLmZyb20ocHViKSkgYXMgVHJpcGxlPEJJUDMyPixcbiAgICBkZXJpdmF0aW9uUHJlZml4ZXM6IFsnbS8wLzAnLCAnbS8wLzAnLCAnbS8wLzAnXSxcbiAgfSk7XG4gIHJldHVybiBnZW5lcmF0ZUFkZHJlc3NXaXRoQ2hhaW5BbmRJbmRleChcbiAgICBjb2luLndhc21OYW1lLFxuICAgIHdhbGxldEtleXMsXG4gICAgZml4ZWRTY3JpcHRXYWxsZXQuQ2hhaW5Db2RlLnZhbHVlKCdwMnNoJywgJ2V4dGVybmFsJyksXG4gICAgMCxcbiAgICB1bmRlZmluZWRcbiAgKTtcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGRldGVybWluZVNhZmVXYWxsZXRGdW5kaW5nKFxuICBjb2luOiBBYnN0cmFjdFV0eG9Db2luLFxuICB0cmlwbGV0OiBTYWZlQ2hpbGRUcmlwbGV0UHVicyxcbiAgb3B0aW9uczogU2FmZVJlY292ZXJ5T3B0aW9uc0Jhc2UgPSB7fVxuKTogUHJvbWlzZTxTYWZlV2FsbGV0RnVuZGluZ1N0YXR1cz4ge1xuICByZXR1cm4gd2l0aFNhZmVSZWNvdmVyeUd1YXJkKGNvaW4sIG9wdGlvbnMsIGFzeW5jICgpID0+IHtcbiAgICBjb25zdCByZWNvdmVyeVBhcmFtczogUmVjb3ZlclBhcmFtcyA9IHtcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICByZWNvdmVyeURlc3RpbmF0aW9uOiBzeW50aGVzaXplRGVzdGluYXRpb24oY29pbiwgdHJpcGxldCksXG4gICAgICB1c2VyS2V5OiB0cmlwbGV0LnVzZXIucHViLFxuICAgICAgYmFja3VwS2V5OiB0cmlwbGV0LmJhY2t1cC5wdWIsXG4gICAgICBiaXRnb0tleTogdHJpcGxldC5iaXRnby5wdWIsXG4gICAgICBpZ25vcmVBZGRyZXNzVHlwZXM6IFtdLFxuICAgICAgZmVlUmF0ZTogREVGQVVMVF9SRUNPVkVSWV9GRUVSQVRFX1NBVF9WQllURV9WMixcbiAgICB9O1xuXG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHJlc3VsdCA9IGF3YWl0IGNvaW4ucmVjb3ZlcihyZWNvdmVyeVBhcmFtcyk7XG4gICAgICByZXR1cm4gcmVzdWx0ICYmICd0eEhleCcgaW4gcmVzdWx0ICYmIHR5cGVvZiByZXN1bHQudHhIZXggPT09ICdzdHJpbmcnICYmIHJlc3VsdC50eEhleC5sZW5ndGggPiAwXG4gICAgICAgID8gJ2Z1bmRlZCdcbiAgICAgICAgOiAndW5rbm93bic7XG4gICAgfSBjYXRjaCAoZXJyKSB7XG4gICAgICByZXR1cm4gZXJyIGluc3RhbmNlb2YgRXJyb3JOb0lucHV0VG9SZWNvdmVyID8gJ2VtcHR5JyA6ICd1bmtub3duJztcbiAgICB9XG4gIH0pO1xufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcmVjb3ZlclNhZmVXYWxsZXQoXG4gIGNvaW46IEFic3RyYWN0VXR4b0NvaW4sXG4gIHRyaXBsZXQ6IFNhZmVDaGlsZFRyaXBsZXQsXG4gIG9wdGlvbnM6IFJlY292ZXJTYWZlV2FsbGV0T3B0aW9uc1xuKTogUmV0dXJuVHlwZTx0eXBlb2YgYmFja3VwS2V5UmVjb3Zlcnk+IHtcbiAgcmV0dXJuIHdpdGhTYWZlUmVjb3ZlcnlHdWFyZChjb2luLCBvcHRpb25zLCBhc3luYyAoKSA9PiB7XG4gICAgY29uc3QgeyBtb2RlLCByZWNvdmVyeURlc3RpbmF0aW9uLCAuLi5yZXN0IH0gPSBvcHRpb25zO1xuICAgIGNvbnN0IHJlY292ZXJ5UGFyYW1zOiBSZWNvdmVyUGFyYW1zID0ge1xuICAgICAgLi4ucmVzdCxcbiAgICAgIHJlY292ZXJ5RGVzdGluYXRpb24sXG4gICAgICB1c2VyS2V5OiBtb2RlID09PSAnc2lnbmVkJyA/IHRyaXBsZXQudXNlci5wcnYgOiB0cmlwbGV0LnVzZXIucHViLFxuICAgICAgYmFja3VwS2V5OiBtb2RlID09PSAnc2lnbmVkJyA/IHRyaXBsZXQuYmFja3VwLnBydiA6IHRyaXBsZXQuYmFja3VwLnB1YixcbiAgICAgIGJpdGdvS2V5OiB0cmlwbGV0LmJpdGdvLnB1YixcbiAgICAgIGlnbm9yZUFkZHJlc3NUeXBlczogW10sXG4gICAgfTtcblxuICAgIHJldHVybiBjb2luLnJlY292ZXIocmVjb3ZlcnlQYXJhbXMpO1xuICB9KTtcbn1cbiJdfQ==
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bitgo/abstract-utxo",
3
- "version": "13.1.1",
3
+ "version": "13.2.1",
4
4
  "description": "BitGo SDK coin library for UTXO base implementation",
5
5
  "main": "./dist/cjs/src/index.js",
6
6
  "module": "./dist/esm/index.js",
@@ -61,12 +61,13 @@
61
61
  },
62
62
  "dependencies": {
63
63
  "@bitgo/blockapis": "^1.13.11",
64
- "@bitgo/sdk-api": "^3.0.3",
65
- "@bitgo/sdk-core": "^38.19.0",
66
- "@bitgo/utxo-core": "^1.41.4",
67
- "@bitgo/utxo-descriptors": "^2.0.0",
68
- "@bitgo/utxo-ord": "^1.34.4",
69
- "@bitgo/wasm-utxo": "^5.3.0",
64
+ "@bitgo/sdk-api": "^3.0.5",
65
+ "@bitgo/sdk-core": "^38.21.0",
66
+ "@bitgo/sdk-lib-safes": "^1.2.1",
67
+ "@bitgo/utxo-core": "^1.41.5",
68
+ "@bitgo/utxo-descriptors": "^2.1.0",
69
+ "@bitgo/utxo-ord": "^1.34.5",
70
+ "@bitgo/wasm-utxo": "^5.5.1",
70
71
  "@types/lodash": "^4.14.121",
71
72
  "@types/superagent": "4.1.15",
72
73
  "bignumber.js": "^9.0.2",
@@ -76,10 +77,10 @@
76
77
  "superagent": "^9.0.1"
77
78
  },
78
79
  "devDependencies": {
79
- "@bitgo/sdk-test": "^9.1.80",
80
- "@bitgo/statics": "^59.18.0",
80
+ "@bitgo/sdk-test": "^9.1.82",
81
+ "@bitgo/statics": "^59.20.0",
81
82
  "@bitgo/utxo-lib": "^11.24.4",
82
83
  "mocha": "^10.2.0"
83
84
  },
84
- "gitHead": "304335da5cb6896a09eeacf7dfa8530d160cbbbd"
85
+ "gitHead": "4e9b951cef816761013311d2f695175206b9ba02"
85
86
  }