@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.
- package/.mocharc.yml +1 -2
- package/CHANGELOG.md +897 -0
- package/dist/src/index.d.ts +1 -0
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +7 -2
- package/dist/src/lib/compareTransactionBlocks.d.ts +8 -0
- package/dist/src/lib/compareTransactionBlocks.d.ts.map +1 -0
- package/dist/src/lib/compareTransactionBlocks.js +12 -0
- package/dist/src/lib/constants.d.ts +11 -3
- package/dist/src/lib/constants.d.ts.map +1 -1
- package/dist/src/lib/constants.js +20 -3
- package/dist/src/lib/customTransaction.d.ts +57 -0
- package/dist/src/lib/customTransaction.d.ts.map +1 -0
- package/dist/src/lib/customTransaction.js +159 -0
- package/dist/src/lib/customTransactionBuilder.d.ts +46 -0
- package/dist/src/lib/customTransactionBuilder.d.ts.map +1 -0
- package/dist/src/lib/customTransactionBuilder.js +117 -0
- package/dist/src/lib/iface.d.ts +86 -27
- package/dist/src/lib/iface.d.ts.map +1 -1
- package/dist/src/lib/iface.js +39 -10
- package/dist/src/lib/index.d.ts +10 -0
- package/dist/src/lib/index.d.ts.map +1 -1
- package/dist/src/lib/index.js +44 -10
- package/dist/src/lib/keyPair.d.ts.map +1 -1
- package/dist/src/lib/keyPair.js +25 -21
- package/dist/src/lib/mystenlab/builder/Inputs.d.ts +6 -6
- package/dist/src/lib/mystenlab/builder/Inputs.d.ts.map +1 -1
- package/dist/src/lib/mystenlab/builder/Inputs.js +19 -20
- package/dist/src/lib/mystenlab/builder/TransactionBlock.d.ts +302 -0
- package/dist/src/lib/mystenlab/builder/TransactionBlock.d.ts.map +1 -0
- package/dist/src/lib/mystenlab/builder/TransactionBlock.js +255 -0
- package/dist/src/lib/mystenlab/builder/{TransactionData.d.ts → TransactionDataBlock.d.ts} +62 -62
- package/dist/src/lib/mystenlab/builder/TransactionDataBlock.d.ts.map +1 -0
- package/dist/src/lib/mystenlab/builder/TransactionDataBlock.js +168 -0
- package/dist/src/lib/mystenlab/builder/{Commands.d.ts → Transactions.d.ts} +103 -158
- package/dist/src/lib/mystenlab/builder/Transactions.d.ts.map +1 -0
- package/dist/src/lib/mystenlab/builder/Transactions.js +118 -0
- package/dist/src/lib/mystenlab/builder/bcs.d.ts +6 -6
- package/dist/src/lib/mystenlab/builder/bcs.d.ts.map +1 -1
- package/dist/src/lib/mystenlab/builder/bcs.js +16 -16
- package/dist/src/lib/mystenlab/builder/index.d.ts +2 -2
- package/dist/src/lib/mystenlab/builder/index.d.ts.map +1 -1
- package/dist/src/lib/mystenlab/builder/index.js +8 -4
- package/dist/src/lib/mystenlab/builder/serializer.d.ts.map +1 -1
- package/dist/src/lib/mystenlab/builder/serializer.js +6 -11
- package/dist/src/lib/mystenlab/builder/utils.d.ts +2 -5
- package/dist/src/lib/mystenlab/builder/utils.d.ts.map +1 -1
- package/dist/src/lib/mystenlab/builder/utils.js +5 -5
- package/dist/src/lib/mystenlab/cryptography/hash.js +3 -4
- package/dist/src/lib/mystenlab/framework/framework.d.ts +8 -7
- package/dist/src/lib/mystenlab/framework/framework.d.ts.map +1 -1
- package/dist/src/lib/mystenlab/framework/framework.js +23 -27
- package/dist/src/lib/mystenlab/framework/index.d.ts.map +1 -1
- package/dist/src/lib/mystenlab/framework/index.js +6 -4
- package/dist/src/lib/mystenlab/framework/sui-system-state.d.ts +4 -23
- package/dist/src/lib/mystenlab/framework/sui-system-state.d.ts.map +1 -1
- package/dist/src/lib/mystenlab/framework/sui-system-state.js +11 -40
- package/dist/src/lib/mystenlab/txn-data-serializers/type-tag-serializer.d.ts.map +1 -0
- package/dist/src/lib/mystenlab/txn-data-serializers/type-tag-serializer.js +119 -0
- package/dist/src/lib/mystenlab/types/coin.d.ts +10 -10
- package/dist/src/lib/mystenlab/types/coin.d.ts.map +1 -1
- package/dist/src/lib/mystenlab/types/coin.js +19 -19
- package/dist/src/lib/mystenlab/types/common.d.ts +8 -8
- package/dist/src/lib/mystenlab/types/common.d.ts.map +1 -1
- package/dist/src/lib/mystenlab/types/common.js +22 -22
- package/dist/src/lib/mystenlab/types/events.d.ts +14 -14
- package/dist/src/lib/mystenlab/types/events.d.ts.map +1 -1
- package/dist/src/lib/mystenlab/types/events.js +17 -17
- package/dist/src/lib/mystenlab/types/index.d.ts.map +1 -1
- package/dist/src/lib/mystenlab/types/index.js +6 -5
- package/dist/src/lib/mystenlab/types/normalized.d.ts +21 -21
- package/dist/src/lib/mystenlab/types/normalized.d.ts.map +1 -1
- package/dist/src/lib/mystenlab/types/normalized.js +42 -43
- package/dist/src/lib/mystenlab/types/objects.d.ts +95 -78
- package/dist/src/lib/mystenlab/types/objects.d.ts.map +1 -1
- package/dist/src/lib/mystenlab/types/objects.js +98 -104
- package/dist/src/lib/mystenlab/types/option.d.ts +1 -1
- package/dist/src/lib/mystenlab/types/option.d.ts.map +1 -1
- package/dist/src/lib/mystenlab/types/option.js +2 -3
- package/dist/src/lib/mystenlab/types/sui-bcs.d.ts +10 -9
- package/dist/src/lib/mystenlab/types/sui-bcs.d.ts.map +1 -1
- package/dist/src/lib/mystenlab/types/sui-bcs.js +4 -4
- package/dist/src/lib/mystenlab/types/transactions.d.ts +3262 -1046
- package/dist/src/lib/mystenlab/types/transactions.d.ts.map +1 -1
- package/dist/src/lib/mystenlab/types/transactions.js +209 -187
- package/dist/src/lib/mystenlab/types/validator.d.ts +641 -0
- package/dist/src/lib/mystenlab/types/validator.d.ts.map +1 -0
- package/dist/src/lib/mystenlab/types/validator.js +156 -0
- package/dist/src/lib/resources/walrusConfig.d.ts +22 -0
- package/dist/src/lib/resources/walrusConfig.d.ts.map +1 -0
- package/dist/src/lib/resources/walrusConfig.js +37 -0
- package/dist/src/lib/rpcClient.d.ts +5 -0
- package/dist/src/lib/rpcClient.d.ts.map +1 -0
- package/dist/src/lib/rpcClient.js +74 -0
- package/dist/src/lib/stakingBuilder.d.ts +15 -15
- package/dist/src/lib/stakingBuilder.d.ts.map +1 -1
- package/dist/src/lib/stakingBuilder.js +113 -44
- package/dist/src/lib/stakingTransaction.d.ts +2 -10
- package/dist/src/lib/stakingTransaction.d.ts.map +1 -1
- package/dist/src/lib/stakingTransaction.js +97 -35
- package/dist/src/lib/tokenTransferBuilder.d.ts +38 -0
- package/dist/src/lib/tokenTransferBuilder.d.ts.map +1 -0
- package/dist/src/lib/tokenTransferBuilder.js +132 -0
- package/dist/src/lib/tokenTransferTransaction.d.ts +57 -0
- package/dist/src/lib/tokenTransferTransaction.d.ts.map +1 -0
- package/dist/src/lib/tokenTransferTransaction.js +250 -0
- package/dist/src/lib/transaction.d.ts +16 -6
- package/dist/src/lib/transaction.d.ts.map +1 -1
- package/dist/src/lib/transaction.js +126 -26
- package/dist/src/lib/transactionBuilder.d.ts +2 -3
- package/dist/src/lib/transactionBuilder.d.ts.map +1 -1
- package/dist/src/lib/transactionBuilder.js +4 -4
- package/dist/src/lib/transactionBuilderFactory.d.ts +17 -2
- package/dist/src/lib/transactionBuilderFactory.d.ts.map +1 -1
- package/dist/src/lib/transactionBuilderFactory.js +52 -2
- package/dist/src/lib/transferBuilder.d.ts +3 -1
- package/dist/src/lib/transferBuilder.d.ts.map +1 -1
- package/dist/src/lib/transferBuilder.js +34 -11
- package/dist/src/lib/transferTransaction.d.ts +1 -1
- package/dist/src/lib/transferTransaction.d.ts.map +1 -1
- package/dist/src/lib/transferTransaction.js +33 -18
- package/dist/src/lib/unstakingBuilder.d.ts +62 -0
- package/dist/src/lib/unstakingBuilder.d.ts.map +1 -0
- package/dist/src/lib/unstakingBuilder.js +227 -0
- package/dist/src/lib/unstakingTransaction.d.ts +75 -0
- package/dist/src/lib/unstakingTransaction.d.ts.map +1 -0
- package/dist/src/lib/unstakingTransaction.js +345 -0
- package/dist/src/lib/utils.d.ts +51 -7
- package/dist/src/lib/utils.d.ts.map +1 -1
- package/dist/src/lib/utils.js +362 -27
- package/dist/src/lib/walrusStakingBuilder.d.ts +66 -0
- package/dist/src/lib/walrusStakingBuilder.d.ts.map +1 -0
- package/dist/src/lib/walrusStakingBuilder.js +200 -0
- package/dist/src/lib/walrusStakingTransaction.d.ts +52 -0
- package/dist/src/lib/walrusStakingTransaction.d.ts.map +1 -0
- package/dist/src/lib/walrusStakingTransaction.js +269 -0
- package/dist/src/lib/walrusWithdrawStakeBuilder.d.ts +36 -0
- package/dist/src/lib/walrusWithdrawStakeBuilder.d.ts.map +1 -0
- package/dist/src/lib/walrusWithdrawStakeBuilder.js +173 -0
- package/dist/src/lib/walrusWithdrawStakeTransaction.d.ts +21 -0
- package/dist/src/lib/walrusWithdrawStakeTransaction.d.ts.map +1 -0
- package/dist/src/lib/walrusWithdrawStakeTransaction.js +186 -0
- package/dist/src/register.d.ts.map +1 -1
- package/dist/src/register.js +5 -1
- package/dist/src/sui.d.ts +44 -8
- package/dist/src/sui.d.ts.map +1 -1
- package/dist/src/sui.js +484 -42
- package/dist/src/suiToken.d.ts +22 -0
- package/dist/src/suiToken.d.ts.map +1 -0
- package/dist/src/suiToken.js +61 -0
- package/dist/src/tsui.js +1 -1
- package/package.json +15 -12
- package/dist/src/lib/mystenlab/builder/Commands.d.ts.map +0 -1
- package/dist/src/lib/mystenlab/builder/Commands.js +0 -119
- package/dist/src/lib/mystenlab/builder/Transaction.d.ts +0 -609
- package/dist/src/lib/mystenlab/builder/Transaction.d.ts.map +0 -1
- package/dist/src/lib/mystenlab/builder/Transaction.js +0 -254
- package/dist/src/lib/mystenlab/builder/TransactionData.d.ts.map +0 -1
- package/dist/src/lib/mystenlab/builder/TransactionData.js +0 -171
- package/dist/src/lib/mystenlab/builder/type-tag-serializer.d.ts.map +0 -1
- package/dist/src/lib/mystenlab/builder/type-tag-serializer.js +0 -119
- /package/dist/src/lib/mystenlab/{builder → txn-data-serializers}/type-tag-serializer.d.ts +0 -0
|
@@ -1,4 +1,37 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
2
35
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
36
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
37
|
};
|
|
@@ -6,14 +39,15 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
39
|
exports.Transaction = void 0;
|
|
7
40
|
const sdk_core_1 = require("@bitgo-beta/sdk-core");
|
|
8
41
|
const iface_1 = require("./iface");
|
|
9
|
-
const utils_1 =
|
|
42
|
+
const utils_1 = __importStar(require("./utils"));
|
|
10
43
|
const types_1 = require("./mystenlab/types");
|
|
11
44
|
const constants_1 = require("./constants");
|
|
12
45
|
const buffer_1 = require("buffer");
|
|
13
46
|
const bcs_1 = require("@mysten/bcs");
|
|
14
47
|
const bs58_1 = __importDefault(require("bs58"));
|
|
15
|
-
const
|
|
48
|
+
const TransactionDataBlock_1 = require("./mystenlab/builder/TransactionDataBlock");
|
|
16
49
|
const builder_1 = require("./mystenlab/builder");
|
|
50
|
+
const blake2b_1 = __importDefault(require("@bitgo-beta/blake2b"));
|
|
17
51
|
const hash_1 = require("./mystenlab/cryptography/hash");
|
|
18
52
|
class Transaction extends sdk_core_1.BaseTransaction {
|
|
19
53
|
constructor(_coinConfig) {
|
|
@@ -28,7 +62,7 @@ class Transaction extends sdk_core_1.BaseTransaction {
|
|
|
28
62
|
/** @inheritDoc **/
|
|
29
63
|
get id() {
|
|
30
64
|
const dataBytes = this.getDataBytes();
|
|
31
|
-
const hash = hash_1.hashTypedData('TransactionData', dataBytes);
|
|
65
|
+
const hash = (0, hash_1.hashTypedData)('TransactionData', dataBytes);
|
|
32
66
|
this._id = bs58_1.default.encode(hash);
|
|
33
67
|
return this._id;
|
|
34
68
|
}
|
|
@@ -64,7 +98,8 @@ class Transaction extends sdk_core_1.BaseTransaction {
|
|
|
64
98
|
if (!this._suiTransaction) {
|
|
65
99
|
throw new sdk_core_1.InvalidTransactionError('empty transaction to sign');
|
|
66
100
|
}
|
|
67
|
-
const
|
|
101
|
+
const intentMessage = this.signablePayload;
|
|
102
|
+
const signature = signer.signMessageinUint8Array(intentMessage);
|
|
68
103
|
this.setSerializedSig({ pub: signer.getKeys().pub }, buffer_1.Buffer.from(signature));
|
|
69
104
|
this.addSignature({ pub: signer.getKeys().pub }, buffer_1.Buffer.from(signature));
|
|
70
105
|
}
|
|
@@ -85,45 +120,80 @@ class Transaction extends sdk_core_1.BaseTransaction {
|
|
|
85
120
|
}
|
|
86
121
|
getDataBytes() {
|
|
87
122
|
const txData = this.getTxData();
|
|
88
|
-
const txSer = builder_1.builder.ser('TransactionData', { V1: txData }, { maxSize:
|
|
123
|
+
const txSer = builder_1.builder.ser('TransactionData', { V1: txData }, { maxSize: TransactionDataBlock_1.TRANSACTION_DATA_MAX_SIZE });
|
|
89
124
|
return txSer.toBytes();
|
|
90
125
|
}
|
|
91
126
|
/** @inheritDoc */
|
|
92
127
|
get signablePayload() {
|
|
93
128
|
const dataBytes = this.getDataBytes();
|
|
94
|
-
const intentMessage =
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
129
|
+
const intentMessage = this.messageWithIntent(utils_1.IntentScope.TransactionData, dataBytes);
|
|
130
|
+
return buffer_1.Buffer.from((0, blake2b_1.default)(32).update(intentMessage).digest('binary'));
|
|
131
|
+
}
|
|
132
|
+
messageWithIntent(scope, message) {
|
|
133
|
+
const intent = this.intentWithScope(scope);
|
|
134
|
+
const intentMessage = new Uint8Array(intent.length + message.length);
|
|
135
|
+
intentMessage.set(intent);
|
|
136
|
+
intentMessage.set(message, intent.length);
|
|
137
|
+
return intentMessage;
|
|
138
|
+
}
|
|
139
|
+
intentWithScope(scope) {
|
|
140
|
+
return [scope, utils_1.IntentVersion.V0, utils_1.AppId.Sui];
|
|
98
141
|
}
|
|
99
142
|
serialize() {
|
|
100
143
|
const dataBytes = this.getDataBytes();
|
|
101
|
-
this._id = bs58_1.default.encode(hash_1.hashTypedData('TransactionData', dataBytes));
|
|
102
|
-
return bcs_1.toB64(dataBytes);
|
|
144
|
+
this._id = bs58_1.default.encode((0, hash_1.hashTypedData)('TransactionData', dataBytes));
|
|
145
|
+
return (0, bcs_1.toB64)(dataBytes);
|
|
103
146
|
}
|
|
104
147
|
static deserializeSuiTransaction(serializedTx) {
|
|
105
|
-
const data = bcs_1.fromB64(serializedTx);
|
|
106
|
-
const
|
|
107
|
-
const inputs =
|
|
108
|
-
const
|
|
109
|
-
|
|
110
|
-
const txType = iface_1.SuiTransactionType.Transfer;
|
|
148
|
+
const data = (0, bcs_1.fromB64)(serializedTx);
|
|
149
|
+
const transactionBlock = TransactionDataBlock_1.TransactionBlockDataBuilder.fromBytes(data);
|
|
150
|
+
const inputs = transactionBlock.inputs.map((txInput) => txInput.value);
|
|
151
|
+
const transactions = transactionBlock.transactions;
|
|
152
|
+
const txType = this.getSuiTransactionType(transactions);
|
|
111
153
|
return {
|
|
112
|
-
id:
|
|
154
|
+
id: transactionBlock.getDigest(),
|
|
113
155
|
type: txType,
|
|
114
|
-
sender: types_1.normalizeSuiAddress(
|
|
156
|
+
sender: (0, types_1.normalizeSuiAddress)(transactionBlock.sender),
|
|
115
157
|
tx: {
|
|
116
158
|
inputs: inputs,
|
|
117
|
-
|
|
159
|
+
transactions: transactions,
|
|
118
160
|
},
|
|
119
161
|
gasData: {
|
|
120
|
-
payment: this.normalizeCoins(
|
|
121
|
-
owner: types_1.normalizeSuiAddress(
|
|
122
|
-
price: Number(
|
|
123
|
-
budget: Number(
|
|
162
|
+
payment: this.normalizeCoins(transactionBlock.gasConfig.payment),
|
|
163
|
+
owner: (0, types_1.normalizeSuiAddress)(transactionBlock.gasConfig.owner),
|
|
164
|
+
price: Number(transactionBlock.gasConfig.price),
|
|
165
|
+
budget: Number(transactionBlock.gasConfig.budget),
|
|
124
166
|
},
|
|
125
167
|
};
|
|
126
168
|
}
|
|
169
|
+
static getSuiTransactionType(transactions) {
|
|
170
|
+
// tricky to determine custom tx purely from a serialized tx, we can rely on following logic
|
|
171
|
+
if (transactions.length == 1) {
|
|
172
|
+
return utils_1.default.getSuiTransactionType(transactions[0]);
|
|
173
|
+
}
|
|
174
|
+
if (transactions.some((tx) => utils_1.default.getSuiTransactionType(tx) === iface_1.SuiTransactionType.WalrusStakeWithPool)) {
|
|
175
|
+
return iface_1.SuiTransactionType.WalrusStakeWithPool;
|
|
176
|
+
}
|
|
177
|
+
if (transactions.some((tx) => utils_1.default.getSuiTransactionType(tx) === iface_1.SuiTransactionType.WalrusRequestWithdrawStake)) {
|
|
178
|
+
return iface_1.SuiTransactionType.WalrusRequestWithdrawStake;
|
|
179
|
+
}
|
|
180
|
+
if (transactions.some((tx) => utils_1.default.getSuiTransactionType(tx) === iface_1.SuiTransactionType.WalrusWithdrawStake)) {
|
|
181
|
+
return iface_1.SuiTransactionType.WalrusWithdrawStake;
|
|
182
|
+
}
|
|
183
|
+
if (transactions.some((tx) => utils_1.default.getSuiTransactionType(tx) === iface_1.SuiTransactionType.AddStake)) {
|
|
184
|
+
return iface_1.SuiTransactionType.AddStake;
|
|
185
|
+
}
|
|
186
|
+
if (transactions.some((tx) => utils_1.default.getSuiTransactionType(tx) === iface_1.SuiTransactionType.WithdrawStake)) {
|
|
187
|
+
return iface_1.SuiTransactionType.WithdrawStake;
|
|
188
|
+
}
|
|
189
|
+
if (transactions.some((tx) => utils_1.default.getSuiTransactionType(tx) === iface_1.SuiTransactionType.TokenTransfer)) {
|
|
190
|
+
return iface_1.SuiTransactionType.TokenTransfer;
|
|
191
|
+
}
|
|
192
|
+
if (transactions.every((tx) => utils_1.default.getSuiTransactionType(tx) === iface_1.SuiTransactionType.Transfer)) {
|
|
193
|
+
return iface_1.SuiTransactionType.Transfer;
|
|
194
|
+
}
|
|
195
|
+
return iface_1.SuiTransactionType.CustomTx;
|
|
196
|
+
}
|
|
127
197
|
static getProperGasData(k) {
|
|
128
198
|
return {
|
|
129
199
|
payment: [this.normalizeSuiObjectRef(k.gasData.payment)],
|
|
@@ -139,11 +209,41 @@ class Transaction extends sdk_core_1.BaseTransaction {
|
|
|
139
209
|
}
|
|
140
210
|
static normalizeSuiObjectRef(obj) {
|
|
141
211
|
return {
|
|
142
|
-
objectId: types_1.normalizeSuiObjectId(obj.objectId),
|
|
212
|
+
objectId: (0, types_1.normalizeSuiObjectId)(obj.objectId),
|
|
143
213
|
version: Number(obj.version),
|
|
144
214
|
digest: obj.digest,
|
|
145
215
|
};
|
|
146
216
|
}
|
|
217
|
+
/**
|
|
218
|
+
* When building transactions with > 255 input gas payment objects, we first use MergeCoins Tranasactions to merge the
|
|
219
|
+
* additional inputs into the gas coin & slice them from the payment in gasData. When initializing the builder using
|
|
220
|
+
* decoded tx data, we need to get these inputs from MergeCoins & add them back to the gas payment to be able to
|
|
221
|
+
* rebuild from a raw transaction.
|
|
222
|
+
*/
|
|
223
|
+
getInputGasPaymentObjectsFromTx(tx) {
|
|
224
|
+
const txInputs = tx.inputs;
|
|
225
|
+
const transactions = tx.transactions;
|
|
226
|
+
const inputGasPaymentObjects = [];
|
|
227
|
+
transactions.forEach((transaction) => {
|
|
228
|
+
if (transaction.kind === 'MergeCoins') {
|
|
229
|
+
const { destination, sources } = transaction;
|
|
230
|
+
if (destination.kind === 'GasCoin') {
|
|
231
|
+
sources.forEach((source) => {
|
|
232
|
+
if (source.kind === 'Input') {
|
|
233
|
+
let input = txInputs[source.index];
|
|
234
|
+
if ('value' in input) {
|
|
235
|
+
input = input.value;
|
|
236
|
+
}
|
|
237
|
+
if ('Object' in input && (0, utils_1.isImmOrOwnedObj)(input.Object)) {
|
|
238
|
+
inputGasPaymentObjects.push(input.Object.ImmOrOwned);
|
|
239
|
+
}
|
|
240
|
+
}
|
|
241
|
+
});
|
|
242
|
+
}
|
|
243
|
+
}
|
|
244
|
+
});
|
|
245
|
+
return inputGasPaymentObjects;
|
|
246
|
+
}
|
|
147
247
|
}
|
|
148
248
|
exports.Transaction = Transaction;
|
|
149
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL3RyYW5zYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLG1EQU84QjtBQUM5QixtQ0FBcUU7QUFFckUsb0RBQTRCO0FBQzVCLDZDQU0yQjtBQUMzQiwyQ0FBdUU7QUFDdkUsbUNBQWdDO0FBQ2hDLHFDQUE2QztBQUM3QyxnREFBd0I7QUFFeEIseUVBQXdHO0FBQ3hHLGlEQUFrRTtBQUNsRSx3REFBOEQ7QUFFOUQsTUFBc0IsV0FBZSxTQUFRLDBCQUFlO0lBSzFELFlBQXNCLFdBQWlDO1FBQ3JELEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBRUQsSUFBSSxjQUFjO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLGVBQWUsQ0FBQztJQUM5QixDQUFDO0lBRUQsaUJBQWlCLENBQUMsRUFBcUI7UUFDckMsSUFBSSxDQUFDLGVBQWUsR0FBRyxFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVELG1CQUFtQjtJQUNuQixJQUFJLEVBQUU7UUFDSixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDdEMsTUFBTSxJQUFJLEdBQUcsb0JBQWEsQ0FBQyxpQkFBaUIsRUFBRSxTQUFTLENBQUMsQ0FBQztRQUN6RCxJQUFJLENBQUMsR0FBRyxHQUFHLGNBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDN0IsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDO0lBQ2xCLENBQUM7SUFFRCxZQUFZLENBQUMsU0FBd0IsRUFBRSxTQUFpQjtRQUN0RCxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDakQsSUFBSSxDQUFDLFVBQVUsR0FBRyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsQ0FBQztRQUMzQyxJQUFJLENBQUMs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LE1BQU0sQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLEtBQWUsQ0FBQztnQkFDcEQsTUFBTSxFQUFFLE1BQU0sQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLE1BQWdCLENBQUM7YUFDdkQ7U0FDRixDQUFDO0lBQ0osQ0FBQztJQUVELE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFNO1FBQzVCLE9BQU87WUFDTCxPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMscUJBQXFCLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUN4RCxLQUFLLEVBQUUsZUFBSyxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQztZQUM1QyxLQUFLLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDO1lBQzlCLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUM7U0FDakMsQ0FBQztJQUNKLENBQUM7SUFFTyxNQUFNLENBQUMsY0FBYyxDQUFDLEtBQVk7UUFDeEMsT0FBTyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDeEIsT0FBTyxJQUFJLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDMUMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sTUFBTSxDQUFDLHFCQUFxQixDQUFDLEdBQWlCO1FBQ3BELE9BQU87WUFDTCxRQUFRLEVBQUUsNEJBQW9CLENBQUMsR0FBRyxDQUFDLFFBQVEsQ0FBQztZQUM1QyxPQUFPLEVBQUUsTUFBTSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUM7WUFDNUIsTUFBTSxFQUFFLEdBQUcsQ0FBQyxNQUFNO1NBQ25CLENBQUM7SUFDSixDQUFDO0NBQ0Y7QUE5S0Qsa0NBOEtDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQmFzZUtleSxcbiAgQmFzZVRyYW5zYWN0aW9uLFxuICBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcixcbiAgUHVibGljS2V5IGFzIEJhc2VQdWJsaWNLZXksXG4gIFNpZ25hdHVyZSxcbiAgVHJhbnNhY3Rpb25UeXBlLFxufSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5pbXBvcnQgeyBTdWlUcmFuc2FjdGlvbiwgU3VpVHJhbnNhY3Rpb25UeXBlLCBUeERhdGEgfSBmcm9tICcuL2lmYWNlJztcbmltcG9ydCB7IEJhc2VDb2luIGFzIENvaW5Db25maWcgfSBmcm9tICdAYml0Z28tYmV0YS9zdGF0aWNzJztcbmltcG9ydCB1dGlscyBmcm9tICcuL3V0aWxzJztcbmltcG9ydCB7XG4gIEdhc0RhdGEsXG4gIG5vcm1hbGl6ZVN1aUFkZHJlc3MsXG4gIG5vcm1hbGl6ZVN1aU9iamVjdElkLFxuICBQcm9ncmFtbWFibGVUcmFuc2FjdGlvbixcbiAgU3VpT2JqZWN0UmVmLFxufSBmcm9tICcuL215c3RlbmxhYi90eXBlcyc7XG5pbXBvcnQgeyBTSUdOQVRVUkVfU0NIRU1FX0JZVEVTLCBTVUlfSU5URU5UX0JZVEVTIH0gZnJvbSAnLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgQnVmZmVyIH0gZnJvbSAnYnVmZmVyJztcbmltcG9ydCB7IGZyb21CNjQsIHRvQjY0IH0gZnJvbSAnQG15c3Rlbi9iY3MnO1xuaW1wb3J0IGJzNTggZnJvbSAnYnM1OCc7XG5pbXBvcnQgeyBLZXlQYWlyIH0gZnJvbSAnLi9rZXlQYWlyJztcbmltcG9ydCB7IFRSQU5TQUNUSU9OX0RBVEFfTUFYX1NJWkUsIFRyYW5zYWN0aW9uRGF0YUJ1aWxkZXIgfSBmcm9tICcuL215c3RlbmxhYi9idWlsZGVyL1RyYW5zYWN0aW9uRGF0YSc7XG5pbXBvcnQgeyBidWlsZGVyLCBUcmFuc2FjdGlvbkNvbW1hbmQgfSBmcm9tICcuL215c3RlbmxhYi9idWlsZGVyJztcbmltcG9ydCB7IGhhc2hUeXBlZERhdGEgfSBmcm9tICcuL215c3RlbmxhYi9jcnlwdG9ncmFwaHkvaGFzaCc7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBUcmFuc2FjdGlvbjxUPiBleHRlbmRzIEJhc2VUcmFuc2FjdGlvbiB7XG4gIHByb3RlY3RlZCBfc3VpVHJhbnNhY3Rpb246IFN1aVRyYW5zYWN0aW9uPFQ+O1xuICBwcm90ZWN0ZWQgX3NpZ25hdHVyZTogU2lnbmF0dXJlO1xuICBwcml2YXRlIF9zZXJpYWxpemVkU2lnOiBVaW50OEFycmF5O1xuXG4gIHByb3RlY3RlZCBjb25zdHJ1Y3RvcihfY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz4pIHtcbiAgICBzdXBlcihfY29pbkNvbmZpZyk7XG4gIH1cblxuICBnZXQgc3VpVHJhbnNhY3Rpb24oKTogU3VpVHJhbnNhY3Rpb248VD4ge1xuICAgIHJldHVybiB0aGlzLl9zdWlUcmFuc2FjdGlvbjtcbiAgfVxuXG4gIHNldFN1aVRyYW5zYWN0aW9uKHR4OiBTdWlUcmFuc2FjdGlvbjxUPik6IHZvaWQge1xuICAgIHRoaXMuX3N1aVRyYW5zYWN0aW9uID0gdHg7XG4gIH1cblxuICAvKiogQGluaGVyaXREb2MgKiovXG4gIGdldCBpZCgpOiBzdHJpbmcge1xuICAgIGNvbnN0IGRhdGFCeXRlcyA9IHRoaXMuZ2V0RGF0YUJ5dGVzKCk7XG4gICAgY29uc3QgaGFzaCA9IGhhc2hUeXBlZERhdGEoJ1RyYW5zYWN0aW9uRGF0YScsIGRhdGFCeXRlcyk7XG4gICAgdGhpcy5faWQgPSBiczU4LmVuY29kZShoYXNoKTtcbiAgICByZXR1cm4gdGhpcy5faWQ7XG4gIH1cblxuICBhZGRTaWduYXR1cmUocHVibGljS2V5OiBCYXNlUHVibGljS2V5LCBzaWduYXR1cmU6IEJ1ZmZlcik6IHZvaWQge1xuICAgIHRoaXMuX3NpZ25hdHVyZXMucHVzaChzaWduYXR1cmUudG9TdHJpbmcoJ2hleCcpKTtcbiAgICB0aGlzLl9zaWduYXR1cmUgPSB7IHB1YmxpY0tleSwgc2lnbmF0dXJlIH07XG4gICAgdGhpcy5zZXJpYWxpemUoKTtcbiAgfVxuXG4gIGdldCBzdWlTaWduYXR1cmUoKTogU2lnbmF0dXJlIHtcbiAgICByZXR1cm4gdGhpcy5fc2lnbmF0dXJlO1xuICB9XG5cbiAgZ2V0IHNlcmlhbGl6ZWRTaWcoKTogVWludDhBcnJheSB7XG4gICAgcmV0dXJuIHRoaXMuX3NlcmlhbGl6ZWRTaWc7XG4gIH1cblxuICBzZXRTZXJpYWxpemVkU2lnKHB1YmxpY0tleTogQmFzZVB1YmxpY0tleSwgc2lnbmF0dXJlOiBCdWZmZXIpOiB2b2lkIHtcbiAgICBjb25zdCBwdWJLZXkgPSBCdWZmZXIuZnJvbShwdWJsaWNLZXkucHViLCAnaGV4Jyk7XG4gICAgY29uc3Qgc2VyaWFsaXplZF9zaWcgPSBuZXcgVWludDhBcnJheSgxICsgc2lnbmF0dXJlLmxlbmd0aCArIHB1YktleS5sZW5ndGgpO1xuICAgIHNlcmlhbGl6ZWRfc2lnLnNldChTSUdOQVRVUkVfU0NIRU1FX0JZVEVTKTtcbiAgICBzZXJpYWxpemVkX3NpZy5zZXQoc2lnbmF0dXJlLCAxKTtcbiAgICBzZXJpYWxpemVkX3NpZy5zZXQocHViS2V5LCAxICsgc2lnbmF0dXJlLmxlbmd0aCk7XG4gICAgdGhpcy5fc2VyaWFsaXplZFNpZyA9IHNlcmlhbGl6ZWRfc2lnO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGNhblNpZ24oa2V5OiBCYXNlS2V5KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICAvKipcbiAgICogU2lnbiB0aGlzIHRyYW5zYWN0aW9uXG4gICAqXG4gICAqIEBwYXJhbSB7S2V5UGFpcn0gc2lnbmVyIGtleVxuICAgKi9cblxuICBzaWduKHNpZ25lcjogS2V5UGFpcik6IHZvaWQge1xuICAgIGlmICghdGhpcy5fc3VpVHJhbnNhY3Rpb24pIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcignZW1wdHkgdHJhbnNhY3Rpb24gdG8gc2lnbicpO1xuICAgIH1cblxuICAgIGNvbnN0IHNpZ25hdHVyZSA9IHNpZ25lci5zaWduTWVzc2FnZWluVWludDhBcnJheSh0aGlzLnNpZ25hYmxlUGF5bG9hZCk7XG4gICAgdGhpcy5zZXRTZXJpYWxpemVkU2lnKHsgcHViOiBzaWduZXIuZ2V0S2V5cygpLnB1YiB9LCBCdWZmZXIuZnJvbShzaWduYXR1cmUpKTtcbiAgICB0aGlzLmFkZFNpZ25hdHVyZSh7IHB1Yjogc2lnbmVyLmdldEtleXMoKS5wdWIgfSwgQnVmZmVyLmZyb20oc2lnbmF0dXJlKSk7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgdG9Ccm9hZGNhc3RGb3JtYXQoKTogc3RyaW5nIHtcbiAgICBpZiAoIXRoaXMuX3N1aVRyYW5zYWN0aW9uKSB7XG4gICAgICB0aHJvdyBuZXcgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IoJ0VtcHR5IHRyYW5zYWN0aW9uJyk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzLnNlcmlhbGl6ZSgpO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGFic3RyYWN0IHRvSnNvbigpOiBUeERhdGE7XG5cbiAgLyoqXG4gICAqIFNldCB0aGUgdHJhbnNhY3Rpb24gdHlwZS5cbiAgICpcbiAgICogQHBhcmFtIHtUcmFuc2FjdGlvblR5cGV9IHRyYW5zYWN0aW9uVHlwZSBUaGUgdHJhbnNhY3Rpb24gdHlwZSB0byBiZSBzZXQuXG4gICAqL1xuICB0cmFuc2FjdGlvblR5cGUodHJhbnNhY3Rpb25UeXBlOiBUcmFuc2FjdGlvblR5cGUpOiB2b2lkIHtcbiAgICB0aGlzLl90eXBlID0gdHJhbnNhY3Rpb25UeXBlO1xuICB9XG5cbiAgLyoqXG4gICAqICBnZXQgdGhlIGNvcnJlY3QgdHhEYXRhIHdpdGggdHJhbnNhY3Rpb24gdHlwZVxuICAgKi9cbiAgYWJzdHJhY3QgZ2V0VHhEYXRhKCk6IFR4RGF0YTtcblxuICAvKipcbiAgICogTG9hZCB0aGUgaW5wdXQgYW5kIG91dHB1dCBkYXRhIG9uIHRoaXMgdHJhbnNhY3Rpb24uXG4gICAqL1xuICBhYnN0cmFjdCBsb2FkSW5wdXRzQW5kT3V0cHV0cygpOiB2b2lkO1xuXG4gIC8qKlxuICAgKiBTZXRzIHRoaXMgdHJhbnNhY3Rpb24gcGF5bG9hZFxuICAgKlxuICAgKiBAcGFyYW0gcmF3VHJhbnNhY3Rpb25cbiAgICovXG4gIGFic3RyYWN0IGZyb21SYXdUcmFuc2FjdGlvbihyYXdUcmFuc2FjdGlvbjogc3RyaW5nKTogdm9pZDtcblxuICBnZXREYXRhQnl0ZXMoKTogVWludDhBcnJheSB7XG4gICAgY29uc3QgdHhEYXRhID0gdGhpcy5nZXRUeERhdGEoKTtcbiAgICBjb25zdCB0eFNlciA9IGJ1aWxkZXIuc2VyKCdUcmFuc2FjdGlvbkRhdGEnLCB7IFYxOiB0eERhdGEgfSwgeyBtYXhTaXplOiBUUkFOU0FDVElPTl9EQVRBX01BWF9TSVpFIH0pO1xuICAgIHJldHVybiB0eFNlci50b0J5dGVzKCk7XG4gIH1cblxuICAvKiogQGluaGVyaXREb2MgKi9cbiAgZ2V0IHNpZ25hYmxlUGF5bG9hZCgpOiBCdWZmZXIge1xuICAgIGNvbnN0IGRhdGFCeXRlcyA9IHRoaXMuZ2V0RGF0YUJ5dGVzKCk7XG5cbiAgICBjb25zdCBpbnRlbnRNZXNzYWdlID0gbmV3IFVpbnQ4QXJyYXkoU1VJX0lOVEVOVF9CWVRFUy5sZW5ndGggKyBkYXRhQnl0ZXMubGVuZ3RoKTtcbiAgICBpbnRlbnRNZXNzYWdlLnNldChTVUlfSU5URU5UX0JZVEVTKTtcbiAgICBpbnRlbnRNZXNzYWdlLnNldChkYXRhQnl0ZXMsIFNVSV9JTlRFTlRfQllURVMubGVuZ3RoKTtcbiAgICByZXR1cm4gQnVmZmVyLmZyb20oaW50ZW50TWVzc2FnZSk7XG4gIH1cblxuICBzZXJpYWxpemUoKTogc3RyaW5nIHtcbiAgICBjb25zdCBkYXRhQnl0ZXMgPSB0aGlzLmdldERhdGFCeXRlcygpO1xuICAgIHRoaXMuX2lkID0gYnM1OC5lbmNvZGUoaGFzaFR5cGVkRGF0YSgnVHJhbnNhY3Rpb25EYXRhJywgZGF0YUJ5dGVzKSk7XG4gICAgcmV0dXJuIHRvQjY0KGRhdGFCeXRlcyk7XG4gIH1cblxuICBzdGF0aWMgZGVzZXJpYWxpemVTdWlUcmFuc2FjdGlvbihzZXJpYWxpemVkVHg6IHN0cmluZyk6IFN1aVRyYW5zYWN0aW9uPFByb2dyYW1tYWJsZVRyYW5zYWN0aW9uPiB7XG4gICAgY29uc3QgZGF0YSA9IGZyb21CNjQoc2VyaWFsaXplZFR4KTtcbiAgICBjb25zdCB0cmFuc2FjdGlvbiA9IFRyYW5zYWN0aW9uRGF0YUJ1aWxkZXIuZnJvbUJ5dGVzKGRhdGEpO1xuICAgIGNvbnN0IGlucHV0cyA9IHRyYW5zYWN0aW9uLmlucHV0cy5tYXAoKHR4SW5wdXQpID0+IHR4SW5wdXQudmFsdWUpO1xuICAgIGNvbnN0IGNvbW1hbmRzOiBUcmFuc2FjdGlvbkNvbW1hbmRbXSA9IHRyYW5zYWN0aW9uLmNvbW1hbmRzO1xuICAgIC8vIFRPRE86IEZJWE1FIC0gZ2V0IHR4IHR5cGUgVHJhbnNmZXIgb3IgQWRkU3Rha2UsIGZvciBub3cgb25seSBUcmFuc2ZlclxuICAgIGNvbnN0IHR4VHlwZSA9IFN1aVRyYW5zYWN0aW9uVHlwZS5UcmFuc2ZlcjtcbiAgICByZXR1cm4ge1xuICAgICAgaWQ6IHRyYW5zYWN0aW9uLmdldERpZ2VzdCgpLFxuICAgICAgdHlwZTogdHhUeXBlLFxuICAgICAgc2VuZGVyOiBub3JtYWxpemVTdWlBZGRyZXNzKHRyYW5zYWN0aW9uLnNlbmRlciEpLFxuICAgICAgdHg6IHtcbiAgICAgICAgaW5wdXRzOiBpbnB1dHMsXG4gICAgICAgIGNvbW1hbmRzOiBjb21tYW5kcyxcbiAgICAgIH0sXG4gICAgICBnYXNEYXRhOiB7XG4gICAgICAgIHBheW1lbnQ6IHRoaXMubm9ybWFsaXplQ29pbnModHJhbnNhY3Rpb24uZ2FzQ29uZmlnLnBheW1lbnQhKSxcbiAgICAgICAgb3duZXI6IG5vcm1hbGl6ZVN1aUFkZHJlc3ModHJhbnNhY3Rpb24uZ2FzQ29uZmlnLm93bmVyISksXG4gICAgICAgIHByaWNlOiBOdW1iZXIodHJhbnNhY3Rpb24uZ2FzQ29uZmlnLnByaWNlIGFzIHN0cmluZyksXG4gICAgICAgIGJ1ZGdldDogTnVtYmVyKHRyYW5zYWN0aW9uLmdhc0NvbmZpZy5idWRnZXQgYXMgc3RyaW5nKSxcbiAgICAgIH0sXG4gICAgfTtcbiAgfVxuXG4gIHN0YXRpYyBnZXRQcm9wZXJHYXNEYXRhKGs6IGFueSk6IEdhc0RhdGEge1xuICAgIHJldHVybiB7XG4gICAgICBwYXltZW50OiBbdGhpcy5ub3JtYWxpemVTdWlPYmplY3RSZWYoay5nYXNEYXRhLnBheW1lbnQpXSxcbiAgICAgIG93bmVyOiB1dGlscy5ub3JtYWxpemVIZXhJZChrLmdhc0RhdGEub3duZXIpLFxuICAgICAgcHJpY2U6IE51bWJlcihrLmdhc0RhdGEucHJpY2UpLFxuICAgICAgYnVkZ2V0OiBOdW1iZXIoay5nYXNEYXRhLmJ1ZGdldCksXG4gICAgfTtcbiAgfVxuXG4gIHByaXZhdGUgc3RhdGljIG5vcm1hbGl6ZUNvaW5zKGNvaW5zOiBhbnlbXSk6IFN1aU9iamVjdFJlZltdIHtcbiAgICByZXR1cm4gY29pbnMubWFwKChjb2luKSA9PiB7XG4gICAgICByZXR1cm4gdGhpcy5ub3JtYWxpemVTdWlPYmplY3RSZWYoY29pbik7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIHN0YXRpYyBub3JtYWxpemVTdWlPYmplY3RSZWYob2JqOiBTdWlPYmplY3RSZWYpOiBTdWlPYmplY3RSZWYge1xuICAgIHJldHVybiB7XG4gICAgICBvYmplY3RJZDogbm9ybWFsaXplU3VpT2JqZWN0SWQob2JqLm9iamVjdElkKSxcbiAgICAgIHZlcnNpb246IE51bWJlcihvYmoudmVyc2lvbiksXG4gICAgICBkaWdlc3Q6IG9iai5kaWdlc3QsXG4gICAgfTtcbiAgfVxufVxuIl19
|
|
249
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL3RyYW5zYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLG1EQU84QjtBQUM5QixtQ0FBaUc7QUFFakcsaURBQTRGO0FBQzVGLDZDQUFxRztBQUNyRywyQ0FBcUQ7QUFDckQsbUNBQWdDO0FBQ2hDLHFDQUE2QztBQUM3QyxnREFBd0I7QUFFeEIsbUZBQWtIO0FBQ2xILGlEQUFzRjtBQUN0RixrRUFBMEM7QUFDMUMsd0RBQThEO0FBRTlELE1BQXNCLFdBQWUsU0FBUSwwQkFBZTtJQUsxRCxZQUFzQixXQUFpQztRQUNyRCxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDckIsQ0FBQztJQUVELElBQUksY0FBYztRQUNoQixPQUFPLElBQUksQ0FBQyxlQUFlLENBQUM7SUFDOUIsQ0FBQztJQUVELGlCQUFpQixDQUFDLEVBQXFCO1FBQ3JDLElBQUksQ0FBQyxlQUFlLEdBQUcsRUFBRSxDQUFDO0lBQzVCLENBQUM7SUFFRCxtQkFBbUI7SUFDbkIsSUFBSSxFQUFFO1FBQ0osTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3RDLE1BQU0sSUFBSSxHQUFHLElBQUEsb0JBQWEsRUFBQyxpQkFBaUIsRUFBRSxTQUFTLENBQUMsQ0FBQztRQUN6RCxJQUFJLENBQUMsR0FBRyxHQUFHLGNBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDN0IsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDO0lBQ2xCLENBQUM7SUFFRCxZQUFZLENBQUMsU0FBd0IsRUFBRSxTQUFpQjtRQUN0RCxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDakQsSUFBSSxDQUFDLFVBQVUs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ICBCYXNlS2V5LFxuICBCYXNlVHJhbnNhY3Rpb24sXG4gIEludmFsaWRUcmFuc2FjdGlvbkVycm9yLFxuICBQdWJsaWNLZXkgYXMgQmFzZVB1YmxpY0tleSxcbiAgU2lnbmF0dXJlLFxuICBUcmFuc2FjdGlvblR5cGUgYXMgQml0R29UcmFuc2FjdGlvblR5cGUsXG59IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb3JlJztcbmltcG9ydCB7IFN1aVByb2dyYW1tYWJsZVRyYW5zYWN0aW9uLCBTdWlUcmFuc2FjdGlvbiwgU3VpVHJhbnNhY3Rpb25UeXBlLCBUeERhdGEgfSBmcm9tICcuL2lmYWNlJztcbmltcG9ydCB7IEJhc2VDb2luIGFzIENvaW5Db25maWcgfSBmcm9tICdAYml0Z28tYmV0YS9zdGF0aWNzJztcbmltcG9ydCB1dGlscywgeyBBcHBJZCwgSW50ZW50LCBJbnRlbnRTY29wZSwgSW50ZW50VmVyc2lvbiwgaXNJbW1Pck93bmVkT2JqIH0gZnJvbSAnLi91dGlscyc7XG5pbXBvcnQgeyBHYXNEYXRhLCBub3JtYWxpemVTdWlBZGRyZXNzLCBub3JtYWxpemVTdWlPYmplY3RJZCwgU3VpT2JqZWN0UmVmIH0gZnJvbSAnLi9teXN0ZW5sYWIvdHlwZXMnO1xuaW1wb3J0IHsgU0lHTkFUVVJFX1NDSEVNRV9CWVRFUyB9IGZyb20gJy4vY29uc3RhbnRzJztcbmltcG9ydCB7IEJ1ZmZlciB9IGZyb20gJ2J1ZmZlcic7XG5pbXBvcnQgeyBmcm9tQjY0LCB0b0I2NCB9IGZyb20gJ0BteXN0ZW4vYmNzJztcbmltcG9ydCBiczU4IGZyb20gJ2JzNTgnO1xuaW1wb3J0IHsgS2V5UGFpciB9IGZyb20gJy4va2V5UGFpcic7XG5pbXBvcnQgeyBUUkFOU0FDVElPTl9EQVRBX01BWF9TSVpFLCBUcmFuc2FjdGlvbkJsb2NrRGF0YUJ1aWxkZXIgfSBmcm9tICcuL215c3RlbmxhYi9idWlsZGVyL1RyYW5zYWN0aW9uRGF0YUJsb2NrJztcbmltcG9ydCB7IGJ1aWxkZXIsIE1lcmdlQ29pbnNUcmFuc2FjdGlvbiwgVHJhbnNhY3Rpb25UeXBlIH0gZnJvbSAnLi9teXN0ZW5sYWIvYnVpbGRlcic7XG5pbXBvcnQgYmxha2UyYiBmcm9tICdAYml0Z28tYmV0YS9ibGFrZTJiJztcbmltcG9ydCB7IGhhc2hUeXBlZERhdGEgfSBmcm9tICcuL215c3RlbmxhYi9jcnlwdG9ncmFwaHkvaGFzaCc7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBUcmFuc2FjdGlvbjxUPiBleHRlbmRzIEJhc2VUcmFuc2FjdGlvbiB7XG4gIHByb3RlY3RlZCBfc3VpVHJhbnNhY3Rpb246IFN1aVRyYW5zYWN0aW9uPFQ+O1xuICBwcm90ZWN0ZWQgX3NpZ25hdHVyZTogU2lnbmF0dXJlO1xuICBwcml2YXRlIF9zZXJpYWxpemVkU2lnOiBVaW50OEFycmF5O1xuXG4gIHByb3RlY3RlZCBjb25zdHJ1Y3RvcihfY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz4pIHtcbiAgICBzdXBlcihfY29pbkNvbmZpZyk7XG4gIH1cblxuICBnZXQgc3VpVHJhbnNhY3Rpb24oKTogU3VpVHJhbnNhY3Rpb248VD4ge1xuICAgIHJldHVybiB0aGlzLl9zdWlUcmFuc2FjdGlvbjtcbiAgfVxuXG4gIHNldFN1aVRyYW5zYWN0aW9uKHR4OiBTdWlUcmFuc2FjdGlvbjxUPik6IHZvaWQge1xuICAgIHRoaXMuX3N1aVRyYW5zYWN0aW9uID0gdHg7XG4gIH1cblxuICAvKiogQGluaGVyaXREb2MgKiovXG4gIGdldCBpZCgpOiBzdHJpbmcge1xuICAgIGNvbnN0IGRhdGFCeXRlcyA9IHRoaXMuZ2V0RGF0YUJ5dGVzKCk7XG4gICAgY29uc3QgaGFzaCA9IGhhc2hUeXBlZERhdGEoJ1RyYW5zYWN0aW9uRGF0YScsIGRhdGFCeXRlcyk7XG4gICAgdGhpcy5faWQgPSBiczU4LmVuY29kZShoYXNoKTtcbiAgICByZXR1cm4gdGhpcy5faWQ7XG4gIH1cblxuICBhZGRTaWduYXR1cmUocHVibGljS2V5OiBCYXNlUHVibGljS2V5LCBzaWduYXR1cmU6IEJ1ZmZlcik6IHZvaWQge1xuICAgIHRoaXMuX3NpZ25hdHVyZXMucHVzaChzaWduYXR1cmUudG9TdHJpbmcoJ2hleCcpKTtcbiAgICB0aGlzLl9zaWduYXR1cmUgPSB7IHB1YmxpY0tleSwgc2lnbmF0dXJlIH07XG4gICAgdGhpcy5zZXJpYWxpemUoKTtcbiAgfVxuXG4gIGdldCBzdWlTaWduYXR1cmUoKTogU2lnbmF0dXJlIHtcbiAgICByZXR1cm4gdGhpcy5fc2lnbmF0dXJlO1xuICB9XG5cbiAgZ2V0IHNlcmlhbGl6ZWRTaWcoKTogVWludDhBcnJheSB7XG4gICAgcmV0dXJuIHRoaXMuX3NlcmlhbGl6ZWRTaWc7XG4gIH1cblxuICBzZXRTZXJpYWxpemVkU2lnKHB1YmxpY0tleTogQmFzZVB1YmxpY0tleSwgc2lnbmF0dXJlOiBCdWZmZXIpOiB2b2lkIHtcbiAgICBjb25zdCBwdWJLZXkgPSBCdWZmZXIuZnJvbShwdWJsaWNLZXkucHViLCAnaGV4Jyk7XG4gICAgY29uc3Qgc2VyaWFsaXplZF9zaWcgPSBuZXcgVWludDhBcnJheSgxICsgc2lnbmF0dXJlLmxlbmd0aCArIHB1YktleS5sZW5ndGgpO1xuICAgIHNlcmlhbGl6ZWRfc2lnLnNldChTSUdOQVRVUkVfU0NIRU1FX0JZVEVTKTtcbiAgICBzZXJpYWxpemVkX3NpZy5zZXQoc2lnbmF0dXJlLCAxKTtcbiAgICBzZXJpYWxpemVkX3NpZy5zZXQocHViS2V5LCAxICsgc2lnbmF0dXJlLmxlbmd0aCk7XG4gICAgdGhpcy5fc2VyaWFsaXplZFNpZyA9IHNlcmlhbGl6ZWRfc2lnO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGNhblNpZ24oa2V5OiBCYXNlS2V5KTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICAvKipcbiAgICogU2lnbiB0aGlzIHRyYW5zYWN0aW9uXG4gICAqXG4gICAqIEBwYXJhbSB7S2V5UGFpcn0gc2lnbmVyIGtleVxuICAgKi9cblxuICBzaWduKHNpZ25lcjogS2V5UGFpcik6IHZvaWQge1xuICAgIGlmICghdGhpcy5fc3VpVHJhbnNhY3Rpb24pIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcignZW1wdHkgdHJhbnNhY3Rpb24gdG8gc2lnbicpO1xuICAgIH1cblxuICAgIGNvbnN0IGludGVudE1lc3NhZ2UgPSB0aGlzLnNpZ25hYmxlUGF5bG9hZDtcbiAgICBjb25zdCBzaWduYXR1cmUgPSBzaWduZXIuc2lnbk1lc3NhZ2VpblVpbnQ4QXJyYXkoaW50ZW50TWVzc2FnZSk7XG5cbiAgICB0aGlzLnNldFNlcmlhbGl6ZWRTaWcoeyBwdWI6IHNpZ25lci5nZXRLZXlzKCkucHViIH0sIEJ1ZmZlci5mcm9tKHNpZ25hdHVyZSkpO1xuICAgIHRoaXMuYWRkU2lnbmF0dXJlKHsgcHViOiBzaWduZXIuZ2V0S2V5cygpLnB1YiB9LCBCdWZmZXIuZnJvbShzaWduYXR1cmUpKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB0b0Jyb2FkY2FzdEZvcm1hdCgpOiBzdHJpbmcge1xuICAgIGlmICghdGhpcy5fc3VpVHJhbnNhY3Rpb24pIHtcbiAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcignRW1wdHkgdHJhbnNhY3Rpb24nKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMuc2VyaWFsaXplKCk7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgYWJzdHJhY3QgdG9Kc29uKCk6IFR4RGF0YTtcblxuICAvKipcbiAgICogU2V0IHRoZSB0cmFuc2FjdGlvbiB0eXBlLlxuICAgKlxuICAgKiBAcGFyYW0ge1RyYW5zYWN0aW9uVHlwZX0gdHJhbnNhY3Rpb25UeXBlIFRoZSB0cmFuc2FjdGlvbiB0eXBlIHRvIGJlIHNldC5cbiAgICovXG4gIHRyYW5zYWN0aW9uVHlwZSh0cmFuc2FjdGlvblR5cGU6IEJpdEdvVHJhbnNhY3Rpb25UeXBlKTogdm9pZCB7XG4gICAgdGhpcy5fdHlwZSA9IHRyYW5zYWN0aW9uVHlwZTtcbiAgfVxuXG4gIC8qKlxuICAgKiAgZ2V0IHRoZSBjb3JyZWN0IHR4RGF0YSB3aXRoIHRyYW5zYWN0aW9uIHR5cGVcbiAgICovXG4gIGFic3RyYWN0IGdldFR4RGF0YSgpOiBUeERhdGE7XG5cbiAgLyoqXG4gICAqIExvYWQgdGhlIGlucHV0IGFuZCBvdXRwdXQgZGF0YSBvbiB0aGlzIHRyYW5zYWN0aW9uLlxuICAgKi9cbiAgYWJzdHJhY3QgbG9hZElucHV0c0FuZE91dHB1dHMoKTogdm9pZDtcblxuICAvKipcbiAgICogU2V0cyB0aGlzIHRyYW5zYWN0aW9uIHBheWxvYWRcbiAgICpcbiAgICogQHBhcmFtIHJhd1RyYW5zYWN0aW9uXG4gICAqL1xuICBhYnN0cmFjdCBmcm9tUmF3VHJhbnNhY3Rpb24ocmF3VHJhbnNhY3Rpb246IHN0cmluZyk6IHZvaWQ7XG5cbiAgZ2V0RGF0YUJ5dGVzKCk6IFVpbnQ4QXJyYXkge1xuICAgIGNvbnN0IHR4RGF0YSA9IHRoaXMuZ2V0VHhEYXRhKCk7XG4gICAgY29uc3QgdHhTZXIgPSBidWlsZGVyLnNlcignVHJhbnNhY3Rpb25EYXRhJywgeyBWMTogdHhEYXRhIH0sIHsgbWF4U2l6ZTogVFJBTlNBQ1RJT05fREFUQV9NQVhfU0laRSB9KTtcbiAgICByZXR1cm4gdHhTZXIudG9CeXRlcygpO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0RG9jICovXG4gIGdldCBzaWduYWJsZVBheWxvYWQoKTogQnVmZmVyIHtcbiAgICBjb25zdCBkYXRhQnl0ZXMgPSB0aGlzLmdldERhdGFCeXRlcygpO1xuICAgIGNvbnN0IGludGVudE1lc3NhZ2UgPSB0aGlzLm1lc3NhZ2VXaXRoSW50ZW50KEludGVudFNjb3BlLlRyYW5zYWN0aW9uRGF0YSwgZGF0YUJ5dGVzKTtcbiAgICByZXR1cm4gQnVmZmVyLmZyb20oYmxha2UyYigzMikudXBkYXRlKGludGVudE1lc3NhZ2UpLmRpZ2VzdCgnYmluYXJ5JykpO1xuICB9XG5cbiAgcHJpdmF0ZSBtZXNzYWdlV2l0aEludGVudChzY29wZTogSW50ZW50U2NvcGUsIG1lc3NhZ2U6IFVpbnQ4QXJyYXkpIHtcbiAgICBjb25zdCBpbnRlbnQgPSB0aGlzLmludGVudFdpdGhTY29wZShzY29wZSk7XG4gICAgY29uc3QgaW50ZW50TWVzc2FnZSA9IG5ldyBVaW50OEFycmF5KGludGVudC5sZW5ndGggKyBtZXNzYWdlLmxlbmd0aCk7XG4gICAgaW50ZW50TWVzc2FnZS5zZXQoaW50ZW50KTtcbiAgICBpbnRlbnRNZXNzYWdlLnNldChtZXNzYWdlLCBpbnRlbnQubGVuZ3RoKTtcbiAgICByZXR1cm4gaW50ZW50TWVzc2FnZTtcbiAgfVxuXG4gIHByaXZhdGUgaW50ZW50V2l0aFNjb3BlKHNjb3BlOiBJbnRlbnRTY29wZSk6IEludGVudCB7XG4gICAgcmV0dXJuIFtzY29wZSwgSW50ZW50VmVyc2lvbi5WMCwgQXBwSWQuU3VpXTtcbiAgfVxuXG4gIHNlcmlhbGl6ZSgpOiBzdHJpbmcge1xuICAgIGNvbnN0IGRhdGFCeXRlcyA9IHRoaXMuZ2V0RGF0YUJ5dGVzKCk7XG4gICAgdGhpcy5faWQgPSBiczU4LmVuY29kZShoYXNoVHlwZWREYXRhKCdUcmFuc2FjdGlvbkRhdGEnLCBkYXRhQnl0ZXMpKTtcbiAgICByZXR1cm4gdG9CNjQoZGF0YUJ5dGVzKTtcbiAgfVxuXG4gIHN0YXRpYyBkZXNlcmlhbGl6ZVN1aVRyYW5zYWN0aW9uKHNlcmlhbGl6ZWRUeDogc3RyaW5nKTogU3VpVHJhbnNhY3Rpb248U3VpUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb24+IHtcbiAgICBjb25zdCBkYXRhID0gZnJvbUI2NChzZXJpYWxpemVkVHgpO1xuICAgIGNvbnN0IHRyYW5zYWN0aW9uQmxvY2sgPSBUcmFuc2FjdGlvbkJsb2NrRGF0YUJ1aWxkZXIuZnJvbUJ5dGVzKGRhdGEpO1xuICAgIGNvbnN0IGlucHV0cyA9IHRyYW5zYWN0aW9uQmxvY2suaW5wdXRzLm1hcCgodHhJbnB1dCkgPT4gdHhJbnB1dC52YWx1ZSk7XG4gICAgY29uc3QgdHJhbnNhY3Rpb25zID0gdHJhbnNhY3Rpb25CbG9jay50cmFuc2FjdGlvbnM7XG4gICAgY29uc3QgdHhUeXBlID0gdGhpcy5nZXRTdWlUcmFuc2FjdGlvblR5cGUodHJhbnNhY3Rpb25zKTtcbiAgICByZXR1cm4ge1xuICAgICAgaWQ6IHRyYW5zYWN0aW9uQmxvY2suZ2V0RGlnZXN0KCksXG4gICAgICB0eXBlOiB0eFR5cGUsXG4gICAgICBzZW5kZXI6IG5vcm1hbGl6ZVN1aUFkZHJlc3ModHJhbnNhY3Rpb25CbG9jay5zZW5kZXIhKSxcbiAgICAgIHR4OiB7XG4gICAgICAgIGlucHV0czogaW5wdXRzLFxuICAgICAgICB0cmFuc2FjdGlvbnM6IHRyYW5zYWN0aW9ucyxcbiAgICAgIH0sXG4gICAgICBnYXNEYXRhOiB7XG4gICAgICAgIHBheW1lbnQ6IHRoaXMubm9ybWFsaXplQ29pbnModHJhbnNhY3Rpb25CbG9jay5nYXNDb25maWcucGF5bWVudCEpLFxuICAgICAgICBvd25lcjogbm9ybWFsaXplU3VpQWRkcmVzcyh0cmFuc2FjdGlvbkJsb2NrLmdhc0NvbmZpZy5vd25lciEpLFxuICAgICAgICBwcmljZTogTnVtYmVyKHRyYW5zYWN0aW9uQmxvY2suZ2FzQ29uZmlnLnByaWNlIGFzIHN0cmluZyksXG4gICAgICAgIGJ1ZGdldDogTnVtYmVyKHRyYW5zYWN0aW9uQmxvY2suZ2FzQ29uZmlnLmJ1ZGdldCBhcyBzdHJpbmcpLFxuICAgICAgfSxcbiAgICB9O1xuICB9XG5cbiAgcHJpdmF0ZSBzdGF0aWMgZ2V0U3VpVHJhbnNhY3Rpb25UeXBlKHRyYW5zYWN0aW9uczogVHJhbnNhY3Rpb25UeXBlW10pOiBTdWlUcmFuc2FjdGlvblR5cGUge1xuICAgIC8vIHRyaWNreSB0byBkZXRlcm1pbmUgY3VzdG9tIHR4IHB1cmVseSBmcm9tIGEgc2VyaWFsaXplZCB0eCwgd2UgY2FuIHJlbHkgb24gZm9sbG93aW5nIGxvZ2ljXG4gICAgaWYgKHRyYW5zYWN0aW9ucy5sZW5ndGggPT0gMSkge1xuICAgICAgcmV0dXJuIHV0aWxzLmdldFN1aVRyYW5zYWN0aW9uVHlwZSh0cmFuc2FjdGlvbnNbMF0pO1xuICAgIH1cbiAgICBpZiAodHJhbnNhY3Rpb25zLnNvbWUoKHR4KSA9PiB1dGlscy5nZXRTdWlUcmFuc2FjdGlvblR5cGUodHgpID09PSBTdWlUcmFuc2FjdGlvblR5cGUuV2FscnVzU3Rha2VXaXRoUG9vbCkpIHtcbiAgICAgIHJldHVybiBTdWlUcmFuc2FjdGlvblR5cGUuV2FscnVzU3Rha2VXaXRoUG9vbDtcbiAgICB9XG4gICAgaWYgKHRyYW5zYWN0aW9ucy5zb21lKCh0eCkgPT4gdXRpbHMuZ2V0U3VpVHJhbnNhY3Rpb25UeXBlKHR4KSA9PT0gU3VpVHJhbnNhY3Rpb25UeXBlLldhbHJ1c1JlcXVlc3RXaXRoZHJhd1N0YWtlKSkge1xuICAgICAgcmV0dXJuIFN1aVRyYW5zYWN0aW9uVHlwZS5XYWxydXNSZXF1ZXN0V2l0aGRyYXdTdGFrZTtcbiAgICB9XG4gICAgaWYgKHRyYW5zYWN0aW9ucy5zb21lKCh0eCkgPT4gdXRpbHMuZ2V0U3VpVHJhbnNhY3Rpb25UeXBlKHR4KSA9PT0gU3VpVHJhbnNhY3Rpb25UeXBlLldhbHJ1c1dpdGhkcmF3U3Rha2UpKSB7XG4gICAgICByZXR1cm4gU3VpVHJhbnNhY3Rpb25UeXBlLldhbHJ1c1dpdGhkcmF3U3Rha2U7XG4gICAgfVxuICAgIGlmICh0cmFuc2FjdGlvbnMuc29tZSgodHgpID0+IHV0aWxzLmdldFN1aVRyYW5zYWN0aW9uVHlwZSh0eCkgPT09IFN1aVRyYW5zYWN0aW9uVHlwZS5BZGRTdGFrZSkpIHtcbiAgICAgIHJldHVybiBTdWlUcmFuc2FjdGlvblR5cGUuQWRkU3Rha2U7XG4gICAgfVxuICAgIGlmICh0cmFuc2FjdGlvbnMuc29tZSgodHgpID0+IHV0aWxzLmdldFN1aVRyYW5zYWN0aW9uVHlwZSh0eCkgPT09IFN1aVRyYW5zYWN0aW9uVHlwZS5XaXRoZHJhd1N0YWtlKSkge1xuICAgICAgcmV0dXJuIFN1aVRyYW5zYWN0aW9uVHlwZS5XaXRoZHJhd1N0YWtlO1xuICAgIH1cbiAgICBpZiAodHJhbnNhY3Rpb25zLnNvbWUoKHR4KSA9PiB1dGlscy5nZXRTdWlUcmFuc2FjdGlvblR5cGUodHgpID09PSBTdWlUcmFuc2FjdGlvblR5cGUuVG9rZW5UcmFuc2ZlcikpIHtcbiAgICAgIHJldHVybiBTdWlUcmFuc2FjdGlvblR5cGUuVG9rZW5UcmFuc2ZlcjtcbiAgICB9XG4gICAgaWYgKHRyYW5zYWN0aW9ucy5ldmVyeSgodHgpID0+IHV0aWxzLmdldFN1aVRyYW5zYWN0aW9uVHlwZSh0eCkgPT09IFN1aVRyYW5zYWN0aW9uVHlwZS5UcmFuc2ZlcikpIHtcbiAgICAgIHJldHVybiBTdWlUcmFuc2FjdGlvblR5cGUuVHJhbnNmZXI7XG4gICAgfVxuXG4gICAgcmV0dXJuIFN1aVRyYW5zYWN0aW9uVHlwZS5DdXN0b21UeDtcbiAgfVxuXG4gIHN0YXRpYyBnZXRQcm9wZXJHYXNEYXRhKGs6IGFueSk6IEdhc0RhdGEge1xuICAgIHJldHVybiB7XG4gICAgICBwYXltZW50OiBbdGhpcy5ub3JtYWxpemVTdWlPYmplY3RSZWYoay5nYXNEYXRhLnBheW1lbnQpXSxcbiAgICAgIG93bmVyOiB1dGlscy5ub3JtYWxpemVIZXhJZChrLmdhc0RhdGEub3duZXIpLFxuICAgICAgcHJpY2U6IE51bWJlcihrLmdhc0RhdGEucHJpY2UpLFxuICAgICAgYnVkZ2V0OiBOdW1iZXIoay5nYXNEYXRhLmJ1ZGdldCksXG4gICAgfTtcbiAgfVxuXG4gIHByaXZhdGUgc3RhdGljIG5vcm1hbGl6ZUNvaW5zKGNvaW5zOiBhbnlbXSk6IFN1aU9iamVjdFJlZltdIHtcbiAgICByZXR1cm4gY29pbnMubWFwKChjb2luKSA9PiB7XG4gICAgICByZXR1cm4gdGhpcy5ub3JtYWxpemVTdWlPYmplY3RSZWYoY29pbik7XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIHN0YXRpYyBub3JtYWxpemVTdWlPYmplY3RSZWYob2JqOiBTdWlPYmplY3RSZWYpOiBTdWlPYmplY3RSZWYge1xuICAgIHJldHVybiB7XG4gICAgICBvYmplY3RJZDogbm9ybWFsaXplU3VpT2JqZWN0SWQob2JqLm9iamVjdElkKSxcbiAgICAgIHZlcnNpb246IE51bWJlcihvYmoudmVyc2lvbiksXG4gICAgICBkaWdlc3Q6IG9iai5kaWdlc3QsXG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBXaGVuIGJ1aWxkaW5nIHRyYW5zYWN0aW9ucyB3aXRoID4gMjU1IGlucHV0IGdhcyBwYXltZW50IG9iamVjdHMsIHdlIGZpcnN0IHVzZSBNZXJnZUNvaW5zIFRyYW5hc2FjdGlvbnMgdG8gbWVyZ2UgdGhlXG4gICAqIGFkZGl0aW9uYWwgaW5wdXRzIGludG8gdGhlIGdhcyBjb2luICYgc2xpY2UgdGhlbSBmcm9tIHRoZSBwYXltZW50IGluIGdhc0RhdGEuIFdoZW4gaW5pdGlhbGl6aW5nIHRoZSBidWlsZGVyIHVzaW5nXG4gICAqIGRlY29kZWQgdHggZGF0YSwgd2UgbmVlZCB0byBnZXQgdGhlc2UgaW5wdXRzIGZyb20gTWVyZ2VDb2lucyAmIGFkZCB0aGVtIGJhY2sgdG8gdGhlIGdhcyBwYXltZW50IHRvIGJlIGFibGUgdG9cbiAgICogcmVidWlsZCBmcm9tIGEgcmF3IHRyYW5zYWN0aW9uLlxuICAgKi9cbiAgcHJvdGVjdGVkIGdldElucHV0R2FzUGF5bWVudE9iamVjdHNGcm9tVHgodHg6IFN1aVByb2dyYW1tYWJsZVRyYW5zYWN0aW9uKTogU3VpT2JqZWN0UmVmW10ge1xuICAgIGNvbnN0IHR4SW5wdXRzID0gdHguaW5wdXRzO1xuICAgIGNvbnN0IHRyYW5zYWN0aW9ucyA9IHR4LnRyYW5zYWN0aW9ucztcbiAgICBjb25zdCBpbnB1dEdhc1BheW1lbnRPYmplY3RzOiBTdWlPYmplY3RSZWZbXSA9IFtdO1xuXG4gICAgdHJhbnNhY3Rpb25zLmZvckVhY2goKHRyYW5zYWN0aW9uKSA9PiB7XG4gICAgICBpZiAodHJhbnNhY3Rpb24ua2luZCA9PT0gJ01lcmdlQ29pbnMnKSB7XG4gICAgICAgIGNvbnN0IHsgZGVzdGluYXRpb24sIHNvdXJjZXMgfSA9IHRyYW5zYWN0aW9uIGFzIE1lcmdlQ29pbnNUcmFuc2FjdGlvbjtcbiAgICAgICAgaWYgKGRlc3RpbmF0aW9uLmtpbmQgPT09ICdHYXNDb2luJykge1xuICAgICAgICAgIHNvdXJjZXMuZm9yRWFjaCgoc291cmNlKSA9PiB7XG4gICAgICAgICAgICBpZiAoc291cmNlLmtpbmQgPT09ICdJbnB1dCcpIHtcbiAgICAgICAgICAgICAgbGV0IGlucHV0ID0gdHhJbnB1dHNbc291cmNlLmluZGV4XTtcbiAgICAgICAgICAgICAgaWYgKCd2YWx1ZScgaW4gaW5wdXQpIHtcbiAgICAgICAgICAgICAgICBpbnB1dCA9IGlucHV0LnZhbHVlO1xuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIGlmICgnT2JqZWN0JyBpbiBpbnB1dCAmJiBpc0ltbU9yT3duZWRPYmooaW5wdXQuT2JqZWN0KSkge1xuICAgICAgICAgICAgICAgIGlucHV0R2FzUGF5bWVudE9iamVjdHMucHVzaChpbnB1dC5PYmplY3QuSW1tT3JPd25lZCk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pO1xuXG4gICAgcmV0dXJuIGlucHV0R2FzUGF5bWVudE9iamVjdHM7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,12 +1,11 @@
|
|
|
1
|
-
/// <reference types="node" />
|
|
2
1
|
import { BaseAddress, BaseKey, BaseTransactionBuilder, PublicKey as BasePublicKey, Recipient, Signature, TransactionType } from '@bitgo-beta/sdk-core';
|
|
3
2
|
import { Transaction } from './transaction';
|
|
4
3
|
import BigNumber from 'bignumber.js';
|
|
5
4
|
import { BaseCoin as CoinConfig } from '@bitgo-beta/statics';
|
|
6
|
-
import {
|
|
5
|
+
import { SuiProgrammableTransaction, SuiTransactionType } from './iface';
|
|
7
6
|
import { KeyPair } from './keyPair';
|
|
8
7
|
import { GasData, SuiObjectRef } from './mystenlab/types';
|
|
9
|
-
export declare abstract class TransactionBuilder<T =
|
|
8
|
+
export declare abstract class TransactionBuilder<T = SuiProgrammableTransaction> extends BaseTransactionBuilder {
|
|
10
9
|
protected _transaction: Transaction<T>;
|
|
11
10
|
protected _signatures: Signature[];
|
|
12
11
|
protected _signer: KeyPair;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transactionBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/transactionBuilder.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"transactionBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/transactionBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,OAAO,EACP,sBAAsB,EAGtB,SAAS,IAAI,aAAa,EAC1B,SAAS,EACT,SAAS,EACT,eAAe,EAChB,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,SAAS,MAAM,cAAc,CAAC;AACrC,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,0BAA0B,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAEzE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAE1D,8BAAsB,kBAAkB,CAAC,CAAC,GAAG,0BAA0B,CAAE,SAAQ,sBAAsB;IACrG,SAAS,CAAC,YAAY,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;IACvC,SAAS,CAAC,WAAW,EAAE,SAAS,EAAE,CAAM;IACxC,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC;IAE3B,SAAS,CAAC,KAAK,EAAE,kBAAkB,CAAC;IACpC,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC;IAC1B,SAAS,CAAC,QAAQ,EAAE,OAAO,CAAC;IAE5B,SAAS,aAAa,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAKvD;;OAEG;IACH,SAAS,CAAC,QAAQ,KAAK,eAAe,IAAI,eAAe,CAAC;IAE1D,kBAAkB;IAClB,SAAS,KAAK,WAAW,IAAI,WAAW,CAAC,CAAC,CAAC,CAE1C;IAED,kBAAkB;IAClB,SAAS,KAAK,WAAW,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC,EAEpD;IAED,kBAAkB;IAClB,SAAS,CAAC,kBAAkB,CAAC,GAAG,EAAE,OAAO,GAAG,WAAW,CAAC,CAAC,CAAC;IAO1D,kBAAkB;IAClB,YAAY,CAAC,SAAS,EAAE,aAAa,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;IAM/D;;;;;;OAMG;IACH,MAAM,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI;IAMnC,IAAI,CAAC,IAAI,EAAE,kBAAkB,GAAG,IAAI;IAKpC,OAAO,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAM/B;;;;OAIG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,IAAI;IAG9C,kBAAkB;IAClB,eAAe,CAAC,OAAO,EAAE,WAAW,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI;IAMnE,kBAAkB,CAAC,UAAU,EAAE,SAAS,EAAE,GAAG,IAAI;IAWjD,eAAe,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IASvC,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAM1C,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAOxC,kBAAkB,CAAC,QAAQ,EAAE,YAAY,EAAE,GAAG,IAAI;IAOlD,oBAAoB,CAAC,YAAY,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAYrE,kBAAkB;IAClB,WAAW,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI;IAQ/B,kBAAkB;IAClB,sBAAsB,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI;IASpD,kBAAkB;IAClB,aAAa,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;CAMtC"}
|
|
@@ -64,10 +64,10 @@ class TransactionBuilder extends sdk_core_1.BaseTransactionBuilder {
|
|
|
64
64
|
}
|
|
65
65
|
}
|
|
66
66
|
validateRecipients(recipients) {
|
|
67
|
-
assert_1.default(recipients && recipients.length > 0, new sdk_core_1.BuildTransactionError('at least one recipient is required before building'));
|
|
67
|
+
(0, assert_1.default)(recipients && recipients.length > 0, new sdk_core_1.BuildTransactionError('at least one recipient is required before building'));
|
|
68
68
|
recipients.forEach((recipient) => {
|
|
69
69
|
utils_1.default.validateAddress(recipient.address, 'address');
|
|
70
|
-
assert_1.default(utils_1.default.isValidAmount(recipient.amount), 'Invalid recipient amount');
|
|
70
|
+
(0, assert_1.default)(utils_1.default.isValidAmount(recipient.amount), 'Invalid recipient amount');
|
|
71
71
|
});
|
|
72
72
|
}
|
|
73
73
|
validateGasData(gasData) {
|
|
@@ -90,7 +90,7 @@ class TransactionBuilder extends sdk_core_1.BaseTransactionBuilder {
|
|
|
90
90
|
}
|
|
91
91
|
}
|
|
92
92
|
validateGasPayment(payments) {
|
|
93
|
-
assert_1.default(payments && payments.length > 0, new sdk_core_1.BuildTransactionError('gas payment is required before building'));
|
|
93
|
+
(0, assert_1.default)(payments && payments.length > 0, new sdk_core_1.BuildTransactionError('gas payment is required before building'));
|
|
94
94
|
payments.forEach((payment) => {
|
|
95
95
|
this.validateSuiObjectRef(payment, 'payment');
|
|
96
96
|
});
|
|
@@ -132,4 +132,4 @@ class TransactionBuilder extends sdk_core_1.BaseTransactionBuilder {
|
|
|
132
132
|
}
|
|
133
133
|
}
|
|
134
134
|
exports.TransactionBuilder = TransactionBuilder;
|
|
135
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb25CdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi90cmFuc2FjdGlvbkJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsbURBVThCO0FBQzlCLG9EQUE0QjtBQUU1QixvREFBNEI7QUFJNUIsMkNBQWtEO0FBQ2xELHVDQUFvQztBQUdwQyxNQUFzQixrQkFFcEIsU0FBUSxpQ0FBc0I7SUFTOUIsWUFBc0IsV0FBaUM7UUFDckQsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBUlgsZ0JBQVcsR0FBZ0IsRUFBRSxDQUFDO0lBU3hDLENBQUM7SUFRRCxrQkFBa0I7SUFDbEIsSUFBYyxXQUFXO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQztJQUMzQixDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLElBQWMsV0FBVyxDQUFDLFdBQTJCO1FBQ25ELElBQUksQ0FBQyxZQUFZLEdBQUcsV0FBVyxDQUFDO0lBQ2xDLENBQUM7SUFFRCxrQkFBa0I7SUFDUixrQkFBa0IsQ0FBQyxHQUFZO1FBQ3ZDLE1BQU0sTUFBTSxHQUFHLElBQUksaUJBQU8sQ0FBQyxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQztRQUM3QyxJQUFJLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQztRQUN0QixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM5QixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDMUIsQ0FBQztJQUVELGtCQUFrQjtJQUNsQixZQUFZLENBQUMsU0FBd0IsRUFBRSxTQUFpQjtRQUN0RCxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDO1FBQ2hELElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxDQUFDLFNBQVMsRUFBRSxTQUFTLENBQUMsQ0FB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QUFJLEtBQUssQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDdkIsTUFBTSxJQUFJLGdDQUFxQixDQUFDLGdDQUFnQyxDQUFDLENBQUM7U0FDbkU7SUFDSCxDQUFDO0NBRUY7QUFuS0QsZ0RBbUtDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQmFzZUFkZHJlc3MsXG4gIEJhc2VLZXksXG4gIEJhc2VUcmFuc2FjdGlvbkJ1aWxkZXIsXG4gIEJ1aWxkVHJhbnNhY3Rpb25FcnJvcixcbiAgUGFyc2VUcmFuc2FjdGlvbkVycm9yLFxuICBQdWJsaWNLZXkgYXMgQmFzZVB1YmxpY0tleSxcbiAgUmVjaXBpZW50LFxuICBTaWduYXR1cmUsXG4gIFRyYW5zYWN0aW9uVHlwZSxcbn0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuaW1wb3J0IGFzc2VydCBmcm9tICdhc3NlcnQnO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb24gfSBmcm9tICcuL3RyYW5zYWN0aW9uJztcbmltcG9ydCB1dGlscyBmcm9tICcuL3V0aWxzJztcbmltcG9ydCBCaWdOdW1iZXIgZnJvbSAnYmlnbnVtYmVyLmpzJztcbmltcG9ydCB7IEJhc2VDb2luIGFzIENvaW5Db25maWcgfSBmcm9tICdAYml0Z28tYmV0YS9zdGF0aWNzJztcbmltcG9ydCB7IFN0YWtpbmdQcm9ncmFtbWFibGVUcmFuc2FjdGlvbiwgU3VpVHJhbnNhY3Rpb25UeXBlLCBUcmFuc2ZlclByb2dyYW1tYWJsZVRyYW5zYWN0aW9uIH0gZnJvbSAnLi9pZmFjZSc7XG5pbXBvcnQgeyBEVU1NWV9TVUlfR0FTX1BSSUNFIH0gZnJvbSAnLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgS2V5UGFpciB9IGZyb20gJy4va2V5UGFpcic7XG5pbXBvcnQgeyBHYXNEYXRhLCBTdWlPYmplY3RSZWYgfSBmcm9tICcuL215c3RlbmxhYi90eXBlcyc7XG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBUcmFuc2FjdGlvbkJ1aWxkZXI8XG4gIFQgPSBUcmFuc2ZlclByb2dyYW1tYWJsZVRyYW5zYWN0aW9uIHwgU3Rha2luZ1Byb2dyYW1tYWJsZVRyYW5zYWN0aW9uXG4+IGV4dGVuZHMgQmFzZVRyYW5zYWN0aW9uQnVpbGRlciB7XG4gIHByb3RlY3RlZCBfdHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uPFQ+O1xuICBwcm90ZWN0ZWQgX3NpZ25hdHVyZXM6IFNpZ25hdHVyZVtdID0gW107XG4gIHByb3RlY3RlZCBfc2lnbmVyOiBLZXlQYWlyO1xuXG4gIHByb3RlY3RlZCBfdHlwZTogU3VpVHJhbnNhY3Rpb25UeXBlO1xuICBwcm90ZWN0ZWQgX3NlbmRlcjogc3RyaW5nO1xuICBwcm90ZWN0ZWQgX2dhc0RhdGE6IEdhc0RhdGE7XG5cbiAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKF9jb2luQ29uZmlnOiBSZWFkb25seTxDb2luQ29uZmlnPikge1xuICAgIHN1cGVyKF9jb2luQ29uZmlnKTtcbiAgfVxuXG4gIC8vIGdldCBhbmQgc2V0IHJlZ2lvblxuICAvKipcbiAgICogVGhlIHRyYW5zYWN0aW9uIHR5cGUuXG4gICAqL1xuICBwcm90ZWN0ZWQgYWJzdHJhY3QgZ2V0IHRyYW5zYWN0aW9uVHlwZSgpOiBUcmFuc2FjdGlvblR5cGU7XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHByb3RlY3RlZCBnZXQgdHJhbnNhY3Rpb24oKTogVHJhbnNhY3Rpb248VD4ge1xuICAgIHJldHVybiB0aGlzLl90cmFuc2FjdGlvbjtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBwcm90ZWN0ZWQgc2V0IHRyYW5zYWN0aW9uKHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbjxUPikge1xuICAgIHRoaXMuX3RyYW5zYWN0aW9uID0gdHJhbnNhY3Rpb247XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgcHJvdGVjdGVkIHNpZ25JbXBsZW1lbnRhdGlvbihrZXk6IEJhc2VLZXkpOiBUcmFuc2FjdGlvbjxUPiB7XG4gICAgY29uc3Qgc2lnbmVyID0gbmV3IEtleVBhaXIoeyBwcnY6IGtleS5rZXkgfSk7XG4gICAgdGhpcy5fc2lnbmVyID0gc2lnbmVyO1xuICAgIHRoaXMudHJhbnNhY3Rpb24uc2lnbihzaWduZXIpO1xuICAgIHJldHVybiB0aGlzLnRyYW5zYWN0aW9uO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0RG9jICovXG4gIGFkZFNpZ25hdHVyZShwdWJsaWNLZXk6IEJhc2VQdWJsaWNLZXksIHNpZ25hdHVyZTogQnVmZmVyKTogdm9pZCB7XG4gICAgdGhpcy5fc2lnbmF0dXJlcy5wdXNoKHsgcHVibGljS2V5LCBzaWduYXR1cmUgfSk7XG4gICAgdGhpcy50cmFuc2FjdGlvbi5hZGRTaWduYXR1cmUocHVibGljS2V5LCBzaWduYXR1cmUpO1xuICAgIHRoaXMudHJhbnNhY3Rpb24uc2V0U2VyaWFsaXplZFNpZyhwdWJsaWNLZXksIHNpZ25hdHVyZSk7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgc2VuZGVyIG9mIHRoaXMgdHJhbnNhY3Rpb24uXG4gICAqIFRoaXMgYWNjb3VudCB3aWxsIGJlIHJlc3BvbnNpYmxlIGZvciBwYXlpbmcgdHJhbnNhY3Rpb24gZmVlcy5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IHNlbmRlckFkZHJlc3MgdGhlIGFjY291bnQgdGhhdCBpcyBzZW5kaW5nIHRoaXMgdHJhbnNhY3Rpb25cbiAgICogQHJldHVybnMge1RyYW5zYWN0aW9uQnVpbGRlcn0gVGhpcyB0cmFuc2FjdGlvbiBidWlsZGVyXG4gICAqL1xuICBzZW5kZXIoc2VuZGVyQWRkcmVzczogc3RyaW5nKTogdGhpcyB7XG4gICAgdXRpbHMudmFsaWRhdGVBZGRyZXNzKHNlbmRlckFkZHJlc3MsICdzZW5kZXInKTtcbiAgICB0aGlzLl9zZW5kZXIgPSBzZW5kZXJBZGRyZXNzO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgdHlwZSh0eXBlOiBTdWlUcmFuc2FjdGlvblR5cGUpOiB0aGlzIHtcbiAgICB0aGlzLl90eXBlID0gdHlwZTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIGdhc0RhdGEoZ2FzRGF0YTogR2FzRGF0YSk6IHRoaXMge1xuICAgIHRoaXMudmFsaWRhdGVHYXNEYXRhKGdhc0RhdGEpO1xuICAgIHRoaXMuX2dhc0RhdGEgPSBnYXNEYXRhO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIEluaXRpYWxpemUgdGhlIHRyYW5zYWN0aW9uIGJ1aWxkZXIgZmllbGRzIHVzaW5nIHRoZSBkZWNvZGVkIHRyYW5zYWN0aW9uIGRhdGFcbiAgICpcbiAgICogQHBhcmFtIHtUcmFuc2FjdGlvbn0gdHggdGhlIHRyYW5zYWN0aW9uIGRhdGFcbiAgICovXG4gIGFic3RyYWN0IGluaXRCdWlsZGVyKHR4OiBUcmFuc2FjdGlvbjxUPik6IHZvaWQ7XG5cbiAgLy8gcmVnaW9uIFZhbGlkYXRvcnNcbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHZhbGlkYXRlQWRkcmVzcyhhZGRyZXNzOiBCYXNlQWRkcmVzcywgYWRkcmVzc0Zvcm1hdD86IHN0cmluZyk6IHZvaWQge1xuICAgIGlmICghdXRpbHMuaXNWYWxpZEFkZHJlc3MoYWRkcmVzcy5hZGRyZXNzKSkge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignSW52YWxpZCBhZGRyZXNzICcgKyBhZGRyZXNzLmFkZHJlc3MpO1xuICAgIH1cbiAgfVxuXG4gIHZhbGlkYXRlUmVjaXBpZW50cyhyZWNpcGllbnRzOiBSZWNpcGllbnRbXSk6IHZvaWQge1xuICAgIGFzc2VydChcbiAgICAgIHJlY2lwaWVudHMgJiYgcmVjaXBpZW50cy5sZW5ndGggPiAwLFxuICAgICAgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignYXQgbGVhc3Qgb25lIHJlY2lwaWVudCBpcyByZXF1aXJlZCBiZWZvcmUgYnVpbGRpbmcnKVxuICAgICk7XG4gICAgcmVjaXBpZW50cy5mb3JFYWNoKChyZWNpcGllbnQpID0+IHtcbiAgICAgIHV0aWxzLnZhbGlkYXRlQWRkcmVzcyhyZWNpcGllbnQuYWRkcmVzcywgJ2FkZHJlc3MnKTtcbiAgICAgIGFzc2VydCh1dGlscy5pc1ZhbGlkQW1vdW50KHJlY2lwaWVudC5hbW91bnQpLCAnSW52YWxpZCByZWNpcGllbnQgYW1vdW50Jyk7XG4gICAgfSk7XG4gIH1cblxuICB2YWxpZGF0ZUdhc0RhdGEoZ2FzRGF0YTogR2FzRGF0YSk6IHZvaWQge1xuICAgIGlmICghdXRpbHMuaXNWYWxpZEFkZHJlc3MoZ2FzRGF0YS5vd25lcikpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ0ludmFsaWQgZ2FzIGFkZHJlc3MgJyArIGdhc0RhdGEub3duZXIpO1xuICAgIH1cbiAgICB0aGlzLnZhbGlkYXRlR2FzUGF5bWVudChnYXNEYXRhLnBheW1lbnQpO1xuICAgIHRoaXMudmFsaWRhdGVHYXNCdWRnZXQoZ2FzRGF0YS5idWRnZXQpO1xuICAgIHRoaXMudmFsaWRhdGVHYXNQcmljZShnYXNEYXRhLnByaWNlKTtcbiAgfVxuXG4gIHZhbGlkYXRlR2FzQnVkZ2V0KGdhc0J1ZGdldDogbnVtYmVyKTogdm9pZCB7XG4gICAgaWYgKGdhc0J1ZGdldCA8PSAwKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdJbnZhbGlkIGdhcyBidWRnZXQgJyArIGdhc0J1ZGdldCk7XG4gICAgfVxuICB9XG5cbiAgdmFsaWRhdGVHYXNQcmljZShnYXNQcmljZTogbnVtYmVyKTogdm9pZCB7XG4gICAgLy8gVE9ETzogY2hlY2sgd2l0aCBTdWkgb24gdGhlIGdhcyBwcmljZVxuICAgIGlmIChnYXNQcmljZSAhPT0gRFVNTVlfU1VJX0dBU19QUklDRSkge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignSW52YWxpZCBnYXMgcHJpY2UgJyArIGdhc1ByaWNlKTtcbiAgICB9XG4gIH1cblxuICB2YWxpZGF0ZUdhc1BheW1lbnQocGF5bWVudHM6IFN1aU9iamVjdFJlZltdKTogdm9pZCB7XG4gICAgYXNzZXJ0KHBheW1lbnRzICYmIHBheW1lbnRzLmxlbmd0aCA+IDAsIG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ2dhcyBwYXltZW50IGlzIHJlcXVpcmVkIGJlZm9yZSBidWlsZGluZycpKTtcbiAgICBwYXltZW50cy5mb3JFYWNoKChwYXltZW50KSA9PiB7XG4gICAgICB0aGlzLnZhbGlkYXRlU3VpT2JqZWN0UmVmKHBheW1lbnQsICdwYXltZW50Jyk7XG4gICAgfSk7XG4gIH1cblxuICB2YWxpZGF0ZVN1aU9iamVjdFJlZihzdWlPYmplY3RSZWY6IFN1aU9iamVjdFJlZiwgZmllbGQ6IHN0cmluZyk6IHZvaWQge1xuICAgIGlmICghc3VpT2JqZWN0UmVmLmhhc093blByb3BlcnR5KCdvYmplY3RJZCcpKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKGBJbnZhbGlkICR7ZmllbGR9LCBtaXNzaW5nIG9iamVjdElkYCk7XG4gICAgfVxuICAgIGlmICghc3VpT2JqZWN0UmVmLmhhc093blByb3BlcnR5KCd2ZXJzaW9uJykgfHwgIXV0aWxzLmlzVmFsaWRBbW91bnQoc3VpT2JqZWN0UmVmLnZlcnNpb24pKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKGBJbnZhbGlkICR7ZmllbGR9LCBpbnZhbGlkIG9yIG1pc3NpbmcgdmVyc2lvbmApO1xuICAgIH1cbiAgICBpZiAoIXN1aU9iamVjdFJlZi5oYXNPd25Qcm9wZXJ0eSgnZGlnZXN0JykpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoYEludmFsaWQgJHtmaWVsZH0sIG1pc3NpbmcgZGlnZXN0YCk7XG4gICAgfVxuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHZhbGlkYXRlS2V5KGtleTogQmFzZUtleSk6IHZvaWQge1xuICAgIHRyeSB7XG4gICAgICBuZXcgS2V5UGFpcih7IHBydjoga2V5LmtleSB9KTtcbiAgICB9IGNhdGNoIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoYEtleSB2YWxpZGF0aW9uIGZhaWxlZGApO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB2YWxpZGF0ZVJhd1RyYW5zYWN0aW9uKHJhd1RyYW5zYWN0aW9uOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBpZiAoIXJhd1RyYW5zYWN0aW9uKSB7XG4gICAgICB0aHJvdyBuZXcgUGFyc2VUcmFuc2FjdGlvbkVycm9yKCdJbnZhbGlkIHJhdyB0cmFuc2FjdGlvbjogVW5kZWZpbmVkJyk7XG4gICAgfVxuICAgIGlmICghdXRpbHMuaXNWYWxpZFJhd1RyYW5zYWN0aW9uKHJhd1RyYW5zYWN0aW9uKSkge1xuICAgICAgdGhyb3cgbmV3IFBhcnNlVHJhbnNhY3Rpb25FcnJvcignSW52YWxpZCByYXcgdHJhbnNhY3Rpb24nKTtcbiAgICB9XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgdmFsaWRhdGVWYWx1ZSh2YWx1ZTogQmlnTnVtYmVyKTogdm9pZCB7XG4gICAgaWYgKHZhbHVlLmlzTGVzc1RoYW4oMCkpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ1ZhbHVlIGNhbm5vdCBiZSBsZXNzIHRoYW4gemVybycpO1xuICAgIH1cbiAgfVxuICAvLyBlbmRyZWdpb25cbn1cbiJdfQ==
|
|
135
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb25CdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi90cmFuc2FjdGlvbkJ1aWxkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUEsbURBVThCO0FBQzlCLG9EQUE0QjtBQUU1QixvREFBNEI7QUFJNUIsMkNBQWtEO0FBQ2xELHVDQUFvQztBQUdwQyxNQUFzQixrQkFBbUQsU0FBUSxpQ0FBc0I7SUFTckcsWUFBc0IsV0FBaUM7UUFDckQsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBUlgsZ0JBQVcsR0FBZ0IsRUFBRSxDQUFDO0lBU3hDLENBQUM7SUFRRCxrQkFBa0I7SUFDbEIsSUFBYyxXQUFXO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDLFlBQVksQ0FBQztJQUMzQixDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLElBQWMsV0FBVyxDQUFDLFdBQTJCO1FBQ25ELElBQUksQ0FBQyxZQUFZLEdBQUcsV0FBVyxDQUFDO0lBQ2xDLENBQUM7SUFFRCxrQkFBa0I7SUFDUixrQkFBa0IsQ0FBQyxHQUFZO1FBQ3ZDLE1BQU0sTUFBTSxHQUFHLElBQUksaUJBQU8sQ0FBQyxFQUFFLEdBQUcsRUFBRSxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQztRQUM3QyxJQUFJLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQztRQUN0QixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM5QixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDMUIsQ0FBQztJQUVELGtCQUFrQjtJQUNsQixZQUFZLENBQUMsU0FBd0IsRUFBRSxTQUFpQjtRQUN0RCxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDO1FBQ2hELElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxDQUFDLFNBQVMsRUFBRSxTQUFTLENBQUMsQ0FB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QWMsQ0FBQyxFQUFFLENBQUM7WUFDakQsTUFBTSxJQUFJLGdDQUFxQixDQUFDLHlCQUF5QixDQUFDLENBQUM7UUFDN0QsQ0FBQztJQUNILENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsYUFBYSxDQUFDLEtBQWdCO1FBQzVCLElBQUksS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQ3hCLE1BQU0sSUFBSSxnQ0FBcUIsQ0FBQyxnQ0FBZ0MsQ0FBQyxDQUFDO1FBQ3BFLENBQUM7SUFDSCxDQUFDO0NBRUY7QUFqS0QsZ0RBaUtDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQmFzZUFkZHJlc3MsXG4gIEJhc2VLZXksXG4gIEJhc2VUcmFuc2FjdGlvbkJ1aWxkZXIsXG4gIEJ1aWxkVHJhbnNhY3Rpb25FcnJvcixcbiAgUGFyc2VUcmFuc2FjdGlvbkVycm9yLFxuICBQdWJsaWNLZXkgYXMgQmFzZVB1YmxpY0tleSxcbiAgUmVjaXBpZW50LFxuICBTaWduYXR1cmUsXG4gIFRyYW5zYWN0aW9uVHlwZSxcbn0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuaW1wb3J0IGFzc2VydCBmcm9tICdhc3NlcnQnO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb24gfSBmcm9tICcuL3RyYW5zYWN0aW9uJztcbmltcG9ydCB1dGlscyBmcm9tICcuL3V0aWxzJztcbmltcG9ydCBCaWdOdW1iZXIgZnJvbSAnYmlnbnVtYmVyLmpzJztcbmltcG9ydCB7IEJhc2VDb2luIGFzIENvaW5Db25maWcgfSBmcm9tICdAYml0Z28tYmV0YS9zdGF0aWNzJztcbmltcG9ydCB7IFN1aVByb2dyYW1tYWJsZVRyYW5zYWN0aW9uLCBTdWlUcmFuc2FjdGlvblR5cGUgfSBmcm9tICcuL2lmYWNlJztcbmltcG9ydCB7IERVTU1ZX1NVSV9HQVNfUFJJQ0UgfSBmcm9tICcuL2NvbnN0YW50cyc7XG5pbXBvcnQgeyBLZXlQYWlyIH0gZnJvbSAnLi9rZXlQYWlyJztcbmltcG9ydCB7IEdhc0RhdGEsIFN1aU9iamVjdFJlZiB9IGZyb20gJy4vbXlzdGVubGFiL3R5cGVzJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFRyYW5zYWN0aW9uQnVpbGRlcjxUID0gU3VpUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb24+IGV4dGVuZHMgQmFzZVRyYW5zYWN0aW9uQnVpbGRlciB7XG4gIHByb3RlY3RlZCBfdHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uPFQ+O1xuICBwcm90ZWN0ZWQgX3NpZ25hdHVyZXM6IFNpZ25hdHVyZVtdID0gW107XG4gIHByb3RlY3RlZCBfc2lnbmVyOiBLZXlQYWlyO1xuXG4gIHByb3RlY3RlZCBfdHlwZTogU3VpVHJhbnNhY3Rpb25UeXBlO1xuICBwcm90ZWN0ZWQgX3NlbmRlcjogc3RyaW5nO1xuICBwcm90ZWN0ZWQgX2dhc0RhdGE6IEdhc0RhdGE7XG5cbiAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKF9jb2luQ29uZmlnOiBSZWFkb25seTxDb2luQ29uZmlnPikge1xuICAgIHN1cGVyKF9jb2luQ29uZmlnKTtcbiAgfVxuXG4gIC8vIGdldCBhbmQgc2V0IHJlZ2lvblxuICAvKipcbiAgICogVGhlIHRyYW5zYWN0aW9uIHR5cGUuXG4gICAqL1xuICBwcm90ZWN0ZWQgYWJzdHJhY3QgZ2V0IHRyYW5zYWN0aW9uVHlwZSgpOiBUcmFuc2FjdGlvblR5cGU7XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHByb3RlY3RlZCBnZXQgdHJhbnNhY3Rpb24oKTogVHJhbnNhY3Rpb248VD4ge1xuICAgIHJldHVybiB0aGlzLl90cmFuc2FjdGlvbjtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBwcm90ZWN0ZWQgc2V0IHRyYW5zYWN0aW9uKHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbjxUPikge1xuICAgIHRoaXMuX3RyYW5zYWN0aW9uID0gdHJhbnNhY3Rpb247XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgcHJvdGVjdGVkIHNpZ25JbXBsZW1lbnRhdGlvbihrZXk6IEJhc2VLZXkpOiBUcmFuc2FjdGlvbjxUPiB7XG4gICAgY29uc3Qgc2lnbmVyID0gbmV3IEtleVBhaXIoeyBwcnY6IGtleS5rZXkgfSk7XG4gICAgdGhpcy5fc2lnbmVyID0gc2lnbmVyO1xuICAgIHRoaXMudHJhbnNhY3Rpb24uc2lnbihzaWduZXIpO1xuICAgIHJldHVybiB0aGlzLnRyYW5zYWN0aW9uO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0RG9jICovXG4gIGFkZFNpZ25hdHVyZShwdWJsaWNLZXk6IEJhc2VQdWJsaWNLZXksIHNpZ25hdHVyZTogQnVmZmVyKTogdm9pZCB7XG4gICAgdGhpcy5fc2lnbmF0dXJlcy5wdXNoKHsgcHVibGljS2V5LCBzaWduYXR1cmUgfSk7XG4gICAgdGhpcy50cmFuc2FjdGlvbi5hZGRTaWduYXR1cmUocHVibGljS2V5LCBzaWduYXR1cmUpO1xuICAgIHRoaXMudHJhbnNhY3Rpb24uc2V0U2VyaWFsaXplZFNpZyhwdWJsaWNLZXksIHNpZ25hdHVyZSk7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgc2VuZGVyIG9mIHRoaXMgdHJhbnNhY3Rpb24uXG4gICAqIFRoaXMgYWNjb3VudCB3aWxsIGJlIHJlc3BvbnNpYmxlIGZvciBwYXlpbmcgdHJhbnNhY3Rpb24gZmVlcy5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IHNlbmRlckFkZHJlc3MgdGhlIGFjY291bnQgdGhhdCBpcyBzZW5kaW5nIHRoaXMgdHJhbnNhY3Rpb25cbiAgICogQHJldHVybnMge1RyYW5zYWN0aW9uQnVpbGRlcn0gVGhpcyB0cmFuc2FjdGlvbiBidWlsZGVyXG4gICAqL1xuICBzZW5kZXIoc2VuZGVyQWRkcmVzczogc3RyaW5nKTogdGhpcyB7XG4gICAgdXRpbHMudmFsaWRhdGVBZGRyZXNzKHNlbmRlckFkZHJlc3MsICdzZW5kZXInKTtcbiAgICB0aGlzLl9zZW5kZXIgPSBzZW5kZXJBZGRyZXNzO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgdHlwZSh0eXBlOiBTdWlUcmFuc2FjdGlvblR5cGUpOiB0aGlzIHtcbiAgICB0aGlzLl90eXBlID0gdHlwZTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIGdhc0RhdGEoZ2FzRGF0YTogR2FzRGF0YSk6IHRoaXMge1xuICAgIHRoaXMudmFsaWRhdGVHYXNEYXRhKGdhc0RhdGEpO1xuICAgIHRoaXMuX2dhc0RhdGEgPSBnYXNEYXRhO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIEluaXRpYWxpemUgdGhlIHRyYW5zYWN0aW9uIGJ1aWxkZXIgZmllbGRzIHVzaW5nIHRoZSBkZWNvZGVkIHRyYW5zYWN0aW9uIGRhdGFcbiAgICpcbiAgICogQHBhcmFtIHtUcmFuc2FjdGlvbn0gdHggdGhlIHRyYW5zYWN0aW9uIGRhdGFcbiAgICovXG4gIGFic3RyYWN0IGluaXRCdWlsZGVyKHR4OiBUcmFuc2FjdGlvbjxUPik6IHZvaWQ7XG5cbiAgLy8gcmVnaW9uIFZhbGlkYXRvcnNcbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHZhbGlkYXRlQWRkcmVzcyhhZGRyZXNzOiBCYXNlQWRkcmVzcywgYWRkcmVzc0Zvcm1hdD86IHN0cmluZyk6IHZvaWQge1xuICAgIGlmICghdXRpbHMuaXNWYWxpZEFkZHJlc3MoYWRkcmVzcy5hZGRyZXNzKSkge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignSW52YWxpZCBhZGRyZXNzICcgKyBhZGRyZXNzLmFkZHJlc3MpO1xuICAgIH1cbiAgfVxuXG4gIHZhbGlkYXRlUmVjaXBpZW50cyhyZWNpcGllbnRzOiBSZWNpcGllbnRbXSk6IHZvaWQge1xuICAgIGFzc2VydChcbiAgICAgIHJlY2lwaWVudHMgJiYgcmVjaXBpZW50cy5sZW5ndGggPiAwLFxuICAgICAgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignYXQgbGVhc3Qgb25lIHJlY2lwaWVudCBpcyByZXF1aXJlZCBiZWZvcmUgYnVpbGRpbmcnKVxuICAgICk7XG4gICAgcmVjaXBpZW50cy5mb3JFYWNoKChyZWNpcGllbnQpID0+IHtcbiAgICAgIHV0aWxzLnZhbGlkYXRlQWRkcmVzcyhyZWNpcGllbnQuYWRkcmVzcywgJ2FkZHJlc3MnKTtcbiAgICAgIGFzc2VydCh1dGlscy5pc1ZhbGlkQW1vdW50KHJlY2lwaWVudC5hbW91bnQpLCAnSW52YWxpZCByZWNpcGllbnQgYW1vdW50Jyk7XG4gICAgfSk7XG4gIH1cblxuICB2YWxpZGF0ZUdhc0RhdGEoZ2FzRGF0YTogR2FzRGF0YSk6IHZvaWQge1xuICAgIGlmICghdXRpbHMuaXNWYWxpZEFkZHJlc3MoZ2FzRGF0YS5vd25lcikpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ0ludmFsaWQgZ2FzIGFkZHJlc3MgJyArIGdhc0RhdGEub3duZXIpO1xuICAgIH1cbiAgICB0aGlzLnZhbGlkYXRlR2FzUGF5bWVudChnYXNEYXRhLnBheW1lbnQpO1xuICAgIHRoaXMudmFsaWRhdGVHYXNCdWRnZXQoZ2FzRGF0YS5idWRnZXQpO1xuICAgIHRoaXMudmFsaWRhdGVHYXNQcmljZShnYXNEYXRhLnByaWNlKTtcbiAgfVxuXG4gIHZhbGlkYXRlR2FzQnVkZ2V0KGdhc0J1ZGdldDogbnVtYmVyKTogdm9pZCB7XG4gICAgaWYgKGdhc0J1ZGdldCA8PSAwKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKCdJbnZhbGlkIGdhcyBidWRnZXQgJyArIGdhc0J1ZGdldCk7XG4gICAgfVxuICB9XG5cbiAgdmFsaWRhdGVHYXNQcmljZShnYXNQcmljZTogbnVtYmVyKTogdm9pZCB7XG4gICAgLy8gVE9ETzogY2hlY2sgd2l0aCBTdWkgb24gdGhlIGdhcyBwcmljZVxuICAgIGlmIChnYXNQcmljZSAhPT0gRFVNTVlfU1VJX0dBU19QUklDRSkge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignSW52YWxpZCBnYXMgcHJpY2UgJyArIGdhc1ByaWNlKTtcbiAgICB9XG4gIH1cblxuICB2YWxpZGF0ZUdhc1BheW1lbnQocGF5bWVudHM6IFN1aU9iamVjdFJlZltdKTogdm9pZCB7XG4gICAgYXNzZXJ0KHBheW1lbnRzICYmIHBheW1lbnRzLmxlbmd0aCA+IDAsIG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ2dhcyBwYXltZW50IGlzIHJlcXVpcmVkIGJlZm9yZSBidWlsZGluZycpKTtcbiAgICBwYXltZW50cy5mb3JFYWNoKChwYXltZW50KSA9PiB7XG4gICAgICB0aGlzLnZhbGlkYXRlU3VpT2JqZWN0UmVmKHBheW1lbnQsICdwYXltZW50Jyk7XG4gICAgfSk7XG4gIH1cblxuICB2YWxpZGF0ZVN1aU9iamVjdFJlZihzdWlPYmplY3RSZWY6IFN1aU9iamVjdFJlZiwgZmllbGQ6IHN0cmluZyk6IHZvaWQge1xuICAgIGlmICghc3VpT2JqZWN0UmVmLmhhc093blByb3BlcnR5KCdvYmplY3RJZCcpKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKGBJbnZhbGlkICR7ZmllbGR9LCBtaXNzaW5nIG9iamVjdElkYCk7XG4gICAgfVxuICAgIGlmICghc3VpT2JqZWN0UmVmLmhhc093blByb3BlcnR5KCd2ZXJzaW9uJykgfHwgIXV0aWxzLmlzVmFsaWRBbW91bnQoc3VpT2JqZWN0UmVmLnZlcnNpb24pKSB7XG4gICAgICB0aHJvdyBuZXcgQnVpbGRUcmFuc2FjdGlvbkVycm9yKGBJbnZhbGlkICR7ZmllbGR9LCBpbnZhbGlkIG9yIG1pc3NpbmcgdmVyc2lvbmApO1xuICAgIH1cbiAgICBpZiAoIXN1aU9iamVjdFJlZi5oYXNPd25Qcm9wZXJ0eSgnZGlnZXN0JykpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoYEludmFsaWQgJHtmaWVsZH0sIG1pc3NpbmcgZGlnZXN0YCk7XG4gICAgfVxuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHZhbGlkYXRlS2V5KGtleTogQmFzZUtleSk6IHZvaWQge1xuICAgIHRyeSB7XG4gICAgICBuZXcgS2V5UGFpcih7IHBydjoga2V5LmtleSB9KTtcbiAgICB9IGNhdGNoIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoYEtleSB2YWxpZGF0aW9uIGZhaWxlZGApO1xuICAgIH1cbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICB2YWxpZGF0ZVJhd1RyYW5zYWN0aW9uKHJhd1RyYW5zYWN0aW9uOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBpZiAoIXJhd1RyYW5zYWN0aW9uKSB7XG4gICAgICB0aHJvdyBuZXcgUGFyc2VUcmFuc2FjdGlvbkVycm9yKCdJbnZhbGlkIHJhdyB0cmFuc2FjdGlvbjogVW5kZWZpbmVkJyk7XG4gICAgfVxuICAgIGlmICghdXRpbHMuaXNWYWxpZFJhd1RyYW5zYWN0aW9uKHJhd1RyYW5zYWN0aW9uKSkge1xuICAgICAgdGhyb3cgbmV3IFBhcnNlVHJhbnNhY3Rpb25FcnJvcignSW52YWxpZCByYXcgdHJhbnNhY3Rpb24nKTtcbiAgICB9XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgdmFsaWRhdGVWYWx1ZSh2YWx1ZTogQmlnTnVtYmVyKTogdm9pZCB7XG4gICAgaWYgKHZhbHVlLmlzTGVzc1RoYW4oMCkpIHtcbiAgICAgIHRocm93IG5ldyBCdWlsZFRyYW5zYWN0aW9uRXJyb3IoJ1ZhbHVlIGNhbm5vdCBiZSBsZXNzIHRoYW4gemVybycpO1xuICAgIH1cbiAgfVxuICAvLyBlbmRyZWdpb25cbn1cbiJdfQ==
|
|
@@ -3,17 +3,32 @@ import { TransferBuilder } from './transferBuilder';
|
|
|
3
3
|
import { BaseCoin as CoinConfig } from '@bitgo-beta/statics';
|
|
4
4
|
import { Transaction } from './transaction';
|
|
5
5
|
import { StakingBuilder } from './stakingBuilder';
|
|
6
|
-
import { StakingProgrammableTransaction, TransferProgrammableTransaction } from './iface';
|
|
6
|
+
import { CustomProgrammableTransaction, StakingProgrammableTransaction, TransferProgrammableTransaction, UnstakingProgrammableTransaction, SuiProgrammableTransaction, TokenTransferProgrammableTransaction, WalrusStakingProgrammableTransaction, WalrusWithdrawStakeProgrammableTransaction } from './iface';
|
|
7
7
|
import { TransactionBuilder } from './transactionBuilder';
|
|
8
|
+
import { UnstakingBuilder } from './unstakingBuilder';
|
|
9
|
+
import { CustomTransactionBuilder } from './customTransactionBuilder';
|
|
10
|
+
import { TokenTransferBuilder } from './tokenTransferBuilder';
|
|
11
|
+
import { WalrusStakingBuilder } from './walrusStakingBuilder';
|
|
12
|
+
import { WalrusWithdrawStakeBuilder } from './walrusWithdrawStakeBuilder';
|
|
8
13
|
export declare class TransactionBuilderFactory extends BaseTransactionBuilderFactory {
|
|
9
14
|
constructor(_coinConfig: Readonly<CoinConfig>);
|
|
10
15
|
/** @inheritdoc */
|
|
11
|
-
from(raw: string): TransactionBuilder<
|
|
16
|
+
from(raw: string): TransactionBuilder<SuiProgrammableTransaction>;
|
|
12
17
|
/** @inheritdoc */
|
|
13
18
|
getTransferBuilder(tx?: Transaction<TransferProgrammableTransaction>): TransferBuilder;
|
|
14
19
|
/** @inheritdoc */
|
|
15
20
|
getStakingBuilder(tx?: Transaction<StakingProgrammableTransaction>): StakingBuilder;
|
|
16
21
|
/** @inheritdoc */
|
|
22
|
+
getUnstakingBuilder(tx?: Transaction<UnstakingProgrammableTransaction>): UnstakingBuilder;
|
|
23
|
+
/** @inheritdoc */
|
|
24
|
+
getCustomTransactionBuilder(tx?: Transaction<CustomProgrammableTransaction>): CustomTransactionBuilder;
|
|
25
|
+
/** @inheritdoc */
|
|
26
|
+
getTokenTransferBuilder(tx?: Transaction<TokenTransferProgrammableTransaction>): TokenTransferBuilder;
|
|
27
|
+
/** @inheritdoc */
|
|
28
|
+
getWalrusStakingBuilder(tx?: Transaction<WalrusStakingProgrammableTransaction>): WalrusStakingBuilder;
|
|
29
|
+
/** @inheritdoc */
|
|
30
|
+
getWalrusRequestWithdrawStakeBuilder(tx?: Transaction<WalrusWithdrawStakeProgrammableTransaction>): WalrusWithdrawStakeBuilder;
|
|
31
|
+
/** @inheritdoc */
|
|
17
32
|
getWalletInitializationBuilder(): void;
|
|
18
33
|
/**
|
|
19
34
|
* Initialize the builder with the given transaction
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transactionBuilderFactory.d.ts","sourceRoot":"","sources":["../../../src/lib/transactionBuilderFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,6BAA6B,EAA2B,MAAM,sBAAsB,CAAC;AAC9F,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EACL,8BAA8B,EAG9B,+BAA+B,EAChC,MAAM,SAAS,CAAC;AAGjB,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"transactionBuilderFactory.d.ts","sourceRoot":"","sources":["../../../src/lib/transactionBuilderFactory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,6BAA6B,EAA2B,MAAM,sBAAsB,CAAC;AAC9F,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EACL,6BAA6B,EAC7B,8BAA8B,EAG9B,+BAA+B,EAC/B,gCAAgC,EAChC,0BAA0B,EAC1B,oCAAoC,EACpC,oCAAoC,EACpC,0CAA0C,EAC3C,MAAM,SAAS,CAAC;AAGjB,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAGtD,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAE9D,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAE9D,OAAO,EAAE,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAG1E,qBAAa,yBAA0B,SAAQ,6BAA6B;gBAC9D,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI7C,kBAAkB;IAClB,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,kBAAkB,CAAC,0BAA0B,CAAC;IA0CjE,kBAAkB;IAClB,kBAAkB,CAAC,EAAE,CAAC,EAAE,WAAW,CAAC,+BAA+B,CAAC,GAAG,eAAe;IAItF,kBAAkB;IAClB,iBAAiB,CAAC,EAAE,CAAC,EAAE,WAAW,CAAC,8BAA8B,CAAC,GAAG,cAAc;IAInF,kBAAkB;IAClB,mBAAmB,CAAC,EAAE,CAAC,EAAE,WAAW,CAAC,gCAAgC,CAAC,GAAG,gBAAgB;IAIzF,kBAAkB;IAClB,2BAA2B,CAAC,EAAE,CAAC,EAAE,WAAW,CAAC,6BAA6B,CAAC,GAAG,wBAAwB;IAItG,kBAAkB;IAClB,uBAAuB,CAAC,EAAE,CAAC,EAAE,WAAW,CAAC,oCAAoC,CAAC,GAAG,oBAAoB;IAIrG,kBAAkB;IAClB,uBAAuB,CAAC,EAAE,CAAC,EAAE,WAAW,CAAC,oCAAoC,CAAC,GAAG,oBAAoB;IAIrG,kBAAkB;IAClB,oCAAoC,CAClC,EAAE,CAAC,EAAE,WAAW,CAAC,0CAA0C,CAAC,GAC3D,0BAA0B;IAI7B,kBAAkB;IAClB,8BAA8B,IAAI,IAAI;IAItC;;;;;;OAMG;IACH,OAAO,CAAC,iBAAiB;IAUzB;;;;OAIG;IACH,OAAO,CAAC,gBAAgB;CAGzB"}
|
|
@@ -12,6 +12,16 @@ const iface_1 = require("./iface");
|
|
|
12
12
|
const stakingTransaction_1 = require("./stakingTransaction");
|
|
13
13
|
const transferTransaction_1 = require("./transferTransaction");
|
|
14
14
|
const utils_1 = __importDefault(require("./utils"));
|
|
15
|
+
const unstakingBuilder_1 = require("./unstakingBuilder");
|
|
16
|
+
const unstakingTransaction_1 = require("./unstakingTransaction");
|
|
17
|
+
const customTransaction_1 = require("./customTransaction");
|
|
18
|
+
const customTransactionBuilder_1 = require("./customTransactionBuilder");
|
|
19
|
+
const tokenTransferBuilder_1 = require("./tokenTransferBuilder");
|
|
20
|
+
const tokenTransferTransaction_1 = require("./tokenTransferTransaction");
|
|
21
|
+
const walrusStakingBuilder_1 = require("./walrusStakingBuilder");
|
|
22
|
+
const walrusStakingTransaction_1 = require("./walrusStakingTransaction");
|
|
23
|
+
const walrusWithdrawStakeBuilder_1 = require("./walrusWithdrawStakeBuilder");
|
|
24
|
+
const walrusWithdrawStakeTransaction_1 = require("./walrusWithdrawStakeTransaction");
|
|
15
25
|
class TransactionBuilderFactory extends sdk_core_1.BaseTransactionBuilderFactory {
|
|
16
26
|
constructor(_coinConfig) {
|
|
17
27
|
super(_coinConfig);
|
|
@@ -27,10 +37,30 @@ class TransactionBuilderFactory extends sdk_core_1.BaseTransactionBuilderFactory
|
|
|
27
37
|
transferTx.fromRawTransaction(raw);
|
|
28
38
|
return this.getTransferBuilder(transferTx);
|
|
29
39
|
case iface_1.SuiTransactionType.AddStake:
|
|
30
|
-
case iface_1.SuiTransactionType.WithdrawStake:
|
|
31
40
|
const stakingTransaction = new stakingTransaction_1.StakingTransaction(this._coinConfig);
|
|
32
41
|
stakingTransaction.fromRawTransaction(raw);
|
|
33
42
|
return this.getStakingBuilder(stakingTransaction);
|
|
43
|
+
case iface_1.SuiTransactionType.WithdrawStake:
|
|
44
|
+
const unstakingTransaction = new unstakingTransaction_1.UnstakingTransaction(this._coinConfig);
|
|
45
|
+
unstakingTransaction.fromRawTransaction(raw);
|
|
46
|
+
return this.getUnstakingBuilder(unstakingTransaction);
|
|
47
|
+
case iface_1.SuiTransactionType.CustomTx:
|
|
48
|
+
const customTransaction = new customTransaction_1.CustomTransaction(this._coinConfig);
|
|
49
|
+
customTransaction.fromRawTransaction(raw);
|
|
50
|
+
return this.getCustomTransactionBuilder(customTransaction);
|
|
51
|
+
case iface_1.SuiTransactionType.TokenTransfer:
|
|
52
|
+
const tokenTransferTx = new tokenTransferTransaction_1.TokenTransferTransaction(this._coinConfig);
|
|
53
|
+
tokenTransferTx.fromRawTransaction(raw);
|
|
54
|
+
return this.getTokenTransferBuilder(tokenTransferTx);
|
|
55
|
+
case iface_1.SuiTransactionType.WalrusStakeWithPool:
|
|
56
|
+
const walrusStakeTx = new walrusStakingTransaction_1.WalrusStakingTransaction(this._coinConfig);
|
|
57
|
+
walrusStakeTx.fromRawTransaction(raw);
|
|
58
|
+
return this.getWalrusStakingBuilder(walrusStakeTx);
|
|
59
|
+
case iface_1.SuiTransactionType.WalrusRequestWithdrawStake:
|
|
60
|
+
case iface_1.SuiTransactionType.WalrusWithdrawStake:
|
|
61
|
+
const walrusRequestWithdrawStakeTransaction = new walrusWithdrawStakeTransaction_1.WalrusWithdrawStakeTransaction(this._coinConfig);
|
|
62
|
+
walrusRequestWithdrawStakeTransaction.fromRawTransaction(raw);
|
|
63
|
+
return this.getWalrusRequestWithdrawStakeBuilder(walrusRequestWithdrawStakeTransaction);
|
|
34
64
|
default:
|
|
35
65
|
throw new sdk_core_1.InvalidTransactionError('Invalid transaction');
|
|
36
66
|
}
|
|
@@ -48,6 +78,26 @@ class TransactionBuilderFactory extends sdk_core_1.BaseTransactionBuilderFactory
|
|
|
48
78
|
return this.initializeBuilder(tx, new stakingBuilder_1.StakingBuilder(this._coinConfig));
|
|
49
79
|
}
|
|
50
80
|
/** @inheritdoc */
|
|
81
|
+
getUnstakingBuilder(tx) {
|
|
82
|
+
return this.initializeBuilder(tx, new unstakingBuilder_1.UnstakingBuilder(this._coinConfig));
|
|
83
|
+
}
|
|
84
|
+
/** @inheritdoc */
|
|
85
|
+
getCustomTransactionBuilder(tx) {
|
|
86
|
+
return this.initializeBuilder(tx, new customTransactionBuilder_1.CustomTransactionBuilder(this._coinConfig));
|
|
87
|
+
}
|
|
88
|
+
/** @inheritdoc */
|
|
89
|
+
getTokenTransferBuilder(tx) {
|
|
90
|
+
return this.initializeBuilder(tx, new tokenTransferBuilder_1.TokenTransferBuilder(this._coinConfig));
|
|
91
|
+
}
|
|
92
|
+
/** @inheritdoc */
|
|
93
|
+
getWalrusStakingBuilder(tx) {
|
|
94
|
+
return this.initializeBuilder(tx, new walrusStakingBuilder_1.WalrusStakingBuilder(this._coinConfig));
|
|
95
|
+
}
|
|
96
|
+
/** @inheritdoc */
|
|
97
|
+
getWalrusRequestWithdrawStakeBuilder(tx) {
|
|
98
|
+
return this.initializeBuilder(tx, new walrusWithdrawStakeBuilder_1.WalrusWithdrawStakeBuilder(this._coinConfig));
|
|
99
|
+
}
|
|
100
|
+
/** @inheritdoc */
|
|
51
101
|
getWalletInitializationBuilder() {
|
|
52
102
|
throw new Error('Method not implemented.');
|
|
53
103
|
}
|
|
@@ -74,4 +124,4 @@ class TransactionBuilderFactory extends sdk_core_1.BaseTransactionBuilderFactory
|
|
|
74
124
|
}
|
|
75
125
|
}
|
|
76
126
|
exports.TransactionBuilderFactory = TransactionBuilderFactory;
|
|
77
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvdHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxtREFBOEY7QUFDOUYsdURBQW9EO0FBRXBELCtDQUE0QztBQUM1QyxxREFBa0Q7QUFDbEQsbUNBS2lCO0FBQ2pCLDZEQUEwRDtBQUMxRCwrREFBNEQ7QUFFNUQsb0RBQTRCO0FBRTVCLE1BQWEseUJBQTBCLFNBQVEsd0NBQTZCO0lBQzFFLFlBQVksV0FBaUM7UUFDM0MsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3JCLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsSUFBSSxDQUFDLEdBQVc7UUFDZCxlQUFLLENBQUMsc0JBQXNCLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDbEMsTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3RDLElBQUk7WUFDRixRQUFRLEVBQUUsQ0FBQyxJQUFJLEVBQUU7Z0JBQ2YsS0FBSywwQkFBa0IsQ0FBQyxRQUFRO29CQUM5QixNQUFNLFVBQVUsR0FBRyxJQUFJLHlDQUFtQixDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztvQkFDN0QsVUFBVSxDQUFDLGtCQUFrQixDQUFDLEdBQUcsQ0FBQyxDQUFDO29CQUNuQyxPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxVQUFVLENBQUMsQ0FBQztnQkFDN0MsS0FBSywwQkFBa0IsQ0FBQyxRQUFRLENBQUM7Z0JBQ2pDLEtBQUssMEJBQWtCLENBQUMsYUFBYTtvQkFDbkMsTUFBTSxrQkFBa0IsR0FBRyxJQUFJLHVDQUFrQixDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztvQkFDcEUsa0JBQWtCLENBQUMsa0JBQWtCLENBQUMsR0FBRyxDQUFDLENBQUM7b0JBQzNDLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLGtCQUFrQixDQUFDLENBQUM7Z0JBQ3BEO29CQUNFLE1BQU0sSUFBSSxrQ0FBdUIsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO2FBQzVEO1NBQ0Y7UUFBQyxPQUFPLENBQUMsRUFBRTtZQUNWLE1BQU0sQ0FBQyxDQUFDO1NBQ1Q7SUFDSCxDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLGtCQUFrQixDQUFDLEVBQWlEO1FBQ2xFLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLEVBQUUsRUFBRSxJQUFJLGlDQUFlLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7SUFDM0UsQ0FBQztJQUVELGtCQUFrQjtJQUNsQixpQkFBaUIsQ0FBQyxFQUFnRDtRQUNoRSxPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLEVBQUUsSUFBSSwrQkFBYyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO0lBQzFFLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsOEJBQThCO1FBQzVCLE1BQU0sSUFBSSxLQUFLLENBQUMseUJBQXlCLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ssaUJBQWlCLENBRXZCLEVBQTZGLEVBQUUsT0FBVTtRQUN6RyxJQUFJLEVBQUUsRUFBRTtZQUNOLE9BQU8sQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLENBQUM7U0FDekI7UUFDRCxPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNLLGdCQUFnQixDQUN0QixjQUFzQjtRQUV0QixPQUFPLHlCQUFXLENBQUMseUJBQXlCLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDL0QsQ0FBQztDQUNGO0FBckVELDhEQXFFQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VUcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5LCBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvciB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb3JlJztcbmltcG9ydCB7IFRyYW5zZmVyQnVpbGRlciB9IGZyb20gJy4vdHJhbnNmZXJCdWlsZGVyJztcbmltcG9ydCB7IEJhc2VDb2luIGFzIENvaW5Db25maWcgfSBmcm9tICdAYml0Z28tYmV0YS9zdGF0aWNzJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uIH0gZnJvbSAnLi90cmFuc2FjdGlvbic7XG5pbXBvcnQgeyBTdGFraW5nQnVpbGRlciB9IGZyb20gJy4vc3Rha2luZ0J1aWxkZXInO1xuaW1wb3J0IHtcbiAgU3Rha2luZ1Byb2dyYW1tYWJsZVRyYW5zYWN0aW9uLFxuICBTdWlUcmFuc2FjdGlvbixcbiAgU3VpVHJhbnNhY3Rpb25UeXBlLFxuICBUcmFuc2ZlclByb2dyYW1tYWJsZVRyYW5zYWN0aW9uLFxufSBmcm9tICcuL2lmYWNlJztcbmltcG9ydCB7IFN0YWtpbmdUcmFuc2FjdGlvbiB9IGZyb20gJy4vc3Rha2luZ1RyYW5zYWN0aW9uJztcbmltcG9ydCB7IFRyYW5zZmVyVHJhbnNhY3Rpb24gfSBmcm9tICcuL3RyYW5zZmVyVHJhbnNhY3Rpb24nO1xuaW1wb3J0IHsgVHJhbnNhY3Rpb25CdWlsZGVyIH0gZnJvbSAnLi90cmFuc2FjdGlvbkJ1aWxkZXInO1xuaW1wb3J0IHV0aWxzIGZyb20gJy4vdXRpbHMnO1xuXG5leHBvcnQgY2xhc3MgVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSBleHRlbmRzIEJhc2VUcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5IHtcbiAgY29uc3RydWN0b3IoX2NvaW5Db25maWc6IFJlYWRvbmx5PENvaW5Db25maWc+KSB7XG4gICAgc3VwZXIoX2NvaW5Db25maWcpO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGZyb20ocmF3OiBzdHJpbmcpOiBUcmFuc2FjdGlvbkJ1aWxkZXI8VHJhbnNmZXJQcm9ncmFtbWFibGVUcmFuc2FjdGlvbiB8IFN0YWtpbmdQcm9ncmFtbWFibGVUcmFuc2FjdGlvbj4ge1xuICAgIHV0aWxzLnZhbGlkYXRlUmF3VHJhbnNhY3Rpb24ocmF3KTtcbiAgICBjb25zdCB0eCA9IHRoaXMucGFyc2VUcmFuc2FjdGlvbihyYXcpO1xuICAgIHRyeSB7XG4gICAgICBzd2l0Y2ggKHR4LnR5cGUpIHtcbiAgICAgICAgY2FzZSBTdWlUcmFuc2FjdGlvblR5cGUuVHJhbnNmZXI6XG4gICAgICAgICAgY29uc3QgdHJhbnNmZXJUeCA9IG5ldyBUcmFuc2ZlclRyYW5zYWN0aW9uKHRoaXMuX2NvaW5Db25maWcpO1xuICAgICAgICAgIHRyYW5zZmVyVHguZnJvbVJhd1RyYW5zYWN0aW9uKHJhdyk7XG4gICAgICAgICAgcmV0dXJuIHRoaXMuZ2V0VHJhbnNmZXJCdWlsZGVyKHRyYW5zZmVyVHgpO1xuICAgICAgICBjYXNlIFN1aVRyYW5zYWN0aW9uVHlwZS5BZGRTdGFrZTpcbiAgICAgICAgY2FzZSBTdWlUcmFuc2FjdGlvblR5cGUuV2l0aGRyYXdTdGFrZTpcbiAgICAgICAgICBjb25zdCBzdGFraW5nVHJhbnNhY3Rpb24gPSBuZXcgU3Rha2luZ1RyYW5zYWN0aW9uKHRoaXMuX2NvaW5Db25maWcpO1xuICAgICAgICAgIHN0YWtpbmdUcmFuc2FjdGlvbi5mcm9tUmF3VHJhbnNhY3Rpb24ocmF3KTtcbiAgICAgICAgICByZXR1cm4gdGhpcy5nZXRTdGFraW5nQnVpbGRlcihzdGFraW5nVHJhbnNhY3Rpb24pO1xuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkVHJhbnNhY3Rpb25FcnJvcignSW52YWxpZCB0cmFuc2FjdGlvbicpO1xuICAgICAgfVxuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHRocm93IGU7XG4gICAgfVxuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGdldFRyYW5zZmVyQnVpbGRlcih0eD86IFRyYW5zYWN0aW9uPFRyYW5zZmVyUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb24+KTogVHJhbnNmZXJCdWlsZGVyIHtcbiAgICByZXR1cm4gdGhpcy5pbml0aWFsaXplQnVpbGRlcih0eCwgbmV3IFRyYW5zZmVyQnVpbGRlcih0aGlzLl9jb2luQ29uZmlnKSk7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgZ2V0U3Rha2luZ0J1aWxkZXIodHg/OiBUcmFuc2FjdGlvbjxTdGFraW5nUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb24+KTogU3Rha2luZ0J1aWxkZXIge1xuICAgIHJldHVybiB0aGlzLmluaXRpYWxpemVCdWlsZGVyKHR4LCBuZXcgU3Rha2luZ0J1aWxkZXIodGhpcy5fY29pbkNvbmZpZykpO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGdldFdhbGxldEluaXRpYWxpemF0aW9uQnVpbGRlcigpOiB2b2lkIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ01ldGhvZCBub3QgaW1wbGVtZW50ZWQuJyk7XG4gIH1cblxuICAvKipcbiAgICogSW5pdGlhbGl6ZSB0aGUgYnVpbGRlciB3aXRoIHRoZSBnaXZlbiB0cmFuc2FjdGlvblxuICAgKlxuICAgKiBAcGFyYW0ge1RyYW5zYWN0aW9uIHwgdW5kZWZpbmVkfSB0eCAtIHRoZSB0cmFuc2FjdGlvbiB1c2VkIHRvIGluaXRpYWxpemUgdGhlIGJ1aWxkZXJcbiAgICogQHBhcmFtIHtUcmFuc2FjdGlvbkJ1aWxkZXJ9IGJ1aWxkZXIgLSB0aGUgYnVpbGRlciB0byBiZSBpbml0aWFsaXplZFxuICAgKiBAcmV0dXJucyB7VHJhbnNhY3Rpb25CdWlsZGVyfSB0aGUgYnVpbGRlciBpbml0aWFsaXplZFxuICAgKi9cbiAgcHJpdmF0ZSBpbml0aWFsaXplQnVpbGRlcjxcbiAgICBUIGV4dGVuZHMgVHJhbnNhY3Rpb25CdWlsZGVyPFRyYW5zZmVyUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb24gfCBTdGFraW5nUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb24+XG4gID4odHg6IFRyYW5zYWN0aW9uPFRyYW5zZmVyUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb24gfCBTdGFraW5nUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb24+IHwgdW5kZWZpbmVkLCBidWlsZGVyOiBUKTogVCB7XG4gICAgaWYgKHR4KSB7XG4gICAgICBidWlsZGVyLmluaXRCdWlsZGVyKHR4KTtcbiAgICB9XG4gICAgcmV0dXJuIGJ1aWxkZXI7XG4gIH1cblxuICAvKiogUGFyc2UgdGhlIHRyYW5zYWN0aW9uIGZyb20gYSByYXcgdHJhbnNhY3Rpb25cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IHJhd1RyYW5zYWN0aW9uIC0gdGhlIHJhdyB0eFxuICAgKiBAcmV0dXJucyB7VHJhbnNhY3Rpb259IHBhcnNlZHRyYW5zYWN0aW9uXG4gICAqL1xuICBwcml2YXRlIHBhcnNlVHJhbnNhY3Rpb24oXG4gICAgcmF3VHJhbnNhY3Rpb246IHN0cmluZ1xuICApOiBTdWlUcmFuc2FjdGlvbjxUcmFuc2ZlclByb2dyYW1tYWJsZVRyYW5zYWN0aW9uIHwgU3Rha2luZ1Byb2dyYW1tYWJsZVRyYW5zYWN0aW9uPiB7XG4gICAgcmV0dXJuIFRyYW5zYWN0aW9uLmRlc2VyaWFsaXplU3VpVHJhbnNhY3Rpb24ocmF3VHJhbnNhY3Rpb24pO1xuICB9XG59XG4iXX0=
|
|
127
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvdHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxtREFBOEY7QUFDOUYsdURBQW9EO0FBRXBELCtDQUE0QztBQUM1QyxxREFBa0Q7QUFDbEQsbUNBV2lCO0FBQ2pCLDZEQUEwRDtBQUMxRCwrREFBNEQ7QUFFNUQsb0RBQTRCO0FBQzVCLHlEQUFzRDtBQUN0RCxpRUFBOEQ7QUFDOUQsMkRBQXdEO0FBQ3hELHlFQUFzRTtBQUN0RSxpRUFBOEQ7QUFDOUQseUVBQXNFO0FBQ3RFLGlFQUE4RDtBQUM5RCx5RUFBc0U7QUFDdEUsNkVBQTBFO0FBQzFFLHFGQUFrRjtBQUVsRixNQUFhLHlCQUEwQixTQUFRLHdDQUE2QjtJQUMxRSxZQUFZLFdBQWlDO1FBQzNDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUNyQixDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLElBQUksQ0FBQyxHQUFXO1FBQ2QsZUFBSyxDQUFDLHNCQUFzQixDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ2xDLE1BQU0sRUFBRSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUN0QyxJQUFJLENBQUM7WUFDSCxRQUFRLEVBQUUsQ0FBQyxJQUFJLEVBQUUsQ0FBQztnQkFDaEIsS0FBSywwQkFBa0IsQ0FBQyxRQUFRO29CQUM5QixNQUFNLFVBQVUsR0FBRyxJQUFJLHlDQUFtQixDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztvQkFDN0QsVUFBVSxDQUFDLGtCQUFrQixDQUFDLEdBQUcsQ0FBQyxDQUFDO29CQUNuQyxPQUFPLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxVQUFVLENBQUMsQ0FBQztnQkFDN0MsS0FBSywwQkFBa0IsQ0FBQyxRQUFRO29CQUM5QixNQUFNLGtCQUFrQixHQUFH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O0lBQ3BGLENBQUM7SUFFRCxrQkFBa0I7SUFDbEIsdUJBQXVCLENBQUMsRUFBc0Q7UUFDNUUsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsRUFBRSxFQUFFLElBQUksMkNBQW9CLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUM7SUFDaEYsQ0FBQztJQUVELGtCQUFrQjtJQUNsQix1QkFBdUIsQ0FBQyxFQUFzRDtRQUM1RSxPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLEVBQUUsSUFBSSwyQ0FBb0IsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztJQUNoRixDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLG9DQUFvQyxDQUNsQyxFQUE0RDtRQUU1RCxPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLEVBQUUsSUFBSSx1REFBMEIsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsQ0FBQztJQUN0RixDQUFDO0lBRUQsa0JBQWtCO0lBQ2xCLDhCQUE4QjtRQUM1QixNQUFNLElBQUksS0FBSyxDQUFDLHlCQUF5QixDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNLLGlCQUFpQixDQUN2QixFQUF1RCxFQUN2RCxPQUFVO1FBRVYsSUFBSSxFQUFFLEVBQUUsQ0FBQztZQUNQLE9BQU8sQ0FBQyxXQUFXLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDMUIsQ0FBQztRQUNELE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7SUFFRDs7OztPQUlHO0lBQ0ssZ0JBQWdCLENBQUMsY0FBc0I7UUFDN0MsT0FBTyx5QkFBVyxDQUFDLHlCQUF5QixDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQy9ELENBQUM7Q0FDRjtBQW5IRCw4REFtSEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCYXNlVHJhbnNhY3Rpb25CdWlsZGVyRmFjdG9yeSwgSW52YWxpZFRyYW5zYWN0aW9uRXJyb3IgfSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5pbXBvcnQgeyBUcmFuc2ZlckJ1aWxkZXIgfSBmcm9tICcuL3RyYW5zZmVyQnVpbGRlcic7XG5pbXBvcnQgeyBCYXNlQ29pbiBhcyBDb2luQ29uZmlnIH0gZnJvbSAnQGJpdGdvLWJldGEvc3RhdGljcyc7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbiB9IGZyb20gJy4vdHJhbnNhY3Rpb24nO1xuaW1wb3J0IHsgU3Rha2luZ0J1aWxkZXIgfSBmcm9tICcuL3N0YWtpbmdCdWlsZGVyJztcbmltcG9ydCB7XG4gIEN1c3RvbVByb2dyYW1tYWJsZVRyYW5zYWN0aW9uLFxuICBTdGFraW5nUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb24sXG4gIFN1aVRyYW5zYWN0aW9uLFxuICBTdWlUcmFuc2FjdGlvblR5cGUsXG4gIFRyYW5zZmVyUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb24sXG4gIFVuc3Rha2luZ1Byb2dyYW1tYWJsZVRyYW5zYWN0aW9uLFxuICBTdWlQcm9ncmFtbWFibGVUcmFuc2FjdGlvbixcbiAgVG9rZW5UcmFuc2ZlclByb2dyYW1tYWJsZVRyYW5zYWN0aW9uLFxuICBXYWxydXNTdGFraW5nUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb24sXG4gIFdhbHJ1c1dpdGhkcmF3U3Rha2VQcm9ncmFtbWFibGVUcmFuc2FjdGlvbixcbn0gZnJvbSAnLi9pZmFjZSc7XG5pbXBvcnQgeyBTdGFraW5nVHJhbnNhY3Rpb24gfSBmcm9tICcuL3N0YWtpbmdUcmFuc2FjdGlvbic7XG5pbXBvcnQgeyBUcmFuc2ZlclRyYW5zYWN0aW9uIH0gZnJvbSAnLi90cmFuc2ZlclRyYW5zYWN0aW9uJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uQnVpbGRlciB9IGZyb20gJy4vdHJhbnNhY3Rpb25CdWlsZGVyJztcbmltcG9ydCB1dGlscyBmcm9tICcuL3V0aWxzJztcbmltcG9ydCB7IFVuc3Rha2luZ0J1aWxkZXIgfSBmcm9tICcuL3Vuc3Rha2luZ0J1aWxkZXInO1xuaW1wb3J0IHsgVW5zdGFraW5nVHJhbnNhY3Rpb24gfSBmcm9tICcuL3Vuc3Rha2luZ1RyYW5zYWN0aW9uJztcbmltcG9ydCB7IEN1c3RvbVRyYW5zYWN0aW9uIH0gZnJvbSAnLi9jdXN0b21UcmFuc2FjdGlvbic7XG5pbXBvcnQgeyBDdXN0b21UcmFuc2FjdGlvbkJ1aWxkZXIgfSBmcm9tICcuL2N1c3RvbVRyYW5zYWN0aW9uQnVpbGRlcic7XG5pbXBvcnQgeyBUb2tlblRyYW5zZmVyQnVpbGRlciB9IGZyb20gJy4vdG9rZW5UcmFuc2ZlckJ1aWxkZXInO1xuaW1wb3J0IHsgVG9rZW5UcmFuc2ZlclRyYW5zYWN0aW9uIH0gZnJvbSAnLi90b2tlblRyYW5zZmVyVHJhbnNhY3Rpb24nO1xuaW1wb3J0IHsgV2FscnVzU3Rha2luZ0J1aWxkZXIgfSBmcm9tICcuL3dhbHJ1c1N0YWtpbmdCdWlsZGVyJztcbmltcG9ydCB7IFdhbHJ1c1N0YWtpbmdUcmFuc2FjdGlvbiB9IGZyb20gJy4vd2FscnVzU3Rha2luZ1RyYW5zYWN0aW9uJztcbmltcG9ydCB7IFdhbHJ1c1dpdGhkcmF3U3Rha2VCdWlsZGVyIH0gZnJvbSAnLi93YWxydXNXaXRoZHJhd1N0YWtlQnVpbGRlcic7XG5pbXBvcnQgeyBXYWxydXNXaXRoZHJhd1N0YWtlVHJhbnNhY3Rpb24gfSBmcm9tICcuL3dhbHJ1c1dpdGhkcmF3U3Rha2VUcmFuc2FjdGlvbic7XG5cbmV4cG9ydCBjbGFzcyBUcmFuc2FjdGlvbkJ1aWxkZXJGYWN0b3J5IGV4dGVuZHMgQmFzZVRyYW5zYWN0aW9uQnVpbGRlckZhY3Rvcnkge1xuICBjb25zdHJ1Y3RvcihfY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz4pIHtcbiAgICBzdXBlcihfY29pbkNvbmZpZyk7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgZnJvbShyYXc6IHN0cmluZyk6IFRyYW5zYWN0aW9uQnVpbGRlcjxTdWlQcm9ncmFtbWFibGVUcmFuc2FjdGlvbj4ge1xuICAgIHV0aWxzLnZhbGlkYXRlUmF3VHJhbnNhY3Rpb24ocmF3KTtcbiAgICBjb25zdCB0eCA9IHRoaXMucGFyc2VUcmFuc2FjdGlvbihyYXcpO1xuICAgIHRyeSB7XG4gICAgICBzd2l0Y2ggKHR4LnR5cGUpIHtcbiAgICAgICAgY2FzZSBTdWlUcmFuc2FjdGlvblR5cGUuVHJhbnNmZXI6XG4gICAgICAgICAgY29uc3QgdHJhbnNmZXJUeCA9IG5ldyBUcmFuc2ZlclRyYW5zYWN0aW9uKHRoaXMuX2NvaW5Db25maWcpO1xuICAgICAgICAgIHRyYW5zZmVyVHguZnJvbVJhd1RyYW5zYWN0aW9uKHJhdyk7XG4gICAgICAgICAgcmV0dXJuIHRoaXMuZ2V0VHJhbnNmZXJCdWlsZGVyKHRyYW5zZmVyVHgpO1xuICAgICAgICBjYXNlIFN1aVRyYW5zYWN0aW9uVHlwZS5BZGRTdGFrZTpcbiAgICAgICAgICBjb25zdCBzdGFraW5nVHJhbnNhY3Rpb24gPSBuZXcgU3Rha2luZ1RyYW5zYWN0aW9uKHRoaXMuX2NvaW5Db25maWcpO1xuICAgICAgICAgIHN0YWtpbmdUcmFuc2FjdGlvbi5mcm9tUmF3VHJhbnNhY3Rpb24ocmF3KTtcbiAgICAgICAgICByZXR1cm4gdGhpcy5nZXRTdGFraW5nQnVpbGRlcihzdGFraW5nVHJhbnNhY3Rpb24pO1xuICAgICAgICBjYXNlIFN1aVRyYW5zYWN0aW9uVHlwZS5XaXRoZHJhd1N0YWtlOlxuICAgICAgICAgIGNvbnN0IHVuc3Rha2luZ1RyYW5zYWN0aW9uID0gbmV3IFVuc3Rha2luZ1RyYW5zYWN0aW9uKHRoaXMuX2NvaW5Db25maWcpO1xuICAgICAgICAgIHVuc3Rha2luZ1RyYW5zYWN0aW9uLmZyb21SYXdUcmFuc2FjdGlvbihyYXcpO1xuICAgICAgICAgIHJldHVybiB0aGlzLmdldFVuc3Rha2luZ0J1aWxkZXIodW5zdGFraW5nVHJhbnNhY3Rpb24pO1xuICAgICAgICBjYXNlIFN1aVRyYW5zYWN0aW9uVHlwZS5DdXN0b21UeDpcbiAgICAgICAgICBjb25zdCBjdXN0b21UcmFuc2FjdGlvbiA9IG5ldyBDdXN0b21UcmFuc2FjdGlvbih0aGlzLl9jb2luQ29uZmlnKTtcbiAgICAgICAgICBjdXN0b21UcmFuc2FjdGlvbi5mcm9tUmF3VHJhbnNhY3Rpb24ocmF3KTtcbiAgICAgICAgICByZXR1cm4gdGhpcy5nZXRDdXN0b21UcmFuc2FjdGlvbkJ1aWxkZXIoY3VzdG9tVHJhbnNhY3Rpb24pO1xuICAgICAgICBjYXNlIFN1aVRyYW5zYWN0aW9uVHlwZS5Ub2tlblRyYW5zZmVyOlxuICAgICAgICAgIGNvbnN0IHRva2VuVHJhbnNmZXJUeCA9IG5ldyBUb2tlblRyYW5zZmVyVHJhbnNhY3Rpb24odGhpcy5fY29pbkNvbmZpZyk7XG4gICAgICAgICAgdG9rZW5UcmFuc2ZlclR4LmZyb21SYXdUcmFuc2FjdGlvbihyYXcpO1xuICAgICAgICAgIHJldHVybiB0aGlzLmdldFRva2VuVHJhbnNmZXJCdWlsZGVyKHRva2VuVHJhbnNmZXJUeCk7XG4gICAgICAgIGNhc2UgU3VpVHJhbnNhY3Rpb25UeXBlLldhbHJ1c1N0YWtlV2l0aFBvb2w6XG4gICAgICAgICAgY29uc3Qgd2FscnVzU3Rha2VUeCA9IG5ldyBXYWxydXNTdGFraW5nVHJhbnNhY3Rpb24odGhpcy5fY29pbkNvbmZpZyk7XG4gICAgICAgICAgd2FscnVzU3Rha2VUeC5mcm9tUmF3VHJhbnNhY3Rpb24ocmF3KTtcbiAgICAgICAgICByZXR1cm4gdGhpcy5nZXRXYWxydXNTdGFraW5nQnVpbGRlcih3YWxydXNTdGFrZVR4KTtcbiAgICAgICAgY2FzZSBTdWlUcmFuc2FjdGlvblR5cGUuV2FscnVzUmVxdWVzdFdpdGhkcmF3U3Rha2U6XG4gICAgICAgIGNhc2UgU3VpVHJhbnNhY3Rpb25UeXBlLldhbHJ1c1dpdGhkcmF3U3Rha2U6XG4gICAgICAgICAgY29uc3Qgd2FscnVzUmVxdWVzdFdpdGhkcmF3U3Rha2VUcmFuc2FjdGlvbiA9IG5ldyBXYWxydXNXaXRoZHJhd1N0YWtlVHJhbnNhY3Rpb24odGhpcy5fY29pbkNvbmZpZyk7XG4gICAgICAgICAgd2FscnVzUmVxdWVzdFdpdGhkcmF3U3Rha2VUcmFuc2FjdGlvbi5mcm9tUmF3VHJhbnNhY3Rpb24ocmF3KTtcbiAgICAgICAgICByZXR1cm4gdGhpcy5nZXRXYWxydXNSZXF1ZXN0V2l0aGRyYXdTdGFrZUJ1aWxkZXIod2FscnVzUmVxdWVzdFdpdGhkcmF3U3Rha2VUcmFuc2FjdGlvbik7XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgdGhyb3cgbmV3IEludmFsaWRUcmFuc2FjdGlvbkVycm9yKCdJbnZhbGlkIHRyYW5zYWN0aW9uJyk7XG4gICAgICB9XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgdGhyb3cgZTtcbiAgICB9XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgZ2V0VHJhbnNmZXJCdWlsZGVyKHR4PzogVHJhbnNhY3Rpb248VHJhbnNmZXJQcm9ncmFtbWFibGVUcmFuc2FjdGlvbj4pOiBUcmFuc2ZlckJ1aWxkZXIge1xuICAgIHJldHVybiB0aGlzLmluaXRpYWxpemVCdWlsZGVyKHR4LCBuZXcgVHJhbnNmZXJCdWlsZGVyKHRoaXMuX2NvaW5Db25maWcpKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBnZXRTdGFraW5nQnVpbGRlcih0eD86IFRyYW5zYWN0aW9uPFN0YWtpbmdQcm9ncmFtbWFibGVUcmFuc2FjdGlvbj4pOiBTdGFraW5nQnVpbGRlciB7XG4gICAgcmV0dXJuIHRoaXMuaW5pdGlhbGl6ZUJ1aWxkZXIodHgsIG5ldyBTdGFraW5nQnVpbGRlcih0aGlzLl9jb2luQ29uZmlnKSk7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgZ2V0VW5zdGFraW5nQnVpbGRlcih0eD86IFRyYW5zYWN0aW9uPFVuc3Rha2luZ1Byb2dyYW1tYWJsZVRyYW5zYWN0aW9uPik6IFVuc3Rha2luZ0J1aWxkZXIge1xuICAgIHJldHVybiB0aGlzLmluaXRpYWxpemVCdWlsZGVyKHR4LCBuZXcgVW5zdGFraW5nQnVpbGRlcih0aGlzLl9jb2luQ29uZmlnKSk7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgZ2V0Q3VzdG9tVHJhbnNhY3Rpb25CdWlsZGVyKHR4PzogVHJhbnNhY3Rpb248Q3VzdG9tUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb24+KTogQ3VzdG9tVHJhbnNhY3Rpb25CdWlsZGVyIHtcbiAgICByZXR1cm4gdGhpcy5pbml0aWFsaXplQnVpbGRlcih0eCwgbmV3IEN1c3RvbVRyYW5zYWN0aW9uQnVpbGRlcih0aGlzLl9jb2luQ29uZmlnKSk7XG4gIH1cblxuICAvKiogQGluaGVyaXRkb2MgKi9cbiAgZ2V0VG9rZW5UcmFuc2ZlckJ1aWxkZXIodHg/OiBUcmFuc2FjdGlvbjxUb2tlblRyYW5zZmVyUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb24+KTogVG9rZW5UcmFuc2ZlckJ1aWxkZXIge1xuICAgIHJldHVybiB0aGlzLmluaXRpYWxpemVCdWlsZGVyKHR4LCBuZXcgVG9rZW5UcmFuc2ZlckJ1aWxkZXIodGhpcy5fY29pbkNvbmZpZykpO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIGdldFdhbHJ1c1N0YWtpbmdCdWlsZGVyKHR4PzogVHJhbnNhY3Rpb248V2FscnVzU3Rha2luZ1Byb2dyYW1tYWJsZVRyYW5zYWN0aW9uPik6IFdhbHJ1c1N0YWtpbmdCdWlsZGVyIHtcbiAgICByZXR1cm4gdGhpcy5pbml0aWFsaXplQnVpbGRlcih0eCwgbmV3IFdhbHJ1c1N0YWtpbmdCdWlsZGVyKHRoaXMuX2NvaW5Db25maWcpKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBnZXRXYWxydXNSZXF1ZXN0V2l0aGRyYXdTdGFrZUJ1aWxkZXIoXG4gICAgdHg/OiBUcmFuc2FjdGlvbjxXYWxydXNXaXRoZHJhd1N0YWtlUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb24+XG4gICk6IFdhbHJ1c1dpdGhkcmF3U3Rha2VCdWlsZGVyIHtcbiAgICByZXR1cm4gdGhpcy5pbml0aWFsaXplQnVpbGRlcih0eCwgbmV3IFdhbHJ1c1dpdGhkcmF3U3Rha2VCdWlsZGVyKHRoaXMuX2NvaW5Db25maWcpKTtcbiAgfVxuXG4gIC8qKiBAaW5oZXJpdGRvYyAqL1xuICBnZXRXYWxsZXRJbml0aWFsaXphdGlvbkJ1aWxkZXIoKTogdm9pZCB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdNZXRob2Qgbm90IGltcGxlbWVudGVkLicpO1xuICB9XG5cbiAgLyoqXG4gICAqIEluaXRpYWxpemUgdGhlIGJ1aWxkZXIgd2l0aCB0aGUgZ2l2ZW4gdHJhbnNhY3Rpb25cbiAgICpcbiAgICogQHBhcmFtIHtUcmFuc2FjdGlvbiB8IHVuZGVmaW5lZH0gdHggLSB0aGUgdHJhbnNhY3Rpb24gdXNlZCB0byBpbml0aWFsaXplIHRoZSBidWlsZGVyXG4gICAqIEBwYXJhbSB7VHJhbnNhY3Rpb25CdWlsZGVyfSBidWlsZGVyIC0gdGhlIGJ1aWxkZXIgdG8gYmUgaW5pdGlhbGl6ZWRcbiAgICogQHJldHVybnMge1RyYW5zYWN0aW9uQnVpbGRlcn0gdGhlIGJ1aWxkZXIgaW5pdGlhbGl6ZWRcbiAgICovXG4gIHByaXZhdGUgaW5pdGlhbGl6ZUJ1aWxkZXI8VCBleHRlbmRzIFRyYW5zYWN0aW9uQnVpbGRlcjxTdWlQcm9ncmFtbWFibGVUcmFuc2FjdGlvbj4+KFxuICAgIHR4OiBUcmFuc2FjdGlvbjxTdWlQcm9ncmFtbWFibGVUcmFuc2FjdGlvbj4gfCB1bmRlZmluZWQsXG4gICAgYnVpbGRlcjogVFxuICApOiBUIHtcbiAgICBpZiAodHgpIHtcbiAgICAgIGJ1aWxkZXIuaW5pdEJ1aWxkZXIodHgpO1xuICAgIH1cbiAgICByZXR1cm4gYnVpbGRlcjtcbiAgfVxuXG4gIC8qKiBQYXJzZSB0aGUgdHJhbnNhY3Rpb24gZnJvbSBhIHJhdyB0cmFuc2FjdGlvblxuICAgKlxuICAgKiBAcGFyYW0ge3N0cmluZ30gcmF3VHJhbnNhY3Rpb24gLSB0aGUgcmF3IHR4XG4gICAqIEByZXR1cm5zIHtUcmFuc2FjdGlvbn0gcGFyc2VkdHJhbnNhY3Rpb25cbiAgICovXG4gIHByaXZhdGUgcGFyc2VUcmFuc2FjdGlvbihyYXdUcmFuc2FjdGlvbjogc3RyaW5nKTogU3VpVHJhbnNhY3Rpb248U3VpUHJvZ3JhbW1hYmxlVHJhbnNhY3Rpb24+IHtcbiAgICByZXR1cm4gVHJhbnNhY3Rpb24uZGVzZXJpYWxpemVTdWlUcmFuc2FjdGlvbihyYXdUcmFuc2FjdGlvbik7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { TransactionBuilder } from './transactionBuilder';
|
|
2
2
|
import { BaseCoin as CoinConfig } from '@bitgo-beta/statics';
|
|
3
|
-
import { Recipient, TransactionType } from '@bitgo-beta/sdk-core';
|
|
3
|
+
import { BaseKey, Recipient, TransactionType } from '@bitgo-beta/sdk-core';
|
|
4
4
|
import { SuiTransaction, TransferProgrammableTransaction } from './iface';
|
|
5
5
|
import { Transaction } from './transaction';
|
|
6
6
|
import { TransferTransaction } from './transferTransaction';
|
|
@@ -12,6 +12,8 @@ export declare class TransferBuilder extends TransactionBuilder<TransferProgramm
|
|
|
12
12
|
/** @inheritdoc */
|
|
13
13
|
validateTransaction(transaction: TransferTransaction): void;
|
|
14
14
|
/** @inheritdoc */
|
|
15
|
+
sign(key: BaseKey): void;
|
|
16
|
+
/** @inheritdoc */
|
|
15
17
|
protected fromImplementation(rawTransaction: string): Transaction<TransferProgrammableTransaction>;
|
|
16
18
|
/** @inheritdoc */
|
|
17
19
|
protected buildImplementation(): Promise<Transaction<TransferProgrammableTransaction>>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"transferBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/transferBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAyB,SAAS,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"transferBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/transferBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,OAAO,EAAyB,SAAS,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAClG,OAAO,EAAE,cAAc,EAAsB,+BAA+B,EAAE,MAAM,SAAS,CAAC;AAC9F,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAU5D,qBAAa,eAAgB,SAAQ,kBAAkB,CAAC,+BAA+B,CAAC;IACtF,SAAS,CAAC,WAAW,EAAE,SAAS,EAAE,CAAC;gBAEvB,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAK7C,SAAS,KAAK,eAAe,IAAI,eAAe,CAE/C;IAED,IAAI,CAAC,UAAU,EAAE,SAAS,EAAE,GAAG,IAAI;IAMnC,kBAAkB;IAClB,mBAAmB,CAAC,WAAW,EAAE,mBAAmB,GAAG,IAAI;IAO3D,kBAAkB;IAClB,IAAI,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI;IAKxB,kBAAkB;IAClB,SAAS,CAAC,kBAAkB,CAAC,cAAc,EAAE,MAAM,GAAG,WAAW,CAAC,+BAA+B,CAAC;IAQlG,kBAAkB;cACF,mBAAmB,IAAI,OAAO,CAAC,WAAW,CAAC,+BAA+B,CAAC,CAAC;IAgB5F;;;;OAIG;IACH,WAAW,CAAC,EAAE,EAAE,mBAAmB,GAAG,IAAI;IAgB1C;;OAEG;IACH,OAAO,CAAC,yBAAyB;IAWjC;;;;OAIG;IACH,SAAS,CAAC,mBAAmB,IAAI,cAAc,CAAC,+BAA+B,CAAC;CA+CjF"}
|