@bitgo-beta/sdk-coin-sui 1.4.1-alpha.31 → 1.4.1-alpha.310

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 (162) hide show
  1. package/.mocharc.yml +1 -2
  2. package/CHANGELOG.md +897 -0
  3. package/dist/src/index.d.ts +1 -0
  4. package/dist/src/index.d.ts.map +1 -1
  5. package/dist/src/index.js +7 -2
  6. package/dist/src/lib/compareTransactionBlocks.d.ts +8 -0
  7. package/dist/src/lib/compareTransactionBlocks.d.ts.map +1 -0
  8. package/dist/src/lib/compareTransactionBlocks.js +12 -0
  9. package/dist/src/lib/constants.d.ts +11 -3
  10. package/dist/src/lib/constants.d.ts.map +1 -1
  11. package/dist/src/lib/constants.js +20 -3
  12. package/dist/src/lib/customTransaction.d.ts +57 -0
  13. package/dist/src/lib/customTransaction.d.ts.map +1 -0
  14. package/dist/src/lib/customTransaction.js +159 -0
  15. package/dist/src/lib/customTransactionBuilder.d.ts +46 -0
  16. package/dist/src/lib/customTransactionBuilder.d.ts.map +1 -0
  17. package/dist/src/lib/customTransactionBuilder.js +117 -0
  18. package/dist/src/lib/iface.d.ts +86 -27
  19. package/dist/src/lib/iface.d.ts.map +1 -1
  20. package/dist/src/lib/iface.js +39 -10
  21. package/dist/src/lib/index.d.ts +10 -0
  22. package/dist/src/lib/index.d.ts.map +1 -1
  23. package/dist/src/lib/index.js +44 -10
  24. package/dist/src/lib/keyPair.d.ts.map +1 -1
  25. package/dist/src/lib/keyPair.js +25 -21
  26. package/dist/src/lib/mystenlab/builder/Inputs.d.ts +6 -6
  27. package/dist/src/lib/mystenlab/builder/Inputs.d.ts.map +1 -1
  28. package/dist/src/lib/mystenlab/builder/Inputs.js +19 -20
  29. package/dist/src/lib/mystenlab/builder/TransactionBlock.d.ts +302 -0
  30. package/dist/src/lib/mystenlab/builder/TransactionBlock.d.ts.map +1 -0
  31. package/dist/src/lib/mystenlab/builder/TransactionBlock.js +255 -0
  32. package/dist/src/lib/mystenlab/builder/{TransactionData.d.ts → TransactionDataBlock.d.ts} +62 -62
  33. package/dist/src/lib/mystenlab/builder/TransactionDataBlock.d.ts.map +1 -0
  34. package/dist/src/lib/mystenlab/builder/TransactionDataBlock.js +168 -0
  35. package/dist/src/lib/mystenlab/builder/{Commands.d.ts → Transactions.d.ts} +103 -158
  36. package/dist/src/lib/mystenlab/builder/Transactions.d.ts.map +1 -0
  37. package/dist/src/lib/mystenlab/builder/Transactions.js +118 -0
  38. package/dist/src/lib/mystenlab/builder/bcs.d.ts +6 -6
  39. package/dist/src/lib/mystenlab/builder/bcs.d.ts.map +1 -1
  40. package/dist/src/lib/mystenlab/builder/bcs.js +16 -16
  41. package/dist/src/lib/mystenlab/builder/index.d.ts +2 -2
  42. package/dist/src/lib/mystenlab/builder/index.d.ts.map +1 -1
  43. package/dist/src/lib/mystenlab/builder/index.js +8 -4
  44. package/dist/src/lib/mystenlab/builder/serializer.d.ts.map +1 -1
  45. package/dist/src/lib/mystenlab/builder/serializer.js +6 -11
  46. package/dist/src/lib/mystenlab/builder/utils.d.ts +2 -5
  47. package/dist/src/lib/mystenlab/builder/utils.d.ts.map +1 -1
  48. package/dist/src/lib/mystenlab/builder/utils.js +5 -5
  49. package/dist/src/lib/mystenlab/cryptography/hash.js +3 -4
  50. package/dist/src/lib/mystenlab/framework/framework.d.ts +8 -7
  51. package/dist/src/lib/mystenlab/framework/framework.d.ts.map +1 -1
  52. package/dist/src/lib/mystenlab/framework/framework.js +23 -27
  53. package/dist/src/lib/mystenlab/framework/index.d.ts.map +1 -1
  54. package/dist/src/lib/mystenlab/framework/index.js +6 -4
  55. package/dist/src/lib/mystenlab/framework/sui-system-state.d.ts +4 -23
  56. package/dist/src/lib/mystenlab/framework/sui-system-state.d.ts.map +1 -1
  57. package/dist/src/lib/mystenlab/framework/sui-system-state.js +11 -40
  58. package/dist/src/lib/mystenlab/txn-data-serializers/type-tag-serializer.d.ts.map +1 -0
  59. package/dist/src/lib/mystenlab/txn-data-serializers/type-tag-serializer.js +119 -0
  60. package/dist/src/lib/mystenlab/types/coin.d.ts +10 -10
  61. package/dist/src/lib/mystenlab/types/coin.d.ts.map +1 -1
  62. package/dist/src/lib/mystenlab/types/coin.js +19 -19
  63. package/dist/src/lib/mystenlab/types/common.d.ts +8 -8
  64. package/dist/src/lib/mystenlab/types/common.d.ts.map +1 -1
  65. package/dist/src/lib/mystenlab/types/common.js +22 -22
  66. package/dist/src/lib/mystenlab/types/events.d.ts +14 -14
  67. package/dist/src/lib/mystenlab/types/events.d.ts.map +1 -1
  68. package/dist/src/lib/mystenlab/types/events.js +17 -17
  69. package/dist/src/lib/mystenlab/types/index.d.ts.map +1 -1
  70. package/dist/src/lib/mystenlab/types/index.js +6 -5
  71. package/dist/src/lib/mystenlab/types/normalized.d.ts +21 -21
  72. package/dist/src/lib/mystenlab/types/normalized.d.ts.map +1 -1
  73. package/dist/src/lib/mystenlab/types/normalized.js +42 -43
  74. package/dist/src/lib/mystenlab/types/objects.d.ts +95 -78
  75. package/dist/src/lib/mystenlab/types/objects.d.ts.map +1 -1
  76. package/dist/src/lib/mystenlab/types/objects.js +98 -104
  77. package/dist/src/lib/mystenlab/types/option.d.ts +1 -1
  78. package/dist/src/lib/mystenlab/types/option.d.ts.map +1 -1
  79. package/dist/src/lib/mystenlab/types/option.js +2 -3
  80. package/dist/src/lib/mystenlab/types/sui-bcs.d.ts +10 -9
  81. package/dist/src/lib/mystenlab/types/sui-bcs.d.ts.map +1 -1
  82. package/dist/src/lib/mystenlab/types/sui-bcs.js +4 -4
  83. package/dist/src/lib/mystenlab/types/transactions.d.ts +3262 -1046
  84. package/dist/src/lib/mystenlab/types/transactions.d.ts.map +1 -1
  85. package/dist/src/lib/mystenlab/types/transactions.js +209 -187
  86. package/dist/src/lib/mystenlab/types/validator.d.ts +641 -0
  87. package/dist/src/lib/mystenlab/types/validator.d.ts.map +1 -0
  88. package/dist/src/lib/mystenlab/types/validator.js +156 -0
  89. package/dist/src/lib/resources/walrusConfig.d.ts +22 -0
  90. package/dist/src/lib/resources/walrusConfig.d.ts.map +1 -0
  91. package/dist/src/lib/resources/walrusConfig.js +37 -0
  92. package/dist/src/lib/rpcClient.d.ts +5 -0
  93. package/dist/src/lib/rpcClient.d.ts.map +1 -0
  94. package/dist/src/lib/rpcClient.js +74 -0
  95. package/dist/src/lib/stakingBuilder.d.ts +15 -15
  96. package/dist/src/lib/stakingBuilder.d.ts.map +1 -1
  97. package/dist/src/lib/stakingBuilder.js +113 -44
  98. package/dist/src/lib/stakingTransaction.d.ts +2 -10
  99. package/dist/src/lib/stakingTransaction.d.ts.map +1 -1
  100. package/dist/src/lib/stakingTransaction.js +97 -35
  101. package/dist/src/lib/tokenTransferBuilder.d.ts +38 -0
  102. package/dist/src/lib/tokenTransferBuilder.d.ts.map +1 -0
  103. package/dist/src/lib/tokenTransferBuilder.js +132 -0
  104. package/dist/src/lib/tokenTransferTransaction.d.ts +57 -0
  105. package/dist/src/lib/tokenTransferTransaction.d.ts.map +1 -0
  106. package/dist/src/lib/tokenTransferTransaction.js +250 -0
  107. package/dist/src/lib/transaction.d.ts +16 -6
  108. package/dist/src/lib/transaction.d.ts.map +1 -1
  109. package/dist/src/lib/transaction.js +126 -26
  110. package/dist/src/lib/transactionBuilder.d.ts +2 -3
  111. package/dist/src/lib/transactionBuilder.d.ts.map +1 -1
  112. package/dist/src/lib/transactionBuilder.js +4 -4
  113. package/dist/src/lib/transactionBuilderFactory.d.ts +17 -2
  114. package/dist/src/lib/transactionBuilderFactory.d.ts.map +1 -1
  115. package/dist/src/lib/transactionBuilderFactory.js +52 -2
  116. package/dist/src/lib/transferBuilder.d.ts +3 -1
  117. package/dist/src/lib/transferBuilder.d.ts.map +1 -1
  118. package/dist/src/lib/transferBuilder.js +34 -11
  119. package/dist/src/lib/transferTransaction.d.ts +1 -1
  120. package/dist/src/lib/transferTransaction.d.ts.map +1 -1
  121. package/dist/src/lib/transferTransaction.js +33 -18
  122. package/dist/src/lib/unstakingBuilder.d.ts +62 -0
  123. package/dist/src/lib/unstakingBuilder.d.ts.map +1 -0
  124. package/dist/src/lib/unstakingBuilder.js +227 -0
  125. package/dist/src/lib/unstakingTransaction.d.ts +75 -0
  126. package/dist/src/lib/unstakingTransaction.d.ts.map +1 -0
  127. package/dist/src/lib/unstakingTransaction.js +345 -0
  128. package/dist/src/lib/utils.d.ts +51 -7
  129. package/dist/src/lib/utils.d.ts.map +1 -1
  130. package/dist/src/lib/utils.js +362 -27
  131. package/dist/src/lib/walrusStakingBuilder.d.ts +66 -0
  132. package/dist/src/lib/walrusStakingBuilder.d.ts.map +1 -0
  133. package/dist/src/lib/walrusStakingBuilder.js +200 -0
  134. package/dist/src/lib/walrusStakingTransaction.d.ts +52 -0
  135. package/dist/src/lib/walrusStakingTransaction.d.ts.map +1 -0
  136. package/dist/src/lib/walrusStakingTransaction.js +269 -0
  137. package/dist/src/lib/walrusWithdrawStakeBuilder.d.ts +36 -0
  138. package/dist/src/lib/walrusWithdrawStakeBuilder.d.ts.map +1 -0
  139. package/dist/src/lib/walrusWithdrawStakeBuilder.js +173 -0
  140. package/dist/src/lib/walrusWithdrawStakeTransaction.d.ts +21 -0
  141. package/dist/src/lib/walrusWithdrawStakeTransaction.d.ts.map +1 -0
  142. package/dist/src/lib/walrusWithdrawStakeTransaction.js +186 -0
  143. package/dist/src/register.d.ts.map +1 -1
  144. package/dist/src/register.js +5 -1
  145. package/dist/src/sui.d.ts +44 -8
  146. package/dist/src/sui.d.ts.map +1 -1
  147. package/dist/src/sui.js +484 -42
  148. package/dist/src/suiToken.d.ts +22 -0
  149. package/dist/src/suiToken.d.ts.map +1 -0
  150. package/dist/src/suiToken.js +61 -0
  151. package/dist/src/tsui.js +1 -1
  152. package/package.json +15 -12
  153. package/dist/src/lib/mystenlab/builder/Commands.d.ts.map +0 -1
  154. package/dist/src/lib/mystenlab/builder/Commands.js +0 -119
  155. package/dist/src/lib/mystenlab/builder/Transaction.d.ts +0 -609
  156. package/dist/src/lib/mystenlab/builder/Transaction.d.ts.map +0 -1
  157. package/dist/src/lib/mystenlab/builder/Transaction.js +0 -254
  158. package/dist/src/lib/mystenlab/builder/TransactionData.d.ts.map +0 -1
  159. package/dist/src/lib/mystenlab/builder/TransactionData.js +0 -171
  160. package/dist/src/lib/mystenlab/builder/type-tag-serializer.d.ts.map +0 -1
  161. package/dist/src/lib/mystenlab/builder/type-tag-serializer.js +0 -119
  162. /package/dist/src/lib/mystenlab/{builder → txn-data-serializers}/type-tag-serializer.d.ts +0 -0
@@ -0,0 +1,22 @@
1
+ import { SuiTokenConfig } from '@bitgo-beta/statics';
2
+ import { Sui } from './sui';
3
+ import { BitGoBase, CoinConstructor, NamedCoinConstructor } from '@bitgo-beta/sdk-core';
4
+ export declare class SuiToken extends Sui {
5
+ readonly tokenConfig: SuiTokenConfig;
6
+ constructor(bitgo: BitGoBase, tokenConfig: SuiTokenConfig);
7
+ static createTokenConstructor(config: SuiTokenConfig): CoinConstructor;
8
+ static createTokenConstructors(tokenConfigs?: SuiTokenConfig[]): NamedCoinConstructor[];
9
+ get name(): string;
10
+ get coin(): string;
11
+ get network(): string;
12
+ get packageId(): string;
13
+ get module(): string;
14
+ get symbol(): string;
15
+ get decimalPlaces(): number;
16
+ get contractAddress(): string;
17
+ getChain(): string;
18
+ getBaseChain(): string;
19
+ getFullName(): string;
20
+ getBaseFactor(): number;
21
+ }
22
+ //# sourceMappingURL=suiToken.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"suiToken.d.ts","sourceRoot":"","sources":["../../src/suiToken.ts"],"names":[],"mappings":"AAAA,OAAO,EAAS,cAAc,EAAU,MAAM,qBAAqB,CAAC;AACpE,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAExF,qBAAa,QAAS,SAAQ,GAAG;IAC/B,SAAgB,WAAW,EAAE,cAAc,CAAC;gBAEhC,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,cAAc;IAMzD,MAAM,CAAC,sBAAsB,CAAC,MAAM,EAAE,cAAc,GAAG,eAAe;IAItE,MAAM,CAAC,uBAAuB,CAC5B,YAAY,GAAE,cAAc,EAAiE,GAC5F,oBAAoB,EAAE;IASzB,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,IAAI,OAAO,IAAI,MAAM,CAEpB;IAED,IAAI,SAAS,IAAI,MAAM,CAEtB;IAED,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED,IAAI,MAAM,IAAI,MAAM,CAEnB;IAED,IAAI,aAAa,IAAI,MAAM,CAE1B;IAED,IAAI,eAAe,IAAI,MAAM,CAE5B;IAED,QAAQ,IAAI,MAAM;IAIlB,YAAY,IAAI,MAAM;IAItB,WAAW,IAAI,MAAM;IAIrB,aAAa,IAAI,MAAM;CAGxB"}
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SuiToken = void 0;
4
+ const statics_1 = require("@bitgo-beta/statics");
5
+ const sui_1 = require("./sui");
6
+ class SuiToken extends sui_1.Sui {
7
+ constructor(bitgo, tokenConfig) {
8
+ const staticsCoin = tokenConfig.network === 'Mainnet' ? statics_1.coins.get('sui') : statics_1.coins.get('tsui');
9
+ super(bitgo, staticsCoin);
10
+ this.tokenConfig = tokenConfig;
11
+ }
12
+ static createTokenConstructor(config) {
13
+ return (bitgo) => new SuiToken(bitgo, config);
14
+ }
15
+ static createTokenConstructors(tokenConfigs = [...statics_1.tokens.bitcoin.sui.tokens, ...statics_1.tokens.testnet.sui.tokens]) {
16
+ const tokensCtors = [];
17
+ for (const token of tokenConfigs) {
18
+ const tokenConstructor = SuiToken.createTokenConstructor(token);
19
+ tokensCtors.push({ name: token.type, coinConstructor: tokenConstructor });
20
+ }
21
+ return tokensCtors;
22
+ }
23
+ get name() {
24
+ return this.tokenConfig.name;
25
+ }
26
+ get coin() {
27
+ return this.tokenConfig.coin;
28
+ }
29
+ get network() {
30
+ return this.tokenConfig.network;
31
+ }
32
+ get packageId() {
33
+ return this.tokenConfig.packageId;
34
+ }
35
+ get module() {
36
+ return this.tokenConfig.module;
37
+ }
38
+ get symbol() {
39
+ return this.tokenConfig.symbol;
40
+ }
41
+ get decimalPlaces() {
42
+ return this.tokenConfig.decimalPlaces;
43
+ }
44
+ get contractAddress() {
45
+ return this.tokenConfig.contractAddress;
46
+ }
47
+ getChain() {
48
+ return this.tokenConfig.type;
49
+ }
50
+ getBaseChain() {
51
+ return this.coin;
52
+ }
53
+ getFullName() {
54
+ return 'Sui Token';
55
+ }
56
+ getBaseFactor() {
57
+ return Math.pow(10, this.tokenConfig.decimalPlaces);
58
+ }
59
+ }
60
+ exports.SuiToken = SuiToken;
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3VpVG9rZW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc3VpVG9rZW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsaURBQW9FO0FBQ3BFLCtCQUE0QjtBQUc1QixNQUFhLFFBQVMsU0FBUSxTQUFHO0lBRy9CLFlBQVksS0FBZ0IsRUFBRSxXQUEyQjtRQUN2RCxNQUFNLFdBQVcsR0FBRyxXQUFXLENBQUMsT0FBTyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsZUFBSyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUMsZUFBSyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM3RixLQUFLLENBQUMsS0FBSyxFQUFFLFdBQVcsQ0FBQyxDQUFDO1FBQzFCLElBQUksQ0FBQyxXQUFXLEdBQUcsV0FBVyxDQUFDO0lBQ2pDLENBQUM7SUFFRCxNQUFNLENBQUMsc0JBQXNCLENBQUMsTUFBc0I7UUFDbEQsT0FBTyxDQUFDLEtBQWdCLEVBQUUsRUFBRSxDQUFDLElBQUksUUFBUSxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBRUQsTUFBTSxDQUFDLHVCQUF1QixDQUM1QixlQUFpQyxDQUFDLEdBQUcsZ0JBQU0sQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sRUFBRSxHQUFHLGdCQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNLENBQUM7UUFFN0YsTUFBTSxXQUFXLEdBQTJCLEVBQUUsQ0FBQztRQUMvQyxLQUFLLE1BQU0sS0FBSyxJQUFJLFlBQVksRUFBRSxDQUFDO1lBQ2pDLE1BQU0sZ0JBQWdCLEdBQUcsUUFBUSxDQUFDLHNCQUFzQixDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ2hFLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLEVBQUUsS0FBSyxDQUFDLElBQUksRUFBRSxlQUFlLEVBQUUsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDO1FBQzVFLENBQUM7UUFDRCxPQUFPLFdBQVcsQ0FBQztJQUNyQixDQUFDO0lBRUQsSUFBSSxJQUFJO1FBQ04sT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQztJQUMvQixDQUFDO0lBRUQsSUFBSSxJQUFJO1FBQ04sT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQztJQUMvQixDQUFDO0lBRUQsSUFBSSxPQUFPO1FBQ1QsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQztJQUNsQyxDQUFDO0lBRUQsSUFBSSxTQUFTO1FBQ1gsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQztJQUNwQyxDQUFDO0lBRUQsSUFBSSxNQUFNO1FBQ1IsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQztJQUNqQyxDQUFDO0lBRUQsSUFBSSxNQUFNO1FBQ1IsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQztJQUNqQyxDQUFDO0lBRUQsSUFBSSxhQUFhO1FBQ2YsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQztJQUN4QyxDQUFDO0lBRUQsSUFBSSxlQUFlO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxlQUFlLENBQUM7SUFDMUMsQ0FBQztJQUVELFFBQVE7UUFDTixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDO0lBQy9CLENBQUM7SUFFRCxZQUFZO1FBQ1YsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDO0lBQ25CLENBQUM7SUFFRCxXQUFXO1FBQ1QsT0FBTyxXQUFXLENBQUM7SUFDckIsQ0FBQztJQUVELGFBQWE7UUFDWCxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxXQUFXLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDdEQsQ0FBQztDQUNGO0FBdkVELDRCQXVFQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNvaW5zLCBTdWlUb2tlbkNvbmZpZywgdG9rZW5zIH0gZnJvbSAnQGJpdGdvLWJldGEvc3RhdGljcyc7XG5pbXBvcnQgeyBTdWkgfSBmcm9tICcuL3N1aSc7XG5pbXBvcnQgeyBCaXRHb0Jhc2UsIENvaW5Db25zdHJ1Y3RvciwgTmFtZWRDb2luQ29uc3RydWN0b3IgfSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5cbmV4cG9ydCBjbGFzcyBTdWlUb2tlbiBleHRlbmRzIFN1aSB7XG4gIHB1YmxpYyByZWFkb25seSB0b2tlbkNvbmZpZzogU3VpVG9rZW5Db25maWc7XG5cbiAgY29uc3RydWN0b3IoYml0Z286IEJpdEdvQmFzZSwgdG9rZW5Db25maWc6IFN1aVRva2VuQ29uZmlnKSB7XG4gICAgY29uc3Qgc3RhdGljc0NvaW4gPSB0b2tlbkNvbmZpZy5uZXR3b3JrID09PSAnTWFpbm5ldCcgPyBjb2lucy5nZXQoJ3N1aScpIDogY29pbnMuZ2V0KCd0c3VpJyk7XG4gICAgc3VwZXIoYml0Z28sIHN0YXRpY3NDb2luKTtcbiAgICB0aGlzLnRva2VuQ29uZmlnID0gdG9rZW5Db25maWc7XG4gIH1cblxuICBzdGF0aWMgY3JlYXRlVG9rZW5Db25zdHJ1Y3Rvcihjb25maWc6IFN1aVRva2VuQ29uZmlnKTogQ29pbkNvbnN0cnVjdG9yIHtcbiAgICByZXR1cm4gKGJpdGdvOiBCaXRHb0Jhc2UpID0+IG5ldyBTdWlUb2tlbihiaXRnbywgY29uZmlnKTtcbiAgfVxuXG4gIHN0YXRpYyBjcmVhdGVUb2tlbkNvbnN0cnVjdG9ycyhcbiAgICB0b2tlbkNvbmZpZ3M6IFN1aVRva2VuQ29uZmlnW10gPSBbLi4udG9rZW5zLmJpdGNvaW4uc3VpLnRva2VucywgLi4udG9rZW5zLnRlc3RuZXQuc3VpLnRva2Vuc11cbiAgKTogTmFtZWRDb2luQ29uc3RydWN0b3JbXSB7XG4gICAgY29uc3QgdG9rZW5zQ3RvcnM6IE5hbWVkQ29pbkNvbnN0cnVjdG9yW10gPSBbXTtcbiAgICBmb3IgKGNvbnN0IHRva2VuIG9mIHRva2VuQ29uZmlncykge1xuICAgICAgY29uc3QgdG9rZW5Db25zdHJ1Y3RvciA9IFN1aVRva2VuLmNyZWF0ZVRva2VuQ29uc3RydWN0b3IodG9rZW4pO1xuICAgICAgdG9rZW5zQ3RvcnMucHVzaCh7IG5hbWU6IHRva2VuLnR5cGUsIGNvaW5Db25zdHJ1Y3RvcjogdG9rZW5Db25zdHJ1Y3RvciB9KTtcbiAgICB9XG4gICAgcmV0dXJuIHRva2Vuc0N0b3JzO1xuICB9XG5cbiAgZ2V0IG5hbWUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy50b2tlbkNvbmZpZy5uYW1lO1xuICB9XG5cbiAgZ2V0IGNvaW4oKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy50b2tlbkNvbmZpZy5jb2luO1xuICB9XG5cbiAgZ2V0IG5ldHdvcmsoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy50b2tlbkNvbmZpZy5uZXR3b3JrO1xuICB9XG5cbiAgZ2V0IHBhY2thZ2VJZCgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnRva2VuQ29uZmlnLnBhY2thZ2VJZDtcbiAgfVxuXG4gIGdldCBtb2R1bGUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy50b2tlbkNvbmZpZy5tb2R1bGU7XG4gIH1cblxuICBnZXQgc3ltYm9sKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMudG9rZW5Db25maWcuc3ltYm9sO1xuICB9XG5cbiAgZ2V0IGRlY2ltYWxQbGFjZXMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy50b2tlbkNvbmZpZy5kZWNpbWFsUGxhY2VzO1xuICB9XG5cbiAgZ2V0IGNvbnRyYWN0QWRkcmVzcygpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLnRva2VuQ29uZmlnLmNvbnRyYWN0QWRkcmVzcztcbiAgfVxuXG4gIGdldENoYWluKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMudG9rZW5Db25maWcudHlwZTtcbiAgfVxuXG4gIGdldEJhc2VDaGFpbigpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmNvaW47XG4gIH1cblxuICBnZXRGdWxsTmFtZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiAnU3VpIFRva2VuJztcbiAgfVxuXG4gIGdldEJhc2VGYWN0b3IoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gTWF0aC5wb3coMTAsIHRoaXMudG9rZW5Db25maWcuZGVjaW1hbFBsYWNlcyk7XG4gIH1cbn1cbiJdfQ==
package/dist/src/tsui.js CHANGED
@@ -27,4 +27,4 @@ class Tsui extends sui_1.Sui {
27
27
  }
28
28
  }
29
29
  exports.Tsui = Tsui;
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHN1aS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90c3VpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQU1BLCtCQUE0QjtBQUc1QixNQUFhLElBQUssU0FBUSxTQUFHO0lBRTNCLFlBQXNCLEtBQWdCLEVBQUUsV0FBdUM7UUFDN0UsS0FBSyxDQUFDLEtBQUssRUFBRSxXQUFXLENBQUMsQ0FBQztRQUUxQixJQUFJLENBQUMsV0FBVyxFQUFFO1lBQ2hCLE1BQU0sSUFBSSxLQUFLLENBQUMsb0RBQW9ELENBQUMsQ0FBQztTQUN2RTtRQUVELElBQUksQ0FBQyxZQUFZLEdBQUcsV0FBVyxDQUFDO0lBQ2xDLENBQUM7SUFFRCxNQUFNLENBQUMsY0FBYyxDQUFDLEtBQWdCLEVBQUUsV0FBdUM7UUFDN0UsT0FBTyxJQUFJLElBQUksQ0FBQyxLQUFLLEVBQUUsV0FBVyxDQUFDLENBQUM7SUFDdEMsQ0FBQztJQUVEOztPQUVHO0lBQ0ksUUFBUTtRQUNiLE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFRDs7T0FFRztJQUNJLFdBQVc7UUFDaEIsT0FBTyxhQUFhLENBQUM7SUFDdkIsQ0FBQztDQUNGO0FBN0JELG9CQTZCQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogVGVzdG5ldCBTdWlcbiAqXG4gKiBAZm9ybWF0XG4gKi9cbmltcG9ydCB7IEJhc2VDb2luLCBCaXRHb0Jhc2UgfSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5pbXBvcnQgeyBTdWkgfSBmcm9tICcuL3N1aSc7XG5pbXBvcnQgeyBCYXNlQ29pbiBhcyBTdGF0aWNzQmFzZUNvaW4gfSBmcm9tICdAYml0Z28tYmV0YS9zdGF0aWNzJztcblxuZXhwb3J0IGNsYXNzIFRzdWkgZXh0ZW5kcyBTdWkge1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgX3N0YXRpY3NDb2luOiBSZWFkb25seTxTdGF0aWNzQmFzZUNvaW4+O1xuICBwcm90ZWN0ZWQgY29uc3RydWN0b3IoYml0Z286IEJpdEdvQmFzZSwgc3RhdGljc0NvaW4/OiBSZWFkb25seTxTdGF0aWNzQmFzZUNvaW4+KSB7XG4gICAgc3VwZXIoYml0Z28sIHN0YXRpY3NDb2luKTtcblxuICAgIGlmICghc3RhdGljc0NvaW4pIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignbWlzc2luZyByZXF1aXJlZCBjb25zdHJ1Y3RvciBwYXJhbWV0ZXIgc3RhdGljc0NvaW4nKTtcbiAgICB9XG5cbiAgICB0aGlzLl9zdGF0aWNzQ29pbiA9IHN0YXRpY3NDb2luO1xuICB9XG5cbiAgc3RhdGljIGNyZWF0ZUluc3RhbmNlKGJpdGdvOiBCaXRHb0Jhc2UsIHN0YXRpY3NDb2luPzogUmVhZG9ubHk8U3RhdGljc0Jhc2VDb2luPik6IEJhc2VDb2luIHtcbiAgICByZXR1cm4gbmV3IFRzdWkoYml0Z28sIHN0YXRpY3NDb2luKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBJZGVudGlmaWVyIGZvciB0aGUgYmxvY2tjaGFpbiB3aGljaCBzdXBwb3J0cyB0aGlzIGNvaW5cbiAgICovXG4gIHB1YmxpYyBnZXRDaGFpbigpOiBzdHJpbmcge1xuICAgIHJldHVybiAndHN1aSc7XG4gIH1cblxuICAvKipcbiAgICogQ29tcGxldGUgaHVtYW4tcmVhZGFibGUgbmFtZSBvZiB0aGlzIGNvaW5cbiAgICovXG4gIHB1YmxpYyBnZXRGdWxsTmFtZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiAnVGVzdG5ldCBTdWknO1xuICB9XG59XG4iXX0=
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHN1aS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy90c3VpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQU1BLCtCQUE0QjtBQUc1QixNQUFhLElBQUssU0FBUSxTQUFHO0lBRTNCLFlBQXNCLEtBQWdCLEVBQUUsV0FBdUM7UUFDN0UsS0FBSyxDQUFDLEtBQUssRUFBRSxXQUFXLENBQUMsQ0FBQztRQUUxQixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDakIsTUFBTSxJQUFJLEtBQUssQ0FBQyxvREFBb0QsQ0FBQyxDQUFDO1FBQ3hFLENBQUM7UUFFRCxJQUFJLENBQUMsWUFBWSxHQUFHLFdBQVcsQ0FBQztJQUNsQyxDQUFDO0lBRUQsTUFBTSxDQUFDLGNBQWMsQ0FBQyxLQUFnQixFQUFFLFdBQXVDO1FBQzdFLE9BQU8sSUFBSSxJQUFJLENBQUMsS0FBSyxFQUFFLFdBQVcsQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFRDs7T0FFRztJQUNJLFFBQVE7UUFDYixPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRUQ7O09BRUc7SUFDSSxXQUFXO1FBQ2hCLE9BQU8sYUFBYSxDQUFDO0lBQ3ZCLENBQUM7Q0FDRjtBQTdCRCxvQkE2QkMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFRlc3RuZXQgU3VpXG4gKlxuICogQGZvcm1hdFxuICovXG5pbXBvcnQgeyBCYXNlQ29pbiwgQml0R29CYXNlIH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuaW1wb3J0IHsgU3VpIH0gZnJvbSAnLi9zdWknO1xuaW1wb3J0IHsgQmFzZUNvaW4gYXMgU3RhdGljc0Jhc2VDb2luIH0gZnJvbSAnQGJpdGdvLWJldGEvc3RhdGljcyc7XG5cbmV4cG9ydCBjbGFzcyBUc3VpIGV4dGVuZHMgU3VpIHtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IF9zdGF0aWNzQ29pbjogUmVhZG9ubHk8U3RhdGljc0Jhc2VDb2luPjtcbiAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKGJpdGdvOiBCaXRHb0Jhc2UsIHN0YXRpY3NDb2luPzogUmVhZG9ubHk8U3RhdGljc0Jhc2VDb2luPikge1xuICAgIHN1cGVyKGJpdGdvLCBzdGF0aWNzQ29pbik7XG5cbiAgICBpZiAoIXN0YXRpY3NDb2luKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ21pc3NpbmcgcmVxdWlyZWQgY29uc3RydWN0b3IgcGFyYW1ldGVyIHN0YXRpY3NDb2luJyk7XG4gICAgfVxuXG4gICAgdGhpcy5fc3RhdGljc0NvaW4gPSBzdGF0aWNzQ29pbjtcbiAgfVxuXG4gIHN0YXRpYyBjcmVhdGVJbnN0YW5jZShiaXRnbzogQml0R29CYXNlLCBzdGF0aWNzQ29pbj86IFJlYWRvbmx5PFN0YXRpY3NCYXNlQ29pbj4pOiBCYXNlQ29pbiB7XG4gICAgcmV0dXJuIG5ldyBUc3VpKGJpdGdvLCBzdGF0aWNzQ29pbik7XG4gIH1cblxuICAvKipcbiAgICogSWRlbnRpZmllciBmb3IgdGhlIGJsb2NrY2hhaW4gd2hpY2ggc3VwcG9ydHMgdGhpcyBjb2luXG4gICAqL1xuICBwdWJsaWMgZ2V0Q2hhaW4oKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJ3RzdWknO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbXBsZXRlIGh1bWFuLXJlYWRhYmxlIG5hbWUgb2YgdGhpcyBjb2luXG4gICAqL1xuICBwdWJsaWMgZ2V0RnVsbE5hbWUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJ1Rlc3RuZXQgU3VpJztcbiAgfVxufVxuIl19
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bitgo-beta/sdk-coin-sui",
3
- "version": "1.4.1-alpha.31",
3
+ "version": "1.4.1-alpha.310",
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,12 +13,12 @@
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",
20
20
  "engines": {
21
- "node": ">=14 <17"
21
+ "node": ">=18 <21"
22
22
  },
23
23
  "repository": {
24
24
  "type": "git",
@@ -40,21 +40,24 @@
40
40
  ]
41
41
  },
42
42
  "dependencies": {
43
- "@bitgo-beta/blake2b": "3.2.1-alpha.31",
44
- "@bitgo-beta/sdk-core": "2.4.1-alpha.31",
45
- "@bitgo-beta/statics": "10.0.1-alpha.31",
46
- "@mysten/bcs": "^0.0.0-experimental-20230322224140",
43
+ "@bitgo-beta/blake2b": "3.2.1-alpha.314",
44
+ "@bitgo-beta/sdk-core": "2.4.1-alpha.313",
45
+ "@bitgo-beta/sdk-lib-mpc": "8.2.1-alpha.269",
46
+ "@bitgo-beta/statics": "10.0.1-alpha.313",
47
+ "@mysten/bcs": "^0.7.0",
47
48
  "bignumber.js": "^9.0.0",
48
49
  "bs58": "^4.0.1",
49
- "js-sha3": "^0.8.0",
50
50
  "lodash": "^4.17.21",
51
+ "superagent": "3.8.2",
51
52
  "superstruct": "^1.0.3",
52
53
  "tweetnacl": "^1.0.3"
53
54
  },
54
55
  "devDependencies": {
55
- "@bitgo-beta/sdk-api": "1.6.1-alpha.31",
56
- "@bitgo-beta/sdk-test": "^1.2.15",
57
- "@types/lodash": "^4.14.183"
56
+ "@bitgo-beta/sdk-api": "1.6.1-alpha.313",
57
+ "@bitgo-beta/sdk-test": "^8.0.83",
58
+ "@types/lodash": "^4.14.183",
59
+ "axios": "^1.4.0",
60
+ "debug": "^4.3.4"
58
61
  },
59
- "gitHead": "eb8ffbe9497bf507509df2d677d2b7fc1319800c"
62
+ "gitHead": "bb9a168c0ecc47ff3a88c7e09b0ef3102158b151"
60
63
  }
@@ -1 +0,0 @@
1
- {"version":3,"file":"Commands.d.ts","sourceRoot":"","sources":["../../../../../src/lib/mystenlab/builder/Commands.ts"],"names":[],"mappings":"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"}
@@ -1,119 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Commands = exports.getTransactionCommandType = exports.TransactionCommand = exports.PublishCommand = exports.MakeMoveVecCommand = exports.MergeCoinsCommand = exports.SplitCoinsCommand = exports.TransferObjectsCommand = exports.MoveCallCommand = exports.PureCommandArgument = exports.ObjectCommandArgument = exports.CommandArgument = exports.TransactionInput = void 0;
4
- const bcs_1 = require("@mysten/bcs");
5
- const superstruct_1 = require("superstruct");
6
- const common_1 = require("../types/common");
7
- const utils_1 = require("./utils");
8
- const option = (some) => superstruct_1.union([superstruct_1.object({ None: superstruct_1.literal(null) }), superstruct_1.object({ Some: some })]);
9
- exports.TransactionInput = superstruct_1.object({
10
- kind: superstruct_1.literal('Input'),
11
- index: superstruct_1.integer(),
12
- value: superstruct_1.optional(superstruct_1.any()),
13
- type: superstruct_1.optional(superstruct_1.union([superstruct_1.literal('pure'), superstruct_1.literal('object')])),
14
- });
15
- const CommandArgumentTypes = [
16
- exports.TransactionInput,
17
- superstruct_1.object({ kind: superstruct_1.literal('GasCoin') }),
18
- superstruct_1.object({ kind: superstruct_1.literal('Result'), index: superstruct_1.integer() }),
19
- superstruct_1.object({
20
- kind: superstruct_1.literal('NestedResult'),
21
- index: superstruct_1.integer(),
22
- resultIndex: superstruct_1.integer(),
23
- }),
24
- ];
25
- // Generic command argument
26
- exports.CommandArgument = superstruct_1.union([...CommandArgumentTypes]);
27
- // Command argument referring to an object:
28
- exports.ObjectCommandArgument = superstruct_1.union([...CommandArgumentTypes]);
29
- exports.ObjectCommandArgument[utils_1.COMMAND_TYPE] = {
30
- kind: 'object',
31
- };
32
- const PureCommandArgument = (type) => {
33
- const struct = superstruct_1.union([...CommandArgumentTypes]);
34
- struct[utils_1.COMMAND_TYPE] = {
35
- kind: 'pure',
36
- type,
37
- };
38
- return struct;
39
- };
40
- exports.PureCommandArgument = PureCommandArgument;
41
- exports.MoveCallCommand = superstruct_1.object({
42
- kind: superstruct_1.literal('MoveCall'),
43
- target: superstruct_1.define('target', superstruct_1.string().validator),
44
- typeArguments: superstruct_1.array(superstruct_1.string()),
45
- arguments: superstruct_1.array(exports.CommandArgument),
46
- });
47
- exports.TransferObjectsCommand = superstruct_1.object({
48
- kind: superstruct_1.literal('TransferObjects'),
49
- objects: superstruct_1.array(exports.ObjectCommandArgument),
50
- address: exports.PureCommandArgument(bcs_1.BCS.ADDRESS),
51
- });
52
- exports.SplitCoinsCommand = superstruct_1.object({
53
- kind: superstruct_1.literal('SplitCoins'),
54
- coin: exports.ObjectCommandArgument,
55
- amounts: superstruct_1.array(exports.PureCommandArgument('u64')),
56
- });
57
- exports.MergeCoinsCommand = superstruct_1.object({
58
- kind: superstruct_1.literal('MergeCoins'),
59
- destination: exports.ObjectCommandArgument,
60
- sources: superstruct_1.array(exports.ObjectCommandArgument),
61
- });
62
- exports.MakeMoveVecCommand = superstruct_1.object({
63
- kind: superstruct_1.literal('MakeMoveVec'),
64
- type: superstruct_1.optional(option(superstruct_1.string())),
65
- objects: superstruct_1.array(exports.ObjectCommandArgument),
66
- });
67
- exports.PublishCommand = superstruct_1.object({
68
- kind: superstruct_1.literal('Publish'),
69
- modules: superstruct_1.array(superstruct_1.array(superstruct_1.integer())),
70
- dependencies: superstruct_1.array(common_1.ObjectId),
71
- });
72
- const TransactionCommandTypes = [
73
- exports.MoveCallCommand,
74
- exports.TransferObjectsCommand,
75
- exports.SplitCoinsCommand,
76
- exports.MergeCoinsCommand,
77
- exports.PublishCommand,
78
- exports.MakeMoveVecCommand,
79
- ];
80
- exports.TransactionCommand = superstruct_1.union([...TransactionCommandTypes]);
81
- function getTransactionCommandType(data) {
82
- superstruct_1.assert(data, exports.TransactionCommand);
83
- return TransactionCommandTypes.find((schema) => superstruct_1.is(data, schema));
84
- }
85
- exports.getTransactionCommandType = getTransactionCommandType;
86
- /**
87
- * Simple helpers used to construct commands:
88
- */
89
- exports.Commands = {
90
- MoveCall(input) {
91
- var _a, _b;
92
- return utils_1.create({
93
- kind: 'MoveCall',
94
- target: input.target,
95
- arguments: (_a = input.arguments) !== null && _a !== void 0 ? _a : [],
96
- typeArguments: (_b = input.typeArguments) !== null && _b !== void 0 ? _b : [],
97
- }, exports.MoveCallCommand);
98
- },
99
- TransferObjects(objects, address) {
100
- return utils_1.create({ kind: 'TransferObjects', objects, address }, exports.TransferObjectsCommand);
101
- },
102
- SplitCoins(coin, amounts) {
103
- return utils_1.create({ kind: 'SplitCoins', coin, amounts }, exports.SplitCoinsCommand);
104
- },
105
- MergeCoins(destination, sources) {
106
- return utils_1.create({ kind: 'MergeCoins', destination, sources }, exports.MergeCoinsCommand);
107
- },
108
- Publish(modules, dependencies) {
109
- return utils_1.create({ kind: 'Publish', modules, dependencies }, exports.PublishCommand);
110
- },
111
- MakeMoveVec({ type, objects, }) {
112
- return utils_1.create({
113
- kind: 'MakeMoveVec',
114
- type: type ? { Some: type } : { None: null },
115
- objects,
116
- }, exports.MakeMoveVecCommand);
117
- },
118
- };
119
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29tbWFuZHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL215c3RlbmxhYi9idWlsZGVyL0NvbW1hbmRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLHFDQUFrQztBQUNsQyw2Q0FjcUI7QUFDckIsNENBQTJDO0FBQzNDLG1DQUFrRTtBQUVsRSxNQUFNLE1BQU0sR0FBRyxDQUE2QixJQUFPLEVBQUUsRUFBRSxDQUNyRCxtQkFBSyxDQUFDLENBQUMsb0JBQU0sQ0FBQyxFQUFFLElBQUksRUFBRSxxQkFBTyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsRUFBRSxvQkFBTSxDQUFDLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBRXRELFFBQUEsZ0JBQWdCLEdBQUcsb0JBQU0sQ0FBQztJQUNyQyxJQUFJLEVBQUUscUJBQU8sQ0FBQyxPQUFPLENBQUM7SUFDdEIsS0FBSyxFQUFFLHFCQUFPLEVBQUU7SUFDaEIsS0FBSyxFQUFFLHNCQUFRLENBQUMsaUJBQUcsRUFBRSxDQUFDO0lBQ3RCLElBQUksRUFBRSxzQkFBUSxDQUFDLG1CQUFLLENBQUMsQ0FBQyxxQkFBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFLHFCQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDO0NBQzVELENBQUMsQ0FBQztBQUdILE1BQU0sb0JBQW9CLEdBQUc7SUFDM0Isd0JBQWdCO0lBQ2hCLG9CQUFNLENBQUMsRUFBRSxJQUFJLEVBQUUscUJBQU8sQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDO0lBQ3BDLG9CQUFNLENBQUMsRUFBRSxJQUFJLEVBQUUscUJBQU8sQ0FBQyxRQUFRLENBQUMsRUFBRSxLQUFLLEVBQUUscUJBQU8sRUFBRSxFQUFFLENBQUM7SUFDckQsb0JBQU0sQ0FBQztRQUNMLElBQUksRUFBRSxxQkFBTyxDQUFDLGNBQWMsQ0FBQztRQUM3QixLQUFLLEVBQUUscUJBQU8s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QVksRUFBRSxFQUFFLHNCQUFjLENBQUMsQ0FBQztJQUM1RSxDQUFDO0lBQ0QsV0FBVyxDQUFDLEVBQ1YsSUFBSSxFQUNKLE9BQU8sR0FHUjtRQUNDLE9BQU8sY0FBTSxDQUNYO1lBQ0UsSUFBSSxFQUFFLGFBQWE7WUFDbkIsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRTtZQUM1QyxPQUFPO1NBQ1IsRUFDRCwwQkFBa0IsQ0FDbkIsQ0FBQztJQUNKLENBQUM7Q0FDRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQkNTIH0gZnJvbSAnQG15c3Rlbi9iY3MnO1xuaW1wb3J0IHtcbiAgaXMsXG4gIGFueSxcbiAgYXJyYXksXG4gIEluZmVyLFxuICBpbnRlZ2VyLFxuICBsaXRlcmFsLFxuICBvYmplY3QsXG4gIG9wdGlvbmFsLFxuICBzdHJpbmcsXG4gIHVuaW9uLFxuICBhc3NlcnQsXG4gIFN0cnVjdCxcbiAgZGVmaW5lLFxufSBmcm9tICdzdXBlcnN0cnVjdCc7XG5pbXBvcnQgeyBPYmplY3RJZCB9IGZyb20gJy4uL3R5cGVzL2NvbW1vbic7XG5pbXBvcnQgeyBDT01NQU5EX1RZUEUsIFdlbGxLbm93bkVuY29kaW5nLCBjcmVhdGUgfSBmcm9tICcuL3V0aWxzJztcblxuY29uc3Qgb3B0aW9uID0gPFQgZXh0ZW5kcyBTdHJ1Y3Q8YW55LCBhbnk+Pihzb21lOiBUKSA9PlxuICB1bmlvbihbb2JqZWN0KHsgTm9uZTogbGl0ZXJhbChudWxsKSB9KSwgb2JqZWN0KHsgU29tZTogc29tZSB9KV0pO1xuXG5leHBvcnQgY29uc3QgVHJhbnNhY3Rpb25JbnB1dCA9IG9iamVjdCh7XG4gIGtpbmQ6IGxpdGVyYWwoJ0lucHV0JyksXG4gIGluZGV4OiBpbnRlZ2VyKCksXG4gIHZhbHVlOiBvcHRpb25hbChhbnkoKSksXG4gIHR5cGU6IG9wdGlvbmFsKHVuaW9uKFtsaXRlcmFsKCdwdXJlJyksIGxpdGVyYWwoJ29iamVjdCcpXSkpLFxufSk7XG5leHBvcnQgdHlwZSBUcmFuc2FjdGlvbklucHV0ID0gSW5mZXI8dHlwZW9mIFRyYW5zYWN0aW9uSW5wdXQ+O1xuXG5jb25zdCBDb21tYW5kQXJndW1lbnRUeXBlcyA9IFtcbiAgVHJhbnNhY3Rpb25JbnB1dCxcbiAgb2JqZWN0KHsga2luZDogbGl0ZXJhbCgnR2FzQ29pbicpIH0pLFxuICBvYmplY3QoeyBraW5kOiBsaXRlcmFsKCdSZXN1bHQnKSwgaW5kZXg6IGludGVnZXIoKSB9KSxcbiAgb2JqZWN0KHtcbiAgICBraW5kOiBsaXRlcmFsKCdOZXN0ZWRSZXN1bHQnKSxcbiAgICBpbmRleDogaW50ZWdlcigpLFxuICAgIHJlc3VsdEluZGV4OiBpbnRlZ2VyKCksXG4gIH0pLFxuXSBhcyBjb25zdDtcblxuLy8gR2VuZXJpYyBjb21tYW5kIGFyZ3VtZW50XG5leHBvcnQgY29uc3QgQ29tbWFuZEFyZ3VtZW50ID0gdW5pb24oWy4uLkNvbW1hbmRBcmd1bWVudFR5cGVzXSk7XG5leHBvcnQgdHlwZSBDb21tYW5kQXJndW1lbnQgPSBJbmZlcjx0eXBlb2YgQ29tbWFuZEFyZ3VtZW50PjtcblxuLy8gQ29tbWFuZCBhcmd1bWVudCByZWZlcnJpbmcgdG8gYW4gb2JqZWN0OlxuZXhwb3J0IGNvbnN0IE9iamVjdENvbW1hbmRBcmd1bWVudCA9IHVuaW9uKFsuLi5Db21tYW5kQXJndW1lbnRUeXBlc10pO1xuKE9iamVjdENvbW1hbmRBcmd1bWVudCBhcyBhbnkpW0NPTU1BTkRfVFlQRV0gPSB7XG4gIGtpbmQ6ICdvYmplY3QnLFxufSBhcyBXZWxsS25vd25FbmNvZGluZztcblxuZXhwb3J0IGNvbnN0IFB1cmVDb21tYW5kQXJndW1lbnQgPSAodHlwZTogc3RyaW5nKSA9PiB7XG4gIGNvbnN0IHN0cnVjdCA9IHVuaW9uKFsuLi5Db21tYW5kQXJndW1lbnRUeXBlc10pO1xuICAoc3RydWN0IGFzIGFueSlbQ09NTUFORF9UWVBFXSA9IHtcbiAgICBraW5kOiAncHVyZScsXG4gICAgdHlwZSxcbiAgfSBhcyBXZWxsS25vd25FbmNvZGluZztcbiAgcmV0dXJuIHN0cnVjdDtcbn07XG5cbmV4cG9ydCBjb25zdCBNb3ZlQ2FsbENvbW1hbmQgPSBvYmplY3Qoe1xuICBraW5kOiBsaXRlcmFsKCdNb3ZlQ2FsbCcpLFxuICB0YXJnZXQ6IGRlZmluZTxgJHtzdHJpbmd9Ojoke3N0cmluZ306OiR7c3RyaW5nfWA+KCd0YXJnZXQnLCBzdHJpbmcoKS52YWxpZGF0b3IpLFxuICB0eXBlQXJndW1lbnRzOiBhcnJheShzdHJpbmcoKSksXG4gIGFyZ3VtZW50czogYXJyYXkoQ29tbWFuZEFyZ3VtZW50KSxcbn0pO1xuZXhwb3J0IHR5cGUgTW92ZUNhbGxDb21tYW5kID0gSW5mZXI8dHlwZW9mIE1vdmVDYWxsQ29tbWFuZD47XG5cbmV4cG9ydCBjb25zdCBUcmFuc2Zlck9iamVjdHNDb21tYW5kID0gb2JqZWN0KHtcbiAga2luZDogbGl0ZXJhbCgnVHJhbnNmZXJPYmplY3RzJyksXG4gIG9iamVjdHM6IGFycmF5KE9iamVjdENvbW1hbmRBcmd1bWVudCksXG4gIGFkZHJlc3M6IFB1cmVDb21tYW5kQXJndW1lbnQoQkNTLkFERFJFU1MpLFxufSk7XG5leHBvcnQgdHlwZSBUcmFuc2Zlck9iamVjdHNDb21tYW5kID0gSW5mZXI8dHlwZW9mIFRyYW5zZmVyT2JqZWN0c0NvbW1hbmQ+O1xuXG5leHBvcnQgY29uc3QgU3BsaXRDb2luc0NvbW1hbmQgPSBvYmplY3Qoe1xuICBraW5kOiBsaXRlcmFsKCdTcGxpdENvaW5zJyksXG4gIGNvaW46IE9iamVjdENvbW1hbmRBcmd1bWVudCxcbiAgYW1vdW50czogYXJyYXkoUHVyZUNvbW1hbmRBcmd1bWVudCgndTY0JykpLFxufSk7XG5leHBvcnQgdHlwZSBTcGxpdENvaW5zQ29tbWFuZCA9IEluZmVyPHR5cGVvZiBTcGxpdENvaW5zQ29tbWFuZD47XG5cbmV4cG9ydCBjb25zdCBNZXJnZUNvaW5zQ29tbWFuZCA9IG9iamVjdCh7XG4gIGtpbmQ6IGxpdGVyYWwoJ01lcmdlQ29pbnMnKSxcbiAgZGVzdGluYXRpb246IE9iamVjdENvbW1hbmRBcmd1bWVudCxcbiAgc291cmNlczogYXJyYXkoT2JqZWN0Q29tbWFuZEFyZ3VtZW50KSxcbn0pO1xuZXhwb3J0IHR5cGUgTWVyZ2VDb2luc0NvbW1hbmQgPSBJbmZlcjx0eXBlb2YgTWVyZ2VDb2luc0NvbW1hbmQ+O1xuXG5leHBvcnQgY29uc3QgTWFrZU1vdmVWZWNDb21tYW5kID0gb2JqZWN0KHtcbiAga2luZDogbGl0ZXJhbCgnTWFrZU1vdmVWZWMnKSxcbiAgdHlwZTogb3B0aW9uYWwob3B0aW9uKHN0cmluZygpKSksXG4gIG9iamVjdHM6IGFycmF5KE9iamVjdENvbW1hbmRBcmd1bWVudCksXG59KTtcbmV4cG9ydCB0eXBlIE1ha2VNb3ZlVmVjQ29tbWFuZCA9IEluZmVyPHR5cGVvZiBNYWtlTW92ZVZlY0NvbW1hbmQ+O1xuXG5leHBvcnQgY29uc3QgUHVibGlzaENvbW1hbmQgPSBvYmplY3Qoe1xuICBraW5kOiBsaXRlcmFsKCdQdWJsaXNoJyksXG4gIG1vZHVsZXM6IGFycmF5KGFycmF5KGludGVnZXIoKSkpLFxuICBkZXBlbmRlbmNpZXM6IGFycmF5KE9iamVjdElkKSxcbn0pO1xuZXhwb3J0IHR5cGUgUHVibGlzaENvbW1hbmQgPSBJbmZlcjx0eXBlb2YgUHVibGlzaENvbW1hbmQ+O1xuXG5jb25zdCBUcmFuc2FjdGlvbkNvbW1hbmRUeXBlcyA9IFtcbiAgTW92ZUNhbGxDb21tYW5kLFxuICBUcmFuc2Zlck9iamVjdHNDb21tYW5kLFxuICBTcGxpdENvaW5zQ29tbWFuZCxcbiAgTWVyZ2VDb2luc0NvbW1hbmQsXG4gIFB1Ymxpc2hDb21tYW5kLFxuICBNYWtlTW92ZVZlY0NvbW1hbmQsXG5dIGFzIGNvbnN0O1xuXG5leHBvcnQgY29uc3QgVHJhbnNhY3Rpb25Db21tYW5kID0gdW5pb24oWy4uLlRyYW5zYWN0aW9uQ29tbWFuZFR5cGVzXSk7XG5leHBvcnQgdHlwZSBUcmFuc2FjdGlvbkNvbW1hbmQgPSBJbmZlcjx0eXBlb2YgVHJhbnNhY3Rpb25Db21tYW5kPjtcblxuZXhwb3J0IGZ1bmN0aW9uIGdldFRyYW5zYWN0aW9uQ29tbWFuZFR5cGUoZGF0YTogdW5rbm93bikge1xuICBhc3NlcnQoZGF0YSwgVHJhbnNhY3Rpb25Db21tYW5kKTtcbiAgcmV0dXJuIFRyYW5zYWN0aW9uQ29tbWFuZFR5cGVzLmZpbmQoKHNjaGVtYSkgPT4gaXMoZGF0YSwgc2NoZW1hIGFzIFN0cnVjdCkpITtcbn1cblxuLyoqXG4gKiBTaW1wbGUgaGVscGVycyB1c2VkIHRvIGNvbnN0cnVjdCBjb21tYW5kczpcbiAqL1xuZXhwb3J0IGNvbnN0IENvbW1hbmRzID0ge1xuICBNb3ZlQ2FsbChcbiAgICBpbnB1dDogT21pdDxNb3ZlQ2FsbENvbW1hbmQsICdraW5kJyB8ICdhcmd1bWVudHMnIHwgJ3R5cGVBcmd1bWVudHMnPiAmIHtcbiAgICAgIGFyZ3VtZW50cz86IENvbW1hbmRBcmd1bWVudFtdO1xuICAgICAgdHlwZUFyZ3VtZW50cz86IHN0cmluZ1tdO1xuICAgIH1cbiAgKTogTW92ZUNhbGxDb21tYW5kIHtcbiAgICByZXR1cm4gY3JlYXRlKFxuICAgICAge1xuICAgICAgICBraW5kOiAnTW92ZUNhbGwnLFxuICAgICAgICB0YXJnZXQ6IGlucHV0LnRhcmdldCxcbiAgICAgICAgYXJndW1lbnRzOiBpbnB1dC5hcmd1bWVudHMgPz8gW10sXG4gICAgICAgIHR5cGVBcmd1bWVudHM6IGlucHV0LnR5cGVBcmd1bWVudHMgPz8gW10sXG4gICAgICB9LFxuICAgICAgTW92ZUNhbGxDb21tYW5kXG4gICAgKTtcbiAgfSxcbiAgVHJhbnNmZXJPYmplY3RzKG9iamVjdHM6IENvbW1hbmRBcmd1bWVudFtdLCBhZGRyZXNzOiBDb21tYW5kQXJndW1lbnQpOiBUcmFuc2Zlck9iamVjdHNDb21tYW5kIHtcbiAgICByZXR1cm4gY3JlYXRlKHsga2luZDogJ1RyYW5zZmVyT2JqZWN0cycsIG9iamVjdHMsIGFkZHJlc3MgfSwgVHJhbnNmZXJPYmplY3RzQ29tbWFuZCk7XG4gIH0sXG4gIFNwbGl0Q29pbnMoY29pbjogQ29tbWFuZEFyZ3VtZW50LCBhbW91bnRzOiBDb21tYW5kQXJndW1lbnRbXSk6IFNwbGl0Q29pbnNDb21tYW5kIHtcbiAgICByZXR1cm4gY3JlYXRlKHsga2luZDogJ1NwbGl0Q29pbnMnLCBjb2luLCBhbW91bnRzIH0sIFNwbGl0Q29pbnNDb21tYW5kKTtcbiAgfSxcbiAgTWVyZ2VDb2lucyhkZXN0aW5hdGlvbjogQ29tbWFuZEFyZ3VtZW50LCBzb3VyY2VzOiBDb21tYW5kQXJndW1lbnRbXSk6IE1lcmdlQ29pbnNDb21tYW5kIHtcbiAgICByZXR1cm4gY3JlYXRlKHsga2luZDogJ01lcmdlQ29pbnMnLCBkZXN0aW5hdGlvbiwgc291cmNlcyB9LCBNZXJnZUNvaW5zQ29tbWFuZCk7XG4gIH0sXG4gIFB1Ymxpc2gobW9kdWxlczogbnVtYmVyW11bXSwgZGVwZW5kZW5jaWVzOiBPYmplY3RJZFtdKTogUHVibGlzaENvbW1hbmQge1xuICAgIHJldHVybiBjcmVhdGUoeyBraW5kOiAnUHVibGlzaCcsIG1vZHVsZXMsIGRlcGVuZGVuY2llcyB9LCBQdWJsaXNoQ29tbWFuZCk7XG4gIH0sXG4gIE1ha2VNb3ZlVmVjKHtcbiAgICB0eXBlLFxuICAgIG9iamVjdHMsXG4gIH06IE9taXQ8TWFrZU1vdmVWZWNDb21tYW5kLCAna2luZCcgfCAndHlwZSc+ICYge1xuICAgIHR5cGU/OiBzdHJpbmc7XG4gIH0pOiBNYWtlTW92ZVZlY0NvbW1hbmQge1xuICAgIHJldHVybiBjcmVhdGUoXG4gICAgICB7XG4gICAgICAgIGtpbmQ6ICdNYWtlTW92ZVZlYycsXG4gICAgICAgIHR5cGU6IHR5cGUgPyB7IFNvbWU6IHR5cGUgfSA6IHsgTm9uZTogbnVsbCB9LFxuICAgICAgICBvYmplY3RzLFxuICAgICAgfSxcbiAgICAgIE1ha2VNb3ZlVmVjQ29tbWFuZFxuICAgICk7XG4gIH0sXG59O1xuIl19