@bitgo/sdk-coin-sui 3.0.7 → 3.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/.mocharc.yml CHANGED
@@ -1,8 +1,7 @@
1
1
  require: 'ts-node/register'
2
- timeout: '60000'
2
+ timeout: 60000
3
3
  reporter: 'min'
4
4
  reporter-option:
5
5
  - 'cdn=true'
6
6
  - 'json=false'
7
7
  exit: true
8
- spec: ['test/unit/**/*.ts']
package/CHANGELOG.md CHANGED
@@ -3,6 +3,18 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [3.1.0](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-sui@3.0.7...@bitgo/sdk-coin-sui@3.1.0) (2023-06-07)
7
+
8
+ ### Bug Fixes
9
+
10
+ - **sdk-coin-sui:** add method in RpcClient debug output ([e2541f2](https://github.com/BitGo/BitGoJS/commit/e2541f286ee04eeb96ddf4d9860014a26b47d592))
11
+ - **sdk-coin-sui:** improve unstaking test ([9e63d54](https://github.com/BitGo/BitGoJS/commit/9e63d548036516b3bd71c6527e24a290d5fd6674))
12
+ - **sdk-coin-sui:** remove `spec:` config in mocharc.yml ([4b53e1b](https://github.com/BitGo/BitGoJS/commit/4b53e1b3df47e6f33324a00c01e472f7215dc5ad))
13
+
14
+ ### Features
15
+
16
+ - **sdk-coin-sui:** add support for partial unstaking ([20cdb77](https://github.com/BitGo/BitGoJS/commit/20cdb774159dac7335298f3d4d83f8a29018f3c3))
17
+
6
18
  ## [3.0.7](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-sui@3.0.6...@bitgo/sdk-coin-sui@3.0.7) (2023-06-05)
7
19
 
8
20
  ### Bug Fixes
@@ -0,0 +1,9 @@
1
+ import { SuiTransaction } from './iface';
2
+ export declare function assertEqualTransactionBlocks(a: {
3
+ inputs: SuiTransaction['tx']['inputs'];
4
+ transactions: unknown[];
5
+ }, b: {
6
+ inputs: SuiTransaction['tx']['inputs'];
7
+ transactions: unknown[];
8
+ }): void;
9
+ //# sourceMappingURL=compareTransactionBlocks.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compareTransactionBlocks.d.ts","sourceRoot":"","sources":["../../../src/lib/compareTransactionBlocks.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAEzC,wBAAgB,4BAA4B,CAC1C,CAAC,EAAE;IAAE,MAAM,EAAE,cAAc,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC;IAAC,YAAY,EAAE,OAAO,EAAE,CAAA;CAAE,EACtE,CAAC,EAAE;IAAE,MAAM,EAAE,cAAc,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC;IAAC,YAAY,EAAE,OAAO,EAAE,CAAA;CAAE,GACrE,IAAI,CAGN"}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.assertEqualTransactionBlocks = void 0;
7
+ const assert_1 = __importDefault(require("assert"));
8
+ function assertEqualTransactionBlocks(a, b) {
9
+ assert_1.default.deepStrictEqual(a.inputs, b.inputs, 'Different inputs');
10
+ assert_1.default.deepStrictEqual(a.transactions, b.transactions, 'Different transactions');
11
+ }
12
+ exports.assertEqualTransactionBlocks = assertEqualTransactionBlocks;
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tcGFyZVRyYW5zYWN0aW9uQmxvY2tzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9jb21wYXJlVHJhbnNhY3Rpb25CbG9ja3MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsb0RBQTRCO0FBRzVCLFNBQWdCLDRCQUE0QixDQUMxQyxDQUFzRSxFQUN0RSxDQUFzRTtJQUV0RSxnQkFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxNQUFNLEVBQUUsa0JBQWtCLENBQUMsQ0FBQztJQUMvRCxnQkFBTSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUMsWUFBWSxFQUFFLENBQUMsQ0FBQyxZQUFZLEVBQUUsd0JBQXdCLENBQUMsQ0FBQztBQUNuRixDQUFDO0FBTkQsb0VBTUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgYXNzZXJ0IGZyb20gJ2Fzc2VydCc7XG5pbXBvcnQgeyBTdWlUcmFuc2FjdGlvbiB9IGZyb20gJy4vaWZhY2UnO1xuXG5leHBvcnQgZnVuY3Rpb24gYXNzZXJ0RXF1YWxUcmFuc2FjdGlvbkJsb2NrcyhcbiAgYTogeyBpbnB1dHM6IFN1aVRyYW5zYWN0aW9uWyd0eCddWydpbnB1dHMnXTsgdHJhbnNhY3Rpb25zOiB1bmtub3duW10gfSxcbiAgYjogeyBpbnB1dHM6IFN1aVRyYW5zYWN0aW9uWyd0eCddWydpbnB1dHMnXTsgdHJhbnNhY3Rpb25zOiB1bmtub3duW10gfVxuKTogdm9pZCB7XG4gIGFzc2VydC5kZWVwU3RyaWN0RXF1YWwoYS5pbnB1dHMsIGIuaW5wdXRzLCAnRGlmZmVyZW50IGlucHV0cycpO1xuICBhc3NlcnQuZGVlcFN0cmljdEVxdWFsKGEudHJhbnNhY3Rpb25zLCBiLnRyYW5zYWN0aW9ucywgJ0RpZmZlcmVudCB0cmFuc2FjdGlvbnMnKTtcbn1cbiJdfQ==
@@ -6,4 +6,5 @@ export declare const SUI_ADDRESS_LENGTH = 32;
6
6
  export declare const SER_BUFFER_SIZE = 8192;
7
7
  export declare const SUI_INTENT_BYTES: Buffer;
8
8
  export declare const SIGNATURE_SCHEME_BYTES: number[];
9
+ export declare const MIN_STAKING_THRESHOLD = 1000000000;
9
10
  //# sourceMappingURL=constants.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/lib/constants.ts"],"names":[],"mappings":";AAAA,eAAO,MAAM,gBAAgB,gBAAgB,CAAC;AAC9C,eAAO,MAAM,mBAAmB,mBAAmB,CAAC;AAIpD,eAAO,MAAM,mBAAmB,OAAO,CAAC;AACxC,eAAO,MAAM,kBAAkB,KAAK,CAAC;AACrC,eAAO,MAAM,eAAe,OAAO,CAAC;AAEpC,eAAO,MAAM,gBAAgB,QAAyB,CAAC;AAEvD,eAAO,MAAM,sBAAsB,UAAS,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/lib/constants.ts"],"names":[],"mappings":";AAAA,eAAO,MAAM,gBAAgB,gBAAgB,CAAC;AAC9C,eAAO,MAAM,mBAAmB,mBAAmB,CAAC;AAIpD,eAAO,MAAM,mBAAmB,OAAO,CAAC;AACxC,eAAO,MAAM,kBAAkB,KAAK,CAAC;AACrC,eAAO,MAAM,eAAe,OAAO,CAAC;AAEpC,eAAO,MAAM,gBAAgB,QAAyB,CAAC;AAEvD,eAAO,MAAM,sBAAsB,UAAS,CAAC;AAE7C,eAAO,MAAM,qBAAqB,aAAgB,CAAC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SIGNATURE_SCHEME_BYTES = exports.SUI_INTENT_BYTES = exports.SER_BUFFER_SIZE = exports.SUI_ADDRESS_LENGTH = exports.DUMMY_SUI_GAS_PRICE = exports.AMOUNT_UNKNOWN_TEXT = exports.UNAVAILABLE_TEXT = void 0;
3
+ exports.MIN_STAKING_THRESHOLD = exports.SIGNATURE_SCHEME_BYTES = exports.SUI_INTENT_BYTES = exports.SER_BUFFER_SIZE = exports.SUI_ADDRESS_LENGTH = exports.DUMMY_SUI_GAS_PRICE = exports.AMOUNT_UNKNOWN_TEXT = exports.UNAVAILABLE_TEXT = void 0;
4
4
  exports.UNAVAILABLE_TEXT = 'UNAVAILABLE';
5
5
  exports.AMOUNT_UNKNOWN_TEXT = 'AMOUNT_UNKNOWN';
6
6
  // Refer to
@@ -10,4 +10,5 @@ exports.SUI_ADDRESS_LENGTH = 32;
10
10
  exports.SER_BUFFER_SIZE = 8192;
11
11
  exports.SUI_INTENT_BYTES = Buffer.from([0, 0, 0]);
12
12
  exports.SIGNATURE_SCHEME_BYTES = [0x00];
13
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9jb25zdGFudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQWEsUUFBQSxnQkFBZ0IsR0FBRyxhQUFhLENBQUM7QUFDakMsUUFBQSxtQkFBbUIsR0FBRyxnQkFBZ0IsQ0FBQztBQUVwRCxXQUFXO0FBQ1gsbUZBQW1GO0FBQ3RFLFFBQUEsbUJBQW1CLEdBQUcsSUFBSSxDQUFDO0FBQzNCLFFBQUEsa0JBQWtCLEdBQUcsRUFBRSxDQUFDO0FBQ3hCLFFBQUEsZUFBZSxHQUFHLElBQUksQ0FBQztBQUV2QixRQUFBLGdCQUFnQixHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFFMUMsUUFBQSxzQkFBc0IsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IFVOQVZBSUxBQkxFX1RFWFQgPSAnVU5BVkFJTEFCTEUnO1xuZXhwb3J0IGNvbnN0IEFNT1VOVF9VTktOT1dOX1RFWFQgPSAnQU1PVU5UX1VOS05PV04nO1xuXG4vLyBSZWZlciB0b1xuLy8gaHR0cHM6Ly9naXRodWIuY29tL015c3RlbkxhYnMvc3VpL2Jsb2IvbWFpbi9jcmF0ZXMvc3VpLXR5cGVzL3NyYy9tZXNzYWdlcy5ycyNMNTBcbmV4cG9ydCBjb25zdCBEVU1NWV9TVUlfR0FTX1BSSUNFID0gMTAwMDtcbmV4cG9ydCBjb25zdCBTVUlfQUREUkVTU19MRU5HVEggPSAzMjtcbmV4cG9ydCBjb25zdCBTRVJfQlVGRkVSX1NJWkUgPSA4MTkyO1xuXG5leHBvcnQgY29uc3QgU1VJX0lOVEVOVF9CWVRFUyA9IEJ1ZmZlci5mcm9tKFswLCAwLCAwXSk7XG5cbmV4cG9ydCBjb25zdCBTSUdOQVRVUkVfU0NIRU1FX0JZVEVTID0gWzB4MDBdO1xuIl19
13
+ exports.MIN_STAKING_THRESHOLD = 1000000000; // 1 SUI
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uc3RhbnRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9jb25zdGFudHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQWEsUUFBQSxnQkFBZ0IsR0FBRyxhQUFhLENBQUM7QUFDakMsUUFBQSxtQkFBbUIsR0FBRyxnQkFBZ0IsQ0FBQztBQUVwRCxXQUFXO0FBQ1gsbUZBQW1GO0FBQ3RFLFFBQUEsbUJBQW1CLEdBQUcsSUFBSSxDQUFDO0FBQzNCLFFBQUEsa0JBQWtCLEdBQUcsRUFBRSxDQUFDO0FBQ3hCLFFBQUEsZUFBZSxHQUFHLElBQUksQ0FBQztBQUV2QixRQUFBLGdCQUFnQixHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7QUFFMUMsUUFBQSxzQkFBc0IsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDO0FBRWhDLFFBQUEscUJBQXFCLEdBQUcsVUFBYSxDQUFDLENBQUMsUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBVTkFWQUlMQUJMRV9URVhUID0gJ1VOQVZBSUxBQkxFJztcbmV4cG9ydCBjb25zdCBBTU9VTlRfVU5LTk9XTl9URVhUID0gJ0FNT1VOVF9VTktOT1dOJztcblxuLy8gUmVmZXIgdG9cbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9NeXN0ZW5MYWJzL3N1aS9ibG9iL21haW4vY3JhdGVzL3N1aS10eXBlcy9zcmMvbWVzc2FnZXMucnMjTDUwXG5leHBvcnQgY29uc3QgRFVNTVlfU1VJX0dBU19QUklDRSA9IDEwMDA7XG5leHBvcnQgY29uc3QgU1VJX0FERFJFU1NfTEVOR1RIID0gMzI7XG5leHBvcnQgY29uc3QgU0VSX0JVRkZFUl9TSVpFID0gODE5MjtcblxuZXhwb3J0IGNvbnN0IFNVSV9JTlRFTlRfQllURVMgPSBCdWZmZXIuZnJvbShbMCwgMCwgMF0pO1xuXG5leHBvcnQgY29uc3QgU0lHTkFUVVJFX1NDSEVNRV9CWVRFUyA9IFsweDAwXTtcblxuZXhwb3J0IGNvbnN0IE1JTl9TVEFLSU5HX1RIUkVTSE9MRCA9IDFfMDAwXzAwMF8wMDA7IC8vIDEgU1VJXG4iXX0=
@@ -42,6 +42,7 @@ export interface RequestAddStake {
42
42
  validatorAddress: SuiAddress;
43
43
  }
44
44
  export interface RequestWithdrawStakedSui {
45
+ amount?: number;
45
46
  stakedSui: SuiObjectRef;
46
47
  }
47
48
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"iface.d.ts","sourceRoot":"","sources":["../../../src/lib/iface.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,IAAI,0BAA0B,EACpD,eAAe,IAAI,oBAAoB,EACxC,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,OAAO,EACP,uBAAuB,EACvB,OAAO,EACP,UAAU,EACV,YAAY,EACZ,qBAAqB,EACtB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAE7E,oBAAY,kBAAkB;IAC5B,QAAQ,aAAa;IACrB,QAAQ,aAAa;IACrB,aAAa,kBAAkB;CAChC;AAED,MAAM,WAAW,sBAAuB,SAAQ,0BAA0B;IACxE,IAAI,EAAE,oBAAoB,CAAC;CAC5B;AAED,MAAM,WAAW,MAAM;IACrB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,UAAU,CAAC;IACnB,UAAU,EAAE,qBAAqB,CAAC;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE;QAAE,uBAAuB,EAAE,+BAA+B,GAAG,8BAA8B,CAAA;KAAE,CAAC;CACrG;AAED,oBAAY,+BAA+B,GACvC,uBAAuB,GACvB;IACE,MAAM,EAAE,OAAO,EAAE,GAAG,qBAAqB,EAAE,CAAC;IAC5C,YAAY,EAAE,eAAe,EAAE,CAAC;CACjC,CAAC;AAEN,oBAAY,8BAA8B,GACtC,uBAAuB,GACvB;IACE,MAAM,EAAE,OAAO,EAAE,GAAG,qBAAqB,EAAE,CAAC;IAC5C,YAAY,EAAE,eAAe,EAAE,CAAC;CACjC,CAAC;AAEN,oBAAY,gCAAgC,GACxC,uBAAuB,GACvB;IACE,MAAM,EAAE,OAAO,EAAE,GAAG,qBAAqB,EAAE,CAAC;IAC5C,YAAY,EAAE,eAAe,EAAE,CAAC;CACjC,CAAC;AAEN,MAAM,WAAW,cAAc,CAAC,CAAC,GAAG,+BAA+B,GAAG,8BAA8B;IAClG,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,kBAAkB,CAAC;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,EAAE,EAAE,CAAC,CAAC;IACN,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,gBAAgB,EAAE,UAAU,CAAC;CAC9B;AAED,MAAM,WAAW,wBAAwB;IACvC,SAAS,EAAE,YAAY,CAAC;CACzB;AAED;;GAEG;AACH,oBAAY,WAAW;IACrB;;;;OAIG;IACH,eAAe,sBAAsB;IACrC;;;;OAIG;IACH,oBAAoB,2BAA2B;CAChD"}
1
+ {"version":3,"file":"iface.d.ts","sourceRoot":"","sources":["../../../src/lib/iface.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,IAAI,0BAA0B,EACpD,eAAe,IAAI,oBAAoB,EACxC,MAAM,iBAAiB,CAAC;AACzB,OAAO,EACL,OAAO,EACP,uBAAuB,EACvB,OAAO,EACP,UAAU,EACV,YAAY,EACZ,qBAAqB,EACtB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAE7E,oBAAY,kBAAkB;IAC5B,QAAQ,aAAa;IACrB,QAAQ,aAAa;IACrB,aAAa,kBAAkB;CAChC;AAED,MAAM,WAAW,sBAAuB,SAAQ,0BAA0B;IACxE,IAAI,EAAE,oBAAoB,CAAC;CAC5B;AAED,MAAM,WAAW,MAAM;IACrB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,UAAU,CAAC;IACnB,UAAU,EAAE,qBAAqB,CAAC;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE;QAAE,uBAAuB,EAAE,+BAA+B,GAAG,8BAA8B,CAAA;KAAE,CAAC;CACrG;AAED,oBAAY,+BAA+B,GACvC,uBAAuB,GACvB;IACE,MAAM,EAAE,OAAO,EAAE,GAAG,qBAAqB,EAAE,CAAC;IAC5C,YAAY,EAAE,eAAe,EAAE,CAAC;CACjC,CAAC;AAEN,oBAAY,8BAA8B,GACtC,uBAAuB,GACvB;IACE,MAAM,EAAE,OAAO,EAAE,GAAG,qBAAqB,EAAE,CAAC;IAC5C,YAAY,EAAE,eAAe,EAAE,CAAC;CACjC,CAAC;AAEN,oBAAY,gCAAgC,GACxC,uBAAuB,GACvB;IACE,MAAM,EAAE,OAAO,EAAE,GAAG,qBAAqB,EAAE,CAAC;IAC5C,YAAY,EAAE,eAAe,EAAE,CAAC;CACjC,CAAC;AAEN,MAAM,WAAW,cAAc,CAAC,CAAC,GAAG,+BAA+B,GAAG,8BAA8B;IAClG,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,kBAAkB,CAAC;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,EAAE,EAAE,CAAC,CAAC;IACN,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,MAAM,CAAC;IACf,gBAAgB,EAAE,UAAU,CAAC;CAC9B;AAED,MAAM,WAAW,wBAAwB;IACvC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,YAAY,CAAC;CACzB;AAED;;GAEG;AACH,oBAAY,WAAW;IACrB;;;;OAIG;IACH,eAAe,sBAAsB;IACrC;;;;OAIG;IACH,oBAAoB,2BAA2B;CAChD"}
@@ -25,4 +25,4 @@ var MethodNames;
25
25
  */
26
26
  MethodNames["RequestWithdrawStake"] = "request_withdraw_stake";
27
27
  })(MethodNames = exports.MethodNames || (exports.MethodNames = {}));
28
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2lmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQWNBLElBQVksa0JBSVg7QUFKRCxXQUFZLGtCQUFrQjtJQUM1QiwyQ0FBcUIsQ0FBQTtJQUNyQiwyQ0FBcUIsQ0FBQTtJQUNyQixxREFBK0IsQ0FBQTtBQUNqQyxDQUFDLEVBSlcsa0JBQWtCLEdBQWxCLDBCQUFrQixLQUFsQiwwQkFBa0IsUUFJN0I7QUFvREQ7O0dBRUc7QUFDSCxJQUFZLFdBYVg7QUFiRCxXQUFZLFdBQVc7SUFDckI7Ozs7T0FJRztJQUNILG9EQUFxQyxDQUFBO0lBQ3JDOzs7O09BSUc7SUFDSCw4REFBK0MsQ0FBQTtBQUNqRCxDQUFDLEVBYlcsV0FBVyxHQUFYLG1CQUFXLEtBQVgsbUJBQVcsUUFhdEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBUcmFuc2FjdGlvbkV4cGxhbmF0aW9uIGFzIEJhc2VUcmFuc2FjdGlvbkV4cGxhbmF0aW9uLFxuICBUcmFuc2FjdGlvblR5cGUgYXMgQml0R29UcmFuc2FjdGlvblR5cGUsXG59IGZyb20gJ0BiaXRnby9zZGstY29yZSc7XG5pbXBvcnQge1xuICBHYXNEYXRhLFxuICBQcm9ncmFtbWFibGVUcmFuc2FjdGlvbixcbiAgQ2FsbEFyZyxcbiAgU3VpQWRkcmVzcyxcbiAgU3VpT2JqZWN0UmVmLFxuICBUcmFuc2FjdGlvbkV4cGlyYXRpb24sXG59IGZyb20gJy4vbXlzdGVubGFiL3R5cGVzJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uVHlwZSwgVHJhbnNhY3Rpb25CbG9ja0lucHV0IH0gZnJvbSAnLi9teXN0ZW5sYWIvYnVpbGRlcic7XG5cbmV4cG9ydCBlbnVtIFN1aVRyYW5zYWN0aW9uVHlwZSB7XG4gIFRyYW5zZmVyID0gJ1RyYW5zZmVyJyxcbiAgQWRkU3Rha2UgPSAnQWRkU3Rha2UnLFxuICBXaXRoZHJhd1N0YWtlID0gJ1dpdGhkcmF3U3Rha2UnLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRyYW5zYWN0aW9uRXhwbGFuYXRpb24gZXh0ZW5kcyBCYXNlVHJhbnNhY3Rpb25FeHBsYW5hdGlvbiB7XG4gIHR5cGU6IEJpdEdvVHJhbnNhY3Rpb25UeXBlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFR4RGF0YSB7XG4gIGlkPzogc3RyaW5nO1xuICBzZW5kZXI6IFN1aUFkZHJlc3M7XG4gIGV4cGlyYXRpb246IFRyYW5zYWN0aW9uRXhwaXJhdGlvbjtcbiAgZ2FzRGF0YTogR2FzRGF0YTtcbiAga2luZDogeyBQcm9ncmFtbWFibGVUcmFuc2FjdGlvbjogVHJhbnNmZXJQcm9ncmFtbWFibGVUcmFuc2FjdGlvbiB8IFN0YWtpbmdQcm9ncmFtbWFibGVUcmFuc2FjdGlvbiB9O1xufVxuXG5leHBvcnQgdHlwZSBUcmFuc2ZlclByb2dyYW1tYWJsZVRyYW5zYWN0aW9uID1cbiAgfCBQcm9ncmFtbWFibGVUcmFuc2FjdGlvblxuICB8IHtcbiAgICAgIGlucHV0czogQ2FsbEFyZ1tdIHwgVHJhbnNhY3Rpb25CbG9ja0lucHV0W107XG4gICAgICB0cmFuc2FjdGlvbnM6IFRyYW5zYWN0aW9uVHlwZVtdO1xuICAgIH07XG5cbmV4cG9ydCB0eXBlIFN0YWtpbmdQcm9ncmFtbWFibGVUcmFuc2FjdGlvbiA9XG4gIHwgUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb25cbiAgfCB7XG4gICAgICBpbnB1dHM6IENhbGxBcmdbXSB8IFRyYW5zYWN0aW9uQmxvY2tJbnB1dFtdO1xuICAgICAgdHJhbnNhY3Rpb25zOiBUcmFuc2FjdGlvblR5cGVbXTtcbiAgICB9O1xuXG5leHBvcnQgdHlwZSBVbnN0YWtpbmdQcm9ncmFtbWFibGVUcmFuc2FjdGlvbiA9XG4gIHwgUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb25cbiAgfCB7XG4gICAgICBpbnB1dHM6IENhbGxBcmdbXSB8IFRyYW5zYWN0aW9uQmxvY2tJbnB1dFtdO1xuICAgICAgdHJhbnNhY3Rpb25zOiBUcmFuc2FjdGlvblR5cGVbXTtcbiAgICB9O1xuXG5leHBvcnQgaW50ZXJmYWNlIFN1aVRyYW5zYWN0aW9uPFQgPSBUcmFuc2ZlclByb2dyYW1tYWJsZVRyYW5zYWN0aW9uIHwgU3Rha2luZ1Byb2dyYW1tYWJsZVRyYW5zYWN0aW9uPiB7XG4gIGlkPzogc3RyaW5nO1xuICB0eXBlOiBTdWlUcmFuc2FjdGlvblR5cGU7XG4gIHNlbmRlcjogc3RyaW5nO1xuICB0eDogVDtcbiAgZ2FzRGF0YTogR2FzRGF0YTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSZXF1ZXN0QWRkU3Rha2Uge1xuICBhbW91bnQ6IG51bWJlcjtcbiAgdmFsaWRhdG9yQWRkcmVzczogU3VpQWRkcmVzcztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSZXF1ZXN0V2l0aGRyYXdTdGFrZWRTdWkge1xuICBzdGFrZWRTdWk6IFN1aU9iamVjdFJlZjtcbn1cblxuLyoqXG4gKiBNZXRob2QgbmFtZXMgZm9yIHRoZSB0cmFuc2FjdGlvbiBtZXRob2QuIE5hbWVzIGNoYW5nZSBiYXNlZCBvbiB0aGUgdHlwZSBvZiB0cmFuc2FjdGlvbiBlLmcgJ3JlcXVlc3RfYWRkX2RlbGVnYXRpb25fbXVsX2NvaW4nIGZvciB0aGUgc3Rha2luZyB0cmFuc2FjdGlvblxuICovXG5leHBvcnQgZW51bSBNZXRob2ROYW1lcyB7XG4gIC8qKlxuICAgKiBBZGQgc3Rha2UgdG8gYSB2YWxpZGF0b3IncyBzdGFraW5nIHBvb2wuXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9naXRodWIuY29tL015c3RlbkxhYnMvc3VpL2Jsb2IvbWFpbi9jcmF0ZXMvc3VpLWZyYW1ld29yay9kb2NzL3N1aV9zeXN0ZW0ubWQjZnVuY3Rpb24tcmVxdWVzdF9hZGRfc3Rha2VcbiAgICovXG4gIFJlcXVlc3RBZGRTdGFrZSA9ICdyZXF1ZXN0X2FkZF9zdGFrZScsXG4gIC8qKlxuICAgKiBXaXRoZHJhdyBzb21lIHBvcnRpb24gb2YgYSBzdGFrZSBmcm9tIGEgdmFsaWRhdG9yJ3Mgc3Rha2luZyBwb29sLlxuICAgKlxuICAgKiBAc2VlIGh0dHBzOi8vZ2l0aHViLmNvbS9NeXN0ZW5MYWJzL3N1aS9ibG9iL21haW4vY3JhdGVzL3N1aS1mcmFtZXdvcmsvZG9jcy9zdWlfc3lzdGVtLm1kI2Z1bmN0aW9uLXJlcXVlc3Rfd2l0aGRyYXdfc3Rha2VcbiAgICovXG4gIFJlcXVlc3RXaXRoZHJhd1N0YWtlID0gJ3JlcXVlc3Rfd2l0aGRyYXdfc3Rha2UnLFxufVxuIl19
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL2lmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQWNBLElBQVksa0JBSVg7QUFKRCxXQUFZLGtCQUFrQjtJQUM1QiwyQ0FBcUIsQ0FBQTtJQUNyQiwyQ0FBcUIsQ0FBQTtJQUNyQixxREFBK0IsQ0FBQTtBQUNqQyxDQUFDLEVBSlcsa0JBQWtCLEdBQWxCLDBCQUFrQixLQUFsQiwwQkFBa0IsUUFJN0I7QUFxREQ7O0dBRUc7QUFDSCxJQUFZLFdBYVg7QUFiRCxXQUFZLFdBQVc7SUFDckI7Ozs7T0FJRztJQUNILG9EQUFxQyxDQUFBO0lBQ3JDOzs7O09BSUc7SUFDSCw4REFBK0MsQ0FBQTtBQUNqRCxDQUFDLEVBYlcsV0FBVyxHQUFYLG1CQUFXLEtBQVgsbUJBQVcsUUFhdEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBUcmFuc2FjdGlvbkV4cGxhbmF0aW9uIGFzIEJhc2VUcmFuc2FjdGlvbkV4cGxhbmF0aW9uLFxuICBUcmFuc2FjdGlvblR5cGUgYXMgQml0R29UcmFuc2FjdGlvblR5cGUsXG59IGZyb20gJ0BiaXRnby9zZGstY29yZSc7XG5pbXBvcnQge1xuICBHYXNEYXRhLFxuICBQcm9ncmFtbWFibGVUcmFuc2FjdGlvbixcbiAgQ2FsbEFyZyxcbiAgU3VpQWRkcmVzcyxcbiAgU3VpT2JqZWN0UmVmLFxuICBUcmFuc2FjdGlvbkV4cGlyYXRpb24sXG59IGZyb20gJy4vbXlzdGVubGFiL3R5cGVzJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uVHlwZSwgVHJhbnNhY3Rpb25CbG9ja0lucHV0IH0gZnJvbSAnLi9teXN0ZW5sYWIvYnVpbGRlcic7XG5cbmV4cG9ydCBlbnVtIFN1aVRyYW5zYWN0aW9uVHlwZSB7XG4gIFRyYW5zZmVyID0gJ1RyYW5zZmVyJyxcbiAgQWRkU3Rha2UgPSAnQWRkU3Rha2UnLFxuICBXaXRoZHJhd1N0YWtlID0gJ1dpdGhkcmF3U3Rha2UnLFxufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRyYW5zYWN0aW9uRXhwbGFuYXRpb24gZXh0ZW5kcyBCYXNlVHJhbnNhY3Rpb25FeHBsYW5hdGlvbiB7XG4gIHR5cGU6IEJpdEdvVHJhbnNhY3Rpb25UeXBlO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFR4RGF0YSB7XG4gIGlkPzogc3RyaW5nO1xuICBzZW5kZXI6IFN1aUFkZHJlc3M7XG4gIGV4cGlyYXRpb246IFRyYW5zYWN0aW9uRXhwaXJhdGlvbjtcbiAgZ2FzRGF0YTogR2FzRGF0YTtcbiAga2luZDogeyBQcm9ncmFtbWFibGVUcmFuc2FjdGlvbjogVHJhbnNmZXJQcm9ncmFtbWFibGVUcmFuc2FjdGlvbiB8IFN0YWtpbmdQcm9ncmFtbWFibGVUcmFuc2FjdGlvbiB9O1xufVxuXG5leHBvcnQgdHlwZSBUcmFuc2ZlclByb2dyYW1tYWJsZVRyYW5zYWN0aW9uID1cbiAgfCBQcm9ncmFtbWFibGVUcmFuc2FjdGlvblxuICB8IHtcbiAgICAgIGlucHV0czogQ2FsbEFyZ1tdIHwgVHJhbnNhY3Rpb25CbG9ja0lucHV0W107XG4gICAgICB0cmFuc2FjdGlvbnM6IFRyYW5zYWN0aW9uVHlwZVtdO1xuICAgIH07XG5cbmV4cG9ydCB0eXBlIFN0YWtpbmdQcm9ncmFtbWFibGVUcmFuc2FjdGlvbiA9XG4gIHwgUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb25cbiAgfCB7XG4gICAgICBpbnB1dHM6IENhbGxBcmdbXSB8IFRyYW5zYWN0aW9uQmxvY2tJbnB1dFtdO1xuICAgICAgdHJhbnNhY3Rpb25zOiBUcmFuc2FjdGlvblR5cGVbXTtcbiAgICB9O1xuXG5leHBvcnQgdHlwZSBVbnN0YWtpbmdQcm9ncmFtbWFibGVUcmFuc2FjdGlvbiA9XG4gIHwgUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb25cbiAgfCB7XG4gICAgICBpbnB1dHM6IENhbGxBcmdbXSB8IFRyYW5zYWN0aW9uQmxvY2tJbnB1dFtdO1xuICAgICAgdHJhbnNhY3Rpb25zOiBUcmFuc2FjdGlvblR5cGVbXTtcbiAgICB9O1xuXG5leHBvcnQgaW50ZXJmYWNlIFN1aVRyYW5zYWN0aW9uPFQgPSBUcmFuc2ZlclByb2dyYW1tYWJsZVRyYW5zYWN0aW9uIHwgU3Rha2luZ1Byb2dyYW1tYWJsZVRyYW5zYWN0aW9uPiB7XG4gIGlkPzogc3RyaW5nO1xuICB0eXBlOiBTdWlUcmFuc2FjdGlvblR5cGU7XG4gIHNlbmRlcjogc3RyaW5nO1xuICB0eDogVDtcbiAgZ2FzRGF0YTogR2FzRGF0YTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSZXF1ZXN0QWRkU3Rha2Uge1xuICBhbW91bnQ6IG51bWJlcjtcbiAgdmFsaWRhdG9yQWRkcmVzczogU3VpQWRkcmVzcztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBSZXF1ZXN0V2l0aGRyYXdTdGFrZWRTdWkge1xuICBhbW91bnQ/OiBudW1iZXI7XG4gIHN0YWtlZFN1aTogU3VpT2JqZWN0UmVmO1xufVxuXG4vKipcbiAqIE1ldGhvZCBuYW1lcyBmb3IgdGhlIHRyYW5zYWN0aW9uIG1ldGhvZC4gTmFtZXMgY2hhbmdlIGJhc2VkIG9uIHRoZSB0eXBlIG9mIHRyYW5zYWN0aW9uIGUuZyAncmVxdWVzdF9hZGRfZGVsZWdhdGlvbl9tdWxfY29pbicgZm9yIHRoZSBzdGFraW5nIHRyYW5zYWN0aW9uXG4gKi9cbmV4cG9ydCBlbnVtIE1ldGhvZE5hbWVzIHtcbiAgLyoqXG4gICAqIEFkZCBzdGFrZSB0byBhIHZhbGlkYXRvcidzIHN0YWtpbmcgcG9vbC5cbiAgICpcbiAgICogQHNlZSBodHRwczovL2dpdGh1Yi5jb20vTXlzdGVuTGFicy9zdWkvYmxvYi9tYWluL2NyYXRlcy9zdWktZnJhbWV3b3JrL2RvY3Mvc3VpX3N5c3RlbS5tZCNmdW5jdGlvbi1yZXF1ZXN0X2FkZF9zdGFrZVxuICAgKi9cbiAgUmVxdWVzdEFkZFN0YWtlID0gJ3JlcXVlc3RfYWRkX3N0YWtlJyxcbiAgLyoqXG4gICAqIFdpdGhkcmF3IHNvbWUgcG9ydGlvbiBvZiBhIHN0YWtlIGZyb20gYSB2YWxpZGF0b3IncyBzdGFraW5nIHBvb2wuXG4gICAqXG4gICAqIEBzZWUgaHR0cHM6Ly9naXRodWIuY29tL015c3RlbkxhYnMvc3VpL2Jsb2IvbWFpbi9jcmF0ZXMvc3VpLWZyYW1ld29yay9kb2NzL3N1aV9zeXN0ZW0ubWQjZnVuY3Rpb24tcmVxdWVzdF93aXRoZHJhd19zdGFrZVxuICAgKi9cbiAgUmVxdWVzdFdpdGhkcmF3U3Rha2UgPSAncmVxdWVzdF93aXRoZHJhd19zdGFrZScsXG59XG4iXX0=
@@ -9,4 +9,6 @@ export declare const SUI_SYSTEM_MODULE_NAME = "sui_system";
9
9
  export declare const ADD_STAKE_FUN_NAME = "request_add_stake";
10
10
  export declare const ADD_STAKE_LOCKED_COIN_FUN_NAME = "request_add_stake_with_locked_coin";
11
11
  export declare const WITHDRAW_STAKE_FUN_NAME = "request_withdraw_stake";
12
+ export declare const SUI_STAKING_POOL_MODULE_NAME = "staking_pool";
13
+ export declare const SUI_STAKING_POOL_SPLIT_FUN_NAME = "split";
12
14
  //# sourceMappingURL=sui-system-state.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sui-system-state.d.ts","sourceRoot":"","sources":["../../../../../src/lib/mystenlab/framework/sui-system-state.ts"],"names":[],"mappings":"AAAA,OAAO,EAAwB,eAAe,EAAE,MAAM,UAAU,CAAC;AAEjE;;;GAGG;AACH,eAAO,MAAM,0BAA0B,EAAE,MAAoC,CAAC;AAE9E,eAAO,MAAM,uBAAuB,EAAE,eAIrC,CAAC;AAEF,eAAO,MAAM,sBAAsB,eAAe,CAAC;AACnD,eAAO,MAAM,kBAAkB,sBAAsB,CAAC;AACtD,eAAO,MAAM,8BAA8B,uCAAuC,CAAC;AACnF,eAAO,MAAM,uBAAuB,2BAA2B,CAAC"}
1
+ {"version":3,"file":"sui-system-state.d.ts","sourceRoot":"","sources":["../../../../../src/lib/mystenlab/framework/sui-system-state.ts"],"names":[],"mappings":"AAAA,OAAO,EAAwB,eAAe,EAAE,MAAM,UAAU,CAAC;AAEjE;;;GAGG;AACH,eAAO,MAAM,0BAA0B,EAAE,MAAoC,CAAC;AAE9E,eAAO,MAAM,uBAAuB,EAAE,eAIrC,CAAC;AAEF,eAAO,MAAM,sBAAsB,eAAe,CAAC;AACnD,eAAO,MAAM,kBAAkB,sBAAsB,CAAC;AACtD,eAAO,MAAM,8BAA8B,uCAAuC,CAAC;AACnF,eAAO,MAAM,uBAAuB,2BAA2B,CAAC;AAGhE,eAAO,MAAM,4BAA4B,iBAAiB,CAAC;AAC3D,eAAO,MAAM,+BAA+B,UAAU,CAAC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.WITHDRAW_STAKE_FUN_NAME = exports.ADD_STAKE_LOCKED_COIN_FUN_NAME = exports.ADD_STAKE_FUN_NAME = exports.SUI_SYSTEM_MODULE_NAME = exports.SUI_SYSTEM_STATE_OBJECT = exports.SUI_SYSTEM_STATE_OBJECT_ID = void 0;
3
+ exports.SUI_STAKING_POOL_SPLIT_FUN_NAME = exports.SUI_STAKING_POOL_MODULE_NAME = exports.WITHDRAW_STAKE_FUN_NAME = exports.ADD_STAKE_LOCKED_COIN_FUN_NAME = exports.ADD_STAKE_FUN_NAME = exports.SUI_SYSTEM_MODULE_NAME = exports.SUI_SYSTEM_STATE_OBJECT = exports.SUI_SYSTEM_STATE_OBJECT_ID = void 0;
4
4
  const types_1 = require("../types");
5
5
  /**
6
6
  * Address of the Sui System object.
@@ -16,4 +16,7 @@ exports.SUI_SYSTEM_MODULE_NAME = 'sui_system';
16
16
  exports.ADD_STAKE_FUN_NAME = 'request_add_stake';
17
17
  exports.ADD_STAKE_LOCKED_COIN_FUN_NAME = 'request_add_stake_with_locked_coin';
18
18
  exports.WITHDRAW_STAKE_FUN_NAME = 'request_withdraw_stake';
19
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VpLXN5c3RlbS1zdGF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvbXlzdGVubGFiL2ZyYW1ld29yay9zdWktc3lzdGVtLXN0YXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLG9DQUFpRTtBQUVqRTs7O0dBR0c7QUFDVSxRQUFBLDBCQUEwQixHQUFXLDRCQUFvQixDQUFDLEtBQUssQ0FBQyxDQUFDO0FBRWpFLFFBQUEsdUJBQXVCLEdBQW9CO0lBQ3RELFFBQVEsRUFBRSxrQ0FBMEI7SUFDcEMsb0JBQW9CLEVBQUUsQ0FBQztJQUN2QixPQUFPLEVBQUUsSUFBSTtDQUNkLENBQUM7QUFFVyxRQUFBLHNCQUFzQixHQUFHLFlBQVksQ0FBQztBQUN0QyxRQUFBLGtCQUFrQixHQUFHLG1CQUFtQixDQUFDO0FBQ3pDLFFBQUEsOEJBQThCLEdBQUcsb0NBQW9DLENBQUM7QUFDdEUsUUFBQSx1QkFBdUIsR0FBRyx3QkFBd0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IG5vcm1hbGl6ZVN1aU9iamVjdElkLCBTaGFyZWRPYmplY3RSZWYgfSBmcm9tICcuLi90eXBlcyc7XG5cbi8qKlxuICogQWRkcmVzcyBvZiB0aGUgU3VpIFN5c3RlbSBvYmplY3QuXG4gKiBBbHdheXMgdGhlIHNhbWUgaW4gZXZlcnkgU3VpIG5ldHdvcmsgKGxvY2FsLCBkZXZuZXQsIHRlc3RuZXQpLlxuICovXG5leHBvcnQgY29uc3QgU1VJX1NZU1RFTV9TVEFURV9PQkpFQ1RfSUQ6IHN0cmluZyA9IG5vcm1hbGl6ZVN1aU9iamVjdElkKCcweDUnKTtcblxuZXhwb3J0IGNvbnN0IFNVSV9TWVNURU1fU1RBVEVfT0JKRUNUOiBTaGFyZWRPYmplY3RSZWYgPSB7XG4gIG9iamVjdElkOiBTVUlfU1lTVEVNX1NUQVRFX09CSkVDVF9JRCxcbiAgaW5pdGlhbFNoYXJlZFZlcnNpb246IDEsXG4gIG11dGFibGU6IHRydWUsXG59O1xuXG5leHBvcnQgY29uc3QgU1VJX1NZU1RFTV9NT0RVTEVfTkFNRSA9ICdzdWlfc3lzdGVtJztcbmV4cG9ydCBjb25zdCBBRERfU1RBS0VfRlVOX05BTUUgPSAncmVxdWVzdF9hZGRfc3Rha2UnO1xuZXhwb3J0IGNvbnN0IEFERF9TVEFLRV9MT0NLRURfQ09JTl9GVU5fTkFNRSA9ICdyZXF1ZXN0X2FkZF9zdGFrZV93aXRoX2xvY2tlZF9jb2luJztcbmV4cG9ydCBjb25zdCBXSVRIRFJBV19TVEFLRV9GVU5fTkFNRSA9ICdyZXF1ZXN0X3dpdGhkcmF3X3N0YWtlJztcbiJdfQ==
19
+ // https://github.com/MystenLabs/sui/blob/main/crates/sui-framework/docs/staking_pool.md
20
+ exports.SUI_STAKING_POOL_MODULE_NAME = 'staking_pool';
21
+ exports.SUI_STAKING_POOL_SPLIT_FUN_NAME = 'split';
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VpLXN5c3RlbS1zdGF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvbXlzdGVubGFiL2ZyYW1ld29yay9zdWktc3lzdGVtLXN0YXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLG9DQUFpRTtBQUVqRTs7O0dBR0c7QUFDVSxRQUFBLDBCQUEwQixHQUFXLDRCQUFvQixDQUFDLEtBQUssQ0FBQyxDQUFDO0FBRWpFLFFBQUEsdUJBQXVCLEdBQW9CO0lBQ3RELFFBQVEsRUFBRSxrQ0FBMEI7SUFDcEMsb0JBQW9CLEVBQUUsQ0FBQztJQUN2QixPQUFPLEVBQUUsSUFBSTtDQUNkLENBQUM7QUFFVyxRQUFBLHNCQUFzQixHQUFHLFlBQVksQ0FBQztBQUN0QyxRQUFBLGtCQUFrQixHQUFHLG1CQUFtQixDQUFDO0FBQ3pDLFFBQUEsOEJBQThCLEdBQUcsb0NBQW9DLENBQUM7QUFDdEUsUUFBQSx1QkFBdUIsR0FBRyx3QkFBd0IsQ0FBQztBQUVoRSx3RkFBd0Y7QUFDM0UsUUFBQSw0QkFBNEIsR0FBRyxjQUFjLENBQUM7QUFDOUMsUUFBQSwrQkFBK0IsR0FBRyxPQUFPLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBub3JtYWxpemVTdWlPYmplY3RJZCwgU2hhcmVkT2JqZWN0UmVmIH0gZnJvbSAnLi4vdHlwZXMnO1xuXG4vKipcbiAqIEFkZHJlc3Mgb2YgdGhlIFN1aSBTeXN0ZW0gb2JqZWN0LlxuICogQWx3YXlzIHRoZSBzYW1lIGluIGV2ZXJ5IFN1aSBuZXR3b3JrIChsb2NhbCwgZGV2bmV0LCB0ZXN0bmV0KS5cbiAqL1xuZXhwb3J0IGNvbnN0IFNVSV9TWVNURU1fU1RBVEVfT0JKRUNUX0lEOiBzdHJpbmcgPSBub3JtYWxpemVTdWlPYmplY3RJZCgnMHg1Jyk7XG5cbmV4cG9ydCBjb25zdCBTVUlfU1lTVEVNX1NUQVRFX09CSkVDVDogU2hhcmVkT2JqZWN0UmVmID0ge1xuICBvYmplY3RJZDogU1VJX1NZU1RFTV9TVEFURV9PQkpFQ1RfSUQsXG4gIGluaXRpYWxTaGFyZWRWZXJzaW9uOiAxLFxuICBtdXRhYmxlOiB0cnVlLFxufTtcblxuZXhwb3J0IGNvbnN0IFNVSV9TWVNURU1fTU9EVUxFX05BTUUgPSAnc3VpX3N5c3RlbSc7XG5leHBvcnQgY29uc3QgQUREX1NUQUtFX0ZVTl9OQU1FID0gJ3JlcXVlc3RfYWRkX3N0YWtlJztcbmV4cG9ydCBjb25zdCBBRERfU1RBS0VfTE9DS0VEX0NPSU5fRlVOX05BTUUgPSAncmVxdWVzdF9hZGRfc3Rha2Vfd2l0aF9sb2NrZWRfY29pbic7XG5leHBvcnQgY29uc3QgV0lUSERSQVdfU1RBS0VfRlVOX05BTUUgPSAncmVxdWVzdF93aXRoZHJhd19zdGFrZSc7XG5cbi8vIGh0dHBzOi8vZ2l0aHViLmNvbS9NeXN0ZW5MYWJzL3N1aS9ibG9iL21haW4vY3JhdGVzL3N1aS1mcmFtZXdvcmsvZG9jcy9zdGFraW5nX3Bvb2wubWRcbmV4cG9ydCBjb25zdCBTVUlfU1RBS0lOR19QT09MX01PRFVMRV9OQU1FID0gJ3N0YWtpbmdfcG9vbCc7XG5leHBvcnQgY29uc3QgU1VJX1NUQUtJTkdfUE9PTF9TUExJVF9GVU5fTkFNRSA9ICdzcGxpdCc7XG4iXX0=
@@ -4,6 +4,8 @@ import { SuiTransaction, RequestWithdrawStakedSui, UnstakingProgrammableTransact
4
4
  import { TransactionBuilder } from './transactionBuilder';
5
5
  import { Transaction } from './transaction';
6
6
  import { TransferTransaction } from './transferTransaction';
7
+ import { SuiObjectRef } from './mystenlab/types';
8
+ import { SerializedTransactionDataBuilder } from './mystenlab/builder/TransactionDataBlock';
7
9
  export declare class UnstakingBuilder extends TransactionBuilder<UnstakingProgrammableTransaction> {
8
10
  protected _withdrawDelegation: RequestWithdrawStakedSui;
9
11
  constructor(_coinConfig: Readonly<CoinConfig>);
@@ -44,10 +46,11 @@ export declare class UnstakingBuilder extends TransactionBuilder<UnstakingProgra
44
46
  * Validates all fields are defined
45
47
  */
46
48
  private validateTransactionFields;
49
+ static getTransactionBlockData(objectRef: SuiObjectRef, amount?: bigint): SerializedTransactionDataBuilder;
47
50
  /**
48
51
  * Build SuiTransaction
49
52
  *
50
- * @return {BitGoSuiTransaction<MoveCallTx>}
53
+ * @return {SuiTransaction<UnstakingProgrammableTransaction>}
51
54
  * @protected
52
55
  */
53
56
  protected buildSuiTransaction(): SuiTransaction<UnstakingProgrammableTransaction>;
@@ -1 +1 @@
1
- {"version":3,"file":"unstakingBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/unstakingBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,OAAO,EAAyB,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClF,OAAO,EACL,cAAc,EACd,wBAAwB,EAExB,gCAAgC,EACjC,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAe5D,qBAAa,gBAAiB,SAAQ,kBAAkB,CAAC,gCAAgC,CAAC;IACxF,SAAS,CAAC,mBAAmB,EAAE,wBAAwB,CAAC;gBAE5C,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAK7C;;;;OAIG;IACH,SAAS,CAAC,uBAAuB,IAAI,cAAc,CAAC,gCAAgC,CAAC;IAYrF;;;;;OAKG;IACH,SAAS,KAAK,eAAe,IAAI,eAAe,CAE/C;IAED,kBAAkB;IAClB,mBAAmB,CAAC,WAAW,EAAE,mBAAmB,GAAG,IAAI;IAO3D,kBAAkB;IAClB,IAAI,CAAC,GAAG,EAAE,OAAO;IAKjB;;;;OAIG;IACH,OAAO,CAAC,OAAO,EAAE,wBAAwB,GAAG,IAAI;IAMhD,kBAAkB;IAClB,SAAS,CAAC,kBAAkB,CAAC,cAAc,EAAE,MAAM,GAAG,WAAW,CAAC,gCAAgC,CAAC;IAQnG,kBAAkB;cACF,mBAAmB,IAAI,OAAO,CAAC,WAAW,CAAC,gCAAgC,CAAC,CAAC;IAgB7F;;;;OAIG;IACH,WAAW,CAAC,EAAE,EAAE,WAAW,CAAC,gCAAgC,CAAC,GAAG,IAAI;IAqBpE;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAWjC;;;;;OAKG;IACH,SAAS,CAAC,mBAAmB,IAAI,cAAc,CAAC,gCAAgC,CAAC;CA0BlF"}
1
+ {"version":3,"file":"unstakingBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/unstakingBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,OAAO,EAAyB,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClF,OAAO,EACL,cAAc,EACd,wBAAwB,EAExB,gCAAgC,EACjC,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAiB5D,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,gCAAgC,EAAE,MAAM,0CAA0C,CAAC;AAE5F,qBAAa,gBAAiB,SAAQ,kBAAkB,CAAC,gCAAgC,CAAC;IACxF,SAAS,CAAC,mBAAmB,EAAE,wBAAwB,CAAC;gBAE5C,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAK7C;;;;OAIG;IACH,SAAS,CAAC,uBAAuB,IAAI,cAAc,CAAC,gCAAgC,CAAC;IAYrF;;;;;OAKG;IACH,SAAS,KAAK,eAAe,IAAI,eAAe,CAE/C;IAED,kBAAkB;IAClB,mBAAmB,CAAC,WAAW,EAAE,mBAAmB,GAAG,IAAI;IAO3D,kBAAkB;IAClB,IAAI,CAAC,GAAG,EAAE,OAAO;IAKjB;;;;OAIG;IACH,OAAO,CAAC,OAAO,EAAE,wBAAwB,GAAG,IAAI;IAWhD,kBAAkB;IAClB,SAAS,CAAC,kBAAkB,CAAC,cAAc,EAAE,MAAM,GAAG,WAAW,CAAC,gCAAgC,CAAC;IAQnG,kBAAkB;cACF,mBAAmB,IAAI,OAAO,CAAC,WAAW,CAAC,gCAAgC,CAAC,CAAC;IAgB7F;;;;OAIG;IACH,WAAW,CAAC,EAAE,EAAE,WAAW,CAAC,gCAAgC,CAAC,GAAG,IAAI;IAqBpE;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAWjC,MAAM,CAAC,uBAAuB,CAAC,SAAS,EAAE,YAAY,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,gCAAgC;IA2B1G;;;;;OAKG;IACH,SAAS,CAAC,mBAAmB,IAAI,cAAc,CAAC,gCAAgC,CAAC;CAkBlF"}
@@ -11,6 +11,7 @@ const assert_1 = __importDefault(require("assert"));
11
11
  const builder_1 = require("./mystenlab/builder");
12
12
  const framework_1 = require("./mystenlab/framework");
13
13
  const unstakingTransaction_1 = require("./unstakingTransaction");
14
+ const utils_1 = __importDefault(require("./utils"));
14
15
  class UnstakingBuilder extends transactionBuilder_1.TransactionBuilder {
15
16
  constructor(_coinConfig) {
16
17
  super(_coinConfig);
@@ -60,6 +61,11 @@ class UnstakingBuilder extends transactionBuilder_1.TransactionBuilder {
60
61
  */
61
62
  unstake(request) {
62
63
  this.validateSuiObjectRef(request.stakedSui, 'stakedSui');
64
+ if (request.amount !== undefined) {
65
+ if (!utils_1.default.isValidAmount(request.amount)) {
66
+ throw new Error(`invalid amount: ${request.amount}`);
67
+ }
68
+ }
63
69
  this._withdrawDelegation = request;
64
70
  return this;
65
71
  }
@@ -113,24 +119,40 @@ class UnstakingBuilder extends transactionBuilder_1.TransactionBuilder {
113
119
  assert_1.default(this._gasData, new sdk_core_1.BuildTransactionError('gasData is required before building'));
114
120
  this.validateGasData(this._gasData);
115
121
  }
122
+ static getTransactionBlockData(objectRef, amount) {
123
+ const txb = new builder_1.TransactionBlock();
124
+ const targetSplit = `${framework_1.SUI_SYSTEM_ADDRESS}::${framework_1.SUI_STAKING_POOL_MODULE_NAME}::${framework_1.SUI_STAKING_POOL_SPLIT_FUN_NAME}`;
125
+ const targetWithdrawStake = `${framework_1.SUI_SYSTEM_ADDRESS}::${framework_1.SUI_SYSTEM_MODULE_NAME}::${framework_1.WITHDRAW_STAKE_FUN_NAME}`;
126
+ if (amount === undefined) {
127
+ txb.moveCall({
128
+ target: targetWithdrawStake,
129
+ arguments: [txb.object(builder_1.Inputs.SharedObjectRef(framework_1.SUI_SYSTEM_STATE_OBJECT)), txb.pure(builder_1.Inputs.ObjectRef(objectRef))],
130
+ });
131
+ }
132
+ else {
133
+ txb.moveCall({
134
+ target: targetSplit,
135
+ arguments: [txb.object(builder_1.Inputs.ObjectRef(objectRef)), txb.pure(amount)],
136
+ });
137
+ txb.moveCall({
138
+ target: targetWithdrawStake,
139
+ arguments: [
140
+ txb.object(builder_1.Inputs.SharedObjectRef(framework_1.SUI_SYSTEM_STATE_OBJECT)),
141
+ { kind: 'NestedResult', index: 0, resultIndex: 0 },
142
+ ],
143
+ });
144
+ }
145
+ return txb.blockData;
146
+ }
116
147
  /**
117
148
  * Build SuiTransaction
118
149
  *
119
- * @return {BitGoSuiTransaction<MoveCallTx>}
150
+ * @return {SuiTransaction<UnstakingProgrammableTransaction>}
120
151
  * @protected
121
152
  */
122
153
  buildSuiTransaction() {
123
154
  this.validateTransactionFields();
124
- const programmableTxBuilder = new builder_1.TransactionBlock();
125
- // Unstake staked object.
126
- programmableTxBuilder.moveCall({
127
- target: `${framework_1.SUI_SYSTEM_ADDRESS}::${framework_1.SUI_SYSTEM_MODULE_NAME}::${framework_1.WITHDRAW_STAKE_FUN_NAME}`,
128
- arguments: [
129
- programmableTxBuilder.object(builder_1.Inputs.SharedObjectRef(framework_1.SUI_SYSTEM_STATE_OBJECT)),
130
- programmableTxBuilder.pure(builder_1.Inputs.ObjectRef(this._withdrawDelegation.stakedSui)),
131
- ],
132
- });
133
- const txData = programmableTxBuilder.blockData;
155
+ const txData = UnstakingBuilder.getTransactionBlockData(this._withdrawDelegation.stakedSui, this._withdrawDelegation.amount === undefined ? undefined : BigInt(this._withdrawDelegation.amount));
134
156
  return {
135
157
  type: this._type,
136
158
  sender: this._sender,
@@ -145,4 +167,4 @@ class UnstakingBuilder extends transactionBuilder_1.TransactionBuilder {
145
167
  }
146
168
  }
147
169
  exports.UnstakingBuilder = UnstakingBuilder;
148
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5zdGFraW5nQnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvdW5zdGFraW5nQnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFDQSw4Q0FBa0Y7QUFDbEYsbUNBS2lCO0FBQ2pCLDZEQUEwRDtBQUUxRCxvREFBNEI7QUFFNUIsaURBSzZCO0FBQzdCLHFEQUsrQjtBQUMvQixpRUFBOEQ7QUFFOUQsTUFBYSxnQkFBaUIsU0FBUSx1Q0FBb0Q7SUFHeEYsWUFBWSxXQUFpQztRQUMzQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDbkIsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLDJDQUFvQixDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQzVELENBQUM7SUFFRDs7OztPQUlHO0lBQ08sdUJBQXVCO1FBQy9CLE9BQU87WUFDTCxJQUFJLEVBQUUsMEJBQWtCLENBQUMsYUFBYTtZQUN0QyxNQUFNLEVBQUUsSUFBSSxDQUFDLE9BQU87WUFDcEIsRUFBRSxFQUFFO2dCQUNGLE1BQU0sRUFBRSxFQUFFO2dCQUNWLFlBQVksRUFBRSxFQUFFO2FBQ2pCO1lBQ0QsT0FBTyxFQUFFLElBQUksQ0FBQyxRQUFRO1NBQ3ZCLENBQUM7SUFDSixDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSCxJQUFjLGVBQWU7UUFDM0IsT0FBTywwQkFBZSxDQUFDLFlBQVksQ0FBQztJQUN0QyxDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLG1CQUFtQixDQUFDLFdBQWdDO1FBQ2xELElBQUksQ0FBQyxXQUFXLENBQUMsY0FBYyxFQUFFO1lBQy9CLE9BQU87U0FDUjtRQUNELElBQUksQ0FBQyx5QkFBeUIsRUFBRSxDQUFDO0lBQ25DLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsSUFBSSxDQUFDLEdBQVk7UUFDZixJQUFJLENBQUMsV0FBVyxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDLENBQUM7UUFDL0Qs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QUFNLEVBQUUsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUM7Z0JBQzFCLFlBQVksRUFBRSxDQUFDLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQzthQUN2QztZQUNELE9BQU8sRUFBRTtnQkFDUCxHQUFHLElBQUksQ0FBQyxRQUFRO2FBQ2pCO1NBQ0YsQ0FBQztJQUNKLENBQUM7Q0FDRjtBQTlKRCw0Q0E4SkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvL3N0YXRpY3MnO1xuaW1wb3J0IHsgQmFzZUtleSwgQnVpbGRUcmFuc2FjdGlvbkVycm9yLCBUcmFuc2FjdGlvblR5cGUgfSBmcm9tICdAYml0Z28vc2RrLWNvcmUnO1xuaW1wb3J0IHtcbiAgU3VpVHJhbnNhY3Rpb24sXG4gIFJlcXVlc3RXaXRoZHJhd1N0YWtlZFN1aSxcbiAgU3VpVHJhbnNhY3Rpb25UeXBlLFxuICBVbnN0YWtpbmdQcm9ncmFtbWFibGVUcmFuc2FjdGlvbixcbn0gZnJvbSAnLi9pZmFjZSc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbkJ1aWxkZXIgfSBmcm9tICcuL3RyYW5zYWN0aW9uQnVpbGRlcic7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb24nO1xuaW1wb3J0IGFzc2VydCBmcm9tICdhc3NlcnQnO1xuaW1wb3J0IHsgVHJhbnNmZXJUcmFuc2FjdGlvbiB9IGZyb20gJy4vdHJhbnNmZXJUcmFuc2FjdGlvbic7XG5pbXBvcnQge1xuICBUcmFuc2FjdGlvbkJsb2NrIGFzIFByb2dyYW1taW5nVHJhbnNhY3Rpb25CbG9ja0J1aWxkZXIsXG4gIFRyYW5zYWN0aW9uQmxvY2tJbnB1dCxcbiAgTW92ZUNhbGxUcmFuc2FjdGlvbixcbiAgSW5wdXRzLFxufSBmcm9tICcuL215c3RlbmxhYi9idWlsZGVyJztcbmltcG9ydCB7XG4gIFNVSV9TWVNURU1fQUREUkVTUyxcbiAgU1VJX1NZU1RFTV9NT0RVTEVfTkFNRSxcbiAgU1VJX1NZU1RFTV9TVEFURV9PQkpFQ1QsXG4gIFdJVEhEUkFXX1NUQUtFX0ZVTl9OQU1FLFxufSBmcm9tICcuL215c3RlbmxhYi9mcmFtZXdvcmsnO1xuaW1wb3J0IHsgVW5zdGFraW5nVHJhbnNhY3Rpb24gfSBmcm9tICcuL3Vuc3Rha2luZ1RyYW5zYWN0aW9uJztcblxuZXhwb3J0IGNsYXNzIFVuc3Rha2luZ0J1aWxkZXIgZXh0ZW5kcyBUcmFuc2FjdGlvbkJ1aWxkZXI8VW5zdGFraW5nUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb24+IHtcbiAgcHJvdGVjdGVkIF93aXRoZHJhd0RlbGVnYXRpb246IFJlcXVlc3RXaXRoZHJhd1N0YWtlZFN1aTtcblxuICBjb25zdHJ1Y3RvcihfY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz4pIHtcbiAgICBzdXBlcihfY29pbkNvbmZpZyk7XG4gICAgdGhpcy5fdHJhbnNhY3Rpb24gPSBuZXcgVW5zdGFraW5nVHJhbnNhY3Rpb24oX2NvaW5Db25maWcpO1xuICB9XG5cbiAgLyoqXG4gICAqIEJ1aWxkIGEgTW92ZUNhbGwgdHJhbnNhY3Rpb24gcmVhZHkgdG8gYmUgc2lnbmVkIGFuZCBleGVjdXRlZC5cbiAgICpcbiAgICogQHJldHVybnMge0JpdEdvU3VpVHJhbnNhY3Rpb259IGFuIHVuc2lnbmVkIFN1aSB0cmFuc2FjdGlvblxuICAgKi9cbiAgcHJvdGVjdGVkIGJ1aWxkVW5zdGFrZVRyYW5zYWN0aW9uKCk6IFN1aVRyYW5zYWN0aW9uPFVuc3Rha2luZ1Byb2dyYW1tYWJsZVRyYW5zYWN0aW9uPiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHR5cGU6IFN1aVRyYW5zYWN0aW9uVHlwZS5XaXRoZHJhd1N0YWtlLFxuICAgICAgc2VuZGVyOiB0aGlzLl9zZW5kZXIsXG4gICAgICB0eDoge1xuICAgICAgICBpbnB1dHM6IFtdLFxuICAgICAgICB0cmFuc2FjdGlvbnM6IFtdLFxuICAgICAgfSxcbiAgICAgIGdhc0RhdGE6IHRoaXMuX2dhc0RhdGEsXG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgc3Rha2luZyB0cmFuc2FjdGlvbiB0eXBlXG4gICAqXG4gICAqIEByZXR1cm4ge1RyYW5zYWN0aW9uVHlwZX1cbiAgICogQHByb3RlY3RlZFxuICAgKi9cbiAgcHJvdGVjdGVkIGdldCB0cmFuc2FjdGlvblR5cGUoKTogVHJhbnNhY3Rpb25UeXBlIHtcbiAgICByZXR1cm4gVHJhbnNhY3Rpb25UeXBlLlN0YWtpbmdDbGFpbTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB2YWxpZGF0ZVRyYW5zYWN0aW9uKHRyYW5zYWN0aW9uOiBUcmFuc2ZlclRyYW5zYWN0aW9uKTogdm9pZCB7XG4gICAgaWYgKCF0cmFuc2FjdGlvbi5zdWlUcmFuc2FjdGlvbikge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLnZhbGlkYXRlVHJhbnNhY3Rpb25GaWVsZHMoKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBzaWduKGtleTogQmFzZUtleSkge1xuICAgIHRoaXMudHJhbnNhY3Rpb24uc2V0U3VpVHJhbnNhY3Rpb24odGhpcy5idWlsZFN1aVRyYW5zYWN0aW9uKCkpO1xuICAgIHN1cGVyLnNpZ24oa2V5KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBuZXcgdHJhbnNhY3Rpb24gZm9yIHdpdGhkcmF3aW5nIGNvaW5zIHJlYWR5IHRvIGJlIHNpZ25lZFxuICAgKlxuICAgKiBAcGFyYW0ge1JlcXVlc3RXaXRoZHJhd1N0YWtlZFN1aX0gcmVxdWVzdFxuICAgKi9cbiAgdW5zdGFrZShyZXF1ZXN0OiBSZXF1ZXN0V2l0aGRyYXdTdGFrZWRTdWkpOiB0aGlzIHtcbiAgICB0aGlzLnZhbGlkYXRlU3VpT2JqZWN0UmVmKHJlcXVlc3Quc3Rha2VkU3VpLCAnc3Rha2VkU3VpJyk7XG4gICAgdGhpcy5fd2l0aGRyYXdEZWxlZ2F0aW9uID0gcmVxdWVzdDtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBwcm90ZWN0ZWQgZnJvbUltcGxlbWVudGF0aW9uKHJhd1RyYW5zYWN0aW9uOiBzdHJpbmcpOiBUcmFuc2FjdGlvbjxVbnN0YWtpbmdQcm9ncmFtbWFibGVUcmFuc2FjdGlvbj4ge1xuICAgIGNvbnN0IHR4ID0gbmV3IFVuc3Rha2luZ1RyYW5zYWN0aW9uKHRoaXMuX2NvaW5Db25maWcpO1xuICAgIHRoaXMudmFsaWRhdGVSYXdUcmFuc2FjdGlvbihyYXdUcmFuc2FjdGlvbik7XG4gICAgdHguZnJvbVJhd1RyYW5zYWN0aW9uKHJhd1RyYW5zYWN0aW9uKTtcbiAgICB0aGlzLmluaXRCdWlsZGVyKHR4KTtcbiAgICByZXR1cm4gdGhpcy50cmFuc2FjdGlvbjtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBwcm90ZWN0ZWQgYXN5bmMgYnVpbGRJbXBsZW1lbnRhdGlvbigpOiBQcm9taXNlPFRyYW5zYWN0aW9uPFVuc3Rha2luZ1Byb2dyYW1tYWJsZVRyYW5zYWN0aW9uPj4ge1xuICAgIHRoaXMudHJhbnNhY3Rpb24uc2V0U3VpVHJhbnNhY3Rpb24odGhpcy5idWlsZFN1aVRyYW5zYWN0aW9uKCkpO1xuICAgIHRoaXMudHJhbnNhY3Rpb24udHJhbnNhY3Rpb25UeXBlKHRoaXMudHJhbnNhY3Rpb25UeXBlKTtcblxuICAgIGlmICh0aGlzLl9zaWduZXIpIHtcbiAgICAgIHRoaXMudHJhbnNhY3Rpb24uc2lnbih0aGlzLl9zaWduZXIpO1xuICAgIH1cblxuICAgIHRoaXMuX3NpZ25hdHVyZXMuZm9yRWFjaCgoc2lnbmF0dXJlKSA9PiB7XG4gICAgICB0aGlzLnRyYW5zYWN0aW9uLmFkZFNpZ25hdHVyZShzaWduYXR1cmUucHVibGljS2V5LCBzaWduYXR1cmUuc2lnbmF0dXJlKTtcbiAgICB9KTtcblxuICAgIHRoaXMudHJhbnNhY3Rpb24ubG9hZElucHV0c0FuZE91dHB1dHMoKTtcbiAgICByZXR1cm4gdGhpcy50cmFuc2FjdGlvbjtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbml0aWFsaXplIHRoZSB0cmFuc2FjdGlvbiBidWlsZGVyIGZpZWxkcyB1c2luZyB0aGUgZGVjb2RlZCB0cmFuc2FjdGlvbiBkYXRhXG4gICAqXG4gICAqIEBwYXJhbSB7U3Rha2luZ1RyYW5zYWN0aW9ufSB0eCB0aGUgdHJhbnNhY3Rpb24gZGF0YVxuICAgKi9cbiAgaW5pdEJ1aWxkZXIodHg6IFRyYW5zYWN0aW9uPFVuc3Rha2luZ1Byb2dyYW1tYWJsZVRyYW5zYWN0aW9uPik6IHZvaWQge1xuICAgIHRoaXMuX3RyYW5zYWN0aW9uID0gdHg7XG5cbiAgICBpZiAodHguc2lnbmF0dXJlICYmIHR4LnNpZ25hdHVyZS5sZW5ndGggPiAwKSB7XG4gICAgICB0aGlzLl9zaWduYXR1cmVzID0gW3R4LnN1aVNpZ25hdHVyZV07XG4gICAgfVxuXG4gICAgY29uc3QgdHhEYXRhID0gdHgudG9Kc29uKCk7XG4gICAgdGhpcy50eXBlKFN1aVRyYW5zYWN0aW9uVHlwZS5XaXRoZHJhd1N0YWtlKTtcbiAgICB0aGlzLnNlbmRlcih0eERhdGEuc2VuZGVyKTtcbiAgICB0aGlzLmdhc0RhdGEodHhEYXRhLmdhc0RhdGEpO1xuXG4gICAgY29uc3Qgc3Rha2VkU3VpSW5wdXRJZHggPSAoXG4gICAgICAodHhEYXRhLmtpbmQuUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb24udHJhbnNhY3Rpb25zWzBdIGFzIE1vdmVDYWxsVHJhbnNhY3Rpb24pLmFyZ3VtZW50c1sxXSBhcyBUcmFuc2FjdGlvbkJsb2NrSW5wdXRcbiAgICApLmluZGV4O1xuICAgIGNvbnN0IHN0YWtlZFN1aUlucHV0ID0gdHhEYXRhLmtpbmQuUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb24uaW5wdXRzW3N0YWtlZFN1aUlucHV0SWR4XSBhcyBUcmFuc2FjdGlvbkJsb2NrSW5wdXQ7XG4gICAgY29uc3Qgc3Rha2VkU3VpID0gJ3ZhbHVlJyBpbiBzdGFrZWRTdWlJbnB1dCA/IHN0YWtlZFN1aUlucHV0LnZhbHVlIDogc3Rha2VkU3VpSW5wdXQ7XG5cbiAgICB0aGlzLnVuc3Rha2UoeyBzdGFrZWRTdWk6IHN0YWtlZFN1aS5PYmplY3QuSW1tT3JPd25lZCB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBWYWxpZGF0ZXMgYWxsIGZpZWxkcyBhcmUgZGVmaW5lZFxuICAgKi9cbiAgcHJpdmF0ZSB2YWxpZGF0ZVRyYW5zYWN0aW9uRmllbGRzKCk6IHZvaWQge1xuICAgIGFzc2VydCh0aGlzLl90eXBlLCBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCd0eXBlIGlzIHJlcXVpcmVkIGJlZm9yZSBidWlsZGluZycpKTtcbiAgICBhc3NlcnQodGhpcy5fc2VuZGVyLCBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdzZW5kZXIgaXMgcmVxdWlyZWQgYmVmb3JlIGJ1aWxkaW5nJykpO1xuICAgIGFzc2VydChcbiAgICAgIHRoaXMuX3dpdGhkcmF3RGVsZWdhdGlvbi5zdGFrZWRTdWksXG4gICAgICBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdzdGFrZWRTdWkgb2JqZWN0IGlzIHJlcXVpcmVkIGJlZm9yZSBidWlsZGluZycpXG4gICAgKTtcbiAgICBhc3NlcnQodGhpcy5fZ2FzRGF0YSwgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignZ2FzRGF0YSBpcyByZXF1aXJlZCBiZWZvcmUgYnVpbGRpbmcnKSk7XG4gICAgdGhpcy52YWxpZGF0ZUdhc0RhdGEodGhpcy5fZ2FzRGF0YSk7XG4gIH1cblxuICAvKipcbiAgICogQnVpbGQgU3VpVHJhbnNhY3Rpb25cbiAgICpcbiAgICogQHJldHVybiB7Qml0R29TdWlUcmFuc2FjdGlvbjxNb3ZlQ2FsbFR4Pn1cbiAgICogQHByb3RlY3RlZFxuICAgKi9cbiAgcHJvdGVjdGVkIGJ1aWxkU3VpVHJhbnNhY3Rpb24oKTogU3VpVHJhbnNhY3Rpb248VW5zdGFraW5nUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb24+IHtcbiAgICB0aGlzLnZhbGlkYXRlVHJhbnNhY3Rpb25GaWVsZHMoKTtcblxuICAgIGNvbnN0IHByb2dyYW1tYWJsZVR4QnVpbGRlciA9IG5ldyBQcm9ncmFtbWluZ1RyYW5zYWN0aW9uQmxvY2tCdWlsZGVyKCk7XG4gICAgLy8gVW5zdGFrZSBzdGFrZWQgb2JqZWN0LlxuICAgIHByb2dyYW1tYWJsZVR4QnVpbGRlci5tb3ZlQ2FsbCh7XG4gICAgICB0YXJnZXQ6IGAke1NVSV9TWVNURU1fQUREUkVTU306OiR7U1VJX1NZU1RFTV9NT0RVTEVfTkFNRX06OiR7V0lUSERSQVdfU1RBS0VfRlVOX05BTUV9YCxcbiAgICAgIGFyZ3VtZW50czogW1xuICAgICAgICBwcm9ncmFtbWFibGVUeEJ1aWxkZXIub2JqZWN0KElucHV0cy5TaGFyZWRPYmplY3RSZWYoU1VJX1NZU1RFTV9TVEFURV9PQkpFQ1QpKSxcbiAgICAgICAgcHJvZ3JhbW1hYmxlVHhCdWlsZGVyLnB1cmUoSW5wdXRzLk9iamVjdFJlZih0aGlzLl93aXRoZHJhd0RlbGVnYXRpb24uc3Rha2VkU3VpKSksXG4gICAgICBdLFxuICAgIH0gYXMgTW92ZUNhbGxUcmFuc2FjdGlvbik7XG5cbiAgICBjb25zdCB0eERhdGEgPSBwcm9ncmFtbWFibGVUeEJ1aWxkZXIuYmxvY2tEYXRhO1xuICAgIHJldHVybiB7XG4gICAgICB0eXBlOiB0aGlzLl90eXBlLFxuICAgICAgc2VuZGVyOiB0aGlzLl9zZW5kZXIsXG4gICAgICB0eDoge1xuICAgICAgICBpbnB1dHM6IFsuLi50eERhdGEuaW5wdXRzXSxcbiAgICAgICAgdHJhbnNhY3Rpb25zOiBbLi4udHhEYXRhLnRyYW5zYWN0aW9uc10sXG4gICAgICB9LFxuICAgICAgZ2FzRGF0YToge1xuICAgICAgICAuLi50aGlzLl9nYXNEYXRhLFxuICAgICAgfSxcbiAgICB9O1xuICB9XG59XG4iXX0=
170
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5zdGFraW5nQnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvdW5zdGFraW5nQnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFDQSw4Q0FBa0Y7QUFDbEYsbUNBS2lCO0FBQ2pCLDZEQUEwRDtBQUUxRCxvREFBNEI7QUFFNUIsaURBSzZCO0FBQzdCLHFEQU8rQjtBQUMvQixpRUFBOEQ7QUFDOUQsb0RBQTRCO0FBSTVCLE1BQWEsZ0JBQWlCLFNBQVEsdUNBQW9EO0lBR3hGLFlBQVksV0FBaUM7UUFDM0MsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ25CLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSwyQ0FBb0IsQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUM1RCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNPLHVCQUF1QjtRQUMvQixPQUFPO1lBQ0wsSUFBSSxFQUFFLDBCQUFrQixDQUFDLGFBQWE7WUFDdEMsTUFBTSxFQUFFLElBQUksQ0FBQyxPQUFPO1lBQ3BCLEVBQUUsRUFBRTtnQkFDRixNQUFNLEVBQUUsRUFBRTtnQkFDVixZQUFZLEVBQUUsRUFBRTthQUNqQjtZQUNELE9BQU8sRUFBRSxJQUFJLENBQUMsUUFBUTtTQUN2QixDQUFDO0lBQ0osQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0gsSUFBYyxlQUFlO1FBQzNCLE9BQU8sMEJBQWUsQ0FBQyxZQUFZLENBQUM7SUFDdEMsQ0FBQztJQUVELGtCQUFrQjtJQUNsQixtQkFBbUIsQ0FBQyxXQUFnQztRQUNsRCxJQUFJLENBQUMsV0FBVyxDQUFDLGNBQWMsRUFBRTtZQUMvQixPQUFPO1NBQ1I7UUFDRCxJQUFJLENBQUMseUJBQXlCLEVBQUUsQ0FBQztJQUNuQyxDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLElBQUksQ0FBQyxHQUFZO1FBQ2YsSUFBSSxDQUFDLFdBQVcsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsbUJBQW1CLEVBQUUsQ0FB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QUUsSUFBSSxDQUFDLE9BQU87WUFDcEIsRUFBRSxFQUFFO2dCQUNGLE1BQU0sRUFBRSxDQUFDLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQztnQkFDMUIsWUFBWSxFQUFFLENBQUMsR0FBRyxNQUFNLENBQUMsWUFBWSxDQUFDO2FBQ3ZDO1lBQ0QsT0FBTyxFQUFFO2dCQUNQLEdBQUcsSUFBSSxDQUFDLFFBQVE7YUFDakI7U0FDRixDQUFDO0lBQ0osQ0FBQztDQUNGO0FBdExELDRDQXNMQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VDb2luIGFzIENvaW5Db25maWcgfSBmcm9tICdAYml0Z28vc3RhdGljcyc7XG5pbXBvcnQgeyBCYXNlS2V5LCBCdWlsZFRyYW5zYWN0aW9uRXJyb3IsIFRyYW5zYWN0aW9uVHlwZSB9IGZyb20gJ0BiaXRnby9zZGstY29yZSc7XG5pbXBvcnQge1xuICBTdWlUcmFuc2FjdGlvbixcbiAgUmVxdWVzdFdpdGhkcmF3U3Rha2VkU3VpLFxuICBTdWlUcmFuc2FjdGlvblR5cGUsXG4gIFVuc3Rha2luZ1Byb2dyYW1tYWJsZVRyYW5zYWN0aW9uLFxufSBmcm9tICcuL2lmYWNlJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uQnVpbGRlciB9IGZyb20gJy4vdHJhbnNhY3Rpb25CdWlsZGVyJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uIH0gZnJvbSAnLi90cmFuc2FjdGlvbic7XG5pbXBvcnQgYXNzZXJ0IGZyb20gJ2Fzc2VydCc7XG5pbXBvcnQgeyBUcmFuc2ZlclRyYW5zYWN0aW9uIH0gZnJvbSAnLi90cmFuc2ZlclRyYW5zYWN0aW9uJztcbmltcG9ydCB7XG4gIFRyYW5zYWN0aW9uQmxvY2sgYXMgUHJvZ3JhbW1pbmdUcmFuc2FjdGlvbkJsb2NrQnVpbGRlcixcbiAgVHJhbnNhY3Rpb25CbG9ja0lucHV0LFxuICBNb3ZlQ2FsbFRyYW5zYWN0aW9uLFxuICBJbnB1dHMsXG59IGZyb20gJy4vbXlzdGVubGFiL2J1aWxkZXInO1xuaW1wb3J0IHtcbiAgU1VJX1NUQUtJTkdfUE9PTF9NT0RVTEVfTkFNRSxcbiAgU1VJX1NUQUtJTkdfUE9PTF9TUExJVF9GVU5fTkFNRSxcbiAgU1VJX1NZU1RFTV9BRERSRVNTLFxuICBTVUlfU1lTVEVNX01PRFVMRV9OQU1FLFxuICBTVUlfU1lTVEVNX1NUQVRFX09CSkVDVCxcbiAgV0lUSERSQVdfU1RBS0VfRlVOX05BTUUsXG59IGZyb20gJy4vbXlzdGVubGFiL2ZyYW1ld29yayc7XG5pbXBvcnQgeyBVbnN0YWtpbmdUcmFuc2FjdGlvbiB9IGZyb20gJy4vdW5zdGFraW5nVHJhbnNhY3Rpb24nO1xuaW1wb3J0IHV0aWxzIGZyb20gJy4vdXRpbHMnO1xuaW1wb3J0IHsgU3VpT2JqZWN0UmVmIH0gZnJvbSAnLi9teXN0ZW5sYWIvdHlwZXMnO1xuaW1wb3J0IHsgU2VyaWFsaXplZFRyYW5zYWN0aW9uRGF0YUJ1aWxkZXIgfSBmcm9tICcuL215c3RlbmxhYi9idWlsZGVyL1RyYW5zYWN0aW9uRGF0YUJsb2NrJztcblxuZXhwb3J0IGNsYXNzIFVuc3Rha2luZ0J1aWxkZXIgZXh0ZW5kcyBUcmFuc2FjdGlvbkJ1aWxkZXI8VW5zdGFraW5nUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb24+IHtcbiAgcHJvdGVjdGVkIF93aXRoZHJhd0RlbGVnYXRpb246IFJlcXVlc3RXaXRoZHJhd1N0YWtlZFN1aTtcblxuICBjb25zdHJ1Y3RvcihfY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz4pIHtcbiAgICBzdXBlcihfY29pbkNvbmZpZyk7XG4gICAgdGhpcy5fdHJhbnNhY3Rpb24gPSBuZXcgVW5zdGFraW5nVHJhbnNhY3Rpb24oX2NvaW5Db25maWcpO1xuICB9XG5cbiAgLyoqXG4gICAqIEJ1aWxkIGEgTW92ZUNhbGwgdHJhbnNhY3Rpb24gcmVhZHkgdG8gYmUgc2lnbmVkIGFuZCBleGVjdXRlZC5cbiAgICpcbiAgICogQHJldHVybnMge0JpdEdvU3VpVHJhbnNhY3Rpb259IGFuIHVuc2lnbmVkIFN1aSB0cmFuc2FjdGlvblxuICAgKi9cbiAgcHJvdGVjdGVkIGJ1aWxkVW5zdGFrZVRyYW5zYWN0aW9uKCk6IFN1aVRyYW5zYWN0aW9uPFVuc3Rha2luZ1Byb2dyYW1tYWJsZVRyYW5zYWN0aW9uPiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIHR5cGU6IFN1aVRyYW5zYWN0aW9uVHlwZS5XaXRoZHJhd1N0YWtlLFxuICAgICAgc2VuZGVyOiB0aGlzLl9zZW5kZXIsXG4gICAgICB0eDoge1xuICAgICAgICBpbnB1dHM6IFtdLFxuICAgICAgICB0cmFuc2FjdGlvbnM6IFtdLFxuICAgICAgfSxcbiAgICAgIGdhc0RhdGE6IHRoaXMuX2dhc0RhdGEsXG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgc3Rha2luZyB0cmFuc2FjdGlvbiB0eXBlXG4gICAqXG4gICAqIEByZXR1cm4ge1RyYW5zYWN0aW9uVHlwZX1cbiAgICogQHByb3RlY3RlZFxuICAgKi9cbiAgcHJvdGVjdGVkIGdldCB0cmFuc2FjdGlvblR5cGUoKTogVHJhbnNhY3Rpb25UeXBlIHtcbiAgICByZXR1cm4gVHJhbnNhY3Rpb25UeXBlLlN0YWtpbmdDbGFpbTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB2YWxpZGF0ZVRyYW5zYWN0aW9uKHRyYW5zYWN0aW9uOiBUcmFuc2ZlclRyYW5zYWN0aW9uKTogdm9pZCB7XG4gICAgaWYgKCF0cmFuc2FjdGlvbi5zdWlUcmFuc2FjdGlvbikge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLnZhbGlkYXRlVHJhbnNhY3Rpb25GaWVsZHMoKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBzaWduKGtleTogQmFzZUtleSkge1xuICAgIHRoaXMudHJhbnNhY3Rpb24uc2V0U3VpVHJhbnNhY3Rpb24odGhpcy5idWlsZFN1aVRyYW5zYWN0aW9uKCkpO1xuICAgIHN1cGVyLnNpZ24oa2V5KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgYSBuZXcgdHJhbnNhY3Rpb24gZm9yIHdpdGhkcmF3aW5nIGNvaW5zIHJlYWR5IHRvIGJlIHNpZ25lZFxuICAgKlxuICAgKiBAcGFyYW0ge1JlcXVlc3RXaXRoZHJhd1N0YWtlZFN1aX0gcmVxdWVzdFxuICAgKi9cbiAgdW5zdGFrZShyZXF1ZXN0OiBSZXF1ZXN0V2l0aGRyYXdTdGFrZWRTdWkpOiB0aGlzIHtcbiAgICB0aGlzLnZhbGlkYXRlU3VpT2JqZWN0UmVmKHJlcXVlc3Quc3Rha2VkU3VpLCAnc3Rha2VkU3VpJyk7XG4gICAgaWYgKHJlcXVlc3QuYW1vdW50ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGlmICghdXRpbHMuaXNWYWxpZEFtb3VudChyZXF1ZXN0LmFtb3VudCkpIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKGBpbnZhbGlkIGFtb3VudDogJHtyZXF1ZXN0LmFtb3VudH1gKTtcbiAgICAgIH1cbiAgICB9XG4gICAgdGhpcy5fd2l0aGRyYXdEZWxlZ2F0aW9uID0gcmVxdWVzdDtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBwcm90ZWN0ZWQgZnJvbUltcGxlbWVudGF0aW9uKHJhd1RyYW5zYWN0aW9uOiBzdHJpbmcpOiBUcmFuc2FjdGlvbjxVbnN0YWtpbmdQcm9ncmFtbWFibGVUcmFuc2FjdGlvbj4ge1xuICAgIGNvbnN0IHR4ID0gbmV3IFVuc3Rha2luZ1RyYW5zYWN0aW9uKHRoaXMuX2NvaW5Db25maWcpO1xuICAgIHRoaXMudmFsaWRhdGVSYXdUcmFuc2FjdGlvbihyYXdUcmFuc2FjdGlvbik7XG4gICAgdHguZnJvbVJhd1RyYW5zYWN0aW9uKHJhd1RyYW5zYWN0aW9uKTtcbiAgICB0aGlzLmluaXRCdWlsZGVyKHR4KTtcbiAgICByZXR1cm4gdGhpcy50cmFuc2FjdGlvbjtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBwcm90ZWN0ZWQgYXN5bmMgYnVpbGRJbXBsZW1lbnRhdGlvbigpOiBQcm9taXNlPFRyYW5zYWN0aW9uPFVuc3Rha2luZ1Byb2dyYW1tYWJsZVRyYW5zYWN0aW9uPj4ge1xuICAgIHRoaXMudHJhbnNhY3Rpb24uc2V0U3VpVHJhbnNhY3Rpb24odGhpcy5idWlsZFN1aVRyYW5zYWN0aW9uKCkpO1xuICAgIHRoaXMudHJhbnNhY3Rpb24udHJhbnNhY3Rpb25UeXBlKHRoaXMudHJhbnNhY3Rpb25UeXBlKTtcblxuICAgIGlmICh0aGlzLl9zaWduZXIpIHtcbiAgICAgIHRoaXMudHJhbnNhY3Rpb24uc2lnbih0aGlzLl9zaWduZXIpO1xuICAgIH1cblxuICAgIHRoaXMuX3NpZ25hdHVyZXMuZm9yRWFjaCgoc2lnbmF0dXJlKSA9PiB7XG4gICAgICB0aGlzLnRyYW5zYWN0aW9uLmFkZFNpZ25hdHVyZShzaWduYXR1cmUucHVibGljS2V5LCBzaWduYXR1cmUuc2lnbmF0dXJlKTtcbiAgICB9KTtcblxuICAgIHRoaXMudHJhbnNhY3Rpb24ubG9hZElucHV0c0FuZE91dHB1dHMoKTtcbiAgICByZXR1cm4gdGhpcy50cmFuc2FjdGlvbjtcbiAgfVxuXG4gIC8qKlxuICAgKiBJbml0aWFsaXplIHRoZSB0cmFuc2FjdGlvbiBidWlsZGVyIGZpZWxkcyB1c2luZyB0aGUgZGVjb2RlZCB0cmFuc2FjdGlvbiBkYXRhXG4gICAqXG4gICAqIEBwYXJhbSB7U3Rha2luZ1RyYW5zYWN0aW9ufSB0eCB0aGUgdHJhbnNhY3Rpb24gZGF0YVxuICAgKi9cbiAgaW5pdEJ1aWxkZXIodHg6IFRyYW5zYWN0aW9uPFVuc3Rha2luZ1Byb2dyYW1tYWJsZVRyYW5zYWN0aW9uPik6IHZvaWQge1xuICAgIHRoaXMuX3RyYW5zYWN0aW9uID0gdHg7XG5cbiAgICBpZiAodHguc2lnbmF0dXJlICYmIHR4LnNpZ25hdHVyZS5sZW5ndGggPiAwKSB7XG4gICAgICB0aGlzLl9zaWduYXR1cmVzID0gW3R4LnN1aVNpZ25hdHVyZV07XG4gICAgfVxuXG4gICAgY29uc3QgdHhEYXRhID0gdHgudG9Kc29uKCk7XG4gICAgdGhpcy50eXBlKFN1aVRyYW5zYWN0aW9uVHlwZS5XaXRoZHJhd1N0YWtlKTtcbiAgICB0aGlzLnNlbmRlcih0eERhdGEuc2VuZGVyKTtcbiAgICB0aGlzLmdhc0RhdGEodHhEYXRhLmdhc0RhdGEpO1xuXG4gICAgY29uc3Qgc3Rha2VkU3VpSW5wdXRJZHggPSAoXG4gICAgICAodHhEYXRhLmtpbmQuUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb24udHJhbnNhY3Rpb25zWzBdIGFzIE1vdmVDYWxsVHJhbnNhY3Rpb24pLmFyZ3VtZW50c1sxXSBhcyBUcmFuc2FjdGlvbkJsb2NrSW5wdXRcbiAgICApLmluZGV4O1xuICAgIGNvbnN0IHN0YWtlZFN1aUlucHV0ID0gdHhEYXRhLmtpbmQuUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb24uaW5wdXRzW3N0YWtlZFN1aUlucHV0SWR4XSBhcyBUcmFuc2FjdGlvbkJsb2NrSW5wdXQ7XG4gICAgY29uc3Qgc3Rha2VkU3VpID0gJ3ZhbHVlJyBpbiBzdGFrZWRTdWlJbnB1dCA/IHN0YWtlZFN1aUlucHV0LnZhbHVlIDogc3Rha2VkU3VpSW5wdXQ7XG5cbiAgICB0aGlzLnVuc3Rha2UoeyBzdGFrZWRTdWk6IHN0YWtlZFN1aS5PYmplY3QuSW1tT3JPd25lZCB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBWYWxpZGF0ZXMgYWxsIGZpZWxkcyBhcmUgZGVmaW5lZFxuICAgKi9cbiAgcHJpdmF0ZSB2YWxpZGF0ZVRyYW5zYWN0aW9uRmllbGRzKCk6IHZvaWQge1xuICAgIGFzc2VydCh0aGlzLl90eXBlLCBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCd0eXBlIGlzIHJlcXVpcmVkIGJlZm9yZSBidWlsZGluZycpKTtcbiAgICBhc3NlcnQodGhpcy5fc2VuZGVyLCBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdzZW5kZXIgaXMgcmVxdWlyZWQgYmVmb3JlIGJ1aWxkaW5nJykpO1xuICAgIGFzc2VydChcbiAgICAgIHRoaXMuX3dpdGhkcmF3RGVsZWdhdGlvbi5zdGFrZWRTdWksXG4gICAgICBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdzdGFrZWRTdWkgb2JqZWN0IGlzIHJlcXVpcmVkIGJlZm9yZSBidWlsZGluZycpXG4gICAgKTtcbiAgICBhc3NlcnQodGhpcy5fZ2FzRGF0YSwgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignZ2FzRGF0YSBpcyByZXF1aXJlZCBiZWZvcmUgYnVpbGRpbmcnKSk7XG4gICAgdGhpcy52YWxpZGF0ZUdhc0RhdGEodGhpcy5fZ2FzRGF0YSk7XG4gIH1cblxuICBzdGF0aWMgZ2V0VHJhbnNhY3Rpb25CbG9ja0RhdGEob2JqZWN0UmVmOiBTdWlPYmplY3RSZWYsIGFtb3VudD86IGJpZ2ludCk6IFNlcmlhbGl6ZWRUcmFuc2FjdGlvbkRhdGFCdWlsZGVyIHtcbiAgICBjb25zdCB0eGIgPSBuZXcgUHJvZ3JhbW1pbmdUcmFuc2FjdGlvbkJsb2NrQnVpbGRlcigpO1xuICAgIGNvbnN0IHRhcmdldFNwbGl0ID1cbiAgICAgIGAke1NVSV9TWVNURU1fQUREUkVTU306OiR7U1VJX1NUQUtJTkdfUE9PTF9NT0RVTEVfTkFNRX06OiR7U1VJX1NUQUtJTkdfUE9PTF9TUExJVF9GVU5fTkFNRX1gIGFzIGAke3N0cmluZ306OiR7c3RyaW5nfTo6JHtzdHJpbmd9YDtcbiAgICBjb25zdCB0YXJnZXRXaXRoZHJhd1N0YWtlID1cbiAgICAgIGAke1NVSV9TWVNURU1fQUREUkVTU306OiR7U1VJX1NZU1RFTV9NT0RVTEVfTkFNRX06OiR7V0lUSERSQVdfU1RBS0VfRlVOX05BTUV9YCBhcyBgJHtzdHJpbmd9Ojoke3N0cmluZ306OiR7c3RyaW5nfWA7XG4gICAgaWYgKGFtb3VudCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICB0eGIubW92ZUNhbGwoe1xuICAgICAgICB0YXJnZXQ6IHRhcmdldFdpdGhkcmF3U3Rha2UsXG4gICAgICAgIGFyZ3VtZW50czogW3R4Yi5vYmplY3QoSW5wdXRzLlNoYXJlZE9iamVjdFJlZihTVUlfU1lTVEVNX1NUQVRFX09CSkVDVCkpLCB0eGIucHVyZShJbnB1dHMuT2JqZWN0UmVmKG9iamVjdFJlZikpXSxcbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICB0eGIubW92ZUNhbGwoe1xuICAgICAgICB0YXJnZXQ6IHRhcmdldFNwbGl0LFxuICAgICAgICBhcmd1bWVudHM6IFt0eGIub2JqZWN0KElucHV0cy5PYmplY3RSZWYob2JqZWN0UmVmKSksIHR4Yi5wdXJlKGFtb3VudCldLFxuICAgICAgfSk7XG4gICAgICB0eGIubW92ZUNhbGwoe1xuICAgICAgICB0YXJnZXQ6IHRhcmdldFdpdGhkcmF3U3Rha2UsXG4gICAgICAgIGFyZ3VtZW50czogW1xuICAgICAgICAgIHR4Yi5vYmplY3QoSW5wdXRzLlNoYXJlZE9iamVjdFJlZihTVUlfU1lTVEVNX1NUQVRFX09CSkVDVCkpLFxuICAgICAgICAgIHsga2luZDogJ05lc3RlZFJlc3VsdCcsIGluZGV4OiAwLCByZXN1bHRJbmRleDogMCB9LFxuICAgICAgICBdLFxuICAgICAgfSk7XG4gICAgfVxuICAgIHJldHVybiB0eGIuYmxvY2tEYXRhO1xuICB9XG5cbiAgLyoqXG4gICAqIEJ1aWxkIFN1aVRyYW5zYWN0aW9uXG4gICAqXG4gICAqIEByZXR1cm4ge1N1aVRyYW5zYWN0aW9uPFVuc3Rha2luZ1Byb2dyYW1tYWJsZVRyYW5zYWN0aW9uPn1cbiAgICogQHByb3RlY3RlZFxuICAgKi9cbiAgcHJvdGVjdGVkIGJ1aWxkU3VpVHJhbnNhY3Rpb24oKTogU3VpVHJhbnNhY3Rpb248VW5zdGFraW5nUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb24+IHtcbiAgICB0aGlzLnZhbGlkYXRlVHJhbnNhY3Rpb25GaWVsZHMoKTtcbiAgICBjb25zdCB0eERhdGEgPSBVbnN0YWtpbmdCdWlsZGVyLmdldFRyYW5zYWN0aW9uQmxvY2tEYXRhKFxuICAgICAgdGhpcy5fd2l0aGRyYXdEZWxlZ2F0aW9uLnN0YWtlZFN1aSxcbiAgICAgIHRoaXMuX3dpdGhkcmF3RGVsZWdhdGlvbi5hbW91bnQgPT09IHVuZGVmaW5lZCA/IHVuZGVmaW5lZCA6IEJpZ0ludCh0aGlzLl93aXRoZHJhd0RlbGVnYXRpb24uYW1vdW50KVxuICAgICk7XG4gICAgcmV0dXJuIHtcbiAgICAgIHR5cGU6IHRoaXMuX3R5cGUsXG4gICAgICBzZW5kZXI6IHRoaXMuX3NlbmRlcixcbiAgICAgIHR4OiB7XG4gICAgICAgIGlucHV0czogWy4uLnR4RGF0YS5pbnB1dHNdLFxuICAgICAgICB0cmFuc2FjdGlvbnM6IFsuLi50eERhdGEudHJhbnNhY3Rpb25zXSxcbiAgICAgIH0sXG4gICAgICBnYXNEYXRhOiB7XG4gICAgICAgIC4uLnRoaXMuX2dhc0RhdGEsXG4gICAgICB9LFxuICAgIH07XG4gIH1cbn1cbiJdfQ==
@@ -1,8 +1,9 @@
1
1
  /// <reference types="node" />
2
- import { BaseKey, PublicKey as BasePublicKey, Signature, TransactionType } from '@bitgo/sdk-core';
2
+ import { BaseKey, Entry, PublicKey as BasePublicKey, Signature, TransactionType } from '@bitgo/sdk-core';
3
3
  import { UnstakingProgrammableTransaction, SuiTransaction, TransactionExplanation, TxData } from './iface';
4
4
  import { BaseCoin as CoinConfig } from '@bitgo/statics';
5
5
  import { Transaction } from './transaction';
6
+ import { TransactionBlockInput } from './mystenlab/builder';
6
7
  export declare class UnstakingTransaction extends Transaction<UnstakingProgrammableTransaction> {
7
8
  constructor(_coinConfig: Readonly<CoinConfig>);
8
9
  get suiTransaction(): SuiTransaction<UnstakingProgrammableTransaction>;
@@ -23,6 +24,18 @@ export declare class UnstakingTransaction extends Transaction<UnstakingProgramma
23
24
  * @param {TransactionType} transactionType The transaction type to be set.
24
25
  */
25
26
  transactionType(transactionType: TransactionType): void;
27
+ getEntriesForStakedSuiInput(stakedSuiInput: TransactionBlockInput, amount?: bigint): {
28
+ inputs: Entry[];
29
+ outputs: Entry[];
30
+ };
31
+ getEntriesForTransactionPair(inputs: SuiTransaction['tx']['inputs'], transactions: unknown[]): {
32
+ inputs: Entry[];
33
+ outputs: Entry[];
34
+ };
35
+ getEntriesForSingleTransaction(inputs: SuiTransaction['tx']['inputs'], tx: unknown): {
36
+ inputs: Entry[];
37
+ outputs: Entry[];
38
+ };
26
39
  /**
27
40
  * Load the input and output data on this transaction.
28
41
  */
@@ -1 +1 @@
1
- {"version":3,"file":"unstakingTransaction.d.ts","sourceRoot":"","sources":["../../../src/lib/unstakingTransaction.ts"],"names":[],"mappings":";AAAA,OAAO,EACL,OAAO,EAGP,SAAS,IAAI,aAAa,EAC1B,SAAS,EAET,eAAe,EAChB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,gCAAgC,EAAE,cAAc,EAAE,sBAAsB,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAC3G,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAGxD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAM5C,qBAAa,oBAAqB,SAAQ,WAAW,CAAC,gCAAgC,CAAC;gBACzE,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI7C,IAAI,cAAc,IAAI,cAAc,CAAC,gCAAgC,CAAC,CAErE;IAED,iBAAiB,CAAC,EAAE,EAAE,cAAc,CAAC,gCAAgC,CAAC,GAAG,IAAI;IAI7E,YAAY,CAAC,SAAS,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;IAM/D,IAAI,YAAY,IAAI,SAAS,CAE5B;IAED,kBAAkB;IAClB,OAAO,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO;IAI9B,kBAAkB;IAClB,iBAAiB,IAAI,MAAM;IAO3B,kBAAkB;IAClB,MAAM,IAAI,MAAM;IAehB,kBAAkB;IAClB,kBAAkB,IAAI,sBAAsB;IAmC5C;;;;OAIG;IACH,eAAe,CAAC,eAAe,EAAE,eAAe,GAAG,IAAI;IAIvD;;OAEG;IACH,oBAAoB,IAAI,IAAI;IA2B5B;;;;OAIG;IACH,kBAAkB,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI;IAchD;;;;OAIG;IACH,SAAS,IAAI,MAAM;IA0CnB;;;;;;OAMG;IACH,mCAAmC,CAAC,IAAI,EAAE,MAAM,EAAE,iBAAiB,EAAE,sBAAsB,GAAG,sBAAsB;CAerH"}
1
+ {"version":3,"file":"unstakingTransaction.d.ts","sourceRoot":"","sources":["../../../src/lib/unstakingTransaction.ts"],"names":[],"mappings":";AAAA,OAAO,EACL,OAAO,EACP,KAAK,EAGL,SAAS,IAAI,aAAa,EAC1B,SAAS,EAET,eAAe,EAChB,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,gCAAgC,EAAE,cAAc,EAAE,sBAAsB,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAC3G,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAGxD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAML,qBAAqB,EACtB,MAAM,qBAAqB,CAAC;AAO7B,qBAAa,oBAAqB,SAAQ,WAAW,CAAC,gCAAgC,CAAC;gBACzE,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI7C,IAAI,cAAc,IAAI,cAAc,CAAC,gCAAgC,CAAC,CAErE;IAED,iBAAiB,CAAC,EAAE,EAAE,cAAc,CAAC,gCAAgC,CAAC,GAAG,IAAI;IAI7E,YAAY,CAAC,SAAS,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;IAM/D,IAAI,YAAY,IAAI,SAAS,CAE5B;IAED,kBAAkB;IAClB,OAAO,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO;IAI9B,kBAAkB;IAClB,iBAAiB,IAAI,MAAM;IAO3B,kBAAkB;IAClB,MAAM,IAAI,MAAM;IAehB,kBAAkB;IAClB,kBAAkB,IAAI,sBAAsB;IAmC5C;;;;OAIG;IACH,eAAe,CAAC,eAAe,EAAE,eAAe,GAAG,IAAI;IAIvD,2BAA2B,CACzB,cAAc,EAAE,qBAAqB,EACrC,MAAM,CAAC,EAAE,MAAM,GACd;QAAE,MAAM,EAAE,KAAK,EAAE,CAAC;QAAC,OAAO,EAAE,KAAK,EAAE,CAAA;KAAE;IAoBxC,4BAA4B,CAC1B,MAAM,EAAE,cAAc,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,EACtC,YAAY,EAAE,OAAO,EAAE,GACtB;QACD,MAAM,EAAE,KAAK,EAAE,CAAC;QAChB,OAAO,EAAE,KAAK,EAAE,CAAC;KAClB;IA2CD,8BAA8B,CAC5B,MAAM,EAAE,cAAc,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,EACtC,EAAE,EAAE,OAAO,GACV;QACD,MAAM,EAAE,KAAK,EAAE,CAAC;QAChB,OAAO,EAAE,KAAK,EAAE,CAAC;KAClB;IAeD;;OAEG;IACH,oBAAoB,IAAI,IAAI;IAmB5B;;;;OAIG;IACH,kBAAkB,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI;IAchD;;;;OAIG;IACH,SAAS,IAAI,MAAM;IA0CnB;;;;;;OAMG;IACH,mCAAmC,CAAC,IAAI,EAAE,MAAM,EAAE,iBAAiB,EAAE,sBAAsB,GAAG,sBAAsB;CAerH"}
@@ -12,6 +12,8 @@ const builder_1 = require("./mystenlab/builder");
12
12
  const types_1 = require("./mystenlab/types");
13
13
  const bcs_1 = require("@mysten/bcs");
14
14
  const constants_1 = require("./constants");
15
+ const unstakingBuilder_1 = require("./unstakingBuilder");
16
+ const compareTransactionBlocks_1 = require("./compareTransactionBlocks");
15
17
  class UnstakingTransaction extends transaction_1.Transaction {
16
18
  constructor(_coinConfig) {
17
19
  super(_coinConfig);
@@ -96,6 +98,69 @@ class UnstakingTransaction extends transaction_1.Transaction {
96
98
  transactionType(transactionType) {
97
99
  this._type = transactionType;
98
100
  }
101
+ getEntriesForStakedSuiInput(stakedSuiInput, amount) {
102
+ const stakedSui = 'value' in stakedSuiInput ? stakedSuiInput.value : stakedSuiInput;
103
+ return {
104
+ inputs: [
105
+ {
106
+ address: types_1.normalizeSuiAddress(builder_1.getIdFromCallArg(stakedSui)),
107
+ value: amount === undefined ? constants_1.AMOUNT_UNKNOWN_TEXT : amount.toString(),
108
+ coin: this._coinConfig.name,
109
+ },
110
+ ],
111
+ outputs: [
112
+ {
113
+ address: this.suiTransaction.sender,
114
+ value: constants_1.AMOUNT_UNKNOWN_TEXT,
115
+ coin: this._coinConfig.name,
116
+ },
117
+ ],
118
+ };
119
+ }
120
+ getEntriesForTransactionPair(inputs, transactions) {
121
+ if (transactions.length !== 2) {
122
+ throw new Error('Invalid transaction pair');
123
+ }
124
+ if (!builder_1.MoveCallTransaction.is(transactions[0]) || !builder_1.MoveCallTransaction.is(transactions[1])) {
125
+ throw new Error('Invalid transaction pair');
126
+ }
127
+ if (!Array.isArray(inputs) || inputs.length !== 3) {
128
+ throw new Error('Invalid inputs');
129
+ }
130
+ function isImmOrOwnedObj(obj) {
131
+ return 'ImmOrOwned' in obj;
132
+ }
133
+ const [inputStakedSui, inputAmount, inputSharedObj] = inputs;
134
+ if (!builder_1.TransactionBlockInput.is(inputStakedSui) ||
135
+ !builder_1.TransactionBlockInput.is(inputAmount) ||
136
+ !builder_1.TransactionBlockInput.is(inputSharedObj) ||
137
+ inputStakedSui.type !== 'object' ||
138
+ inputAmount.type !== 'pure' ||
139
+ typeof inputAmount.value !== 'string' ||
140
+ inputSharedObj.type !== 'object' ||
141
+ !builder_1.ObjectCallArg.is(inputStakedSui.value) ||
142
+ !isImmOrOwnedObj(inputStakedSui.value.Object)) {
143
+ throw new Error('Invalid inputs');
144
+ }
145
+ const amount = BigInt(inputAmount.value);
146
+ // make sure we parsed the transaction correctly by rebuilding it and comparing the transaction blocks
147
+ compareTransactionBlocks_1.assertEqualTransactionBlocks({ inputs, transactions }, unstakingBuilder_1.UnstakingBuilder.getTransactionBlockData(inputStakedSui.value.Object.ImmOrOwned, amount));
148
+ return this.getEntriesForStakedSuiInput(inputStakedSui, amount);
149
+ }
150
+ getEntriesForSingleTransaction(inputs, tx) {
151
+ if (!builder_1.MoveCallTransaction.is(tx) || !builder_1.TransactionBlockInput.is(tx.arguments[1])) {
152
+ throw new Error('Invalid transaction');
153
+ }
154
+ const stakedSuiInputIdx = tx.arguments[1].index;
155
+ const stakedSuiInput = inputs[stakedSuiInputIdx];
156
+ if (!builder_1.TransactionBlockInput.is(stakedSuiInput)) {
157
+ // for unclear reasons, in tests the stakedSuiInput is not a TransactionBlockInput sometimes
158
+ if (!builder_1.ObjectCallArg.is(stakedSuiInput)) {
159
+ throw new Error('Invalid transaction');
160
+ }
161
+ }
162
+ return this.getEntriesForStakedSuiInput(stakedSuiInput);
163
+ }
99
164
  /**
100
165
  * Load the input and output data on this transaction.
101
166
  */
@@ -103,23 +168,19 @@ class UnstakingTransaction extends transaction_1.Transaction {
103
168
  if (!this.suiTransaction) {
104
169
  return;
105
170
  }
106
- const stakedSuiInputIdx = this.suiTransaction.tx.transactions[0].arguments[1].index;
107
- const stakedSuiInput = this.suiTransaction.tx.inputs[stakedSuiInputIdx];
108
- const stakedSui = 'value' in stakedSuiInput ? stakedSuiInput.value : stakedSuiInput;
109
- this._outputs = [
110
- {
111
- address: this.suiTransaction.sender,
112
- value: constants_1.AMOUNT_UNKNOWN_TEXT,
113
- coin: this._coinConfig.name,
114
- },
115
- ];
116
- this._inputs = [
117
- {
118
- address: types_1.normalizeSuiAddress(builder_1.getIdFromCallArg(stakedSui)),
119
- value: constants_1.AMOUNT_UNKNOWN_TEXT,
120
- coin: this._coinConfig.name,
121
- },
122
- ];
171
+ let parsed;
172
+ const { inputs, transactions } = this.suiTransaction.tx;
173
+ if (transactions.length === 1) {
174
+ parsed = this.getEntriesForSingleTransaction(inputs, transactions[0]);
175
+ }
176
+ else if (transactions.length === 2) {
177
+ parsed = this.getEntriesForTransactionPair(inputs, transactions);
178
+ }
179
+ else {
180
+ throw new sdk_core_1.InvalidTransactionError('Invalid transaction');
181
+ }
182
+ this._inputs = parsed.inputs;
183
+ this._outputs = parsed.outputs;
123
184
  }
124
185
  /**
125
186
  * Sets this transaction payload
@@ -203,4 +264,4 @@ class UnstakingTransaction extends transaction_1.Transaction {
203
264
  }
204
265
  }
205
266
  exports.UnstakingTransaction = UnstakingTransaction;
206
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5zdGFraW5nVHJhbnNhY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL3Vuc3Rha2luZ1RyYW5zYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLDhDQVF5QjtBQUd6QixvREFBNEI7QUFDNUIsbUNBQWdDO0FBQ2hDLCtDQUE0QztBQUM1QyxpREFBb0g7QUFDcEgsNkNBQWlFO0FBQ2pFLHFDQUFrQztBQUNsQywyQ0FBc0U7QUFFdEUsTUFBYSxvQkFBcUIsU0FBUSx5QkFBNkM7SUFDckYsWUFBWSxXQUFpQztRQUMzQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDckIsQ0FBQztJQUVELElBQUksY0FBYztRQUNoQixPQUFPLElBQUksQ0FBQyxlQUFlLENBQUM7SUFDOUIsQ0FBQztJQUVELGlCQUFpQixDQUFDLEVBQW9EO1FBQ3BFLElBQUksQ0FBQyxlQUFlLEdBQUcsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFRCxZQUFZLENBQUMsU0FBd0IsRUFBRSxTQUFpQjtRQUN0RCxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDakQsSUFBSSxDQUFDLFVBQVUsR0FBRyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsQ0FBQztRQUMzQyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDbkIsQ0FBQztJQUVELElBQUksWUFBWTtRQUNkLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQztJQUN6QixDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLE9BQU8sQ0FBQyxHQUFZO1FBQ2xCLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELGtCQUFrQjtJQUNsQixpQkFBaUI7UUFDZixJQUFJLENBQUMsSUFBSSxDQUFDLGVBQWUsRUFBRTtZQUN6QixNQUFNLElBQUksa0NBQXVCLENBQUMsbUJBQW1CLENBQUMsQ0FBQztTQUN4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LElBQUksQ0FBQyxlQUFlLENBQUMsTUFBTTtZQUNuQyxVQUFVLEVBQUUsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFO1lBQzFCLE9BQU8sRUFBRSxJQUFJLENBQUMsZUFBZSxDQUFDLE9BQU87WUFDckMsSUFBSSxFQUFFO2dCQUNKLHVCQUF1QixFQUFFLGNBQWM7YUFDeEM7U0FDRixDQUFDO0lBQ0osQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNILG1DQUFtQyxDQUFDLElBQVksRUFBRSxpQkFBeUM7UUFDekYsTUFBTSxPQUFPLEdBQTJCO1lBQ3RDO2dCQUNFLE9BQU8sRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLE1BQU07Z0JBQ25DLE1BQU0sRUFBRSwrQkFBbUI7YUFDNUI7U0FDRixDQUFDO1FBQ0YsTUFBTSxZQUFZLEdBQUcsK0JBQW1CLENBQUM7UUFFekMsT0FBTztZQUNMLEdBQUcsaUJBQWlCO1lBQ3BCLFlBQVk7WUFDWixPQUFPO1NBQ1IsQ0FBQztJQUNKLENBQUM7Q0FDRjtBQXZORCxvREF1TkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBCYXNlS2V5LFxuICBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcixcbiAgUGFyc2VUcmFuc2FjdGlvbkVycm9yLFxuICBQdWJsaWNLZXkgYXMgQmFzZVB1YmxpY0tleSxcbiAgU2lnbmF0dXJlLFxuICBUcmFuc2FjdGlvblJlY2lwaWVudCxcbiAgVHJhbnNhY3Rpb25UeXBlLFxufSBmcm9tICdAYml0Z28vc2RrLWNvcmUnO1xuaW1wb3J0IHsgVW5zdGFraW5nUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb24sIFN1aVRyYW5zYWN0aW9uLCBUcmFuc2FjdGlvbkV4cGxhbmF0aW9uLCBUeERhdGEgfSBmcm9tICcuL2lmYWNlJztcbmltcG9ydCB7IEJhc2VDb2luIGFzIENvaW5Db25maWcgfSBmcm9tICdAYml0Z28vc3RhdGljcyc7XG5pbXBvcnQgdXRpbHMgZnJvbSAnLi91dGlscyc7XG5pbXBvcnQgeyBCdWZmZXIgfSBmcm9tICdidWZmZXInO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb24gfSBmcm9tICcuL3RyYW5zYWN0aW9uJztcbmltcG9ydCB7IGJ1aWxkZXIsIGdldElkRnJvbUNhbGxBcmcsIElucHV0cywgTW92ZUNhbGxUcmFuc2FjdGlvbiwgVHJhbnNhY3Rpb25CbG9ja0lucHV0IH0gZnJvbSAnLi9teXN0ZW5sYWIvYnVpbGRlcic7XG5pbXBvcnQgeyBDYWxsQXJnLCBub3JtYWxpemVTdWlBZGRyZXNzIH0gZnJvbSAnLi9teXN0ZW5sYWIvdHlwZXMnO1xuaW1wb3J0IHsgQkNTIH0gZnJvbSAnQG15c3Rlbi9iY3MnO1xuaW1wb3J0IHsgQU1PVU5UX1VOS05PV05fVEVYVCwgU1VJX0FERFJFU1NfTEVOR1RIIH0gZnJvbSAnLi9jb25zdGFudHMnO1xuXG5leHBvcnQgY2xhc3MgVW5zdGFraW5nVHJhbnNhY3Rpb24gZXh0ZW5kcyBUcmFuc2FjdGlvbjxVbnN0YWtpbmdQcm9ncmFtbWFibGVUcmFuc2FjdGlvbj4ge1xuICBjb25zdHJ1Y3RvcihfY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz4pIHtcbiAgICBzdXBlcihfY29pbkNvbmZpZyk7XG4gIH1cblxuICBnZXQgc3VpVHJhbnNhY3Rpb24oKTogU3VpVHJhbnNhY3Rpb248VW5zdGFraW5nUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb24+IHtcbiAgICByZXR1cm4gdGhpcy5fc3VpVHJhbnNhY3Rpb247XG4gIH1cblxuICBzZXRTdWlUcmFuc2FjdGlvbih0eDogU3VpVHJhbnNhY3Rpb248VW5zdGFraW5nUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb24+KTogdm9pZCB7XG4gICAgdGhpcy5fc3VpVHJhbnNhY3Rpb24gPSB0eDtcbiAgfVxuXG4gIGFkZFNpZ25hdHVyZShwdWJsaWNLZXk6IEJhc2VQdWJsaWNLZXksIHNpZ25hdHVyZTogQnVmZmVyKTogdm9pZCB7XG4gICAgdGhpcy5fc2lnbmF0dXJlcy5wdXNoKHNpZ25hdHVyZS50b1N0cmluZygnaGV4JykpO1xuICAgIHRoaXMuX3NpZ25hdHVyZSA9IHsgcHVibGljS2V5LCBzaWduYXR1cmUgfTtcbiAgICB0aGlzLnNlcmlhbGl6ZSgpO1xuICB9XG5cbiAgZ2V0IHN1aVNpZ25hdHVyZSgpOiBTaWduYXR1cmUge1xuICAgIHJldHVybiB0aGlzLl9zaWduYXR1cmU7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgY2FuU2lnbihrZXk6IEJhc2VLZXkpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB0b0Jyb2FkY2FzdEZvcm1hdCgpOiBzdHJpbmcge1xuICAgIGlmICghdGhpcy5fc3VpVHJhbnNhY3Rpb24pIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcignRW1wdHkgdHJhbnNhY3Rpb24nKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuc2VyaWFsaXplKCk7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgdG9Kc29uKCk6IFR4RGF0YSB7XG4gICAgaWYgKCF0aGlzLl9zdWlUcmFuc2FjdGlvbikge1xuICAgICAgdGhyb3cgbmV3IFBhcnNlVHJhbnNhY3Rpb25FcnJvcignRW1wdHkgdHJhbnNhY3Rpb24nKTtcbiAgICB9XG5cbiAgICBjb25zdCB0eCA9IHRoaXMuX3N1aVRyYW5zYWN0aW9uO1xuICAgIHJldHVybiB7XG4gICAgICBpZDogdGhpcy5faWQsXG4gICAgICBzZW5kZXI6IHR4LnNlbmRlcixcbiAgICAgIGtpbmQ6IHsgUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb246IHR4LnR4IH0sXG4gICAgICBnYXNEYXRhOiB0eC5nYXNEYXRhLFxuICAgICAgZXhwaXJhdGlvbjogeyBOb25lOiBudWxsIH0sXG4gICAgfTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdERvYyAqL1xuICBleHBsYWluVHJhbnNhY3Rpb24oKTogVHJhbnNhY3Rpb25FeHBsYW5hdGlvbiB7XG4gICAgY29uc3QgcmVzdWx0ID0gdGhpcy50b0pzb24oKTtcbiAgICBjb25zdCBkaXNwbGF5T3JkZXIgPSBbXG4gICAgICAnaWQnLFxuICAgICAgJ291dHB1dHMnLFxuICAgICAgJ291dHB1dEFtb3VudCcsXG4gICAgICAnY2hhbmdlT3V0cHV0cycsXG4gICAgICAnY2hhbmdlQW1vdW50JyxcbiAgICAgICdmZWUnLFxuICAgICAgJ3R5cGUnLFxuICAgICAgJ21vZHVsZScsXG4gICAgICAnZnVuY3Rpb24nLFxuICAgICAgJ3ZhbGlkYXRvckFkZHJlc3MnLFxuICAgIF07XG4gICAgY29uc3Qgb3V0cHV0czogVHJhbnNhY3Rpb25SZWNpcGllbnRbXSA9IFtdO1xuXG4gICAgY29uc3QgZXhwbGFuYXRpb25SZXN1bHQ6IFRyYW5zYWN0aW9uRXhwbGFuYXRpb24gPSB7XG4gICAgICBkaXNwbGF5T3JkZXIsXG4gICAgICBpZDogdGhpcy5pZCxcbiAgICAgIG91dHB1dHMsXG4gICAgICBvdXRwdXRBbW91bnQ6ICcwJyxcbiAgICAgIGNoYW5nZU91dHB1dHM6IFtdLFxuICAgICAgY2hhbmdlQW1vdW50OiAnMCcsXG4gICAgICBmZWU6IHsgZmVlOiB0aGlzLnN1aVRyYW5zYWN0aW9uLmdhc0RhdGEuYnVkZ2V0LnRvU3RyaW5nKCkgfSxcbiAgICAgIHR5cGU6IHRoaXMudHlwZSxcbiAgICB9O1xuXG4gICAgc3dpdGNoICh0aGlzLnR5cGUpIHtcbiAgICAgIGNhc2UgVHJhbnNhY3Rpb25UeXBlLlN0YWtpbmdDbGFpbTpcbiAgICAgICAgcmV0dXJuIHRoaXMuZXhwbGFpbldpdGhkcmF3U3Rha2VkU3VpVHJhbnNhY3Rpb24ocmVzdWx0LCBleHBsYW5hdGlvblJlc3VsdCk7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoJ1RyYW5zYWN0aW9uIHR5cGUgbm90IHN1cHBvcnRlZCcpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgdGhlIHRyYW5zYWN0aW9uIHR5cGUuXG4gICAqXG4gICAqIEBwYXJhbSB7VHJhbnNhY3Rpb25UeXBlfSB0cmFuc2FjdGlvblR5cGUgVGhlIHRyYW5zYWN0aW9uIHR5cGUgdG8gYmUgc2V0LlxuICAgKi9cbiAgdHJhbnNhY3Rpb25UeXBlKHRyYW5zYWN0aW9uVHlwZTogVHJhbnNhY3Rpb25UeXBlKTogdm9pZCB7XG4gICAgdGhpcy5fdHlwZSA9IHRyYW5zYWN0aW9uVHlwZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBMb2FkIHRoZSBpbnB1dCBhbmQgb3V0cHV0IGRhdGEgb24gdGhpcyB0cmFuc2FjdGlvbi5cbiAgICovXG4gIGxvYWRJbnB1dHNBbmRPdXRwdXRzKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5zdWlUcmFuc2FjdGlvbikge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGNvbnN0IHN0YWtlZFN1aUlucHV0SWR4ID0gKFxuICAgICAgKHRoaXMuc3VpVHJhbnNhY3Rpb24udHgudHJhbnNhY3Rpb25zWzBdIGFzIE1vdmVDYWxsVHJhbnNhY3Rpb24pLmFyZ3VtZW50c1sxXSBhcyBUcmFuc2FjdGlvbkJsb2NrSW5wdXRcbiAgICApLmluZGV4O1xuICAgIGNvbnN0IHN0YWtlZFN1aUlucHV0ID0gdGhpcy5zdWlUcmFuc2FjdGlvbi50eC5pbnB1dHNbc3Rha2VkU3VpSW5wdXRJZHhdIGFzIFRyYW5zYWN0aW9uQmxvY2tJbnB1dDtcbiAgICBjb25zdCBzdGFrZWRTdWkgPSAndmFsdWUnIGluIHN0YWtlZFN1aUlucHV0ID8gc3Rha2VkU3VpSW5wdXQudmFsdWUgOiBzdGFrZWRTdWlJbnB1dDtcblxuICAgIHRoaXMuX291dHB1dHMgPSBbXG4gICAgICB7XG4gICAgICAgIGFkZHJlc3M6IHRoaXMuc3VpVHJhbnNhY3Rpb24uc2VuZGVyLFxuICAgICAgICB2YWx1ZTogQU1PVU5UX1VOS05PV05fVEVYVCxcbiAgICAgICAgY29pbjogdGhpcy5fY29pbkNvbmZpZy5uYW1lLFxuICAgICAgfSxcbiAgICBdO1xuICAgIHRoaXMuX2lucHV0cyA9IFtcbiAgICAgIHtcbiAgICAgICAgYWRkcmVzczogbm9ybWFsaXplU3VpQWRkcmVzcyhnZXRJZEZyb21DYWxsQXJnKHN0YWtlZFN1aSkpLFxuICAgICAgICB2YWx1ZTogQU1PVU5UX1VOS05PV05fVEVYVCxcbiAgICAgICAgY29pbjogdGhpcy5fY29pbkNvbmZpZy5uYW1lLFxuICAgICAgfSxcbiAgICBdO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhpcyB0cmFuc2FjdGlvbiBwYXlsb2FkXG4gICAqXG4gICAqIEBwYXJhbSB7c3RyaW5nfSByYXdUcmFuc2FjdGlvblxuICAgKi9cbiAgZnJvbVJhd1RyYW5zYWN0aW9uKHJhd1RyYW5zYWN0aW9uOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0cnkge1xuICAgICAgdXRpbHMuaXNWYWxpZFJhd1RyYW5zYWN0aW9uKHJhd1RyYW5zYWN0aW9uKTtcbiAgICAgIHRoaXMuX3N1aVRyYW5zYWN0aW9uID0gVHJhbnNhY3Rpb24uZGVzZXJpYWxpemVTdWlUcmFuc2FjdGlvbihcbiAgICAgICAgcmF3VHJhbnNhY3Rpb25cbiAgICAgICkgYXMgU3VpVHJhbnNhY3Rpb248VW5zdGFraW5nUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb24+O1xuICAgICAgdGhpcy5fdHlwZSA9IHV0aWxzLmdldFRyYW5zYWN0aW9uVHlwZSh0aGlzLl9zdWlUcmFuc2FjdGlvbi50eXBlKTtcbiAgICAgIHRoaXMuX2lkID0gdGhpcy5fc3VpVHJhbnNhY3Rpb24uaWQ7XG4gICAgICB0aGlzLmxvYWRJbnB1dHNBbmRPdXRwdXRzKCk7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgdGhyb3cgZTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogSGVscGVyIGZ1bmN0aW9uIGZvciBzZXJpYWxpemUoKSB0byBnZXQgdGhlIGNvcnJlY3QgdHhEYXRhIHdpdGggdHJhbnNhY3Rpb24gdHlwZVxuICAgKlxuICAgKiBAcmV0dXJuIHtUeERhdGF9XG4gICAqL1xuICBnZXRUeERhdGEoKTogVHhEYXRhIHtcbiAgICBpZiAoIXRoaXMuX3N1aVRyYW5zYWN0aW9uKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoJ2VtcHR5IHRyYW5zYWN0aW9uJyk7XG4gICAgfVxuICAgIGNvbnN0IGlucHV0czogQ2FsbEFyZ1tdIHwgVHJhbnNhY3Rpb25CbG9ja0lucHV0W10gPSB0aGlzLl9zdWlUcmFuc2FjdGlvbi50eC5pbnB1dHMubWFwKChpbnB1dCwgaW5kZXgpID0+IHtcbiAgICAgIGlmIChpbnB1dC5oYXNPd25Qcm9wZXJ0eSgnT2JqZWN0JykpIHtcbiAgICAgICAgcmV0dXJuIGlucHV0O1xuICAgICAgfVxuICAgICAgaWYgKGlucHV0Lmhhc093blByb3BlcnR5KCdQdXJlJykpIHtcbiAgICAgICAgaWYgKGlucHV0LlB1cmUubGVuZ3RoID09PSBTVUlfQUREUkVTU19MRU5HVEgpIHtcbiAgICAgICAgICBjb25zdCBhZGRyZXNzID0gbm9ybWFsaXplU3VpQWRkcmVzcyhcbiAgICAgICAgICAgIGJ1aWxkZXIuZGUoQkNTLkFERFJFU1MsIEJ1ZmZlci5mcm9tKGlucHV0LlB1cmUpLnRvU3RyaW5nKCdiYXNlNjQnKSwgJ2Jhc2U2NCcpXG4gICAgICAgICAgKTtcbiAgICAgICAgICByZXR1cm4gSW5wdXRzLlB1cmUoYWRkcmVzcywgQkNTLkFERFJFU1MpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNvbnN0IGFtb3VudCA9IGJ1aWxkZXIuZGUoQkNTLlU2NCwgQnVmZmVyLmZyb20oaW5wdXQuUHVyZSkudG9TdHJpbmcoJ2Jhc2U2NCcpLCAnYmFzZTY0Jyk7XG4gICAgICAgICAgcmV0dXJuIElucHV0cy5QdXJlKGFtb3VudCwgQkNTLlU2NCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGlmIChpbnB1dC5raW5kID09PSAnSW5wdXQnICYmIChpbnB1dC52YWx1ZS5oYXNPd25Qcm9wZXJ0eSgnT2JqZWN0JykgfHwgaW5wdXQudmFsdWUuaGFzT3duUHJvcGVydHkoJ1B1cmUnKSkpIHtcbiAgICAgICAgcmV0dXJuIGlucHV0LnZhbHVlO1xuICAgICAgfVxuXG4gICAgICAvLyB3aGF0J3MgbGVmdCBpcyB0aGUgcHVyZSBudW1iZXIgb3IgYWRkcmVzcyBzdHJpbmdcbiAgICAgIHJldHVybiBJbnB1dHMuUHVyZShpbnB1dC52YWx1ZSwgaW5wdXQudHlwZSA9PT0gJ3B1cmUnID8gQkNTLlU2NCA6IEJDUy5BRERSRVNTKTtcbiAgICB9KTtcblxuICAgIGNvbnN0IHByb2dyYW1tYWJsZVR4ID0ge1xuICAgICAgaW5wdXRzOiBpbnB1dHMsXG4gICAgICB0cmFuc2FjdGlvbnM6IHRoaXMuX3N1aVRyYW5zYWN0aW9uLnR4LnRyYW5zYWN0aW9ucyxcbiAgICB9IGFzIFVuc3Rha2luZ1Byb2dyYW1tYWJsZVRyYW5zYWN0aW9uO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIHNlbmRlcjogdGhpcy5fc3VpVHJhbnNhY3Rpb24uc2VuZGVyLFxuICAgICAgZXhwaXJhdGlvbjogeyBOb25lOiBudWxsIH0sXG4gICAgICBnYXNEYXRhOiB0aGlzLl9zdWlUcmFuc2FjdGlvbi5nYXNEYXRhLFxuICAgICAga2luZDoge1xuICAgICAgICBQcm9ncmFtbWFibGVUcmFuc2FjdGlvbjogcHJvZ3JhbW1hYmxlVHgsXG4gICAgICB9LFxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogUmV0dXJucyBhIGNvbXBsZXRlIGV4cGxhbmF0aW9uIGZvciBhIHVuc3Rha2luZyB0cmFuc2FjdGlvblxuICAgKlxuICAgKiBAcGFyYW0ge1R4RGF0YX0ganNvbiBUaGUgdHJhbnNhY3Rpb24gZGF0YSBpbiBqc29uIGZvcm1hdFxuICAgKiBAcGFyYW0ge1RyYW5zYWN0aW9uRXhwbGFuYXRpb259IGV4cGxhbmF0aW9uUmVzdWx0IFRoZSB0cmFuc2FjdGlvbiBleHBsYW5hdGlvbiB0byBiZSBjb21wbGV0ZWRcbiAgICogQHJldHVybnMge1RyYW5zYWN0aW9uRXhwbGFuYXRpb259XG4gICAqL1xuICBleHBsYWluV2l0aGRyYXdTdGFrZWRTdWlUcmFuc2FjdGlvbihqc29uOiBUeERhdGEsIGV4cGxhbmF0aW9uUmVzdWx0OiBUcmFuc2FjdGlvbkV4cGxhbmF0aW9uKTogVHJhbnNhY3Rpb25FeHBsYW5hdGlvbiB7XG4gICAgY29uc3Qgb3V0cHV0czogVHJhbnNhY3Rpb25SZWNpcGllbnRbXSA9IFtcbiAgICAgIHtcbiAgICAgICAgYWRkcmVzczogdGhpcy5zdWlUcmFuc2FjdGlvbi5zZW5kZXIsXG4gICAgICAgIGFtb3VudDogQU1PVU5UX1VOS05PV05fVEVYVCxcbiAgICAgIH0sXG4gICAgXTtcbiAgICBjb25zdCBvdXRwdXRBbW91bnQgPSBBTU9VTlRfVU5LTk9XTl9URVhUO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIC4uLmV4cGxhbmF0aW9uUmVzdWx0LFxuICAgICAgb3V0cHV0QW1vdW50LFxuICAgICAgb3V0cHV0cyxcbiAgICB9O1xuICB9XG59XG4iXX0=
267
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5zdGFraW5nVHJhbnNhY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL3Vuc3Rha2luZ1RyYW5zYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLDhDQVN5QjtBQUd6QixvREFBNEI7QUFDNUIsbUNBQWdDO0FBQ2hDLCtDQUE0QztBQUM1QyxpREFPNkI7QUFDN0IsNkNBQStFO0FBQy9FLHFDQUFrQztBQUNsQywyQ0FBc0U7QUFDdEUseURBQXNEO0FBQ3RELHlFQUEwRTtBQUUxRSxNQUFhLG9CQUFxQixTQUFRLHlCQUE2QztJQUNyRixZQUFZLFdBQWlDO1FBQzNDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBRUQsSUFBSSxjQUFjO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQztJQUM5QixDQUFDO0lBRUQsaUJBQWlCLENBQUMsRUFBb0Q7UUFDcEUsSUFBSSxDQUFDLGVBQWUsR0FBRyxFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVELFlBQVksQ0FBQyxTQUF3QixFQUFFLFNBQWlCO1FBQ3RELElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUNqRCxJQUFJLENBQUMsVUFBVSxHQUFHLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxDQUFDO1FBQzNDLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBRUQsSUFBSSxZQUFZO1FBQ2QsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsT0FBTyxDQUFDLEdBQVk7UUFDbEIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLGlCQUFpQjtRQUNmLElBQUksQ0FBQyxJQUFJLENBQUMsZUFBZSxFQUFFO1lBQ3pCLE1BQU0sSUFBSSxrQ0FBdUIs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dHJ5LFxuICBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcixcbiAgUGFyc2VUcmFuc2FjdGlvbkVycm9yLFxuICBQdWJsaWNLZXkgYXMgQmFzZVB1YmxpY0tleSxcbiAgU2lnbmF0dXJlLFxuICBUcmFuc2FjdGlvblJlY2lwaWVudCxcbiAgVHJhbnNhY3Rpb25UeXBlLFxufSBmcm9tICdAYml0Z28vc2RrLWNvcmUnO1xuaW1wb3J0IHsgVW5zdGFraW5nUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb24sIFN1aVRyYW5zYWN0aW9uLCBUcmFuc2FjdGlvbkV4cGxhbmF0aW9uLCBUeERhdGEgfSBmcm9tICcuL2lmYWNlJztcbmltcG9ydCB7IEJhc2VDb2luIGFzIENvaW5Db25maWcgfSBmcm9tICdAYml0Z28vc3RhdGljcyc7XG5pbXBvcnQgdXRpbHMgZnJvbSAnLi91dGlscyc7XG5pbXBvcnQgeyBCdWZmZXIgfSBmcm9tICdidWZmZXInO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb24gfSBmcm9tICcuL3RyYW5zYWN0aW9uJztcbmltcG9ydCB7XG4gIGJ1aWxkZXIsXG4gIGdldElkRnJvbUNhbGxBcmcsXG4gIElucHV0cyxcbiAgTW92ZUNhbGxUcmFuc2FjdGlvbixcbiAgT2JqZWN0Q2FsbEFyZyxcbiAgVHJhbnNhY3Rpb25CbG9ja0lucHV0LFxufSBmcm9tICcuL215c3RlbmxhYi9idWlsZGVyJztcbmltcG9ydCB7IENhbGxBcmcsIG5vcm1hbGl6ZVN1aUFkZHJlc3MsIFN1aU9iamVjdFJlZiB9IGZyb20gJy4vbXlzdGVubGFiL3R5cGVzJztcbmltcG9ydCB7IEJDUyB9IGZyb20gJ0BteXN0ZW4vYmNzJztcbmltcG9ydCB7IEFNT1VOVF9VTktOT1dOX1RFWFQsIFNVSV9BRERSRVNTX0xFTkdUSCB9IGZyb20gJy4vY29uc3RhbnRzJztcbmltcG9ydCB7IFVuc3Rha2luZ0J1aWxkZXIgfSBmcm9tICcuL3Vuc3Rha2luZ0J1aWxkZXInO1xuaW1wb3J0IHsgYXNzZXJ0RXF1YWxUcmFuc2FjdGlvbkJsb2NrcyB9IGZyb20gJy4vY29tcGFyZVRyYW5zYWN0aW9uQmxvY2tzJztcblxuZXhwb3J0IGNsYXNzIFVuc3Rha2luZ1RyYW5zYWN0aW9uIGV4dGVuZHMgVHJhbnNhY3Rpb248VW5zdGFraW5nUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb24+IHtcbiAgY29uc3RydWN0b3IoX2NvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+KSB7XG4gICAgc3VwZXIoX2NvaW5Db25maWcpO1xuICB9XG5cbiAgZ2V0IHN1aVRyYW5zYWN0aW9uKCk6IFN1aVRyYW5zYWN0aW9uPFVuc3Rha2luZ1Byb2dyYW1tYWJsZVRyYW5zYWN0aW9uPiB7XG4gICAgcmV0dXJuIHRoaXMuX3N1aVRyYW5zYWN0aW9uO1xuICB9XG5cbiAgc2V0U3VpVHJhbnNhY3Rpb24odHg6IFN1aVRyYW5zYWN0aW9uPFVuc3Rha2luZ1Byb2dyYW1tYWJsZVRyYW5zYWN0aW9uPik6IHZvaWQge1xuICAgIHRoaXMuX3N1aVRyYW5zYWN0aW9uID0gdHg7XG4gIH1cblxuICBhZGRTaWduYXR1cmUocHVibGljS2V5OiBCYXNlUHVibGljS2V5LCBzaWduYXR1cmU6IEJ1ZmZlcik6IHZvaWQge1xuICAgIHRoaXMuX3NpZ25hdHVyZXMucHVzaChzaWduYXR1cmUudG9TdHJpbmcoJ2hleCcpKTtcbiAgICB0aGlzLl9zaWduYXR1cmUgPSB7IHB1YmxpY0tleSwgc2lnbmF0dXJlIH07XG4gICAgdGhpcy5zZXJpYWxpemUoKTtcbiAgfVxuXG4gIGdldCBzdWlTaWduYXR1cmUoKTogU2lnbmF0dXJlIHtcbiAgICByZXR1cm4gdGhpcy5fc2lnbmF0dXJlO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGNhblNpZ24oa2V5OiBCYXNlS2V5KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgdG9Ccm9hZGNhc3RGb3JtYXQoKTogc3RyaW5nIHtcbiAgICBpZiAoIXRoaXMuX3N1aVRyYW5zYWN0aW9uKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoJ0VtcHR5IHRyYW5zYWN0aW9uJyk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLnNlcmlhbGl6ZSgpO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHRvSnNvbigpOiBUeERhdGEge1xuICAgIGlmICghdGhpcy5fc3VpVHJhbnNhY3Rpb24pIHtcbiAgICAgIHRocm93IG5ldyBQYXJzZVRyYW5zYWN0aW9uRXJyb3IoJ0VtcHR5IHRyYW5zYWN0aW9uJyk7XG4gICAgfVxuXG4gICAgY29uc3QgdHggPSB0aGlzLl9zdWlUcmFuc2FjdGlvbjtcbiAgICByZXR1cm4ge1xuICAgICAgaWQ6IHRoaXMuX2lkLFxuICAgICAgc2VuZGVyOiB0eC5zZW5kZXIsXG4gICAgICBraW5kOiB7IFByb2dyYW1tYWJsZVRyYW5zYWN0aW9uOiB0eC50eCB9LFxuICAgICAgZ2FzRGF0YTogdHguZ2FzRGF0YSxcbiAgICAgIGV4cGlyYXRpb246IHsgTm9uZTogbnVsbCB9LFxuICAgIH07XG4gIH1cblxuICAvKiogQGluaGVyaXREb2MgKi9cbiAgZXhwbGFpblRyYW5zYWN0aW9uKCk6IFRyYW5zYWN0aW9uRXhwbGFuYXRpb24ge1xuICAgIGNvbnN0IHJlc3VsdCA9IHRoaXMudG9Kc29uKCk7XG4gICAgY29uc3QgZGlzcGxheU9yZGVyID0gW1xuICAgICAgJ2lkJyxcbiAgICAgICdvdXRwdXRzJyxcbiAgICAgICdvdXRwdXRBbW91bnQnLFxuICAgICAgJ2NoYW5nZU91dHB1dHMnLFxuICAgICAgJ2NoYW5nZUFtb3VudCcsXG4gICAgICAnZmVlJyxcbiAgICAgICd0eXBlJyxcbiAgICAgICdtb2R1bGUnLFxuICAgICAgJ2Z1bmN0aW9uJyxcbiAgICAgICd2YWxpZGF0b3JBZGRyZXNzJyxcbiAgICBdO1xuICAgIGNvbnN0IG91dHB1dHM6IFRyYW5zYWN0aW9uUmVjaXBpZW50W10gPSBbXTtcblxuICAgIGNvbnN0IGV4cGxhbmF0aW9uUmVzdWx0OiBUcmFuc2FjdGlvbkV4cGxhbmF0aW9uID0ge1xuICAgICAgZGlzcGxheU9yZGVyLFxuICAgICAgaWQ6IHRoaXMuaWQsXG4gICAgICBvdXRwdXRzLFxuICAgICAgb3V0cHV0QW1vdW50OiAnMCcsXG4gICAgICBjaGFuZ2VPdXRwdXRzOiBbXSxcbiAgICAgIGNoYW5nZUFtb3VudDogJzAnLFxuICAgICAgZmVlOiB7IGZlZTogdGhpcy5zdWlUcmFuc2FjdGlvbi5nYXNEYXRhLmJ1ZGdldC50b1N0cmluZygpIH0sXG4gICAgICB0eXBlOiB0aGlzLnR5cGUsXG4gICAgfTtcblxuICAgIHN3aXRjaCAodGhpcy50eXBlKSB7XG4gICAgICBjYXNlIFRyYW5zYWN0aW9uVHlwZS5TdGFraW5nQ2xhaW06XG4gICAgICAgIHJldHVybiB0aGlzLmV4cGxhaW5XaXRoZHJhd1N0YWtlZFN1aVRyYW5zYWN0aW9uKHJlc3VsdCwgZXhwbGFuYXRpb25SZXN1bHQpO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKCdUcmFuc2FjdGlvbiB0eXBlIG5vdCBzdXBwb3J0ZWQnKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogU2V0IHRoZSB0cmFuc2FjdGlvbiB0eXBlLlxuICAgKlxuICAgKiBAcGFyYW0ge1RyYW5zYWN0aW9uVHlwZX0gdHJhbnNhY3Rpb25UeXBlIFRoZSB0cmFuc2FjdGlvbiB0eXBlIHRvIGJlIHNldC5cbiAgICovXG4gIHRyYW5zYWN0aW9uVHlwZSh0cmFuc2FjdGlvblR5cGU6IFRyYW5zYWN0aW9uVHlwZSk6IHZvaWQge1xuICAgIHRoaXMuX3R5cGUgPSB0cmFuc2FjdGlvblR5cGU7XG4gIH1cblxuICBnZXRFbnRyaWVzRm9yU3Rha2VkU3VpSW5wdXQoXG4gICAgc3Rha2VkU3VpSW5wdXQ6IFRyYW5zYWN0aW9uQmxvY2tJbnB1dCxcbiAgICBhbW91bnQ/OiBiaWdpbnRcbiAgKTogeyBpbnB1dHM6IEVudHJ5W107IG91dHB1dHM6IEVudHJ5W10gfSB7XG4gICAgY29uc3Qgc3Rha2VkU3VpID0gJ3ZhbHVlJyBpbiBzdGFrZWRTdWlJbnB1dCA/IHN0YWtlZFN1aUlucHV0LnZhbHVlIDogc3Rha2VkU3VpSW5wdXQ7XG4gICAgcmV0dXJuIHtcbiAgICAgIGlucHV0czogW1xuICAgICAgICB7XG4gICAgICAgICAgYWRkcmVzczogbm9ybWFsaXplU3VpQWRkcmVzcyhnZXRJZEZyb21DYWxsQXJnKHN0YWtlZFN1aSkpLFxuICAgICAgICAgIHZhbHVlOiBhbW91bnQgPT09IHVuZGVmaW5lZCA/IEFNT1VOVF9VTktOT1dOX1RFWFQgOiBhbW91bnQudG9TdHJpbmcoKSxcbiAgICAgICAgICBjb2luOiB0aGlzLl9jb2luQ29uZmlnLm5hbWUsXG4gICAgICAgIH0sXG4gICAgICBdLFxuICAgICAgb3V0cHV0czogW1xuICAgICAgICB7XG4gICAgICAgICAgYWRkcmVzczogdGhpcy5zdWlUcmFuc2FjdGlvbi5zZW5kZXIsXG4gICAgICAgICAgdmFsdWU6IEFNT1VOVF9VTktOT1dOX1RFWFQsXG4gICAgICAgICAgY29pbjogdGhpcy5fY29pbkNvbmZpZy5uYW1lLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9O1xuICB9XG5cbiAgZ2V0RW50cmllc0ZvclRyYW5zYWN0aW9uUGFpcihcbiAgICBpbnB1dHM6IFN1aVRyYW5zYWN0aW9uWyd0eCddWydpbnB1dHMnXSxcbiAgICB0cmFuc2FjdGlvbnM6IHVua25vd25bXVxuICApOiB7XG4gICAgaW5wdXRzOiBFbnRyeVtdO1xuICAgIG91dHB1dHM6IEVudHJ5W107XG4gIH0ge1xuICAgIGlmICh0cmFuc2FjdGlvbnMubGVuZ3RoICE9PSAyKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgdHJhbnNhY3Rpb24gcGFpcicpO1xuICAgIH1cblxuICAgIGlmICghTW92ZUNhbGxUcmFuc2FjdGlvbi5pcyh0cmFuc2FjdGlvbnNbMF0pIHx8ICFNb3ZlQ2FsbFRyYW5zYWN0aW9uLmlzKHRyYW5zYWN0aW9uc1sxXSkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignSW52YWxpZCB0cmFuc2FjdGlvbiBwYWlyJyk7XG4gICAgfVxuXG4gICAgaWYgKCFBcnJheS5pc0FycmF5KGlucHV0cykgfHwgaW5wdXRzLmxlbmd0aCAhPT0gMykge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIGlucHV0cycpO1xuICAgIH1cblxuICAgIGZ1bmN0aW9uIGlzSW1tT3JPd25lZE9iaihvYmo6IE9iamVjdENhbGxBcmdbJ09iamVjdCddKTogb2JqIGlzIHsgSW1tT3JPd25lZDogU3VpT2JqZWN0UmVmIH0ge1xuICAgICAgcmV0dXJuICdJbW1Pck93bmVkJyBpbiBvYmo7XG4gICAgfVxuXG4gICAgY29uc3QgW2lucHV0U3Rha2VkU3VpLCBpbnB1dEFtb3VudCwgaW5wdXRTaGFyZWRPYmpdID0gaW5wdXRzO1xuICAgIGlmIChcbiAgICAgICFUcmFuc2FjdGlvbkJsb2NrSW5wdXQuaXMoaW5wdXRTdGFrZWRTdWkpIHx8XG4gICAgICAhVHJhbnNhY3Rpb25CbG9ja0lucHV0LmlzKGlucHV0QW1vdW50KSB8fFxuICAgICAgIVRyYW5zYWN0aW9uQmxvY2tJbnB1dC5pcyhpbnB1dFNoYXJlZE9iaikgfHxcbiAgICAgIGlucHV0U3Rha2VkU3VpLnR5cGUgIT09ICdvYmplY3QnIHx8XG4gICAgICBpbnB1dEFtb3VudC50eXBlICE9PSAncHVyZScgfHxcbiAgICAgIHR5cGVvZiBpbnB1dEFtb3VudC52YWx1ZSAhPT0gJ3N0cmluZycgfHxcbiAgICAgIGlucHV0U2hhcmVkT2JqLnR5cGUgIT09ICdvYmplY3QnIHx8XG4gICAgICAhT2JqZWN0Q2FsbEFyZy5pcyhpbnB1dFN0YWtlZFN1aS52YWx1ZSkgfHxcbiAgICAgICFpc0ltbU9yT3duZWRPYmooaW5wdXRTdGFrZWRTdWkudmFsdWUuT2JqZWN0KVxuICAgICkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIGlucHV0cycpO1xuICAgIH1cblxuICAgIGNvbnN0IGFtb3VudCA9IEJpZ0ludChpbnB1dEFtb3VudC52YWx1ZSk7XG5cbiAgICAvLyBtYWtlIHN1cmUgd2UgcGFyc2VkIHRoZSB0cmFuc2FjdGlvbiBjb3JyZWN0bHkgYnkgcmVidWlsZGluZyBpdCBhbmQgY29tcGFyaW5nIHRoZSB0cmFuc2FjdGlvbiBibG9ja3NcbiAgICBhc3NlcnRFcXVhbFRyYW5zYWN0aW9uQmxvY2tzKFxuICAgICAgeyBpbnB1dHMsIHRyYW5zYWN0aW9ucyB9LFxuICAgICAgVW5zdGFraW5nQnVpbGRlci5nZXRUcmFuc2FjdGlvbkJsb2NrRGF0YShpbnB1dFN0YWtlZFN1aS52YWx1ZS5PYmplY3QuSW1tT3JPd25lZCwgYW1vdW50KVxuICAgICk7XG5cbiAgICByZXR1cm4gdGhpcy5nZXRFbnRyaWVzRm9yU3Rha2VkU3VpSW5wdXQoaW5wdXRTdGFrZWRTdWksIGFtb3VudCk7XG4gIH1cblxuICBnZXRFbnRyaWVzRm9yU2luZ2xlVHJhbnNhY3Rpb24oXG4gICAgaW5wdXRzOiBTdWlUcmFuc2FjdGlvblsndHgnXVsnaW5wdXRzJ10sXG4gICAgdHg6IHVua25vd25cbiAgKToge1xuICAgIGlucHV0czogRW50cnlbXTtcbiAgICBvdXRwdXRzOiBFbnRyeVtdO1xuICB9IHtcbiAgICBpZiAoIU1vdmVDYWxsVHJhbnNhY3Rpb24uaXModHgpIHx8ICFUcmFuc2FjdGlvbkJsb2NrSW5wdXQuaXModHguYXJndW1lbnRzWzFdKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIHRyYW5zYWN0aW9uJyk7XG4gICAgfVxuICAgIGNvbnN0IHN0YWtlZFN1aUlucHV0SWR4ID0gdHguYXJndW1lbnRzWzFdLmluZGV4O1xuICAgIGNvbnN0IHN0YWtlZFN1aUlucHV0ID0gaW5wdXRzW3N0YWtlZFN1aUlucHV0SWR4XTtcbiAgICBpZiAoIVRyYW5zYWN0aW9uQmxvY2tJbnB1dC5pcyhzdGFrZWRTdWlJbnB1dCkpIHtcbiAgICAgIC8vIGZvciB1bmNsZWFyIHJlYXNvbnMsIGluIHRlc3RzIHRoZSBzdGFrZWRTdWlJbnB1dCBpcyBub3QgYSBUcmFuc2FjdGlvbkJsb2NrSW5wdXQgc29tZXRpbWVzXG4gICAgICBpZiAoIU9iamVjdENhbGxBcmcuaXMoc3Rha2VkU3VpSW5wdXQpKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignSW52YWxpZCB0cmFuc2FjdGlvbicpO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gdGhpcy5nZXRFbnRyaWVzRm9yU3Rha2VkU3VpSW5wdXQoc3Rha2VkU3VpSW5wdXQgYXMgVHJhbnNhY3Rpb25CbG9ja0lucHV0KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBMb2FkIHRoZSBpbnB1dCBhbmQgb3V0cHV0IGRhdGEgb24gdGhpcyB0cmFuc2FjdGlvbi5cbiAgICovXG4gIGxvYWRJbnB1dHNBbmRPdXRwdXRzKCk6IHZvaWQge1xuICAgIGlmICghdGhpcy5zdWlUcmFuc2FjdGlvbikge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGxldCBwYXJzZWQ7XG4gICAgY29uc3QgeyBpbnB1dHMsIHRyYW5zYWN0aW9ucyB9ID0gdGhpcy5zdWlUcmFuc2FjdGlvbi50eDtcbiAgICBpZiAodHJhbnNhY3Rpb25zLmxlbmd0aCA9PT0gMSkge1xuICAgICAgcGFyc2VkID0gdGhpcy5nZXRFbnRyaWVzRm9yU2luZ2xlVHJhbnNhY3Rpb24oaW5wdXRzLCB0cmFuc2FjdGlvbnNbMF0pO1xuICAgIH0gZWxzZSBpZiAodHJhbnNhY3Rpb25zLmxlbmd0aCA9PT0gMikge1xuICAgICAgcGFyc2VkID0gdGhpcy5nZXRFbnRyaWVzRm9yVHJhbnNhY3Rpb25QYWlyKGlucHV0cywgdHJhbnNhY3Rpb25zKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKCdJbnZhbGlkIHRyYW5zYWN0aW9uJyk7XG4gICAgfVxuXG4gICAgdGhpcy5faW5wdXRzID0gcGFyc2VkLmlucHV0cztcbiAgICB0aGlzLl9vdXRwdXRzID0gcGFyc2VkLm91dHB1dHM7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGlzIHRyYW5zYWN0aW9uIHBheWxvYWRcbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IHJhd1RyYW5zYWN0aW9uXG4gICAqL1xuICBmcm9tUmF3VHJhbnNhY3Rpb24ocmF3VHJhbnNhY3Rpb246IHN0cmluZyk6IHZvaWQge1xuICAgIHRyeSB7XG4gICAgICB1dGlscy5pc1ZhbGlkUmF3VHJhbnNhY3Rpb24ocmF3VHJhbnNhY3Rpb24pO1xuICAgICAgdGhpcy5fc3VpVHJhbnNhY3Rpb24gPSBUcmFuc2FjdGlvbi5kZXNlcmlhbGl6ZVN1aVRyYW5zYWN0aW9uKFxuICAgICAgICByYXdUcmFuc2FjdGlvblxuICAgICAgKSBhcyBTdWlUcmFuc2FjdGlvbjxVbnN0YWtpbmdQcm9ncmFtbWFibGVUcmFuc2FjdGlvbj47XG4gICAgICB0aGlzLl90eXBlID0gdXRpbHMuZ2V0VHJhbnNhY3Rpb25UeXBlKHRoaXMuX3N1aVRyYW5zYWN0aW9uLnR5cGUpO1xuICAgICAgdGhpcy5faWQgPSB0aGlzLl9zdWlUcmFuc2FjdGlvbi5pZDtcbiAgICAgIHRoaXMubG9hZElucHV0c0FuZE91dHB1dHMoKTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICB0aHJvdyBlO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBIZWxwZXIgZnVuY3Rpb24gZm9yIHNlcmlhbGl6ZSgpIHRvIGdldCB0aGUgY29ycmVjdCB0eERhdGEgd2l0aCB0cmFuc2FjdGlvbiB0eXBlXG4gICAqXG4gICAqIEByZXR1cm4ge1R4RGF0YX1cbiAgICovXG4gIGdldFR4RGF0YSgpOiBUeERhdGEge1xuICAgIGlmICghdGhpcy5fc3VpVHJhbnNhY3Rpb24pIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcignZW1wdHkgdHJhbnNhY3Rpb24nKTtcbiAgICB9XG4gICAgY29uc3QgaW5wdXRzOiBDYWxsQXJnW10gfCBUcmFuc2FjdGlvbkJsb2NrSW5wdXRbXSA9IHRoaXMuX3N1aVRyYW5zYWN0aW9uLnR4LmlucHV0cy5tYXAoKGlucHV0LCBpbmRleCkgPT4ge1xuICAgICAgaWYgKGlucHV0Lmhhc093blByb3BlcnR5KCdPYmplY3QnKSkge1xuICAgICAgICByZXR1cm4gaW5wdXQ7XG4gICAgICB9XG4gICAgICBpZiAoaW5wdXQuaGFzT3duUHJvcGVydHkoJ1B1cmUnKSkge1xuICAgICAgICBpZiAoaW5wdXQuUHVyZS5sZW5ndGggPT09IFNVSV9BRERSRVNTX0xFTkdUSCkge1xuICAgICAgICAgIGNvbnN0IGFkZHJlc3MgPSBub3JtYWxpemVTdWlBZGRyZXNzKFxuICAgICAgICAgICAgYnVpbGRlci5kZShCQ1MuQUREUkVTUywgQnVmZmVyLmZyb20oaW5wdXQuUHVyZSkudG9TdHJpbmcoJ2Jhc2U2NCcpLCAnYmFzZTY0JylcbiAgICAgICAgICApO1xuICAgICAgICAgIHJldHVybiBJbnB1dHMuUHVyZShhZGRyZXNzLCBCQ1MuQUREUkVTUyk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgY29uc3QgYW1vdW50ID0gYnVpbGRlci5kZShCQ1MuVTY0LCBCdWZmZXIuZnJvbShpbnB1dC5QdXJlKS50b1N0cmluZygnYmFzZTY0JyksICdiYXNlNjQnKTtcbiAgICAgICAgICByZXR1cm4gSW5wdXRzLlB1cmUoYW1vdW50LCBCQ1MuVTY0KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICAgaWYgKGlucHV0LmtpbmQgPT09ICdJbnB1dCcgJiYgKGlucHV0LnZhbHVlLmhhc093blByb3BlcnR5KCdPYmplY3QnKSB8fCBpbnB1dC52YWx1ZS5oYXNPd25Qcm9wZXJ0eSgnUHVyZScpKSkge1xuICAgICAgICByZXR1cm4gaW5wdXQudmFsdWU7XG4gICAgICB9XG5cbiAgICAgIC8vIHdoYXQncyBsZWZ0IGlzIHRoZSBwdXJlIG51bWJlciBvciBhZGRyZXNzIHN0cmluZ1xuICAgICAgcmV0dXJuIElucHV0cy5QdXJlKGlucHV0LnZhbHVlLCBpbnB1dC50eXBlID09PSAncHVyZScgPyBCQ1MuVTY0IDogQkNTLkFERFJFU1MpO1xuICAgIH0pO1xuXG4gICAgY29uc3QgcHJvZ3JhbW1hYmxlVHggPSB7XG4gICAgICBpbnB1dHM6IGlucHV0cyxcbiAgICAgIHRyYW5zYWN0aW9uczogdGhpcy5fc3VpVHJhbnNhY3Rpb24udHgudHJhbnNhY3Rpb25zLFxuICAgIH0gYXMgVW5zdGFraW5nUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb247XG5cbiAgICByZXR1cm4ge1xuICAgICAgc2VuZGVyOiB0aGlzLl9zdWlUcmFuc2FjdGlvbi5zZW5kZXIsXG4gICAgICBleHBpcmF0aW9uOiB7IE5vbmU6IG51bGwgfSxcbiAgICAgIGdhc0RhdGE6IHRoaXMuX3N1aVRyYW5zYWN0aW9uLmdhc0RhdGEsXG4gICAgICBraW5kOiB7XG4gICAgICAgIFByb2dyYW1tYWJsZVRyYW5zYWN0aW9uOiBwcm9ncmFtbWFibGVUeCxcbiAgICAgIH0sXG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIGEgY29tcGxldGUgZXhwbGFuYXRpb24gZm9yIGEgdW5zdGFraW5nIHRyYW5zYWN0aW9uXG4gICAqXG4gICAqIEBwYXJhbSB7VHhEYXRhfSBqc29uIFRoZSB0cmFuc2FjdGlvbiBkYXRhIGluIGpzb24gZm9ybWF0XG4gICAqIEBwYXJhbSB7VHJhbnNhY3Rpb25FeHBsYW5hdGlvbn0gZXhwbGFuYXRpb25SZXN1bHQgVGhlIHRyYW5zYWN0aW9uIGV4cGxhbmF0aW9uIHRvIGJlIGNvbXBsZXRlZFxuICAgKiBAcmV0dXJucyB7VHJhbnNhY3Rpb25FeHBsYW5hdGlvbn1cbiAgICovXG4gIGV4cGxhaW5XaXRoZHJhd1N0YWtlZFN1aVRyYW5zYWN0aW9uKGpzb246IFR4RGF0YSwgZXhwbGFuYXRpb25SZXN1bHQ6IFRyYW5zYWN0aW9uRXhwbGFuYXRpb24pOiBUcmFuc2FjdGlvbkV4cGxhbmF0aW9uIHtcbiAgICBjb25zdCBvdXRwdXRzOiBUcmFuc2FjdGlvblJlY2lwaWVudFtdID0gW1xuICAgICAge1xuICAgICAgICBhZGRyZXNzOiB0aGlzLnN1aVRyYW5zYWN0aW9uLnNlbmRlcixcbiAgICAgICAgYW1vdW50OiBBTU9VTlRfVU5LTk9XTl9URVhULFxuICAgICAgfSxcbiAgICBdO1xuICAgIGNvbnN0IG91dHB1dEFtb3VudCA9IEFNT1VOVF9VTktOT1dOX1RFWFQ7XG5cbiAgICByZXR1cm4ge1xuICAgICAgLi4uZXhwbGFuYXRpb25SZXN1bHQsXG4gICAgICBvdXRwdXRBbW91bnQsXG4gICAgICBvdXRwdXRzLFxuICAgIH07XG4gIH1cbn1cbiJdfQ==
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bitgo/sdk-coin-sui",
3
- "version": "3.0.7",
3
+ "version": "3.1.0",
4
4
  "description": "BitGo SDK coin library for Sui",
5
5
  "main": "./dist/src/index.js",
6
6
  "types": "./dist/src/index.d.ts",
@@ -13,7 +13,7 @@
13
13
  "prepare": "npm run build",
14
14
  "test": "npm run coverage",
15
15
  "coverage": "nyc -- npm run unit-test",
16
- "unit-test": "mocha"
16
+ "unit-test": "mocha --spec 'test/unit/**/*.ts'"
17
17
  },
18
18
  "author": "BitGo SDK Team <sdkteam@bitgo.com>",
19
19
  "license": "MIT",
@@ -41,8 +41,8 @@
41
41
  },
42
42
  "dependencies": {
43
43
  "@bitgo/blake2b": "^3.2.1",
44
- "@bitgo/sdk-core": "^8.7.0",
45
- "@bitgo/statics": "^16.1.0",
44
+ "@bitgo/sdk-core": "^8.7.1",
45
+ "@bitgo/statics": "^16.2.0",
46
46
  "@mysten/bcs": "^0.7.0",
47
47
  "bignumber.js": "^9.0.0",
48
48
  "bs58": "^4.0.1",
@@ -51,9 +51,11 @@
51
51
  "tweetnacl": "^1.0.3"
52
52
  },
53
53
  "devDependencies": {
54
- "@bitgo/sdk-api": "^1.10.5",
55
- "@bitgo/sdk-test": "^1.2.23",
56
- "@types/lodash": "^4.14.183"
54
+ "@bitgo/sdk-api": "^1.10.6",
55
+ "@bitgo/sdk-test": "^1.2.24",
56
+ "@types/lodash": "^4.14.183",
57
+ "axios": "^1.4.0",
58
+ "debug": "^4.3.4"
57
59
  },
58
- "gitHead": "9efc360c50ab1809e58cb5b0024850f14d62943a"
60
+ "gitHead": "968f6e132c14bc69d20ec1991a4e316166ecdbdd"
59
61
  }